Agile Methods. Background

Size: px
Start display at page:

Download "Agile Methods. Background"

Transcription

1 Agile Methods Agile Alliance Background In 2001, a group of lightweight methodologies practioners met to discuss similarities and experiences They wrote the Manifesto for Agile Software Development * Their experience was that software development is mostly an empirical process and not an engineering process ( e.g. assembling an automobile) Domain of Agile methods: For non-safety critical projects Volatile requirements Built by relatively small and skilled collocated teams 6/22/

2 Values of the Agile Manifesto 1. Individuals and interactions over processes and tools 2. Working software over comprehensive documentation 3. Customer collaboration over contract negotiation 4. Responding to change over following a plan Agile Plan-Driven source: agilemanifesto.org 6/22/ A Perspective on Development Approaches 6/22/2008 Kroll, P.; Kruchten, P.; The Rational Unified Process Made Easy 4 A Practionner s Guide to the RUP.; Addison-Wesley, 2003, ISBN

3 Typical Agile Processes extreme Programming (XP) SCRUM Dynamic System Development Method (DSDM) Feature-Driven Development (FDD) RUP claims it can be tailored as an agile method 6/22/ extreme Programming (XP) Elements 1. Planning game: Quickly determine the next release s scope, combining business priorities and technical estimates. The customer decides scope, priority, and dates from a business perspective, whereas technical people estimate and track progress. 2. Small releases: Put a simple system into production quickly. Release new versions on a very short (two-week) cycle. 3. Metaphor: Guide all development with a simple, shared story of how the overall system works. 4. Simple design: Design as simply as possible at any given moment. 5. Testing: Developers continually write unit tests that must run flawlessly; customers write tests to demonstrate that functions are finished. Test, then code means that a failed test case is an entry criterion for writing code. 6. Refactoring: Restructure the system without changing its behavior to remove duplication, improve communication, simplify, or add flexibility. 6/22/

4 extreme Programming (XP) Elements 7. Pair programming: All production code is written by two programmers at one machine. 8. Collective ownership: Anyone can improve any system code anywhere at any time. 9. Continuous integration: Integrate and build the system many times a day (every time a task is finished). Continual regression testing prevents functionality regressions when requirements change.. 40-hour weeks: Work no more than 40 hours per week whenever possible; never work overtime two weeks in a row. 11. On-site customer: Have an actual user on the team full-time to answer questions. 12. Coding standards: Have rules that emphasize communication throughout the code. 6/22/ extreme Programming (XP) Elements XP and SQA Addressed by the pair-programming culture Peer pressure helps comply to process and product assurance Larger team require more formal mechanisms for objectively verifying adherence to procedures and standards Might be ineffective when team is subjected to pressure No management visibility into nonconformance issues 6/22/

5 6/22/ Balancing Agility & Discipline 6/22/2008 5

