Agile Methods (Scrum (Simplicity and transparency of processes, Adaptive…
Simplicity and transparency of processes
Able to adapt quickly to change
Has an iterative approach
Quick learning cycles
Rapid market release
In scrum emphasis is on people unlike traditional project management.
In Scrum, prioritisation of requirements is based on business value and regularly updated.
Quality assurance process is customer-centric and the organisation is self-organised.
Customer involvement is high through out a Scrum project.
Feature Driven Development
Develop an overall model
Build a feature list
Plan by feature
Design by feature
Build by feature
FDD's five steps are supported by several practices. The first is domain object modeling, the creation of a high-level class diagram and supporting artifacts that describes the problem domain. Developing by feature and individual class ownership are also good practices, as is having developers work together in feature teams. Inspections are an important aspect of FDD. FDD also insists on regular builds, similar to XP, and configuration management. Finally, FDD promotes a best practice called reporting/visibility of results, similar to XP and AM's philosophy of open and honest communication.
Dynamic Software Development
Focuses on the full project lifecycle: covers the entire lifecycle of a project and provides best practice guidance for on-time, in-budget delivery of projects, with proven scalability to address projects of all sizes and for any business sector.
Created in 1994 after Project Managers using RAD (Rapid Application Development) sought more governance and discipline to this iterative way of working
The eight Principles of DSDM: Focus on the business need, Deliver on time, Collaborate, Never compromise quality, Build incrementally from firm foundations, Develop iteratively, Communicate continuously and clearly, Demonstrate control
DSDM advocates the use of several proven practices, including: Facilitated Workshops, Modelling and Iterative Development, MoSCoW Prioritisation, Time boxing
DSDM is designed to be easily tailored and used in conjunction with traditional methods such as PRINCE2 or to complement other Agile approaches such as Scrum.
The first Extreme Programming project was started March 6, 1996.
Extreme Programming is one of several popular Agile Processes.
Extreme Programming is successful because it stresses customer satisfaction.
Extreme Programming empowers your developers to confidently respond to changing customer requirements, even late in the life cycle.
Extreme Programming emphasises teamwork.
are all equal partners in a collaborative team.
Extreme Programming implements a simple, yet effective environment enabling teams to become highly productive. The team self-organises around the problem to solve it as efficiently as possible.
Adaptive Software Development
All Agile methodologies are adaptive in nature and an adaptive approach encourages changes throughout the project to optimize the design of the overall solution.
Adaptive software development is a design principle for the creation of software systems. The principle focuses on the rapid creation and evolution of software systems.
Speculate --> Initiation and Planning
Collaborate --> Concurrent feature development
Learn --> Quality Review
Crystal Clear is a member of the Crystal family of methodologies. This can be applied to teams of around 6 and upto 8.
Early frequent delivery of working software
it can be considered a light weight methodology
Configuration management and frequent integration
High user involvement, adaptability
The removal of bureaucracy or distractions
Frequent delivery of usable code to users
Rapid Application Development
User description phase – automated tools capture information from users
Requirements planning phase (a workshop utilizing structured discussion of business problems)
Construction phase – productivity tools, such as code generators, screen generators, etc. inside a time-box. (“Do until done”)
Cutover phase -- installation of the system, user acceptance testing and user training
Rational Unify Process
Develop iteratively, with risk as the primary iteration driver
Employ a component-based architecture
Model software visually
Continuously verify quality