0% found this document useful (0 votes)
38 views

Extreme Programming in IT Project

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
38 views

Extreme Programming in IT Project

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

Critical Evaluation of the use of

Extreme Programming in IT Project


Abstract
Extreme Programming refers to an advanced Project Management philosophy being an example
of AGILE methodologies. The current paper has the motivation behind creating a basic
examination of the Extreme Programming (XP) from the perspective of favourable circumstances
that it infers, both from a hypothetical and pragmatic methodology. From the hypothetical
perspective, the paper will introduce the primary commitments in Extreme Programming writing,
examining simultaneously the fundamental qualities of this method. From the pragmatic
perspective, making blend and examination of the fundamental logical papers in the field of IT,
the paper delivers to project supervisors that apply XP in projects. The examination approach is a
systematic one, utilizing the hypothetical investigation of the principle commitments in the writing
alluding to Extreme Programming, and the investigation of "the best practices" in the field.
Table of Contents

1.0 Introduction ..................................................................................................................................... 1


2.0 Agile Frameworks............................................................................................................................ 2
3.0 Extreme Programing ....................................................................................................................... 2
3.1 Life Cycle of XP:.............................................................................................................................. 4
3.2 Extreme Programming Background ........................................................................................... 6
3.3 Extreme Programming Values .................................................................................................... 6
4.0 Extreme Programming in IT ........................................................................................................... 7
5.0 Case Studies ..................................................................................................................................... 7
5.1 Case 1: IMPRO ............................................................................................................................ 8
5.1.1 Aim of the project: .................................................................................................................... 8
5.1.2 Used Agile methodology: .......................................................................................................... 8
5.2 Case 1: VOKS .............................................................................................................................. 8
5.2.1 Aim of the project: .................................................................................................................... 8
5.2.2 Used Agile methodology: .......................................................................................................... 8
5.3 Case 3: eXpert .............................................................................................................................. 8
5.3.1 Aim of the project: .................................................................................................................... 9
5.3.2 Used Agile methodology: .......................................................................................................... 9
5.4 Case 4: CARUSO ......................................................................................................................... 9
5.4.1 Aim of the project: .................................................................................................................... 9
5.4.2 Used Agile methodology: .......................................................................................................... 9
6.0 Conclusion........................................................................................................................................ 9
References ............................................................................................................................................ 11
1.0 Introduction

While current software development improvement regularly follows programming advancement


strategies, for example, the System Development Life Cycle (SDLC), associations normally make
certain adaptions to align these conventional topical techniques with their authoritative
requirements. While using this strategy is satisfactory, it frequently prompts cost invades, what's
more, longer improvement cycles than initially envisioned, and client necessities that remain
neglected. These kinds of issues can unleash ruin with partnerships' IT procedure also, arranging
capacities, just as have a huge negative effect on the business.

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.

3.0 Extreme Programing

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).

3.1 Life Cycle of XP:

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).

3.3 Extreme Programming Values

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

Extreme programming (XP) is an agile methodology which is expected to improve programming


quality and responsiveness to changing client requirements. As a kind of agile programming
advancement, it recommends regular "discharges" in short advancement cycles, which is proposed
to improve profitability and present checkpoints at which new client requirements can be
embraced. The philosophy takes its name from the possibility that the helpful components of
conventional programming designing practices are taken to "extreme" levels. For instance, code
audits are viewed as a gainful practice; taken to the extraordinary, code can be surveyed
consistently, for example, the act of pair programming.

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.

5.0 Case Studies


Extreme Programming or "XP" is considered as the most promising agile methodology. Extreme
Programming is a guideline of programming advancement dependent on effortlessness,
correspondence and criticism. XP has been used in many real-life projects since 1996 to present.

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).

5.1.1 Aim of the project:


Based on the research of Ilker Atalay (2003), It can be said that IMPRO is absolutely a GUI to
put together climate that runs concerning MS-DOS working framework in which different picture
handling schedules can be applied to pictures easily.

5.1.2 Used Agile methodology:


XP (eXtreme Programing) has been used to develop the image processing of this project.

5.2 Case 1: VOKS


According to the study of Elsevier & Fojtik (2011), the development of software derived from the
communication system PECS (The Picture Exchange Communication System) and the Czech
variant of this, VOKS is the base of this task to show the particularity of the turn of events and
authorization of programming for the given group of handicapped users.

5.2.1 Aim of the project:


This aim of the project is to improve the communicative skills of special children in special
schools.

5.2.2 Used Agile methodology:


XP (eXtreme Programing) has been used to develop this project.

5.3 Case 3: eXpert


According to Koskela and Abrahamsson’s study in 2004, a project was developed to implement
an intranet software named eXpert to manage a Finnish research institute called VTT Technical
Research Centre of Finland’s over years maintained research data.

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.

5.3.2 Used Agile methodology:


XP (eXtreme Programing) has been used to develop this project.

5.4 Case 4: CARUSO


In the year of 2002, Baumeister built up an EU-project named CARUSO for the advancement of
a system for building modified Customer Relationship Management (CRM) applications.

5.4.1 Aim of the project:


The goal of Baumeister with the project CARUSO was the improvement of a structure for
building redid Customer Relationship Management (CRM) applications (2002).

5.4.2 Used Agile methodology:


XP (eXtreme Programing) has been used to develop this project.

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.

Baumeister, H., 2002. The Use of XP in the CARUSO Project.

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).

Cockburn, A., 2006. Agile Software Development. Boston: Addison-Wesley.

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.

Fojtik, Rostislav. “Extreme Programming in Development of Specific Software.” Procedia


Computer Science, Elsevier, 22 Feb. 2011, Available at:
<https://www.sciencedirect.com/science/article/pii/S1877050911000330.html> [Accessed 16
December 2020].

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

You might also like