Post

Ch 5-8: System Modeling & Design

System modeling, design principles, cohesion, and ER diagrams.

Ch 5-8: System Modeling & Design

Chapter 5–8 — System Modeling & Design

(Sommerville Ch. 5–8)

Cohesion and Its Influence on Maintenance

Cohesion measures how strongly related the responsibilities of a module are.

  • High cohesion (good): a module does one thing well → easy to understand, test, and maintain
  • Low cohesion (bad): a module has many unrelated responsibilities → changes in one part risk breaking another

High cohesion reduces maintenance effort because:

  • Changes are localized to a single module
  • Modules are independently understandable
  • Testing and reuse are simpler

ER Diagram Generation

Level 1 ER Diagram:

  • Identify entities (nouns from problem description)
  • Identify relationships (verbs between entities)
  • Draw entity-relationship diagram with cardinalities

Level 2 ER Diagram:

  • Add attributes to entities
  • Identify primary keys
  • Resolve many-to-many relationships with junction entities

Level 3 ER Diagram:

  • Normalize to 3NF
  • Identify foreign keys
  • Define all constraints
This post is licensed under CC BY 4.0 by the author.