Best Practices in Software Development: How to Leverage Global Delivery Centers
Developing software is complicated, especially if the software is a current part of an enterprise operating ecosystem. Imagine how much time is invested just to make the smallest improvement, let alone the collaborative nature required of the developers, analysts and managers involved. Now factor in working with team members in different time zones, different languages and different cultures. To some, this might be considered the perfect storm. To others, it runs like a well oiled machine.
Business stakeholders (Product Owners) often have great insight into what is required to improve the health of the business. However, they typically lack the skills and resources to implement those changes, especially when it involves technology. Third party resources like technology consulting firms offer timely and cost effective solutions through their Global Delivery Centers to make those substantial improvements. However, they require some initial involvement from the Product Owners to ensure the end result is achieved.
Frank Trainer, VP of Global Delivery at Saggezza, leads a team of 80 developers who reside in India from his office desk in Chicago. The software development teams are comprised of a Scrum Master, Tech Lead and Developers. He has found that by instituting The Gherkin Syntax, his delivery teams who work 12 hours ahead of the Product Owner, gain a clear understanding of the Product Owner’s requirements, mitigating miscommunication. One small misunderstanding can lead to a whole day of loss work.
The Gherkin Syntax is designed to collect business requirements with no ambiguity. Since remote teams are given a great deal of autonomy when developing software, they rely on concrete and concise requirements from the business before they get started. For example, if the business asks:
‘A customer needs to see the sale items when shopping.’
‘All items marked ‘sale’ must be placed at the top of home landing page, immediately visible to the customer when they start their shopping experience.’
It’s a fairly easy process for the Product Owner to follow. Frank’s Tech Leads and Scrum Masters start with a Grooming Process to ensure the Product Owner (business) understands the requirement from a technical view. Then, they ask the business to answer, “Given, Then, When” statements before passing the requirements on to the development teams.
“Given” statement: everything you need in order to prepare for action
“When” statement: action statements, something that needs to happen
“Then” statement: the final state of the application after the when statement is complete
“We let the developers use their own creativity and knowledge to solve the requirements,” Frank explains, “then its part of the sprint (TDD and SOLID) where the team describes it in little pieces so they are all 100% on the requirements. Next, they perform Regression tests on the entire system functionality, and Unit tests to ensure the software is performing as expected.”
Overall, the easiest and and most cost effective time to clear up any miscommunication is before development gets started.
For more information, or to speak with Frank Trainer, email firstname.lastname@example.org.