6 Balancing Agility & Discipline Personnel (% Level 1B) (% Level 2&3) Criticality (Loss due to impact of defects) Dynamism (% Requirements change/month Many 0 Lives Single Life Essential Funds Discretionary Funds Comfort Size (# of personnel) Culture (% thriving on chaos vs. order) 6/22/ Agile Plan-driven Agile Plan-driven Two Project examples Lease Management CCPDS-R 6/22/

7 Boehm-Turner Risk-driven Approach Step 1. Risk Analysis Rate the project s environmental, agilityoriented and plan-driven risks. Uncertain about ratings? Yes Buy information via prototyping, data collection and analysis Note: Feedback loops present, but omitted for simplicity No Step 2. Risk Comparison Step 3. Architecture Analysis Compare the agile and Plandriven risks Architect application to encapsulate agile parts Step 5. Execute and Monitor Plan-driven risks dominate Neither dominate Deliver incremental capabilities according to strategy Monitor progress and risks/opportunities, readjust balance and process as appropriate Agility risks dominate Go Risk-based Agile Go Risk-based Plan-driven Go Risk-based Agile in agile parts; Go Riskbased Plandriven elsewhere Tailor life cycle process around anchor point commitment milestones Step 4. Tailor Life Cycle 6/22/ Characteristics Application Primary Goals Size Environment Management Customer Relations Planning/Control Communications Technical Requirements Development Test Personnel Customers Developers Balancing Agility & Discipline Agile Rapid value; responding to change Smaller teams and projects Turbulent; high change; project-focused Dedicated on-site customers; focused on prioritized increments Internalized plans; qualitative control Tacit interpersonal knowledge Prioritized informal stories and test cases; undergoing unforseeable change Simple design; short increment; refactoring assumed inexpensive Executable test cases define requirements, testing Dedicated, collocated CRACK* performers At least % full-time Cockburn level 2 and 3 experts; no Level 1B or -1 personnel** Disciplined Predictability, stability, high assurance Larger teams and projects Stable; low-change; project/organization focused As-needed customer interactions; focused on contract provisions Documented plans, quantitative control Explicit documented knowledge Formalized project, capability, interface, quality, forseeable evolution requirements Extensive design; longer increments; refactoring assumed expensive Documented test plans and procedures CRACK* performers, not always collocated 50% Cockburn Level 3s early; % throughout; % Level 0 s workable; no Level -1s** Culture Comfort and empowerment via many degrees of Comfort and empowerment via framework of policies and freedom (thriving on chaos) procedures (thriving on order) 6/22/ * Collaborative, Representative, Authorized, Committed, Knowledgeable ** These numbers will particularly vary with the complexity of the application 7

USC-CSE Annual Research Review. Los Angeles, CA March 12, 2003

USC-CSE Annual Research Review. Los Angeles, CA March 12, 2003 USC-CSE Annual Research Review Los Angeles, CA March 12, 2003 Background Two approaches to software development Disciplined (SW-CMM, document-based, heavy process) Agile (XP, tacit knowledge, light process)

More information

CS 4387/5387 SOFTWARE V&V LECTURE 6 TEST-DRIVEN DEVELOPMENT

CS 4387/5387 SOFTWARE V&V LECTURE 6 TEST-DRIVEN DEVELOPMENT 1 CS 4387/5387 SOFTWARE V&V LECTURE 6 TEST-DRIVEN DEVELOPMENT Agile Processes 2 Some have criticized highly-structured processes (such as those based on a CMM framework) as unresponsive to change during

More information

Teaching the Elephant to Dance: Agility Meets Systems of Systems Engineering and Acquisition

Teaching the Elephant to Dance: Agility Meets Systems of Systems Engineering and Acquisition Barry Boehm University of Southern California boehm@sunset.usc.edu Teaching the Elephant to Dance: Agility Meets Systems of Systems Engineering and Acquisition Keynote, GSAW 2005 March 3, 2005 Outline

More information

Rebalancing Your Organization s Agility and Discipline

Rebalancing Your Organization s Agility and Discipline Rebalancing Your Organization s Agility and Discipline Barry Boehm 1 and Richard Turner 2 2 1 University of Southern California Los Angeles, CA 90089-0781 boehm@usc.edu The George Washington University

More information

Quality in software development. Geir Amsjø

Quality in software development. Geir Amsjø Quality in software development Geir Amsjø 1 Dedication Three stonecutters were asked: What are you doing? Thanks to Mary Poppendieck www.poppendieck.com 2 Can you solve this problem for me? Organization

More information

Chapter 2 Objectives. Pfleeger and Atlee, Software Engineering: Theory and Practice (edited by B. Cheng) Chapter 2.

Chapter 2 Objectives. Pfleeger and Atlee, Software Engineering: Theory and Practice (edited by B. Cheng) Chapter 2. Chapter 2 Objectives What we mean by a process Software development products, processes, and resources Several models of the software development process Tools and techniques for process modeling 2.1 The

More information

CS 5704: Software Engineering

CS 5704: Software Engineering CS 5704: Software Engineering Agile Methodologies Dr. Pardha S. Pyla 1 1 What is wrong with this? System requirements Software requirements Analysis Program design 1. Rigid/heavy weight process 2. Too

More information

An Overview of Software Process

An Overview of Software Process An Overview of Software Process Objectives To introduce the general phases of the software development life cycle (SDLC) To describe various generic software process models and discuss their pros and cons

More information

04. Agile Development

04. Agile Development 04. Agile Development Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Background of Agile Software Development Software development until late 90s

More information

Balancing Agility and Discipline. Report by Brad Kaufmann

Balancing Agility and Discipline. Report by Brad Kaufmann Balancing Agility and Discipline Report by Brad Kaufmann 1 Road Map Introduction What are Discipline and Agility? Misconceptions Contrasts and Home Grounds Five Critical Factors The Risk-Based Method Case

More information

Agile Software Development

Agile Software Development Agile Software Development Chapter 3 Agile Software Development in the textbook 3.1 Agile methods 3.2 Plan-driven and agile development 3.3 Extreme programming (XP) - A well known agile method 3.4 Agile

More information

AGILE DEVELOPMENT AND ITS IMPACT ON PRODUCTIVITY

AGILE DEVELOPMENT AND ITS IMPACT ON PRODUCTIVITY AGILE DEVELOPMENT AND ITS IMPACT ON PRODUCTIVITY 2006 International Software Measurement & Analysis Conference David Garmus www.davidconsultinggroup.com Topics Characteristics of Agile Projects Performance

More information

Scaling Up Agility: The Architected Agile Approach Barry Boehm, USC JAOO 2009 October 5, 2009

Scaling Up Agility: The Architected Agile Approach Barry Boehm, USC JAOO 2009 October 5, 2009 Scaling Up Agility: The Architected Agile Approach Barry Boehm, USC JAOO 2009 October 5, 2009 10/05/2009 (c) USC-CSSE 1 Outline Increasing importance of both agility and quality Scalability, accuracy,

More information

Tuesday, October 25. Announcements

Tuesday, October 25. Announcements Tuesday, October 25 Announcements Crowdsourcing the Midterm http://www.drsusansim.org/teaching/inf111/pligg Homework 5 Skip lab portion Use anything you want to draw the diagrams for the take home portion

More information

CONTENTS. Introduction to Software Engineering. Software Process and Life Cycle Models. Software Life-Cycle Model-2. Chapter 1. Chapter 2.

CONTENTS. Introduction to Software Engineering. Software Process and Life Cycle Models. Software Life-Cycle Model-2. Chapter 1. Chapter 2. Contents (v) CONTENTS Preface About the Author (xv) (xvii) Chapter 1 Introduction to Software Engineering 1.1 Introduction 1 1.2 Basics of Software Engineering 2 1.3 Principles of Software Engineering

More information

SOFTWARE ENGINEERING SOFTWARE-LIFE CYCLE AND PROCESS MODELS. Saulius Ragaišis.

SOFTWARE ENGINEERING SOFTWARE-LIFE CYCLE AND PROCESS MODELS. Saulius Ragaišis. SOFTWARE ENGINEERING SOFTWARE-LIFE CYCLE AND PROCESS MODELS Saulius Ragaišis saulius.ragaisis@mif.vu.lt CSC2008 SE Software Processes Learning Objectives: Explain the concept of a software life cycle and

More information

Agile Development Processes. CSCE Lecture 3-08/31/2017

Agile Development Processes. CSCE Lecture 3-08/31/2017 Agile Development Processes CSCE 740 - Lecture 3-08/31/2017 Common Practice: Code & Fix Sit down, write out the code, and fix problems as they occur. No formal structure to development. What is wrong with

More information

The Software Life Cycle

The Software Life Cycle Inception Software Increment Communication Planning Production The Software Life Cycle Software Engineering Deployment Andreas Zeller Saarland University Modelling Elaboration Transition Construction Construction

More information

The Software Life Cycle

The Software Life Cycle Production Inception The Life Cycle Engineering Modelling Andreas Zeller Saarland University Elaboration Transition A Crisis Denver International Airport (DIA) started in 1989 53 sq miles Planned: 1.7

More information

Agile and Secure Can We Be Both? San Antonio AITP. August 15 th, 2007

Agile and Secure Can We Be Both? San Antonio AITP. August 15 th, 2007 Agile and Secure Can We Be Both? San Antonio AITP August 15 th, 2007 Agenda Background Evolution of traditional software development methodologies Benefits of Agile development Requirement for Secure development

More information

Software Engineering Economics

Software Engineering Economics Software Engineering Economics (CS656) VBSE Jongmoon Baik Value-Based Software Engineering (VBSE) 2 1 Example: Software Testing Assume You re the manager of a $2M S/W project, Vendor (ATG) Proposition

More information

Agile Software Development:

Agile Software Development: Agile Software Development: 1.Agile methods 2.Plan-driven and agile development 3.Extreme programming (XP) 4.Agile project management 5.Pair Programming 6.Scrum 7.Scaling agile methods Rapid software development:

More information

! How work in building software is done: ! e.g., waterfall process. ! e.g., object-oriented development. ! e.g., requirements inspection process

! How work in building software is done: ! e.g., waterfall process. ! e.g., object-oriented development. ! e.g., requirements inspection process Software Process Process CMPUT 401 Module 04! How work in building software is done:! e.g., waterfall process! e.g., object-oriented development! e.g., requirements inspection process Department of Computing

More information

Process. CMPUT 401 Module 04. Department of Computing Science University of Alberta Ken Wong, 2008

Process. CMPUT 401 Module 04. Department of Computing Science University of Alberta Ken Wong, 2008 Process CMPUT 401 Module 04 Department of Computing Science University of Alberta Ken Wong, 2008 Software Process How work in building software is done: e.g., waterfall process e.g., object-oriented development

More information

Processes and Life- Cycles. Kristian Sandahl

Processes and Life- Cycles. Kristian Sandahl Processes and Life- Cycles Kristian Sandahl 2 Maintenance Requirements Validate Requirements, Verify Specification Acceptance Test (Release testing) System Design (Architecture, High-level Design) Verify

More information

Introduction to Extreme Programming

Introduction to Extreme Programming Introduction to Extreme Programming Brian Button bbutton@objectmentor.com, Inc Overview Motivation Business Case Description Case Studies References 1-800-338-6716 2 My Typical Client Manager doesn t trust

More information

An Evolutionary Lifecycle Model with Agile Practices for Software Development at ABB

An Evolutionary Lifecycle Model with Agile Practices for Software Development at ABB An Evolutionary Lifecycle Model with Agile Practices for Software Development at ABB Aldo Dagnino ABB US Corporate Research Center 1021 Main Campus Drive Raleigh, NC, USA aldo.dagnino@us.abb.com Abstract

More information

Introduction to Agile/Extreme Programming

Introduction to Agile/Extreme Programming Introduction to Agile/Extreme Programming Matt Ganis, Senior Technical Staff Member (Certified Scrum Master) IBM Hawthorne, New York ganis@us.ibm.com August 2007 Session 8061 Current slides at: http://webpage.pace.edu/mganis

More information

Lecture 8 Agile Software Development

Lecture 8 Agile Software Development Lecture 8 Agile Software Development Includes slides from the companion website for Sommerville, Software Engineering, 10/e. Pearson Higher Education, 2016. All rights reserved. Used with permission. Topics

More information

ABHELSINKI UNIVERSITY OF TECHNOLOGY

ABHELSINKI UNIVERSITY OF TECHNOLOGY T 76.3601 Introduction to Software Engineering Software Life-Cycle Models http://www.soberit.hut.fi/t-76.3601/ Casper.Lassenius@tkk.fi Software Engineering? 1. The application of a systematic, disciplined,

More information

Software Life Cycles and Configuration Management

Software Life Cycles and Configuration Management Software Configuration Lecture 11 Software Engineering TDDC88/TDDC93 autumn 2008 Department of Computer and Information Science Linköping University, Sweden Theory Lecture Plan 2 L1 - Course Introduction

More information

Processes and Life- Cycles. Kristian Sandahl

Processes and Life- Cycles. Kristian Sandahl Processes and Life- Cycles Kristian Sandahl 2 Maintenance Requirements Validate Requirements, Verify Specification Acceptance Test (Release testing) System Design (Architecture, High-level Design) Verify

More information

Agile. How would you implement agile methodologies and tools for web projects? What do you see as the benefits and challenges to doing this?

Agile. How would you implement agile methodologies and tools for web projects? What do you see as the benefits and challenges to doing this? Agile How would you implement agile methodologies and tools for web projects? What do you see as the benefits and challenges to doing this? What is Agile? The term agile (sometimes written Agile) was popularised

More information

Foundations of Software Engineering. Process: Agile Practices Michael Hilton

Foundations of Software Engineering. Process: Agile Practices Michael Hilton Foundations of Software Engineering Process: Agile Practices Michael Hilton 1 Learning goals Define agile as both a set of iterative process practices and a business approach for aligning customer needs

More information

The Systems Development Lifecycle

The Systems Development Lifecycle Modelling and Systems Development Lecture 2 The Systems Development Lifecycle The four-phase model common to all system developments projects The project Major attributes of the Lifecycle Moves systematically

More information

V Model material adapted from Steve Easterbrook. Waterfall Model material adapted from Steve Easterbrook. Lifecycle of Software Projects

V Model material adapted from Steve Easterbrook. Waterfall Model material adapted from Steve Easterbrook. Lifecycle of Software Projects Lifecycle of Software Projects ECE450 Software Engineering II Lifecycle models are useful to compare project management strategies in abstract terms Birds-eye view strategy Detect strengths and weaknesses...

More information

Software Engineering G Session 12 Sub-Topic 1 Risk Management in Adaptive Software Engineering. Dr. Jean-Claude Franchitti

Software Engineering G Session 12 Sub-Topic 1 Risk Management in Adaptive Software Engineering. Dr. Jean-Claude Franchitti Software Engineering G22.2440-001 Session 12 Sub-Topic 1 Risk Management in Adaptive Software Engineering Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of

More information

User-centered System Design. Agile

User-centered System Design. Agile User-centered System Design Agile Department of Information Technology Methods - what are they? Why do we have them? Business modeling Usability Design Requirements Analysis & design Implementation Test

More information

Agile Quality Management

Agile Quality Management Agile Quality Management Panagiotis Sfetsos, PhD Assistant Professor, Department of Informatics, Alexander Technological Educational Institution E mail: sfetsos@it.teithe.gr Web Page: http://aetos.it.teithe.gr/~sfetsos/

More information

Lecture 1. Topics covered. Rapid p development and delivery is now often the most important requirement for software systems.

Lecture 1. Topics covered. Rapid p development and delivery is now often the most important requirement for software systems. Chapter 3 Agile Software Development Lecture 1 Topics covered Agile g methods Plan-driven and agile development Extreme programming Agile project management Scaling agile methods Rapid software development

More information

Quality 24 Process Improvement 26 Real processes. Product Quality. Quality Management. Quality Management. Quality Plan

Quality 24 Process Improvement 26 Real processes. Product Quality. Quality Management. Quality Management. Quality Plan Quality 24 Process Improvement 26 Real processes Cleanroom RUP XP Software Engineering 55 Software Engineering 56 Product Quality Acceptable: usable, learnable, compatible Efficient: response time, memory

More information

Agile Software Construction

Agile Software Construction Agile Software Construction John Hunt Agile Software Construction John Hunt, BSc, PhD, MBCS, CEng, MEng Experis Ltd. Chippenham Wiltshire UK British Library Cataloguing in Publication Data A catalogue

More information

Processes. Object Orientated Analysis and Design. Benjamin Kenwright

Processes. Object Orientated Analysis and Design. Benjamin Kenwright Processes Object Orientated Analysis and Design Benjamin Kenwright Outline Review What are Processes? Why are they important in Object Orientated Analysis and Design Conclusion and Discussion Summary Revision

More information

CS350 Lecture 2 Software Dev. Life Cycle. Doo-Hwan Bae

CS350 Lecture 2 Software Dev. Life Cycle. Doo-Hwan Bae CS350 Lecture 2 Software Dev. Life Cycle Doo-Hwan Bae bae@se.kaist.ac.kr Whose Drawings? Watts Humphrey, SE is Religion and Philosophy. Just Follow me! CS350 Software Engineering, SoC, KAIST 2 What is

More information

Requirements Architecture - Agility

Requirements Architecture - Agility Requirements Architecture - Agility R. Kuehl/J. Scott Hawker p. 1 Requirements Engineering and Agile Processes (You may be thinking) Requirements engineering model as presented is not very agile Writing

More information

Software LEIC. Lecture 23

Software LEIC. Lecture 23 Software Engineering @ LEIC Lecture 23 Last Lecture Software Evolution Project Management Software Process Today What is software development? Software development is a formalisation process From Natural

More information

Software Engineering Lecture 5 Agile Software Development

Software Engineering Lecture 5 Agile Software Development Software Engineering Lecture 5 Agile Software Development JJCAO Mostly based on the presentation of Software Engineering, 9ed Exercise Describe the main activities in the software design process and the

More information

Extreme Programming, an agile software development process

Extreme Programming, an agile software development process Extreme Programming, an agile software development process Paul Jackson School of Informatics University of Edinburgh Recall: Waterfall and Spiral Models 1.Determine objectives Cumulative cost Progress

More information

Agile Manifesto & XP

Agile Manifesto & XP Agile Manifesto & XP Chapter 3.1-3.3 CMPT 276 Dr. B. Fraser Based on slides from Software Engineering 9 th ed, Sommerville. Slides 8 18-06-10 1 Topics 1) What is Agile trying to do? 2) How to choose plan-driven

