SlideShare ist ein Scribd-Unternehmen logo
1 von 6
Downloaden Sie, um offline zu lesen
WHITE PAPER




              Distributed agile and
              offshoring – antagonism
              or symbiosis?
Summary
  Agile software development and the breed of agile methodologies (XP, SCRUM, DSDM, etc.) have gained popularity since

  2001. Agile methodologies were primarily founded for software projects executed at a single location. Today, with many

  adopters and practitioners across the globe, agile methodologies are showing promising results in multi-site projects

  too. Offshore delivery models have been successful in application maintenance and enhancement projects for more than

  two decades. In the case of development projects, iterative lifecycle approaches are more widespread and acceptable

  than the classical waterfall approach in delivering results and ensuring customer satisfaction. Distributed

  agile software development involves software projects done by agile teams located across geographies. This paper

  presents Mindtree’s point of view on distributed agile and offshoring.




Contents
What is distributed agile?                                                  03

Global Software Engineering (GSE), distributed agile and offshoring         03

Challenges in distributed agile                                             03

Distributed agile and offshoring: antagonism or symbiosis?                  04

Our capability                                                              05

What next?                                                                  06




White paper                                                                                                                02
What is distributed agile?                                             Distributed agile is the application of agile methodologies
Agile is all about delivering business value in short                  such as XP, Scrum, DSDM or any other home grown
iterations at a sustainable pace, adapting to changing                 methodology based on Agile Manifesto and Agile Principles,
business needs. Agile software development focuses on                  in GSE projects.
early delivery of working software and considers working
software as the primary measure of progress. It creates an             There are two variations of distributed agile in the
environment that responds to change by being flexible                  offshoring context: Distributed agile in offshore insourcing
and nimble. It discourages creation of extensive documents             is when two or more teams of a single organization from
that do not add any value. Distributed agile software                  different countries participate in an agile project. A good
development and testing is simply applying agile principles            example of this is when distributed agile teams involve
and practices to software projects executed by distributed             teams from a large US based ISV and its captive center in
teams or teams located at different sites. These could be at           another country.
two or more floors of the same building, different buildings,
cities or countries across geographies and time zones.                 Distributed agile in offshore outsourcing is when two
                                                                       or more teams of different organizations from different
Global Software Engineering (GSE), distributed                         countries participate in an agile project. A good example
agile and offshoring                                                   of offshore outsourcing is when one or more teams from a
Global Software Engineering (GSE) involves software                    service provider like Mindtree participate with the teams
engineering projects executed with virtual teams from                  of a manufacturing firm or ISV. In this paper the term
different time zones and diverse cultures. In the past                 ‘offshoring’ means ‘offshore outsourcing’.
decade GSE has become popular and widespread due to
factors such as optimal costs, availability of a skilled pool          Challenges in distributed agile
of resources and globalization trends like mergers and                 The vision of any GSE project is to deliver work products
acquisitions. Distribution of teams becomes a complex                  of high quality on schedule. This is done by engaging
issue when an increasing number of teams from different                geographically distributed teams that define the
organizations participate in a project from different                  right architecture for distributed development and
locations or sites as shown in fig. 01. Additional factors such        following the right processes and tools for coordination
as project complexity, lifecycle activities, pricing models            and communication. There are several challenges
and culture impact distributed teams.                                  encountered in areas such as requirement engineering,



Fig. 01: Distribution of teams




                                                                  Organization
                                                                  (Single vendor, multiple vendor)



                                                                                      Location
                                                                                      (Same country, different country,
                                                                                      multiple countries)


                                                                                      Other factors
                                                                                      (Lifecycle, project complexity,
                                                                                      pricing model, culture)



                                             Number of teams
                                             2, 3, 4,...



White paper                                                                                                                          03
change management and project management, to name               teams need to understand and appreciate cultural
a few. Practitioners continue to adopt evolutionary             differences and work together in ensuring harmony and
methodologies such as agile software development in             rapport among all teams.
order to ensure success in distributed projects. Delivery of
working software at regular intervals at a sustainable pace     Distributed agile and offshoring: antagonism
and responding to the changing needs of business users          or symbiosis?
are the imperatives of agile. However, one must understand      The success of distributed agile projects involving
the challenges involved in distributed development. These       offshore teams depends on several factors: project type,
challenges fall under three broad categories:                   volatility of requirements, distributed governance, skills
                                                                and competency of team members and the culture of
