As a business you have decided to embark on an application modernisation strategy but what steps should you take and how should this be approached?
We all know “not all applications are equal” so there is no ‘one size fits all’ approach but I hope the thoughts below will help in this endeavour.
Why Application Modernisation?
The first thing to understand is what are you trying to achieve and why are you doing this. We see many reasons for customers starting the journey of modernising their applications and migrating to the cloud, it could be any one or a combination of these scenarios:
- End of support for applications, OS and databases e.g. End of support for Windows 2008 and SQL 2008
- Require better business agility through increasing the speed developers can deliver applications or changes to applications
- Require better functionality of applications by utilising readily available cloud services
- Have applications that are no longer fit for purpose and you wish to retire, replace or rebuild the applications
- Support and maintenance costs for the application and underlying platform are high due to specialist and legacy skills being required e.g. VB6 skills
- Your exec team have said we need to move to the cloud or you have a ‘cloud first’ strategy
What is in my Application portfolio?
Discovering what applications are within a company and assessing them is a fundamental activity to any application modernisation programme. You should start by gathering information on all applications such as the owner, business risk / impact, importance, platform, dependencies, etc. Also you should be speaking to the business to understand things like:
- Is the application meeting the business requirements?
- Are there any shortfalls, which moving to the cloud could address?
- Is there a planned sunset date for the application?
- Is there a better or alternative SaaS solution?
- When could the application be migrated to the cloud or modernised?
- What is the prioritisation associated with an application?
As you start to analyse the information of the application, you will be able to decide on the most effective modernisation approach.
Application Modernisation / Migration Approaches
There are various approaches available on the internet but taking the Gartner 7 options to modernise legacy system model as a guide I feel the following ‘7xR’ model caters to most of the scenarios we see:
Considerations when Migrating Applications to the Cloud
As a professional service team, we have been assisting customers move to the cloud and modernising their applications for a number of years now. Over time we have gained some lessons learnt and some best practices. Below I have listed a few considerations which I feel any company should consider when modernising their applications:
1 – Consider the Governance of your cloud platform and any policies you feel should be defined. In the case of Microsoft Azure you need to consider:
- The subscription model being employed and how many subscriptions you should have. For example, should there be a dedicated dev/test subscription or should a shared service subscription be utilised?
- Subscription location / geographic spread
- Who has access to do what? Think about defining management groups, etc.
- Naming conventions for resources and resource groups
- The use of resource tagging, locks and Azure policies
2 – How will you pay for Azure: EA, CSP or Pay as You Go? How will it be controlled and managed? As a CSP reseller we find most customers take the opportunity to move to a CSP model when embarking on a modernisation programme
3 – Consider licensing in Azure: there are ways to save on Azure costs
- Hybrid use benefit – e.g. SQL and server licenses
- Reserved Instances – e.g. Azure Kubernetes Service (AKS) nodes
- Reserved Capacity – e.g. Azure SQL and Cosmos DB
4 – Consider utilising a shared service model whereby services such as VPN Gateways are managed and controlled in a separate subscription
5 – Utilise automation wherever possible to shut down services when not in use and saving on compute costs
6 – Employ application insights when new code is created
7 – Implement DevOps and CICD pipelines
8 – Implement a culture of using Infrastructure as Code (IaC) to safely and predictably create, change, and improve infrastructure and services in Azure. Tools such as Terraform or ARM templates can be utilised to provide reproducible infrastructure. When IaC is linked with DevOps we have found it is an extremely powerful combination
9 – Utilise our Azure Optimisation service to periodically check you are making the most of the potential efficiencies within Azure
How Silversands can help
If you want to find out more or speak to a member of our professional services team about an Application Modernisation programme or just a single application you may want to ‘move’ to Azure then please get in touch by filling out the form below. You can also join one of our regular workshops and webinars providing the latest updates and expert advice about Microsoft 365, Cloud and Hybrid IT, security, compliance and partner tools. We also post regular blogs so please do follow us.