Modelling & Analysis Flashcards
What does the term ‘perspective’ mean?
A perspective relates to a software development role such as a manager, end-user or customer.
What does the term ‘viewpoint’ mean?
A viewpoint relates to a set of particular characteristics of a model. Which reflects some specific aspect of software. Usually captured through some particular representation.
What are the three different forms of representations?
- Textual
- Diagrammatical
- Mathematical
What are representations?
Representation provide the abstract descriptions used in models. A representation usually reflects the concern of a particular viewpoint.
What are the four main viewpoints.
- Constructional
- Behavioural
- Functional
- Data Modelling
Describe the Constructional viewpoint, what modelling notations can be used for it?
Describes the static properties and constructional details.
Notations:
Structure Chart (call graph)
OO Class Diagrams
Describe the Behavioural viewpoint, what modelling notations can be used for it?
Describe the causal links between events and system responses.
Notations: State Transition Diagram State Transition Table State Chart Message Sequencing Diagram
Describe the Functional viewpoint, what modelling notations can be used for it?
Describes the actions and operations that are performed by the system.
Notations:
Dataflow Diagram
Activity Diagram
Pseudo Code
Describe the Data Modelling viewpoint, what modelling notations can be used for it?
Describes the forms of data elements and the relationships between them.
Notations:
Entity-Relationship Diagram
OO Class Diagram
Describe the Dataflow Diagram.
Circle - denotes operation.
Parallel bars - denotes data store.
Box - external source or sink of information.
Arrow - flow of information between components.
- Can be expanded to hierarchal form.
(Does not involve control flow involved in operations.)
Describe the State Transition Diagram.
Box - state.
Arrow - transition.
Text above line - transition condition.
Text below line - transition action.
(No hierarchal form so doesn’t scale up well.)
Describe the State Transition Table.
Tabular form of STD.
Useful for:
- Checking completeness.
- Developing the state model.
(Lacks ready visualisation of STD but scales better. Still not hierarchal.)
Describe the Statechart.
Supports:
Clustering of states to form superstates.
Concurrency of states.
Describe the Sequence Diagram.
- Vertical dimension represents time.
- Horizontal dimension represents interactions between objects.
How do we analyse models?
Tabulation - can be used for checking completeness.
Walkthroughs & Scenarios - can be used for checking correctness.