1. Communication and coordination: Collocated teams             participating organizations. Those who have succeeded
have the advantage of interacting with each other and           in distributed agile projects in the offshoring context agree
with the onsite customer on a daily basis. This helps them      on the symbiotic relationship between distributed agile
understand and refine requirements in a timely manner.          and offshoring. Those who fail however, are curious to know
Geographically distributed teams on the other hand, do          exactly what practices help distributed projects succeed.
not get the opportunity of meeting face-to-face or having
informal hallway or water-cooler discussions. They have to      The organizational culture of participating organizations
depend on a set of tools and processes to communicate and       plays a major role in nurturing distributed agile ecosystems.
coordinate with each other. Also, in contrast to collocated     A good mindshare, open communication and collaborative
teams, distributed teams need to practice just enough           participation among organizations, results in a positive
documentation in order to create and retain knowledge           relationship that supports distributed agile projects.
across teams.                                                   Without these elements, organizations continue to function
                                                                with differences in understanding and expectations on
2. Time zone differences: Time zone differences impact          distributed agile.
distributed teams. This impact can be both positive and
negative, depending on the work culture and relationship        To ensure early success, starting with a non-critical pilot
among team members. For example, two teams from                 project or with simple user stories is critical for positive
overlapping time zones with a 5-hour overlap may feel very      reinforcement amongst teams. Organizations wanting to
comfortable working with each other. However, the more          develop modules involving critical functionalities or build
they utilize their time in communication and coordination,      mission-critical products or applications using distributed
the less time they will get for other engineering activities.   agile, must ensure prior experience in distributed agile in
At the other extreme, if there are two teams with only an       all participating teams.
hour of overlap, they will have to stretch or work extra
hours for an additional overlap, unless they are smart          There is a widespread misunderstanding in the industry
enough to use the one hour overlap efficiently. The way         that when requirements change on a daily basis, agile is
distributed teams manage this challenge depends on              the way to go. If requirements are changing so fast and if
people, culture and leadership style.                           they are to be implemented instantaneously, it is good to
                                                                have all the team members or most of the team members in
3. People, culture and leadership style: There are two main     one location. This is because highly volatile requirements
factors that influence interaction between distributed          warrant intense communication among team members
teams. The first fundamental factor is the work style and       and timely resolution of queries related to requirements.
culture of the locale or country. The second key factor         These are the symptoms of ad-hoc development, product
is the organizational culture. Organizations new to agile       envisioning or concept development. Such projects can
methodologies or in the early stages of agile transformation    be executed in an offshore model. However, these are not
find it very difficult to cope with these challenges. Whereas   ‘distributed agile’ projects because agile methodologies
organizations that promote agile and have an established        require discipline and involve delivery of working software
agile culture manage these challenges confidently and           at a sustainable pace or through time-boxes.
execute successful projects. Geographically distributed




White paper                                                                                                                    04
Governance and senior management support is important           Python, Perl, and C#. We supported these products
in distributed agile ecosystems. Distributed agile projects     on multiple platforms including Windows, Solaris,
expose risks at an early stage. Continuous improvement and      Linux and Mac.
course correction is possible only when project sponsors
understand how distributed agile projects progress over         In each project, we had multiple Scrum teams of 7 to 9 each.
initial iterations.                                             The Mindtree and customer teams followed Scrum for rapid
                                                                development with frequent delivery and demonstration of
We have experienced the symbiotic relationship between          working software in order to ensure customer satisfaction.
distributed agile and offshoring and so have our customers.
                                                                We selected a Sprint size of two weeks and ensured
Our capability                                                  collective participation in Sprint planning. Our team
Mindtree has proven experience of over 10 years in              participated in daily stand-up meetings and demonstrated
agile methodologies. We have executed software                  working code at the end of Sprints. Using NUnit and CPPUnit
development, maintenance and testing projects using agile       our team members practiced Test Driven Development
methodologies with distributed teams as well as collocated      (TDD). Also, we generated burn down / burn up charts for
offshore teams. Our experience includes:                        sprint planning and retrospectives.
ƒƒ 50,00,000+ man hours of experience in agile projects
ƒƒ 1000+ agile team members                                     With more than 8 years of partnership and 30% agile
ƒƒ 100+ ongoing agile projects                                  adoption in a team of 200 we have found immense
                                                                benefits in implementing distributed agile practices in
We understand agile as well as other evolutionary               this engagement.
methodologies. Our experience in executing projects in
onsite-offshore models enables us to apply agile principles     Case study 2
and best practices in distributed teams. In order to make       Agile transformation in geographically
this work at an organizational level, we have created subject   distributed teams
matter experts and agile coaches. We also facilitate training   Mindtree implemented agile methodologies to execute
programs on distributed agile to build agile capabilities in    multiple projects for one of the global leaders in
our organization. These are the crucial steps we adopted to     automobile manufacturing and construction. Some of these
make it work.                                                   projects involved a major refactoring or rewrite of one or
                                                                more IT applications using technologies such as Java, C#,
