1 / 31

Agile Practices: The impact on Trust in Software Project Teams

Agile Practices: The impact on Trust in Software Project Teams. Bo Sun Xiaowei Wang Mingchang Zhao. Why do we need agile software development:. Conforming to plan was no longer the primary goal

mada
Download Presentation

Agile Practices: The impact on Trust in Software Project Teams

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Agile Practices: The impact on Trust in Software Project Teams Bo Sun Xiaowei Wang Mingchang Zhao

  2. Why do we need agile software development: • Conforming to plan was no longer the primary goal • Major change in the requirement, scope, and technology that are outside the development team’s control often occur within a project’s life plan • The cost of change grows

  3. 1. The unforgiving honesty of working code • 2. Effectiveness of people working together with good will • Agile method: • Extreme Programming • Scrum • Adaptive Software Development

  4. Manifesto for agile software development • We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value • Individual and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan

  5. Advantage for agile software development: • Produce the first delivery in weeks, to achieve an early win and rapid feedback • Invent simple solutions, so there is less to change and making those changes is easier • Improve design quality continually, making the next story less costly to implement • Test constantly, for earlier, less expensive, defect detection

  6. Focus on team work and trust: Team proximity and intense interaction between team members are hallmark of all agile methods. XP: Pair programming; Crystal, Scrum, ASD: Advocate close collaboration practices including barrier-free collocated teams;

  7. The importance of trust within a team • Define: • Trust is a shared belief that you can depend on each other to achieve a common purpose. • Feeling able to rely upon another person; • Cooperating as a group; • Taking thoughtful risks; • Experiencing believable communication.

  8. Agile practice study

  9. People are core in agile practices! • Agile Manifesto places great emphasis on the team, encouraging autonomy and giving individuals the environment and support they need to get the job done. • An environment where stakeholders trust and respect each other is both a prerequisite for and a consequence of using agile methods.

  10. Need for trust • The emergence of agile teams has increased the importance of trust . • A cohesive team of members who collaborate and trust each other can be difficult. • Trust requires team members to believe that their colleagues possess the knowledge, competence, and integrity to complete their assigned tasks.

  11. Agile practice case study • We are focusing on 3 agile practices. • They are most commonly used. • Each one requires the collective participation of all team members. • The study is conducted across 3 teams with diversity in both distribution and industry setting. • Study lasts for 6 months.

  12. Diversity in teams • Case A is a distributed team in a financial services organization that develops software for internal business units. • Case B is a colocated team in an engineering organization that manufactures and supplies industrial robots. • Case C is a colocated team in an organization that develops software for the insurance industry.

  13. Results and analysis of study • We found that agile methods increased trust by increasing 1. transparency 2. accountability 3. communication 4. knowledge sharing and feedback.

  14. Status transparency and visibility • Iteration planning meeting: 1. requirements 2. indicidual task assignment 3. estimate of each task • Stand-up meeting: 1. day-to-day progression 2. potential dalays

  15. Iteration retrospectives: 1. achievements of this sprint goal 2. experience for next sprint • From the perspetive of QA: All team members and POs are aware of what they require on the project and set expectation accordingly. • Changes and any new feature are not surprising. • Transparency and visibility enhance congruence and vigilance which increace trust in software development.

  16. Accountability and collective responsibility • Team members feel responsible for not only their own estimates and promise, but also other members. developers: tasks assigned to them POs: obtain information from customers • Two ways of estimates in three cases • A: experts from particular area • B and C: collaborative estimates and discussion until final agreement.

  17. Demonstrate their own competence and trustworthiness. • They have a say or they can have a say.

  18. Open and frequent team communication • In traditional software development, communication only when it is required. (e.g. status meeting or debug) • Advantages: • Development of common awareness • Ask for or offer help • PO's existance in team • Perspective of new members • Promote a good sense of will and belonging • Lessen the magnitude of discrepancies

  19. Knowledge sharing and feedback • Supportive environment: • Any one can throw and pick up a question at anytime. • No reprimand, no negative view. • Timely feedback and response • From the perspective of PO: • Efficient in realization of features. • Build confidence if the team can deliver in time.

  20. Challenges of agile practice

  21. Challenges of Trust in Agile Team • Trust was strong in all three teams and reinforced by agile practices, particularly from the QA and PO perspectives. • We identified four factors that increased trust but also created challenges for teams.

  22. External Visibility on Project Tasks • Caused by : Transparency and visibility of project status to all stakeholders • Organizational personnel external to the team have visibility on task status but perhaps not on actual causes of delays, if any.

  23. Team Pressure • Caused by : Accountability and collective responsibility • This pressure was entirely self-inflicted, but it might be consequent to the increased visibility of tasks and personal accountability to the team.

  24. Tension between the PO and the Team • Caused by : Accountability and collective responsibility • Some team members considered PO to be a team member and others did not. • Some POs themselves didn’t feel they were part of the project team.

  25. Developers Accessibility to the PO • Caused by : Open and frequent communication within the team • From a developer’s perspective, this access must be managed and controlled so that ad hoc requests aren’t suddenly added to the requirements list without agreement from the team.

  26. Tendency to Underestimate Tasks • Caused by : Sharing knowledge and obtaining feedback • It is difficult to accurately estimate unknown tasks even though team members were mostly experienced and quite familiar with the development environment.

  27. Value of the Retrospective • Caused by : Sharing knowledge and obtaining feedback • Most interviewees placed little value in retrospective. • The retrospective limited the communication, knowledge-sharing, and feedback mechanisms for building trust.

  28. Conclusion • Types of generic trust that can affect agile methods: • Interpersonal trust • Relational trust • System trust • Trust in behavior • Trust in belief • The factors that maintain trust in agile methods: • Honesty • Communication • Cultural understanding • Personal relationships • Working together • Performance and capability.

  29. To agile PM • If you think the team has underestimated their work and are leaving velocity on the table, • If you feel that the team isn’t working hard enough or are committed enough to their work, • If you feel that quality is poor and it isn’t improving sufficiently or you feel that the team isn’t taking product quality seriously, • If you’ve got a fixed date software delivery to make and you wonder if the team is going to get there, • If you think the team has underestimated their work and are leaving velocity on the table, TRUST the team. • If you feel that the team isn’t working hard enough or are committed enough to their work, TRUST the team. • If you feel that quality is poor and it isn’t improving sufficiently or you feel that the team isn’t taking product quality seriously, TRUST the team. • If you’ve got a fixed date software delivery to make and you wonder if the team is going to get thereTRUST the team.

  30. Reference • [1] Hasnain, Eisha, and Tracy Hall. "Investigating the role of trust in Agile methods using a light weight systematic literature review." Agile Processes in Software Engineering and Extreme Programming. Springer Berlin Heidelberg, 2008. 204-207. • [2] http://www.projecttimes.com/robert-galen/the-agile-project-managerdo-you-trust-your-team.html Thank you

More Related