Modernising applications is a regular requirement in IT, and modernising .NET applications is no different. Working with technology is always a balance of what you can afford, the business requirements and the technology available. Even if you custom build your perfect application with the most up-to-date technology, at some point, more modern technology replaces it and your application eventually becomes outdated and at some point a legacy system.
Frustrating though this may be, it does give you a chance to re-imagine your application, make use of new capabilities that weren’t previously available and with the cloud, lower-costs and increase security. So, modernising .NET applications needn’t feel like a stumbling block but rather an opportunity.
Azure App Services
Azure App Service is an Azure product made up of a family of services. Each service brings its own capabilities to the umbrella of Azure App Service. Web Apps run web and API apps, Mobile Apps, runs the backend of mobile applications and Function Apps runs code that is triggered by an outside source such as a message.
When you move your .NET applications from on-premise to the cloud, moving to .NET applications on Azure makes sense – after all, it is the cloud platform designed for .NET. Modernising .NET applications begins with migrating to Azure App Service.
Migrating can be done in simple steps and it unlocks a huge amount of benefits. Azure provides the only end-to-end hosting platform for building and managing .NET applications.
– Save money only paying for the resources you use
– Gain access to auto-scaling, patching CI/CD and advanced performance monitoring
– Let Azure take care of availability, scaling and security
– Join a fully managed platform, with built-in security controls for such areas as network and identity
– Offload apps, infrastructure and data management to Azure and focus on enhancements
– Make use of built-in AI capabilities
– Continue to develop with your familiar tools
– Access native integration with Visual Studio, GitHub and CI/CD
Modernising .NET Applications by Migrating to Azure App Service
There are three simple ways to migrate .NET applications to Azure App Services – bring your code and redeploy, containerise, or lift and shift with the migration assistant tool.
Let’s take a look at each method.
Bring your code and redeploy: Here at Ballard Chalmers when dealing with custom software, we always recommend refactoring the application. There are usually so many technology updates since the initial design of the application that refactoring to fully make use of what Azure can bring you, as well as adding new capabilities, is always going to be positive when modernising .NET applications. Bring the code, refactor, add new capabilities and redeploy with the full benefits of the cloud.
Containerise: This is only necessary for apps already in a docker container. Containerising is one of the available options for migrating to Azure, though one that we find to be more relevant to migrating to other clouds.
Migration assistant tool: We personally would only recommend this option be used if you want to do a trial migration to identify changes that need to be made to the code. Though it is a workable option for fast lifting and shifting, as mentioned above we believe migration is the perfect time to invest in modernising your .NET applications. If migration is urgent, the migration assistant tool could be used to get the migration done rapidly with then further time available for modernisation once the application is already in the cloud.
Modernising .NET Applications at Ballard Chalmers
As Microsoft Gold partners of many years working with .NET applications has always been a core service. Since the unprecedented take-off of Microsoft Azure, modernising .NET applications by migrating them into Azure has equally become a fundamental service that we provide to our clients.
In fact, as I write this, we are in the progress of modernising and migrating three enterprise-scale .NET applications to Azure, with our clients, Avison Young, Marie Stopes International and KLT.
Avison Young already have an advanced system for their business rates management team, but it was developed over many years, using older technology and is an on-premises system that is more difficult to use outside the office. The company decided to take the opportunity to redevelop the system from the ground up as a modern cloud-based system offering a higher level of integration with other systems, and much-improved automation of the work that the team need to carry out. The new system is a Web App based on Angular, .NET Core, Web API, SQL Azure, Azure Service Bus and App Services.
Marie Stopes has a system that manages care across the globe. Most of the clients are in the third world, living in remote locations with limited electric power and internet connectivity. The system has been incredibly successful and has circa 900 deployments across circa 23 countries. One of the issues has been that the system is so successful that it has become difficult to deploy and manage on the low powered PCs out in the field and at country level, there is so much data that the system is struggling to cope.
The system relies on using virtual machines and is now based on ageing technology and so a new system has been commissioned to replace it. This new system will be based on a native Windows application and a native Android application in the field, and at global and country-level will be based on scalable cloud-based Web Apps. The field system is being developed using Xamarin as a Universal Windows Platform application for Windows 10, Android Tablets and smartphones. The central systems are being developed as a Web Application based on Angular, Web API, Azure AD and SQL Azure.
KLT is a construction company in the utility sector that carry out large scale gas pipeline replacement projects in London and the south of the UK. The company is looking to expand rapidly and needs a more advanced IT infrastructure to achieve this. The company started by procuring a new fleet management system, a new HR system and a new mobile app system for tracking work on the field, plus an update of the main accounts system.
The next interim objective is to collect information from these systems and any manual processes using spreadsheets, which are then periodically loaded up into cloud storage. There, they are collated into a data warehouse database, from which management level reports and dashboards recording progress throughout the business are produced with Power BI. This interim system will be in place by the close of 2020.
The ultimate target is to produce a central Works Management System that will track the work as it flows through the system and automatically carries out data integration with the other systems, such as HR, fleet management and the data warehouse, to produce a single unified system for managing the business.
In Closing
We know that realising the need to modernise a legacy system or beginning the process of migrating to the cloud can seem like a big task. However, everything is made easier when you find the right technical partner.
We work with our clients as an extension of their team, always keeping in mind the overall goal, budget and relevant targets. You know your business and we know our technology, when partnered with Microsoft’s innovations in Azure, modernising .NET applications can be an adventure into better business process.
Get in touch or find out more about our work migrating and modernising .NET applications.