AgileProgramming/xp: Difference between revisions

From Cheaha
Jump to navigation Jump to search
(~~~~Agile Methodology)
 
Line 4: Line 4:
=== What is Agile Methodology? ===
=== What is Agile Methodology? ===
   
   
  (From<ref>[http://en.wikipedia.org/wiki/Agile_software_development]</ref>)
  [http://en.wikipedia.org/wiki/Agile_software_development]
  * Group of software development methodologies
  * Group of software development methodologies
  * Project management process
  * Project management process

Revision as of 19:17, 27 October 2008

AGILE METHODOLOGY

What is Agile Methodology?

[1]
* Group of software development methodologies
* Project management process
* Set of engineering best practices
* Business approach

Agile methodology aims to deliver high quality software which meets the customer's needs and company goals rapidly.

History

* Seventeen professionals, consisting of experts in programming, CTO's, founders of software consulting firms such as Martin Fowler – ThoughtWorks , Dave Thomas,  Andrew Hunt (co-authors of The Pragmatic Programmers), Ron Jeffries – propietor of Xprogramming.com and others, got together on February 11-13, 2001 at the Snowbird Ski Resort in Utah    
* The agenda was to develop  a 'lightweight'  process as an alternative to documentation driven, heavyweight software development processes (Waterfall, Cowboy coding)
* The Snowbird meet consisted of representatives from some of the existing software methodologies such as Extreme Programming, Adaptive Software Development, Crystal, and SCRUM
* Result of the Snowbird meet – The Agile Manifesto<ref>[2]</ref> and the Agile Alliance<ref>[3]</ref>
* Agile Manifesto values
** Individuals and interactions over processes and tools 
** Working software over comprehensive documentation 
** Customer collaboration over contract negotiation 
** Responding to change over following a plan 

What are Agile Manifesto practices?

* Customer satisfaction by rapid, continuous delivery of useful software
* Working software is delivered frequently (weeks rather than months)
* Working software is the principal measure of progress
* Even late changes in requirements are welcomed
* Close, daily cooperation between business people and developers
* Face-to-face conversation is the best form of communication (Co-location)
* Projects are built around motivated individuals, who should be trusted
* Continuous attention to technical excellence and good design
* Simplicity
* Self-organizing teams
* Regular adaptation to changing circumstances

What are existing Agile Methodologies?

* Extreme Programming
* Scrum
* Crystal Clear
* Feature Driven Development
* Dynamic Systems Development Method (DSDM)

EXTREME PROGRAMMING

References

1 | references-column-count references-column-count-2 }} }} }}" {{#if: | style="-moz-column-width:{{{colwidth}}}; column-width:{{{colwidth}}};" | {{#if: 2| style="-moz-column-count:2; column-count:2;" }} }}> <references group=""></references>