More information

What is Software Engineering?

What is Software Engineering? COSC 3351 Software Software Life Cycle (I) Spring 2008 What is Software Engineering? Real world problems are large and complex. Solving problems requires multiple steps Analyzing: Break the problems into

More information

SOFTWARE DEVELOPMENT. Process, Models, Methods, Diagrams Software Development Life Cyles. Part - V

SOFTWARE DEVELOPMENT. Process, Models, Methods, Diagrams Software Development Life Cyles. Part - V SOFTWARE DEVELOPMENT Process, Models, Methods, Diagrams Software Development Life Cyles Part - V Extreme Programming (XP) was conceived and developed by Kent Beck to address the specific needs of software

More information

Software Engineering QUESTION BANK

Software Engineering QUESTION BANK Software Engineering QUESTION BANK UNIT - 1 1. What is software? Explain the two fundamental types of software products. 2. What is software engineering? What is the difference between software engineering

More information

13. Team evolutionary developement

13. Team evolutionary developement 13. Team evolutionary developement Most of the software projects require a larger effort than a solo programmer can handle Programmers have to organize themselves into teams Agile teams Directed teams

More information

The Challenge of Agile Estimating

The Challenge of Agile Estimating The Challenge of Agile Estimating Christina Donadi Heather Nayhouse SCEA/ISPA National Conference, Albuquerque, New Mexico June 2011 2011 TASC, Inc. Agenda Overview of Agile Development Importance of Agile

