Software Process. Successful Software Production between Extreme Programming and Rational Unified Process Short Version

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "Software Process. Successful Software Production between Extreme Programming and Rational Unified Process Short Version"

Transcription

1 Software Process Successful Software Production between Extreme Programming and Rational Unified Process Short Version Jörg Hofstetter, HTA Luzern ( , J. Hofstetter 1

2 Literature The Rational Unified Process, Philippe Kruchten, Addison Wesley, 2000 The Unified Software Development Process, Ivar Jacobson, Addison Wesley, 1999 Projektmanagement mit dem Rational Unified Process, Gerhard Versteegen, Springer, 2000 Extreme Programming explained, Kent Beck, Addison Wesley, 2000 Feature-Driven Development, Stephen Palmer, Prentice Hall, 2002 Agile Software Development, Alistair Cockburn, addison-wesley, 2002 agile modeling, Scott Ambler, Wiley, 2002 Managing Software Requirements, Dean Leffingwell - Don Widrig, Addison Wesley, , J. Hofstetter 2

3 Links Firma Rational, RUP: Agile Alliance: SWEBOK: V-Modell: XP: FDD: Letter-0070.html FDD: FDD: , J. Hofstetter 3

4 Overview Module 1: Software Engineering Basics Introduction (p. 6) Process (p. 11) Main Workflows (p. 13) Technical Methods (p. 17) Life-cycle Models (p. 18) Module 2: Concrete Processes Rational Unified Process (p. 24) Extreme Programming (p. 29) Feature Driven Development (p. 47) V-Model (p. 59) Module 3: Agile and Lightweight Processes, Process Improvement, Conclusions (p. 67) 2002, J. Hofstetter 4

5 Module 1: Software Engineering Basics 2002, J. Hofstetter 5

6 Introduction Software project failure statistic Type 1: Project successful Type 2: Project challenged: The project is completed and operational but over-budget, over the time estimate, and offers fewer features and functions than originally specified. Type 3: project canceled Source: The CHAOS Report (1994), Standish Group mple_research/chaos_1994_1.php 2002, J. Hofstetter 6

7 Introduction Risks: The Basic Problems Schedule slips - Project not ready for another 6 months. Project canceled after numerous slips. System goes sour - successfully put into production, but after a couple of years the cost of making changes rises to much. Defect rate to high - System isn t used. Business misunderstood - Software doesn t solve the business problem that was originally posed. Business changes. False features - System has a lot of interesting features, but none of which makes the customer much money. Adapted from: Extreme Programming explained, by kent Beck 2002, J. Hofstetter 7

8 Introduction What makes a project successful? Importance User Involvement Executive Support Clear Business Objectives Experienced Project Manager Small Milestones Firm Basic Requirements Competent staff Proper Planning Source: The CHAOS Report, Standish Group 2002, J. Hofstetter 8

9 Introduction The 4 Project Variables Target: 100% Actual: 100% Capability, Scope Target : 4 defects/kloc Actual: 1 defect/kloc Costs this project Quality Target : $70K Actual: $90K Duration, Time Target : 30 wks Actual: 20 wks Adapted from Software Engineering: An Object-Oriented Perspective by Eric J. Braude. 2002, J. Hofstetter 9

10 Introduction SW-Quality Function Efficiency Reliability User View Usability Quality Security Expandability Maintainability Portability Reusability Developer View 2002, J. Hofstetter 10

11 Process What is a Software Process? The way we produce software... Technical Methods, Models, Notations (UML) Management: Planning, Control Process-rules, Order of development activities, Life-cycle models 2002, J. Hofstetter 11

12 Process Software Process Activities Workers, Roles Who is doing What, How and When? Artifacts (Doumnets, SW-product, Models) Workflow, Phase 2002, J. Hofstetter 12

13 Main Workflows Main Workflows Software Production Requirements: Requirements-Elicitation + -Analysis Design: Architecture+Detail-Design Implementation Test Deployment Project Management Quality Management Configuration Management See also: SWEBOK Software Engineering Body of Knowledge , J. Hofstetter 13

14 Main Workflows Requirements Problem Space Needs Solution Space Features Software-Specifications System-Requirements, Customer-Requirements, (DIN: Lastenheft) Developer-Requirements, (DIN: Pflichtenheft) 2002, J. Hofstetter 14

15 Main Workflows Types of Requirements Functional requirements the application's functionality Non-functional requirements Performance speed capacity (traffic rates) memory usage Reliability and availability Error handling Inverse requirements: what the application does not do 2002, J. Hofstetter 15

16 Main Workflows Design Req. System-Design Architecture, System Design, Highlevel Design Detail-Design Object Design 2002, J. Hofstetter 16

17 Technical methods IEEE-Documents (IEEE Nr.) Quality assurance (730) Configuration (828) Project status (1058) Requirements (830) Design (1016) Code Testing (829) Operation Customeroriented Developeroriented Architecture Detailed Design SQAP software quality assurance plan SCMP software configuration management plan SPMP software project management plan SRS software requirements specifications SDD software design document Source Code STD software test documention User s manual 2002, J. Hofstetter 17

18 Life-cycle Models Waterfall Model Requirem. Specification (Use Case + Text) Design... UML Diagram + Text... Code + Comment Implementation... Whole Code Integration... Test Report, Error-List Test Milestone 2002, J. Hofstetter 18

19 Life-cycle Models Spiral Model Step n+1: Design Specification Step n: Requirements Models System Test-Results Step n+2: Implementation Code Step n+3: Testing 2002, J. Hofstetter 19

20 Life-cycle Models Iterative Development -> cyclic iterations of workflows. R R R D I T D D I T D D I T D Iteration 1 Iteration 2 Iteration 3 Zeit Milestone 2002, J. Hofstetter 20

21 Life-cycle Models Incremental Development -> iterative & incremental! Functionality of runtime system Build Iteration 1 Iteration 2 Iteration 3 Time Milestone 2002, J. Hofstetter 21

22 Life-cycle Models Some dangerous Iteration-Patterns Teams not synchronized -> Chaos! First Iteration to long -> Panic! Overlapping iterations 2002, J. Hofstetter 22

23 Module 2: Concrete Processes - Rational Unified Process (RUP) - V-Model - Extreme Programming (XP) - Feature Driven Design (FDD) 2002, J. Hofstetter 23

24 RUP Rational Unified Process (RUP) Iterative, incremental Process A Product:Implementing the Rational Unified Process Developed by the company that defined UML Architecture centric Interactive knowledge base accessible from tools Guidelines, templates, tool mentors at your finger tips Manage Requirements Develop Iteratively Model Visually Verify Quality Use Component Architectures Control Changes 2002, J. Hofstetter 24

25 RUP RUP: Phases Inception Elaboration Construction Transition Lifecycle objectives milestone Lifecycle architecture milestone Initial operational capability milestone time Product release milestone The Rational Unified Process has four phases: Inception - Define the scope of project Elaboration - Plan project, specify features, baseline architecture Construction - Build the product Transition - Transition the product into end user community 2002, J. Hofstetter 25

26 RUP RUP: Iterations and Phases Releases Inception Elaboration Construction Transition Preliminary Iteration Architect. Iteration Architect. Iteration Devel. Iteration Devel. Iteration Devel. Iteration Transition Iteration Transition Iteration An iteration is a distinct sequence of activities with an established plan and evaluation criteria, resulting in an executable release (internal or external). Adapted from: RUP 2002, J. Hofstetter 26

27 RUP Bringing It All Together... Process Workflows Supporting Workflows Adapted from: RUP Business Modeling Requirements Analysis & Design Implementation Test Deployment Configuration Mgmt Management Environment Inception Preliminary Iteration(s) Phases Elaboration Iter. #1 Iter. #2 Iter. #n Iter. #n+1 Iterations Iter. #n+2 Iter. #m In an iteration, you walk through all workflows Construction Transition Iter. #m , J. Hofstetter 27

28 RUP RUP Overview Widely used in (western) industry Much of literature Document centric, heavy-weight process Product available Not based on metrics Tailoring possible / needed 2002, J. Hofstetter 28

29 XP Extreme Programming (XP) 2002, J. Hofstetter 29

30 XP What is XP? Early, continuing feedback from short cycles Incremental planning approach Flexible schedule for changing business needs. Automated tests written by programmers Reliance on oral communication, tests and source code. Evolutionary design (keep it simple, refactoring) 2002, J. Hofstetter 30

31 XP XP Practices The Planning Game... Small Releases... Metaphor... Simple Design... Testing... Refactoring... Pair Programming... Collective Ownership of Code... Continuous Integration... On-site Customer hour Week Coding Standards 2002, J. Hofstetter 31

32 XP User Stories Get the customers to tell stories about how the system will work. Write them on cards Organize topics Classify High, Medium, Low priority Associated Functional Test 2002, J. Hofstetter 32

33 XP User Stories: FAQ s How many stories do I need? For a typical project of 6-12 months, stories would be a good number. How big should a story be? A story should take 1-3 weeks to implement (in engineering time). 2002, J. Hofstetter 33

34 XP User Stories: Tips User stories should only provide enough detail to make a reasonably low risk estimate of how long the story will take to implement. When the time comes to implement the story developers will go to the customer and receive a detailed description of the requirements face to face. Possible in your project? 2002, J. Hofstetter 34

35 XP Metaphor The Internet is like air-traffic control, with allpowerful master controllers observing everything, telling each packet where to go. The Internet is like spiders crawling on a web - when one way is blocked, they just go another way, always trying to get to their goal. Architecture! 2002, J. Hofstetter 35

36 XP Simple Design The right design for the software is one that Runs all the tests Has no duplicated logic. States every intention important to the programmers. Has the fewest possible classes and methods Not Most hooks Most abstract Designed for the ages 2002, J. Hofstetter 36

37 XP Refactoring Before adding - is there a way to change the program to make the addition simple? After adding - is there a way to make the program simpler while still running all the tests? Don t refactor on spec; refactor when the system and process ask you to. 2002, J. Hofstetter 37

38 XP Testing Any program feature without an automatic test simply does not exist. Unit tests make confidence in the operation of the program part of the program. Owned by developers For all classes Functional tests do the same for customers. Owned by customer Test every story 2002, J. Hofstetter 38

39 XP Pair Programming All production code is written with two people looking at one machine, with one keyboard and one mouse. One partner (with keyboard and mouse) is thinking about the best to implement this method. Other partner is thinking more strategically: Will this working? What other tests might not work? How can we make this simpler? 2002, J. Hofstetter 39

40 XP Collective Code Ownership Don t coordinate, just do it; integrate frequently. (Continuous Integration) Anybody who sees an opportunity to add value to any portion of the code is required to do so at any time. Subject to the current requirements, Subject to simple design. Everyone is responsible for the whole of the system. Possible in small project-groups...! 2002, J. Hofstetter 40

41 XP On-Site Customer A real customer must sit with the team, available to answer questions, resolve disputes, and set small-scale priorities. Can t afford a customer? If the system isn t worth the time of one customer, maybe it s not worth building. What if you make a mass product (e.g. vehicle brake system)? 2002, J. Hofstetter 41

42 XP Development Simplified Developers Break story into small tasks Select the task they wish to work on to implement a task Write tests for the task Write the code for the task Refactor to clean up design Integrate task into code base 2002, J. Hofstetter 42

43 XP Planning Game Customer writes user stories for the product. A User story is a short description of the behavior of the product. Customer ranks stories by importance Developers estimate development time per story Using customer ranks & developers estimates, the stories for next iteration are selected 2002, J. Hofstetter 43

44 XP Release Plan The release plan specifies exactly which user stories are going to be implemented for each system release. The team, in concert, estimates all stories, in terms of Engineering Weeks Estimate resources, estimate velocity Arrange into two- or three-week iterations 2002, J. Hofstetter 44

45 XP XP Project 2002, J. Hofstetter 45

46 XP XP Overview Low process overhead. Ideal for changing business needs. Some concepts (e.g. pair programming) can t be applied in every project. Not well suited for big projects. XP-discussion brings new pragmatism in the process discussion. 2002, J. Hofstetter 46

47 FDD Feature-Driven Development (FDD) 2002, J. Hofstetter 47

48 FDD FDD Is highly iterative Delivers frequent working results Provides accurate and meaningful progress and status information with the minimum of overhead and disruption for the developers. Is liked by clients, managers and developers 2002, J. Hofstetter 48

49 FDD FDD and Its Five Parts 1 Develop overall Model 2 Build a Feature List 3 Plan by Feature 4 Design by Feature 5 Build by Feature 2002, J. Hofstetter 49

50 FDD 1. Develop an Overall Model Form the modeling team Conduct a domain walkthrough, study documents Develop model(s) Refine the overall object model Write model notes Domain Object Modeling(=Analysis Model): Identification of the major classes, important responsibilities and relations between them High-Level Sequence diagrams Notes 2002, J. Hofstetter 50

51 FDD 2. Build a Features List Form the features-list team Identify features Form features sets Prioritize feature sets and features Divide complex features Inspect; log action items 1 Develop overall Model 2 Build a Feature List 3 Plan by Feature 4 Design by Feature 5 Build by Feature 2002, J. Hofstetter 51

52 FDD Features: Features are functional Features are small (they can be designed and build in 2 weeks or less) Features are client valued Features use a template <action> <result> <object> 2002, J. Hofstetter 52

53 FDD 3. Plan by Feature Form the planning team Sequence feature sets and features Assign feature sets and features to chief programmers Assign classes to class owners Inspect; log action items 1 Develop overall Model 2 Build a Feature List 3 Plan by Feature 4 Design by Feature 5 Build by Feature 2002, J. Hofstetter 53

54 FDD 4. Design by Feature (DBF) Form a Feature Team -> chief programmer: identifies the involved classes and responsible developers for this set of features. Start a new work package for this set of features Feature teams are formed from class owners as needed. Conduct a domain walkthrough,study referenced docs 2002, J. Hofstetter 54

55 FDD Design by Feature (DBF), cont. Develop sequence diagrams: for each feature being designed Write up: design decisions, requirements clarification, design alternatives. Refine object model, write class and method prologue Design Inspection 1 Develop overall Model 2 Build a Feature List 3 Plan by Feature 4 Design by Feature 5 Build by Feature 2002, J. Hofstetter 55

56 FDD 5. Build by Feature (BBF) Implement classes Implement unit tests Implement methods Inspect Code; log action items Unit test Check in and promote to build (integration) 1 Develop overall Model 2 Build a Feature List 3 Plan by Feature 4 Design by Feature 5 Build by Feature 2002, J. Hofstetter 56

57 FDD Percentages components Develop an overall Model Build a Feature List Plan by Feature Design by Feature Build by Feature 10 % initial 4 % on-going 4 % initial 1 % on-going 2 % initial 2 % on-going 77 % Cycletimes every two weeks 2002, J. Hofstetter 57

58 FDD FDD Overview Low process overhead Ideal for changing business needs Pragmatic process Simple concept for documentation Not very well known 2002, J. Hofstetter 58

59 V-Model V-Model Development Standard for IT-Systems of the Federal Republic of Germany Document-centric process Tailoring possible Waterfall and iterative 2002, J. Hofstetter 59

60 V-Model The three levels of standardization Configuration Management Qua lity Assura nc e Syste m De v e lo p m e n t Project Management Procedure Methods Tool Requirements Procedure: What has be done Methods: How is something done Tools: What is to be used for something 2002, J. Hofstetter 60

61 V-Model System Development Submodel System Development SD 1 System Requirements Analysis SD 2 System Design SD 3 SW/HW Requirements Analysis Products on System Level: User Requirements System Architecture Technical Requirements Interface Description SD 4-SW to SD 7-SW Software Development SD 4-HW to SD 7-HW Hardware Development SD 8 System Integration Upgrade Techn. Req. with regard to SW-Units SD 9 Transition to Utilization System Development Submodel 2002, J. Hofstetter 61

62 V-Model SD4-SD7 SD 4-SW Preliminary SW Design SD 4.1-SW SW Architecture Design ->Interface Overview SD 4.2-SW Design of Internal and External SW Interfaces -> Interface Description SD 4.3-SW Specification of SW Integration ->Integration Plan SD 5-SW Detailed SW Design SD 5.1-SW Description of SW Component/Module/Database SD 5.2-SW Analysis of Resources and Time Requirements -> SW Design SD 6-SW SW Implementation SD 7-SW SW Integration 2002, J. Hofstetter 62

63 V-Model Example: SD 4.1 SW Architecture Design Product Flow from to Activity State Product Activity State SD 1 accepted User Requirements SD 2 accepted System Architecture SD 3 accepted Technical Requirements SD 2 b. proc. Interface Overview SD 4.2-SW, SD 5- SW, CM 4.3 submitted SD 3 b. proc. Operational Information SD 4.3-SW b. proc. SW Architecture SD 4.2-SW, SD 4.3- SW, SD 5-SW submitted 2002, J. Hofstetter 63

64 V-Model V-Model System Requirements Analysis Transition System Design System Integration SW/HW Req. Analysis SW Integration Preliminary SW Design Detailed SW Design SW Implementation 2002, J. Hofstetter 64

65 V-Model V-Model Overview Generic model, tailoring possible/needed Very formalistic process Heavyweight process Good documentation available ls loosing importance against RUP, XP 2002, J. Hofstetter 65

66 Module 3: - Agile and Lightweight Processes, - Process Improvement, - Conclusions 2002, J. Hofstetter 66

67 Agile Lightweight Processes Not document centric. Documents have value only, as they help the team to be successful. Small resources needed. Work is source (1) centric. Individuals are important. Short iteration phases. 2002, J. Hofstetter 67

68 Agile Manifesto for Agile Software Development We are uncovering better ways of developing software by doing it and helping others 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 Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas , J. Hofstetter 68

69 Agile Agile Software Development Principles Early and continuous delivery of valuable software. Welcome changing requirements, even late in development. Business people and developers must work together. Build projects around motivated individuals (Support, Trust) Most efficient team-information: face-to-face conversation. Working software is the primary measure of progress. Continuous attention to technical excellence and good design. Simplicity--the art of maximizing the amount of work not done The best architectures, requirements, and designs emerge from self-organizing teams. 2002, J. Hofstetter 69

70 Conclusions No silver bullet! There is no process for every project, that solves all your problems without customization and own thinking! Never do anything that's a waste of time! You may get dirty hands - Enjoy it! Warning! A fool with a tool is just a fool! If somebody has learned to use a hammer, everything becomes a nail (Booch) 2002, J. Hofstetter 70

71 Conclusions Process Tailoring There is not a single process guide for every possible project! But there are some generic process models. We have to tailor these process models to our special needs. We eliminate the not needed parts and keep the needed parts. 2002, J. Hofstetter 71

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

Ingegneria del Software Corso di Laurea in Informatica per il Management. Agile software development Ingegneria del Software Corso di Laurea in Informatica per il Management Agile software development Davide Rossi Dipartimento di Informatica Università di Bologna The problem Efficiency: too much effort

More information

Introduction to Agile Software Development. EECS 690 Agile Software Development

Introduction to Agile Software Development. EECS 690 Agile Software Development Introduction to Agile Software Development EECS 690 Agile Software Development Agenda Research Consent Forms Problem with Software Engineering Motivation for Agile Methods Agile Manifesto Principles into

More information

History of Agile Methods

History of Agile Methods Agile Development Methods: Philosophy and Practice CPSC 315 Programming Studio Fall 2010 History of Agile Methods Particularly in 1990s, some developers reacted against traditional heavyweight software

More information

Agile QA s Revolutionary Impact on Project Management

Agile QA s Revolutionary Impact on Project Management Agile QA s Revolutionary Impact on Project Management Introduction & Agenda Rachele Maurer Agile Coach, Platinum Edge Inc. PMP, CSM, PMI-ACP Agenda A quick overview of agile Current QA practices QA using

More information

Abstract. Heavy vs Light Methodologies: Bulimic or Anorexic? Fernando Brito e Abreu FCT/UNL

Abstract. Heavy vs Light Methodologies: Bulimic or Anorexic? Fernando Brito e Abreu FCT/UNL Heavy vs Light Methodologies: Bulimic or Anorexic? Fernando Brito e Abreu FCT/UNL ISCTE, 15 April 2005 Abstract 2 From anorexic to bulimic Overview of heavy-weight methodologies Origins of light-weight

More information

Agile in Financial Services A Framework in Focus

Agile in Financial Services A Framework in Focus Agile in Financial Services A Framework in Focus John B. Hudson, B.Sc, PMP, CSM PMI NJ Chapter February 19, 2013 19 Feb 2013 1 Objectives 1. Agile Development an Overview 2. The Agile Enterprise Infrastructure

More information

D25-2. Agile and Scrum Introduction

D25-2. Agile and Scrum Introduction D25-2 Agile and Scrum Introduction How to Use this Download This download is an overview of a discussion Intertech has with clients on Agile/Scrum This download has an overview of Agile, an overview of

More information

Agile Software Development with Scrum. Jeff Sutherland Gabrielle Benefield

Agile Software Development with Scrum. Jeff Sutherland Gabrielle Benefield Agile Software Development with Scrum Jeff Sutherland Gabrielle Benefield Agenda Introduction Overview of Methodologies Exercise; empirical learning Agile Manifesto Agile Values History of Scrum Exercise:

More information

SAFETY & RESILIENCE ISSUES IN AUTOMOTIVE SOFTWARE DEVELOPMENT PANEL

SAFETY & RESILIENCE ISSUES IN AUTOMOTIVE SOFTWARE DEVELOPMENT PANEL SAFETY & RESILIENCE ISSUES IN AUTOMOTIVE SOFTWARE DEVELOPMENT PANEL 1 Safety Panel when 26262 will be issued, enforced? What about 61508? by whom, which authorities? who and how will verify conformance?

More information

INF5120 Modellbasert Systemutvikling

INF5120 Modellbasert Systemutvikling INF5120 Modellbasert Systemutvikling Forelesning 17.03.2005 Agile Methods & Architecture QVT ATL, MOF2Txt Arne-Jørgen Berre 1 INF5120 - Forelesninger - 2005 M: MDA, T: Eclipse, IBM tool, C: COMET, U: U

More information

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

Digital Transformation of the Enterprise for SMAC: Can Scrum help? Digital Transformation of the Enterprise for SMAC: Can Scrum help? Scope of this Report October 2015 In this paper, we consider the impact of the digital transformation on software development and whether

More information

Software Engineering

Software Engineering 1 Software Engineering Lecture 2: Software Life Cycles Stefan Hallerstede Århus School of Engineering 25 August 2011 2 Contents Naive Software Development Code & Fix Towards A Software Process Software

More information

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

Agile Project Management: Adapting project behaviors to the software development environment Agile Project Management: Adapting project behaviors to the software development environment with Bill Doescher, PMP, CSM PrincipalConsultant and Product Development Director Business Management Consultants

More information

Extreme Programming, an agile software development process

Extreme Programming, an agile software development process Extreme Programming, an agile software development process Nigel Goddard School of Informatics University of Edinburgh Recall: Waterfall and Spiral Models Waterfall: Spiral: Split project into controlled

More information

PMP vs. Scrum Master

PMP vs. Scrum Master PMP vs. Scrum Master Compatible or Incompatible? Presented by: Karen Little, PMP, CSM, CBAP, ITIL, MCP, MBA Copyright 2007 by Karen Little 1 Agenda Introductions Background on Agile and SCRUM Methodologies

More information

Agile Project Management Jim Highsmith. Chapter 1. The Agile Revolution

Agile Project Management Jim Highsmith. Chapter 1. The Agile Revolution Agile Project Management Jim Highsmith Chapter 1 The Agile Revolution Ultimate customer value is delivered at the point-of-sale, not the point-of-plan The key opportunity, uncertainty, and risk resides

More information

Scrum and Agile methods The real world

Scrum and Agile methods The real world Scrum and Agile methods The real world Claus Nyhus Christensen cnc@atira.dk Atira About me Master in CS from AAU 2001 2001-2004: Worked at Trifork as a kernel developer of a Java EE server 2004-2007: Worked

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 Waterfall: Spiral: Split project into controlled

More information

Software Engineering Process Economy & Quality

Software Engineering Process Economy & Quality Project delivery: Progress report Software Engineering Process Economy & Quality ETSF 01 http://cs.lth.se/etsf01 The SPA reports you RECEIVED Your actions on received feedback Excel format preferred Lecture

More information

Agile Project Management

Agile Project Management Agile Project Management with Bill Doescher, PMP, MBA, CSM Pi Principal i lconsultant tand Product tdevelopment tdirector Bill Doescher, PMP, CSM Bill Doescher is a Principal Consultant and Product Development

More information

SWEN - Software Engineering Network Donnerstag 06. Mai. 2010

SWEN - Software Engineering Network Donnerstag 06. Mai. 2010 SWEN - Software Engineering Network Donnerstag 06. Mai. 2010 Agile Requirements Engineering Blaise Rey-Mermet, EVOCEAN GmbH, 2010 My background Executive Roles Dept. Head - Requirements Management & Engineering

More information

Agile processes. Extreme Programming, an agile software development process. Extreme Programming. Risk: The Basic Problem

Agile processes. Extreme Programming, an agile software development process. Extreme Programming. Risk: The Basic Problem Agile processes Extreme Programming, an agile software development process Perdita Stevens School of Informatics University of Edinburgh What the spiral models were reaching towards was that software development

More information

Agility? What for? And how? > Warm-up Session Agile Tour Vienna 2014

Agility? What for? And how? > Warm-up Session Agile Tour Vienna 2014 Agility? What for? And how? > Warm-up Session Agile Tour Vienna 2014 Agenda Agile Software Development: reasons & goals Scrum in a nutshell Kanban in a nutshell Agility: prerequisites, limits and corporate

More information

Scrum for Managers, Zurich March 2010

Scrum for Managers, Zurich March 2010 Scrum for Managers Microsoft Corporation / TechTalk Zurich Switzerland March 2010 About Mitch Lacey Mitch Lacey 13+ years of program and project management experience Microsoft Program Manager 2001 2006

More information

Agile processes. Extreme Programming, an agile software development process

Agile processes. Extreme Programming, an agile software development process Agile processes Extreme Programming, an agile software development process Nigel Goddard School of Informatics University of Edinburgh What the spiral models were reaching towards was that software development

More information

Software Life Cycles and Configuration Management

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

More information

3C05: Unified Software Development Process

3C05: Unified Software Development Process 3C05: Unified Software Development Process 1 Unit 5: Unified Software Development Process Objectives: Introduce the main concepts of iterative and incremental development Discuss the main USDP phases 2

More information

CSSE 372 Software Project Management: More Agile Project Management

CSSE 372 Software Project Management: More Agile Project Management CSSE 372 Software Project Management: More Agile Project Management Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu Learning Outcomes: Plan Create a plan for

More information

Agile & the Declaration of Interdependence: A new approach to Process Improvement www.davidconsultinggroup.com

Agile & the Declaration of Interdependence: A new approach to Process Improvement www.davidconsultinggroup.com by Michael Harris ARTICLE There has been much said and written about the mythical conflict between the values and principles of the Manifesto for Agile Software Development 1 (http://agilemanifesto.org/)

More information

Agile project management is a style of project management that focuses

Agile project management is a style of project management that focuses Chapter 1 Modernizing Project Management In This Chapter Understanding why project management needs to change Finding out about agile project management Agile project management is a style of project management

More information

Distributed Agile Development. Bapiraju Nandury Product Development Manager Bangalore Development Centre

Distributed Agile Development. Bapiraju Nandury Product Development Manager Bangalore Development Centre Distributed Agile Development Bapiraju Nandury Product Development Manager Bangalore Development Centre Agenda Distributed / offshore Development Agile Methods Distributed Agile Development Goals of this

More information

Agile and Secure: Can We Be Both?

Agile and Secure: Can We Be Both? Agile and Secure: Can We Be Both? OWASP AppSec Seattle Oct 2006 Keith Landrus Director of Technology Denim Group Ltd. keith.landrus@denimgroup.com (210) 572-4400 Copyright 2006 - The OWASP Foundation Permission

More information

Modelling in an Agile World

Modelling in an Agile World Modelling in an Agile World John Daniels Fastnloose Limited www.fastnloose.com John Daniels Co-founder of Fastnloose Ltd Software development by dispersed teams Co-author of UML Components & Designing

More information

Incorporating Agile Methods in Large-Scale Systems

Incorporating Agile Methods in Large-Scale Systems Incorporating Agile Methods in Large-Scale Systems April 30, 2011 Why would a large-scale software development company want to be agile? Agile methods aim to counter the tremendous costs with changes late

More information

Software processes that are:

Software processes that are: Agile Processes Software processes that are: Incremental (small software releases with rapid cycles) Cooperative (customer and developer working together with close communication) Straightforward (method

More information

Agile with XP and Scrum

Agile with XP and Scrum Agile with XP and Scrum Amit Goel National Agile Software Workshop @ Indore Agile India Conference Agile Software Community of India Disclaimer and Credits Most of material in this presentation has been

More information

Agile Software Development in the Large

Agile Software Development in the Large Agile Software Development in the Large GI-Vortrag Braunschweig Jutta Eckstein Nicolai Josuttis What Does Large Mean? Large in... scope time people money risks We focus on Large Teams which implies everything

More information

Family: Iterative Enhancement Origin: Ivar Jacobson, James Rumbaugh, Grady Booch, 1996 Defines process framework that is adaptable to

Family: Iterative Enhancement Origin: Ivar Jacobson, James Rumbaugh, Grady Booch, 1996 Defines process framework that is adaptable to Unified Process Family: Iterative Enhancement Origin: Ivar Jacobson, James Rumbaugh, Grady Booch, 1996 Defines process framework that is adaptable to various application domains different organizations

More information

Development Methodologies

Development Methodologies Slide 3.1 Development Methodologies Prof. Dr. Josef M. Joller jjoller@hsr.ch Development Methodologies Prof. Dr. Josef M. Joller 1 Session 3 Slide 3.2 SOFTWARE LIFE-CYCLE MODELS Development Methodologies

More information

CSSE 372 Software Project Management: Managing Agile Projects

CSSE 372 Software Project Management: Managing Agile Projects CSSE 372 Software Project Management: Managing Agile Projects Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu XKCD Reference Learning Outcomes: Plan Create a plan

More information

Software Development Life Cycle (SDLC)

Software Development Life Cycle (SDLC) Software Development Life Cycle (SDLC) Supriyo Bhattacharjee MOF Capability Maturity Model (CMM) A bench-mark for measuring the maturity of an organization s software process CMM defines 5 levels of process

More information

SOFTWARE PROCESS MODELS

SOFTWARE PROCESS MODELS SOFTWARE PROCESS MODELS Slide 1 Software Process Models Process model (Life-cycle model) - steps through which the product progresses Requirements phase Specification phase Design phase Implementation

More information

XP & Scrum. extreme Programming. XP Roles, cont!d. XP Roles. Functional Tests. project stays on course. about the stories

XP & Scrum. extreme Programming. XP Roles, cont!d. XP Roles. Functional Tests. project stays on course. about the stories XP & Scrum Beatrice Åkerblom beatrice@dsv.su.se extreme Programming XP Roles XP Roles, cont!d! Customer ~ Writes User Stories and specifies Functional Tests ~ Sets priorities, explains stories ~ May or

More information

Applying Agile Methods in Rapidly Changing Environments

Applying Agile Methods in Rapidly Changing Environments Applying Agile Methods in Changing Environments 7/23/2002 1 Applying Agile Methods in Rapidly Changing Environments Peter Kutschera IBM Unternehmensberatung GmbH Am Fichtenberg 1, D-71803 Herrenberg Steffen

More information

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

What Does Large Mean? Copyright 2003 by N. Josuttis and J. Eckstein 3. Why is Large an Issue? Skalierung von agilen Prozessen Ein Erfahrungsbericht OOP 2003 Jutta Eckstein Nicolai Josuttis This Talk is About Agility Large Experience Success Copyright 2003 by N. Josuttis and J. Eckstein 2 1 What

More information

Plan-Driven Methodologies

Plan-Driven Methodologies Plan-Driven Methodologies The traditional way to develop software Based on system engineering and quality disciplines (process improvement) Standards developed from DoD & industry to make process fit a

More information

Agile Processes. -- Heinrich Heine

Agile Processes. -- Heinrich Heine 1 Agile Processes The weather-cock on the church spire, though made of iron, would soon be broken by the storm-wind if it did not understand the noble art of turning to every wind. -- Heinrich Heine Many

More information

Agile Execution for and Beyond IT

Agile Execution for and Beyond IT Agile Execution for and Beyond IT Fred Koos, PE, PMP, CSM, Pittsburgh PMI VP of Education 31 December 2013 This is an enhanced version of the information presented in the last session at the 11/6/13 Pittsburgh

More information

Chap 1. Introduction to Software Architecture

Chap 1. Introduction to Software Architecture Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)

More information

Agile to the Bone. Introduction to Agile by Pietari Kettunen

Agile to the Bone. Introduction to Agile by Pietari Kettunen Agile to the Bone Introduction to Agile by Pietari Kettunen Agenda Problem with traditional software engineering Why Agile is the solution? Roots of Agile Values of Agile Common implementations Scrum Kanban

More information

Génie Logiciel et Gestion de Projets. Software Processes Focus on Extreme Programming

Génie Logiciel et Gestion de Projets. Software Processes Focus on Extreme Programming Génie Logiciel et Gestion de Projets Software Processes Focus on Extreme Programming 1 Roadmap Process, Method, Methodology?? What is a software process? Software Process Models Documentation Methodologies:

More information

RUP and XP, Part I: Finding Common Ground

RUP and XP, Part I: Finding Common Ground RUP and XP, Part I: Finding Common Ground by Gary Pollice Evangelist, The Rational Unified Process Rational Software extreme Programming (XP) is hot! Attend any software development conference today and

More information

WHITEPAPER GET MORE WORK DONE: A MANAGER S GUIDE TO MIXING AGILE AND WATERFALL

WHITEPAPER GET MORE WORK DONE: A MANAGER S GUIDE TO MIXING AGILE AND WATERFALL WHITEPAPER GET MORE WORK DONE: A MANAGER S GUIDE TO MIXING AGILE AND WATERFALL Project management is shifting. Teams that were siloed before are now asked to work together to ease reporting pains and increase

More information

On the Agile Development of Virtual Reality Systems

On the Agile Development of Virtual Reality Systems 10 Int'l Conf. Software Eng. Research and Practice SERP'15 On the Agile Development of Virtual Reality Systems F. Mattioli 1, D. Caetano 1, A. Cardoso 1, and E. Lamounier 1 1 Faculty of Electrical Engineering,

More information

Introduction. Motivational Principles. An Introduction to extreme Programming. Jonathan I. Maletic, Ph.D.

Introduction. Motivational Principles. An Introduction to extreme Programming. Jonathan I. Maletic, Ph.D. An Introduction to extreme Programming Jonathan I. Maletic, Ph.D. Department of Computer Science Kent State University Introduction Extreme Programming (XP) is a (very) lightweight incremental software

More information

Introduction to Agile Software Development

Introduction to Agile Software Development Introduction to Agile Software Development Word Association Write down the first word or phrase that pops in your head when you hear: Extreme Programming (XP) Team (or Personal) Software Process (TSP/PSP)

More information

In the IEEE Standard Glossary of Software Engineering Terminology the Software Life Cycle is:

In the IEEE Standard Glossary of Software Engineering Terminology the Software Life Cycle is: In the IEEE Standard Glossary of Software Engineering Terminology the Software Life Cycle is: The period of time that starts when a software product is conceived and ends when the product is no longer

More information

Agile Unified Process

Agile Unified Process INTERNATIONAL JOURNAL OF COMPUTER SCIENCE AND MOBILE APPLICATIONS - IJCSMA Agile Unified Process Charles Edeki Ph.D, American Intercontinental University, Department of Information Technology, 160 Parkside

More information

The Agile Manifesto August 2001

The Agile Manifesto August 2001 The Agile Manifesto August 2001 Facilitating change is more effective than attempting to prevent it. Learn to trust in your ability to respond to unpredictable events; it's more important than trusting

More information

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

Software Development Life Cycle Models - Process Models. Week 2, Session 1 Software Development Life Cycle Models - Process Models Week 2, Session 1 PROCESS MODELS Many life cycle models have been proposed } Traditional Models (plan-driven) } Classical waterfall model } Iterative

