Erick Segaar is Application Lifecycle Management specialist at Devoteam. He also joined a government agency in that role, where the ALM phenomenon was still in its infancy. “There was nothing when we entered,” Erick says. Everything was different within a year.
The Snapshot
1
A government agency relied on a slow, error-prone, and manual process for software development, using its server purely for version control.
2
The core challenge was to introduce a reliable and repeatable system by implementing continuous integration and refining the existing scrum process.
3
Devoteam established a central build system, migrated to a modern server, and automated the deployment pipeline to enable continuous delivery.
Manual
‘Nothing at all’ might be a little exaggerated. The organisation used the Team Foundation Server 2012. In addition to being a slightly older version, TFS was not fully utilised. The server was only used for version control. As Erick put it, the rest went manually:
The developer built on his own computer. He manually put his binaries in the location where the testers could test the products. A slow, error-sensitive, non-reliable, non-repeatable way of working.
Erick Segaar
Devoteam Application Lifecycle Management Specialist
Continuous Integration
The first step was the implementation of a central build system and the implementation of continuous integration (CI). Since than, everyone works on the main branch and every developer checks in at least every 24 hours. “That check-in serves is the trigger for the build server,” says Erick. “It picks up the code you just checked and starts building. This process triggers the tester to start. It is an independent, reliable and stable central system. As a developer, you are sure that your code works and that you can build further with it. “In addition to continuous integration, testers now have the opportunity to publish the latest successful build to their own environment. There, administrators can pick up the next version when they are ready.
Scrum
Devoteam also worked at the scrum process. Particularly on the regression test component, which only continued. The various scrum teams are now tuned to finish their sprint every Thursday; This makes it possible to perform a central regression test on Friday in order to start a new sprint on Monday. And that’s only the intermediate phase, which is explained below…
Migration
The migration to Team Foundation Server 2017 was completed in September 2016. Erick: “This made it possible to link different environments. It enables us to transfer CI builds from the development environment to the test environment and ultimately to the acceptance environment. Before we can deliver to the acceptance environment, we need to validate whether the deployment of the CI builds has been successful. We focus on the environment-dependent parameters. If you want to transfer to a next environment, the binaries do not change themselves, but the environmental factors do. Through smoke testing, we tested environmental-related parameters, returning all evidence to the central release definition. This will make clear that all crucial steps have been taken. It has been tested, everything went well and there were no changes during the run-up to the acceptance stage. “
Current state
Erick is currently working on the automation of functional testing. The Tosca continuous testing platform is used for this. Erick: “The Tosca tests are now manually retracted, and manually selections are made about the tests to be performed during the regression test.
The pipeline will check itself as soon as the codes are checked. The outcomes will be adjusted to the previous version and the suntest starts. Every night a complete regression test is being run. “This will also allow the development process to continue on Friday. Because ‘ the day after’ no longer have to be reserved for the central regression test. Erick: “That will make the process a lot more efficient.”
Conclusion
The new automated deployment pipeline eliminated the errors associated with manual actions.
The refined agile process significantly shortened the feedback cycle for adding and adjusting features.
The streamlined workflow provided development teams more effective time to deliver new functionality.
Thanks to all the adjustments that Erick and his team made, the teams are able to develop extremely fast for a longer period. That means there is more effective time to add features. The far-reaching automated deployment includes the error sensitivity associated with manual actions to the past; it’s now push & go. Errors are also noted in the development environment and not only during production.
By making structural adjustments to the existing major monoliths in the organization, Devoteam has managed to shorten the feedback cycle. The organization needs less time to add new features and runs less risk during the adjustment of old ones. In short, the organization has become agile.
From manual work to continuous delivery in a year? It turns out to be possible!
Your Success Starts Here
Partner with Devoteam to leverage award-winning tech expertise, agile execution, and a culture of continuous learning.