We promote agile through Mindtree Agile Council and             Oracle, SQL Server, BizTalk, WebSphere, FlexNet, SAP etc.
Agile Community. Mindtree Agile Council, a team of              The other projects involved application enhancement,
agile experts, focuses on nurturing agile capabilities at       change request management and support.
Mindtree and facilitating competency building programs.
Agile Community at Mindtree is a knowledge management           Mindtree set up a dedicated offshore development center
community that provides a common platform for all               at Bangalore with a team of 200 engineers for the rewrite,
practitioners and promotes knowledge sharing. In addition       upgrade, enhancement and support of the existing portfolio
to these we contribute to external conferences and online       of IT applications. We collaborated with our customer and
media by sharing our success stories, presenting white          decided to introduce agile methods in some of the key
papers and participating in discussions.                        projects. To ensure success in this agile transformation, we
                                                                initiated training programs on agile practices for all
Case study 1                                                    team members.
Distributed agile in product engineering
Mindtree implemented distributed agile to execute multiple      In one of the projects we implemented Scrum with four
projects for a leading global provider of security, storage     sub teams in order to address the major refactoring
and system management solutions. These projects involved        requirements in an IT application. We started with
product reengineering, maintenance and enhancement of           two week Sprints and practiced release planning, backlog
multiple products based on technologies such as Java, C++,      grooming, daily stand-ups, reviews and retrospectives,




White paper                                                                                                                  05
and continuous integration. After the initial months, we
introduced Test Driven Development (TDD) to improve                   What next?
product quality.                                                      Mindtree has contributed to several success stories
                                                                      on distributed agile. Every year we see many new
Simultaneously, we introduced Scrum practices in a large              engagements kicking off in this model. We have
maintenance project with Scrum of Scrums. We started with             experienced the symbiotic relationship between
four week Sprints to match the rhythm of release cycles.              distributed agile and offshoring and so have our
In these projects we used tools such as Microsoft Visual              customers. We believe that distributed agile will
Studio, Team Foundation Server, and NUnit.                            be increasingly adopted over the coming years.
                                                                      For more information on Mindtree distributed agile
Mindtree has been engaged with this customer for more                 capabilities or case studies please contact
than ten years. Considering the success and benefits of               raja_bavani@mindtree.com.
distributed agile, the number of distributed agile projects in
this engagement is on the rise.
                                                                   References:
                                                                   Mindtree distributed agile blogs:
                                                                   http://www.blogs.mindtree.com/author/raja-bavani


                                                                   Mindtree articles and white papers:
                                                                   http://www.mindtree.com/services/agile




  About the author:
  Raja Bavani is Chief Architect of Mindtree’s Product Engineering Services (PES) and IT Services (ITS) groups and plays
  the role of agile evangelist. He has more than 20 years of experience in the IT industry and has published papers at
  international conferences on topics related to code quality, distributed agile, customer value management and software
  estimation. He is a member of IEEE and IEEE computer society. He regularly interfaces with educational institutions to
  offer guest lectures and writes for technical conferences. He also writes for magazines such as Agile Record, Cutter IT
  Journal, IEEE Software and SD Times.




White paper                                                                                                                 06

Weitere Àhnliche Inhalte

Andere mochten auch

Redefining surveillance
Redefining surveillanceRedefining surveillance
Redefining surveillance
Mindtree Ltd.
 

Andere mochten auch (13)

Innovated a functionally rich solution suite for a leader in air transport co...
Innovated a functionally rich solution suite for a leader in air transport co...Innovated a functionally rich solution suite for a leader in air transport co...
Innovated a functionally rich solution suite for a leader in air transport co...
 
Enabling predictive analysis in service oriented BPM solutions.
Enabling predictive analysis in service oriented BPM solutions.Enabling predictive analysis in service oriented BPM solutions.
Enabling predictive analysis in service oriented BPM solutions.
 
Dynamic process platforms for adaptive enterprises.
Dynamic process platforms for adaptive enterprises.Dynamic process platforms for adaptive enterprises.
Dynamic process platforms for adaptive enterprises.
 
HTAF 2.0 - A hybrid test automation framework.
HTAF 2.0 - A hybrid test automation framework.HTAF 2.0 - A hybrid test automation framework.
HTAF 2.0 - A hybrid test automation framework.
 
Redefining surveillance
Redefining surveillanceRedefining surveillance
Redefining surveillance
 
