Agile Project Management



Similar documents
Basic Trends of Modern Software Development

Whitepaper. Agile Methodology: An Airline Business Case YOUR SUCCESS IS OUR FOCUS. Published on: Jun-09 Author: Ramesh & Lakshmi Narasimhan

Course Title: Managing the Agile Product Development Life Cycle

Agile So)ware Development

Cover Page. The handle holds various files of this Leiden University dissertation.

CSE 435 Software Engineering. Sept 16, 2015

CHAPTER 3 : AGILE METHODOLOGIES. 3.3 Various Agile Software development methodologies. 3.4 Advantage and Disadvantage of Agile Methodology

Case Study on Critical Success Factors of Running Scrum *

Scrum, User Stories, and More! CSCI 5828: Foundations of Software Engineering Lecture 22 11/06/2014

This handbook is meant to be a quick-starter guide to Agile Project Management. It is meant for the following people:

Capstone Agile Model (CAM)

Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology

The Basics of Scrum An introduction to the framework

SCRUM BODY OF KNOWLEDGE (SBOK Guide)

AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT

Software Development Going Incremental, Iterative and Agile:

Lean vs. Agile similarities and differences Created by Stephen Barkar -

A Glossary of Scrum / Agile Terms

Software Development with Agile Methods

Integrating PRINCE2 and Scrum for successful new product development

Agile and PRINCE2 And how they integrate. enterprise.bcs.org

An Agile Project Management Model

Agile Software Development Methodologies and Its Quality Assurance

Information and Software Technology

Selling Agile at Your Company

Chapter 11 Project Management

Lecture by B. Guy Peters Theoretical Debates in Public Administration in the Past 50 Years

What does it mean to be Agile. Marek Majchrzak, Andrzej Bednarz Wrocław,

The Role of CM in Agile Development of Safety-Critical Software

Scrum Is Not Just for Software

Project management. Michael Sars Norum. Lecture in TDT Kundestyrt prosjekt, IDI, NTNU

IMQS TECHNOLOGY AGILE METHODOLOGY

Agile Notetaker & Scrum Reference. Designed by Axosoft, the creators of OnTime the #1 selling scrum software.

The Contractor Body: What You Measure

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW

Software Development Life Cycle

Changing Roles and Responsibilities from Traditional project management to Agile project management

How Agile methods resolve chaos and unpredictability in software projects

Scrum vs. Kanban vs. Scrumban

Agile Practitioner: PMI-ACP and ScrumMaster Aligned

Scrum. The Essence. Tobias Mayer, Sonntag, 19. Februar 12

An Introduction to the PRINCE2 project methodology by Ruth Court from FTC Kaplan

Agile Models. Software Engineering Marco Scotto Software Engineering

Classical Software Life Cycle Models

Teamwork Quality Effect on Project Success

Agile Software Development Methodologies & Correlation with Employability Skills

AGILE SOFTWARE DEVELOPMENT A TECHNIQUE

SOFTWARE PROCESS MODELS

TSG Quick Reference Guide to Agile Development & Testing Enabling Successful Business Outcomes

Course Title: Planning and Managing Agile Projects

CS435: Introduction to Software Engineering! " Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman

EMC PERSPECTIVE. Adopting an Agile Approach to OSS/BSS Development

Agile teams: Do s and don ts in agile software development

Controlling Change on Agile Software Development Projects

Comparative Study of Agile Methods and Their Comparison with Heavyweight Methods in Indian Organizations

Agile software development

An Agile Software Development Framework

Agile In a Nutshell. Note - all images removed to fit 2MB limit Actual presentation has much more content. Jonathan Rasmusson

EMPIRICAL STUDY OF THE EVOLUTION OF AGILE-DEVELOPED SOFTWARE SYSTEM IN JORDANIAN'S TELECOM

Scrum includes a social agreement to be empirical as a Team. What do you think an empirical agreement is?

Scrum methodology report

Planning of Project Work (IS PM 6. Lecture, 2011 Spring)

The Agile Drupalist. Methodologies & Techniques for Running Effective Drupal Projects. By Adrian AJ Jones (Canuckaholic)

Enhancement of XP for Cloud Application Development Sara Tariq, Muhammad Mohsin Nazir, Farhat Saleemi

Agile Testing. What Students Learn

Waterfall vs. Agile Project Management

Communication Needs, Practices and Supporting Structures in Global Inter- Organizational Software Development Projects

Agile and lean methods for managing application development process

software studio software development processes Daniel Jackson

AGILE BUSINESS MANAGEMENT

