CSC/ECE 517 Fall 2011/ch5 6d ny: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
Line 146: Line 146:


==Conclusion==
==Conclusion==
To conclude, agile software development stresses rapid iterations, small and frequent releases, and evolving requirements facilitated by direct user involvement in the development process. This development isn’t a managerial free-for-all. It requires discipline and adherence to processes, even when those processes are not burdensome.
When it comes to methodologies, each project is different. One thing is clear: that there is no “one-size-fits-all” solution.


==See also==
==See also==

Revision as of 17:10, 13 November 2011

Agile Landscape


Introduction

Agile- denoting “the quality of being agile; readiness for motion; nimbleness, activity, dexterity in motion ” is a group of software development methodologies based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams.


The term “Agile Software Development” was introduced in 2001 by Agile Software Development Manifesto published by a group of software practitioners and consultants. The important aspects of this Manifesto are,

  • Individuals and interactions over processes and tools.
  • Working software over comprehensive documentation.
  • Customer collaborations over contract negotiation.
  • Responding to change over following plan.


Flowchart
Agile Development Life cycle

Agile Software development processes are based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams.Agile processes use feedback, rather than planning, as their primary control mechanism. The feedback is driven by regular tests and releases of the evolving software.

Different Methodologies

Different Methodologies

Extreme Programming

Definition

Origin

FlowChart

Usage

Scrum

Definition

Origin

FlowChart

Usage

Crystal family of Methodologies

Definition

Origin

FlowChart

Usage

Feature Driven Development

Definition

Origin

FlowChart

Usage

Rational Unified Process

Definition

Origin

FlowChart

Usage

Dynamic Systems Development

Definition

Origin

FlowChart

Usage

Adaptive Software Development

Definition

Origin

FlowChart

Usage

Open Source Software Development

Definition

Origin

FlowChart

Usage

Agile Modelling

Definition

Origin

FlowChart

Usage

Pragmatic Programming

Definition

Origin

FlowChart

Usage

Comparision

How widely these methodologies are used

Evidence to support the effectiveness of Agile Development

Conclusion

To conclude, agile software development stresses rapid iterations, small and frequent releases, and evolving requirements facilitated by direct user involvement in the development process. This development isn’t a managerial free-for-all. It requires discipline and adherence to processes, even when those processes are not burdensome. When it comes to methodologies, each project is different. One thing is clear: that there is no “one-size-fits-all” solution.

See also

External Links:

References: