Scrum & Co simplify complex software projects
Innovation cycles are becoming ever shorter. As a result, software projects are increasingly employing agile methods. Scrum, for example, simplifies complex projects that cannot be planned from start to finish: progress and obstacles are recorded daily and communicated, functions are implemented and evaluated on an on-going basis, and requirements are reassessed and adjusted as appropriate following each delivery. Agile methods significantly increase flexibility and improve the quality of projects while drastically cutting the time-to-market – three strong reasons why an increasing number of large, challenging and complex software projects are utilising methods such as Scrum.
More efficient and successful collaboration
It is logical to apply these methods to both near and offshoring, yet many believe that the kind of communication that is so critical for Scrum and similar methods is impossible to achieve in near and offshoring scenarios due to geographical constraints. Quite the contrary: agile methods optimise cross-national cooperation between teams and companies and make collaborative work more efficient and effective. Thanks to constant consultation, misunderstandings are discovered sooner and can be corrected quickly with minimal effort. And the open exchange between the parties promotes a common understanding of goals and procedures, enabling better use of synergies.
Using agile methods to aid project management
Agile methods are a boon to project management particularly in three-tier models, which combine the benefits of local design and offshore development. The most sensible approach is to design the software locally, outsource development on the basis of detailed designs, requirements and specifications to a nearshore centre, and develop it further offshore once the application is finished. To make the most of the vast potential cost benefits (see Fig. 1), it is imperative to define the individual measures step by step in the project plan. Agile methods help the project lead effectively address any additional communication and project control challenges that arise.
Fig.1: Shoring cost comparison
Real-world example: software development in Slovakia
A technology manufacturer wanted to develop a new software component, but could not build up the requisite internal resources quickly enough. Thus, it decided to have the component developed at a nearshore centre using agile methods. The product owner and Scrum master were in Switzerland and the Scrum team in Slovakia. The developers worked for several months at the client site to develop a common understanding of goals and procedures, exchange expertise and establish communication processes. Following their return to Slovakia, they set up the communication infrastructure and development environment, and synchronised it with the client.
Communication is the basis for successful teamwork
The developers spoke daily with the product owner and Scrum master. Requirements were clarified through emails, questions were cleared up immediately via instant messenging, all planning meetings took place online and retrospectives were discussed in video or web conferences with screensharing. Moreover, the developers travelled frequently to Switzerland and the product owner and Scrum master to Slovakia. Communication is crucial to the success of agile methods, especially in near and offshoring scenarios.
Agile methods a perfect fit with near and offshoring
The project collaboration functioned flawlessly from day one. Thanks to the regular and open exchange of ideas, the Scrum master and product owner were always up to speed on the project status and had a firm grip on their projects. They also benefited from the expertise of the Slovakian specialists, which flowed directly into their projects and thus helped improve the quality of the software components.