Software
Engineering Lifecycle model
(waterfall diagram)
Use
Cases
(essential, expanded, etc.)
Conceptual
Models
(Attributes vs. Associations)
Sequence
Diagrams
Collaboration
Diagrams
Design
Class Diagrams
System
Contracts
(preconditions, semantics, postconditions)
Design
Patterns
(Expert, Creator, Controller, etc.
Coupling
and Cohesion
Visibility
Issues
(scope, public, private, etc.)
Navigability
(roles, stereotypes, cardinality, etc.)
Three
Tier Architectures
(development, deployment)
Layers
and Partitioning
Model-View
Separation
(Observer, Publish-Subscribe)
Verification
& Validation techniques
(unit, integration, regression, etc.)
Proofs
of Correctness
(inductive assertions)
Association
Classes
State
Diagrams
Capability
Maturity Model
(Chaos, Repeatable, Defined, Managed,
Optimizing)
PSP/TSP