Agile Development Overview



Similar documents
Agile Project Management with Scrum

Agile Project Management By Mark C. Layton

Agile Development with C#

Agile Beyond The Team 1

History of Agile Methods

26 May 2010 CQAA Lunch & Learn Paul I. Pazderski (CSM/CSP, OD-CM, CSQA) spcinc13@yahoo.com Cell: AGILE THROUGH SCRUM

How To Understand The Limitations Of An Agile Software Development

Agile Projects 7. Agile Project Management 21

How to manage agile development? Rose Pruyne Jack Reed

Agile Overview. 30,000 perspective. Juha Salenius CSPO CSM PMI-ACP PMP SCGMIS Workshop January 23 rd, 2013

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

Introduction to Agile Software Development. EECS 690 Agile Software Development

Manifesto for Agile Software Development

The Agile Manifesto is based on 12 principles:

Ingegneria del Software Corso di Laurea in Informatica per il Management. Agile software development

AGILE SOFTWARE DEVELOPMENT: INTRODUCTION, CURRENT STATUS & FUTURE Pekka Abrahamsson Jyväskylä

Introduction to Agile Software Development

Role of Agile Methodology in Software Development

LEAN AGILE POCKET GUIDE

Agile Software Development

Development. Lecture 3

EXTREME PROGRAMMING AGILE METHOD USED IN PROJECT MANAGEMENT

Waterfall to Agile. DFI Case Study By Nick Van, PMP

Agile Project Management and the Real World. Emily Lynema DLF Fall 2010 November 1, 2010

Software Development with Agile Methods

ITSM Agile Intro Feb 5, 2015

Introduction to Agile and Scrum

Agile Software Development. Mohsen Afsharchi

Software Requirements and Specification

Software Processes. Agile Methods

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

Agile Project Management: Adapting project behaviors to the software development environment

Introduction to Agile Software Development Process. Software Development Life Cycles

Agile Software Development in the Large

Agile Project Management

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

CSSE 372 Software Project Management: More Agile Project Management

Creating a High Maturity Agile Implementation

Agile QA s Revolutionary Impact on Project Management

Gothenburg 2015 Jan Marek com CA Technologies Introducing Agile development methodologies to Session S601 mainframe development teams

Topics covered. Agile methods Plan-driven and agile development Extreme programming Agile project management Scaling agile methods

Issues in Internet Design and Development

Comparing Scrum And CMMI

Agile Fundamentals, ROI and Engineering Best Practices. Rich Mironov Principal, Mironov Consulting

Agile Project Management

Agile-Waterfall Hybrid Jessica LaGoy, MS, PMP

Introduction to Agile Scrum

Mitigating Risk with Agile Development. Rich Mironov CMO, Enthiosys

Contents. 3 Agile Modelling Introduction Modelling Misconceptions 31

Bottlenecks in Agile Software Development Identified Using Theory of Constraints (TOC) Principles

Software processes that are:

Water-Scrum-Fall Agile Reality for Large Organisations. By Manav Mehan Principal Agile consultant

Continuous Integration: Improving Software Quality and Reducing Risk. Preetam Palwe Aftek Limited

Agile Software Development

Digital Transformation of the Enterprise for SMAC: Can Scrum help?

Agile Scrum Workshop

What Does Large Mean? Copyright 2003 by N. Josuttis and J. Eckstein 3. Why is Large an Issue?

Agile Processes and Distributed Projects: Dream or Nightmare?

SCEA 2010 EST06. Estimating Issues Associated with Agile. Bob Hunt. Galorath Incorporated

Agile Software Development Methodologies and Its Quality Assurance

Comparing Agile Software Processes Based on the Software Development Project Requirements

Agile Extension to the BABOK Guide

Quality Assurance in an Agile Environment

Neglecting Agile Principles and Practices: A Case Study

Extreme Programming, an agile software development process

Agile Project Management and Agile Practices Training; with a Scrum Project that you will do.

Agile Scrum Training. Nice to meet you. Erik Philippus. Erik Philippus (1951)

Governments information technology

Moonzoo Kim CS Division of EECS Dept. KAIST

Agile Software Engineering Practice to Improve Project Success

PMBOK? You Can Have Both! June 10, Presented by:

Agile Requirements Generation Model: A Soft-structured Approach to Agile Requirements Engineering. Shvetha Soundararajan

A Software Project Management Innovation (SPM) Methodology: A Novel Method for Agile Software Development

Imad Alsadeq, Qatar, May 2013 OPM3, MSP, PMP, PMOC, PMI-RMP, MCP

The Agile Project Manager

Adopting Agile Project Management - Corporate Culture Must Match (Apr 15)

Scaling Scrum. Colin Bird & Rachel Davies Scrum Gathering London conchango

RISK MANAGMENT ON AN AGILE PROJECT

Atern The latest version of the DSDM approach which makes DSDM appropriate to all types of project.

Software Development Methodologies

Processes in Software Development. Presented by Lars Yde, M.Sc., at Selected Topics in Software Development, DIKU spring semester 2008

Agile and Secure: Can We Be Both?

USCIS/SPAS: Product Backlog Items and User Stories 4/16/2015. Dr. Patrick McConnell

A Review of Agile Software Development Methodologies

Agile with XP and Scrum

Agile and lean methods for managing application development process

Scrum. in five minutes

Software Development Life Cycle Models - Process Models. Week 2, Session 1

Traditional SDLC Vs Scrum Methodology A Comparative Study

CSE 435 Software Engineering. Sept 16, 2015

A Viable Systems Engineering Approach. Presented by: Dick Carlson

Scrum. SE Presentation. Anurag Dodeja Spring 2010

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

D25-2. Agile and Scrum Introduction

AGILE SOFTWARE DEVELOPMENT. BY Sysop Technology Aurangabad

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

AGILE & SCRUM. Revised 9/29/2015

Transcription:

Presented by Jennifer Bleen, PMP Project Services Practice of Cardinal Solutions Group, Inc. Contact:

Agile Manifesto We are uncovering better ways of developing software by doing it and helping others to do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more

Agile Principles 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software 2. Welcome changing requirements, even late in development. Agile processes harness change for the customer s competitive advantage 3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter time scale 4. Business people and developers must work together daily throughout the project 5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done 6. The most efficient and effective method of conveying information to and within a development team is face to face conversation 7. Working software is the primary measure of progress 8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely 9. Continuous attention to technical excellence and good design enhances agility 10. Simplicity- the art of maximizing the amount of work not done- is essential 11. The best architectures, requirements, and designs emerge from self-organizing teams 12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly

Agile Methods Adaptive Software Development (ASD) Dynamic Systems Development Method (DSDM) Extreme Programming (XP) Feature Driven Development (FDD) Lean Software Development (LD) Scrum

Extreme Programming An Engineering Framework A collection of software engineering techniques Useful as a repository of techniques Useful as a case study on what works

12 Practices of XP Fine scale feedback Pair Programming Release Planning Unit Tests Continuous process Continuous Integration Refactoring Small Releases Acceptance Tests Shared understanding Coding Standards Collective Ownership Simple Design Metaphor Programmer welfare Sustained Pace Acceptance Tests Sustained Pace Pair Programming Refactoring Coding Standards Customer Collective Ownership Unit Tests Small Releases Simple Design Continous Integration Metaphor Release Planning

Why XP Works The 12 Practices are mutually supporting strengths offset weaknesses. Extreme Programming embraces, rather than fights, change The cost of change remains level, and does not rise exponentially. Extreme Programming fosters partnership and collaboration between development and the business stakeholders. Extreme Programming focuses on delivering business value quickly Automated tests, refactoring and pair programming ensure the delivery of robust, production ready software. Extreme Programming focuses on simplicity and on building for today rather than tomorrow