More information

INDEX. Numerics 1970s - iterative practice s - iterative practice 85

INDEX. Numerics 1970s - iterative practice s - iterative practice 85 Numerics 1970s - iterative practice 82 1980s - iterative practice 85 A acceptance testing 147, 295 adaptive development 15 planning 12, 17, 253 Adaptive Software Development 29, 34, 38 adoption 314, 320,

More information

Agile Essentials Track: Business Services

Agile Essentials Track: Business Services Agile Essentials Track: Business Services Presenter: Mark Thomas Synopsis Are you a victim of building the wrong solutions slowly? If so, you re not alone, and considering an Agile approach may be the

More information

ignoring agile, size and frequency, sales, , 280

ignoring agile, size and frequency, sales, , 280 INDEX A Acceptance testing automated, 161 162 description, 160 162 FIT approach, 161 162 just-in-time elaboration, 234 principles, 156 Accountability paradigm shifts, 84 teams, 113 Agile. See also Software

More information

Lecture 29: Agile Design and Extreme Programming

Lecture 29: Agile Design and Extreme Programming 1 Lecture 29: Agile Design and Extreme Programming Kenneth M. Anderson Software Methods and Tools CSCI 4448/6448 - Spring Semester, 2005 2 Credit where Credit is Due The material for this lecture is based

