Agile Methodologies for Software Development: A System Analysis

Verified

Added on  2023/06/11

|15
|2683
|90
AI Summary
This report analyzes and reports on the agile and iterative methodologies used for software development. The report identifies the four agile methodologies and expounds on them. The four agile methodologies are extreme programming (XP), Agile Unified Process (AUP), Rational Unified Process (RUP) and Scrum. The way the four agile software methodologies are implemented, their advantages and disadvantages are outlined in relation to the development of the Australian Fashion Design software. The analysis of the four agile software development methodologies is to come find the most efficient, effective and suitable agile methodology to implement the Australian Fashion Design software. There is a recommendation on which agile software development methodology will be the best for the development of the Australian Fashion Design software.

Contribute Materials

Your contribution can guide someone’s learning journey. Share your documents today.
Document Page
1
System Analysis
Name
Institution
System Analysis
Instructor

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
2
System Analysis
Introduction.................................................................................................................................................3
Agile methodologies....................................................................................................................................4
Extreme programming(XP)......................................................................................................................4
Rational Unified Process(RUP).................................................................................................................5
Agile Unified Process(AUP)......................................................................................................................5
Scrum methodology................................................................................................................................6
Recommendation........................................................................................................................................7
References...................................................................................................................................................8
Appendix.....................................................................................................................................................9
Memo......................................................................................................................................................9
User Centered Design..........................................................................................................................9
Human Computer Interaction............................................................................................................10
Recommendation..............................................................................................................................11
Event table................................................................................................................................................12
Domain model class diagram.....................................................................................................................13
Design class diagram.................................................................................................................................13
Use case diagram.......................................................................................................................................14
Use case description Takes Order..............................................................................................................14
Document Page
3
System Analysis
Introduction
With regards to the request made by Australian Fashion Design Management to analyze and
report the agile and iterative methodologies used for software development, this report comes as
a response. The report identifies the four agile methodologies and expounds on them. The four
agile methodologies are extreme programming (XP), Agile Unified Process (AUP), Rational
Unified Process (RUP) and Scrum. The way the four agile software methodologies are
implemented, their advantages and disadvantages are outlined in relation to the development of
the Australian Fashion Design software. The analysis of the four agile software development
methodologies is to come find the most efficient, effective and suitable agile methodology to
implement the Australian Fashion Design software. There is a recommendation on which agile
software development methodology will be the best for the development of the Australian
Fashion Design software.
Document Page
4
System Analysis
Agile methodologies
Extreme programming (XP)
As the name suggests, extreme programming involves complex and iterative writing codes,
testing them and restructuring the codes (Salo & Abrahamsson 2008). It is also characterized with
small releases of the software to the stakeholders and the users of the Australian Fashion Design
Software. These small releases of the modules enable the development team to iteratively
accommodate all the requirements in the requirement specification.
The entire methodology of extreme programming is comprised of three operations which involve
extreme coding, extreme testing and constant and timely user involvement in the development
process by the team of developers.
Extreme programming operations
Extreme coding. This is where the development team implements the Australian Fashion Design
Software using the chosen tool or programming language. This level is a cooperative, the
programmers have to consult with each other to avoid error propagation during coding. It also
requires a lot of skilled programmers from different areas of expertise.
Code testing. After coding, the development team evaluates the code they have to the results that
the software is supposed to give to establish whether the code is fulfilling and correct with no
errors, this is called code testing. Extreme programming has two levels of testing of the code
written by the team of developers (Satzinger et.al 2012). The levels are module testing and
acceptance testing. Module testing is the evaluation and analysis of a module’s performance
against the set goals, activities and results the module is supposed to produce. When errors are
discovered in the modules they are first rectified before the team codes another module. The
acceptance testing level deals with the whole system: module coupling, module interdependence
to one another and the functional operation and performance of the Australian Fashion Design
software as a whole. During evaluation these questions are asked, does the program perform as
required? Does it give the desired feedback?
Involvement of the users. Throughout the development process the development team has to
keep the users of the Australian Fashion Design software involved. This is done through the
release principle where the development team has a demonstration of each module , the release is
delivered to the management of AFD and their customers.
Advantages of XP

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
5
System Analysis
Scalability (Fojtik 2011). Using extreme programming the AFD software can be modified to
fulfill the dynamic user requirements of the AFD software. This is ensured through iterative
implementation of the AFD software.
Independence on tools. Extreme programming is not dependent on any hardware or software
when developing software. That means extreme programming can be used to develop software
using any development tool.
Disadvantages of XP
Expensive to implement. It requires skilled experts to implement. Hiring skilled experts is will be
expensive for AFD.
It is not best for a scenario where the programmers or the team of developers is geographically
separated.
Rational Unified Process(RUP).
RUP is a complex unified process that utilizes agility in the development of software (Manalil
2011). It combines four phases of development to implement a software to completion; inception,
elaboration, construction and transition. All these phases involve all the steps of a system
development life cycle(SDLC)
Advantages of RUP
Availability of manuals and learning materials for RUP methodology. This makes it possible to
have experts in the development of software using the RUP methodology.
With proper documentation, RUP is a complete agile methodology on its own .
Disadvantages of RUP
The integration of many modules using RUP to develop software makes it confusing and errors
can be propagated.
It requires skilled persons in RUP to develop a system.
Agile Unified Process(AUP).
It is a simple iterative agile software development methodology that adds a database refinement
feature to the rational unified process. It is simple as compared to AUP( Edeki 2013).
Advantages of AUP
Independence on the development tools. The development of the AFD software using AUP
methodology can be done using any tools of software development.
Simplicity. The implementation of AFD software is simple.
Document Page
6
System Analysis
Scrum methodology.
This is an iterative agile software development methodology that divides the development
process into sprints. The development team responsible for development has to comprise three to
nine experts geographically located in the same place (Cardozo et.al 2010, April).
Scrum development process is divide into four phases or stages; planning of the sprint, daily
scrum meetings, sprint review and sprint reflections.
Sprint planning. This initial step in scrum methodology. It identifies a module for instance
customer relationship management for the AFD software as a sprint, then specifies its
requirements and set plans for the development of the module.
Daily scrum meetings. The team of developers involved in the development of the sprint has a
daily meeting to establish where the sprint implementation has reached.
Reviewing of sprints. This is done after the development and realization of every sprint. The
review of a sprint is comparing the results of a sprint to the set objectives that were made in
sprint planning. This is where a demonstration of the sprint is delivered to the stakeholders.
Sprint reflection. The sprints developed are reviewed to spot errors, weakness and improve the
sprint positively
Advantages of scrum
Scalability. Scrum uses agility nature to incorporate the dynamic human needs to the AFD
software.
It is tool independent. It does not depend on any tool for development of the software. It
therefore can be used to develop the AFD software using any available tools at the team of
developer’s disposal.
Disadvantages of scrum.
Depending on a vendor-off the shelf software for a sprint may lead to delays in the development
process or even software development process.
It is never suitable for the development team that is geographically separated (Nishijima & Dos
Santos 2013).
Document Page
7
System Analysis
Recommendation
With reference to detailed explanation of the four agile methodologies, Extreme programming is
the best way to implement AFD software because it involves extreme coding of the software. It
starts from a simple module as it iteratively advances accommodating all the requirements in the
requirement specification until completion of the AFD software. The presence of the two testing
levels avoids error propagation and ensures compatibility of the AFD software to the
requirements it was meant for.

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
8
System Analysis
References
Satzinger, J. W., Jackson, R. B., & Burd, S. D. (2012). Introduction to systems analysis and
design: An agile, iterative approach. Course Technology, Cengage Learning.
Salo, O., & Abrahamsson, P. (2008). Agile methods in European embedded software development
organisations: a survey on the actual use and usefulness of Extreme Programming and Scrum. IET
software, 2(1), 58-64.
Fojtik, R. (2011). Extreme Programming in development of specific software. Procedia Computer
Science, 3, 1464-1468.
Manalil, J. (2011). Rational Unified Process.
Edeki, C. (2013). Agile unified process. International Journal of Computer Science, 1(3).
Cardozo, E. S., Neto, J. B. F. A., Barza, A., França, A. C. C., & da Silva, F. Q. (2010, April). SCRUM and
Productivity in Software Projects: A Systematic Literature Review. In EASE.
Nishijima, R. T., & Dos Santos, J. G. (2013). The challenge of implementing scrum agile methodology in a
traditional development environment. International Journal of Computers & Technology, 5(2), 98-108.
Document Page
9
System Analysis
Appendix
Memo
User Centered Design
User centered design majorly focuses on the user comfort when using the software. The users
comfort while using the system is realized by ensuring the traits and the environments of the
users are evaluated and incorporated in the software as it is being designed. The design is user
involving where the users opinions and stories of the software are put under consideration
throughout the design process.
Principles of User Centered Design
The design process is agile to ensure accommodation of user requirements.
User Centered Design focuses on the understanding of the user characteristics and environs.
Document Page
10
System Analysis
Experts in different areas of specialization should be included in the development team.
User Centered Design addresses all the user interactions with the software. This is to incorporate
all the user experiences with the software.
Implications of user centered Design
The development team involved in the development of the Australian Fashion Design software is
experts in different areas of specialization. This ensures that the customer relationship
management module and the software as a whole integrates all the non-functional requirements a
good software should depict.
The principle of user-friendliness emphasized by User Centered Design will enable more
customers of the Australian Fashion Design to be able to use the Australian Fashion Design
software easily and efficiently. This will impact greatly on the customer relationship
management system where more records of customers will be encountered.
The efficiency of the customer relationship management will increase. This is because customers
are able to use the customer relationship module more easily and with comprehension of the
activities they are undertaking.
Improved relationship. The customer intimacy observed in the customer relationship
management system will be an improvement. The easier the usability the more the customers
become intimate and close to the Australian Fashion Design.
The involvement of the user’s principle during development of the Australian Fashion Design
will enhance the accommodation of all the user requirements, functional and non-functional
requirements. This principle ensures that the Australian Fashion Design software is complete and
caters for most if not all the user requirements.
Human Computer Interaction.
Human Computer Interaction is a design where the observed points in which a user and the
software can interact are identified and evaluated to improve on the user-computer interactions
for best results. HCI design implements more efficient and effective ways to improve the points
at which the user and the computer interact. For the AFD software the points which the users and
the computer interact is through the Customer relationship management and the sales

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
11
System Analysis
representative registration. This points can be improved by inventing new user-friendly ways
where the user can interact efficiently with the computer.
Human Computer Interaction principles
UI design principles. HCI also utilizes the user interface design principles that make users
comfortable when using computers.
Operation principle. This is the identification and evaluation of the points in which the users and
the computer interact, in order to find the best way to improve user-computer interactions.
Uses a design sensitive to values. This principle keeps a record of all the users involved either
passively or actively with the software.
User centered design majorly focuses on the user comfort when using the software. The users
comfort while using the system is realized by ensuring the traits and the environments of the
users are evaluated and incorporated in the software as it is being designed. The design is user
involving where the users opinions and stories of the software are put under consideration
throughout the design process.
Recommendation
Of the two designs Human Computer Interaction is the better design methodology to use when
implementing the software for the Australian Fashion Design. The major reason above all the other
reasons are that Human Computer Interaction has User Centered Design as part of its principles of
implementation, which implies, that it accommodates all the features that User Centered Design offers.
The ability of Human Interaction to be sensitive to values makes it suitable for the implementation of
the customer relationship management module where it will record all the visits a potential customer
has made for decision making during customer registration.
The User Interface designs that the Human Computer Interaction design utilizes makes it a better choice
during design of the AFD software.
The identification and evaluation of the various points of a software, in which the user and the
computer interact effectively makes it possible for the Human Computer Interaction to add more user-
Document Page
12
System Analysis
friendly, interactive and communicative modes of interactions at those points of the software. These
user-friendly features can be biometric analysis like voice recognition and face recognition.
Event table
Event Event
Type
Trigger Source Activity/use
case
System
Response/Output
Destination
Potential
customer
clicks on
applicatio
n
External
event
Request for
application
Potential
customer
Customer
membership
application
Message of whether
the application was
successful or not
Potential
customer
AFD
software
saves
Customer
details
State event Application
approval
Customer Record
customer
details
Records saved Potential
customer
Time to Temporary “end of the Print Monthly sales report Administrator
Document Page
13
System Analysis
produce
sales
report
month” monthly
sales report
Customer
clicks on
the save
potential
customer
details
External
event
Save
potential
customer
details
value
Customer Save
potential
customer
details
Display success or
unsuccessful message
Customer
Customer
clicks on
the order
button
External
event
Order
request
Customer Take order Records order
Displays success or
unsuccessful message
Customer

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
14
System Analysis
Domain model class diagram
Design class diagram
Document Page
15
System Analysis
Use case diagram
Use case description Takes Order
Use case Take Order
Actor Action System response
Customer Prompts for customer ordering
module
Displays the customer
ordering module
Chooses the designs to order and
orders
Confirms if the designs are in
stock
When they are in stock, the
order gets saved
Customer gets order ID and
amount
If they are not in stock, it
displays the “not in stock
message”
Customer gets the message
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]