Extreme Programming (Xp) sample essay

StudyAcer homework Experts at a Glance, Save Time and Excel

Writer avatar
Dr.Emma

Rating: 5/5    Reviews 482

Success rate 97%

Completed projects: 783

Hello, I am Prof Writers, I am a bold, accurate, and experienced tutor committed to providing clients with high quality, original, and timely work. As a writer, proficiency in several disciplines in academic writing is necessary, and that is why I prioritize on delivering quality and appropriate work. Be assured that I will always follow the lai...

Writer avatar
Dr.JamesPhD

Rating: 4.9/5    Reviews 373

Success rate 100%

Completed projects: 592

Hello, I am a full-time professional freelance writer with over 6 years experience in academic writing. I have a PhD in Strategic Management and have done several projects in business management, marketing and other subjects. This experience has helped me reinforce my ability to work in various fields and handle simple and complex topics. I am a...

Writer avatar
Dr.Success

Rating: 5/5    Reviews 1326

Success rate 97%

Completed projects: 1976

Hello :) My name is Dr.Success, I've started on my path as a professional writer mostly by writing essays. However, in the years since then, I've written various other academic papers, from research works to book reviews. From Sydney to New York, there are hundreds of students all over the world that are happy with the services I've provided the...

Writer avatar
MarvellousTutor

Rating: 5/5    Reviews 371

Success rate 96%

Completed projects: 1173

Hi there! Im MarvellousTutor, your perfect author with huge writing experience in English, Art and Business. What? Need assignment on another subject? No worries: I can deal with anything! If you're dreaming of the reliable, responsible and always-on-time writer, here I am! I manage my time greatly, thus, your deadline is highly important for me...

Writer avatar
Prof_Stephen

Rating: 4.7/5    Reviews 891

Success rate 100%

Completed projects: 1136

Hello there! My name is Prof Stephen. I have been a full-time freelance researcher and writer for a period of over 6 years. I have successfully completed over 1000 projects and assignments. I have had a good professional relationship with my clients who always come back for more quality papers since I highly value quality, professionalism, and i...

Writer avatar
Prof.TzKelly

Rating: 4.9/5    Reviews 244

Success rate 96%

Completed projects: 479

I'm ProfTzKelly, talented wordsmith, grammar afficionado, and writing machine. I'm written everything from outlines to screenplays and book reviews to advanced research papers. All you have to do to be well on your way to a great grade is chat with me! I'm experienced in all major styles, including APA, MLA, Chicago, Harvard, and Vancouver. You ...

Writer avatar
ProfAcer

Rating: 5/5    Reviews 465

Success rate 96%

Completed projects: 852

Hey! My name is ProfAcer, and my goal is to help you to get through a tough period of your life. I've been a student, and I know that the amount of work some professors expect you to do can be unfair and overwhelming. And that's without even accounting for the job you probably have an active social life each student should have. There is no sham...

Writer avatar
ProfessorEunice

Rating: 4.9/5    Reviews 412

Success rate 99%

Completed projects: 719

In academic writing, quality, originality, and deadlines are vital, and these are my primary offerings to all my clients. I have two years of experience as a full-time academic writer, with over 300 finance, economics, marketing, business, and general papers written from scratch. Since joining this site, I have also tackled sociology, healthcare...

Writer avatar
Think_Tank

Rating: 4.8/5    Reviews 319

Success rate 100%

Completed projects: 584

Hello! People call me ThinkTank, and I've been earning money as an academic writer for years. With a lot of works under my belt, you can bet that I've dealt with dozens of various topics and different forms of papers, including essays, research papers, and even dissertations. I like the challenge that comes with this job. I first fell in love wi...

Extreme Programming (Xp) sample essay

Do Not Copy. Order Custom, Original Paper.

Agile projects are similar to traditional projects. “You still must define and initiate the project, plan for the project, execute the plan, and monitor and control the results” (“ccspace.com,” 2011). How these steps are accomplished is different and therefore, the Agile project manager must adapt his approach. One agile software engineering method is Extreme Programming or XP.

