logo

Agile and Iterative Methodologies for Software Development: A Comprehensive Analysis

   

Added on  2024-06-04

22 Pages5055 Words413 Views
 | 
 | 
 | 
ICT700 - SYSTEMS ANALYSIS - TASK 2
Agile and Iterative Methodologies for Software Development: A Comprehensive Analysis_1

Table of Contents
Part A...........................................................................................................................................................3
Task 1: Report..........................................................................................................................................3
General Introduction to the agile and iterative methodologies..........................................................3
Scrum...................................................................................................................................................3
Unified Process (UP)............................................................................................................................4
Extreme Programming (XP).................................................................................................................6
Adaptive Software Development (ASD)...............................................................................................7
Recommendation................................................................................................................................8
Task 2: Memo........................................................................................................................................10
1. Description of UCD and HCI.......................................................................................................10
2. Implications of UCD principles on the CRM application.............................................................10
3. Plan for a UCD informed HCI for the CRM application...............................................................11
4. Recommendation......................................................................................................................11
Part B- Modeling and Diagramming..........................................................................................................13
Task 3: Events Table..............................................................................................................................13
Review the AFD case study and prepare an event table for the information system to support the
business processes................................................................................................................................13
Task 4: Domain Model Class Diagram....................................................................................................14
Review the AFD case study to prepare a domain model class diagram for the supporting
information system...............................................................................................................................14
Task 5: Design Class Diagram.................................................................................................................16
Prepare a Design class diagram for the Sales Representative and Order classes ONLY. These classes
should be part of the Domain model class diagram solution for the previous task...............................16
Task 6: Use Case Diagram......................................................................................................................18
Review the AFD case study and your event table solution from Task 3 to prepare a Use Case
diagram for the supporting information system....................................................................................18
Task 7: Use Case Description (intermediate).........................................................................................20
1
Agile and Iterative Methodologies for Software Development: A Comprehensive Analysis_2

Prepare a Use Case intermediate description for the 'Takes Order' use case, as documented in the
event table solution and the use case diagram solution.......................................................................20
Flow of activities for scenario of Takes order in AFD information system.........................................20
References.................................................................................................................................................22
Table of Figures
Figure 1 Scrum Methodology......................................................................................................................4
Figure 2 UP lifecycle phases........................................................................................................................5
Figure 3 XP Lifecycle....................................................................................................................................6
Figure 4 ASD lifecycle phases.......................................................................................................................8
Figure 5 Domain model class diagram.......................................................................................................14
Figure 6 Class Diagram for Sales Representative and Order classes..........................................................16
Figure 7 Use case diagram for information system of Australian Fashion Designs....................................18
2
Agile and Iterative Methodologies for Software Development: A Comprehensive Analysis_3

Part A
Task 1: Report
General Introduction to the agile and iterative methodologies
Agile and iterative development has been bought into existence over traditional methodologies to
get new ways of software development which are flexible, lightweight, and efficient and team-
oriented. After the discussion over introducing agile methodologies, better ways have been
uncovered with four basic principles of agile which includes- Interactions and individuals will be
given priority over development tools and process, the working software that is created is prioritized
over the complete documentation of the software, collaboration with customer is chosen over
negotiation of contract, and responding to real-time changes are chosen over sticking to a particular
plan. The iterative approach has been used in programming this software. The iterative development
means the whole lifespan of software development is composed of iterative processes in sequence.
Iteration will perform the complete process of analysis, designing, programming, and testing. The
result of iteration will be a subset of final product and the combined product iteration will be a
partially completed product (Larman, 2004).
The different agile methodologies used for software development are:
Scrum
Scrum has been designed by Ken Schwaber and Mike Beedle in 1990s with a perspective that
changes exist throughout the lifecycle of a software development process and it attempts to manage
and solve the problems caused by these changes. It is an agile and incremental development process
that adds focus, clarity in each iteration process and work in close observation to increase the speed
of development process and evolution of the software system. Work has been classifying into cycles
called sprints, which focuses on the development of software as per customer requirements and at
the end of each sprint, a potential product is developed that is ready to be shipped. Scrum iteration
takes two to four weeks duration and it can complete a useable product with its complete
functionality demonstration within 30 days on average. It can be implemented at the start of the
project, in middle, or when a project has encountered a risk or trouble (Cobb, 2015).
3
Agile and Iterative Methodologies for Software Development: A Comprehensive Analysis_4

Figure 1 Scrum Methodology
Advantages
Simple to use and manage work products.
Openness and flexibility.
Customer involvement and steering.
Team communication and working together builds strong team values.
Can be easily combined with other working methods.
Focus.
Disadvantages
Require daily update on Sprint Backlog by either trackers or members.
Can’t change the requirements of iteration as stability is required for constant changes.
Bad documentation can result in bad designing of the system and eventually, a bad product
will be delivered (Cobb, 2015).
Unified Process (UP)
The Unified Process follows an object-oriented approach for software development. It has been
designed to incorporate six practices that a system should have which includes iterative
development, defining and managing system requirements, using component architecture for
overall development, visual models have been created for simplifying the development process,
quality verification is done, and damage and change control system is enabled to handle such issues.
The UP modeling constitutes four phases- inception phase in which a feasible study of requirements
is done to decide whether the project is worth to invest in or not, elaboration phase consists of
requirement analysis of one sub module and then designing its development and implementation
4
Agile and Iterative Methodologies for Software Development: A Comprehensive Analysis_5

strategies by designing use case, class, and other UML diagrams, Construction phase in which the
actual implementation of the software starts with the iterative approach including testing of each
module and resulting in multiple releases of the system, transition phase when system is delivered
to end user (Satzinger, Jackson, Burd, 2011).
Figure 2 UP lifecycle phases
Advantages
Can be customized easily.
Guidelines have been offered in many disciplines from requirement analysis to configuration
management.
Focuses on risk and value-based priorities.
Can be used on small scale and large scale projects.
Emphasis on building an early cohesive architecture.
Learning resources are available as a widely adopted methodology.
Disadvantages
Iteration process can be too long and can last up to several months.
Iteration period is increased when deadline not met which makes iteration out of time.
5
Agile and Iterative Methodologies for Software Development: A Comprehensive Analysis_6

End of preview

Want to access all the pages? Upload your documents or become a member.

Related Documents
Development Techniques for AFD System
|20
|3630
|258

Agile and Iterative Methodologies assignment
|12
|2710
|197

Agile Methodologies for Software Development: A Case Study of Australian Fashion Design Software
|18
|2733
|317

Iterative and Agile System Development Methodologies for AFD's Information System
|10
|3055
|335

Adaptive Methodologies for Odd Jobs Limited
|16
|3696
|367

Database System Analysis for OZES
|23
|3810
|465