Predictable testing for faster time to market.
Predictable testing for faster time to market.Predictable testing for faster time to market.
Predictable testing for faster time to market.
 
Business innovation with SAP HANA
Business innovation with SAP HANABusiness innovation with SAP HANA
Business innovation with SAP HANA
 
Intelligent Video Surveillance Solution
Intelligent Video Surveillance SolutionIntelligent Video Surveillance Solution
Intelligent Video Surveillance Solution
 
Scalable Computing Labs (SCL).
Scalable Computing Labs (SCL).Scalable Computing Labs (SCL).
Scalable Computing Labs (SCL).
 
Enabling enterprises to emphasize on core products while we focus on the non-...
Enabling enterprises to emphasize on core products while we focus on the non-...Enabling enterprises to emphasize on core products while we focus on the non-...
Enabling enterprises to emphasize on core products while we focus on the non-...
 
Integrated methodology for testing and quality management.
Integrated methodology for testing and quality management.Integrated methodology for testing and quality management.
Integrated methodology for testing and quality management.
 
Mobile Integrated Advisory Solution (MIAS) for financial advisors
Mobile Integrated Advisory Solution (MIAS) for financial advisorsMobile Integrated Advisory Solution (MIAS) for financial advisors
Mobile Integrated Advisory Solution (MIAS) for financial advisors
 
Corporate brochure
Corporate brochureCorporate brochure
Corporate brochure
 

Ähnlich wie Distributed agile and offshoring - antagonism or symbiosis?

Presentation by somdatta banerjee
Presentation by somdatta banerjeePresentation by somdatta banerjee
Presentation by somdatta banerjee
PMI_IREP_TP
 
Presentation by somdatta banerjee
Presentation by somdatta banerjeePresentation by somdatta banerjee
Presentation by somdatta banerjee
PMI_IREP_TP
 
Does Distributed Development Affect Software Quality? An Empirical Case Study...
Does Distributed Development Affect Software Quality? An Empirical Case Study...Does Distributed Development Affect Software Quality? An Empirical Case Study...
Does Distributed Development Affect Software Quality? An Empirical Case Study...
Daniel Agaba
 
How to transform a billion lives in 5475 days
How to transform a billion lives in 5475 daysHow to transform a billion lives in 5475 days
How to transform a billion lives in 5475 days
Gautam Kishore
 
JuliaThere is an art to projecting management. Knowing how to m.docx
JuliaThere is an art to projecting management. Knowing how to m.docxJuliaThere is an art to projecting management. Knowing how to m.docx
JuliaThere is an art to projecting management. Knowing how to m.docx
tawnyataylor528
 
Selection criterion and implementation of case tools in gap analysis towa
Selection criterion and implementation of case tools in gap analysis towaSelection criterion and implementation of case tools in gap analysis towa
Selection criterion and implementation of case tools in gap analysis towa
IAEME Publication
 

Ähnlich wie Distributed agile and offshoring - antagonism or symbiosis? (20)

Mindtree distributed agile journey and guiding principles
Mindtree distributed agile journey and guiding principlesMindtree distributed agile journey and guiding principles
Mindtree distributed agile journey and guiding principles
 
Agility At Scale
Agility At ScaleAgility At Scale
Agility At Scale
 
Presentation by somdatta banerjee
Presentation by somdatta banerjeePresentation by somdatta banerjee
Presentation by somdatta banerjee
 
Presentation by somdatta banerjee
Presentation by somdatta banerjeePresentation by somdatta banerjee
Presentation by somdatta banerjee
 
DISTRIBUTED AGILE - CHALLENGES & STRATEGIES
DISTRIBUTED AGILE - CHALLENGES & STRATEGIESDISTRIBUTED AGILE - CHALLENGES & STRATEGIES
DISTRIBUTED AGILE - CHALLENGES & STRATEGIES
 
Scaling agile exec guide
Scaling agile exec guideScaling agile exec guide
Scaling agile exec guide
 
White paper - Scaling agile: An executive guide
White paper - Scaling agile: An executive guide White paper - Scaling agile: An executive guide
White paper - Scaling agile: An executive guide
 
Does Distributed Development Affect Software Quality? An Empirical Case Study...
Does Distributed Development Affect Software Quality? An Empirical Case Study...Does Distributed Development Affect Software Quality? An Empirical Case Study...
Does Distributed Development Affect Software Quality? An Empirical Case Study...
 
Agile in multicultural environment
Agile in multicultural environmentAgile in multicultural environment
Agile in multicultural environment
 