More information

Quality Assurance Software Development Processes

Quality Assurance Software Development Processes Quality Assurance Software Development Processes Part II - Lecture 3 1 The University of Auckland New Zealand 254 12/09/ /2012 The FBI Virtual Case File 254 12/09/ /2012 Database application developed

More information

A Capability Maturity Model (CMM)

A Capability Maturity Model (CMM) Software Development Life Cycle (SDLC) and Development Methods There are some enterprises in which a careful disorderliness is the true method. Herman Melville Capability Maturity Model (CMM) A Capability

More information

Introduction to Agile Software Development Process. Software Development Life Cycles

Introduction to Agile Software Development Process. Software Development Life Cycles Introduction to Agile Software Development Process Presenter: Soontarin W. (Senior Software Process Specialist) Date: 24 November 2010 AGENDA Software Development Life Cycles Waterfall Model Iterative

More information

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of

More information

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

AGILE SOFTWARE DEVELOPMENT: INTRODUCTION, CURRENT STATUS & FUTURE Pekka Abrahamsson 23.11.2005 Jyväskylä AGILE SOFTWARE DEVELOPMENT: INTRODUCTION, CURRENT STATUS & FUTURE Pekka Abrahamsson 23.11.2005 Jyväskylä Fact corner: SME of 250 developers Mobile & desktop sw Products sold globally EXAMPLE OF AN INNOVATIVE