XP is a collection of values, principles and practices designed to rapidly create highquality software that provides the maximum value for the customer as quickly as possible. It is called extreme or XP because it takes commonsense principles and practices to extreme levels, changing the way programmers work. It is a lightweight methodology suitable for small-tomedium-sized teams developing software that are faced with vague or rapidly changing requirements. XP began in the late 90’s. Ward Cunningham, Kent Beck, and Ron Jeffries are considered the originators. It is based on Beck’s years of software development using objectoriented programming (Brewer, 2001). “Beck and Jeffries worked together at Chrysler Corporation on the first large-scale project to use XP” (“Software development methodologies:,” n.d., para. 2). Since the publishing in 1999 of Extreme Programming Explained by Beck, more publicity has been given to XP as is evident by an increase in books, papers, conferences and web sites.

Beck (2000) gives examples of taking well-known software development practices to extremes. By using pair programming, code reviews are continual, through unit testing and functional testing, testing is continual, integration is continuous by integrating and test several times a day, and considering short iterations, XP makes the iterations very short, minutes and hours vs., weeks and months and years (Beck, 2000).

XP has with five values: communication, feedback, simplicity, courage, and respect. These values are expanded into fourteen principles and again into practices. These practices are specific things that teams can do day-to-day, while values are the fundamentals that strengthen the approach. Although many sources of information about XP list 12 key practices, these have been updated and now list 13 primary practices and 10 secondary practices (Goodpasture, 2010) described below:

Primary Practices Sit Together

Explanation The team should be co-located to allow face-to-face communication and collaboration.

Whole Team

The XP team is multidisciplinary, including both functional and technical experts, not just developers.

Informative Workspace

Use visuals to communicate work in-progress and where you are in the development process. These visuals may be big visible charts, a story wall, white board(s) or sticky notes. The key is to relay information without requiring a lot of time interpreting.

Energized Work

The diverse XP team should work at a sustainable (for a nearly indefinite period) pace, emphasizing that there be no crisis management at the end. With redundant skills on the team, members can come and go for short periods without slowing development.

Pair Programming

Two engineers participate in one development effort, programming in teams, sitting together and jointly solving problems. This contrasts with most conventional methods were programmers work individually. Stories (User Stories) Units of customer functionality are planned in stories related in business terms by embedded customers and interpreted into design requirements by the team. Weekly Cycle Quarterly Cycle Work is completed in weekly cycles. The project depends on business cycles for approvals, funding and often the rollout schedule. For this reason, XP projects must remain aware of current business cycles.

Slack To ensure a minimum of must have requirements are delivered to production and also ensure all time boxes are finished on schedule without holding up others, build buffers into the schedule. Ten Minute Build Decompose requirements to allow short frequent builds to maximize value through testing and validation. Continuous Integration Continuously update the baseline as improvements are made to ensure everyone works with the latest design and to avoid configuration mishaps.

Test First Programming Use test-driven development (TDD): “document development requirements with test scripts… run the test, modifying the object design until it passes… refine the detail design of the object” (Goodpasture, 2010, p. 83). Incremental Design Incremental design allows the system developer to define software in stages. It is characterized as a team working in iterations, where software features grow with each iteration, and where each iteration ends in the production of a stable piece of software for use (“Software development is,” 2007). Secondary Practices Real Customer Involvement Users and customers chosen to participate should be more than just available. They must also have with real, practical, business knowledge.

Incremental Deployment Product is deployed on a speed dictated by the customer’s ability to absorb change. This also may require parallel processing of legacy software. Team Continuity Teams remain together while remaining effective; minimal turnover contributes to the stability of team metrics such as velocity. Shrinking Teams Teams are right-sized; generally, small teams are more nimble, creative, and innovative. However, teams should not be so small as to be ineffective or not allow redundancy needed to tolerate small staffing shortfalls. Root Cause Analysis Always get to the bottom of problems; use root cause analysis to point toward a process that is not working well or does not exist. Shared Code “Everyone can work on any of the product code, and often code is a product of multiple collaborations” (Goodpasture, 2010, p. 308).

Code And Tests

Permanent artifacts of the project include code, test scripts, and test conditions.

Single Code Base

Integrity of design is maintained by keeping baseline; test and development copies are temporary.

Daily Deployment

New design is integrated daily. It is only added to production daily if the customer can absorb change rapidly. “Work orders are contracted in short sequences when parameters can be stabilized” (Goodpasture, 2010, p. 308).

