Extreme programming was developed within the late 90’s by Kent Beck even though leading the Chrysler Comprehensive Compensation Program. This agile software development methodology involves different aspects of other software engineering methodologies. The development of the Chrysler Comprehensive Compensation Program was focused on object technologies. The purpose of this the extreme programming methodology is to support agile software development. XP permits flexibility as a way to accommodate changing requirements. XP is organized about four simple activities: coding, testing, listening, and designing. The coding is what is going to be the end product of the system. Throughout the short development cycle, many iterations of code are produced to supply a solution for the customer. As with other software development processes, you’ll find testing phases. The testing is performed to make sure that the end product meets the requirements of the customer. In XP, the focus is on unit testing, which is automated to test the code. With the onsite customer, acceptance testing is performed as a way to make sure that the customer. Changes based on feedback are incorporated into subsequent baselines. The purpose of the listening activity would be to derive requirements from customer and give the programmers the chance to genuinely understand the enterprise need to have of the answer. The designing stage is for basically deciding the logic which is required for the method.
XP consists of five guiding values: communication, simplicity, feedback, courage, and respect. The XP methodology is distinctive within the reality that their values are incorporated instead of just guidelines. With any development activity, communication is essential for a cohesive end product. In most methodologies, the initial stage of system development is the Requirements Analysis stage that involves a mass quantity of documentation ready by business/requirements analysts. To be able to facilitate rapid development, the users need to have direct get in touch with with the programmers. By eliminating the middleman, the design and implementation is going to be far more directly impacted by the users. Whilst at initial glance it appears that there is certainly less organization applied in this method, you will find benefits to this structure. The simplicity in this methodology enables for working together more closely. The close proximity of all parties permit for more immediate feedback than would be facilitated with other methodologies. By delivering in short time frames, it allows the team to focus on the capabilities at hand. Feedback is essential for continuous improvement of the method. Feedback may be derived from testing of the method, customer input, or developer input when negotiating time estimates. Courage is necessary due to the fact some folks are not familiar with other agile methods of development. Respect is important to be able to develop a cohesive product. A developer would need to ensure that he or she is being a great teammate by ensuring that the code produced fits in with the application as a whole. Because the primary focus is on the customer, all members if the team have an equal role no matter whether they’re portion of organization analysis, development, or testing. Generally, the team sits in close proximity of each other as a way to work directly with the customer who will probably be driving the requirements.
Even with the success stories involving extreme programming, there is certainly still some resistance to extreme programming due to the government’s organizational culture. Government projects typically involve bureaucracy and politics, which demand careful documentation and negotiation on the smallest of problems. Because of the dynamic nature of XP, an assumption of risk need to be taken. XP programs don’t usually rely on a detailed plan that contains all the method requirements developed during initial conception. Additionally, the developers must be ready to offer speedy solutions to problems that arise. Yet another problem is that the customer will have to obligation of becoming an active participant in the method by continually supplying requirements and feedback. If errors are not regarded as to be part of the method, it becomes an problem of lower customer satisfaction, which could result in anything from the reduction of incentive bonuses up to the termination of the project.
Some are resistant to some XP practices. For example, some organizations don’t realize that the concept of pair programming doesn’t mean that the pair is only producing the function of 1 person. They are not sharing a brain, so to speak, but are in fact focusing on good quality control and information sharing. An additional concern will be the emphasis on a 40-hour workweek. Many organizations really feel which you really should make personal sacrifices so that you can complete meet the milestones in a timely manner. Nevertheless, by allowing sufficient work-life balance, the developers are more motivated and productivity increases. Also, there’s a distinctive line between government employees and government contractors. Sometimes it can be the result of a power trip, other times it could be a matter of preserving ethical boundaries.