Structured methods
tools
- structure chart
- process specification
- dataflow diagrams
- hierarchy diagram
- entity-relationship diagrams
- data dictionary
- state transition diagram
slide: Tools for a structured approach
Modeling reality -- vernacular
- requirements -- use cases
- analysis -- domain concepts
- design -- system architecture
- implementation -- language support
Design model -- system oriented
- provides a justification of the architecture
slide: Perspectives of modeling
Dimensions of modeling -- OMT
- object model -- decomposition into objects
- dynamic model -- intra-object state changes
- functional model -- object interaction (data-flow)
Model of control
- procedure-driven, event-driven, concurrent
slide: The OMT method
Model criteria -- formal approach
- unambiguous -- single meaning
- abstract -- no unnecessary detail
- consistent -- absence of conflict
slide: Coherent models -- criteria
Analysis -- Fusion
Fusion
- Object Model -- concepts and relations
- LifeCycle Model -- sequences of operations
- Operation Model -- semantics of system operations
Design -- data dictionary
data dictionary
- Object Interaction Graph -- functional dependencies
- Visibility Graphs -- communication structure
- Class Descriptions -- attributes and methods
- Inheritance Graphs -- subtype refinement
Implementation -- validation
validation
- System Lifecycle -- state machines
- Class Descriptions -- coding, performance
slide: The Fusion method
Objectory -- systematic process
- requirements -- use cases, domain object model, user interface
- analysis -- subsystems
- design, implementation -- block model, interaction diagrams
OMT -- few rules for discovering inconsistencies
- analysis -- object model, dynamic model, functional model
- design, implementation -- heuristics to implement analysis models
Booch -- descriptive
- diagrams
-- class, object, timing, state, module, process
CRC -- exploratory
- analysis, design -- class, responsibilities, collaborators
Formal methods
- operations -- pre- and post-conditions
slide: Comparison of methods (1)
Booch
- class diagram/template
- object diagram/template -- dynamics
- module diagram/template
- process diagram/template -- physical design
- state transition diagram
- timing diagram
>
slide: Diagrams for design