320 likes | 579 Views
Dynamic Systems Development Method. Sanda Cristina Corina. Since in 1994, DSDM, the Dinamic Systems Development Method, has gradually become the number one framework for rapid application development (RAD) in the UK.
E N D
Dynamic Systems Development Method Sanda Cristina Corina
Since in 1994, DSDM, the Dinamic Systems Development Method, has gradually become the number one framework for rapid application development (RAD) in the UK. • The fundamental idea behind DSDM is that instead of fixing the amount of functionality in a product, and then adjusting time and resources to reach that functionality, it is preferred to fix time and resources, and then adjust the amount of functionality accordingly
Process DSDM consists of five phases: • Feasibilitystudy • Business study • Functional model iteration • Design and build iteration and implementaion
The Feasibility Study • The feasibility study phase is where the suitable of DSDM for the given project is assessed. Judging by the type of project and, most of all, organisational and people issues, the decission is made, whether to use DSDM or not.
The business study • The business study is a phase where the essential characteristics of the business and technology are analized. the recomended approach is to organize workshops, where a sufficient number of customer’s experts are gathered to be able to consider all relevant facets of the system, and to be able to agree on development priorities.
The funtional model iteration • The funtional model iteration phase is the first iterative and incremental phase. a functional model is produced as an output, containing the prototype code and the analysis models. Testing is also a continuing, essential part of this phase.
There are four further outputs in the phase: • Prioritized functions • Functional prototyping review documents • Non-functional requirements • Risk analysis of further develpment
The design and build itration • The design and build iteration is where the syste is ainly built. The output is a Tested System that fuilfils at least the minimum agreed set of requirements. Design and build are iterative, and the design and funtional prototypes are reviwed by the users, and further develpment is based on user’s comments.
Implementation • The final implementation phase is where the system is transferred from the development environment into the actual production environment. Training is given to users, and the system handed over to them. If the roll-out concerns a wide number of users, and done over a period o time, the implementationm phase may also be iterated. Apart from the delivered system, the output of the implementation phase also includes a User Manual, and a Project Review Report. The latter summarizes the outcome of the project, and based on the results, the course of further development is set.
DSDM defines four possible courses of develpment • The system fuifils all requirements – no further work is needed • A substantial amount of requirements have to be left aside – the process may be run again, from start to finish • Some less-critical functionality has to be omitted – the process may to be run again from the functional model iteration phase onwards • Some techical issues can not be addressed due to time constrains – they may be now done by iretating again, starting from the design and build iteration phase
Roles and responsabilities • DSDM defines 15 roles for users and developers. The most dominant ones are the following: • Developers and senior developers • Technical coordinator • The Ambassador User • The Adviser User • Visionary • Executive Sponsor
Developers and senior developers • Developers and senior developers are the only developers roles. Seniority is based on experience in the tasks the developer performs. The senior developer title also indicates a level of leadership in the team. The developer and senior developer roles cover all development staff, be it analysts, designers, programmers or testers.
Technical coordinator • A Technical coordinator defines the system architecture and is responsible for technical quality in the project. He is also responsible for technical project control, such as the use of software configuration management
The Ambassador User • Of the user roles, the most important one is the Ambassador User. The respective duties are to bring the knowledge of the user community into the project, and to disseminate information about the progress of the project to other users. This ensures that an adequate amount of user feetback is received. The ambassador user has to come from user community thet will eventually use the system.
The Adviser User • Since the ambassador user is unlikely to represent all the required user viewpoints, however, an additional role of Adviser User is defined. Advisers users can be any users hwo represent an important viewpoint from the point of view of the project. Adviser users can be IT staff, or financial auditors.
Visionary • A Visionary is the user participant who has the most accurate perception of the business objectives of the system and the project. The Visionary is probably also the one with the initial the idea of building the system. The task of the visionary is to ensure that essential requirements are found early on, and that the project keeps going in the right direction from the viewpoint of those requirements
Executive Sponsor • An Executive Sponsor is the person from the user organisation who has the related financial authority and responsibility. The Executive Sponsor therefore has ultimate power in making decisions.
Practices • The pratices that defines the ideology and the basis for all activity in DSDM are: • Active user involvement is imperative • DSDM teams must be empowered to make decisions • The focus is on frequent delivery of products • Fitness for business purpose is the essential criterion for acceptance of deliverables
Iterative and incremental development is necessary to converge on an accurate business solution • All chnages during development are reversible • Requirements are baselined at a high level • Testing is integrated through the lifecycle • A collaborative and cooperative approach shared by all stakeholders is essential
Adoption and experience • In order to facilitate the method adoption, the DSDM Consortium has published a method suitability filter, in which three areas are covered: • Business • Systems • Technical
The main questions that have to be considered are: • Is functionality going to be reasonably visible at the user interface? • Can you clearly idetify all classes of end users? • Is the application computationally complex? • Is the application potentially large? If it is, can it be split into smaller functional components? • Is the project really time constrained? • Are requirements flexible and only specified at a high level?
Scope of use • The DSDM team size varies between two and six, and there may be many teams in a project. The minimum of two persons involved comes form fact that each team has to have at least one user and one developer. The maximum of six is a value found in practice. DSDM das beenn applied in small and large projects alike. The precondition for using it in large systems is that the system can be split into components that can be developed in small teams.
Current research • DSDM was originally developed and continues to be maintained by a consortium that consists of several member companies. DSDM manuals and supporting white papers are made aviable to consortium partners for a nominal annual cost. Outide the consortium there is no identificable research to be found, while within the consortium the method continues to envolve.