Understanding Strategies and Approaches to Scaling Agile Across Organizations
Understanding Strategies and  Approaches to Scaling Agile Across  OrganizationsUnderstanding Strategies and  Approaches to Scaling Agile Across  Organizations
Understanding Strategies and Approaches to Scaling Agile Across Organizations
 
How to transform a billion lives in 5475 days
How to transform a billion lives in 5475 daysHow to transform a billion lives in 5475 days
How to transform a billion lives in 5475 days
 
JuliaThere is an art to projecting management. Knowing how to m.docx
JuliaThere is an art to projecting management. Knowing how to m.docxJuliaThere is an art to projecting management. Knowing how to m.docx
JuliaThere is an art to projecting management. Knowing how to m.docx
 
HYBRID PRACTICES IN GLOBAL SOFTWARE DEVELOPMENT: A SYSTEMATIC LITERATURE REVIEW
HYBRID PRACTICES IN GLOBAL SOFTWARE DEVELOPMENT: A SYSTEMATIC LITERATURE REVIEWHYBRID PRACTICES IN GLOBAL SOFTWARE DEVELOPMENT: A SYSTEMATIC LITERATURE REVIEW
HYBRID PRACTICES IN GLOBAL SOFTWARE DEVELOPMENT: A SYSTEMATIC LITERATURE REVIEW
 
Jharna Software
Jharna SoftwareJharna Software
Jharna Software
 
Distributed Agile Development: Practices for building trust in team through E...
Distributed Agile Development: Practices for building trust in team through E...Distributed Agile Development: Practices for building trust in team through E...
Distributed Agile Development: Practices for building trust in team through E...
 
Selection criterion and implementation of case tools in gap analysis towa
Selection criterion and implementation of case tools in gap analysis towaSelection criterion and implementation of case tools in gap analysis towa
Selection criterion and implementation of case tools in gap analysis towa
 
Agile
AgileAgile
Agile
 
Agile_Squads
Agile_SquadsAgile_Squads
Agile_Squads
 
EXPLORING THE LINK BETWEEN LEADERSHIP AND DEVOPS PRACTICE AND PRINCIPLE ADOPTION
EXPLORING THE LINK BETWEEN LEADERSHIP AND DEVOPS PRACTICE AND PRINCIPLE ADOPTIONEXPLORING THE LINK BETWEEN LEADERSHIP AND DEVOPS PRACTICE AND PRINCIPLE ADOPTION
EXPLORING THE LINK BETWEEN LEADERSHIP AND DEVOPS PRACTICE AND PRINCIPLE ADOPTION
 
H017245157
H017245157H017245157
H017245157
 

Mehr von Mindtree Ltd.

Mehr von Mindtree Ltd. (20)

Mindtree: Shift to Continuous Delivery
Mindtree: Shift to Continuous DeliveryMindtree: Shift to Continuous Delivery
Mindtree: Shift to Continuous Delivery
 
Automation and upgrade of a multi country rollout testing, accelerated by Min...
Automation and upgrade of a multi country rollout testing, accelerated by Min...Automation and upgrade of a multi country rollout testing, accelerated by Min...
Automation and upgrade of a multi country rollout testing, accelerated by Min...
 
Developing a contact center application to enhance customer service in the ba...
Developing a contact center application to enhance customer service in the ba...Developing a contact center application to enhance customer service in the ba...
Developing a contact center application to enhance customer service in the ba...
 
Designing a syndicated loans deal management system.
Designing a syndicated loans deal management system.Designing a syndicated loans deal management system.
Designing a syndicated loans deal management system.
 
Facilitating a unique identification enrolment and authentication system.
Facilitating a unique identification enrolment and authentication system.Facilitating a unique identification enrolment and authentication system.
Facilitating a unique identification enrolment and authentication system.
 
Implementing a comprehensive digital content management solution.
Implementing a comprehensive digital content management solution.Implementing a comprehensive digital content management solution.
Implementing a comprehensive digital content management solution.
 
Developed a cutting edge Cloud-based solution for enhancing Indirect Material...
Developed a cutting edge Cloud-based solution for enhancing Indirect Material...Developed a cutting edge Cloud-based solution for enhancing Indirect Material...
Developed a cutting edge Cloud-based solution for enhancing Indirect Material...
 
Managed support cost and enhanced performance for the world's largest gaming ...
Managed support cost and enhanced performance for the world's largest gaming ...Managed support cost and enhanced performance for the world's largest gaming ...
Managed support cost and enhanced performance for the world's largest gaming ...
 
Online platform for a leading American consumer electronic enterprise.
Online platform for a leading American consumer electronic enterprise.Online platform for a leading American consumer electronic enterprise.
Online platform for a leading American consumer electronic enterprise.
 
