By the time when you are reading this article, you could have started hearing the word Extreme programming. There is a debate going on already whether extreme programming is good or not? Here I’d like to cover some of the key features of extreme programming and will give some links at the end; they can feed you enough for further reading.
What is XP?
Extreme programming (XP for short) is a software process developed by Kent Beck. Extreme programming has several interesting features; the first one involves less paperwork.
The XP players
In XP everyone has important roles. The main players are the XP customer, team, and manager. The XP team plans and builds “stories”, a story that gives the idea about how the system should function.
Macronimous Flash Development Services:
The customer will describe how any story to be. She/He will be involved in determining the stories, which have more business value and has valuable features that can be developed within the timeline. The number of stories depends on the size and complexity of the project. The customer will involve in the process of acceptance testing which means testing and verifying the final solution if it is up to the need or not. In XP the customer will define the release. Remember an extreme project needs a full-time customer for guiding the project throughout its phases. The customer can be on-site or sometimes they may not be there.
The XP programmer’s roles are analysis, design, coding, testing, and integration. Moreover, the programmer in the team can estimate the difficulty and finishing time on stories. XP programmers involve in continuous integration, excessive testing, pair programming, collective code ownership, refactoring, etc.,
and The Manager
The manager is the middleman who makes the process between the customer and the team smoother. The manager has to find out the factors that are making the process slow and by applying his knowledge and experience he has to change the problems. The managers will not involve directly in the phases during the analysis, design, coding, testing, or integration but they will coordinate them for a smooth go. The manager is to fix the conflicts.
In extreme programming, everyone has their rights and they can raise their voice if anything goes against their rights. They can immediately have a standup meeting to fix out any conflicts or troubles if arises.
Extreme programming has many concepts. We’ll try to cover some of them in our forthcoming articles, like code quality, Acceptance tests, and pair programming. We will publish them in our website Resources section.
There are some controversies over XP too. But it’s a managers’ decision over XP in any software/web development company to adopt it or not to. Since extreme programming is good for companies with less manpower or smaller companies, they can use extreme programming methodologies while they are growing themselves.
Martin Fowler is coming with his new methodology on extreme programming. I’d suggest you give a visit to his site as he talks XP from another perspective.
Enjoy extreme programming!
To read further!
- There are several resources to start. We would suggest you start from a complete study. XP (Extreme Programming.org)
- Cutter article on Extreme programming http://www.cutter.com/ead/ead0002.aspl
- It strives for simple code—but simplicity is still a complicated thing to find. Martin Fowler discusses XP and UML issues. Is design dead?
- An article by Martin Fowler Costs & Benefits of Pair Programming.