Waterfall Vs Agile way of Delivery
Can Agile (SCRUM) be applied for a Product Migration Project?
The constraint is all the functions available in the application are dependent on each other. And the existing system can not be decommissioned during the migration process.
Please provide your view points, which SDLC process suits best for this situation.
Is the product a complex one where there are many unknowns to be addressed in “migration”, and empirical process control is likely to prove useful?
Ian, the requirement is for a IT asset management system.
There are two aspects of this application migration project. One is, end to end system implementation with latest product available in the market and Second one is, to interface with 3rd party systems.
For the first part, the complexity is medium as the features of latest products are not completely unknown.During the execution, new complexity may arises.
For the second part, the complexity is high. As it involves coding to build interface systems for different types of interfaces.
Given the complexity and uncertainty involved, it would appear that empirical process control is likely to be beneficial. The goal of one or more Scrum Sprints could involve identifying an optimal interface implementation, for example.
Much will depend upon whether the organization and its stakeholders have an appetite for an agile way-of-working, since it is evolutionary rather than predictive. This involves developing a product focus rather than the project one typically associated with an SDLC.
Absolutely Scrum be utilized in this scenario. We use it within my organization. The package we just finished was comprised of 24 applications that depend on each other program so it's impossible to do partial releases to our end users. Instead, we have a UAT team comprised of several people from different departments within the company and we release to them so they can give us that feedback loop throughout the development process. It has proved very beneficial to use Scrum in development as opposed to Waterfall.
This is very much doable and honestly there's nothing new to this. I have seen several similar projects being delivered under Agile. You just need a hands on Scrum Master (SM) to design a Scrum implementation blueprint for overall project. Which you can showcase to the management to get their buy in. You will definitely need the SM to continue with the blueprint implementation once approved.
H/L steps you can think of to start with:
Project 1 - End to End system implementation
Project 2 - Integration with 3rd party systems
Spawn 2 scrum teams one each for the project above (you can decide to have more scrum teams based upon the budget, time to market requirements and other prevailing Organisational circumstances)
Decide on the team combination for both the teams viz; members, skill sets, infrastructure etc. Have a plan chalked out for next couple of Sprints and decide Sprint goals accordingly for each team.
Once you have some emipirical data at hand use it to do overall planning for the project. Keep it in mind - this plan has to be monitored and fine tuned w.r.t challenges team encounter on their way velocity delivered rather than pushing the team to adjust as per the plan (most the scrum fail here)
SM would be definitely helpful in all the above steps and then in implementation phase to create team boards, generate reports, coaching team on the way, unblocking team hurdles and keep them steered in right direction etc
This is one of the flair to start with you can definitely devise your own - I bet it would be much better than this as you are at ground ZERO yourself.
Happy Scrumming. Cheers !! :)
-Abhi