How We Help You Modernize
A unique approach plus powerful tools
The Twin Oak approach uses automated translation to migrate your code and data to a modern platform. This approach allows us to preserve your existing data and the business rules in your existing code — both important business assets.
We support these translated assets with specialized run-time libraries and build/deploy them with common devops automation. The devops automation should be familiar to most modern cloud developers. The run-time libraries allow us to generate code with a style and organization similar to your existing software, making it easy for your existing staff to understand and maintain the converted solution. It's still C# and you're still using modern development tools and running on a modern platform, but with some helpful guard rails to keep you on track and make your team feel at home.
Once you are ready to write your own applications from scratch you can still use our data connection library to access your data. You can mix and match translated code with brand new code, accessing the same data, and choose the right balance for your development team and the rest of your business.
We normally handle almost all of the conversion process for you. This is fairly straightforward and progresses roughly as follows:
Our solution uses common web technologies that should be familiar to many modern developers. Our single-page application (SPA) client runs in a web browser. This SPA uses HTTP to communicate with several backend APIs on the server. These APIs are used to execute your translated procedures and programs.
Twin Oak created several support libraries and a specialized Run-Time Engine that together enable your translated code to run in this environment. They provide data access, manage program and procedure state, enforce security, among other things.
Many of the features like menus and forms of our SPA are dynamically generated from JSON files provided by our WebAPIs. These JSON files are initially translated from your original AS400 files and then are maintained on the your server from there on.
Our client application is based on your Web Browser, React, Typescript
Our server environment is based on C#, .Net Core, Web API, Azure web host, Azure File storage, Azure Blob storage, Azure Active Directory. If you have chosen to target an (on- or off-premises) windows server instead of Azure, then the hosting and storage are done by that server.
Our current solution provides web-based Azure pipelines to build, test, and deploy all of the code. In addition to the Azure tooling we include some YAML and powershell scripting. If you choose to host and run your solution outside of the cloud, our Azure pipeline can still be used to deploy your server.