• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
ETPM2
 

ETPM2

on

  • 1,125 views

 

Statistics

Views

Total Views
1,125
Views on SlideShare
1,125
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    ETPM2 ETPM2 Document Transcript

    • Project Management National Conference 2011 PMI India Succeeding in Distributed Agile Project Management – Challenges and Best Practices Rathinakumar Balasubramanian. PMP, FLMI Principal, Infosys2|P a g e Application of Select Tools of Psychology for Effective Project Management
    • Project Management National Conference 2011 PMI India Contents 1 Introduction........................................................................................................................4 2 Content...............................................................................................................................4 2.1 Agile Project Management..............................................................................................4 2.2 Agile Projects - the need of the hour...............................................................................5 2.3 Distributed Teams – the Hobson’s choice.......................................................................5 2.4 Distributed Agile Projects – a reality check....................................................................6 2.5 Challenges in Distributed Agile Projects........................................................................7 2.5.1 Erosion of trust.............................................................................................................8 2.5.2 Communication breakdown.........................................................................................8 2.5.3 Lack of infrastructure...................................................................................................8 2.5.4 Fear of failure...............................................................................................................8 2.6 Succeeding in Distributed Agile Projects – Best Practices.............................................9 2.6.1 People – Best Practices..............................................................................................10 2.6.2 Infrastructure – Best Practices....................................................................................11 2.6.3 Communication – Best Practices................................................................................12 2.6.4 Structure – Best Practices...........................................................................................13 3 Conclusion........................................................................................................................15 4 Definitions, Abbreviation and Acronyms........................................................................15 5 References........................................................................................................................15 6 Author’s Profile................................................................................................................153|P a g e Application of Select Tools of Psychology for Effective Project Management
    • 1 Introduction“The State of Agile Survey 2010”, conducted by VersionOne [1] shows that theagile adoption is clearly on the rise. As per the survey, 90% of respondentsworked in organizations that used agile development practices to some degree.The survey indicates that about half of projects in respondents’ companies useagile methods. At the same time, the hunt for global talents is a key strategictool to be competitive in the global market. With increasing popularity of Agilepractices and availability of the talents spread across the globe it is natural that“Distributed Agile Development Projects” are being increasing adopted.These two trends Agile Project Management and Distributed Team pose newchallenges. Both these ideas evolved from seeming contradictory elements.There are inherently incompatible aspects between Agile Projects andDistributed Teams. This paper answers the question - is there a common groundwhere Agile and Distributed delivery can hope to reach and share a symbioticrelationship? This paper ‘Succeeding in Distributed Agile Project Management –Challenges and Best Practices’ provides a practical framework of best practicesto address the inherent challenges in Distributed Agile Projects.2 Content2.1 Agile Project ManagementAgile Project Management refers to the software development principles andpractices that follow core agile tenets as prescribed in the Agile Manifesto [2].Manifesto for Agile Software Development declares the priorities in the followingway: • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a planAgile Manifesto clearly values the items on the first part of each statement morethan the items on the second part.The most common agile methodologies employed are Scrum, ExtremeProgramming, Feature-Driven Development, and Adaptive Software
    • Development. Other methodologies like Custom Hybrid, Scrum/XP hybrid, Lean,Scrumban, and Agileup are also follow the agile principles and practices.2.2 Agile Projects - the need of the hourCurrent global business environment demands faster time to market to remain incompetition. The ability to respond to changes is a prerequisite to remain inbusiness.As per the survey [1], top 3 reasons for adopting agile are: 1. Accelerate Time to Market 2. Enhance Ability to Manage Changing Priorities 3. Increase Productivity87% of the respondents said implementing agile either improved or significantlyimproved their ability to manage changing priorities. 70% of the respondentsreported that agile projects showed either improved or significantly improved timeto market. 66% of the respondents felt that agile projects were faster tocompletion than previous non-agile ones. 22% of respondents reported that theyhad not experienced a failed agile project.Agile practices address the changing needs of the business more than thetraditional models. Rapidly changing products features and crushed innovativecycles are a reality today. There seems to be no better solution than AgileProjects and Agile Practices to these issues. In short, Agile is the need of thehour.2.3 Distributed Teams – the Hobson’s choiceDistributed teams refer to the project teams who execute projects from differentphysical locations – in other words, all the members of the project team are notco-located. The distributed team can actually span across different geographicallocations like US, UK and India.Today, projects are increasingly executed in distributed mode. At macro-level,there 2 major factors that lead to more distributed teams: Globalized Businessesand Outsourcing as a strategic advantage. a) Globalized businesses:
    • Most of the businesses are gaining global footprints. Expanding into newer markets through partnership, merger and acquisitions are the order of the day. This has resulted in business operations at global scale. To manage businesses at global scale, it is imperative that global talents are sourced from wherever they are. b) Outsourcing – a strategic advantage: The primary motivation for early outsourcing was cost savings. But it is not the only driver for outsourcing. Today outsourcing has emerged as a strategic tool to build or maintain competitive advantage. Other reasons like 24/7 support, multi-lingual services, work-life balance also play a role in making distributed teams a reality.There are no second thoughts that distributed teams are and will be the only wayglobal projects will be executed going forward.2.4 Distributed Agile Projects – a reality checkDistributed agile projects are the culmination of executing agile projects usingdistributed team. As per the survey [1], 45% of respondents were currently usingor plan to use agile methods on outsourced projects. This is an indication thatmore and more agile projects are moving to the distributed execution mode.But the contradictions between the core tenets of the agile project managementand the distributed development are quite apparent. The very nature ofdistributed teams seemingly defeats the core of agile projects. Table-1juxtaposes the incompatible elements between agile projects and distributedteam. The compatibility factor of distributed team can either supplement orweaken the agility.
    • COMPATIBILITY AGILE PROJECTS DISTRIBUTED TEAMS [supplements/weakens agility]Team Co-located Team Distributed Weakens agility Documentation andFace-to-Face Communication Weakens agility VoicePeople Focused Process Focused Weakens agilityChange-Driven Plan-Driven Weakens agility Periodic CustomerClose Customer Collaboration Weakens agility CollaborationThrives on Trust Lack of Trust Weakens agility Table-1 How compatible agile projects and distributed teams are? As depicted in Table-1, the distributed agile projects are riddled with inherent incompatibilities. Succeeding in distributed agile projects requires meticulous planning and painstaking effort. This paper reviews the challenges in executing distributed agile projects and provides a practical framework of best practices to overcome those challenges and succeed in distributed agile projects. 2.5 Challenges in Distributed Agile Projects There are numerous challenges that accompany any distributed agile projects. The key challenges in distributed agile projects can be categorized into 4 major sources (or risk factors). Figure-1 illustrates the four major sources of challenges. They are 1. Erosion of Trust – lack of team morale and motivation 2. Communication Barrier – result of distribution 3. Lack of infrastructure to mimic co-location 4. Fear of failure of agile in distributed mode.
    • Figure-1 Distributed Agile – Risk Factors2.5.1 Erosion of trustDue to the distributed teams, the agile projects may suffer erosion of trust amongthe team members. This can lead to team morale/ motivation issues. Distributedagile teams are typically not seen working in unison. Cultural differences add tothe complexity.2.5.2 Communication breakdownSince the teams are distributed, they lose the opportunity to experience a high-context, intensive communication which is the core of agile methodology. Timezone differences and non-availability of forums to collaborate may add to thecommunication hurdles.2.5.3 Lack of infrastructureCo-location brings in benefits that can never be matched by distributed team.Many a times, lack of proper infrastructure – both physical and technical will paveway for challenges that can eventually jeopardize the success of distributed agileprojects. Having proper infrastructure leads to confidence of the team toovercome the trust deficit and communication collapse.2.5.4 Fear of failureAnother huge challenge is the fear of failure to address the unknown areas whileexecuting distributed agile projects. The unknown areas in distributed agileprojects could be fundamental questions like which agile methods is best suitedfor me or how to move to distributed agile from co-location agile. The unknowns
    • could be procedural problems like how to transfer knowledge to new members;how to coach and bring newly inducted people up to the speed and how toensure that all the team members across remote locations follow uniform code orpractice. All these puzzles need to be solved along the way to succeed in thedistributed agile projects.2.6 Succeeding in Distributed Agile Projects – BestPracticesThe essence of this whitepaper is the set of best practices arranged into four keyareas - People, Infrastructure, Communication and Structure. This four-prongedframework comprising of People, Infrastructure, Communication and Structure(P-I-C-S) is illustrated in Figure-2. The P-I-C-S framework can be a systematictool to support the project managers in addressing the challenges of distributedagile projects. DISTRIBUTED AGILE PROJECT MANAGEMENT Figure-2 Distributed Agile – Best Practices “P-I-C-S” Framework
    • 2.6.1 People – Best Practices1. Build trust through Leadership:Leadership is the key to the success of distributed agile projects. In a distributedagile team, technical talent, domain expertise, high-quality project managementskills do not deliver when leadership fails. The role of an agile coach (or scrummaster) is of a leader who can build trust with the team. A very experienced agilecoach with excellent people skills and leadership can make the differencebetween a success and a struggle. It is imperative to find someone who cansteer through the misgivings due to distance and develop team relationship.2. Maintain Transparency:Transparency is the sine qua non to a smooth functioning distributed team. It isnecessary that the roles and responsibilities of the agile team is clearly definedand explained. An agile team has well-defined roles including product manager,agile coach, developers, testers and SMEs. Ensuring that everyone in the agileteam irrespective of the location they work from, need to understand and respectthe roles and responsibilities. The responsibilities should matter far more thanthe job titles or positions. Transparency in communicating status and in sharinginformation will ensure another step towards success of distributed agile projects.3. Build a high-performance agile team:Building a high-performance agile team requires meticulous planning. Invest inteam building. Plan frequent team building exercises at all project locations.Select people with right attitude who can withstand the hardships of distributedteams over pure technical skills. Separate the team by functionality not activity.This brings in one-team feeling. It is necessary that an agile team performsagainst all odds created due to distribution.
    • 4. Sensitize on cultural differences:Create training budgets for focused trainings on cultural sensitivity andcommunication across cultures. The role of cultural differences becomes highly-visible when the team is distributed across geography and cultures. Create anenvironment of mutual respect to individuals and cultures. 2.6.2 Infrastructure – Best Practices1. Invest in high-quality infrastructure:Make necessary investments in providing the team with high-quality technicaland physical infrastructure. A “Team Room” with virtual private networks (high-bandwidth connectivity) is much appreciated. Install remote screen sharingsoftware and Instant Messaging (IM) software, using which the team can shareinformation seamlessly. Providing speaker phones, headsets and webcams aremust. Voice conferencing with a project or better Videoconferencing facility willonly improve the communication.2. Establish continuous build and integration practices:The significance of establishing continuous build and continuous integration isthat tiny build and integration issues are never allowed to get accumulated andnever left to be solved at the end. The key is to create an automated buildsystem and integration system that can deploy the software into pre-productionenvironment. It is recommended that an agile project with remote teams toappoint a full-time integration as a distinct role.3. Take advantage of Web 2.0:
    • The advent of Web 2.0 is a boon to distributed agile project management. Create“virtual agile project community” that can massively lift the intensity of thecommunication among the remote teams. These “agile project communities” useprivate social networking capabilities of the Web 2.0 tools to their advantages.Provide access to Wiki for the project team. Making Wiki as the platform forcommunication for the entire team will greatly boost the communication andfoster team cohesiveness across remote teams.4. Consider Cloud computing:Cloud computing is bringing in a whale of change in the way softwaredevelopment is done. Cloud refers to on-demand resources that can be sharedacross teams which manage development and have traceability across projects.Due to the on-demand availability of resources and sharing of informationinstantaneously across the remote teams, cloud naturally prevents factors thatinhibit high communications. Setting up a virtual private cloud will be a great stepforward towards a successful distributed agile team. While considering cloud,addressing the security concerns of your organization is critical. Onceaddressed, cloud becomes a natural choice for distributed agile development. 2.6.3 Communication – Best Practices1. Embed collaboration in work:Embed the need for collaboration in the work itself. Classical examples forembedding collaboration in work are ‘test driven development’ and ‘collectivecode ownership’. Test driven development breaks away communicationbarriers by ensuring that test cases as the communication drivers.Communication grows and collaboration happens around the test cases. Havingcollective code ownership encourages changing the code by different teams butbrings in the trust factors which can happen through high level of communication.
    • 2. Reward collaboration and communication:Reward behaviors that foster collaboration. Encourage people to brainstormacross locations. Planning rewards like “collaboration champion of the month”and “contributors” for high-impact communication are not just fun way but a sure-fire way to improve collaboration and communication in distributed agile projects.3. Simulate co-location:Crate virtual war-rooms. Ensure that the team does not feel the remoteness orseparation due to distribution. Minimizing the impact of distribution by mimickingor simulating co-location is another great way to ensure that distributed teamperforms effectively. Post team photos in all the locations. Have frequent videocalls. Ensure required minimum overlap work time.4. Plan travels and rotations:Plan and budget team travels as part of project budget. Plan to co-locate theteam for the first couple of iterations. This may involve travelling of teammembers to one location – “base camp”. Get the team together at the lastcouple of iteration may also be planned, thought this is not mandatory.Plan and communicate rotations of key people to different locations. These keypeople play the role of “agile ambassadors” ensuring that common cultureprevails across locations by bridging the gaps and passing on good practices toother locations. 2.6.4 Structure – Best Practices1. Establish a working agile practice:
    • Establishing a working agile model is one of the most critical aspects ofsucceeding in distributed agile projects. Choose what works best for yourorganization – Scrum or Extreme programming or a hybrid model. If you are newto agile or new to distributed model, take one step at a time. Figure-3 explainsthe step-by-step progression to reach distributed agile mode. Moving todistributed agile in one-go may lead to failure in most of the cases. Figure-3 Step-by-step progression to Distributed Agile mode2. Adopt light-weight processes:Agile teams often do not believe in producing formal artifacts, detaileddocumentations like functional specifications, design documents, codingguidelines etc. In order to ensure that new team members who are in remotelocations can quickly scale up, it is necessary to adopt light-weight processesand documentations like wikis. This helps in quick team ramp-ups and alsohelps in ensuring uniform practices across locations.3. Standardize work protocols:Having standard work protocols greatly aids in improving high-performance. Forexample, have a “core hour” or “holy hour” for the team when everyone from allthe locations will participate in a meeting. Ensuring that every new member inthe team goes through the ‘base-camp” is another example of protocol that helpsreducing the impact of distribution.4. Keep the structure flexible:Keep the distributed agile structure flexible. Be receptive to what the team says.Be ready to change based on what your experience shows. Keeping thestructure flexible will naturally lead to a model, protocols that works which isunique for your organization.
    • 3 Conclusion It is possible to succeed in distributed agile projects. But it takes a lot of effort to make it successful. The set of best practices (P-I-C-S framework) shared in this white paper, is of immense help to anyone who is executing distributed agile projects. The P-I-C-S framework can provide a systematic approach to choose the right tools to address the potential challenges in executing distributed agile projects. Again there is no substitute for a co-located agile team when it comes to agility, effectiveness and high-performance of the team. A distributed agile team can be a substitute with an understanding that there are trade-offs in terms of reduced agility in the short term. Nonetheless, in the long run with sustained efforts and application of best practices a distributed agile team can match the performance of a co-located agile team. Analyzing the need for distributed agile projects, assessing the impact of going for a distributed agile team, choosing distribution of agile only when it is required, and finally taking proactive steps to minimize the impacts of distribution are the stepping stones for succeeding in distributed agile project management. 4 Definitions, Abbreviation and Acronyms Acronym DescriptionSME Subject Matter Experts 5 References Item Description 1 http://www.versionone.com/pdf/2010_state_of_agile_development_survey_results.pd f 2 www.agilemanifesto.org 6 Author’s Profile
    • Rathinakumar Balasubramanian has 14.5 years of experience inInformation Technology in managerial and functional capacities. He hasmanaged large projects, programs and accounts for several Fortune 100companies in USA, UK, and Singapore. His expertises include projectmanagement, product management and people leadership.He is a certified Project Management Professional (PMP) from 2004. Hispassion includes teaching and mentoring. He is a regular contributor toPMI Bangalore Chapter. He has received ‘Gold Star Contributor’ awardfrom PMI Bangalore Chapter for 4 years from 2006 to 2010 for hiscontribution in the area of Education and Training. His other interestareas include leadership, learning and development and business ethics.He is currently working with Infosys Ltd.Rathinakumar_b@infosys.com