The Scrum Guide. The Definitive Guide to Scrum: The Rules of the Game. July Developed and sustained by Ken Schwaber and Jeff Sutherland

Adapting Agile Software Development to Regulated Industry. Paul Buckley Section 706 Section Event June 16, 2015

Agile Systems Engineering: What is it and What Have We Learned?

Training Programs for Enterprise-Wide Change

A. Waterfall Model - Requirement Analysis. System & Software Design. Implementation & Unit Testing. Integration & System Testing.

CRITICAL ANALYSYS OF THE SCRUM PROJECT MANAGEMENT METHODOLOGY

Involve-Project Manager

Agile Project Management By Mark C. Layton

When is Agile the Best Project Management Method? Lana Tylka

Agile vs. Waterfall. Why not both. Arnold Okkenburg PMP

An Introduction to Agile Performance Management

The European Qualifications Framework for Lifelong Learning (EQF)

The only person who likes change is a baby with a wet diaper. Mark Twain. Charan CA Atreya

Offshore Development Team on Demand

The Big Bang of Modern Marketing. Scott

Agile Metrics. It s Not All That Complicated

Transcription:

Agile Project Management Tore Dybå Invited Talk @XP2015 Helsinki, Finland, 28 th May 2015 Page 1 of 433

About me Academic experience: Chief Scientist at SINTEF, Software Engineering Professor at Univ. of Oslo in Software Engineering Dr. Ing. from NTNU in Software Process Improvement For the period 2001-2012, I was ranked as the top scholar worldwide in agile software development by the Journal of Systems and Software (Chuang et al., 2014) Industrial experience: Consultant in Norway and Saudi Arabia within Information Systems, Software Engineering, and Telecommunications tore.dyba@sintef.no Research interests: Large-Scale Agile and Global Software Development Empirical and Evidence-Based Software Engineering Teamwork and Coordination in Software Development Agile Project Management Biography and publications: http://www.mn.uio.no/ifi/english/people/aca/toredy/index.html http://scholar.google.no/citations?user=sa-tgysaaaaj&hl http://www.informatik.uni-trier.de/~ley/pers/hd/d/dyb=aring=:tore.html 2

Software Process Improvement & Knowledge Management Research areas: Evidence-Based Software Engineering Large-Scale Agile Software Development Global Software Development Agile Project Management 3

Structure of the talk 1. Introduction 2. Project management; Traditional and Agile 3. Principles of Agile Project Management 4. Agile project management at large 5. Summary

Structure of the talk 1. Introduction 2. Project management; Traditional and Agile 3. Principles of Agile Project Management 4. Agile project management at large 5. Summary

Bad management theories are destroying good management practices. Sumantra Ghoshal 6

Traditional project management Largely derives from the linear structure and discrete, mechanical views of the systems engineering and quality disciplines of the 1950s and 1960s. Contemporary project management methods (e.g. PRINCE2) are standardized, process-driven methods, which build on this engineering tradition and that contrast with reactive and adaptive methods such as Scrum. 7

In the past the man has been first; in the future the system must be first Frederick W. Taylor (1911) 8

The future, ideal developer? 9

Agile project management Agile project management requires a different approach, which is adapted to incremental development and the particular strengths of agile methods. At its core, agile project management is about managing the impact of complexity and uncertainty on a project, recognizing: The need for a dramatically shorter time frame between planning and execution. That planning an action does not provide all the details of its implementation. That creativity and learning are necessary to make sense of the environment. Traditional Project Management Agile Principles Agile Project Management Picture: http://www.ambysoft.com/ 10

Traditional vs. agile project management The traditional approach provides a structured framework in which to operate: Initiation Planning Execution Tracking Closing The agile approach performs the same traditional steps, but multiple iterations are used: Execution Initiation Planning Tracking Final closing Closing 11

The iron triangle Picture: http://www.ambysoft.com/ 12

Structure of the talk 1. Introduction 2. Project management; Traditional and agile 3. Principles of agile project management 4. Agile project management at large 5. Summary

Four principles of Agile project management The principle of minimum critical specification The principle of autonomous teams The principle of redundancy The principle of feedback and learning T. Dybå, T. Dingsøyr, N.B. Moe, Agile Project Management, book chapter in G. Ruhe and C. Wohlin (Eds.), Software Project Management in a Changing World, Berlin: Springer Verlag, 2014, pp. 277-300. 14

The principle of: Minimum critical specification This principle is oriented towards the analysis and understanding of the nature of the overall problems: Identify what is critical to overall success Specify no more than what is absolutely essential Keep the use of rules, standards, and predefined procedures to an absolute minimum Focus on the larger system requirements and boundary conditions, leaving as many design decisions as possible to those closest to the work The project s kick-off meeting is crucial 15

