Extreme Programming Study Method Case Study on Designing of Accounting Term Dictionary

Extreme Programming (XP) is a software development method that is simple and includes one of the agile methods pioneered by Kent Beck, Ron Jeffries, and Ward Cunningham. The main purpose of the Extreme Programming method is to reduce the cost of software changes, in traditional systems development methodologies, system requirements specified in the first phase of the project development and it is not changed. This means that the cost to the needs of the change that occurs in the later stages will be very expensive. The Results of this study are to determine how the weaknesses and strengths of the XP method of making an application accounting terms dictionary on a Smartphone.


I. INTRODUCTION
Agile Methods are developed for the traditional methodology, there are many things that make the development process FDQ ¶t be managed properly as the user desires. This methodology has been pretty much grown, they are: 1. Extreme Programming (XP) 2. Scrum Methodology 3. Crystal Family 4. Dynamic Systems Development Method (DSDM) 5. Adaptive Software Development (ASD) 6. Feature Driven Development (FDD) Extreme Programming (XP) is a software development method that is simple and includes one of the agile methods pioneered by Kent Beck, Ron Jeffries, and Ward Cunningham. XP is one of the agile methods are the most widely used and became a very famous approach. The goals of XP is a team formed between small to medium sized course, not necessary to use a large team. It is intended to deal with unclear requirements and the change of requirements very quickly >1@ The main goal of XP is for a down the cost of a change Software. In traditional systems development methodologies, system requirements specified in the early stages of project development and these permanent. This means that the cost of a change in requirements that happened to next stage will be an expensive. XP is directed for a lowering the cost of a change by introducing the basic values, principles and practical. By applying an XP, the development of a system must be more flexible to changes in

Extreme Programming (XP)
According to the Pressman >4@ Extreme Programming processes are:

Planning
This phase is started with listening is a collection activity requirements (needs) of a system that allows users of the technical team to understand the business context for a XP system and get a clear picture of the main features, functionality, and desired output. Listening leads to the creation of a collection of stories (usually also known as user stories) that describe the features, functionality, and the desired output for the system want to build.

Design
XP encourages the use of CRC cards (Class-Responsibility-Collaborator), where the CRC cards are used to identifying and organizing object-oriented classes. CRC card is only to design a system that is generated as part of the XP process.

Coding
The key Concepts for coding activity is a pair programming. XP recommends two persons to work together to create a code in a story. This concept provides a mechanism for solving a problem in real time (two or more people better than themselves) and quality assurance in real time.

4.
Testing XP acceptance tests specified by the users of the system and focuses on the features and functionality of the overall visible and was reviewed by the users of the system. Acceptance tests originated of the user stories that have been implemented as part of the release system

The Advantages of the XP Method
The target Extreme Programming is a team formed between small to medium sized course, do not need to use a large team. It is intended to deal with unclear requirements and the requirements changes very quickly. Extreme Programming is an agile method the most widely used and became a very well-known approach. XP is very minimum of documentation. This is accomplished to keep the agile methodology, because if it gets too much documentation (formal), then a software development methodology can no longer be classified in agile methods.
Every change or additional the functions and features can be delivered directly by outside the customer without having to make a formal letter which stated the request additions and changes. The developer can also respond instantly without having a formal statement, when it is also in accordance with the practice of collective ownership, although the currently a programmer may not be in place, the change or addition to the functions in the program code can be done by anyone who is ready.

The weakness of the XP method
1. Developers should always be ready to change because change is always appreciated. 2. Can not make a detailed code at the beginning (the principle of simplicity and also suggestions for doing what is necessary same day).

Reseach Method
The research method used in this research is descriptive method. Where is research descriptive study intended to describe the phenomena that exist, both natural phenomena and man-made phenomena. The phenomenon could be the shape, activity, characteristics, changes, relationships, similarities, and differences between one phenomenon with another phenomenon >2@.   Coding After designing method done, then it will made the coding to make the program. Coding made with the PHP programming language.

4.
Testing Software testing is meant to test all the elements that made the software is already in accordance with the expected. Software testing in this study using Black Box testing method. Black box testing is a fundamental aspect of software testing without considering internal logic structure of software. This method is used to find out whether the software is working properly. Here is one of the results of tests performed using the black box testing:  The results of this research that XP has some strengths and weaknesses, the Additional advantages of XP Establish good communication with clients, Lowering the cost of development, Improving Communication and the nature of each respect among developers, the Additional weaknesses while XP cannot make a detailed code at the beginning.