More information

I219 Software Design Methodology

I219 Software Design Methodology I219 Software Design Methodology JAIST Master s Program Fall 2014 Nguyen Van Vu nvu@fit.hcmus.edu.vn Topics Course Introduction Objectives and Scope Evaluation Policies Content and Schedule Basic Concepts

More information

Classical Software Life Cycle Models

Classical Software Life Cycle Models Classical Software Life Cycle Models SWEN 301 Trimester 1, 2015 Lecturer: Dr Hui Ma Engineering and Computer Science Lecture slides make use of material provided on the textbook's companion website Motivation

More information

Part 3 Overview. People and Projects. Where it starts. Project Failure Rates. Part III. Verteilte Web-basierte Systeme.

Part 3 Overview. People and Projects. Where it starts. Project Failure Rates. Part III. Verteilte Web-basierte Systeme. Verteilte Web-basierte Systeme SS 2006 Verteilte Web-basierte Systeme SS 2006 Verteilte Web-basierte Systeme Dr.-Ing. Martin Gaedke Universität Karlsruhe (TH) Part III Aspects of the Life-Cycle Part 3

More information

Object Oriented Hybrid Software Engineering Process (SEP) model for Small Scale Software Development Firms

Object Oriented Hybrid Software Engineering Process (SEP) model for Small Scale Software Development Firms Object Oriented Hybrid Software Engineering Process (SEP) model for Small Scale Software Development Firms Shaikh Mostafa Al Masum mostafa@miv.t.u-tokyo.ac.jp Research Student, Ishizuka Lab, University

