מצגת של PowerPoint

Download Report

Transcript מצגת של PowerPoint

םיטקיורפ תייחנה בשחמה יעדמב

טנלס םואברמ ינרוא ןזח תירוא 10-12.7.2005

םירומ תומלתשה

תומלתשהה תינכות

10.7

אובמ  ןוידל םייזכרמ םיאשונ יתנש הארוה ןונכת   11.7

הנכות תסדנה לש המגידרפה  הנכות חותיפ תויגולודותמ  12.7

םיטקיורפ תכרעה הלועפ ףותיש ךשמה     

Extreme Programming

הנכות יטקיורפ חותיפל היגולודותמ

הנכות יטקייורפ לש תונייפאמ תויעב

הרוקמ הנכות חותיפב תיתימאה תויכוביסה

) יגולונכטה אלו ( ישונאה טביהב לש הנבה , םיגאב , וב הדימע יאו ץוחל ז " ול , תוחוקל

, עדימ ףותיש יא , תווצ ירבח ןיב תרושקת , תוינכות ...

, היצרגטניא

םינותנ : הנכות יטקיורפ

: ןולשיככ םיבשחנ תוחוקלל םיחלשנה םילודגה הנכותה ירצוממ 75%

 .

תוחוקלה תושירדל םימיאתמ םניאש וא ללכ שומישב םניאש וא

Based on: Mullet, D. (July, 1999). The Software Crisis , Benchmarks Online - a monthly publication of Academic Computing Services

2

(7).

59.5

ב הנש לכב תדמאנ ב " הראב הנכותב םיגאב לש םנוקית תולע

$ ןויליב

The National Institute of Standards and Technology (NIST), New Release of June 28, 2002.

$ ןויליב 200 הנכותב ב " הראב ועקשוה 2003 לש Q2 ב : האוושה םשל 

What is Extreme Programming

.

היישעתב החמצ Extreme Programming   Differences from traditional methodologies  Emphasis on people vs. development activities & schedule  XP specifies how to behave; still leaves freedom  12 practices  4 values: feedback, simplicity, communication, courage  The meaning of ‘extreme’

What is Extreme Programming

 Extreme Programming Explained 

First edition 2000

by Kent Beck 

Second edition 2005

by Kent Beck with Cynthia Andres  Reflection, Roles, Respect

Extreme Programming

םישקבתמ םתא היגולודותמה םע תורכיהה ךלהמב  יטקיורפ חותיפ תרגסמב םושייל התמאתה לע בושחל .

ןוכיתב הנכות

How XP? - Project Timetable :

1 release (2 months) , 3 iterations (3 weeks each) Business Day Business Day Week 1, Release 1, Iteration 1 Week 5, Release 1, Iteration 2 Week 9, Release 1, Iteration 3 Week 2, Release 1, Iteration 1 Week 6, Release 1, Iteration 2

Release 2 starts

Week 3, Release 1, Iteration 1 Week 7, Release 1, Iteration 3 Business Day Week 4, Release 1, Iteration 2 Week 8, Release 1, Iteration 3 Business Day

How Extreme Programming?

Two days in Extreme Programming Development Environment

Business Day

 Planning game  On-site customer  Small releases  Simple design  Metaphor Source: http://www.rolemodelsoftware.com/

Business Day – Reflection

 5 practices (out of 12)  Planning game  On-site customer  Small releases  Simple design  Metaphor  Planning game  All developers participate  All have the same load  All developers get an overview of the entire development process  Simple means  Very detailed  Levels of abstraction

Business Day – Reflection

5 practices

(out of 12)  Planning game  On-site customer  Small releases  Simple design  Metaphor  On-site customer  Customer ’s on-going feedback  Small releases  On-going opportunity to update/change requirements

Business Day – Reflection

5 practices

(out of 12)  Planning game  On-site customer  Small releases  Simple design  Metaphor  Simple design  Develop only what is needed for your development task  Metaphor  Bridges customers developers-business gaps

Development Day

Source: http://www.rolemodelsoftware.com/           Stand-up meeting The development environment Pair programming Test driven development (acceptance, unit-test) Code standards Refactoring Simple design Continuous integration (one integration machine) Collective ownership Sustainable pace (40-hour week)

Development Day -

Reflection

 The development environment  All see all; fosters communication  Stand-up meeting  All know what all do  Pair programming  Each task is thought on two levels of abstraction  Unit test (automatic test first)     First: improves understanding; Automatic: testing is easy Developers program and test Testing becomes manageable Success vs. failure

Development Day -

Reflection

 Continuous integration  Reduces integration risks in later stages  Collective ownership  Important in companies with high turnover  Coding standards  Refactoring and simple design  Code improvement is part of the methodology (though it doesn't produce code), gradual process  Sustainable pace (40-hour week)  Intense and productive work , developers are not tired

Development and Business Days – Reflection

Code/Technical Perspective

Refactoring Simple design Coding standards Testing Continuous integration Small releases

Human/Social Perspective

Collective ownership Pair programming Sustainable pace On-site customer Planning game Metaphor

The 12 XP practices

Note:

nothing is new; gathering the practices together is XP uniqueness

Source:

Beck, K. (2000).

eXtreme Programming explained

, Addison Wesley.

Extreme Programming in the SE world  Agile Software Development Methodology 

Other agile methods :

SCRUM, Feature Driven Development, DSDM  All acknowledge that the main issue of software development is people: customers, communication  Manifesto for Agile Software Development: http://agilemanifesto.org/  Extreme Programming: Kent Beck, 1996, Chrysler

The Agile Manifesto

Individuals and interactions

over processes and tools

Working software

over comprehensive documentation

Customer collaboration

over contract negotiation

Responding to change

over following a plan That is, while there is value in the items on the right, we value the items on the left more. http://agilemanifesto.org/

Why Extreme Programming?

 big companies using XP in at least some capacity  Ford Motor, Chrysler, IBM, HP 

Companies doing XP

 smaller software houses:  Mayford Technologies  RoleModel Software  tutorials: Industrial Logic , Object Mentor , Tochen (Israel)

Software Development Methods

 All traverse the activities of specifying, designing, coding, testing. Some do this several times.  These activities have become the paradigm of software development.  When the majority of developers accepted this, it became a paradigm.

 Paradigm is

the

way of doing things.

Kuhn, T. S. (1962).

The Structure of Scientific Revolutions

, Chicago: Univ. Chicago Press .

Extreme Programming

הנכות יטקיורפ חותיפ תרגסמב םושייל התמאתה  .

ןוכיתב םירומה לש םטבמ תדוקנמ  םידימלתה לש םטבמ תדוקנמ 