More information

Ken Auer RoleModel Software, Inc. Copyright , RoleModel Software, Inc.

Ken Auer RoleModel Software, Inc.   Copyright , RoleModel Software, Inc. Ken Auer RoleModel Software, Inc. ken.auer@rolemodelsoftware.com http://rolemodelsoftware.com Copyright 2003-04, RoleModel Software, Inc. Documentation is not Understanding (tacit) One Study of Typical

More information

2. True or false: In Scrum all the requirements for the project are known prior to the start of development.

2. True or false: In Scrum all the requirements for the project are known prior to the start of development. CTC-ITC 310 Program Management California State University Dominguez Hills Fall 2018 Instructor: Howard Rosenthal Assignment 5 A Deeper Look At Agile Methodologies Answer Sheet Each question is worth 10

More information

Chapter 3 Agile Software Development

Chapter 3 Agile Software Development Chapter 3 Agile Software Development Chapter 3 Agile Software Development Slide 1 Topics covered Rapid software development Agile methods Plan-driven vs. agile development Extreme programming (XP) Agile

More information

Succeed with Agile at Scale

Succeed with Agile at Scale IBM Software Group Succeed with Agile at Scale Alfred Tse/Osmond Ng Rational Software Technical Professionals Growth Markets Asia Pacific June 25, 2009 2008 IBM Corporation Agenda Agile Software Development

More information

COMP 6481 Fall 2006 System Requirement Specifications

COMP 6481 Fall 2006 System Requirement Specifications COMP 6481 Fall 2006 System Requirement Specifications Instructor Name: Dr. Olga Ormandjieva Software Requirements Engineering using Agile Methods Project Report Name: Muhammad F. Ahmed ID: 5774454 Name:

More information

Agile Methodology. Tech Focus. Agile Methodology: Characteristics. Techspace Home Tech Focus Case Study Trend Watch Thought Post

Agile Methodology. Tech Focus. Agile Methodology: Characteristics. Techspace Home Tech Focus Case Study Trend Watch Thought Post Tech Focus Techspace Home Tech Focus Case Study Trend Watch Thought Post Agile Methodology The term 'agile' is a philosophy and is a conceptual framework for undertaking software engineering projects.

More information

The Essential Software Engineering Approach to Requirements Engineering

The Essential Software Engineering Approach to Requirements Engineering The Essential Software Engineering Approach to Requirements Engineering Presented at the BASSA 2012 Conference 4 & 5th September 2012 Protea Hotel Balalaika, Sandton From Sight to Insyte Introduction Setting

More information

Agile Projects 7. Agile Project Management 21

Agile Projects 7. Agile Project Management 21 Contents Contents 1 2 3 4 Agile Projects 7 Introduction 8 About the Book 9 The Problems 10 The Agile Manifesto 12 Agile Approach 14 The Benefits 16 Project Components 18 Summary 20 Agile Project Management

More information

Agile Methods. Course "Softwareprozesse" Lutz Prechelt Freie Universität Berlin, Institut für Informatik

Agile Methods. Course Softwareprozesse Lutz Prechelt Freie Universität Berlin, Institut für Informatik Course "Softwareprozesse" Agile Methods Lutz Prechelt Freie Universität Berlin, Institut für Informatik The Waterfall myth Goals and priorities in SW development Principles of agile approaches Misunderstandings

More information

Software Process. Overview

Software Process. Overview Software Process Overview What is software process? Examples of process models Unified Process (UP) Agile software development N. Meng, B. Ryder 2 1 Software Process Definition [Pressman] a framework for

More information

A Practical Approach to Project Management in a Very Small Company

A Practical Approach to Project Management in a Very Small Company A Practical Approach to Project Management in a Very Small Company Edgar Caballero and Jose A. Calvo-Manzano Departamento Lenguajes y Sistemas Informáticos e Ingeniería del Software Universidad Politécnica

More information

Introduction. Failure. Why Projects Fail. Agile in an Hour

Introduction. Failure. Why Projects Fail. Agile in an Hour Agile in an Hour Joe Bergin & Fred Grossman Seidenberg School Computer Science and Information Systems Pace University Introduction Agile Software Development is a high discipline and very iterative development

More information

Part 1. Software engineering Facts. CSC 4181 Compiler Construction Software Engineering Lectures. What is software engineering? What is software?

Part 1. Software engineering Facts. CSC 4181 Compiler Construction Software Engineering Lectures. What is software engineering? What is software? Software engineering Facts CSC 4181 Compiler Construction Software Engineering Lectures Part 1 Fact: The economies of ALL developed nations are dependent on software. Fact: More and more systems are software

More information

Assistant Professor, Integral University, Lucknow, India. Quality Parameters. Correctness. Efficiency. Portability. Usability.

