Alan Howard A new RAD-based approach to commercial information systems development: the dynamic system development method
Industrial Management & Data Systems 97/5  175–177
[ 176 ]
1 Active user involvement in the system
development process is imperative. 2 DSDM team members must be empowered
to make decisions. 3 The focus in a project is on frequent deliv-
ery of products rather than on activities. 4 Every deliverable is fit for its business
purpose. 5 Iterative and incremental development is a
powerful way to build systems. 6 All changes are reversible, no require-
ments are frozen. 7 Baselining of high-level system require-
ments. 8 Testing is integrated throughout the devel-
opment cycle. 9 A collaborative and co-operative approach
to development is essential.
A key technique in DSDM is prototyping. Prototyping is an approach to system devel- opment which attempts to demonstrate how a system or system component will function in its environment prior to actual construction. Users find such demonstrations extremely helpful in visualizing what proposed systems have to offer. Developers find them helpful in establishing the scope and feasibility of user requirements. Prototyping is strong in areas where other methods are weak. It supports the end-user as well as the professional devel- oper. It promotes the “five Cs” of successful system development: collaboration, commu- nication, conceptualization, change and con- sensus.
Collaboration in development is needed to forge a partnership between users and IT personnel which focuses on producing useful, quality systems and avoids “disconnects” and contractual arguments.
Communication is vital so that all the par- ties in a development project understand each other.
Conceptualization helps project members develop visions of solutions which can then be turned into reality.
Change is frequently seen as something to be avoided in system development or to be used as a mechanism for obtaining additional resources. In reality it is an inevitable consequence of turbulent real- world environments and of the close link between information systems in the broad business sense and information systems in the narrow technical sense.
Consensus in IT projects has usually been based on specification documents and has frequently been reached to neither develop- ers’ nor users’ ultimate satisfaction.
In DSDM, business prototypes are designed to demonstrate the business functionality addressed by the system. Usability prototypes ensure that the final system will be easy to use, enjoyable and intuitive for users. Perfor- mance prototypes ensure that systems can pass stress-testing criteria. A problem with any prototype is scalability. Prototypes which work well in small-scale trials may run into problems in the user environment when sub- jected to real-world volumes and peak loads. Capability prototypes are for the benefit of IT staff. They can be built using different approaches, tools and techniques to aid decision making between technical system options.
Any method which uses prototyping places extra demands on development staff. Tradi- tional development is based largely on writ- ten communication. Prototyping relies much more heavily on interpersonal skills and verbal communication. Personal relation- ships between developers and users are more important. Mutual trust, understanding, confidence and commitment are vital in pro- totyping situations. Traditional development is a manufacturing process. Prototyping development has more of the characteristics of a service industry. Manufacturing and service industries have different emphases. Service industries focus on customer satisfac- tion, manufacturing on getting the product exactly right. Service industries must respond quickly to customer and market changes, while manufacturing industries take time to change their production tech- niques. Much of today’s system development is service-based. It is the business value of IT systems that is important to customers not the internal technical details of the system. This trend is reflected in the principles of active user involvement, collaboration and co-operation, and fitness for business purpose of products in DSDM.
A key issue in DSDM is empowerment of users and developers. If development is to be rapid there is no time to continually refer to superiors for decisions. Team members must have the knowledge and authority to make development decisions themselves. Thus teams must be self-directed. Traditional team organizations and work practices slow down projects and are too inflexible to compete in a modern environment. Restric- tive job functions, status-laden levels of hierarchy and narrowly focused skills do not support dynamic development. Traditional teams focus on “problem thinking”, self-