In preparing for battle I have always found that plans are useless, but planning is indispensable Plans are nothing; planning is everything Dwight D. Eisenhower You don t lead by hitting people over the head that s assault, not leadership 16

The principle of: Autonomous teams Autonomous, or self-managing, teams bring decision-making authority to the level of operational problems and uncertainties: Members of autonomous teams are responsible for managing and monitoring their own processes and executing tasks They typically share decision authority jointly, For autonomous teams to thrive, it is necessary to build trust and commitment in the whole organization, avoiding any controls that would impair creativity and spontaneity Successfully dealing with this principle, we must understand the context surrounding the team 17

Ron Howard: Apollo 13, 1995. 18

The principle of: Redundancy This principle is concerned with the overlap in individuals knowledge and skills Each member of the team should be skilled in more than one function, making the project more flexible and adaptive With increased redundancy within the team, individuals will find it easier to share new knowledge Cross-trained team members increase the project s functional redundancy and thus the flexibility of the team in dealing with personnel shortages Redundancy is also critical in turbulent environments where people need to work on tasks assigned by priority rather than the competence of team members 19

The principle of: Feedback and learning Without feedback and learning, agile project management is not possible: The focus on project execution rather than on up-front planning, leads to an intertwinement of learning and work, and of problem specification and solution. The complexity and unpredictability of software problems are typical of wicked problems, which are difficult to define until they are nearly solved. To deal with this principle, project activities have to be performed in an iterative and incremental way. 20

21

Structure of the talk 1. Introduction 2. Project management; Traditional and agile 3. Principles of agile project management 4. Agile project management at large 5. Summary

Challenges with large-scale systems How to scale agile methods to larger, longer projects with multiple development teams that perhaps work in different locations and time zones with separate sub-systems that have to communicate? Many interaction requirements hinder flexibility and incremental development. Long development time makes is difficult to maintain coherent teams who know about the system over that period. It is practically impossible to involve all stakeholders in the development process. It is not possible to focus only on the code of the system, more up-front design and system documentation is needed.

Coordination and control mechanisms Standardization of work processes of employee skills of outputs Direct supervision Mutual adjustment Complexity and uncertainty 24

Bent Hamer: Kitchen Stories, 2003.

Slide: Mette Gjertsen, SPK 26 26

Slide: Mette Gjertsen, SPK 27 27

Slide: Mette Gjertsen, SPK 28 28

Big bang vs. incremental delivery http://hdwallpaper.ws 29

Slide: Mette Gjertsen, SPK 30 30

Slide: Mette Gjertsen, SPK 31 31

Perform: Based on the Scandinavian model of collaboration Focus on democracy, participation and (partially) autonomous groups. Management understood as various functions of the organization, but need not be tied to a particular person. The leadership role is aimed at facilitating everyone to get the best possible opportunity to do a good job. Dialog between managers and employees to consider the design of work to be done. Einar Thorsrud 1923 1985 32

Moltke the Elder the Agile General Moltke s theory of war: Detailed planning only for a short and predictable horizon High-level planning for the wider horizon Directives expressing intentions "No plan survives contact with the enemy Perform: Tension between the central management and control, and the need for local autonomy and initiative Master plan: 310 epics (master plan elements) Detailed planning 1-2 sprints "Moltke the Elder 1800 1891 33

Impressions of Perform Steering and control through: Iterations every 3 weeks, with the number of approved user stories as the main parameter Releases 3 4 times each year, to confirm that the quality was good enough for deployment Flexibility through: Revolving planning on 4 levels: Project, release, iteration and day Autonomous teams related to working methods, commitments and expertise necessary to perform the tasks 34

Structure of the talk 1. Introduction 2. Project management; Traditional and agile 3. Principles of agile project management 4. Agile project management at large 5. Summary

Conclusion The challenge in managing agile software projects is to find the balance between upfront planning and learning. Planning provides discipline and a concrete set of activities and contingencies that can be codified, executed and monitored. Learning permits adapting to unforeseen or chaotic events. The two require different management styles and project infrastructure. Projects with low levels of complexity and uncertainty allow more planning, whereas projects with high levels of complexity and uncertainty require a greater emphasis on learning. Chance favors only the prepared mind 36

There s no right or wrong. It s all tradeoffs! Henrik Kniberg, What is Scrum? 37

Questions? Contact me at: tore.dyba@sintef.no 38