Legacy modernization

Transform existing business to lean products

Build new platform without changing business

Imagine the transformation scenario, when the business functions need no change but there are other challenges such as slow speed to market, slower/unreliable service, higher operating costs etc. In such a scenario, technology & methodology transformation is needed to build a new application platform replicating same functionality.

How to approach the transformation,

How to ensure that the all functions are ported to the new platform

How to ensure the client are migrated successfully. How to factor the non functional requirements.

In what sequence would be transform the applications/ functionality.

All these questions demand an answer from business requirements perspective.

Lean product development for legacy modernization

It is essential to discover first all the different roles for whom the various internal and external applications are built. All functionalities need to be detailed for all the applications across the enterprise. While this detailing is done it is important to determine functional and application dependencies on other components. There is a fair chance by now, you would have discovered redundant applications and functionalities. Have a careful note of those functions as those redundancies can be consolidated into single, focused & cohesive application.

Now what you have is many artifacts with comprehensive application details. Here’s what can help to translate traditional requirement documents to wonderful epics and user stories.

User roles wise domain & functional composition

All different types of users should be segregated first.

Pick the most crucial user role from the business perspective. It would be customer or an elite customer mostly.

For the respective draw the single most used user functional flows.

Next draw the other functional sub flows for the same user.

Repeat the same process for all the user roles and their respective functions.

Comprehensive functional inventory

With this you will get a list of common functions (probably repetitive) that is used by all roles.

You would get list of functions which are used crucial for the business .

Functions which are not mandatory or optional for the transaction or business success.

You would also get a comprehensive list of distinct functions within the enterprise.

You would get list of functions orapplications which are not needed any more or outdated. These are the functions whose have no future hence no place in the new platform.

You would also discover that there are few applications about which no one knows and it still runs. Divine mystery. 🙂

Distinct categorization

All the distinct functions should be treated further.

With the verb and noun used in the workflow separate the function by respective domain and sub domain. E.g. all financial transaction related functions should be clubbed together; similarly inventory management, order process, fulfillment and replenishment etc.

Within the sub domain there would be individual discrete functions. credit card payment would have authorization as a function and reversal as another separate function.

Each domain could be represented as an individual Theme. These are collection of functionality related with the respective sub domain.

Each sub domain could be represented as an Epic. Epic is a term for a big chunk of work that has one common cohesive objective.

Each individual function can be represented as a user story to begin with. The user story can be further made granular by slicing it appropriately.

After this activity is done , for all the existing users and their respective functional flows can be put together.

Value stream mapping: Team can proceed with the value stream mapping. The purpose of value stream mapping is to identify and remove or reduce “waste” in value streams, thereby increasing the efficiency of a given value stream. Waste removal is intended to increase productivity by creating leaner operations which in turn make waste and quality problems easier to identify.

This can optimize the workflows, make those lean and clean. This can result in not building unneeded components.

Conclusion for the next act:At the end of this exercise, distinct user flows are created. Independent, cohesive and potentially reusable functions/services are identified. There is clear, concise and complete product board created with epics, themes and user stories with adequate details to begin with. The product board could be further enhanced and beautified.

There is a possibility of create different new workflow with the combination of independent services. This new workflow could be a new offering with existing or new customer segment. Potentially a new stream of revenue without additional efforts. Believe the possibility!