Structured systems analysis and design method
||This article includes a list of references, but its sources remain unclear because it has insufficient inline citations. (May 2010)|
Structured systems analysis and design method (SSADM) (originally released as methodology) is a systems approach to the analysis and design of information systems. SSADM was produced for the Central Computer and Telecommunications Agency (now Office of Government Commerce), a UK government office concerned with the use of technology in government, from 1980 onwards.
SSADM is a waterfall method for the analysis and design of information systems. SSADM can be thought to represent a pinnacle of the rigorous document-led approach to system design, and contrasts with more contemporary agile methods such as DSDM or Scrum.
SSADM is one particular implementation and builds on the work of different schools of structured analysis and development methods, such as Peter Checkland's soft systems methodology, Larry Constantine's structured design, Edward Yourdon's Yourdon Structured Method, Michael A. Jackson's Jackson Structured Programming, and Tom DeMarco's structured analysis.
The principal stages of the development of SSADM were:
- 1980: Central Computer and Telecommunications Agency (CCTA) evaluate analysis and design methods.
- 1981: Consultants working for Learmonth & Burchett Management Systems, led by John Hall, chosen to develop SSADM v1.
- 1982 John Hall and Keith Robinson left to found Model Systems Ltd, LBMS later developed LSDM, their proprietary version.
- 1983: SSADM made mandatory for all new information system developments
- 1984: Version 2 of SSADM released
- 1986: Version 3 of SSADM released, adopted by NCC
- 1988: SSADM Certificate of Proficiency launched, SSADM promoted as ‘open’ standard
- 1989: Moves towards Euromethod, launch of CASE products certification scheme
- 1990: Version 4 launched
- 1993: SSADM V4 Standard and Tools Conformance Scheme
- 1995: SSADM V4+ announced, V4.2 launched
- 2000: CCTA renamed SSADM as "Business System Development". The method was repackaged into 15 modules and another 6 modules were added.
 SSADM techniques
The three most important techniques that are used in SSADM are:
- Logical data modeling
- The process of identifying, modeling and documenting the data requirements of the system being designed. The result is a data model containing entities (things about which a business needs to record information), attributes (facts about the entities) and relationships (associations between the entities).
- Data Flow Modeling
- The process of identifying, modeling and documenting how data moves around an information system. Data Flow Modeling examines processes (activities that transform data from one form to another), data stores (the holding areas for data), external entities (what sends data into a system or receives data from a system), and data flows (routes by which data can flow).
- Entity Event Modeling
- A two-stranded process: Entity Behavior Modeling, identifying, modeling and documenting the events that affect each entity and the sequence (or life history) in which these events occur, and Event Modeling, designing for each event the process to coordinate entity life histories.
The SSADM method involves the application of a sequence of analysis, documentation and design tasks concerned with the following.
 Stage 0 – Feasibility study
In order to determine whether or not a given project is feasible, there must be some form of investigation into the goals and implications of the project. For very small scale projects this may not be necessary at all as the scope of the project is easily understood. In larger projects, the feasibility may be done but in an informal sense, either because there is not time for a formal study or because the project is a “must-have” and will have to be done one way or the other.
When a feasibility study is carried out, there are four main areas of consideration:
Technical – is the project technically possible?
Financial – can the business afford to carry out the project?
Organizational – will the new system be compatible with existing practices?
Ethical – is the impact of the new system socially acceptable?
To answer these questions, the feasibility study is effectively a condensed version of a fully blown systems analysis and design. The requirements and users are analyzed to some extent, some business options are drawn up and even some details of the technical implementation. The product of this stage is a formal feasibility study document. SSADM specifies the sections that the study should contain including any preliminary models that have been constructed and also details of rejected options and the reasons for their rejection.
 Stage 1 – Investigation of the current environment
This is one of the most important stages of SSADM. The developers of SSADM understood that though the tasks and objectives of a new system may be radically different from the old system, the underlying data will probably change very little. By coming to a full understanding of the data requirements at an early stage, the remaining analysis and design stages can be built up on a firm foundation.
In almost all cases there is some form of current system even if it is entirely composed of people and paper. Through a combination of interviewing employees, circulating questionnaires, observations and existing documentation, the analyst comes to full understanding of the system as it is at the start of the project. This serves many purposes:
- the analyst learns the terminology of the business, what users do and how they do it
- the old system provides the core requirements for the new system
- faults, errors and areas of inefficiency are highlighted and their correction added to the requirements
- the data model can be constructed
- the users become involved and learn the techniques and models of the analyst
- the boundaries of the system can be defined
The products of this stage are:
- Users Catalog describing all the users of the system and how they interact with it
- Requirements Catalogs detailing all the requirements of the new system
- Current Services Description further composed of
- Current environment logical data structure (ERD)
- Context diagram (DFD)
- Leveled set of DFDs for current logical system
- Full data dictionary including relationship between data stores and entities
To produce the models, the analyst works through the construction of the models as we have described. However, the first set of data-flow diagrams (DFDs) are the current physical model, that is, with full details of how the old system is implemented. The final version is the current logical model which is essentially the same as the current physical but with all reference to implementation removed together with any redundancies such as repetition ofhe information that makes up the users and requirements catalogs.
 Stage 2 – Business system options
