This link has been bookmarked by 85 people . It was first bookmarked on 28 Jul 2006, by Myer.
-
28 Jun 14
-
10 Jun 14
-
improve software quality and responsiveness to changing customer requirements
-
frequent "releases" in short development cycles
-
-
, avoiding programming of features until they are actually needed, a flat management structure, simplicity and clarity in code, expecting changes in the customer's requirements as time passes and the problem is better understood, and frequent communication with the customer and among programmers.
-
including problems with unstable requirements, no documented compromises of user conflicts, and a lack of an overall design specification or document
-
-
29 May 14
-
coding, testing, listening, and designing
-
f a little testing can eliminate a few flaws, a lot of testing can eliminate many more flaws.
-
One can avoid this by creating a design structure that organizes the logic in the system.
-
communication, simplicity, feedback, and courage.
-
respect
-
favors simple designs, common metaphors, collaboration of users and programmers, frequent verbal communication, and feedback
-
Extreme programming encourages starting with the simplest solution
-
focus on designing and coding for the needs of today instead of those of tomorrow, next week, or next month
-
"You aren't gonna need it" (YAGNI) approach
-
A simple design with very simple code could be easily understood by most programmers in the team.
-
from the system:
-
from the customer:
-
from the team:
-
-
08 Apr 14
-
responsiveness to changing customer requirements
-
improve software quality
-
frequent "releases"
-
short development cycles
-
programming in pairs
-
flat management structure
-
simplicity
-
expecting changes
-
frequent communication
-
Kent Beck
-
test-first development
-
automated tests
-
validate the operation of even small sections of software coding, rather than only testing the larger features.
-
shorter product life-cycles
-
reduce the cost of changes in requirements
-
Without code, there is no working product.
-
Unit tests determine whether a given feature works as intended.
-
Every piece of code that is written is tested before moving on to the next feature.
-
verify that the requirements as understood by the programmers satisfy the customer's actual requirements.
-
Acceptance tests
-
daily end-of-day activity
-
feedback
-
Communication
-
Good design will avoid lots of dependencies within a system
-
Courage
-
Communication
-
Simplicity
-
Feedback
-
Respect
-
common metaphors
-
simple designs
-
collaboration of users and programmers
-
frequent verbal communication
-
feedback
-
focus on designing and coding for the needs of today instead of those of tomorrow
-
next week, or next month
-
"You aren't gonna need it" (YAGNI) approach
-
Feedback from the system
-
Feedback from the customer
-
Feedback from the team
-
Programmers should never commit changes that break compilation
-
that make existing unit-tests fail, or that otherwise delay the work of their peers
-
Members respect their own work by always striving for high quality and seeking for the best design for the solution at hand through refactoring.
-
feedback
-
-
08 Mar 14
-
t advocates frequent "releases" in short development cycles
-
voiding programming of features until they are actually needed
-
flat management structure
-
beneficial elements of traditional software engineering practices are taken to "extreme" levels.
-
-
07 Oct 13
-
25 Apr 13
-
11 Oct 12
-
14 Aug 12
-
25 Apr 12
-
avoiding programming of features until they are actually needed, a flat management structure, simplicity and clarity in code, expecting changes in the customer's requirements as time passes and the problem is better understood, and frequent communication with the customer and among programmers
-
The methodology takes its name from the idea that the beneficial elements of traditional software engineering practices are taken to "extreme" levels, on the theory that if a little is good, more is better.
-
unstable requirements
-
coding, testing, listening, and designing
-
Other programmers can give feedback on this code by also coding their thoughts
-
how the problem might be solved, or cannot be solved
-
-
21 Mar 12
marco_antonio_almeida_silvaExtreme programming (XP) is a software development methodology which is intended to improve software quality and responsiveness to changing customer requirements. As a type of agile software development,[1][2][3] it advocates frequent "releases" in short
-
21 Feb 12
-
XP describes four basic activities that are performed within the software development process: coding, testing, listening, and designing.
-
-
17 Aug 11
-
05 Aug 11
-
14 Jul 11
-
03 Dec 10
-
12 Aug 10
-
30 Jul 10
-
Extreme Programming (XP) is a software development methodology which is intended to improve software quality and responsiveness to changing customer requirements.
-
t advocates frequent "releases" in short development cycles (timeboxing), which is intended to improve productivity and introduce checkpoints where new customer requirements can be adopted.
-
-
24 Jul 10
-
16 May 10
-
10 Mar 10
-
design and code for today and not for tomorrow
-
remove source code that is obsolete, no matter how much effort was used to create that source code
-
throw code away
-
persistence
-
respect each other
-
respect their work
-
-
11 Dec 09
-
27 Apr 09
f tamy@mkhanjani Note that Agile method are not proper for critical systems. see
http://bit.ly/J8z6y
http://bit.ly/19oX2M [from http://twitter.com/f_tamy9/statuses/1551904187]tweecious Kent Beck Extreme Programming Chrysler Comprehensive Compensation System Agile software development Ron Jeffries Methodologies process
-
24 Apr 09
Michel RolandAnnotated link http://www.diigo.com/bookmark/http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FExtreme_Programming
-
Proponents of Extreme Programming and agile methodologies in general regard ongoing changes to requirements as a natural, inescapable and desirable aspect of software development projects; they believe that adaptability to changing requirements at any point during the project life is a more realistic and better approach than attempting to define all requirements at the beginning of a project and then expending effort to control changes to the requirements.
-
-
28 Mar 09
-
20 Mar 09
-
12 Mar 09
George BradfordExtreme Programming (XP) is a software engineering methodology (and a form of agile software development)[1][2][3] prescribing a set of daily stakeholder practices that embody and encourage particular XP values (below). Proponents believe that exercising these practices—traditional software engineering practices taken to so-called "extreme" levels—leads to a development process that is more responsive to customer needs ("agile") than traditional methods, while creating software of better quality.
-
02 Dec 08
-
19 Nov 08
-
20 Oct 08
-
25 Aug 08
-
29 May 08
-
29 Feb 08
-
26 Feb 08
-
28 Sep 07
-
24 Jun 07
-
05 May 07
Adam Crowe"Extreme Programming initially recognized four values. * Communication * Simplicity * Feedback * Courage * Respect (the latest value)"
-
14 Feb 07
-
07 Aug 06
-
29 May 06
-
21 Apr 06
Pascal PolleunusExtreme Programming (XP) is a software engineering methodology for the development of software projects. It prescribes a set of day-to-day practices for developers and managers; the practices are meant to embody and encourage particular values. Proponents
-
30 Mar 06
-
02 Feb 06
-
23 Nov 05
Would you like to comment?
Join Diigo for a free account, or sign in if you are already a member.