What to do before a migration from legacy software to a word class software?
In this post I will show you, what you need before and how to handle the migration from your legacy software to some world class software
Why a software migration?
If your help desk or issue tracker systems are full, it could be a symptom that your systems are legacy applications, not documented, with a lot of bugs, with several years of developments made by several external consultants, with deprecated technologies and other dark evils
So at this point, the owner of the business think that it is time to migrate to a new world class system to avoid user bad experience, increase the revenue, be happy etc
Here some world class options:
- https://www.gartner.com/reviews/market/cloud-erp-for-product-centric-enterprises
- https://www.forbes.com/sites/louiscolumbus/2020/10/27/which-erp-systems-are-most-popular-with-their-users-in-2020/?sh=4650fe2e48ff
What to do before a migration?
Assuming that your software platform is like the previous paragraph, I advice you:
- Document all the Business process
- Discovery all Applications and its dependencies
- Map the relationship between business process, applications features and Integrations
- Validate the workflow or strategy of your consultants or partners before the contract.
Business process
Think to use a world class software or a simple revamp without a clear understanding of your own process, it would be suicide. There are a lot of readings about “What is a business process”, read them. As a summary is:
A business process is an activity or set of activities that accomplish a specific organizational goal. Business processes should have purposeful goals, be as specific as possible and produce consistent outcomes. Source: https://www.techtarget.com/searchcio/definition/business-process
To do this discovery, you need a lot of business analysts (not developers) and a simple tool to draw diagrams like this:
Here some options from opensource to premium tools
- Office tools like: Libre Office Writer/Impress, Ms word , Power Point
- Dia Software: http://dia-installer.de
- Diagrams Net https://www.diagrams.net
- Google Draw: https://docs.google.com/drawings
- Bizagi : https://www.bizagi.com/en
- https://www.dragon1.com/products
No matter the tools you choose, I advice to create a portal to group your diagrams and share the to your IT team and Final Users. Here some sample:
Applications and its dependencies
Your are lucky if you have a one monolith with one database. But if you have a lot of monoliths, dozens of databases, CRMs, satellites, ETLs, schedulers, daemons, servers, etc I advice to discover all of them and the relationship between them. You could use a simple excel with this columns
Also you could discover more data of your applications like: ip, host, domains, technologies, etc. This information could help you to create a CMDB
Or you can use my own tool: https://github.com/jrichardsz-software-architect-tools/dependency-graph-viewer in which if you fill this yaml
acme-api:
- acme-db
- acme-security
acme-web:
- acme-api
acme-db:
acme-security:
You will have a useful graph viewer with the search feature
Relationship between business process, applications features and integrations
If you achieved to discover the previous topics in your company:
- Business process
- Applications and its dependencies
It should be easy to map the relationship between business process and the required systems. This is the main corner of the migration. Here an example:
In this example, when an employee is registered in the current HR system, 02 integrations are triggered:
- Google System account creation
- Smart card for entrance access
A feature is almost always anything visible to our final user:
- web html form
- mobile form
- desktop forms
Integrations could be:
- Request Driven
- Event Driven
- Polling Driven
This should be done for every business process, all the systems and all the features in your systems or applications. Here some samples
THIS IS THE MOST IMPORTANT PART. IF YOU DON’T HAVE THIS INFORMATION, A MIGRATION WILL BE A PAIN AND TO RISKY
Consultant strategy and workflow evaluations
Finally but no less important is to evaluate the consultant. They could have a lot of experience in its solution, and “awesome” curriculum vitae, etc but what about all the required things, formats, templates, strategies, etc to handle a success migration?
Also there is no easy way to validate this kind of skills in the consultant or partners that will be hired for such an important project: Migration from legacy to world class
So based on my previous experience I advice to request a complete demo of the consultant workflow process or strategy in several fields like:
- How do you perform the business process relief?
- What deliverables (excels, diagrams, etc) are generated from the business process relief?
- How these deliverables help next stages like Integrations between the legacy, no legacy and the new implemented software
- How the software testing will be performed in: the legacy, no legacy and the implemented software
I beg you to include your technical team in these evaluation meetings and driven it to validate the deliverables at column or attributes level. You should invest a lot of time in this part. Not meetings with sales (boring for me), but meetings with analyst and technical teams of the consultant.
If you don’t do this, at the moment of the implementation you could have these:
- The consultant will fill you with a lot of deliverables that make sense to them, but not ton the company,
- They could ask you for some information which is not available at that moment or is responsibility of the consultant, not yours
Conclusion
If you don’t have similar information to the explained before the migration and you don’t perform a deep evaluation of the strategy or workflow of your consultants options, the result will be project delays, no sense consultant deliverables and waste of money.
In the next post, I will share some useful templates and strategies to handle a success software migration
Until the next,
JRichardsz