Extreme Programming.

Slides:



Advertisements
Similar presentations
Chapter 2 Modeling the Process and Life Cycle Shari L. Pfleeger
Advertisements

Extreme Programming (XP): Strengths and Weaknesses Amund Tveit Department of Computer and Information Science Norwegian University of Science and Technology.
ITEC 370 Lecture 25 Lifecycles. Review Questions? F give prototype demonstration –Testing plan for your software Life cycles –Scrum (Roles, Meetings,
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.
Agile Requirements Methods CSSE 371 Software Requirements and Specification Mark Ardis, Rose-Hulman Institute October 26, 2004.
Agile Methods and Extreme Programming CSSE 376, Software Quality Assurance Rose-Hulman Institute of Technology March 23, 2007.
Extreme Programming: Practices and Strategies Extreme Programming Practices and Strategies Mohammad Alshayeb Information and Computer.
Agile Methodology: The New Wave in Software Development By Patricia Cleary Thesis Hypothesis: The agile methodologies are better than the current methodology.
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.
XP and Refactoring David Talby. Development Methodologies The Software Crisis – 84% of software projects are not on time – 31% of software projects never.
Extreme Programming--a “New” Process Model Extreme Programming-- a “New” Process Model.
Xtreme Programming. Software Life Cycle The activities that take place between the time software program is first conceived and the time it is finally.
Agile Software Development Practice Adoption Survey Narendra Kurapati, Venkata Sarath Chandra Manyam, and Kai Petersen Blekinge Institute of Technology.
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.
Agile Software Development What is Agile? And How are we implementing Agile?
Chapter 5 Software Process Models. Problems with “Traditional” Processes 1.Focused on and oriented towards “large projects” and lengthy development time.
Sofia Bulgaria Summer School IST eXPERT: Best Practice on e-Project Development 30 June - 2 July 2003 eXtreme programming.
Current Trends in Systems Develpment
SE-280 Dr. Mark L. Hornick 1 Process Adaptations.
Agile and XP Development Dan Fleck 2008 Dan Fleck 2008.
CIS 9002 Kannan Mohan Department of CIS Zicklin School of Business, Baruch College.
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
1 Extreme Programming Practices The Planning Game Small Releases System Metaphor Simple Design Continuous Testing Refactoring Pair Programming Collective.
1 e X treme P rogramming D. Dranidis September 2000 CITY College.
CPSC 2150 August 21, Chapter 1 Object Oriented Software Development This is an introductory course In this chapter we will look at 3 topics Challenges.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
Sofia Bulgaria Summer School IST eXPERT: Best Practice on e-Project Development 30 June - 2 July 2003 eXtreme programming.
Extreme Programming (XP). Agile Software Development Paradigm Values individuals and interactions over processes and tools. Values working software over.
XP – Extreme Programming
EXtreme Programming Development Adrian Williamson People, Technology and People and Technology Consultant.
Sofia Bulgaria Summer School IST eXPERT: Best Practice on e-Project Development 30 June - 2 July 2003 eXtreme programming.
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.
December Using Software Development Methodology (SDM) in the Third Teaching Unit (laboratory) CS Teachers Conference Dr. Orit Hazzan & Yael Dubinsky.
DAVID STOTTS DEPT. OF COMPUTER SCIENCE UNIV. OF NORTH CAROLINA AT CHAPEL HILL Extreme Programming.
CS3100 Software Project Management Agile Approaches.
Extreme Programming (XP) XP is an agile methodology: –aims to be responsive to change Theme running through XP is the importance of communication –amongst.
AP-1 4. Agile Processes. AP-2 Agile Processes Focus on creating a working system Different attitude on measuring progress XP Scrum.
Extreme Programming Based on and
Extreme programming (XP) Variant of agile Takes commonsense practices to extreme levels © 2012 by Václav Rajlich1.
Agile Methods Presentation By: Jason Abbett. Definition A process to rapidly develop software Many kinds of agile methods but few are practiced.
Extreme Programming. Extreme Programming (XP) Formulated in 1999 by Kent Beck, Ward Cunningham and Ron Jeffries Agile software development methodology.
EXtreme Programming and Open Source engineering paradigm A comparison
Agenda: Overview of Agile testing Difference between Agile and traditional Methodology Agile Development Methodologies Extreme Programming Test Driven.
Engineering Practices Necessary for Scrum andrew fuqua enterprise agile coach LeadingAgile, LLC
CS223: Software Engineering Lecture 18: The XP. Recap Introduction to Agile Methodology Customer centric approach Issues of Agile methodology Where to.
1 Introduction to eXtreme Programming Remko Popma Azzurri Ltd.
Extreme Programming מתודולוגיה לפיתוח פרויקטי תוכנה.
Extreme programming (XP) Advanced Software Engineering Dr Nuha El-Khalili.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
Toward Maturity Model for eXtreme Programming Copyright, 2001 © J. Nawrocki, B. Walter, A.. Wojciechowski
Software Development Life Cycle. The Software Life Cycle  Encompasses all activities from initial analysis until end of work  Formal process for software.
AGILE METHODS Curtis Cook CS 569 Spring 2003.
Planning User stories are written.
Alexander Kanavin Lappeenranta University of Technology
Extreme Programming.
Waterfall and Agile Quality Techniques
روش‌های سريع الانتقال (چابک) توسعه نرم افزار
What do you need to know about XP?
Extreme Programming Iterative programming Agile programming
Extreme Programming Extreme programming is "a lightweight methodology for small-to-medium-sized teams developing software in the face of vague or rapidly.
Coming up: What is Agile?
Introduction to XP.
Chapter 5: New and Emerging Process Methodologies
Presentation transcript:

Extreme Programming

12 Practices The Planning Game Small Releases System Metaphor Simple Design Continuous Testing Refactoring Pair Programming Collective Code Ownership Continuous Integration 40-Hour Work Week On-Site Customer Coding Standards

Day to day life on an XP team Hint: starts with a daily “standup” meeting much like Scrum’s scrum Image of XP process from http://accelerateddevelopment.ca/blog/tag/requirements/.

How does XP remove the need for extensive up-front requirements analysis? Image from http://eternalsunshineoftheismind.wordpress.com/2013/03/04/extreme-programming-xp-method-of-developing-i-s/.

Or, Image from https://samup4web.wordpress.com/tag/user-story/.

How does XP remove the need for extensive design? What about API conflicts? What about the code getting bad? What about making bad design decisions and finding out about it later? “simplest thing that could possibly work”

How does XP remove the need for extensive testing? Image from http://blog.typemock.com/2012/04/what-is-test-driven-development.html.

What are the limits? *The Planning Game Small Releases System Metaphor *Simple Design *Continuous Testing Refactoring Pair Programming Collective Code Ownership *Continuous Integration 40-Hour Work Week *On-Site Customer Coding Standards

The difficulties of “the customer” Custom development situation… Product development situation…

Adding more programmers to an XP project How many before relationships have to be more formal? Can they be remote?

Your questions from the reading quiz My pick Your choice