On the business side, DB Cargo was faced with a cultural change in software development. The old “waterfall principle” was to be replaced by the innovative methods of agile development. The change was driven jointly by DB Cargo and DB Systel, according to Andreas Lazar, who is responsible for software implementation in this field at DB Systel. Both had recognised the advantages at the same time and determined the need for change.
Making agility scalable
The new working methods were implemented in record time, initially in the “KAPA-Xrail” project of the “Logistics 4.0” initiative at DB Cargo. Following the joint initiation in early 2015, the first teams started work from August 2015 onwards. In the Scaled Agile Framework, or SAFe for short, various agile working methods are combined in software development and agility is facilitated, even for large projects involving numerous teams. The important thing is the collaboration with the customer in the agile teams. These comprise between nine and fifteen persons, one third provided by the customer and two thirds by DB Systel.
In the four teams established so far, experts collaborate in a wide variety of roles: from developers and testers, business analysts and scrum masters, to the product owner, who as the specialist contact in the team, prioritises and approves the tasks to be implemented. Due to the high level of transparency within the teams, it has been possible to visualise the results and make them usable for the customer considerably faster than before, according to Lazar.
Software according to timetable
Of key importance here is the Agile Release Train (ART), a component of the SAFe methodology. The ART can be imagined as a train with a permanent crew – the self-organised teams. Within the train, these teams form a virtual organisation and effectively produce software “in step” with the journey. As in the case of a train, the software packages are created in synchronisation by all teams according to a timetable and are delivered at each station. Every three months at the latest, the various teams then deliver new blocks in synchronisation. These blocks are tailored in such a way that they can immediately be put to productive use. If this is not required, e.g. for organisational reasons, several release cycles can take place before the software is used productively. In each case, a release is created every three months with meaningful functionality that is tested and approved by the customer. The release to be completed in March 2017 is to be put to productive use in the actual implementation within the KAPA Xrail project.
Software development using the Agile Release Train (ART)
The Agile Release Train (ART) is a long-lasting group of teams for joint software development.© Deutsche Bahn AG
At the start of the project, the ART is assembled from agile teams and starts its journey.© Deutsche Bahn AG
Each agile team of developers in the ART produces software components. Coordinating roles are also on board.© Deutsche Bahn AG
When the ART reaches a station, all the teams deliver their components in synchronisation as one shared software release.© Deutsche Bahn AG
In the following cycle, the next tasks are implemented in each team according to their prioritisation.© Deutsche Bahn AG
Further releases are thus delivered step by step, together covering all the functions.© Deutsche Bahn AG
A key role is played here by the Release Train Engineer, who coordinates the work between the teams on board and the parties outside the Release Train, and prepares and chairs the meetings between all teams. The Release Train Engineer is the central contact for any questions regarding the release status and the tracking of progress. He or she is thus responsible for the successful progress of the train on its journey and for reaching the stations – the releases.
By working together with the customer in the teams, errors that could arise through misunderstandings are thus avoided. “The product owner acts together with the team to improve the quality of the software,” says Lazar. “And the customer realises the commercial value at an early stage,” he adds. The successes would therefore be noticeable sooner for everybody.
Capacity-controlled network makes DB Cargo more reliable
This is the case, for example, in the introduction of the capacity-controlled network in rail freight transport. Using modified processes and new IT application systems, DB Cargo wants to ensure that consignments in the individual freight wagon network are posted by the customer before the transportation begins. In contrast to before, the customer is then informed of the probable time of receipt. The capacity-controlled network improves reliability for the customer and boosts competitiveness in comparison with road transport. For this purpose, the development of the software must be adapted to modern requirements.
“The shared view in combined teams has resulted in optimised solutions,” says Michael Stoll, who has commercial responsibility in this field at DB Systel. In conventional methods of software development, success would not have been measurable as quickly. In two-week sprints within a release, it would soon become clear whether difficulties were going to arise. Countermeasures would immediately be implemented within the teams, he continues.
Transferable model of success
This migration has also been well received by the customer. “SAFe and the agile working method enable us to implement complex IT projects on a step-by-step basis. This enables us to leverage commercial benefit sooner than before,” says Dominik Fürste, who heads the KAPA-Xrail project at DB Cargo.
This model of success can also be transferred to other projects. For the digitalisation of the group, the new practices in development are indispensable. The best advertisement for the model would be the members of the teams themselves. “I would say that the SAFe methods with the synchronously working teams is the right one for major projects in every case,” says Lazar. Enquiries are already being made by other departments and many colleagues are interested in an exchange of experiences.