Next generation SaaS solution with end-to-end ownership for a leading mobile ...
Next generation SaaS solution with end-to-end ownership for a leading mobile ...Next generation SaaS solution with end-to-end ownership for a leading mobile ...
Next generation SaaS solution with end-to-end ownership for a leading mobile ...
 
Cloud based analytics framework for the world's largest B2B e-commerce servic...
Cloud based analytics framework for the world's largest B2B e-commerce servic...Cloud based analytics framework for the world's largest B2B e-commerce servic...
Cloud based analytics framework for the world's largest B2B e-commerce servic...
 
Developing high customer engagement through mobile application for a major cr...
Developing high customer engagement through mobile application for a major cr...Developing high customer engagement through mobile application for a major cr...
Developing high customer engagement through mobile application for a major cr...
 
Crafting an intuitive and efficient marketing portal to enhance product manag...
Crafting an intuitive and efficient marketing portal to enhance product manag...Crafting an intuitive and efficient marketing portal to enhance product manag...
Crafting an intuitive and efficient marketing portal to enhance product manag...
 
Enhancing Web Content Management System (WCMS) and service.
Enhancing Web Content Management System (WCMS) and service.Enhancing Web Content Management System (WCMS) and service.
Enhancing Web Content Management System (WCMS) and service.
 
SharePoint partnership.
SharePoint partnership.SharePoint partnership.
SharePoint partnership.
 
Improving employee and broker productivity with portal technologies.
Improving employee and broker productivity with portal technologies.Improving employee and broker productivity with portal technologies.
Improving employee and broker productivity with portal technologies.
 
SITEsMART - Connecting with the on-the-move consumer.
SITEsMART - Connecting with the on-the-move consumer.SITEsMART - Connecting with the on-the-move consumer.
SITEsMART - Connecting with the on-the-move consumer.
 
Powering performance through a tailor-made solution.
Powering performance through a tailor-made solution.Powering performance through a tailor-made solution.
Powering performance through a tailor-made solution.
 
Developing softphone driver for Unified Communication Market (UCF)
Developing softphone driver for Unified Communication Market (UCF)Developing softphone driver for Unified Communication Market (UCF)
Developing softphone driver for Unified Communication Market (UCF)
 
Mindtree SAP BI, BO & HANA services
Mindtree SAP BI, BO & HANA servicesMindtree SAP BI, BO & HANA services
Mindtree SAP BI, BO & HANA services
 

KĂŒrzlich hochgeladen

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

