Monday, April 24, 2017

Basic Information about AGILE

Dynamic Systems Development Method

Dynamic Systems Development Method or DSDM was developed in the 1990s to provide more discipline to Rapid Application Development or RAD. The latest version is called Atern. It is one of the earliest Agile methods and covers the entire project life cycle. This method is quite detailed and ensures the project does enough design upfront before any of the development activity begins.

The features of this method are as follows:

DSDM uses a prioritization technique called MoSCoW, which stands for Must, Should, Could, and Won’t to determine the requirements to be included in a release or iteration.

The Atern methodology fixes the schedule, cost, and quality, while achieving contingency by varying the features. This ensures the delivery of Minimum Usable Subset (MUS) of features.

Principles of DSDM Atern

As listed, DSDM revolves around eight principles. They are:

Focus on the business need: Understand the business priorities and clearly define the scope of the system. Establish a sound business case, seek continuous business sponsorship and commitment, and guarantee the Minimum Usable Subset of features.
Deliver on time: 
 Timebox the work, focus on business priorities, and always meet deadlines.
Collaborate:
Build a one team culture. Involve the right stakeholders, at the right time, throughout the project and ensure that the team members are empowered to take decisions.
Never compromise quality:
 Build in quality by constant review, and test early and continuously. It is important to see test-driven development for comparison.
Build incrementally from firm foundations:
Formally reassess priorities and ongoing project viability with each delivered increment. Strive for early delivery of business benefit and constantly verify the solution being built.
Develop Iteratively: 
Take an iterative approach to build all products, build customer feedback into each iteration, and embrace change.
Communicate continuously and clearly:
Run daily team stand-up sessions, use facilitated workshops, and communication techniques such as modelling and prototyping. Manage stakeholder expectations throughout the project, and encourage informal, face-to-face communication at all levels.
Demonstrate control:
Use an appropriate level of formality for tracking and reporting. Make plans and progress visible to all. Measure progress through focus on delivery of products, manage proactively, and evaluate project viability based on the business objectives.


Phases of DSDM

In the Pre-Project phase, identify and select the right project for development that would deliver value.
In the Feasibility phase, identify if a feasible solution exists for the project selected during the pre-project phase.
In the Foundation phase, establish a strong foundation for the project from a business and technical front, and identify the necessary standards that the project needs to adhere to.
In the Exploration phase, iteratively and incrementally develop the solution. The resultant solution is not expected to be production ready as the non-functional requirements need to be developed during the Engineering phase.
In the Engineering phase, iteratively and incrementally develop the non-functional requirements to make the product production ready. The focus here is on factors such as maintainability, security, portability, response, and time.
In the Deployment phase, deploy the solution to the live environment. In the Post-Project phase, assess the business benefits that are realized through delivery of the solution developed.

No comments: