SlideShare a Scribd company logo
1 of 19
Download to read offline
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 0
M a l d i v e s N a t i o n a l U n i v e r s i t y
Agile Methodology
Assignment 1
Faculty of Management and Computing
Data and Process Modeling (CPT 305)
Hussain Azmee
19012
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 1
Contents
List of Figures................................................................................................................................. 1
List of Tables................................................................................................................................... 1
Abstract........................................................................................................................................... 1
Background..................................................................................................................................... 2
Introduction..................................................................................................................................... 3
What is Agile Methodology? ....................................................................................................... 3
Difference between Traditional Software Development and Agile Software Development ........... 3
Principles of Agile Methodology................................................................................................. 4
Advantages of Agile Methodology............................................................................................... 5
Disadvantages of Agile Methodology ......................................................................................... 5
Agile System Development Life Cycle............................................................................................. 6
Agile Software Development Methods............................................................................................ 8
Feature Driven Development (FDD) .......................................................................................... 8
Scrum......................................................................................................................................... 10
Extreme Programming (XP)...................................................................................................... 12
Conclusion .................................................................................................................................... 15
Reference....................................................................................................................................... 16
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 1
List of Figures
Figure 1 : Traditional Waterfall System Development Life Cycle ................................................. 2
Figure 2 : Agile System Development Life Cycle ........................................................................... 6
Figure 3 : Feature Driven Development ........................................................................................ 8
Figure 4 : Scrum........................................................................................................................... 10
Figure 5 : Extreme Programming................................................................................................. 12
List of Tables
Table 1 : Difference between Traditional and Agile Development ................................................ 4
Table 2 : Some of other Agile Methods......................................................................................... 14
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 1
Abstract
The agile software methods and development is practices based on approach empowered with
values, principles and practices which make the software development process easier and in
faster time. Agile method which includes methods like Extreme programming, Feature Driven
Development, Scrum, etc. are more coming into the software development world. There has been
a remarkable importance in the field of agile software development approaches in the recent past.
This is because of the fastness that agile approaches bring in the life cycle of software
development. This interest in the field shows that there are benefits and non-benefits to obtain
through successful implementation of agile methods. This paper has been carried with the
distinct objectives of examine and gain insights into the current agile methods and practices,
understanding how each of phases in each agile methods works and how agile system
development life cycle works. And in this paper it has been highlighted some of difference
between Traditional Development and Agile Development.
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 2
Background
Particularly in 1990s, some developers reacted against traditional “heavyweight” software
development processes. And these developers has developed new software development methods
and tested. These new software are called agile software development methods. Some of agile
developments which were created are: Extreme programming, SCRUM, Feature-driven
development and these methods were generally termed as “lightweight” processes.
“Representatives” from several of these methods got together in Utah in 2001 Settled on term
“Agile” as a way to describe these methods and called themselves the “Agile Alliance”. They
developed a “manifesto” and a statement of “principles” which focuses on common themes in
these alternative methodologies. (Agile Development Methods: Philosophy and Practice, 2010)
Traditional SDLC can also be including waterfall method. This waterfall method is classically
linear and sequential approach to software design and systems development, each waterfall stage
is assigned to a separate team to ensure greater project and deadline control, important for on-
time project delivery (WATERFALL vs. AGILE METHODOLOGY, 2008). Traditional System
life cycle includes Requirements, Design, implementation, verification and Maintenance.
Traditional System Life Cycle works on sequential pattern after finishing each phase another
phase can be started.
Figure 1 : Traditional Waterfall System Development Life Cycle
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 3
Introduction
What is Agile Methodology?
Agile methodology is a software development process framework that adopts the iterative
approach, open collaboration, and process adaptability throughout the life-cycle of the project.
This iterative agile approach is more flexible and its short time-span iterations seek improvement
for the project in small release, with minimal planning, rather than plan at length. This helps to
minimize the overall risk, and allows the project to adapt to changes more quickly. (Tay, 2008)
Agile methodology is an alternative method for traditional project management, typically used in
software development. It helps teams respond to unpredictability through incremental, iterative
work cadences, known as sprints. Agile methodologies are an alternative to waterfall, or
traditional sequential development. (Agile Methodology, 2008)
Difference between Traditional Software Development and Agile Software Development
Traditional Development Agile Development
Fundamental
assumption
Systems are fully specifiable,
predictable, and are built
through meticulous and
extensive planning
High-quality adaptive
software is developed by small
teams using the principles of
continuous design
improvement and testing
based on rapid feedback and
change
Management Style Command and control Leadership and collaboration
Knowledge management Explicit Tacit
Communication Formal Informal
Development model Life-cycle model (waterfall,
spiral or some variation)
The evolutionary-delivery
model
Desired organizational
form/structure
Mechanistic (bureaucratic
with high formalization),
aimed
Organic (flexible and
participative encouraging
cooperative social action),
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 4
at large organizations aimed at small and medium
sized
organizations
Quality control Heavy planning and strict
control. Late, heavy testing
Continuous control of
requirements, design and
solutions.
Continuous testing
(Dyba & Dingsøyr, 2008)
Table 1 : Difference between Traditional and Agile Development
Principles of Agile Methodology
Basically there are 12 principles of agile methodology, which are mentioned below:
1. Highest priority to customer satisfaction is earned by providing valuable and quality
software on-time and continuous delivery.
2. Changes in requirement should be welcomed even at the later stage of development.
3. Releasing working quality software in shorter duration instead of months in weeks.
4. Working and quality software is the measure of progress.
5. Business people and developer and everyone work collaboratively throughout the project
till the completion.
6. Highly motivated individual needed to complete to project. Necessary environment and
support provided trust them to get the job done.
7. Face to Face communication within team members so that conveying information will be
the most effective and efficient way.
8. Promotion of sustainable development and everyone clients, developers, testers, end
users to maintain constant pace indefinitely.
9. Attention towards technical excellence and good design.
10. Maximizing the art of work not done – Excellence.
11. Best architectures, requirements, design comes from self-organizing teams.
12. Day to day basis team shows the best attitude to be more effective, compatible, adjusts
and adapts responses and behaviors accordingly. (Trivikram, 2011)
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 5
Advantages of Agile Methodology
 No Detail requirement needed: You don’t need to have the entire requirements
finalized to start the development work. Build and Test can start as soon as initial high
level requirements are available.
 Face to face communication: Agile method give more emphasis on having the face to
face communication between the user/customer and project team to make sure there is no
room left for any kind of confusion in understanding requirement and inputs.
 Less time to market: Using Agile method, final product is delivered to the customer in
least possible time.
 Less cost to customer: It saves cost for both customer and supplier as resources are used
for less time.
 High Quality: Since customer is involved in all the stages of software development,
means the quality of final quality if high resulting in highly satisfied customer.
(Navneetjha, 2012)
Disadvantages of Agile Methodology
 Smaller Planning Horizon: Since Agile projects have smaller planning horizon meaning
that project is started without detailed planning, there is always a chance that initial
project effort and cost estimation may not be correct. This might result in multiple
changes to estimation in subsequent estimation.
 Lesser design and documentation: Since build and test starts early, there is always a
chance that proper designing and documentation may take a back seat.
 Need clear customer vision: As customer input is required in all iterations, it is very
necessary that customer should have clear vision of end product. Project can easily loose
its direction if client have only vague idea of the product they want.
(Navneetjha, 2012)
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 6
Agile System Development Life Cycle
In agile System Development life cycle looks very much like traditional SDLC, but when you
dive deeper you quickly discover that this isn't the case. Because the agile SDLC is highly
collaborative, iterative, and incremental the roles which people take are much more robust than
on traditional projects. (Ambler, 2012)
Figure 2 : Agile System Development Life Cycle
In Agile SDLC there are 6 phases.
a. Iteration-1: Select the Project - In this phase when selecting a project a potential project
is identified and potential project is prioritized. Then the initial vision of potential project
is developed and feasibility of the project is checked and if the project is feasible it is
considered. (Ambler, 2012)
b. Iteration 0/Warm Up: Initiate the Project- In this phase it includes active stakeholder
participation and also it includes obtaining funds and support. This phase also includes
team building and predicting the initial requirements and initial architecture need for the
project and setting up the working environment. (Ambler, 2012)
c. Construction Iteration - this phase is about delivering of a working system which meets
the changing needs of stakeholders. This phase also includes active stakeholder
participation, collaborative development, model storming, Test Driven Design (TDD),
confirmatory testing and evolve documentation. In this phase software is deploy
internally. (Ambler, 2012)
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 7
d. Release Iteration(s) The “End Game”- This phase is about releasing the deployed
software into production. This phase also includes participation of active stakeholder,
final system testing and acceptance testing, finalizing the documentation, releasing the
pilot test, training the end users and production staffs. After completing the things above
the software or system is deployed into production. (Ambler, 2012)
e. Production- In this phase software/system is operated and supported. This phase also
identifies the defects in the system/software and the enhancements needed for the
system/software. (Ambler, 2012)
f. Retirement- this phase is about removing the system completely from the production. In
this phase it removes the final version of system data conversion, migrate users and
enterprise models are updated. (Ambler, 2012)
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 8
Agile Software Development Methods
These are some of agile methods used in agile software development.
Feature Driven Development (FDD)
FDD is suitable for the starting out new projects, enhancing and upgrading existing code, and
those projects tasked with the creation of second version of an existing application.
(Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
Feature Driven Development is an agile and adaptive approach for developing system. This
approach does not cover the entire software development process, but this approach rather
focuses on the designing and building phases. However FDD is been design to work with the
other activities of software development project and does not require any specific process model.
The FDD approach expresses iterative development with the best practices found to be effective
in industry and it also emphases quality aspects throughout the process and include frequent and
tangible deliveries, along with accurate monitoring of the progress of the project. (Abrahamsson,
Salo, Ronkainen, & Warsta, 2002)
FDD consists of five sequential processes and provides the methods, techniques and guidelines
needed by the project stakeholders to deliver the system.
Figure 3 : Feature Driven Development
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 9
a. Develop an overall model: - when the development of an overall model begins, the
domain experts must be aware of the scope and the requirements of the system are
built and required documents such as use cases or functional specifications are likely
to be existed. The overall domain is further divided into different domain areas and a
more detailed walkthrough is held for each of them by domain members. After each
walkthrough a development team works in small groups in order to produce object
model. And then development team discusses and decides an appropriate object
model for each domain. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
b. Build a Feature list: - in the list the development team presents each of the client
valued functions included in the system. The functions are presented for each of the
domain areas and these function group consist of so-called major feature sets. These
feature sets represents different activities within specific domain areas and is
reviewed by the users and sponsors of the systems for their validity and completeness.
(Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
c. Plan by Feature: - this includes the creation of the high-level plan in which the
feature sets are sequenced according to their priority and dependencies assigned.
(Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
d. Design by Feature and Build by Feature: - the design by feature and build by
feature processes are iterative procedures, during which the selected features are
produced. In these processes it includes such tasks as design inspection, coding, unit
testing, integration and code inspection. (Abrahamsson, Salo, Ronkainen, & Warsta,
2002)
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 10
Scrum
Scrum method is suitable for small teams of less than 10 engineers. And if more people are there
in the group multiple teams should be formed. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
The scrum approach has been developed for managing the system development process. This
approach concentrates on how the team members should function in order to produce the system
flexibly in a constantly changing environment. The main idea of scrum is that system
development involves several environmental and technical variables that are likely to change
during the process. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
Scrum helps to improve the existing engineering practices in an organization aiming to
identifying any deficiencies or impediments in the developed process and practices used
consistently. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) The Scrum process includes
three phases: pre-game, development and post-game.
Figure 4 : Scrum
a. Pre-game phase: - includes two sub-phases : planning and Architecture
- Planning include the definition of the system being developed by creating a
product backlog list contains the entire requirement that are currently known. The
requirements are prioritized and efforts are estimated. In planning the project
team, tools and other resources, risk assessment and controlling issues, training
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 11
needs and verification management approval is defined. (Abrahamsson, Salo,
Ronkainen, & Warsta, 2002)
- Architecture is planned based on the high level designs of the system and current
items in the product backlog. And also any enhancements are identified along
with the problems. Decisions are made after a review meeting and preliminary
plan are prepared. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
b. Development phase: - in development phase system is developed in sprints. Sprints
are iterative cycles where the functionality is developed or improved to produce new
increments. Traditional phases of software developments: requirements, analysis,
design, evolution and delivery phases are included in each sprint. In sprint
development the architecture and design of system is developed. (Abrahamsson, Salo,
Ronkainen, & Warsta, 2002)
c. Post-game phase: - this is the closure of the release. After completion of
environmental variables such requirements and after making the agreement this phase
is entered. In this case, no more items and issues can be found nor can any new ones
be invented. In this case the system is ready for the release and preparation for this is
done such as integration, system testing and documentation. (Abrahamsson, Salo,
Ronkainen, & Warsta, 2002)
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 12
Extreme Programming (XP)
Extreme programming is aimed for small and medium sized teams between three and maximum
of two project members. The physical environment is also important, communication and
coordination between project members should be allowed at all time. (Abrahamsson, Salo,
Ronkainen, & Warsta, 2002)
Extreme Programming (XP) is developed with the aim of developing a methodology which is
suitable for “object-oriented projects using teams of a dozen or fewer programmers in one
location.” XP also include underlying values of communication, simplicity, feedback, courage
and respect. (Williams, 2007) Extreme programming includes 6 phases Exploration phase,
planning phase, iteration to release phase, productionizing phase, maintaining phase and death
phase.
Figure 5 : Extreme Programming
a. Exploration phase: - in this phase customer write the story cards which they wish to
include in the first release. These story cards describes feature to be added into the
program. Within same time the project team familiarize themselves with the tools,
technology and practices things which will be using in the project and build a
prototype of the system. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 13
b. Planning phase: - this phase sets the priority order for the stories and an agreement
of the contents of the first small release made. Programmers first estimates how much
effort each story requires and scheduled. Planning phase takes couple of days.
(Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
c. Iterations to release phase: - this phase includes several iterations of the system
before the first release. The schedule set in the planning stage is broken down to a
number of iteration to implement. Customers decide the stories to be selected for each
iteration. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
d. Productionizing phase: - in this phase new changes may still be found and the
decision has to be made if they are included in the current release. During this phase,
the iterations may need to be quickened. (Abrahamsson, Salo, Ronkainen, & Warsta,
2002)
e. Maintenance phase: - requires an effort for customer support tasks. Development
velocity may decelerate after the system is in production. This phase mau requires
incorporating new people into the team and changing the team structure.
(Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
f. Death phase: - in this phase the necessary documentation of the system is finally
written as no more changes to the architecture, design or code are made. Death phase
may also occur if the system is not delivering the desired outcome or if it becomes too
expensive for further development. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
There are many other forms of agile methods. Table 2 below shows some of them include
Crystal Methodologies, lean Software Development (ASD) and Dynamic Systems Development
Method (DSDM).
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 14
Agile Methods Description
Crystal methodologies A family of methods for co-located teams of different sizes
and criticality: Clear, Yellow, Orange,
Red, Blue. The most agile method, Crystal Clear, focuses
on communication in small teams
Developing software that is not life-critical. Clear
development has seven characteristics: frequent
delivery, reflective improvement, osmotic communication,
personal safety, focus, easy access to
expert users, and requirements for the technical
environment
Dynamic software development
method (DSDM)
Divides projects in three phases: pre-project, project life-
cycle, and post project. Nine principles
underlie DSDM: user involvement, empowering the project
team, frequent delivery, addressing
current business needs, iterative and incremental
development, allow for reversing changes, high-level
scope being fixed before project starts, testing throughout
the lifecycle, and efficient and effective
communication
Lean software development An adaptation of principles from lean production and, in
particular, the Toyota production system to
Software development. Consists of seven principles:
eliminate waste, amplify learning, decide as late
as possible, deliver as fast as possible, empower the team,
build integrity, and see the whole
(Dyba & Dingsøyr, 2008)
Table 2 : Some of other Agile Methods
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 15
Conclusion
As we came to know that traditional software development approaches are more automatic
which concentrate more on Processes, tools, contracts and plans. In contrast to traditional
methods, agile methods keep emphasis on interaction, working software, embracing change at
any moment of the project, customer relationships. The method can be agile if it is: Incremental,
Cooperative Straightforward and Adaptive. (Naidu)
“Agile view is more people centric rather than plan-centric.” Agile methods are not defined by a
small set of principles, practices and techniques. It creates a strategic capability which has
capability of responding to change, capability to balance the structure and flexibility, capability
of innovation and creations through development team and uncertainty. (Naidu)
In this paper we have also discussed about the Advantages, disadvantages of Agile Methodology,
difference between traditional and agile software development and Agile System Development
Life Cycle. And we have also discussed about different Agile Software development models
such as XP (Extreme programming), Scrum and FDD (Feature driven development).
(2477 words)
Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology
Hussain Azmee 19012 Page 16
Reference
Agile Methodology. (2008, October 23). Retrieved March 27, 2013, from Agile Methodology:
http://agilemethodology.org/
WATERFALL vs. AGILE METHODOLOGY. (2008, January 4). Retrieved March 22, 2013, from
Agile Introduction For Dummies: http://agileintro.wordpress.com/2008/01/04/waterfall-
vs-agile-methodology/
Agile Development Methods: Philosophy and Practice. (2010). CPSC 315 – Programming
Studio.
Abrahamsson, P., Salo, O., Ronkainen, J., & Warsta, J. (2002). Agile Software Development
Methods Review and Analysis. University of Oulu: VTT Publications 478.
Ambler, S. W. (2012). The Agile System Development Life Cycle (SDLC). Retrieved March 26,
2013, from ambysoft: http://www.ambysoft.com/essays/agileLifecycle.html
Dyba, T., & Dingsøyr, T. (2008). Empirical studies of agile software development: A systematic
review. ELSEVIER Information and Software Technology, 27.
Naidu, S. S. (n.d.). Agile Software Development.
Navneetjha. (2012, July 12). Agile Methodology - ABrief Overview. Retrieved March 27, 2013,
from HubPages: http://navneetjha.hubpages.com/hub/Agile-Methodology-A-Brief-
Overview
Tay, L. (2008, December 10). Agile Methodology: ASoftware Development Process Framework.
Retrieved March 20, 2013, from Yahoo! Voices: http://voices.yahoo.com/agile-
methodology-software-development-process-framework-2263234.html
Trivikram. (2011, May 4). Principles of Agile Methodology. Retrieved March 26, 2013, from
That Technology: http://www.thatstechnology.com/software-testing/principles-of-agile-
methodology
Williams, L. (2007). ASurvey of Agile Development Methodologies.

More Related Content

Similar to Agile Software Development Methods Overview

Agile Methology Seminar Report
Agile Methology Seminar ReportAgile Methology Seminar Report
Agile Methology Seminar ReportMohit Kumar
 
IFSM 301 – Week 4 Citations (NIST, 2009) (The six phas
IFSM 301 – Week 4 Citations (NIST, 2009) (The six phasIFSM 301 – Week 4 Citations (NIST, 2009) (The six phas
IFSM 301 – Week 4 Citations (NIST, 2009) (The six phasMalikPinckney86
 
Estimation of agile functionality in software development
Estimation of agile functionality in software developmentEstimation of agile functionality in software development
Estimation of agile functionality in software developmentBashir Nasr Azadani
 
The System Development Life Cycle
The System Development Life CycleThe System Development Life Cycle
The System Development Life CycleMegan Espinoza
 
Stephanie WroteA lean organization understands customer value a.docx
Stephanie WroteA lean organization understands customer value a.docxStephanie WroteA lean organization understands customer value a.docx
Stephanie WroteA lean organization understands customer value a.docxrjoseph5
 
Technology Integration Pattern For Distributed Scrum of Scrum
Technology Integration Pattern For Distributed Scrum of ScrumTechnology Integration Pattern For Distributed Scrum of Scrum
Technology Integration Pattern For Distributed Scrum of ScrumIOSR Journals
 
System Development Life Cycle Essay
System Development Life Cycle EssaySystem Development Life Cycle Essay
System Development Life Cycle EssayPamela Wright
 
A study of critical success factors for adaption of agile methodology
A study of critical success factors for adaption of agile methodologyA study of critical success factors for adaption of agile methodology
A study of critical success factors for adaption of agile methodologyIAEME Publication
 
Software Development Life Cycle: Traditional and Agile- A Comparative Study
Software Development Life Cycle: Traditional and Agile- A Comparative StudySoftware Development Life Cycle: Traditional and Agile- A Comparative Study
Software Development Life Cycle: Traditional and Agile- A Comparative Studyijsrd.com
 
Agile Project Management 1 17 2007[1]
Agile Project Management 1 17 2007[1]Agile Project Management 1 17 2007[1]
Agile Project Management 1 17 2007[1]leaptocheap
 
A Systematic Study On Agile Software Development Methodlogies And Practices
A Systematic Study On Agile Software Development Methodlogies And PracticesA Systematic Study On Agile Software Development Methodlogies And Practices
A Systematic Study On Agile Software Development Methodlogies And PracticesSean Flores
 
DEVOPS ADOPTION IN INFORMATION SYSTEMS PROJECTS; A SYSTEMATIC LITERATURE REVIEW
DEVOPS ADOPTION IN INFORMATION SYSTEMS PROJECTS; A SYSTEMATIC LITERATURE REVIEWDEVOPS ADOPTION IN INFORMATION SYSTEMS PROJECTS; A SYSTEMATIC LITERATURE REVIEW
DEVOPS ADOPTION IN INFORMATION SYSTEMS PROJECTS; A SYSTEMATIC LITERATURE REVIEWijseajournal
 
Agile Project Management Methods of IT Projects
Agile Project Management Methods of IT ProjectsAgile Project Management Methods of IT Projects
Agile Project Management Methods of IT ProjectsGlen Alleman
 
An Approach of Improve Efficiencies through DevOps Adoption
An Approach of Improve Efficiencies through DevOps AdoptionAn Approach of Improve Efficiencies through DevOps Adoption
An Approach of Improve Efficiencies through DevOps AdoptionIRJET Journal
 
The_Role_of_the_Product_Owner_in_Scrum-comparison_.pdf
The_Role_of_the_Product_Owner_in_Scrum-comparison_.pdfThe_Role_of_the_Product_Owner_in_Scrum-comparison_.pdf
The_Role_of_the_Product_Owner_in_Scrum-comparison_.pdfRafaelSalamanca11
 
Emerging Trends of Software Engineering
Emerging Trends of Software Engineering Emerging Trends of Software Engineering
Emerging Trends of Software Engineering DR. Ram Kumar Pathak
 
G0313036040
G0313036040G0313036040
G0313036040theijes
 

Similar to Agile Software Development Methods Overview (20)

Agile Methology Seminar Report
Agile Methology Seminar ReportAgile Methology Seminar Report
Agile Methology Seminar Report
 
IFSM 301 – Week 4 Citations (NIST, 2009) (The six phas
IFSM 301 – Week 4 Citations (NIST, 2009) (The six phasIFSM 301 – Week 4 Citations (NIST, 2009) (The six phas
IFSM 301 – Week 4 Citations (NIST, 2009) (The six phas
 
Estimation of agile functionality in software development
Estimation of agile functionality in software developmentEstimation of agile functionality in software development
Estimation of agile functionality in software development
 
The System Development Life Cycle
The System Development Life CycleThe System Development Life Cycle
The System Development Life Cycle
 
Stephanie WroteA lean organization understands customer value a.docx
Stephanie WroteA lean organization understands customer value a.docxStephanie WroteA lean organization understands customer value a.docx
Stephanie WroteA lean organization understands customer value a.docx
 
Technology Integration Pattern For Distributed Scrum of Scrum
Technology Integration Pattern For Distributed Scrum of ScrumTechnology Integration Pattern For Distributed Scrum of Scrum
Technology Integration Pattern For Distributed Scrum of Scrum
 
System Development Life Cycle Essay
System Development Life Cycle EssaySystem Development Life Cycle Essay
System Development Life Cycle Essay
 
A study of critical success factors for adaption of agile methodology
A study of critical success factors for adaption of agile methodologyA study of critical success factors for adaption of agile methodology
A study of critical success factors for adaption of agile methodology
 
Software Development Life Cycle: Traditional and Agile- A Comparative Study
Software Development Life Cycle: Traditional and Agile- A Comparative StudySoftware Development Life Cycle: Traditional and Agile- A Comparative Study
Software Development Life Cycle: Traditional and Agile- A Comparative Study
 
Agile Project Management 1 17 2007[1]
Agile Project Management 1 17 2007[1]Agile Project Management 1 17 2007[1]
Agile Project Management 1 17 2007[1]
 
N1803017478
N1803017478N1803017478
N1803017478
 
A Systematic Study On Agile Software Development Methodlogies And Practices
A Systematic Study On Agile Software Development Methodlogies And PracticesA Systematic Study On Agile Software Development Methodlogies And Practices
A Systematic Study On Agile Software Development Methodlogies And Practices
 
DEVOPS ADOPTION IN INFORMATION SYSTEMS PROJECTS; A SYSTEMATIC LITERATURE REVIEW
DEVOPS ADOPTION IN INFORMATION SYSTEMS PROJECTS; A SYSTEMATIC LITERATURE REVIEWDEVOPS ADOPTION IN INFORMATION SYSTEMS PROJECTS; A SYSTEMATIC LITERATURE REVIEW
DEVOPS ADOPTION IN INFORMATION SYSTEMS PROJECTS; A SYSTEMATIC LITERATURE REVIEW
 
Agile Project Management Methods of IT Projects
Agile Project Management Methods of IT ProjectsAgile Project Management Methods of IT Projects
Agile Project Management Methods of IT Projects
 
Agile process
Agile processAgile process
Agile process
 
Agile process
Agile processAgile process
Agile process
 
An Approach of Improve Efficiencies through DevOps Adoption
An Approach of Improve Efficiencies through DevOps AdoptionAn Approach of Improve Efficiencies through DevOps Adoption
An Approach of Improve Efficiencies through DevOps Adoption
 
The_Role_of_the_Product_Owner_in_Scrum-comparison_.pdf
The_Role_of_the_Product_Owner_in_Scrum-comparison_.pdfThe_Role_of_the_Product_Owner_in_Scrum-comparison_.pdf
The_Role_of_the_Product_Owner_in_Scrum-comparison_.pdf
 
Emerging Trends of Software Engineering
Emerging Trends of Software Engineering Emerging Trends of Software Engineering
Emerging Trends of Software Engineering
 
G0313036040
G0313036040G0313036040
G0313036040
 

More from Sabrina Green

There Are Several Advantages You C
There Are Several Advantages You CThere Are Several Advantages You C
There Are Several Advantages You CSabrina Green
 
Printable Primary Writing Paper - Printable World Ho
Printable Primary Writing Paper - Printable World HoPrintable Primary Writing Paper - Printable World Ho
Printable Primary Writing Paper - Printable World HoSabrina Green
 
Leather Writing Case With Writing Paper And Envelopes
Leather Writing Case With Writing Paper And EnvelopesLeather Writing Case With Writing Paper And Envelopes
Leather Writing Case With Writing Paper And EnvelopesSabrina Green
 
Reflective Essay - Grade B - Reflective Essay Introducti
Reflective Essay - Grade B - Reflective Essay IntroductiReflective Essay - Grade B - Reflective Essay Introducti
Reflective Essay - Grade B - Reflective Essay IntroductiSabrina Green
 
Piece Of Paper With Word Anxiety. Black And White S
Piece Of Paper With Word Anxiety. Black And White SPiece Of Paper With Word Anxiety. Black And White S
Piece Of Paper With Word Anxiety. Black And White SSabrina Green
 
J 176 Media Fluency For The Digital Age Example Of A O
J 176 Media Fluency For The Digital Age Example Of A OJ 176 Media Fluency For The Digital Age Example Of A O
J 176 Media Fluency For The Digital Age Example Of A OSabrina Green
 
FROG STREET PRESS FST6541 SMART START
FROG STREET PRESS FST6541 SMART STARTFROG STREET PRESS FST6541 SMART START
FROG STREET PRESS FST6541 SMART STARTSabrina Green
 
Essay Writing Service In Australia
Essay Writing Service In AustraliaEssay Writing Service In Australia
Essay Writing Service In AustraliaSabrina Green
 
Five Paragraph Essay Graphic Organizer In 2023
Five Paragraph Essay Graphic Organizer In 2023Five Paragraph Essay Graphic Organizer In 2023
Five Paragraph Essay Graphic Organizer In 2023Sabrina Green
 
Essential Features Of A Good Term Paper Writing Service Provider
Essential Features Of A Good Term Paper Writing Service ProviderEssential Features Of A Good Term Paper Writing Service Provider
Essential Features Of A Good Term Paper Writing Service ProviderSabrina Green
 
How To Write A College Research Paper Step By Ste
How To Write A College Research Paper Step By SteHow To Write A College Research Paper Step By Ste
How To Write A College Research Paper Step By SteSabrina Green
 
Essay My Teacher My Role Model - Pg
Essay My Teacher My Role Model - PgEssay My Teacher My Role Model - Pg
Essay My Teacher My Role Model - PgSabrina Green
 
Best College Essay Writing Service - The Writing Center.
Best College Essay Writing Service - The Writing Center.Best College Essay Writing Service - The Writing Center.
Best College Essay Writing Service - The Writing Center.Sabrina Green
 
Rutgers Admission Essay Help Essay Online Writers
Rutgers Admission Essay Help Essay Online WritersRutgers Admission Essay Help Essay Online Writers
Rutgers Admission Essay Help Essay Online WritersSabrina Green
 
How To Write An Essay - English Learn Site
How To Write An Essay - English Learn SiteHow To Write An Essay - English Learn Site
How To Write An Essay - English Learn SiteSabrina Green
 
I Need Someone To Write An Essay For Me
I Need Someone To Write An Essay For MeI Need Someone To Write An Essay For Me
I Need Someone To Write An Essay For MeSabrina Green
 
How To Properly Write A Bibliography
How To Properly Write A BibliographyHow To Properly Write A Bibliography
How To Properly Write A BibliographySabrina Green
 
Example Of An Autobiography That Will Point Your Writing I
Example Of An Autobiography That Will Point Your Writing IExample Of An Autobiography That Will Point Your Writing I
Example Of An Autobiography That Will Point Your Writing ISabrina Green
 
(PDF) Steps For Writing A Term P
(PDF) Steps For Writing A Term P(PDF) Steps For Writing A Term P
(PDF) Steps For Writing A Term PSabrina Green
 

More from Sabrina Green (20)

There Are Several Advantages You C
There Are Several Advantages You CThere Are Several Advantages You C
There Are Several Advantages You C
 
Printable Primary Writing Paper - Printable World Ho
Printable Primary Writing Paper - Printable World HoPrintable Primary Writing Paper - Printable World Ho
Printable Primary Writing Paper - Printable World Ho
 
Leather Writing Case With Writing Paper And Envelopes
Leather Writing Case With Writing Paper And EnvelopesLeather Writing Case With Writing Paper And Envelopes
Leather Writing Case With Writing Paper And Envelopes
 
Reflective Essay - Grade B - Reflective Essay Introducti
Reflective Essay - Grade B - Reflective Essay IntroductiReflective Essay - Grade B - Reflective Essay Introducti
Reflective Essay - Grade B - Reflective Essay Introducti
 
Piece Of Paper With Word Anxiety. Black And White S
Piece Of Paper With Word Anxiety. Black And White SPiece Of Paper With Word Anxiety. Black And White S
Piece Of Paper With Word Anxiety. Black And White S
 
J 176 Media Fluency For The Digital Age Example Of A O
J 176 Media Fluency For The Digital Age Example Of A OJ 176 Media Fluency For The Digital Age Example Of A O
J 176 Media Fluency For The Digital Age Example Of A O
 
Cat Writing Paper
Cat Writing PaperCat Writing Paper
Cat Writing Paper
 
FROG STREET PRESS FST6541 SMART START
FROG STREET PRESS FST6541 SMART STARTFROG STREET PRESS FST6541 SMART START
FROG STREET PRESS FST6541 SMART START
 
Essay Writing Service In Australia
Essay Writing Service In AustraliaEssay Writing Service In Australia
Essay Writing Service In Australia
 
Five Paragraph Essay Graphic Organizer In 2023
Five Paragraph Essay Graphic Organizer In 2023Five Paragraph Essay Graphic Organizer In 2023
Five Paragraph Essay Graphic Organizer In 2023
 
Essential Features Of A Good Term Paper Writing Service Provider
Essential Features Of A Good Term Paper Writing Service ProviderEssential Features Of A Good Term Paper Writing Service Provider
Essential Features Of A Good Term Paper Writing Service Provider
 
How To Write A College Research Paper Step By Ste
How To Write A College Research Paper Step By SteHow To Write A College Research Paper Step By Ste
How To Write A College Research Paper Step By Ste
 
Essay My Teacher My Role Model - Pg
Essay My Teacher My Role Model - PgEssay My Teacher My Role Model - Pg
Essay My Teacher My Role Model - Pg
 
Best College Essay Writing Service - The Writing Center.
Best College Essay Writing Service - The Writing Center.Best College Essay Writing Service - The Writing Center.
Best College Essay Writing Service - The Writing Center.
 
Rutgers Admission Essay Help Essay Online Writers
Rutgers Admission Essay Help Essay Online WritersRutgers Admission Essay Help Essay Online Writers
Rutgers Admission Essay Help Essay Online Writers
 
How To Write An Essay - English Learn Site
How To Write An Essay - English Learn SiteHow To Write An Essay - English Learn Site
How To Write An Essay - English Learn Site
 
I Need Someone To Write An Essay For Me
I Need Someone To Write An Essay For MeI Need Someone To Write An Essay For Me
I Need Someone To Write An Essay For Me
 
How To Properly Write A Bibliography
How To Properly Write A BibliographyHow To Properly Write A Bibliography
How To Properly Write A Bibliography
 
Example Of An Autobiography That Will Point Your Writing I
Example Of An Autobiography That Will Point Your Writing IExample Of An Autobiography That Will Point Your Writing I
Example Of An Autobiography That Will Point Your Writing I
 
(PDF) Steps For Writing A Term P
(PDF) Steps For Writing A Term P(PDF) Steps For Writing A Term P
(PDF) Steps For Writing A Term P
 

Recently uploaded

Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 

Recently uploaded (20)

Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 

Agile Software Development Methods Overview

  • 1. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 0 M a l d i v e s N a t i o n a l U n i v e r s i t y Agile Methodology Assignment 1 Faculty of Management and Computing Data and Process Modeling (CPT 305) Hussain Azmee 19012
  • 2. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 1 Contents List of Figures................................................................................................................................. 1 List of Tables................................................................................................................................... 1 Abstract........................................................................................................................................... 1 Background..................................................................................................................................... 2 Introduction..................................................................................................................................... 3 What is Agile Methodology? ....................................................................................................... 3 Difference between Traditional Software Development and Agile Software Development ........... 3 Principles of Agile Methodology................................................................................................. 4 Advantages of Agile Methodology............................................................................................... 5 Disadvantages of Agile Methodology ......................................................................................... 5 Agile System Development Life Cycle............................................................................................. 6 Agile Software Development Methods............................................................................................ 8 Feature Driven Development (FDD) .......................................................................................... 8 Scrum......................................................................................................................................... 10 Extreme Programming (XP)...................................................................................................... 12 Conclusion .................................................................................................................................... 15 Reference....................................................................................................................................... 16
  • 3. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 1 List of Figures Figure 1 : Traditional Waterfall System Development Life Cycle ................................................. 2 Figure 2 : Agile System Development Life Cycle ........................................................................... 6 Figure 3 : Feature Driven Development ........................................................................................ 8 Figure 4 : Scrum........................................................................................................................... 10 Figure 5 : Extreme Programming................................................................................................. 12 List of Tables Table 1 : Difference between Traditional and Agile Development ................................................ 4 Table 2 : Some of other Agile Methods......................................................................................... 14
  • 4. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 1 Abstract The agile software methods and development is practices based on approach empowered with values, principles and practices which make the software development process easier and in faster time. Agile method which includes methods like Extreme programming, Feature Driven Development, Scrum, etc. are more coming into the software development world. There has been a remarkable importance in the field of agile software development approaches in the recent past. This is because of the fastness that agile approaches bring in the life cycle of software development. This interest in the field shows that there are benefits and non-benefits to obtain through successful implementation of agile methods. This paper has been carried with the distinct objectives of examine and gain insights into the current agile methods and practices, understanding how each of phases in each agile methods works and how agile system development life cycle works. And in this paper it has been highlighted some of difference between Traditional Development and Agile Development.
  • 5. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 2 Background Particularly in 1990s, some developers reacted against traditional “heavyweight” software development processes. And these developers has developed new software development methods and tested. These new software are called agile software development methods. Some of agile developments which were created are: Extreme programming, SCRUM, Feature-driven development and these methods were generally termed as “lightweight” processes. “Representatives” from several of these methods got together in Utah in 2001 Settled on term “Agile” as a way to describe these methods and called themselves the “Agile Alliance”. They developed a “manifesto” and a statement of “principles” which focuses on common themes in these alternative methodologies. (Agile Development Methods: Philosophy and Practice, 2010) Traditional SDLC can also be including waterfall method. This waterfall method is classically linear and sequential approach to software design and systems development, each waterfall stage is assigned to a separate team to ensure greater project and deadline control, important for on- time project delivery (WATERFALL vs. AGILE METHODOLOGY, 2008). Traditional System life cycle includes Requirements, Design, implementation, verification and Maintenance. Traditional System Life Cycle works on sequential pattern after finishing each phase another phase can be started. Figure 1 : Traditional Waterfall System Development Life Cycle
  • 6. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 3 Introduction What is Agile Methodology? Agile methodology is a software development process framework that adopts the iterative approach, open collaboration, and process adaptability throughout the life-cycle of the project. This iterative agile approach is more flexible and its short time-span iterations seek improvement for the project in small release, with minimal planning, rather than plan at length. This helps to minimize the overall risk, and allows the project to adapt to changes more quickly. (Tay, 2008) Agile methodology is an alternative method for traditional project management, typically used in software development. It helps teams respond to unpredictability through incremental, iterative work cadences, known as sprints. Agile methodologies are an alternative to waterfall, or traditional sequential development. (Agile Methodology, 2008) Difference between Traditional Software Development and Agile Software Development Traditional Development Agile Development Fundamental assumption Systems are fully specifiable, predictable, and are built through meticulous and extensive planning High-quality adaptive software is developed by small teams using the principles of continuous design improvement and testing based on rapid feedback and change Management Style Command and control Leadership and collaboration Knowledge management Explicit Tacit Communication Formal Informal Development model Life-cycle model (waterfall, spiral or some variation) The evolutionary-delivery model Desired organizational form/structure Mechanistic (bureaucratic with high formalization), aimed Organic (flexible and participative encouraging cooperative social action),
  • 7. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 4 at large organizations aimed at small and medium sized organizations Quality control Heavy planning and strict control. Late, heavy testing Continuous control of requirements, design and solutions. Continuous testing (Dyba & Dingsøyr, 2008) Table 1 : Difference between Traditional and Agile Development Principles of Agile Methodology Basically there are 12 principles of agile methodology, which are mentioned below: 1. Highest priority to customer satisfaction is earned by providing valuable and quality software on-time and continuous delivery. 2. Changes in requirement should be welcomed even at the later stage of development. 3. Releasing working quality software in shorter duration instead of months in weeks. 4. Working and quality software is the measure of progress. 5. Business people and developer and everyone work collaboratively throughout the project till the completion. 6. Highly motivated individual needed to complete to project. Necessary environment and support provided trust them to get the job done. 7. Face to Face communication within team members so that conveying information will be the most effective and efficient way. 8. Promotion of sustainable development and everyone clients, developers, testers, end users to maintain constant pace indefinitely. 9. Attention towards technical excellence and good design. 10. Maximizing the art of work not done – Excellence. 11. Best architectures, requirements, design comes from self-organizing teams. 12. Day to day basis team shows the best attitude to be more effective, compatible, adjusts and adapts responses and behaviors accordingly. (Trivikram, 2011)
  • 8. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 5 Advantages of Agile Methodology  No Detail requirement needed: You don’t need to have the entire requirements finalized to start the development work. Build and Test can start as soon as initial high level requirements are available.  Face to face communication: Agile method give more emphasis on having the face to face communication between the user/customer and project team to make sure there is no room left for any kind of confusion in understanding requirement and inputs.  Less time to market: Using Agile method, final product is delivered to the customer in least possible time.  Less cost to customer: It saves cost for both customer and supplier as resources are used for less time.  High Quality: Since customer is involved in all the stages of software development, means the quality of final quality if high resulting in highly satisfied customer. (Navneetjha, 2012) Disadvantages of Agile Methodology  Smaller Planning Horizon: Since Agile projects have smaller planning horizon meaning that project is started without detailed planning, there is always a chance that initial project effort and cost estimation may not be correct. This might result in multiple changes to estimation in subsequent estimation.  Lesser design and documentation: Since build and test starts early, there is always a chance that proper designing and documentation may take a back seat.  Need clear customer vision: As customer input is required in all iterations, it is very necessary that customer should have clear vision of end product. Project can easily loose its direction if client have only vague idea of the product they want. (Navneetjha, 2012)
  • 9. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 6 Agile System Development Life Cycle In agile System Development life cycle looks very much like traditional SDLC, but when you dive deeper you quickly discover that this isn't the case. Because the agile SDLC is highly collaborative, iterative, and incremental the roles which people take are much more robust than on traditional projects. (Ambler, 2012) Figure 2 : Agile System Development Life Cycle In Agile SDLC there are 6 phases. a. Iteration-1: Select the Project - In this phase when selecting a project a potential project is identified and potential project is prioritized. Then the initial vision of potential project is developed and feasibility of the project is checked and if the project is feasible it is considered. (Ambler, 2012) b. Iteration 0/Warm Up: Initiate the Project- In this phase it includes active stakeholder participation and also it includes obtaining funds and support. This phase also includes team building and predicting the initial requirements and initial architecture need for the project and setting up the working environment. (Ambler, 2012) c. Construction Iteration - this phase is about delivering of a working system which meets the changing needs of stakeholders. This phase also includes active stakeholder participation, collaborative development, model storming, Test Driven Design (TDD), confirmatory testing and evolve documentation. In this phase software is deploy internally. (Ambler, 2012)
  • 10. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 7 d. Release Iteration(s) The “End Game”- This phase is about releasing the deployed software into production. This phase also includes participation of active stakeholder, final system testing and acceptance testing, finalizing the documentation, releasing the pilot test, training the end users and production staffs. After completing the things above the software or system is deployed into production. (Ambler, 2012) e. Production- In this phase software/system is operated and supported. This phase also identifies the defects in the system/software and the enhancements needed for the system/software. (Ambler, 2012) f. Retirement- this phase is about removing the system completely from the production. In this phase it removes the final version of system data conversion, migrate users and enterprise models are updated. (Ambler, 2012)
  • 11. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 8 Agile Software Development Methods These are some of agile methods used in agile software development. Feature Driven Development (FDD) FDD is suitable for the starting out new projects, enhancing and upgrading existing code, and those projects tasked with the creation of second version of an existing application. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) Feature Driven Development is an agile and adaptive approach for developing system. This approach does not cover the entire software development process, but this approach rather focuses on the designing and building phases. However FDD is been design to work with the other activities of software development project and does not require any specific process model. The FDD approach expresses iterative development with the best practices found to be effective in industry and it also emphases quality aspects throughout the process and include frequent and tangible deliveries, along with accurate monitoring of the progress of the project. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) FDD consists of five sequential processes and provides the methods, techniques and guidelines needed by the project stakeholders to deliver the system. Figure 3 : Feature Driven Development
  • 12. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 9 a. Develop an overall model: - when the development of an overall model begins, the domain experts must be aware of the scope and the requirements of the system are built and required documents such as use cases or functional specifications are likely to be existed. The overall domain is further divided into different domain areas and a more detailed walkthrough is held for each of them by domain members. After each walkthrough a development team works in small groups in order to produce object model. And then development team discusses and decides an appropriate object model for each domain. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) b. Build a Feature list: - in the list the development team presents each of the client valued functions included in the system. The functions are presented for each of the domain areas and these function group consist of so-called major feature sets. These feature sets represents different activities within specific domain areas and is reviewed by the users and sponsors of the systems for their validity and completeness. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) c. Plan by Feature: - this includes the creation of the high-level plan in which the feature sets are sequenced according to their priority and dependencies assigned. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) d. Design by Feature and Build by Feature: - the design by feature and build by feature processes are iterative procedures, during which the selected features are produced. In these processes it includes such tasks as design inspection, coding, unit testing, integration and code inspection. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
  • 13. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 10 Scrum Scrum method is suitable for small teams of less than 10 engineers. And if more people are there in the group multiple teams should be formed. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) The scrum approach has been developed for managing the system development process. This approach concentrates on how the team members should function in order to produce the system flexibly in a constantly changing environment. The main idea of scrum is that system development involves several environmental and technical variables that are likely to change during the process. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) Scrum helps to improve the existing engineering practices in an organization aiming to identifying any deficiencies or impediments in the developed process and practices used consistently. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) The Scrum process includes three phases: pre-game, development and post-game. Figure 4 : Scrum a. Pre-game phase: - includes two sub-phases : planning and Architecture - Planning include the definition of the system being developed by creating a product backlog list contains the entire requirement that are currently known. The requirements are prioritized and efforts are estimated. In planning the project team, tools and other resources, risk assessment and controlling issues, training
  • 14. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 11 needs and verification management approval is defined. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) - Architecture is planned based on the high level designs of the system and current items in the product backlog. And also any enhancements are identified along with the problems. Decisions are made after a review meeting and preliminary plan are prepared. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) b. Development phase: - in development phase system is developed in sprints. Sprints are iterative cycles where the functionality is developed or improved to produce new increments. Traditional phases of software developments: requirements, analysis, design, evolution and delivery phases are included in each sprint. In sprint development the architecture and design of system is developed. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) c. Post-game phase: - this is the closure of the release. After completion of environmental variables such requirements and after making the agreement this phase is entered. In this case, no more items and issues can be found nor can any new ones be invented. In this case the system is ready for the release and preparation for this is done such as integration, system testing and documentation. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
  • 15. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 12 Extreme Programming (XP) Extreme programming is aimed for small and medium sized teams between three and maximum of two project members. The physical environment is also important, communication and coordination between project members should be allowed at all time. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) Extreme Programming (XP) is developed with the aim of developing a methodology which is suitable for “object-oriented projects using teams of a dozen or fewer programmers in one location.” XP also include underlying values of communication, simplicity, feedback, courage and respect. (Williams, 2007) Extreme programming includes 6 phases Exploration phase, planning phase, iteration to release phase, productionizing phase, maintaining phase and death phase. Figure 5 : Extreme Programming a. Exploration phase: - in this phase customer write the story cards which they wish to include in the first release. These story cards describes feature to be added into the program. Within same time the project team familiarize themselves with the tools, technology and practices things which will be using in the project and build a prototype of the system. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002)
  • 16. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 13 b. Planning phase: - this phase sets the priority order for the stories and an agreement of the contents of the first small release made. Programmers first estimates how much effort each story requires and scheduled. Planning phase takes couple of days. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) c. Iterations to release phase: - this phase includes several iterations of the system before the first release. The schedule set in the planning stage is broken down to a number of iteration to implement. Customers decide the stories to be selected for each iteration. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) d. Productionizing phase: - in this phase new changes may still be found and the decision has to be made if they are included in the current release. During this phase, the iterations may need to be quickened. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) e. Maintenance phase: - requires an effort for customer support tasks. Development velocity may decelerate after the system is in production. This phase mau requires incorporating new people into the team and changing the team structure. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) f. Death phase: - in this phase the necessary documentation of the system is finally written as no more changes to the architecture, design or code are made. Death phase may also occur if the system is not delivering the desired outcome or if it becomes too expensive for further development. (Abrahamsson, Salo, Ronkainen, & Warsta, 2002) There are many other forms of agile methods. Table 2 below shows some of them include Crystal Methodologies, lean Software Development (ASD) and Dynamic Systems Development Method (DSDM).
  • 17. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 14 Agile Methods Description Crystal methodologies A family of methods for co-located teams of different sizes and criticality: Clear, Yellow, Orange, Red, Blue. The most agile method, Crystal Clear, focuses on communication in small teams Developing software that is not life-critical. Clear development has seven characteristics: frequent delivery, reflective improvement, osmotic communication, personal safety, focus, easy access to expert users, and requirements for the technical environment Dynamic software development method (DSDM) Divides projects in three phases: pre-project, project life- cycle, and post project. Nine principles underlie DSDM: user involvement, empowering the project team, frequent delivery, addressing current business needs, iterative and incremental development, allow for reversing changes, high-level scope being fixed before project starts, testing throughout the lifecycle, and efficient and effective communication Lean software development An adaptation of principles from lean production and, in particular, the Toyota production system to Software development. Consists of seven principles: eliminate waste, amplify learning, decide as late as possible, deliver as fast as possible, empower the team, build integrity, and see the whole (Dyba & Dingsøyr, 2008) Table 2 : Some of other Agile Methods
  • 18. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 15 Conclusion As we came to know that traditional software development approaches are more automatic which concentrate more on Processes, tools, contracts and plans. In contrast to traditional methods, agile methods keep emphasis on interaction, working software, embracing change at any moment of the project, customer relationships. The method can be agile if it is: Incremental, Cooperative Straightforward and Adaptive. (Naidu) “Agile view is more people centric rather than plan-centric.” Agile methods are not defined by a small set of principles, practices and techniques. It creates a strategic capability which has capability of responding to change, capability to balance the structure and flexibility, capability of innovation and creations through development team and uncertainty. (Naidu) In this paper we have also discussed about the Advantages, disadvantages of Agile Methodology, difference between traditional and agile software development and Agile System Development Life Cycle. And we have also discussed about different Agile Software development models such as XP (Extreme programming), Scrum and FDD (Feature driven development). (2477 words)
  • 19. Data and Process Modeling (CPT 305) Assignment 1: Agile Methodology Hussain Azmee 19012 Page 16 Reference Agile Methodology. (2008, October 23). Retrieved March 27, 2013, from Agile Methodology: http://agilemethodology.org/ WATERFALL vs. AGILE METHODOLOGY. (2008, January 4). Retrieved March 22, 2013, from Agile Introduction For Dummies: http://agileintro.wordpress.com/2008/01/04/waterfall- vs-agile-methodology/ Agile Development Methods: Philosophy and Practice. (2010). CPSC 315 – Programming Studio. Abrahamsson, P., Salo, O., Ronkainen, J., & Warsta, J. (2002). Agile Software Development Methods Review and Analysis. University of Oulu: VTT Publications 478. Ambler, S. W. (2012). The Agile System Development Life Cycle (SDLC). Retrieved March 26, 2013, from ambysoft: http://www.ambysoft.com/essays/agileLifecycle.html Dyba, T., & Dingsøyr, T. (2008). Empirical studies of agile software development: A systematic review. ELSEVIER Information and Software Technology, 27. Naidu, S. S. (n.d.). Agile Software Development. Navneetjha. (2012, July 12). Agile Methodology - ABrief Overview. Retrieved March 27, 2013, from HubPages: http://navneetjha.hubpages.com/hub/Agile-Methodology-A-Brief- Overview Tay, L. (2008, December 10). Agile Methodology: ASoftware Development Process Framework. Retrieved March 20, 2013, from Yahoo! Voices: http://voices.yahoo.com/agile- methodology-software-development-process-framework-2263234.html Trivikram. (2011, May 4). Principles of Agile Methodology. Retrieved March 26, 2013, from That Technology: http://www.thatstechnology.com/software-testing/principles-of-agile- methodology Williams, L. (2007). ASurvey of Agile Development Methodologies.