You are on page 1of 11

Models, Views, and Diagrams

A model is a complete
description of a system
from a particular
State
perspective State
Diagrams
Class
Diagrams
Use Case Diagrams
Use Case
Diagrams State
Use Case Use Case
Diagrams State
Diagrams
Use Case Diagrams Object
Diagrams
Diagrams
Sequence Diagrams
Diagrams
Diagrams

Scenario State
Scenario
Diagrams State
Diagrams
Collaboration
Diagrams Models Component
Diagrams
Diagrams Diagrams

Scenario Component
Scenario
Diagrams
Component
Diagrams
Deployment
Statechart
Diagrams Diagrams
Diagrams Diagrams
Activity
Diagrams
Use Case Diagram
w  Captures system functionality as seen by users
w  Visualize the interaction of the system with the outside
world

Request Course Roster

Student Professor

Register for Courses

Billing System Maintain Course Information

Registrar
Use Case Diagram
w  Built in early stages of development
w  Purpose
§  Specify the context of a system
§  Capture the requirements of a system
§  Validate a system’s architecture
§  Drive implementation and generate test cases
w  Developed by analysts and domain experts
Class Diagram
w  Captures the vocabulary of a system
w  Shows the structure of your software

ScheduleAlgorithm
RegistrationForm

0..*
1 RegistrationManager
addStudent(Course, Student)
1 Course
name
RegistrationUser 0..* numberCredits
name Student
open()
addStudent(StudentInfo)
major
1
3..10

Professor 1..*
4 CourseOffering
tenureStatus location
1
0..4
open()
addStudent(Student)
The Physical World
w  Component diagrams illustrate the organization and
dependencies among software components
w  They capture the physical structure of the
implementation

Register.exe
Billing.exe

Billing
System

People.dll
User
Course.dll
Course
Deploying the System
w  The deployment diagram visualizes the distribution of
components across the enterprise
w  They capture the topology of a system’s hardware

Registration Database

Main
Library Building

Dorm
Sequence Diagram
w  A sequence diagram shows step-by-step what has to
happen to accomplish a piece of functionality provided
by the system

: Student registration registration math 101 math 101


form manager section 1

1: fill in info

2: submit

3: add Joe to Math 101


4: add Joe
5: are you open?

6: add Joe
Collaboration Diagram
w  A collaboration diagram displays object interactions
organized around objects and their links to one another

course form :
1: set course info CourseForm
2: process

3: add course
: Registrar

theManager :
aCourse :
CurriculumManager
Course

4: new course
The State of an Object
w  A state transition diagram shows the lifecycle of a single
class

Add student[ count < 10 ]


Add Student /
Initialization Set count = 0
Open
do: Initialize course entry: Register student
exit: Increment count

Cancel

Cancel [ count = 10 ]

Canceled
do: Notify registered Closed
students Cancel
do: Finalize course
Activity Diagram
Create
curriculum
Select courses
to teach
Create
catalog

Place catalog Mail catalog


in bookstore to students

Open
registration
[ Registration time period expired ]

Close
registration
Swimlanes
Registrar Professor
Create
curriculum

Select courses
Create to teach
catalog

Place catalog Mail catalog


in bookstore to students

Open
registration
[ Registration time period expired ]

Close
registration

You might also like