agile software development

Published on June 2016 | Categories: Types, Reviews | Downloads: 22 | Comments: 0 | Views: 240
of 23
Download PDF   Embed   Report

agile software development report

Comments

Content

Presented By : Vighnesh

Topics
 Introduction
 Terminology  The Agile Manifesto  Some Agile Methodologies  Summary  References

What Is Agile
 Agile --readiness for motion, nimbleness, activity, dexterity in

motion

 Agility The ability to both create and respond to change in order to profit in a turbulent business environment


Companies need to determine the amount of agility they need to be competitive

 Chaordic  Exhibiting properties of both chaos and order




The blend of chaos and order inherent in the external environment and in people themselves, argues against the prevailing wisdom about predictability and planning Things get done because people adapt, not because they slavishly follow processes

Agile Software Development
 Agile software development is a conceptual framework

for software engineering that promotes development iterations throughout the life-cycle of the project.
 Software developed during one unit of time is referred to as

an iteration, which may last from one to four weeks.
 Agile methods also emphasize working software as the

primary measure of progress

Agile Software Development: Intro
 Characteristics of Agile Software Development

-- Light Weighted methodology -- Small to medium sized teams -- vague and/or changing requirements -- vague and/or changing techniques -- Simple design -- Minimal system into production

Characteristics
 Modularity
 Iterative  Time-bound  Incremental  Convergent  People-oriented  Collaborative

Principles and working of agile model
 Customer satisfaction by rapid delivery of useful

software  Welcome changing requirements, even late in development  Working software is delivered frequently (weeks rather than months)  Working software is the principal measure of progress  Sustainable development, able to maintain a constant pace

Principles and working of agile model
 Close, daily co-operation between business people and

developers  Face-to-face conversation is the best form of communication (co-location)  Projects are built around motivated individuals, who should be trusted

Principles and working of agile model
 Continuous attention to technical excellence and good

design  Simplicity- The art of maximizing the amount of work not done - is essential  Self-organizing teams  Regular adaptation to changing circumstances

Existing Agile Methods
 Extreme Programming (“XP”)
 Agile Unified Process  Scrum

Extreme Programming
 Most prominent Agile Software development method  Prescribes a set of daily stakeholder practices

 “Extreme” levels of practicing leads to more responsive

software.  Changes are more realistic, natural, inescapable.

Agile Unified Process
 AUP is a simplified version of RUP

Phases of AUP  Inception  Elaboration  Construction  Transition

Disciplines of AUP
 Model
 Implementation  Test  Deployment  Configuration Management  Project Management  Environment

Scrum
 It is an Agile S/w development method for project

management Characteristics:  Prioritized work is done.  Completion of backlog items  Progress is explained  Agile Software Development

Advantages
 Customer satisfaction by rapid, continuous delivery of

useful software.  People and interactions are emphasized rather than process and tools. Customers, developers and testers constantly interact with each other.  Working software is delivered frequently (weeks rather than months).  Face-to-face conversation is the best form of communication.

Advantages
 Close, daily cooperation between business people and

developers.  Continuous attention to technical excellence and good design.  Regular adaptation to changing circumstances.  Even late changes in requirements are welcomed

Disadvantages
 In case of some software deliverables, especially the large

ones, it is difficult to assess the effort required at the beginning of the software development life cycle.  There is lack of emphasis on necessary designing and documentation.  The project can easily get taken off track if the customer representative is not clear what final outcome that they want.  Only senior programmers are capable of taking the kind of decisions required during the development process. Hence it has no place for newbie programmers, unless combined with experienced resources

Usage
 When new changes are needed to be implemented.

The freedom agile gives to change is very important. New changes can be implemented at very little cost because of the frequency of new increments that are produced.  To implement a new feature the developers need to lose only the work of a few days, or even only hours, to roll back and implement it.

Usage
 Unlike the waterfall model in agile model very limited

planning is required to get started with the project. Agile assumes that the end users’ needs are ever changing in a dynamic business and IT world. Changes can be discussed and features can be newly affected or removed based on feedback. This effectively gives the customer the finished system they want or need.  Both system developers and stakeholders alike, find they also get more freedom of time and options than if the software was developed in a more rigid sequential way. Having options gives them the ability to leave important decisions until more or better data or even entire hosting programs are available; meaning the project can continue

Conclusion
 Synthesizes the existing literature.  Each method is described in terms of process, roles,

responsibilities, practices, adoption and experiences.  Enables a selection criteria for comparing methods and pointing out their differences.

References
 [1]. Abrahamsson P, Salo O and Ronkainen J. Agile software
     

development methods (Review and analysis). [2]. Scott W Ambler. Agile model driven development. [3]. Cohen D, Lindvall M, Costa P. Agile software development. [4]. http://en.wikipedia.org/wiki/Agile_Modeling. [5]. http://en.wikipedia.org/wiki/Extreme_Programming. [6]. http://en.wikipedia.org/wiki/Agile_Unified_process. [7]. http://en.wikipedia.org/wiki/Scrum_28development29.

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close