Toward Maturity Model for eXtreme Programming Copyright, 2001 © J. Nawrocki, B. Walter, A.. Wojciechowski

Slides:



Advertisements
Similar presentations
Extreme Programming Copyright, 1999 © Jerzy R. Nawrocki Personal Software Process Lecture.
Advertisements

Extreme Programming Alexander Kanavin Lappeenranta University of Technology.
Chapter 2 Modeling the Process and Life Cycle Shari L. Pfleeger
ITEC 370 Lecture 25 Lifecycles. Review Questions? F give prototype demonstration –Testing plan for your software Life cycles –Scrum (Roles, Meetings,
Agile Development.
NAUG NAUG Knowledge Evening – th February 2007.
 User assignments (product owner)  ‘circle’  1 st sprint: ◦ Scrum Boards (informative workspace)  Product -, release -, sprint -, defect backlog 
Agile Process Models. Prescriptive models don’t work It is unrealistic to not have changes. Why? The Agile Manifesto: Individuals and interactions over.
Extreme Hour Role-Playing The XP Process. What Is Extreme Programming? n User Stories:Function, Qualities, Priority, Scope. n Schedule:By negotiation.
Software Development Process Models. The Waterfall Development Model.
XP – eXtreme Programming A gentle introduction. Cleviton Vinícius Jobson Ronan Thiago Rodrigues.
1 March Extreme programming. Presentations Tuesday Campus Tour Sami Says Hawks Thursday Read2Me UNCSET Oral Lab NetVis If helpful, invite your client.
Extreme Programming Collaboration in Software Development Process.
Extreme Programming Team Members Gowri Devi Yalamanchi Sandhya Ravi.
EXtreme Programming By: Aaron Flocke, Leena Paulose, Geetha Krishna (Team 6)
EXtreme Programming Quick Introduction Daniel Arraes Pereira Eduardo Lourenço Apolinário Ricardo de Oliveira Cavalcanti.
Extreme Programming Mark Steverson. What Is Extreme Programming? ● Extreme Programming (XP) is a lightweight, agile methodology developed by Kent Beck.
Computer Engineering 203 R Smith Agile Development 1/ Agile Methods What are Agile Methods? – Extreme Programming is the best known example – SCRUM.
COMP4710 Senior Design Software Development Process.
Xtreme Programming. Software Life Cycle The activities that take place between the time software program is first conceived and the time it is finally.
An Agile View of Process
Introduction to Agile Methodologies and Concepts Roy Osherove Principal, Team Agile Blog : ISerializable.com.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Extreme Programming.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Comparison of CMM Level 2 and eXtreme Programming Copyright, 2002 © Bartosz Walter Quality Connection 2002, Helsinki Poznan University of Technology Poznan,
Extreme Programming: Introduced Matthew Heusser Excelon Development – xndev.com - Presented to CS 611 at GVSU, 4/6/2005.
Agile and XP Development Dan Fleck 2008 Dan Fleck 2008.
Extreme Programming Daniel Baranowski 3/29/06. What is Extreme Programming? An agile development methodology Created by Kent Beck in the mid 1990’s A.
Embracing change with Extreme Programming Method Engineering Erik ten Brinke
Unified Process versus Extreme Programming. Outline Compare and contrast UP and XP  Processes / Disciplines  Management  Artefacts Risk management.
Quality Model for Requirements Eng. Copyright, 2002 © Jerzy R. Nawrocki Quality.
EXtreme Programming: An Introduction Presentation by: Jon Banta.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
Extreme/Agile Programming Prabhaker Mateti. ACK These slides are collected from many authors along with a few of mine. Many thanks to all these authors.
Rapid software development 1. Topics covered Agile methods Extreme programming Rapid application development Software prototyping 2.
Extreme Programming.
Experimental Evaluation of Pair Programming Copyright, 2001 © Jerzy R. Nawrocki European Software Control & Metrics ESCOM’01 ESCOM’01 Poznan University.
What is S.E? Describe S.E in terms of its mistakes Standish Group ( US - $250 Billion on IT projects. 31% projects are cancelled 52.7%
Implementing XP at PUT Copyright, 2000 © Jerzy R. Nawrocki Quality Management.
Sofia Bulgaria Summer School IST eXPERT: Best Practice on e-Project Development 30 June - 2 July 2003 eXtreme programming.
XP Overview Short Life cycle Risky / Dynamic Requirements Increase developer productivity.
Informatics 43 – May 14, Open Source Source code is freely available and (usually) re-distributable Examples: Firefox web browser Apache HTTP Server.
CS3100 Software Project Management Agile Approaches.
Extreme Programming Based on and
Requirements Engineering Requirements Engineering in Agile Methods Lecture-28.
Extreme programming (XP) Variant of agile Takes commonsense practices to extreme levels © 2012 by Václav Rajlich1.
CSC 480 Software Engineering Extreme Programming.
Comparison of CMM Level 2 and eXtreme Programming Copyright, 2002 © Bartosz Walter Web Applications and Services.
Introduction to Software Engineering Muhammad Nasir Agile Software Development(2)
1 Introduction to eXtreme Programming Remko Popma Azzurri Ltd.
Extreme programming (XP) Advanced Software Engineering Dr Nuha El-Khalili.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
Project Management Software development models & methodologies
Chapter 3 Agile software development 1 Chapter 3 – Agile Software Development.
Embedded Systems Software Engineering
Requirements Engineering Lecture 4
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
Software & Software Engineering Pertemuan-4 Dosen :Kundang K Juman
Planning User stories are written.
Alexander Kanavin Lappeenranta University of Technology
Extreme Programming.
What do you need to know about XP?
Agile and XP Development
Agile and XP Development
Chapter 3 – Agile Software Development
CMPUT eXtreme programming
Software Engineering: A Practitioner’s Approach, 6/e Chapter 2 Process: A Generic View copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Coming up: What is Agile?
Refactoring.
Extreme Programming.
Presentation transcript:

Toward Maturity Model for eXtreme Programming Copyright, 2001 © J. Nawrocki, B. Walter, A.. Wojciechowski EuroMicro 2001 Software Process & Product Improv. Warszawa, EuroMicro 2001 Software Process & Product Improv. Warszawa,

J. Nawrocki et al., Toward Maturity Model for XP IntroductionIntroduction Problems with the classical approach Too much paper work! Too many meetings!

J. Nawrocki et al., Toward Maturity Model for XP XP the Deliverer IntroductionIntroduction Oral communication much more important than written one. Only artefacts: code + test cases IEEE/ANSI standard 830/1993? Forget it! Fagan inspections? Forget it! Function Points? Forget it! We do XP from the very beginning!

J. Nawrocki et al., Toward Maturity Model for XP There is no free lunch IntroductionIntroduction On-site customer Code must be written to agreed standards All code is pair programmed Refactor whenever and wherever possible All code must pass all unit tests before it can be released...

J. Nawrocki et al., Toward Maturity Model for XP IntroductionIntroduction Conclusion: Some XP practices are difficult to introduce. A maturity model is needed that would help to introduce them gradually, step by step. Aim: To propose a maturity model for XP

J. Nawrocki et al., Toward Maturity Model for XP Plan of the presentation Types of maturity models XP maturity model XPMM level 2 - Initial XPMM level 3 - Advanced XPMM level 4 - Mature Maturity assessment

J. Nawrocki et al., Toward Maturity Model for XP Assessor Good guys Types of maturity models ISO 9000 Crite- ria Bad guys

J. Nawrocki et al., Toward Maturity Model for XP Types of maturity models 3 - standardised 2 - normal use 1 - discretionary use 0 - never 3 0 Sommerville-Sayer’s model Basic practices:... Intermediate practices:... Advanced practices:...

J. Nawrocki et al., Toward Maturity Model for XP Types of maturity models Defined > 85 Basic & > 40 Interm & Adv Defined > 85 Basic & > 40 Interm & Adv Repeatable > 55 Basic & < 40 Interm & Adv Repeatable > 55 Basic & < 40 Interm & Adv Initial < 55 Basic Initial < 55 Basic Sommerville-Sayer’s model

J. Nawrocki et al., Toward Maturity Model for XP Types of maturity models 1. Initial CMM(I) 2. Repeatable 3. Defined 4. Managed 5. Optimizing Key Process Area Practice Key Process Area Practice

J. Nawrocki et al., Toward Maturity Model for XP Plan of the presentation Types of maturity models XP maturity model XPMM level 2 - Initial XPMM level 3 - Advanced XPMM level 4 - Mature Maturity assessment

J. Nawrocki et al., Toward Maturity Model for XP XP maturity model 1. Not compliant at all The proposed model 2. Initial Customer Relation Management Product Quality Assurance 3. Advanced Pair programming 4. Mature Project performance

J. Nawrocki et al., Toward Maturity Model for XP Plan of the presentation Types of maturity models XP maturity model XPMM level 2 - Initial XPMM level 3 - Advanced XPMM level 4 - Mature Maturity assessment

J. Nawrocki et al., Toward Maturity Model for XP XPMM level 2 - Initial CMMI versus XP practices

J. Nawrocki et al., Toward Maturity Model for XP XPMM level 2 - Initial XP practices mostly related to CMMI P0. The planning game is used to create project plans: Obtain commitment to requirements (Req., SP 1.2) Manage requirements changes (Req., SP 1.3) Estimate the scope of the project (Plan, SP 1.1) Establish estimates of project attributes (Plan, SP 1.2) Reconcile work and resource levels (Plan, SP 3.2) Obtain plan commitment (Planing, SP 3.3)

J. Nawrocki et al., Toward Maturity Model for XP XPMM level 2 - Initial XP practices mostly related to CMMI T3. Acceptance tests are run often and the score is published: Identify inconsistencies between project work and requirements (Requirements, SP 1.5) Monitor project risks (Project Monitoring, SP 1.3) Specify measures (Measurement, SP 1.2) Collect measurement data (Measurement, SP 2.1) Communicate results (Measurement, SP 2.4) Objectively evaluate work products (QA, SP 1.2)

J. Nawrocki et al., Toward Maturity Model for XP XPMM level 2 - Initial Conclusion Focus should be on practices concerning: Customer Relationship Management Product Quality Assurance

J. Nawrocki et al., Toward Maturity Model for XP XPMM level 2 - Initial Customer Relationship Manag. (1) The planing game is used to create project plans. User stories are written. Release planning creates the schedule. Make frequent small releases. The Project Velocity is measured. The project is divided into iterations.

J. Nawrocki et al., Toward Maturity Model for XP XPMM level 2 - Initial Customer Relationship Manag. (2) Iteration planning starts each iteration. Choose a system metaphor. Create spike solutions to reduce risk. No functionality is added early. Effectively collaborating customer.

J. Nawrocki et al., Toward Maturity Model for XP XPMM level 2 - Initial Product Quality Assurance Code the unit test first. Integrate often. Leave optimization till last. All code must have unit tests. All code must go through unit tests and score must be published. When a bug is found test must be created. Acceptance tests are run often.

J. Nawrocki et al., Toward Maturity Model for XP Plan of the presentation Types of maturity models XP maturity model XPMM level 2 - Initial XPMM level 3 - Advanced XPMM level 4 - Mature Maturity assessment

J. Nawrocki et al., Toward Maturity Model for XP XPMM level 3 - Advanced Pair Programming (1) All production code is pair programmed. Move people around. Code must be written to agreed standards. Only one pair integrates code at a time. Integrate often. Error

J. Nawrocki et al., Toward Maturity Model for XP XPMM level 3 - Advanced Pair Programming (2) Use collective code ownership. A version management system is used. Automated testing is used to support frequent integration tests. Create an open workspace for the team. Error

J. Nawrocki et al., Toward Maturity Model for XP Plan of the presentation Types of maturity models XP maturity model XPMM level 2 - Initial XPMM level 3 - Advanced XPMM level 4 - Mature Maturity assessment

J. Nawrocki et al., Toward Maturity Model for XP XPMM level 4 - Mature Project Performance On-site customer. No overtime. All code must pass all unit tests before it can be released. Customer satisfaction is achieved. We are the champions..

J. Nawrocki et al., Toward Maturity Model for XP Plan of the presentation Types of maturity models XP maturity model XPMM level 2 - Initial XPMM level 3 - Advanced XPMM level 4 - Mature Maturity assessment

J. Nawrocki et al., Toward Maturity Model for XP Maturity assessment XP practices difficult to assess Simplicity. Create spike solutions to reduce risk. No functionality is added early. I can’t see anybody..

J. Nawrocki et al., Toward Maturity Model for XP Maturity assessment Data collected at level 2 User stories. Project velocity. Number of spike solutions Log concerning customer involvement in planning meetings. Date and time of each integration...

J. Nawrocki et al., Toward Maturity Model for XP ConclusionsConclusions A simple maturity model for XP. It resembles CMM(I) and PSP Four maturity levels. It should be tested in industry environment to assess its practicality.