Project Management in Software: Origin of Agile

Similar documents
AGILE vs. WATERFALL METHODOLOGIES

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

THE BUSINESS VALUE OF AGILE DEVELOPMENT

2015 Defense Health Information Technology Symposium Implementation of Agile SCRUM Software Development Methodology

Introduction to Software Engineering: Overview and Methodologies

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

Agile Requirements Engineering + LESSONS LEARNED

How to optimize offshore software development with Agile methodologies

Software Development Methodologies

Introduction to Agile and Scrum

Governments information technology

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

When is Agile the Best Project Management Method? Lana Tylka

Waterfall vs. Agile Project Management

Agile Project Management By Mark C. Layton

Agile Project Management with Scrum

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

The Agile Movement An introduction to agile software development

Who Doesn t Want to be Agile? By: Steve Dine President, Datasource Consulting, LLC 7/10/2008

Scrum vs. Kanban vs. Scrumban

Software Engineering

CompSci Fall 2014 Professors: Robert Duvall, Ajay Patel, Salman Azhar (rcd@cs, ajay.patel, azhar@cs)

The traditional project management uses conventional methods in software project management process.

Scrum and Kanban 101

Agile Projects 7. Agile Project Management 21

Evolutionary BPM. A New Process Methodology. Published: Oct. 17, Authors: Eli Stutz, Bruce Hardy

Agile vs Waterfall Legal Issues

Agile in a Safety Critical world

LEAN AGILE POCKET GUIDE

Moderator: Albert Jeffrey Moore, ASA, MAAA. Presenters: Albert Jeffrey Moore, ASA, MAAA Kelly J. Rabin, FSA, MAAA Steven L. Stockman, ASA, MAAA

Lean Software Development and Kanban

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

How to manage agile development? Rose Pruyne Jack Reed

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

PMP vs. Scrum Master

Role of the Business Analyst in an Agile Project

Introduction to Agile

When User Experience Met Agile: A Case Study

Agile Contracts. NK Shrivastava, PMP, RMP, ACP, CSM, SPC CEO/Consultant - RefineM. Agenda

Agile Project Management

Development. Lecture 3

Agile So)ware Development

Scrum QA Assessment. John Scarborough VP System Engineering STeP-IN Summit January 2006

How To Develop An Application

PLM - Agile. Design Code Test. Sprints 1, 2, 3, 4.. Define requirements, perform system design, develop and test the system. Updated Project Plan

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

serena.com An Introduction to Agile Software Development

DEUTSCHE SCRUM 2012, 15 NOV 2012, DARMSTADT. Agile Product Development at Johnson Controls Automotive Experience A Success Story

Moonzoo Kim CS Division of EECS Dept. KAIST

AGILE & SCRUM. Revised 9/29/2015

Agile Software Development

Controlling Change on Agile Software Development Projects

Agile Software Development

IT Home 2015 DevOps 研 討 會

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

Agile Practitioner: PMI-ACP and ScrumMaster Aligned

Using Business Process Management Technology to Implement a CMMI-compliant Agile Software Development Approach

Successful Agile Project Management

Agile Development in Today s Industry. Duke CS408 Session 2014

Course Title: Planning and Managing Agile Projects

Agile Planning in a Multi-project, Multi-team Environment

Agile & Scrum: What are these methodologies and how will they impact QA/testing roles? Marina Gil Santamaria Summer 2007

Agile Software Development. Stefan Balbo / Patrick Dolemieux

History of Agile Methods

Certified Scrum Master Workshop

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

Models of Software Development

AGILE SOFTWARE DEVELOPMENT

ISL Development & Support Service Level Agreement (SLA) Infigo Software Limited (ISL)

THE AGILE WATERFALL MIX DELIVERING SUCCESSFUL PROGRAMS INVOLVING MULTIPLE ORGANIZATIONS

Introduction to Agile Scrum

Agile & the Declaration of Interdependence: A new approach to Process Improvement

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

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

TecEd White Paper User-Centered Design and the Agile Software Development Process: 7 Tips for Success

Agile Development Overview

Scaling Agile Is Hard, Here s How You Do It!

Scrum Is Not Just for Software

Agile Scrum Workshop

Agile Blending. Rachel Davies

Course Title: Managing the Agile Product Development Life Cycle

Sometimes: 16 % Often: 13 % Always: 7 %

Answered: PMs Most Common Agile Questions

Transitioning from Waterfall: The Benefits of Becoming Agile. ASPE Web Seminar Friday, February 27 th, 2015

Agile Metrics. It s Not All That Complicated

DevOps for CA Plex Automated Testing

Scrum. in five minutes

Agile Team Roles Product Owner & ScrumMaster. Brian Adkins Rick Smith

Your Agile Team s Indispensible Asset

Agile and lean methods for managing application development process

Agile Methods for Analysis

Would you like to have a process that unlocks ability to learn and produce faster?

SCRUM An Agile Model for Software Project Management

Agile Software Development Methodologies and Its Quality Assurance

Agile and lean methods for managing application development process

AGILE SOFTWARE DEVELOPMENT AND UML. John O. Iyaniwura BSc (Hons), MSc New Vision Labs Thursday 11 th October, 2012

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

Mitigating Risk with Agile Development. Rich Mironov CMO, Enthiosys

Agile Project Management A Primer. Brian Stewart AVU ACEP Nairobi 17 th 2013

Transcription:

PAGE 1 ios App Development Project Management in Software: Origin of Agile

PAGE 2 Learning Outcomes By the end of the unit, you should be able to: 1. Differentiate between Waterfall and Agile process 2. Explain the benefits of Agile as a software development process 3. Identify the Agile Manifesto principles Vocabulary Waterfall Agile Scrum

PAGE 3 Evolution of Software Development Process Early on in the history of software development, most companies developed software using the Waterfall Model. The Waterfall Model relies on stages that must be completed before proceeding to the following stage. Each stage requires that the entire app is approved before it can move onto the next stage. For example, the requirements must be completed and approved for the entire app before it can move to the design stage. You would typically start by analyzing the problem that you are trying to solve, then write all the requirements that the software needs to meet, then design the software, then code it, and finally you would integrate it all into one software package. The diagram below gives you a feel for why it is referred to as the Waterfall Model ; it looks like a Waterfall.

PAGE 4 There are some fundamental problems with this approach. First, it assumes that you can accurately complete each stage before going to the next one. This is typically impossible for software projects. For example, the Waterfall Model assumes that you will be able to anticipate all the requirements of the app correctly before moving on to the design stage. Waterfall leaves little room for error or flexibility and requires you to start the entire process over again if any changes need to be made downstream. This can be very inefficient and expensive if each stage takes weeks or even months.

PAGE 5 Since each stage must be completed in its entirety before it moves onto the next stage, the client typically doesn t see any part of the app until all of the stages have been completed. If the client wants to make changes after seeing the final project, the entire process must be started over. You can image how frustrating it would be for a client to not see his or her app for months and then have it not look and feel the way they had imagined. Thankfully, a new philosophy around how to develop software emerged, which resulted in the Agile Manifesto a collection of values outlined by the leaders in the field: Individuals and interactions over process and tools Working software over comprehensive documentations Customer collaboration over contract negotiation Responding to change over following a plan This manifesto led to a more iterative development method called Agile Development. What is Agile Development? Agile Development is essentially iterative development wherein the development team works for a set amount of time on a smaller set of goals and frequently demonstrates the app to the client. This allows the client an opportunity to provide feedback earlier and the team to make smaller, more frequent changes. Unlike how Waterfall separates out stages into individual workflows, Agile is based on the premise that you get as much as possible done in a short amount of time and get it in front of the client to get feedback early and often.

PAGE 6 Waterfall vs. Agile Example For example, let s suppose we have 9 requirements that make up our software product: Waterfall Model The Waterfall Model would require us to complete all 9 tasks at every stage before delivering to the client. Lets suppose each stage takes 4 weeks for all 9 tasks, the client won t be able to see any part of their app for around 5 months. Plus, if any changes need to be made, the entire process must start over. All 9 requirements move through the Waterfall together

PAGE 7 STEP 1 STEP 2 STEP 3 STEP 4 STEP 5 STEP 6 DELIVERY TO CLIENT!

PAGE 8 Agile Development Based on the Agile Manifesto, we want to build working software in a highly collaborative environment. Therefore, we choose a handful of tasks at a time, complete the entire development process on those tasks, and deliver the tasks to the client in a short period of time. This way the client sees what is being built every couple weeks instead of every few months. At a glance, you can see how different the process looks from the Waterfall Model Agile Development is a continuous flow rather than steps of a ladder. Tasks get added to the project, prioritized in a backlog, developed during a sprint, and delivered to the client. The entire team works together at the same time during the sprints to build and deliver working software.

PAGE 9 Agile Development is a broad term used across the software industry. However, there is a specific Agile process many development shops use, called Scrum, which is what you will learn in this course.