Please enable JavaScript.
Coggle requires JavaScript to display documents.
Structural Modeling & Design - Coggle Diagram
Structural Modeling & Design
Structural Modeling
(Conceptual Level)
Structural Models
CRC Cards (
Class-Responsibility-Collaboration
Card)
Responsibilities
Knowing
Doing
Collaborations
class responsibilities
&
client–server–contract collaborations
:arrow_right: identify the classes
Elements
Front
Class Name
ID
Type
Description
Associated UC
Responsibilities
Collaborators
Back
Atributtes
Relationships
Generalization (a-kind-of)
Aggregation (has-parts)
Other Associations
Class Diagrams
Elements
Relationships
Association
Roles
Multiplicity
1
0..*
1..*
0..1
Specific range
n..m
Multiple, disjoint ranges
a..b,c,d
Association Classes
Aggregation
Composition
Generalizations / Inheritance
(complete, disjoint)
(incomplete, disjoint)
(complete, overlapping)
(incomplete, overlapping)
Class
Class name
Attributes
Operations
Simplifying
Object
Object diagram
Instantiation of all or part of a class diagram
Create
Top-down Analysis
1) Classes
2) Associations
3) Atributtes
Bottom-up Analysis
1) List required queries and inputs
Needed classes :questioWhat does the IT system need to deliver & accept :question:
2) Formulate queries and inputs
How exactly should the display
look :question:
3) Conduct information analysis
Which classes, associations, and attributes do we need :question:
4) Consolidate class diagrams
How does everything fit together :question:
5) Verify the class diagrams
:check: :question:
Static structure diagram
Class & Method Design
(Design Level)
Design Criteria
Coupling
How
interdependent / interrelated
the modules (classes, objects & methods) are in a system :question:
How
single-minded
a module is within a system :question:
Cohesion
Object Design Activities
Adding Specifications
Public Attribute/Operation
Private
Protected
Identifying opportunities for reuse
Design patterns, frameworks, libraries, & components
Restructuring the design
Mapping the problem-domain classes to an implementation language
1) Class :arrow_right: Table
2) Single value attribute :arrow_right: Column
3) Instance :arrow_right: Record
7) Association Relationships 1-n
6) Association Relationships n-n
8) Superclass/Subclass Relationships
Superclass & Subclass
Subclass
Superclass
Optimizing the design
Storage Efficiency
Data Redundancy
Normal Forms
Normalization
Data Access Speed
Indexing
Denormalization
Estimating Data Storage Size
Constraints & Contracts
CRC Cards
Method Specification
General Information
Method name
Class name
ID
Programming Language
Events
Triggers/Events
Arguments received + Data type
Message Passing
Messages sent & Arguments passed + ClassName.MethodName
Arguments returned + Data type
Algorithm Specification