Title: COMP2110 Software Design in 2003 lecture 4 Requirements Specifications lecture 2 of 3
1COMP2110 Software Design in 2003 lecture 4
Requirements Specifications lecture 2 of
3
- The process of creating requirements
specifications - A Req Spec is an information model meaning?
- Examples of models
- object models
- gathering, analysing and organising requirements
2The process of creating SRS
- The product of the Analysis phase is
- a well defined information model
- a set of labelled, organised requirements
statements functional consumer requirements and
developer requirements, system requirements,
performance requirements - a set of use cases or scenariosthat express the
relationships between the model and the real
world of the problem - other explanatory models interfaces, states,
decisions
3Quality SRS - recap
- A good SRS is
- 1. unambiguous
- 2. complete
- 3. verifiable
- 4. consistent
- 5. modifiable
- 6. traceable
4Information models
- A requirements specification contains an
information model of the real world - covers those parts of the world that are needed
to describe the problem - enough detail to be useful for designing a
program to solve the problem - all models are abstractionsthey remove
irrelevant and confusing detail
5Information models other models (1)
- Example mathematical models
- many mathematical models are used in engineering
or physics - usually very abstract
- for example a person who is the passenger in a
lift may be abstracted to just their masswhen
analysing the load in the lift for lift
acceleration, braking, motor power, building
structural strength
- rolling inertia or friction may be ignored when
modelling objects on a slopes as blocks sliding
on inclined planes. - this model will be inadequate to predict speed
and time if friction prevents slipping and the
object has a large moment of inertia and
therefore will roll more slowly
6Information models other models (2)
- economics models
- price versus demand curve
- many assumptions to simplify the market time,
season, fashion, whether the product is an
unsubstitutable necessity or a choice
demand
price
7Information models other models (3)
- geographical models
- a map is a model that represents some abstracted
aspect of the real world in a diagram borders of
land and sea, political borders, routes of roads
(and their intended traffic carrying capacity),
heights and vegetation, geology, temperatures
MonaVale
One Tree Hill
. 627
Murrumbidgee R
8Information models- kinds of info model(1)
- Information models also make abstract views of
the real world,but typically have more detail
than mathematical models, particularly about
relationships between things - Important different kinds
- entity-relationship models (naming and
classifying the associations between distinct
classes each of very similar things) - finite state models (expressing control
relationships between the externally visible
input values and output values, and some hidden
state changes)
9Information models finite state model
from Braude SRS for Encounter case study
10Information models ctd (2)
- data flow - networks of processes and stores
related by information flows between them
11Information models ctd (2)
- data transformationexpressing a relationship
between the format and values of data that is
input, to the format and values of the outputs
e.g. lprogrg language compiler as translator - object centredviewing the world as objects and
classes of objects, with associations between
them, actions and methods on them, and internal
states - formal (mathematical) models, usually in the
domain of set theory, functions and
relations(e.g. Z comp2600) - All kinds may be used together for some purposes
12Object oriented models (1)
- read Braude SD chapter 2carefully and critically
- this is not only about object oriented
programming languages but about the nature of an
OO view of the world (an OO information model)
13Object oriented models (2)
- example of a library loans system
- person
- 2 kinds borrowers and administratorsmaybe have
nothing in common in this info model - borrower limit, card number, address, books out,
long term loan record, books requested, overdue - book identifying tag (ISBN copy no.)
- loan record book, person, date
14Object oriented models (3)
- example of another kind of person genealogy
(family tree records) - person
- name, date of birth, date of deathpartnerships,
children - partnerships (marriages)
- 2 persons, start and end dates
15Information models use cases
- the way in which the objects act and interact in
the model is important - often more important than the contents or
fields of the objects as described before - can be gathered by writing use cases
- can be verified by checking use cases against
requirements - create domain classes
16Information models use cases