More information

Software Development Process and Activities. CS 490MT/5555, Fall 2015, Yongjie Zheng

Software Development Process and Activities. CS 490MT/5555, Fall 2015, Yongjie Zheng Software Development Process and Activities CS 490MT/5555, Fall 2015, Yongjie Zheng Software Process } A set of activities that leads to the production of a software product } What product we should work

More information

USAGE OF KANBAN METHODOLOGY AT SOFTWARE DEVELOPMENT TEAMS

USAGE OF KANBAN METHODOLOGY AT SOFTWARE DEVELOPMENT TEAMS Journal of Applied Economics and Business USAGE OF KANBAN METHODOLOGY AT SOFTWARE DEVELOPMENT TEAMS Nevenka Kirovska 1, Saso Koceski 2 Faculty of Computer Science, University Goce Delchev, Stip, Macedonia

More information

Moonzoo Kim CS Division of EECS Dept. KAIST

Moonzoo Kim CS Division of EECS Dept. KAIST Chapter 4 Agile Development Moonzoo Kim CS Division of EECS Dept. KAIST 1 Ex. UP Work Products Inception phase Vision document Init ial use-case model Init ial project glossary Init ial business case Init

More information

XP and TDD. Extreme Programming and Test Driven Development. Bertrand Meyer, Manuel Oriol Andreas Leitner. Chair of Software Engineering ETH Zurich

