uml class diagram and packages ppt for dot net
DESCRIPTION
What is a Class Diagram? Essential Elements of a UML Class Diagram Packages and Class Diagrams Analysis Classes ApproachTRANSCRIPT
![Page 1: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/1.jpg)
UML CLASS DIAGRAMAND PACKAGES
By DileepCollaberos: “We Create
Professionals”
![Page 2: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/2.jpg)
AGENDA
What is a Class Diagram? Essential Elements of a UML Class Diagram Packages and Class Diagrams Analysis Classes Approach
Collab
eros: We C
reate Profession
als
![Page 3: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/3.jpg)
WHAT IS A CLASS DIAGRAM? The class diagram is the main building block in
object oriented modeling. They are being used both for
general conceptual modeling of the systematics of the application, and for detailed modeling translating the models into programming code.
The classes in a class diagram represent both the main objects and or interactions in the application and the objects to be
programmed.
Collab
eros: We C
reate Profession
als
![Page 4: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/4.jpg)
CLASSES In the class diagram these classes are represented with boxes
which contain three parts. The upper part holds the name of the class The middle part contains the attributes of the class The bottom part gives the methods or operations the class can take
or undertake
Collab
eros: We C
reate Profession
als
Window
size: Sizevisibility: boolean
display()hide()
Class Name
Attributes
Operations
![Page 5: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/5.jpg)
Collab
eros: We C
reate Profession
als
In the system design of a system, a number of classes are identified and grouped together in a class diagram which helps to determine the statical relations between those objects.
With detailed modeling, the classes of the conceptual design are often split in a number of subclasses.
![Page 6: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/6.jpg)
ESSENTIAL ELEMENTS OF A UML CLASS DIAGRAM
Class Diagram Class Attributes Operations
Relationships Associations Generalization Dependency Realization
Constraint Rules and Notes
Collab
eros: We C
reate Profession
als
![Page 7: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/7.jpg)
ASSOCIATIONS
A semantic relationship between two or more classes that specifies connections among their instances.
A structural relationship, specifying that objects of one class are connected to objects of a second (possibly the same) class.
Example: “An Employee works for a Company”
Collab
eros: We C
reate Profession
als
CompanyDepartmentEmployee
![Page 8: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/8.jpg)
ASSOCIATIONS (CONT.)
An association between two classes indicates that objects at one end of an association “recognize” objects at the other end and may send messages to them. This property will help us discover less trivial
associations using interaction diagrams.
Collab
eros: We C
reate Profession
als
![Page 9: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/9.jpg)
ASSOCIATIONS (CONT.)
Collab
eros: We C
reate Profession
als
StaffMember Student1..* *instructs
instructor
Association name
Role name
MultiplicityNavigable
(uni-directional) association
Courses
pre - requisites
0..3Reflexive
association
Role
*
![Page 10: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/10.jpg)
ASSOCIATIONS (CONT.) Multiplicity
The number of instances of the class, next to which the multiplicity expression appears, that are referenced by a single instance of the class that is at the other end of the association path.
Indicates whether or not an association is mandatory.
Provides a lower and upper bound on the number of instances.
Collab
eros: We C
reate Profession
als
![Page 11: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/11.jpg)
ASSOCIATIONS (CONT.)
Multiplicity Indicators
Collaberos: W
e Create P
rofessionals
Exactly one 1
Zero or more (unlimited) * (0..*)
One or more 1..*
Zero or one (optional association) 0..1
Specified range 2..4
Multiple, disjoint ranges 2, 4..6, 8
![Page 12: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/12.jpg)
AGGREGATION
A special form of association that models a whole-part relationship between an aggregate (the whole) and its parts. Models a “is a part-part of” relationship.
Collaberos: W
e Create P
rofessionals
Whole Part
Car Door House1..*2..*
![Page 13: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/13.jpg)
COMPOSITION
A strong form of aggregation The whole is the sole owner of its part.
The part object may belong to only one whole Multiplicity on the whole side must be zero or
one. The life time of the part is dependent upon the
whole. The composite must manage the creation and
destruction of its parts.
Collaberos: W
e Create P
rofessionals
Circle Point
3..*
1
PolygonPoint
Circle
![Page 14: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/14.jpg)
GENERALIZATION Indicates that objects of the specialized class
(subclass) are substitutable for objects of the generalized class (super-class). “is kind of” relationship.
Collaberos: W
e Create P
rofessionals
Shape{abstract}
Circle
Super Class
Sub Class
An abstract class
Generalization relationship
{abstract} is a tagged value that indicates that the class is abstract. The name of an abstract class should be italicized
![Page 15: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/15.jpg)
DEPENDENCY Dependency is a weaker form of relationship which
indicates that one class depends on another because it uses it at
some point of time. Dependency exists if a class is a parameter variable or
local variable of a method of another class.
Collaberos: We Create Professionals
![Page 16: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/16.jpg)
REALIZATION
A realization relationship indicates that one class implements a behavior specified by another class (an interface or protocol).
An interface can be realized by many classes. A class may realize many interfaces.
Collaberos: W
e Create P
rofessionals
LinkedList<<interface>>
List LinkedList List
![Page 17: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/17.jpg)
CONSTRAINT RULES AND NOTESConstraints and notes annotate
among other things associations, attributes, operations and classes.
Constraints are semantic restrictions noted as Boolean expressions.UML offers many pre-defined constraints.
Collaberos: W
e Create P
rofessionals
id: long { value > 0 }
CustomerOrder*1
{ total < $50 }may be canceled
Constraint Note
![Page 18: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/18.jpg)
TVRS EXAMPLE
Collaberos: W
e Create P
rofessionals
id : longname : Stringrank : int
Policeman
<<abstract>>
TrafficPoliceman id : longdescription : String
TrafficReport
id : longdescription : String
Violation
name : Stringid : long
Offender
1..* 1
reports of
1..*
issues1 *
occuredAt : Date
![Page 19: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/19.jpg)
UML PACKAGES A package is a general purpose grouping
mechanism.Can be used to group any UML element (e.g.
use case, actors, classes, components and other packages.
Commonly used for specifying the logical distribution of classes.
A package does not necessarily translate into a physical sub-system.
Collaberos: W
e Create P
rofessionals
Name
![Page 20: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/20.jpg)
LOGICAL DISTRIBUTION OF CLASSES
Emphasize the logical structure of the system (High level view) Higher level of abstraction over classes. Aids in administration and coordination of the
development process. Contributes to the scalability of the system.
Logical distribution of classes is inferred from the logical architecture of the system.
Collaberos: W
e Create P
rofessionals
![Page 21: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/21.jpg)
PACKAGES AND CLASS DIAGRAMS (CONT.)
Add package information to class diagrams
Collaberos: W
e Create P
rofessionals
A
DE
F
G
C
B
![Page 22: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/22.jpg)
PACKAGES AND CLASS DIAGRAMS (CONT.)
Add package information to class diagrams
Collaberos: W
e Create P
rofessionals
a.A
b.b.Db.b.E
b.a.F
b.a.G
a.C
a.B
b.a
b.b
ab
![Page 23: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/23.jpg)
ANALYSIS CLASSES
A technique for finding analysis classes which uses three different perspectives of the system:
The boundary between the system and its actors The information the system uses The control logic of the system
Collaberos: W
e Create P
rofessionals
![Page 24: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/24.jpg)
BOUNDARY CLASSES Models the interaction between the system’s surroundings and its inner workings User interface classes
Concentrate on what information is presented to the user Don’t concentrate on user interface details Example:
ReportDetailsForm ConfirmationDialog
System / Device interface classes Concentrate on what protocols must be defined. Don’t
concentrate on how the protocols are implemented
Collaberos: W
e Create P
rofessionals
![Page 25: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/25.jpg)
ENTITY CLASSES
Models the key concepts of the system Usually models information that is persistent Contains the logic that solves the system
problem Can be used in multiple behaviors Example: Violation, Report, Offender.
Collaberos: W
e Create P
rofessionals
![Page 26: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/26.jpg)
CONTROL CLASSES Controls and coordinates the behavior of the system
Delegates the work to other classes A control class should tell other classes to do
something and should never do anything except for directing
Control classes decouple boundary and entity classes
Example: EditReportController AddViolationController
Collaberos: W
e Create P
rofessionals
![Page 27: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/27.jpg)
TVRS EXAMPLE
Collaberos: W
e Create P
rofessionals
Violation
EditReportController<<control>>
Traf f icReport
Of f ender Traf f icPoliceman
Clerk
ReportDetailsForm<<boundary >>
Conf irmationDialog<<boundary >>
PolicemanDBProxy<<boundary >>
Of f endersDBProxy<<boundary >>
Of f endersDB
PolicemenDB
1
1 1
1
1
![Page 28: Uml class diagram and packages ppt for dot net](https://reader033.vdocuments.us/reader033/viewer/2022061209/548d96a1b479597e6a8b4a36/html5/thumbnails/28.jpg)
THANK YOU