Presentation is loading. Please wait.

Presentation is loading. Please wait.

Agile methods: An unexpected journey Diane Strode PhD Faculty of Business and Information Technology Whitireia Polytechnic Victoria Business School Victoria.

Similar presentations


Presentation on theme: "Agile methods: An unexpected journey Diane Strode PhD Faculty of Business and Information Technology Whitireia Polytechnic Victoria Business School Victoria."— Presentation transcript:

1 Agile methods: An unexpected journey Diane Strode PhD Faculty of Business and Information Technology Whitireia Polytechnic Victoria Business School Victoria University of Wellington

2 Overview Motivation Pre-history, agile methods in 2000, adaptation, optimal environments, adoption, governance...agile software development today References and resources 2

3 Motivation...teaching Project management to future PMs – A project manager coordinates and controls software projects – Gantt charts, PERT charts Analysis and design to future IT BAs – Analyse, then design, then code, then test, AND document Programming to future developers – Testing – separation of concerns – Meeting specifications So what’s new in this area – Ahhh...agile methods 3

4 Primary sources Doctor of Philosophy (Information Systems) 2012 – A theory of coordination in agile software development projects Master of Information Sciences (Information Systems) 2005 – The agile methods: An analytical comparison of five agile methods and an investigation of their target environment 15 individual software development projects 4

5 Agile pre-history 17 practitioners decided to meet at Snowbird in USA, 2001 – Based on their experiences, they rejected waterfall processes and traditional project management practices  “heavyweight methodologies” – All working on individual “lightweight” methodologies based on their experience in development teams Discussed and agreed on a manifesto 5

6 http://agilemanifesto.org 6

7 7

8 Focus on business value of software No detailed upfront requirement specification Frequent demos and feedback / Frequent releases to production Very close customer contact 8

9 Focus on business value of software No detailed upfront requirement specification Frequent demos and feedback / Frequent releases to production Very close customer contact Support the team Trust the team Co-location No last minute rush / burnout 9

10 Focus on business value of software No detailed upfront requirement specification Frequent demos and feedback / Frequent releases to production Very close customer contact Support the team Trust the team Co-locate No last minute rush / burnout Design and quality No gold plating Self-organising Continuous process improvement Completed functionality 10

11 Agile MethodAcronymSource 1 Dynamic Systems Development method DSDM DSDM (Dynamic Systems Development Method, Version 2, 1995), Stapleton (1997) 2Crystal methodsCrystal Cockburn (1998) Cockburn (2002) 3Extreme ProgrammingXP Beck (1999), Beck (2000) 1 st Edition Beck and Andres (2005) 2 nd Edition 4Adaptive Software Development ASD Highsmith (2000) 5Scrum Beedle, Devos, Sharon, Schwaber, & Sutherland (1999) Schwaber & Beedle (2002) 6Feature Driven Development FDD Palmer & Felsing (2002) 7Lean DevelopmentLD Charette (2002) Poppendiek & Poppendiek (2003) 8EVO Gilb (2005) 9AgileUPAUP Ambler (2008) First published on-line 2005 11

12 Purpose Scrum –for project management of iterative projects XP –software development practices for high-change environments DSDM - a framework for iterative projects Crystal methods - for designing a methodology 12

13 Agile Software Development Agile Methods XPDSDMCrystalScrumASDFDDLean... 13

14 Scrum One-month “Sprints” or repeated cycles of activity 14

15 XP – Extreme Programming Iterations of 1-4 weeks 15

16 Agile practices 16

17 Agile software development Each agile method consists of a set of practices Initially the belief was that a method should be adopted in its entirety In projects, practices are “cherry picked” or tailored So if you use any method, any combination of methods, or one or more agile practices, you can say you are doing… Agile software development 17

18 Agile method combinations XP + Scrum XP provides software development techniques + Scrum provides management practices 18

19 Commonalities – 5 agile methods All published between 1995 – 2002 in USA and UK Developed by practitioners (not academics) Project manager and developer perspective Incremental development Iterative development - 1 month iterations optimal Suitable for projects undergoing constant change Active user involvement Feedback (from testing, from users) and learning 19

20 Commonalities – 5 agile methods cont’d. Teamwork and empowered teams Communication between all stakeholders is critical Small teams of 3-10 programmers is optimal Frequent meetings, daily is optimal Working software is the main product of development Modelling techniques are not mandated Minimise documentation 20

21 When should you use an agile method? Research study... Nine projects, different types of organisation, different types of product, questionnaire Calculated agile method usage Looked at correlation between agile method usage and factors in the development environment 21

22 When should you use an agile method? Began with a definition of success Success is when a project is using all of the practices from their selected method – e.g. if using XP then you are using all XP practices 100% of the time 22

23 Research design First, developed a list of factors that various authors believe are necessary for successful agile software development - 31 Then, isolated all practices from five agile methods (XP, Scrum, ASD, Crystal, DSDM) – 45 Studied correlation between environmental factors and adoption of practices 23

24 Research design Questionnaire – Included questions to assess use of 31 environment factors – Included a randomised list of 45 practices from five agile methods – Completed by nine experienced project leaders Interview – Each project leader was interviewed to ensure consistency of understanding about the various practices 24

25 The projects ProjectMethodOrg typeOrg sizeType of system AlphaXPP100-150Control system BetaXPSOE150-200Information presentation DeltaXP/ ScrumG13000-14000Web development ZetaDSDMP300DSS/MIS ThetaRUP/XPP1400-1500MIS IotaRUPG600Transaction processing RhoAd hocG4500-5000MIS TauAd hocP5-10Shrink wrapped software ChiAd hocG300-400MIS Key G – Government department or fully government funded organisation SOE – State Owned Enterprise P – Privately owned company DSS – Decision Support System MIS – Management Information System 25