XP and TDD. Extreme Programming and Test Driven Development. Bertrand Meyer, Manuel Oriol Andreas Leitner. Chair of Software Engineering ETH Zurich XP and TDD Extreme Programming and Test Driven Development Bertrand Meyer, Manuel Oriol Andreas Leitner ETH Zurich October 27, 2006 Outline Development Processes Overview Extreme Programming Test Driven

More information

Laboratório de Desenvolvimento de Software

Laboratório de Desenvolvimento de Software Laboratório de Desenvolvimento de Software FEUP/MIEIC, 2015/16 Ademar Aguiar Nuno Flores Rui Maranhão Hugo Ferreira Luís Teixeira url: moodle http://www.facebook.com/notes/facebook-engineering/visualizing-friendships/469716398919

More information

STATE OF MICHIGAN SUITE

STATE OF MICHIGAN SUITE STATE OF MICHIGAN SUITE Agile Process Guide Another Companion to the Systems Engineering Methodology (SEM) of the State Unified Information Technology Environment (SUITE) Michigan Department of Technology,

More information

Using Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca

Using Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca Using Simulation to teach project management skills Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca Agenda of the workshop 1 The software project management theory overview (40 minutes) 2 Why use SDLC

More information

Experiences of Using Extreme Programming to Support a Legacy Information System Migration Project

Experiences of Using Extreme Programming to Support a Legacy Information System Migration Project Experiences of Using Extreme Programming to Support a Legacy Information System Migration Project Juha Koskela 1, Mauri Myllyaho 2, Jukka Kääriäinen 1, Dan Bendas 2, Jarkko Hyysalo 2, Anne Virta 2 1 VTT

More information

Integrating Requirements Engineering into Software Engineering Processes

Integrating Requirements Engineering into Software Engineering Processes SEG3101 (Fall 2010) Integrating Requirements Engineering into Software Engineering Processes Gregor v. Bochmann, University of Ottawa Based on Powerpoint slides by Gunter Mussbacher (2009) and material

More information

Hamid Faridani (h.faridani@rogers.com) March 2011

Hamid Faridani (h.faridani@rogers.com) March 2011 Hamid Faridani (h.faridani@rogers.com) March 2011 Introduction Methodologies like Waterfall, RUP and Agile have all become key tools for software developers and project manager s to aid them in delivering

More information

Software Lifecycles Models

Software Lifecycles Models Software Lifecycles Models Software Engineering Lecture 17 Bernd Bruegge Applied Software Engineering Technische Universitaet Muenchen 1 Outline of Today s Lecture Modeling the software life cycle Sequential

More information

Xtreme RUP. Ne t BJECTIVES. Lightening Up the Rational Unified Process. 2/9/2001 Copyright 2001 Net Objectives 1. Agenda

