To construct basic structural, behavioral, and architectural models using the K6 (Create Level) in the Object-Oriented Software Engineering (OOSE) approach, we use UML diagrams to model a software systemβs components.
Below is a detailed breakdown showing how to create these models using appropriate UML diagrams for each category:
πΉ 1. Structural Model β "What" the system is made of
β¦ Purpose:
To define the static aspects of a system β the classes, their attributes, methods, and relationships.
β¦ UML Diagram Used:
Class Diagram
β Example: Library Management System (Structural View)
Classes:
-
Book
β Attributes: title, ISBN, author -
Member
β Attributes: name, memberID -
Librarian
β Attributes: employeeID, name -
Loan
β Attributes: issueDate, returnDate
Relationships:
-
A
Member
can borrow multipleBook
s (1..*
) -
Loan
connectsBook
andMember
-
Librarian
issuesLoan
s
This class diagram shows associations, multiplicities, and possibly inheritance (e.g.,
Staff
βLibrarian
).
πΉ 2. Behavioral Model β "How" the system behaves over time
β¦ Purpose:
To define dynamic behavior: interactions, events, workflows, and responses to stimuli.
β¦ UML Diagrams Used:
-
Use Case Diagram
-
Sequence Diagram
-
Activity Diagram
-
State Diagram
β A. Use Case Diagram
Actors:
-
Member
-
Librarian
Use Cases:
-
Search Book
-
Borrow Book
-
Return Book
-
Add New Book
Connect actors to use cases to define user interaction with the system.
β B. Sequence Diagram (e.g., Borrow Book process)
Objects:
-
Member
-
Librarian
-
Book
-
LoanSystem
Flow:
-
Member
requests to borrow a book. -
Librarian
checks book availability. -
If available, creates a
Loan
entry. -
Updates book status to "Issued".
β C. Activity Diagram (e.g., Returning a Book)
Flow:
-
Start β Scan Book β Check Due Date β Update Status β Generate Fine (if overdue) β End
β D. State Diagram (e.g., Book Object)
States:
-
Available β Issued β Reserved β Lost
Shows transitions triggered by actions like "Borrow", "Return", or "Reserve".
πΉ 3. Architectural Model β "Where" and "how" the system is deployed and structured
β¦ Purpose:
To define the high-level components, their organization, and deployment.
β¦ UML Diagrams Used:
-
Component Diagram
-
Deployment Diagram
β A. Component Diagram
Components:
-
UI Module
-
Business Logic Module
-
Database Module
Dependencies:
-
UI interacts with Business Logic
-
Business Logic interacts with Database
Helps visualize software modularization.
β B. Deployment Diagram
Nodes:
-
Client Device
(with UI) -
Application Server
(with business logic) -
Database Server
Artifacts:
-
Show software components installed on hardware nodes
β Summary Table:
Model Type Purpose Key UML Diagrams Structural Static design of system classes Class Diagram, Object Diagram Behavioral Dynamic behavior & interactions Use Case, Sequence, Activity, State Architectural High-level system structure Component Diagram, Deployment DiagramLet me know if you'd like me to generate sample diagrams or provide a case study example for implementation.