KĂŒrzlich hochgeladen (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 

Distributed agile and offshoring - antagonism or symbiosis?

  • 1. WHITE PAPER Distributed agile and offshoring – antagonism or symbiosis?
  • 2. Summary Agile software development and the breed of agile methodologies (XP, SCRUM, DSDM, etc.) have gained popularity since 2001. Agile methodologies were primarily founded for software projects executed at a single location. Today, with many adopters and practitioners across the globe, agile methodologies are showing promising results in multi-site projects too. Offshore delivery models have been successful in application maintenance and enhancement projects for more than two decades. In the case of development projects, iterative lifecycle approaches are more widespread and acceptable than the classical waterfall approach in delivering results and ensuring customer satisfaction. Distributed agile software development involves software projects done by agile teams located across geographies. This paper presents Mindtree’s point of view on distributed agile and offshoring. Contents What is distributed agile? 03 Global Software Engineering (GSE), distributed agile and offshoring 03 Challenges in distributed agile 03 Distributed agile and offshoring: antagonism or symbiosis? 04 Our capability 05 What next? 06 White paper 02
  • 3. What is distributed agile? Distributed agile is the application of agile methodologies Agile is all about delivering business value in short such as XP, Scrum, DSDM or any other home grown iterations at a sustainable pace, adapting to changing methodology based on Agile Manifesto and Agile Principles, business needs. Agile software development focuses on in GSE projects. early delivery of working software and considers working software as the primary measure of progress. It creates an There are two variations of distributed agile in the environment that responds to change by being flexible offshoring context: Distributed agile in offshore insourcing and nimble. It discourages creation of extensive documents is when two or more teams of a single organization from that do not add any value. Distributed agile software different countries participate in an agile project. A good development and testing is simply applying agile principles example of this is when distributed agile teams involve and practices to software projects executed by distributed teams from a large US based ISV and its captive center in teams or teams located at different sites. These could be at another country. two or more floors of the same building, different buildings, cities or countries across geographies and time zones. Distributed agile in offshore outsourcing is when two or more teams of different organizations from different Global Software Engineering (GSE), distributed countries participate in an agile project. A good example agile and offshoring of offshore outsourcing is when one or more teams from a Global Software Engineering (GSE) involves software service provider like Mindtree participate with the teams engineering projects executed with virtual teams from of a manufacturing firm or ISV. In this paper the term different time zones and diverse cultures. In the past ‘offshoring’ means ‘offshore outsourcing’. decade GSE has become popular and widespread due to factors such as optimal costs, availability of a skilled pool Challenges in distributed agile of resources and globalization trends like mergers and The vision of any GSE project is to deliver work products acquisitions. Distribution of teams becomes a complex of high quality on schedule. This is done by engaging issue when an increasing number of teams from different geographically distributed teams that define the organizations participate in a project from different right architecture for distributed development and locations or sites as shown in fig. 01. Additional factors such following the right processes and tools for coordination as project complexity, lifecycle activities, pricing models and communication. There are several challenges and culture impact distributed teams. encountered in areas such as requirement engineering, Fig. 01: Distribution of teams Organization (Single vendor, multiple vendor) Location (Same country, different country, multiple countries) Other factors (Lifecycle, project complexity, pricing model, culture) Number of teams 2, 3, 4,... White paper 03
  • 4. change management and project management, to name teams need to understand and appreciate cultural a few. Practitioners continue to adopt evolutionary differences and work together in ensuring harmony and methodologies such as agile software development in rapport among all teams. order to ensure success in distributed projects. Delivery of working software at regular intervals at a sustainable pace Distributed agile and offshoring: antagonism and responding to the changing needs of business users or symbiosis? are the imperatives of agile. However, one must understand The success of distributed agile projects involving the challenges involved in distributed development. These offshore teams depends on several factors: project type, challenges fall under three broad categories: volatility of requirements, distributed governance, skills and competency of team members and the culture of 1. Communication and coordination: Collocated teams participating organizations. Those who have succeeded have the advantage of interacting with each other and in distributed agile projects in the offshoring context agree with the onsite customer on a daily basis. This helps them on the symbiotic relationship between distributed agile understand and refine requirements in a timely manner. and offshoring. Those who fail however, are curious to know Geographically distributed teams on the other hand, do exactly what practices help distributed projects succeed. not get the opportunity of meeting face-to-face or having informal hallway or water-cooler discussions. They have to The organizational culture of participating organizations depend on a set of tools and processes to communicate and plays a major role in nurturing distributed agile ecosystems. coordinate with each other. Also, in contrast to collocated A good mindshare, open communication and collaborative teams, distributed teams need to practice just enough participation among organizations, results in a positive documentation in order to create and retain knowledge relationship that supports distributed agile projects. across teams. Without these elements, organizations continue to function with differences in understanding and expectations on 2. Time zone differences: Time zone differences impact distributed agile. distributed teams. This impact can be both positive and negative, depending on the work culture and relationship To ensure early success, starting with a non-critical pilot among team members. For example, two teams from project or with simple user stories is critical for positive overlapping time zones with a 5-hour overlap may feel very reinforcement amongst teams. Organizations wanting to comfortable working with each other. However, the more develop modules involving critical functionalities or build they utilize their time in communication and coordination, mission-critical products or applications using distributed the less time they will get for other engineering activities. agile, must ensure prior experience in distributed agile in At the other extreme, if there are two teams with only an all participating teams. hour of overlap, they will have to stretch or work extra hours for an additional overlap, unless they are smart There is a widespread misunderstanding in the industry enough to use the one hour overlap efficiently. The way that when requirements change on a daily basis, agile is distributed teams manage this challenge depends on the way to go. If requirements are changing so fast and if people, culture and leadership style. they are to be implemented instantaneously, it is good to have all the team members or most of the team members in 3. People, culture and leadership style: There are two main one location. This is because highly volatile requirements factors that influence interaction between distributed warrant intense communication among team members teams. The first fundamental factor is the work style and and timely resolution of queries related to requirements. culture of the locale or country. The second key factor These are the symptoms of ad-hoc development, product is the organizational culture. Organizations new to agile envisioning or concept development. Such projects can methodologies or in the early stages of agile transformation be executed in an offshore model. However, these are not find it very difficult to cope with these challenges. Whereas ‘distributed agile’ projects because agile methodologies organizations that promote agile and have an established require discipline and involve delivery of working software agile culture manage these challenges confidently and at a sustainable pace or through time-boxes. execute successful projects. Geographically distributed White paper 04
  • 5. Governance and senior management support is important Python, Perl, and C#. We supported these products in distributed agile ecosystems. Distributed agile projects on multiple platforms including Windows, Solaris, expose risks at an early stage. Continuous improvement and Linux and Mac. course correction is possible only when project sponsors understand how distributed agile projects progress over In each project, we had multiple Scrum teams of 7 to 9 each. initial iterations. The Mindtree and customer teams followed Scrum for rapid development with frequent delivery and demonstration of We have experienced the symbiotic relationship between working software in order to ensure customer satisfaction. distributed agile and offshoring and so have our customers. We selected a Sprint size of two weeks and ensured Our capability collective participation in Sprint planning. Our team Mindtree has proven experience of over 10 years in participated in daily stand-up meetings and demonstrated agile methodologies. We have executed software working code at the end of Sprints. Using NUnit and CPPUnit development, maintenance and testing projects using agile our team members practiced Test Driven Development methodologies with distributed teams as well as collocated (TDD). Also, we generated burn down / burn up charts for offshore teams. Our experience includes: sprint planning and retrospectives. ƒƒ 50,00,000+ man hours of experience in agile projects ƒƒ 1000+ agile team members With more than 8 years of partnership and 30% agile ƒƒ 100+ ongoing agile projects adoption in a team of 200 we have found immense benefits in implementing distributed agile practices in We understand agile as well as other evolutionary this engagement. methodologies. Our experience in executing projects in onsite-offshore models enables us to apply agile principles Case study 2 and best practices in distributed teams. In order to make Agile transformation in geographically this work at an organizational level, we have created subject distributed teams matter experts and agile coaches. We also facilitate training Mindtree implemented agile methodologies to execute programs on distributed agile to build agile capabilities in multiple projects for one of the global leaders in our organization. These are the crucial steps we adopted to automobile manufacturing and construction. Some of these make it work. projects involved a major refactoring or rewrite of one or more IT applications using technologies such as Java, C#, We promote agile through Mindtree Agile Council and Oracle, SQL Server, BizTalk, WebSphere, FlexNet, SAP etc. Agile Community. Mindtree Agile Council, a team of The other projects involved application enhancement, agile experts, focuses on nurturing agile capabilities at change request management and support. Mindtree and facilitating competency building programs. Agile Community at Mindtree is a knowledge management Mindtree set up a dedicated offshore development center community that provides a common platform for all at Bangalore with a team of 200 engineers for the rewrite, practitioners and promotes knowledge sharing. In addition upgrade, enhancement and support of the existing portfolio to these we contribute to external conferences and online of IT applications. We collaborated with our customer and media by sharing our success stories, presenting white decided to introduce agile methods in some of the key papers and participating in discussions. projects. To ensure success in this agile transformation, we initiated training programs on agile practices for all Case study 1 team members. Distributed agile in product engineering Mindtree implemented distributed agile to execute multiple In one of the projects we implemented Scrum with four projects for a leading global provider of security, storage sub teams in order to address the major refactoring and system management solutions. These projects involved requirements in an IT application. We started with product reengineering, maintenance and enhancement of two week Sprints and practiced release planning, backlog multiple products based on technologies such as Java, C++, grooming, daily stand-ups, reviews and retrospectives, White paper 05
  • 6. and continuous integration. After the initial months, we introduced Test Driven Development (TDD) to improve What next? product quality. Mindtree has contributed to several success stories on distributed agile. Every year we see many new Simultaneously, we introduced Scrum practices in a large engagements kicking off in this model. We have maintenance project with Scrum of Scrums. We started with experienced the symbiotic relationship between four week Sprints to match the rhythm of release cycles. distributed agile and offshoring and so have our In these projects we used tools such as Microsoft Visual customers. We believe that distributed agile will Studio, Team Foundation Server, and NUnit. be increasingly adopted over the coming years. For more information on Mindtree distributed agile Mindtree has been engaged with this customer for more capabilities or case studies please contact than ten years. Considering the success and benefits of raja_bavani@mindtree.com. distributed agile, the number of distributed agile projects in this engagement is on the rise. References: Mindtree distributed agile blogs: http://www.blogs.mindtree.com/author/raja-bavani Mindtree articles and white papers: http://www.mindtree.com/services/agile About the author: Raja Bavani is Chief Architect of Mindtree’s Product Engineering Services (PES) and IT Services (ITS) groups and plays the role of agile evangelist. He has more than 20 years of experience in the IT industry and has published papers at international conferences on topics related to code quality, distributed agile, customer value management and software estimation. He is a member of IEEE and IEEE computer society. He regularly interfaces with educational institutions to offer guest lectures and writes for technical conferences. He also writes for magazines such as Agile Record, Cutter IT Journal, IEEE Software and SD Times. White paper 06