Agile Systems Integration

Ship Loading CoalBefore I started work on a recent project, I was asked if Agile methods could be applied to a systems integration project. Naturally I said yes, (responding more from instinct rather than first hand knowledge) – but as soon as I got a chance I typed ‘agile‘ and ‘systems integration‘ into the Google search bar.

Normally this is a pretty fail-safe approach (used by consultants globally) but I was a bit disturbed by how little information related to this activity. Apart from one excellent post and subsequent discussion – there was little to go on.

As I got further into the project I found there were some significant challenges in applying Agile methods to a large systems integration project. Below is a summary of the challenges faced for this project in utilising an Agile approach.

Project Background

The project involved a major upgrade to the transportation (rail and ship), materials handling (conveyor, stackers/reclaimers and stockpiles) and logistics planning systems for multiple port facilities. The customer had the opportunity to undertake a upgrade of the existing systems and planned to eliminate some legacy systems and to improve the overall functionality.

Historically, the customer had managed projects using a methodology based around PMBoK but realised that benefits exist in leveraging Agile methods to reduce delivery timescales and risks. Unfortunately, the customer had no experience in executing a project using Agile methods.

Challenges and Strategies

One of the first challenges was to increase the general understanding and awareness of how Agile methods compare with traditional project execution methods like PMBoK, that are much better understood by the customer. I found The Software Project Manager’s Bridge to Agility by Michele Sliger and Stacia Broderick and excellent resource – especially the mapping between Agile methods and the PMBoK processes.

Agile + PMBoK

The other challenges are identified in the table below, together with the mitigation strategies.

System Integration Challenge Agile Risk Mitigation Strategy
Difficult to progressively replace a collection of tightly integrated legacy systems with other systems whilst maintaining service levels
  • Continuous system integration using live data and configurations can help avoid the risks associated with big-bang style deployments
  • Customer and key user involvement in system testing
Customers require certainty around project scope and cost
  • Agile compatible contracts (such as Target Cost)
  • Project/Programme Manager involvement in implementation iterations provides transparency of spend and effort
  • Customer prioritised backlog of tasks ensures highest value items are always delivered first
Geographically separated vendor teams operating under potentially different contractual terms
  • Structure vendor contracts to ensure consistent incentives thereby minimising vendors pulling in different directions
  • Develop trust between teams by using a common integration environment
  • Exploit virtual team tools (net-meeting, webinar, daily teleconference, electronic whiteboards, team wiki, instant messaging) and support with regular face2face meetings for planning

  • Continuous integration of systems supported by automated testing
Customer is time-poor and key users may be unable to participate in team meetings or find adequate time to review system
  • Incorporate the cost of customer involvement into the project budget
 so that there is funding available to backfill the normal jobs performed by key users
  • Create a proxy-customer who can support the implementation teams in understanding business requirements and also facilitate change-management activities
Customer requires smooth transition from as-is to to-be business processes
  • Develop to-be processes in collaboration with the end-users and stakeholders along side the configuration of products
  • Document business processes using a BPM tool and automate the generation of documentation as much as possible
  • Use a BPM tool to enforce governance and Enterprise Architectural patterns as much as possible

Leave a Reply

Fork me on GitHub