SSADM:
Structured Systems Analysis and Design Methodology
"the successor to the Conventional approach" but with more rigour: clearer guidelines and tighter rules to follow

Developed by:            Learmonth & Burchett Management Systems
                                     Central Computing and the Telecommunications Agency

                                     who were the main UK Civil Service training provider

Reference: Goodland & Slater (1995)

There is frequent use of Diagrams!
 

data flow diagrams
entity relationship models
entity life history diagrams

Three views of the system



 
 
Data flow diagrams show how information is passed around
Entity Relationship Models show what information is stored and how it is inter-related
Entity Life Histories show how information is changed during its lifetime

The objective during development using SSADM is to always use these 3 views – and make sure they are inter-related



LDS = Logical Data Structure = end product of Entity Relationship Modelling

LDS – DFD relationship

An LDS shows entities stored in the system

However
Top
LDS – ELH relationship

SSADM - unlike the Conventional Approach is DATA driven

Works on the Assumptions:

Modelling the data is at the core of SSADM
Data modelling begins very early in the development of an IS

Representation of the data is checked against

                                                                                    before being built into the system’s architecture

SSADM is an analysis and design methodology
                                                                There is no:
of the Conventional Approach
SSADM modules and stages:
 
 
Feasibility Study
0 Feasibility
  • Prepare for the feasibility study
  • Define the problem
  • Select feasibility options
  • Create feasibility report
Requirements Analysis
1 Investigation of Current Environment
  • Establish analysis framework
  • Investigate and define requirements
  • Investigate current processing
  • Investigate current data
  • Derive logical view of current services
  • Assemble investigate results
2 Business system options
  • Define business system options
  • Select business system options
  • Define requirements
Requirements Specification
3 Definition of Requirements
  • Define required system processing
  • Develop required data model
  • Derive system functions
  • Enhance required data model
  • Develop specification prototypes
  • Develop processing specification
  • Confirm system objectives
  • Assemble requirements specification
Logical System Specification
4 Technical system options
  • Define technical system options
  • Select technical system options
  • Define physical design module
5 Logical Design
  • Define user dialogues
  • Define update processes
  • Define enquiry process
  • Assemble logical design
Physical Design
6 Physical design
  • Prepare for physical design
  • Create physical data design
  • Create function component implementation map
  • Optimise physical data design
  • Complete function specification
  • Consolidate process data interface
  • Assemble physical design
Feasibility Study
 
Stage 0

  Feasibility 
Requirements Analysis
 
Stage 1

 Investigate Current 
Environment

 
 
Stage 2

 Business Systems 
Options
Requirements Specification
 
 
Stage 3

Definition of
 Requirements 

 

Logical Systems Specification
 
Stage 4

 Technical System
Options

 
Stage 5

 Logical Design 
Physical Design
 
Stage 6

 Physical Design 

SSADM makes use of phases (stages) and sub-phases, all precisely detailed.
This allows project management tools to be used alongside the methodology.
In recent versions the emphasis on data has been balanced by focussing 
more on the users needs.


A feasibility study is usually NOT included: there is an underlying assumption that the project needs to go ahead.

Analysis is separated from design: aids elimination of ‘paralysis by analysis’: a wealth of information on the current system can overwhelm the systems analysis team and could influence design of the new system

but: user requirements should be paramount
Essentially the 6 phases of SSADM cover:


Systems Investigation
Systems Analysis
Systems Design

Without a feasibility study there is increased emphasis in:



Entity Life Histories

Why we need 3 views – why we need ELHs:

DFDs - do not show any sequencing, iteration or timing of events

Does a customer place an order before receiving the details of card designs?
LDS - shows relationships between data objects
Does not show anything about system processes i.e. no information about sequence or iteration
This is provided by ELHs

Essentially a diagrammatic technique which provides a picture of all possible outcomes for a particular entity in the system:

In Just-A-Line (current) system:

CUSTOMER entity


Examples:
Entity Life Histories

Scenario:

A student wishing to enter University starts off by applying – an applicant. On receipt of the application the admissions tutor can make the applicant an offer or reject the applicant. The offer to the applicant may be unconditional or conditional of examination performance. An accepted student, whether conditional or unconditional, may withdraw their application at any time.

Accepted students start their course and become registered. They may or may not graduate. Registered students may suspend studies for ill-health etc. and may return to graduate or else leave non-graduated.

Sequence:

Selection:

Iteration:

 

Together:


The Software Development Life Cycle

This is essentially:
The waterfall model

Iteration within the Waterfall model A major problem with software design is the need for iteration - typically required for, and a result of, verification and validation (described in Boehm, 1981, quoted by Somerville): Asking these questions at the end of each development phase may result in a decision to repeat (iterate) the phase and sometimes require a reworking of a previous phase


Iteration can be included within the waterfall model, but tends to reduce the manageability of a project. To deal with this, a strategy is used whereby a phase is 'frozen' after a specified number of iterations.
 

Problems with this approach:

However, some classes of system need this approach, particularly where the final system is "proposed", rather than specified
  
Artificial intelligence
Scientific experimentation

PROTOTYPING

A prototype is:

An original or model, after which anything is formed

The first thing, or being, of its kind

A pattern, exemplar, or archetype

Websters 20th Century Dictionary
Prototyping in systems development is the process of creating a "cut-down" version, or part of a system so that users can:  
Prototyping helps to identify misunderstandings
between users & software developers
this may help detection of missing (not yet specified) user requirements

Advantages of prototyping:

Possible Dangers of prototyping:
Key benefits of SSADM: Management control of SSADM:

PRINCE

PRojects IN a Controlled Environment

Principle = decomposition
PRINCE components: Activities:

Project control techniques break down large and complex projects into:

The work breakdown structure

Then:

done largely by experience of similar activities in past projects
Then: All these can be entered to a project control (CASE) tool that will draw up a network diagram

Using the "activity on the node" diagrammatic technique:


Activities on Critical Path

From a network diagram

Gantt charts
Estimating: Initial estimates: and work backwards, using the resources allocated so far

Can it be done with these guesstimates?

Refined Estimates

Function Point Analysis