After offering insight based on my personal experiences around “Agile Project Methods for SAP ERP Projects?” I thought it would be helpful to highlight a couple of areas where Agile does work.
- Development efforts (i.e. coding)
- Data conversions
Once you begin to move very far beyond these two areas you quickly encounter dependent work streams that need much more coordination. Those additional dependencies make it difficult to apply Agile methods beyond development and data conversions.
While Agile tends to emphasize the 1 week to 1 month “sprint,” I would define a “sprint” in more of a completed requirements and planning package rather than a pure time-box approach.
Applying Agile Methods to ABAP Software Development and SAP Data Conversions
Development (ABAP, Java, or other coding)
Since Agile methods have been used for some time with small, discrete components of software development I won’t spend a lot of time there. On a typical SAP project you will end up with a functional spec which defines the program requirements and a technical spec which informs the development details. Even though the more typical “Agile Manifesto” method would not require the documentation it is well-placed on an SAP project. In fact, it is foolish not to have it for long term support and maintenance.
Development can work well for the Agile stages of build / prototype, demonstrate, gather feedback, adjust, and repeat. The key here is to limit the number of these “Agile” cycles to no more than 3 for software development. By 3 cycles I mean 3 completed cycles too. This is not a demonstration with feedback that is only partially built. If the feedback cycle is not completely implemented then it is not a complete cycle. Even though Agile would consider these “sprints,” I would consider them a FAILED sprint if the requirements of the current plan, or the subsequent plans, are not fully realized in the prototype or demonstration.
SAP Data Conversions using Agile Sprints
With data conversions I suggest at least 3 complete cycles or “sprints” (not including a minimum of 1 mock go-live conversion, probably 2 or more if you can).
- Build the initial conversion program to all of the requirements (again, partial requirements do not count as a full cycle).
- Pilot a test conversion with all data, no matter how much fails, and capture all necessary changes. This will include data dependencies and sequencing. At this point you will be lucky to achieve a 70% success rate when considering all of the data dependencies. This step is not about getting things perfect but about identifying data and programming issues to resolve.
- Implement all SAP data conversion changes the conversion pilot exposes, script every conversion step and rough timings, and aim for a successful test target of at least 90%.
- Make additional changes and attempt to follow the scripted conversion, making adjustments to the conversion script where necessary, and achieve a goal of at least 98% conversion completeness and accuracy.
Once you achieve this level of conversion consistency it is ready for a mock-conversion. These Agile “sprints,” or as they are starting to call them now “Scrum-ban” (as a spinoff of Kanban) will help to ensure a successful data conversion.
Conclusion on Agile ABAP Development and Data Conversions
Even with newly packaged Scrum, Agile, or other methods, on an SAP project there are so many moving parts and work streams to coordinate that there is no substitute for a good waterfall project approach. Using “Agile-like” methods for the ABAP development or data conversions is not a substitute for good project management either. Done properly this approach can work well as long as it is carefully managed along with the rest of the work streams.
- How can prototyping cause the users to prematurely adopt the prototype as the completed systems? What can a project manager do to prevent it?
- ERP prototype