Negotiated Scope Contract

“XP relies on simplicity, unit testing, programming in pairs, communal ownership of code, and customer input on software to motivate code improvement during the development process” (Beck, 2000). XP uses an incremental planning approach, quickly developing an overall plan that is expected to evolve through the life of the project. By using short iterations, XP is quick and flexible. Every few weeks, organizations are able to see tangible progress on goals. Programmers and customers write tests to monitor the progress of development, allowing the system to evolve, and catch defects early. Additionally, organizations are able to change the direction of the project during development without incurring exorbitant costs.

SCRUM, another Agile methodology, is very similar the XP. Both emphasize Customer Participation, Test-Driven Development, and the use of small teams. SCRUM focuses more effort removing impediments, with daily stand-up meetings where programmers list issues impeding progress, and the Scrum Master is tasked with removing impediments. XP uses pair programming and continual testing to resolve issues. Both methods use iterations but with XP, the iterations are much shorter, 2-3 weeks vs. one month is SCRUM. The table below depicts some other similarities and differences (Shore, 2007).

XP Thinking Pair Programming Energized Work Informative Workspace Root-Cause Analysis Retrospectives Collaborating Trust Sit Together The XP Team Real Customer Involvement Ubiquitous Language Stand-Up Meetings Coding Standards Iteration Demo implied Sit Together Whole Team Real Customer Involvement implied implied implied implied Pair Programming Energized Work Informative Workspace Root-Cause Analysis implied

SCRUM

n/a implied implied implied implied

implied Open Working Environment Scrum Team implied n/a Daily Scrum n/a Sprint Review

Reporting Releasing “Done Done” No Bugs Version Control Ten-Minute Build Continuous Integration Collective Code Ownership Documentation Planning Vision Release Planning n/a Quarterly Cycle Incremental Deployment Daily Deployment The Planning Game Risk Management Iteration Planning Slack Stories Estimating Developing Incremental Requirements Customer Tests Test-Driven Development Refactoring Simple Design Incremental Design & Architecture Spike Solutions Performance Optimization implied implied n/a n/a implied implied Test-First Programming implied Incremental Design Incremental Design implied n/a n/a n/a n/a n/a implied n/a Weekly Cycle Slack Stories implied implied Product Backlog implied n/a implied n/a Sprints implied Backlog Items Estimating implied implied implied Ten-Minute Build Continuous Integration Shared Code implied implied n/a n/a n/a n/a n/a implied implied implied

EXTREME PROGRAMMING (XP) Exploratory Testing n/a n/a

Project Managers must consider various aspects of the project to make an appropriate selection of which methodology to use. XP is just one approach. XP’s set of practices conforms to the values and principles of Agile and its disciplined approach to software engineering, which leads to project success. Therefore, when faced with projects involving new or prototype technology, where the requirements change rapidly, or some development is required to discover unforeseen implementation problems XP is a good choice.

References

Beck, K. (2000). Extreme programming explained, embrace change. Addison-Wesley Professional.

Brewer, J. (2001). Jera design. Retrieved from http://www.jera.com/techinfo/xpfaq.html

ccspace.com. (2011). Retrieved from http://www.ccpace.com/resources/documents/agileprojectmanagement.pdf

Goodpasture, J. C. (2010). Project management the agile way: Making it work in the enterprise. Fort Lauderdale, FL: J. Ross Publishing, Inc.

Shore, J. (2007, DECEMBER 13). Scrum and xp practices: Cross reference. Retrieved from http://www.jamesshore.com/Blog/Scrum-XP-Practices-Cross-Reference.html

Software development is a team sport!. (2007, JULY 25). Retrieved from http://blogs.msdn.com/b/aridle/archive/2007/07/25/definition-iterative-and-incrementaldevelopment.aspx

Software development methodologies: extreme programming (xp). (n.d.). Retrieved from http://cs.smu.ca/~porter/csc/465/notes/sdm_xp.html


Need help with writing Extreme Programming (Xp) sample essay?

Get help


  • StudyAcer

    4.7/5
  • Trustpilot

    4.6/5
  • Sitejabber

    4.6/5

Please fill in the Order, to get Instant Homework Help


Attach files for the writers' reference