Friday, March 21, 2014

undefined undefined
   Extreme Programming (XP) is the most widely used Agile Process model. XP uses an object oriented approach as its development paradigm. XP encompasses a set of rules and practices that occur within the context of four framework activities : planning, design , coding and testing.


Planning

  • Begins with a set of stories (scenarios).
  • Each story written by the customer is assigned a value depending on its priority.
  • The members of the XP team assess each story and assigned a cost measured in development weeks.
  • If a story has more that three weeks to develop the customer is asked to split it.
  • New stories can add any time.
  • Customers and XP team work together to decide how to group stories for next increment.
  • AS development work proceeds, the customers can add stories, split stories and eliminate them.
  • The XP team then reconsiders all remaining releases and modify its plan accordingly.
Design

  • A simple design is preferred.
  • Design only consider the given stories.
  • Extra functionality discouraged.
  • Identify the object oriented classes that are relavant to the current system.
  • The output of the design process is a set of CRC ( Class Responsibility Collaborator) cards.
Coding

  • XP recommends developing a series of unit tests for each of the story.
  • Once the code is complete, units should be unit tested.
  • Pair programming – two people work together at one computer.
Testing

  • The unit tests that has been created in the coding stage should be implemented using a framework that can be implemented.
  • This enables regression testing.
  • Integration and validation can occur on a daily basis.
  • This provides the XP team with a continual indication of the progress and also raise flags early if things are going wrong.
  • Acceptance tests are derived from user stories that have been implemented as parts of the software release.




Related Posts:

  • Throw away Prototyping The objective is to understand the system requirements clearly.Starts with poorly understood requirements. Once the requirements are cleared, the system will be developed from the beginning.This model is suitable if the req… Read More
  • Problems with the Waterfall Model Real projects rarely follow the sequential flow that the model proposes. Although the Waterfall model can accommodate iteration, it does so indirectly. It is often very difficult for the customer to state all requirements ex… Read More
  • Evolutionary Prototyping Advantages Effort of prototype is not wasted. Faster than the Waterfall model. High level of user involvement from the start. Technical or other problems discovered early – risk reduced. A working system is available ear… Read More
  • Waterfall model Software Requirement Analysis and Specification The system’s services, constraints and goals are established with the consultation with the users. This would include the understanding of the information domain for the sof… Read More
  • Component Based Software EngineeringEmphasizes the design and construction of computer based systems using software “components”. The process relies on reusable software components. Similar to the characteristics of the spiral model. Requirement specificati… Read More

0 comments:

Post a Comment

Copyright © 2025 Software Engineering Fundamentals | Powered by Blogger
Design by N.Design Studio | Blogger Theme by NewBloggerThemes.com