SCRUM: A Management Method Scrum is geared toward management Emphasizes team emergent behavior Tracks product in 2 levels (product and sprint) Emphasizes people and requires good people

Key components of Scrum Process Roles The Product Owner The Scrum Master The Team Work Product The Product Backlog The Sprint Backlog The Sprint Burndown Product Increment Activities The Sprint Planning The Sprint The Daily Scrum The Sprint Review The Sprint Retrospective

Step 1- Create the Backlog Roles Involved: Product Owner Scrum Master Team Artifacts Involved: Product Backlog

Sample Product Backlog Use excel Number each item for easier reference Product owner prioritizes work Name of each task Team estimates task

Step 2: Expand the backlog into tasks in a sprint planning meeting Roles Involved: Product Owner Scrum Master Team Artifacts Involved: Product Backlog Sprint Backlog

The Sprint Planning Meeting Product Owner describes highest priority features to the Team. Team decides what the can commit to delivering in the Sprint. Both create the Sprint Backlog.

Sample Sprint Backlog Example Heading from product backlog How must work per week for the task What is the task Who is responsible Tasks are detailed from product backlog All tasks MUST be assigned eventually

Step 3: Execute a sprint Roles Involved: Scrum Master Team Artifacts Involved: Product Backlog Sprint Burndown Chart Strict Timebox

The Sprint Strictly 30 consecutive calendar days: Date takes priority over features Sprint Backlog and Sprint Burndown Charts show progress The Product Owner cannot change priorities Sprint results in a demonstrate able result

Step 3A: Hold Daily Meetings Roles Involved: Scrum Master Team Artifacts Involved: Product Backlog Sprint Burn down Chart

Scrum Meetings Meeting Format Daily 15-minutes Stand-up (keep it short) Not for problem solving to id problems Three questions: 1. What did you do yesterday 2. What will you do today? 3. What obstacles are in your way? Management and team are invited Help avoid other unnecessary meetings Only team can talk

The Sprint Burndown Chart Similar to Earned Value Updated as a result of the Scrum meeting

Step 4 - Demonstrate Functionality Roles Involved: Product Owner Scrum Master Team Artifacts Involved: Product Backlog Product Increment

Common Findings and Best Practices It is a good idea to combine parts of Methodologies No out of the box SDLC will work immediately Always tailor Pick pieces that work best Evaluate the process explicitly after each iteration Methodology will not work without acceptance by team Methodology will not work unless aligned with people, project, and corporate behavior

Timebox the Work Create 1 6 week timeboxes Negotiate amount of work in timebox with everyone involved Don t interrupt the timebox Drop functionality rather than slip Avoid burning people out though Estimate for next iteration is counterintuitive If you slipped, make time shorter and do less Eventually you should land on about 4 weeks

Adopt Good Requirements Practices Focus on functionality rather than traditional requirements Use use cases to describe functionality Tie tests to requirements Prioritize and cost requirements Manipulating requirements should have a cost Requirements development is a skill Train and practice for good requirements Make examples of requirements

Grow Software Start with core and add richness to features Don t polish features to completion, grow them Organize around the architecture This is not bolt on software

Create Automated Integration Create a build area for nightly check-in Create a smoke test for nightly build Automate reporting on build and test Must create a culture for this technique

Prefer Visual Models Faster to create, change, absorb visual models Use UML (it s a standard) Apply visual modeling to requirements and business modeling, not just design

Resources Agility and Discipline Made Easy (Kroll and MacIssac) Agile Software Development with SCRUM (Schwaber) Balancing Agility and Discipline (Boehm and Turner) Agile Software Development: Evaluating Methods for your Organization (Koch) Agile Alliance visit http://www.agilealliance.org Columbus XP User Group visit http://www.cardinalsolutions.com/xp/

Contact Information Jennifer Bleen, PMP Principle Consultant, Cardinal Solutions jbleen@cardinalsolutions.com President, XP User Group xpusergroup@yahoo.com