Assistant Professor, Integral University, Lucknow, India. Quality Parameters. Correctness. Efficiency. Portability. Usability. Extreme Programming: Aiming towards Quality Assurance Ayesha Saad Khan, Mohammad Suaib M.tech CSE (2 nd Year), Integral University, Lucknow, India Abstract- Agile methodologies are among the most popular

More information

18-642: Software Development Processes

18-642: Software Development Processes 18-642: Software Development Processes 9/6/2017 Without requirements and design, programming is the art of adding bugs to an empty text file. Louis Srygley Coding Is Essentially 0% of Creating Software

More information

Introduction to Software Life Cycles and Agile. CSCI 5828: Foundations of Software Engineering Lecture 03 09/02/2014

Introduction to Software Life Cycles and Agile. CSCI 5828: Foundations of Software Engineering Lecture 03 09/02/2014 Introduction to Software Life Cycles and Agile CSCI 5828: Foundations of Software Engineering Lecture 03 09/02/2014 1 Goals Present an introduction to the topic of software life cycles concepts and terminology

More information

Course Title: Agile for Business Analysts

Course Title: Agile for Business Analysts Course Title: Agile for Business Analysts 2 Day Workshop AG-BA08 Agile for Business Analysts Course ID: AG-BA08 Credits: 14 PDUs Course Duration: 2 days Course Level: Basic/Intermediate Prerequisites:

More information

Development Methodologies

Development Methodologies Development Methodologies Dr. James A. Bednar jbednar@inf.ed.ac.uk http://homepages.inf.ed.ac.uk/jbednar Dr. David Robertson dr@inf.ed.ac.uk http://www.inf.ed.ac.uk/ssp/members/dave.htm SAPM Spring 2012:

More information

Lecture 5. Software Processes CSC 4700 Software Engineering. Software Development Processes. The software process

Lecture 5. Software Processes CSC 4700 Software Engineering. Software Development Processes. The software process Software Processes CSC 4700 Software Engineering Lecture 5 Dr. Tom Way CSC 4700 1 Software Development Processes Dr. Tom Way CSC 4700 2 The software process A structured set of activities required to develop

More information

Course Title: Agile for Business Analysts

Course Title: Agile for Business Analysts Course Title: Agile for Business Analysts 2 Day Workshop AG-BA08 Agile for Business Analysts Course ID: AG-BA08 Credits: 14: PMI-PDUs, IIBA-CDUs (Professional Development Hours) Course Duration: 2 days

More information

Index. Ant 344, 348, 349, 350 Anthill 344, 350

Index. Ant 344, 348, 349, 350 Anthill 344, 350 Index 367 Index A adopted technology changes 293 the Agile Manifesto 23, 25, 42, 192 the Agile Manifesto: change response 23, 25, 28 the Agile Manifesto: contract negotiation 23, 24 the Agile Manifesto:

More information

Software Engineering Part 2

Software Engineering Part 2 CS 0901341 Software Engineering Part 2 In this part, we look at 2.1 Software Process 2.2 Software Process Models 2.3 Tools and Techniques for Processing Modelling As we saw in the previous part, the concept

More information

Agile & Innovation State of Research

Agile & Innovation State of Research Agile & Innovation State of Research Jens Hemphälä Researcher KTH School of Industrial Technology & Management Integrated Product Development hemphala@kth.se Agile Defined Ericksson et al. (2005) define

More information

COMPARATIVE EVALUATION OF XP AND SCRUM USING THE 4D ANALYTICAL TOOL (4-DAT)

COMPARATIVE EVALUATION OF XP AND SCRUM USING THE 4D ANALYTICAL TOOL (4-DAT) COMPARATIVE EVALUATION OF XP AND SCRUM USING THE 4D ANALYTICAL TOOL (4-DAT) AsifQumer, Brian Henderson-Sellers, Faculty of Information Technology, University of Technology, Sydney, NSW, Australia asif@it.uts.edu.au,

More information

Introduction. Failure. Why Projects Fail. Agile in an Hour

Introduction. Failure. Why Projects Fail. Agile in an Hour Agile in an Hour Joe Bergin & Fred Grossman Seidenberg School Computer Science and Information Systems Pace University Introduction Agile Software Development is a high discipline and very iterative development

More information

Chapter 9 Software Evolution and Maintenance. Chapter 9 Software evolution

Chapter 9 Software Evolution and Maintenance. Chapter 9 Software evolution Chapter 9 Software Evolution and Maintenance 1 Topics covered Evolution processes Change processes for software systems Program evolution dynamics Understanding software evolution Software maintenance

More information

Extreme Programming (XP)

Extreme Programming (XP) Assignment D Draft paper Extreme Programming (XP) Course code: INFOME Course name: Method Engineering Faculty of Science, Department of Information and Computer Sciences, Utrecht University, Princetonplein

More information

