Extreme Programming in IT Project
Extreme Programming in IT Project
In particular, Extreme Programming (XP) is an Agile advancement method which underlines quick
and regular criticism to the clients and end-clients, unit testing, and constant code surveys. By
zeroing in on fast cycles of easier code, XP tries to recognize and resolve expected entanglements
in the improvement cycle early, prompting ventures that stay zeroed in on a definitive objective –
convenient conveyance of a very much planned and tried a framework that meets client necessities.
According to Cutter (2020), XP separates a venture into sub-extends, each including arranging,
improvement, combination, testing and conveyance. Designers work in little groups with clients
as dynamic colleagues. In the study of Anwer and Aftab (2017), it is explained that highlights are
executed iteratively during every improvement cycle with joint dynamic happening between the
client and the remainder of the turn of events group. Agile programming advancement techniques
utilize human and correspondence situated standards related to light, however adequate, rules of
venture methodology and conduct. They depend on arranging, with the agreement that everything
is unsure, to direct the quick improvement of adaptable frameworks of high worth. Outrageous
Programming has been depicted as far as the qualities that help it: correspondence, criticism,
effortlessness, boldness, and regard. This approach works by uniting the entire group in the
presence of basic practices, with enough criticism to empower the group to see where they are and
tune the practices to their remarkable circumstance.
1
2.0 Agile Frameworks
Software development methods (FRAMEWORK & METHODOLOGY) are used to determine the
way work is planned, planned and structured when creating an information system. At present
software development is done by following many methods. The most popular of these is the agile
method is XP. Software development in the agile system is parallel. According to Cockburn
(2006), agile is the sum of many small waterfall methods. To know more about this Software
Development Life Cycle (SDLC) - must be well understood. Agile is a software development
method that builds software using short iterations of 1 to 4 weeks in a row so that it can be adapted
to changing business needs. Most agile development methods divide it into smaller tasks when
solving a problem. There is no direct long-term plan for any project. Iterative issues are planned
for a short period of time such as 1 to 4 weeks. A cross-functional team is formed for each iterative
subject which performs all the stages of software development such as planning, requisition
analysis, design, coding, unit testing and acceptance testing. So the result of each iterative subject
is the working product, and after each incremental step, the partners are explained its position.
Review comments are then taken and its relevance for functional software is verified.
The Extreme Programming Methodology was created and first executed by Kent Beck at
DaimlerChrysler in 1996 as a way to accelerate development efforts while creating better
programming for their Chrysler Comprehensive Compensation (C3) Project. The C3 task had run
into a stalemate. Past effort to build up another finance framework – one that would uphold more
than 86,000 worldwide representatives from association spoke to workers to upper administration
– had fizzled, and in mid-1996 it was chosen to begin once again from scratch (Dalalah, 2014). As
a foundation, the new framework was to supplant three separate inheritance frameworks that had
been set up for more than twenty years supporting the different finance gatherings. Initially,
Chrysler had bought a finance framework from the main industry seller. After numerous long
stretches of exertion, it was resolved that neither this bundle nor any available, could deal with the
complexities of the current financial structure. Now, it was verified that the framework would need
to be planned and worked without any preparation. The past usage attempt had utilized a custom
2
programming advancement philosophy, the "Cascade" technique. The group had discovered this
technique excessively embarrassing and awkward what's more, acknowledged they expected to
move toward the issue alternately. This is reliable with the past explanation of Merisalo-Rantanen,
Tuunanen, and Rossi (2005), as one of the cases they considered recommended that conventional
techniques were excessively prohibited and moderate, subsequently advanced their corporate
framework improvement model into an XP-like system.
In the study of Levina & W. Ross (2003), they proposed that having tough improvement
philosophies might demonstrate negative to the accomplishment of a more imaginative and
inventive application improvement ventures. Now, the group choose to apply the acts of Extreme
Programming to build up the C3 System. Over about the course of a year, they had the option to
planner, configuration, code, test and actualize a framework that upheld the Chrysler
Comprehensive Remuneration structure. This is a significant accomplishment while thinking
about that the past emphasis of the undertaking mulled for various years before being regarded a
disappointment and turning to XP. Fowler contends that these Agile approaches are vital due to
the high overhead and asset escalation of the current and predominant techniques for programming
improvement (2020).
From the study of Valacich, George and Hoffer (2015), there is plentiful space for upgrades to be
made in the overall programming advancement strategies. It is all around archived that frameworks
advancement disappointments are all excessively normal. Erickson, Lyytinen and Siau have stated
that although various meanings of what comprises a disappointment without a doubt yield various
rates, appraisals of disappointment rates on frameworks improvement ventures have been
suspected to go from 50% to 75 per cent (2020). Outrageous Programming, nonetheless, isn't
without its doubters. As a critical takeoff from conventional advancement techniques, numerous
organizations are reluctant to chance improvement tasks to a generally new advancement strategy,
particularly one that essentially withdraws from ordinary strategies. According to Dalalah,
selection of an Agile Methodology will likewise likely represent a few difficulties for associations
saturated with the customary frameworks improvement procedures since the two programming
improvement strategies are grounded in contradicting ideas (2014).
3
Figure 1: Life Cycle of Extreme Programing (DeHondt, G. and Brandyberry, 2007).
Planning:
This is the main period of the Extreme Programming life cycle, which includes client stories.
The advancement group will make Iterations later. The client stories are gathered from the
customer condition by the improvement group. The policy gives a few structures and tasks
requires. The engineers will take a shot at cycles once after the improvement group propose the
plan, time, and cash of working.
Designing:
After the preparation with its cycles, the planning cycle will become effective. Presently with
regards to plan, it doesn't imply that complex plan instead of effortlessness. The centre objective
4
is proceeding to look for framework usage that is as basic as could be expected under the
circumstances and doesn't imply that the framework doesn't meet its necessities.
Coding:
Coding is the most very important period of all life cycle stages because with XP it has needed
over every other assignment. Network and way of coding must be unchanged strength to the
harmony of the group. This configuration and style bring about quicker and more extensive
cooperation. This stage incorporates pair programming, representation, standard matching and
firm observation. For example, 40-hour work filled weeks without any additional minutes, code
audit, and refactoring.
Testing:
In extreme programming, testing is consistently opposed after completion of coding and advance
stages. At times, there are designers and groups where they compose the tests first and compose
the codes later because that will give them some lesson of what their codes need to do. They are
additionally called Unit Tests and the reason for doing them is to eliminate bugs before the
delivery. Then again, there is an approval trial toward the finish of the coding to convey the
customer with trial results.
Listening:
In each expression in this cycle tells into the customer is essential to understand what they
anticipate that the framework should do. Because with listening in to the customers, designers
guarantee they comprehend these prerequisites. Additionally, designers can give customers
criticism about the specialized perspectives if they understanding the prerequisites alright. All
inputs caught will be reexamined for the necessities by the advancement group and that will end
up being an establishment of a new plan. After this stage, the cycle will be reuse over.
5
3.2 Extreme Programming Background
Based on the study of Rojas, Guzmán, Coronel and Benítez (2020), an Information System
Development Methodology has been characterized as a coordinated assortment of ideas, strategies,
convictions, values and regularizing standards justified by material assets. Arranging frameworks
advancement started with "customary" strategies, for example, the "Waterfall" which at that point
advanced into the Systems Development Life Cycle – a usually utilized system development
technique. Be that as it may, these standard techniques adopt a strategy to system development,
requiring that one stage be finished preceding starting the following stage and the item isn't
transported until the entire direct arrangement has been finished. This adequately implies that the
primary day that usefulness can be conveyed to the client is the day ago of the task (aside from the
progressing system maintenance).
Beck stated that XP, at its centre, settles upon the accompanying qualities: correspondence and
input, effortlessness, and duty (2020). Venture achievement, and conveying programming that
meets the client prerequisites, requires continuous, vis-à-vis correspondence among engineers and
clients. In addition to the fact that this is explicit correspondence, yet additionally conveying
working code steadily at continuous stretches. At last, this is the best check for showing
comprehension of client necessities. Straightforwardness is typified by conveying just
arrangements that meet current client needs. XP doesn't endeavour to plan or foresee future
requirements. Eventually, the client is worried about tending to current requirements and isn't keen
on what may happen later. At long last, the duty of conveying top-notch code rests with the
designers of the framework. Lithe strategies centre around individuals as the essential drivers of
improvement achievement (Feng Et al., 2020). They are those nearest to the arrangement and
should be the most proficient about how the arrangement will be actualized. These qualities are
expanded into the twelve acts of the XP Methodology: arranging, little deliveries, analogies, basic
plan, testing, refactoring, pair programming, aggregate proprietorship, nonstop mix, nearby
clients, coding norms, and 40-hour week.
6
4.0 Extreme Programming in IT
Based on the research of Rantanen, Tuunanen and Rossi (2020), it can be mentioned that XP
produced critical interest among programming networks in the last part of the 1990s and mid-
2000s, seeing selection in various conditions profoundly not the same as its beginnings. For
instance, the act of end-of-day incorporation tests for a specific undertaking could be changed to
a finish of-week plan, or just decreased to testing on commonly concurred dates. Quite a more
loosened up timetable could maintain a strategic distance from individuals feeling hurried to create
counterfeit stubs just to pass the finish of-day testing. A less-inflexible timetable permits, all things
being equal, the advancement of complex highlights over a time of a few days. In the interim, other
agile methodologies practices have not stopped, and starting at 2019 XP keeps on developing,
absorbing more exercises from encounters in the field, to utilize different practices. In the second
release of Extreme Programming Explained (2004), five years after the main version, Beck added
more qualities and practices and separate among essential and practice result. The Theory of
Sustainable Software Development clarifies why extraordinary programming groups can flourish
despite group disturbances.
7
5.1 Case 1: IMPRO
This project discusses an experiment for adopting XP methodology for the development of an
Image Processing Environment, B.Sc Thesis by Ilker Atalay and Fikret Ballikaya (2003).
8
5.3.1 Aim of the project:
This project intends to offer observational proof to help the regular conviction that the role of the
on-site customer is requesting and requires a solid capacity to determine issues quickly.
6.0 Conclusion
The perspectives on these members in the Agile transformation hold that eXtreme Programming
has generous advantages when applied fittingly and they report numerous encounters that help this
view. There additionally should be thought given to whether the venture executed XP cycles and
practices. Examinations of remitted "XP" show that these undertakings were not, truth be told,
executing the qualities and standards, yet expressing that they were an XP practice. As a generally
new strategy, there is a requirement for a significant examination of the idea and its execution. The
creators propose performing subsequent work on similarly matched methods – in light of
utilization necessities, task type – that utilize eXtreme Programming and customary techniques as
their improvement approach. This could permit equivalence of the strategies to comparative
circumstances and help decide factors in every strategy or specific undertaking communication
9
that feature the qualities and shortcomings of each approach. Numerous XP users appear to infer
that XP would be the most ideal decision for all improvement sectors. Defenders of different
techniques appear to be all the more ready to state that there are sure that a specific system is more
qualified for than others. A significant inquiry that should be addressed is whether there are
advanced qualities that make XP pretty much prone to succeed. A few people trust XP succeeds
due to the better than expected aptitude level of the group. This examination uncovers setting the
general disposition of the group as a more notable element to extend accomplishment than the
inclination of the group.
10
References
Anwer, F. and Aftab, S., 2017. SXP: Simplified Extreme Programming Process
Model. International Journal of Modern Education and Computer Science, 9(6), pp.25-31.
Beck, K. and Andres, C., 2012. Extreme Programming Explained. Boston: Addison-Wesley.
Cutter.com. 2020. Agile Project Management: Principles And Tools | Cutter Consortium.
(online) Available at: <https://www.cutter.com/article/agile-project-management-principles-and-
tools-424511> (Accessed 28 November 2020).
Dalalah, A., 2014. Extreme Programming: Strengths and Weaknesses. Computer Technology
and Application, 5(1).
DeHondt, G. and Brandyberry, A., 2007. Programming in the eXtreme: Critical Characteristics
of Agile Implementations. e-Informatica Software Engineering Journal, 1(1).
Erickson, J., Lyytinen, K. and Siau, K., 2020. Agile Modeling, Agile Software Development, And
Extreme Programming: The State Of Research. (online) Semanticscholar.org. Available at:
Files.transtutors.com. 2020. (online) Available at:
<https://files.transtutors.com/cdn/uploadassignments/2875437_1_essentials-of-systems-analysis-
and-design-6th-edition.pdf> (Accessed 1 December 2020).
Feng, Y., Cui, D., Li, H., Zhao, Y. and Liu, J., 2020. Analysis of extreme programming. MATEC
Web of Conferences, 309, p.02016.
Fowler, M., 2020. The New Methodology. [online] martinfowler.com. Available at:
<https://www.martinfowler.com/articles/newMethodology.html> [Accessed 16 December 2020].
11
Hirschheim, R., Klein, H. and Lyytinen, K., 2003. Information Systems Development And Data
Modeling. Cambridge: Cambridge Univ. Press.
Ilkeratalay.com. 2003. Ilker Atalay, Computer Engineer M.Sc:: Extreme Programming And A
Real Life Example. [online] Available at:
<http://www.ilkeratalay.com/articles/xprogramming.php> [Accessed 4 December 2020].
Koskela, J. and Abrahamsson, P., 2004. On-Site Customer in an XP Project: Empirical Results
from a Case Study. Lecture Notes in Computer Science, pp.1-11.
Levina, N. and Ross, J., 2003. From the Vendor's Perspective: Exploring the Value Proposition
in Information Technology Outsourcing. MIS Quarterly, 27(3), p.331.
Hilkka Merisalo-Rantanen & Tuure Tuunanen & Matti Rossi, 2005. Journal of Database
Management (JDM)</A>, IGI Global, vol. 16(4), pages 41-61.
Rojas, S., Guzmán, L., Coronel, P. and Benítez, A., 2020. Innovation And Research. [S.l.]:
SPRINGER NATURE, pp.350-361.
Valacich, J., George, J. and Hoffer, J., 2015. Essentials Of Systems Analysis And Design. 6th ed.
New Jersey: Pearson Education, Inc.
12