26 Organisational factors investigated Organisation factors – social interaction is trustful, collaborative, competent… Domain factors – Internet application domains, gaming, inventory … Technological factors – automated testing, object-oriented technology… Project factors – time pressure, requirements stability… People factors – CRACK customers, experienced developers… Collaborative, Representative, Authorised, Committed, Knowledgeable 26

27 Agile method usage Project  AlphaBetaDelta ThetaZetaIotaTauChiRho Development method used XP Scrum XP Scrum XP RUP DSDMRUPAd hoc Ad hoc Ad hoc Compared withXP ScrumXPDSDMXP Agile method usage 96%56%67% 63%94%40%54%30%18% Key Blue area shows non-agile projects All non-agile projects were assessed against XP Result: Certain organisational factors correlate with higher usage of agile practices 27

28 Agile method usage Project  AlphaBetaDelta ThetaZetaIotaTauChiRho Development method used XP Scrum XP Scrum XP RUP DSDMRUPAd hoc Ad hoc Ad hoc Compared withXP ScrumXPDSDMXP Agile method usage 96% 56% 67% 63%94%40% 54% 30%18% Key Blue area shows non-agile projects All non-agile projects were assessed against XP Result: An agile project can tailor their agile method so much that it is the same as using ad hoc development (no method) 28

29 Typical result Scatter plot of organisation enables empowerment of people Q34. Spearman’s Rho, 2 tailed, 0.05 significance level 29

30 Target environment for agile methods Organisation – Values feedback and learning. Social interaction in the organisation is trustful, collaborative, and competent – Values teamwork, is flexible and participative, and encourages social interaction. The project manager acts as a facilitator – Enables empowerment of people – Is results oriented – Is based on loyalty and mutual trust and commitment – The management style is that of leadership and collaboration – Leadership in the organisation is entrepreneurial, innovative, and risk taking Project – Projects undergoing constant change 30

31 Is this generalisable, or cause and effect? - No - Sample too small, as usual, further studies needed! Keep in mind that you might have fewer problems using an agile method if these factors are present in your organisation or project 31

32 Implications Many practices work well together, so… If you change the method too much you loose some advantages, however… If you don’t change the method you may need to change your organisation; this can be difficult, painful, and sometimes impossible. 32

33 Agile software development impact... Organisation – Structure – peoples’ roles – manager, project manager, business analyst, developer, tester.... – Culture – command & control  self-organisation – Human resource practice – rewards, individual  team, skill sets – Customer involvement – Contract negotiation Software project – System quality - negotiable – Learn as you go/ incremental delivery – Software for communication (but it’s still star of the show) – Co-located & cross-functional teams (can understand and do each others work) Technical practices – Test driven development, Continuous integration, Refactoring 33

34 IT governance and agile projects Are compatible, but not seamlessly compatible Depends on the organisation’s ability to be flexible in their implementation of governance processes... “Agile thought leaders have not provided much clear or detailed guidance about scaling Agile practices to the enterprise level, where many governance issues are ready to pounce. To make Agile work within enterprise governance, managing the people issues first is critical. Next, organizations must apply a common-sense approach to processes, enabling transitioning teams to manage demand and deliver efficiently without adding layers of bureaucracy. In addition, organizations should use tools to provide the transparency necessary to ensure that demand is prioritized and selected based on the value the finished product will deliver to the organization.” Forrester Research July 2012 34

35 Stories (work tasks) for processing by the agile team Governance requirements Technical requirements Functional requirements Conflict in the need to meet governance requirements with the agile team’s focus on only delivering business value to their client 35

36 Agile today Coaches and coaching – Internal and external (consultants) Certification – Certified IC Agile Professional (Alistair Cockburn) – Certified ScrumMaster and Scrum practitioner certifications – DSDM foundation/practitioner – PMIs Agile Certified Practitioner certification – Agile Project Management Certification (integrates with PRINCE2!) – APMG examination institute Agile encroachment – IIBA - Agile extension integrated into the BABOK – Agile and PMBOK – remain incompatible on many fronts – Agile and SWEBOK – remain incompatible on many fronts 36

37 http://www.eweek.com/developer/agile-developers-needed-demand-outpaces-supply- study/ Development positions 37

38 Adoption rates Wide variation in reported adoption rates world wide – 14% (Dyba & Dingsoyr, 2008) – an academic report – 35% (West & Grant, 2010) – a Forrester research report – 69% (Ambler, 2009) – an agile guru’s report Indisputable - agile software development - has grown in popularity in the last 12 years Advocated as one of the top ten “best practices” of IT project management (Nelson, 2007) 38

39 Further information… APN – Agile Professionals Network – Not-for-profit – Monthly meetings in Wellington with seminars from industry on success and issues with agile software development – http://www.agileprofessionals.net/ http://www.agileprofessionals.net/ 39

40 Resources Doctor of Philosophy (Information Systems) 2012 – A theory of coordination in agile software development projects Master of Information Sciences (Information Systems) 2005 – The agile methods: An analytical comparison of five agile methods and an investigation of their target environment Please contact me if you would like copies of any of the resources mentioned in this seminar diane.strode@alumni.unimelb.edu.au My research site https://sites.google.com/site/dianestrodepublic/ 40

41 Agile methods: An unexpected journey


Download ppt "Agile methods: An unexpected journey Diane Strode PhD Faculty of Business and Information Technology Whitireia Polytechnic Victoria Business School Victoria."

Similar presentations


Ads by Google