Adaptive Methodologies for System Development: A Comparison of Scrum and Extreme Programming (XP)

Verified

Added on  2023/06/05

|15
|2854
|471
AI Summary
This article discusses adaptive methodologies for system development and compares Scrum and Extreme Programming (XP) methodologies. It explores the advantages and disadvantages of each methodology and provides recommendations for OJL's system development needs. The article also includes an event table, domain model class diagram, design class diagram, and use case diagram.

Contribute Materials

Your contribution can guide someone’s learning journey. Share your documents today.
Document Page
Contents
Introduction to Adaptive Methodologies...............................................................................................1
Scrum Methodology..............................................................................................................................1
General Discussion............................................................................................................................1
Advantages........................................................................................................................................2
Disadvantages....................................................................................................................................2
Extreme Programming (XP)..................................................................................................................3
General Discussion............................................................................................................................3
Advantages........................................................................................................................................3
Disadvantages....................................................................................................................................3
Recommendations.................................................................................................................................3
Event Table............................................................................................................................................4
Domain Model Class Diagram................................................................................................................5
Design Class Diagram.............................................................................................................................6
Use Case Diagram..................................................................................................................................7
Use Case Description (intermediate) – Create job.................................................................................8
References.............................................................................................................................................9
Appendix...............................................................................................................................................9
Memo................................................................................................................................................9

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
Introduction to Adaptive Methodologies
The required system needed for the OJL can be developed using a variety of different
methods and approaches. However, each of the methods may or may not be the most
optimum method and the resulting output may as well differ based on the methods and
approaches that were followed. Also, the approach that is followed also plays an important
role in deciding the behaviour of the system and also, it’s attributes. One of the choices of
system development methodologies is known as adaptive methods for development system.
Each of these methods have their own set of guidelines and approaches, however in the case
fo adaptive methods, the defined approaches are not static and it changes from project to
project. This is because, each of the project have their own unique requirements and differ in
types. Methodologies like the one suggested here help the developers in developing robust
and scalable system by making use of ad-hoc process. The most famous class of development
methodologies under these methods are the Agile frameworks. These methods are meant to
provide projects as well as their respective team members with the abilities and benefits of
producing scalable products which are in according with the expectation of customers. The
project in this case is about developing a system that will run on mobile devices for an
organization known as Odd Jobs Limited or OJL. The main users of this system would be the
contracting staff that have been employed by the company. The report would further address
the right choice of development methodology while comparing SCRUM as well as XP
methodology for system development.
Scrum Methodology
General Discussion
SCRUM is a type of adaptive software development methodology and is primarily based on
the previously mentioned Agile Frameworks. SCRUM does not have any fixed steps or
Document Page
sequences that has been defined as per it’s methodology and the overall development process
that has to be followed is based on ad-hoc process. The requirements for the project are also
mainly analysed and stored as user stories. The project work and development is executed on
the basis of variety of sprints that are completed one after the other. Also, a sub-set of user
stories are extracted from the backlog of the product and are then placed in sprint backlog in
order to execute them. One cycle of such runs for over a period of 14 days and it goes to a
maximum of 4 weeks. Typically SCRUM based project has small team size that varies from 5
to 9 members (Sachdeva, 2016). Customers are in the end provided with a product that works
and they are supposed to test and give their feedbacks.
Advantages
SCRUM methodology has certain key advantages over other methodology and can prove to
be quite valuable in similar cases.
The customers would get the product delivery in very short intervals and they would
also be able to receive hands-on experience for working on the product towards the
end of each of the sprint. Furthermore, customers will be able to interact with the
system even before the final release of the product.
The customers would also be able to provide their feedback and their responses after
working on the product and these feedbacks and comments are then incorporated in
sprint which enhances the quality and overall abilities of the final product.
The project under SCRUM is also highly scalable and any changes requested for the
system can be easily scaled up and down during the development of the project
(Mahnic, 2012).
There are many risks associated with an IT Project. For the same, risk analysis and
identification shall be handled in the initial sprints itself. Further head, the dynamic
risks would be executed.
Document Page
Disadvantages
SCRUM requires lot of attention and devotion from the developers and project
managers. In efficient team or team with no SCRUM experience may hinder the
complete benefits that SCRUM provides (Rajasekaran, 2015).
SCRUM does not require an END date and as a result, certain activities such as go-
live, training and support becomes vague and ambiguous in the case of SCRUM base
projects. There’s also an issue that the project may fall into limbo and continue
indefinitely.
If any member of the project team leaves the team, then the new member who will be
added to replace him would face certain difficulties in catching it up.
Extreme Programming (XP)
General Discussion
XP or Extreme programming is a software development methodology which is also based on
the Agile frameworks. The main standout feature of XP is it’s ability to incorporate frequent
changes within the project at ease. The initial phases in XP requires the team members to
work on analysing the project outcomes as well as results. After that, the development-
oriented tasks are executed and simultaneously, parallel testing is also carried out. The
methodology is famous for it’s shorter development lifecycles as well as enhanced team
productivity (Wood, Michaelides & Thomson, 2013). XP incorporates the use of checkpoints
in order to manage project needs as well as modifications done on those requirements.
Advantages
The intensive tests within the project would ensure that identified risks and gaps are
resolved as and when they occur.

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
The code being produced under the XP methodology would follow principles of
simplicity and ensure that the developers could easily make the changes and when
needed.
Software development cycles within the XP are quite short in XP and it allows
customers to be able to test out the product in development rapidly (Fotjik, 2011).
Disadvantages
There could be certain cases in which the team member working on the project are not
working from a common location. As a result, remote access as well as
telecommunication facilities are required. Now, in the case of XP methodology,
remote working sessions and teleconferencing abilities do not work well with it.
The quality assurance for the code being developed is not managed (Erickson,
Lyytinen & Siau, 2005).
System design is primarily considered as secondary here and the development code is
offered main preference. This results in issues when the product is launched in terms
of user experience levels.
Recommendations
The 2 methodologies mentioned earlier XP (Extreme Programming) and SCUM have been
detailed earlier. They both have certain pros and cons. However, it has to be analysed that
which one of them are more suitable for the OJL’s system development needs. The
drawbacks of SCRUM do not much affect the OJL case. On top of this, the advantages
provided by SCRUM does affect the OJL’s case in a positive way. Whereas on the other
hand, the drawbacks of XP does affect significantly to the OJL’s case. This is because, for
such a complex project, there would be various teams working remotely on the project. At the
same time, there would be off-shore developers and contractual workers who may not visit
Document Page
the premises for working on the project. Given the drawbacks of XP in case of remote
employees, it becomes difficult to recommend this methodology. On top of this, the project
requires a simplified user interface and design logic to contribute towards a good user
experience. XP also lacks in this area and this would negatively affect the outcome of the
project (Sobiech, Eilerman & Rausch, 2016). SCRUM also provides the principles of
adaptability which would be quite helpful in this case.
Event Table
Event Type of
the
event
Event
Trigger
Origin Use Case Output Destination
Adding a
customer
Internal Renting a
skilled
labour or
vehicle
By
customer
Registration
of customer
Details of
customer
added
OJL and
customer
Adding
contracting
staff
Internal Adding
contractin
g staff
The staff
itself
Addition of
the said
contracting
staff
The staff
is added
OJL and
Skilled
labour
Adding a
new vehicle
Internal A new
vehicle
Vehicle Vehicle
addition
The
vehicle is
added
OJL and
vehicle
Document Page
Renting by
customer
Internal Renting of
a vehicle
Customer Placing of a
job
New job
created
OJL and
Customer
Hiring a
skilled
labour by
customer
Internal Hiring of a
labourer
Customer Placing of a
job
New job
created
Job,
Customer
and OJL
Allocating
tasks to
workers
Internal Creation
of job
OJL Assigning of
either
vehicle or
labour
Either a
vehicle or
labour
being
assigned
OJL and
Job
Creation of
an invoice
Internal Job
invoice
upon
completio
n
OJL Creation of
invoice
Creation
of invoice
Invoice and
OJL

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Domain Model Class Diagram
Design Class Diagram
Document Page
Use Case Diagram
Document Page
Use Case Description (intermediate) – Create job

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
Use Case Creation of job
Scenario Creation of a new job
Triggering Event Hiring of a new vehicle or a labour
Description Customer can create a new job in OJL system
Actors Customer
Related Use Case Assigning of either a vehicle or a laborer”
Stakeholders 1. Customer
Pre-Condition Successful registration and log-in
Post-Condition Job creation by the customer.
Flow of activities
Actor System
1) ‘Add Job’ button clicked by
customer.
3) Details entered by the customer
6) Staff opens ‘Pending task list’
7) Staff selects an appropriate
resource and assigns to it.
2) System returns with the following details: Job end
date, number of jobs available, fields of job etc.
4) Displaying of the reference identification for the
respective order
5) Automated notification sent to the staff
8) Automated notification sent to the customer
Alternate Course of Action 3.1 Incorrect data submission results in an error.
Document Page
References
Adi, P. (2015). Scrum Method Implementation in a Software Development Project
Management. International Journal Of Advanced Computer Science And Applications, 6(9).
doi: 10.14569/ijacsa.2015.060927
Carvalho, B., & Mello, C. (2011). Scrum agile product development method - literature
review, analysis and classification. Product Management & Development, 9(1), 39-49. doi:
10.4322/pmd.2011.005
Erickson, J., Lyytinen, K., & Siau, K. (2005). Agile Modeling, Agile Software Development,
and Extreme Programming. Journal Of Database Management, 16(4), 88-100. doi:
10.4018/jdm.2005100105
Mahnic, V. (2012). A Capstone Course on Agile Software Development Using Scrum. IEEE
Transactions On Education, 55(1), 99-106. doi: 10.1109/te.2011.2142311
Rajasekaran, V. (2015). Issues in Scrum Agile Development Principles and Practices in
software development. Indian Journal Of Science And Technology, 8(35). doi:
10.17485/ijst/2015/v8i35/79037
Document Page
Appendix
Memo
Odd Jobs Limited
26th September 2018
To: Odd Jobs Limited (OJL) – Colin Grey
From: Data Analyst
Subject: Requirement Gathering Techniques. Decisions for Making / Buying.
Dear Colin,
The project for the development of a mobile-based system will be laden with several
requirements that would need to be analysed beforehand when starting with the development
and design of the system. Such requirements would include, the system qualities, the
functional aspects for the system, requirements and end-user preferences and system
qualities. These functionalities range in the form of logging-in ability, registration ability,
management of information among others. In terms of the system quality that needs to be
considered includes availability, performance, security, optimizations and more. Apart from
this, the main user requirements would be focusing on those aspects that allows the
application to become usable providing a rich user experience to the users. Now, in order to
gather these requirements certain techniques needs to be employed.
Brainstorming, interviews as well as observations are the 3 major techniques that we would
need to put in use for OJL project. Of these three, the interview is the first and the foremost
method that would be employed. It will involve one-on-one sessions that needs to be
managed for different stakeholders too. The questions for the interview would be prepared
well in advance and the date and timing for the interview would also be communicated to the
respective third party. The respective interviewee will provide the answers to the questions
and the same shall be recorded by the interviewer. Any analysis that needs to be done for the
interview question responses, shall be done after the interview has concluded.
The second technique, that I am talking about are the Brainstorming sessions. These would be
also required for requirement identification. The brainstorming sessions would be conducted
for staff members as well as other entities who are affiliated with given application. The
Brainstorming sessions provides an ability to uncover such requirements that may have been

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
missed in the interviews and in addition provides the ability for the people involve to come
up with requirements that would benefit them.
The third major technique that needs to be employed for requirements gathering involves
observing the current system. Since, OJL is using a system that is riddled with numerous
bugs and issues, it would help in the decision making for the newer system. So, the flaws
present in the current system would give insights regarding the newer system. The activities
flow and problems associated with each of the activity needs to be observed in detail to
properly accumulate the requirements. Furthermore, there are additional techniques that could
be employed to for information gathering. These includes questionnaires, decision trees,
surveys and group discussions.
The system deployment consists of multiple sequence of activities that needs to be executed
before doing the actual deployment. Also, several decisions need to be taken and they could
have significant implication on the outcome of the project. One of the key decisions is to
choose whether the system should be an off-the-shelf package or developed in-house. If the
answer is an in-house solution, then that would mean building the system from scratch and
which in turn means no prototypes or samples that could be followed. The second option
which is getting a commercial off-the-shelf solution involves finding the right solution and
then integrating it within the business. Both of these solutions have certain drawbacks and
benefits. The main advantage of having an in-house system is that it ensures highest level of
compatibility, integration and adherence to the actual requirements of the business. Whereas
the downside is that it takes a lot longer to achieve this, the investment remains significant
and the initial system developed could be unstable and riddled with bugs. The next option
which is buying a COTS system would mean that the adherence to the unique requirements
of the business may not be fulfilled and moreover certain business processes has to be
adapted and adjusted to that of the software. However, this solution provides immense
benefits such as faster turnaround time, requires significantly less investment and the system
would be ready to use and practically error and bug-free.
Keeping with the views, I presented earlier, it is evident that COTS package is a better
solution for OJL. Not only, will OJL be saving valuable resources such as finance and time in
getting an COTS system, it will also mean getting a far more reliable, mature and complete
system that would result in quick turnaround time. As a result, my suggestion would be to go
Document Page
with a COTS package as the budget with OJL is limited and the skills and knowledge
required to build an in-house system is also limited.
You are free to contact me for further queries.
Thanks & Regards,
Data Analyst
1 out of 15
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]

Your All-in-One AI-Powered Toolkit for Academic Success.

Available 24*7 on WhatsApp / Email

[object Object]