Software Scope Documnet
Software Scope Documnet
Course Introduction
Isma ul Hassan
Email:[email protected]
Fall 2017
Textbooks
• Software Essentials: Design and Construction, Dingle A. (2014) CRC
Press.
Patient
Classes
A class is a description of a set of
ClassName objects that share the same attributes,
operations, relationships, and semantics.
attributes
Graphically, a class is rendered as a
rectangle, usually including its name,
operations attributes, and operations in separate,
designated compartments.
Class Names
operations
Class Attributes
Person
• dependencies
• generalizations
• associations
Generalization Relationships
Person
A generalization connects a subclass
to its superclass. It denotes an
inheritance of attributes and behavior
from the superclass to the subclass and
indicates a specialization in the subclass
of the more general superclass.
Student
Generalization Relationships (Cont’d)
UML permits a class to inherit from multiple superclasses,
although some programming languages (e.g., Java) do not permit
multiple inheritance.
Student Employee
TeachingAssistant
Association Relationships
If two classes in a model need to communicate with each other,
there must be link between them.
Student Instructor
Association Relationships (Cont’d)
We can indicate the multiplicity of an association by adding
multiplicity adornments to the line denoting the association.
Student Instructor
1..*
Association Relationships (Cont’d)
Student Instructor
1..*
Association Relationships (Cont’d)
We can also indicate the behavior of an object in an association
(i.e., the role of an object) using rolenames.
membership
Student Team
1..* 1..*
Association Relationships (Cont’d)
We can specify dual associations.
member of
1..* 1..*
Student Team
1 president of 1..*
Association Relationships (Cont’d)
We can model objects that contain other objects by way of
special associations called aggregations and compositions.
Engine
Car
Transmission
Association Relationships (Cont’d)
A composition indicates a strong ownership and coincident
lifetime of parts by the whole (i.e., they live and die as a
whole). Compositions are denoted by a filled-diamond
adornment on the association.
Scrollbar
1 1
Window Titlebar
1 1
Menu
1 1 .. *
• Actors are parties outside the system that interact with the system
• An actor may be a class of users or other systems
Behavioral Modeling
Use Case Diagram
Behavioral Modeling
Use Case Diagram
• Include relationship: use case fragment that is duplicated in multiple
use cases
• On the other hand, in extend use case a Concrete Use Case can be
executed