Having investigated the current system, the analyst must decide on the overall design of the new system. To do this, he or she, using the outputs of the previous stage, develops a set of business system options. These are different ways in which the new system could be produced varying from doing nothing to throwing out the old system entirely and building an entirely new one. The analyst may hold a brainstorming session so that as many and various ideas as possible are generated.
The ideas are then collected to form a set of two or three different options which are presented to the user. The options consider the following:
- the degree of automation
- the boundary between the system and the users
- the distribution of the system, for example, is it centralized to one office or spread out across several?
- impact of the new system
Where necessary, the option will be documented with a logical data structure and a level 1 data-flow diagram.
The users and analyst together choose a single business option. This may be one of the ones already defined or may be a synthesis of different aspects of the existing options. The output of this stage is the single selected business option together with all the outputs of the feasibility stage.
 Stage 3 – Requirements specification
This is probably the most complex stage in SSADM. Using the requirements developed in stage 1 and working within the framework of the selected business option, the analyst must develop a full logical specification of what the new system must do. The specification must be free from error, ambiguity and inconsistency. By logical, we mean that the specification does not say how the system will be implemented but rather describes what the system will do.
To produce the logical specification, the analyst builds the required logical models for both the data-flow diagrams (DFDs) and the entity relationship diagrams (ERDs). These are used to produce function definitions of every function which the users will require of the system, entity life-histories (ELHs) and effect correspondence diagrams, these are models of how each event interacts with the system, a complement to entity life-histories. These are continually matched against the requirements and where necessary, the requirements are added to and completed.
The product of this stage is a complete requirements specification document which is made up of:
- the updated data catalog
- the updated requirements catalog
- the processing specification which in turn is made up of
- user role/function matrix
- function definitions
- required logical data model
- entity life-histories
- effect correspondence diagrams
Though some of these items may be unfamiliar to you, it is beyond the scope of this unit to go into them in great detail.
 Stage 4 – Technical system options
This stage is the first towards a physical implementation of the new system. Like the Business System Options, in this stage a large number of options for the implementation of the new system are generated. This is honed down to two or three to present to the user from which the final option is chosen or synthesized.
However, the considerations are quite different being:
- the hardware architectures
- the software to use
- the cost of the implementation
- the staffing required
- the physical limitations such as a space occupied by the system
- the distribution including any networks which that may require
- the overall format of the human computer interface
All of these aspects must also conform to any constraints imposed by the business such as available money and standardization of hardware and software.
The output of this stage is a chosen technical system option.
 Stage 5 – Logical design
Though the previous level specifies details of the implementation, the outputs of this stage are implementation-independent and concentrate on the requirements for the human computer interface. The logical design specifies the main methods of interaction in terms of menu structures and command structures.
One area of activity is the definition of the user dialogues. These are the main interfaces with which the users will interact with the system. Other activities are concerned with analyzing both the effects of events in updating the system and the need to make inquiries about the data on the system. Both of these use the events, function descriptions and effect correspondence diagrams produced in stage 3 to determine precisely how to update and read data in a consistent and secure way.
The product of this stage is the logical design which is made up of:
- Data catalog
- Required logical data structure
- Logical process model – includes dialogues and model for the update and inquiry processes
- Stress & Bending moment.
 Stage 6 – Physical design
This is the final stage where all the logical specifications of the system are converted to descriptions of the system in terms of real hardware and software. This is a very technical stage and a simple overview is presented here.
The logical data structure is converted into a physical architecture in terms of database structures. The exact structure of the functions and how they are implemented is specified. The physical data structure is optimized where necessary to meet size and performance requirements.
The product is a complete Physical Design which could tell software engineers how to build the system in specific details of hardware and software and to the appropriate standards. ot..
 Advantages and disadvantages
A methodological approach of studying a business (or an area of a business) from a number of different perspectives is more likely to provide a more thorough understanding of the business, its processes and data, than the "ad-hoc" approaches that were used previously. This in turn should (it was hoped) lead to systems that are more complete and correct.
However, the SSADM approach of having to complete one phase before beginning the next led some projects into what is referred to as "analysis paralysis". What is meant by this is that because a business and its processes never stays the same for very long, the systems team would continually have to revisit analysis and design products for amendment, causing (sometimes lengthy) delays in getting to the programming and delivery stages of the system. In recognition of this, later versions of the Methodology introduced a more optional/dynamic approach to the process.
There is also a cost in training people to use the techniques. The learning curve can be considerable if the full method is used, as not only are there several modelling techniques to come to terms with, but there are also a lot of standards for the preparation and presentation of documents.
In summary, using this methodology involves a significant undertaking which may not be suitable to all projects.
- "OGC – Annex 1". Office of Government Commerce (OGC). Retrieved 2010-12-17.
- Mike Goodland; Karel Riha (20 January 1999). "History of SSADM". SSADM – an Introduction. Retrieved 2010-12-17.
- "Model Systems and SSADM". Model Systems Ltd. 2002. Retrieved 2009-04-02.
- SSADM foundation. Business Systems Development with SSADM. The Stationery Office. 2000. p. v. ISBN 0-11-330870-1.
||This article needs additional citations for verification. (November 2008)|