Agile Development Methods: Philosophy and Practice. CSCE 315 Programming Studio, Fall 2017 Tanzir Ahmed

Agile Development Methods: Philosophy and Practice. CSCE 315 Programming Studio, Fall 2017 Tanzir Ahmed Agile Development Methods: Philosophy and Practice CSCE 315 Programming Studio, Fall 2017 Tanzir Ahmed History of Agile Methods Particularly in 1990s, some developers reacted against traditional heavyweight

More information

Agile Practices in Regulated Railway Software Development

Agile Practices in Regulated Railway Software Development Agile Practices in Regulated Railway Software Development Henrik Jonsson System Development Department Etteplan Industry AB Västerås, Sweden henrik.jonsson@etteplan.com Stig Larsson and Sasikumar Punnekkat

More information

4. Agile Methods. Prof. Dr. Dirk Riehle, M.B.A. Friedrich Alexander-University Erlangen-Nürnberg. Version of

4. Agile Methods. Prof. Dr. Dirk Riehle, M.B.A. Friedrich Alexander-University Erlangen-Nürnberg. Version of 4. Agile Methods Prof. Dr. Dirk Riehle, M.B.A. Friedrich Alexander-University Erlangen-Nürnberg Version of 22.03.2012 Agile Methods by Dirk Riehle is licensed under a Creative Commons AttributionShareAlike

More information

Agile Software Development. Agile Software Development Basics. Principles of the Agile Alliance. Agile Manifesto. Agenda. Agile software development

Agile Software Development. Agile Software Development Basics. Principles of the Agile Alliance. Agile Manifesto. Agenda. Agile software development Agile Software Development T-110.6130 Systems Engineering in Data Communications Software P, Aalto University Agile software development Structured and disciplined, fast-paced Iterative and Incremental

More information

Choose an Agile Approach

Choose an Agile Approach 1 of 10 10.04.2013 21:35 Choose an Agile Approach Learning Objective After completing this topic, you should be able to recognize factors to consider when moving to an agile software development methodology

More information

Extreme Programming from a CMM Perspective

Extreme Programming from a CMM Perspective Carnegie Mellon University Research Showcase @ CMU Institute for Software Research School of Computer Science 2001 Extreme Programming from a CMM Perspective Mark C. Paulk Carnegie Mellon University Follow

More information

Other Agile Approaches & Methodologies

Other Agile Approaches & Methodologies Other Agile Approaches & Methodologies 10 Most common Agile Methodologies Scrum XP Kanban => Lean House D. Sixth Annual State of Agile Survey: State of Agile Development, Atlanta, GA, VersionOne, 2012

More information

Agile Development Method for Mobile applications: A Study

Agile Development Method for Mobile applications: A Study Volume 8, No. 5, May-June 2017 International Journal of Advanced Research in Computer Science REVIEW ARTICLE Available Online at www.ijarcs.info Agile Development Method for Mobile applications: A Study

More information

THE ADVANTAGES OF AGILE METHODOLOGIES APPLIED IN THE ICT DEVELOPMENT PROJECTS

THE ADVANTAGES OF AGILE METHODOLOGIES APPLIED IN THE ICT DEVELOPMENT PROJECTS International Journal on Information Technologies & Security, 4 (vol. 9), 2017 51 THE ADVANTAGES OF AGILE METHODOLOGIES APPLIED IN THE ICT DEVELOPMENT PROJECTS Vangel Fustik Faculty of Electrical Engineering

More information

The ABC of Agile Business Change. James Yoxall BCS 17 September, 2013

The ABC of Agile Business Change. James Yoxall BCS 17 September, 2013 The ABC of Agile Business Change James Yoxall BCS 17 September, 2013 Introduction Purpose is to explore the concept of Agile Business Change What does it mean? Why might it be a good thing? Where and when

More information

RIGHTNOW A C E

RIGHTNOW A C E RIGHTNOW A C E 2 0 1 4 2014 Aras 1 aras.com A C E 2 0 1 4 An Agile Approach to Implementing Aras Innovator Implementation Methodology 2014 Aras aras.com Agenda The Challenge The Aras Approach Real World

More information

Mature agile development using HP Quality Center

Mature agile development using HP Quality Center Mature agile development using HP Quality Center Gerald Heller software process optimization Vivit TQA webinar September 22, 2009 Using QC with agile practices Agile fundamentals Expectations & challenges

More information

Achieving Resiliency with Agile Methods

Achieving Resiliency with Agile Methods Achieving Resiliency with Agile Methods Session 11D Supannika Mobasser and Jodene Sasine The Aerospace Corporation Approved for public release. OTR 2018-00352. 2018 The Aerospace Corporation Overview Agile

More information

A comparison of lifecycles

A comparison of lifecycles Master Thesis Software Engineering Thesis no: MSE-2003-12 2003 June A comparison of lifecycles - Agile software processes vs. projects in non-agile software companies Stefan Saarnak and Björn Gustafsson

More information