Xtreme RUP. Ne t BJECTIVES. Lightening Up the Rational Unified Process. 2/9/2001 Copyright 2001 Net Objectives 1. Agenda Xtreme RUP by Ne t BJECTIVES Lightening Up the Rational Unified Process 2/9/2001 Copyright 2001 Net Objectives 1 RUP Overview Agenda Typical RUP Challenges Xtreme Programming Paradigm Document driven or

More information

Risk Management. What is risk? Boehm s Top 10 Risks [P2] Welcome to Lecture 3 Risk management & Agile PM

Risk Management. What is risk? Boehm s Top 10 Risks [P2] Welcome to Lecture 3 Risk management & Agile PM ETSF 01 http://cs.lth.se/etsf01 elizabeth@cs.lth.se Welcome to Lecture 3 Risk management & Agile PM Ch 2.6, Ch 7 except 7.3, 7.8 & 7.11, Ch 4.10-11, 4.13-15, P3 + slide info Risk Management Ch 2.6, Ch

More information

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

A Software Project Management Innovation (SPM) Methodology: A Novel Method for Agile Software Development Third 21st CAF Conference at Harvard, in Boston, USA. September 2015, Vol. 6, Nr. 1 ISSN: 2330-1236 A Software Project Management Innovation (SPM) Methodology: A vel Method for Agile Software Development

More information

Agile Software Development

Agile Software Development Agile Software Development Application in the Medical Device Industry Kelly Weyrauch Medtronic, Inc. (29 April 2008) Introduction Purpose Provide an introduction to Agile Software Development as it applies

More information

PENETRATION TESTING IN AGILE SOFTWARE DEVELOPMENT PROJECTS

PENETRATION TESTING IN AGILE SOFTWARE DEVELOPMENT PROJECTS PENETRATION TESTING IN AGILE SOFTWARE DEVELOPMENT PROJECTS Martin Tomanek and Tomas Klima Department of Systems Analysis, University of Economics, Prague, Czech Republic ABSTRACT Agile development methods

More information

Comparing Agile Software Processes Based on the Software Development Project Requirements

Comparing Agile Software Processes Based on the Software Development Project Requirements CIMCA 2008, IAWTIC 2008, and ISE 2008 Comparing Agile Software Processes Based on the Software Development Project Requirements Malik Qasaimeh, Hossein Mehrfard, Abdelwahab Hamou-Lhadj Department of Electrical

More information

Quality in an Agile World BY SCOTT AMBLER Ambysoft, Inc.

Quality in an Agile World BY SCOTT AMBLER Ambysoft, Inc. TALKING POINTS Quality is an inherent aspect of true agile software development. The majority of agilists take a test-driven approach to development where they write a unit test before they write the domain

More information

In this Lecture you will Learn: Development Process. Unified Software Development Process. Best Practice

In this Lecture you will Learn: Development Process. Unified Software Development Process. Best Practice In this Lecture you will Learn: Development Chapter 5C About the Unified Software Development How phases relate to workflows in an iterative life cycle An approach to system development Major activities

More information

Software Development Process Models and their Impacts on Requirements Engineering Organizational Requirements Engineering

Software Development Process Models and their Impacts on Requirements Engineering Organizational Requirements Engineering Software Development Process Models and their Impacts on Requirements Engineering Organizational Requirements Engineering Prof. Dr. Armin B. Cremers Sascha Alda Overview Phases during Software Development

More information

SOFTWARE ENGINEERING CSC 423 B - MWF 11-12 EXTREME PROGRAMMING

SOFTWARE ENGINEERING CSC 423 B - MWF 11-12 EXTREME PROGRAMMING SOFTWARE ENGINEERING CSC 423 B - MWF 11-12 EXTREME PROGRAMMING TO: Dr. Khaldoun El Khalidi FROM: Lamia Nassif, Jessy, Nadine Ghanem, & Pedro Maroun Eid Due: 20 March 2002 1 Table of Contents I. ABSTRACT...3

More information

The Role of Software Quality in Agile Software Development Methodologies Osama Sohaib and Khalid Khan Abstract he various agile software development methodologies have promoted since their inception and

More information

What CMMI Cannot Give You: Good Software

What CMMI Cannot Give You: Good Software What CMMI Cannot Give You: Good Software Ivar Jacobson ivar@ivarjacobson.com ivar@jaczone.com Objective To understand what CMM/CMMI is and what it is not To demonstrate how the unified process helps you

More information

SE464/CS446/ECE452 Software Life-Cycle and Process Models. Instructor: Krzysztof Czarnecki

SE464/CS446/ECE452 Software Life-Cycle and Process Models. Instructor: Krzysztof Czarnecki SE464/CS446/ECE452 Software Life-Cycle and Process Models Instructor: Krzysztof Czarnecki 1 Some of these slides are based on: Lecture slides by Ian Summerville accompanying his classic textbook software

More information

Neglecting Agile Principles and Practices: A Case Study

Neglecting Agile Principles and Practices: A Case Study Neglecting Agile Principles and Practices: A Case Study Patrícia Vilain Departament de Informatics and Statistics (INE) Federal University of Santa Catarina Florianópolis, Brazil vilain@inf.ufsc.br Alexandre

More information

An Introduction to Extreme Programming

An Introduction to Extreme Programming An Introduction to Extreme Programming Ken Auer kauer@rolemodelsoft.com http://www.rolemodelsoft.com RoleModel Software, Inc. 5004 Rossmore Dr. Fuquay-Varina, NC 27526 919-557-6352 Page 1 The Joy of Software

More information

Extreme Programming. As software organizations continue to move

Extreme Programming. As software organizations continue to move Spotlight Extreme Programming Rapid Development for Web-Based Applications Frank Maurer and Sebastien Martel University of Calgary As software organizations continue to move toward Web-based systems development,

More information

6. Software Lifecycle Models. A software lifecycle model is a standardised format for planning organising, and running a new development project.

6. Software Lifecycle Models. A software lifecycle model is a standardised format for planning organising, and running a new development project. 6. Software Lifecycle Models A software lifecycle model is a standardised format for planning organising, and running a new development project. Hundreds of different kinds of models are known and used.

More information

Development models. 1 Introduction. 2 Analyzing development models. R. Kuiper and E.J. Luit

Development models. 1 Introduction. 2 Analyzing development models. R. Kuiper and E.J. Luit Development models R. Kuiper and E.J. Luit 1 Introduction We reconsider the classical development models: the Waterfall Model [Bo76], the V-Model [Ro86], the Spiral Model [Bo88], together with the further

More information

the team level and is characterized by self organizing, cross functional teams doing iterative development in what are called Sprints.

the team level and is characterized by self organizing, cross functional teams doing iterative development in what are called Sprints. Introduction We can t solve problems by using the same kind of thinking we used when we created them. Albert Einstein One of the goals of this book is to give you a better perspective on Lean and Agile

More information

Agile Methodologies. Venkat Subramaniam. venkats@agiledeveloper.com. http://www.agiledeveloper.com/download.aspx

Agile Methodologies. Venkat Subramaniam. venkats@agiledeveloper.com. http://www.agiledeveloper.com/download.aspx Agile Methodologies Venkat Subramaniam venkats@agiledeveloper.com http://www.agiledeveloper.com/download.aspx Agile Methodologies - 1 Abstract Abstract Agile development is picking up steam. You have most

More information