Uml class Diagram

26
© SERG Class Diagram(UML) UML Class Diagram Presented By : Kajal Waghmare Roll No : 95

Transcript of Uml class Diagram

Page 1: Uml class Diagram

© SERG Class Diagram(UML)

UML

Class Diagram

Presented By : Kajal Waghmare

Roll No : 95

Page 2: Uml class Diagram

© SERG

What is a Class Diagram?

Class Diagram (UML)

• A Class Diagram is a diagram describing the structure of a system.

• It consists the :• Classes• Attributes• Operations (or methods),• Relationships among the classes.

Page 3: Uml class Diagram

© SERG Class Diagram(UML)

Classes

ClassName

attributes

operations

A class is a description of a set of objects that share the same attributes,operations, relationships, and semantics.

Graphically, a class is rendered as a rectangle, usually including its name,attributes, and operations in separate,designated compartments.

Page 4: Uml class Diagram

© SERGClass Diagram (UML)

Class Names

ClassName

attributes

operations

The name of the class is the only required tag in the graphical representation of a class. It always appears in the top-most compartment.

Page 5: Uml class Diagram

© SERGClass Diagram (UML)

Class Attributes

Person

name : Stringaddress : Addressbirthdate : Datessn : Id

An attribute is a named property of a class that describes the object being modeled.In the class diagram, attributes appear in the second compartment just below the name-compartment.

Page 6: Uml class Diagram

© SERGClass Diagram (UML)

Class Attributes (Cont’d)

Person

name : Stringaddress : Addressbirthdate : Date/ age : Datessn : Id

Attributes are usually listed in the form:

attributeName : Type

A derived attribute is one that can becomputed from other attributes, butdoesn’t actually exist. For example,a Person’s age can be computed from his birth date. A derived attribute is designated by a preceding ‘/’ as in:

/ age : Date

Page 7: Uml class Diagram

© SERGClass Diagram (UML)

Class Attributes (Cont’d)

Person

+ name : String# address : Address# birthdate : Date/ age : Date- ssn : Id

Attributes can be:+ public# protected- private/ derived

Page 8: Uml class Diagram

© SERGClass Diagram (UML)

Class Operations

Person

name : Stringaddress : Addressbirthdate : Datessn : Id

eatsleepworkplay

Operations describe the class behavior and appear in the third compartment.

Page 9: Uml class Diagram

© SERGClass Diagram (UML)

Class Responsibilities

A class may also include its responsibilities in a class diagram.

A responsibility is a contract or obligation of a class to perform a particular service.

SmokeAlarm

Responsibilities

-- sound alert and notify guard station when smoke is detected.

-- indicate battery state

Page 10: Uml class Diagram

© SERGClass Diagram (UML)

Relationships

In UML, object interconnections (logical or physical), are modeled as relationships.

There are three kinds of relationships in UML:

• Dependencies

• Generalizations

• Associations

Page 11: Uml class Diagram

© SERGClass Diagram (UML)

Dependency Relationships

CourseSchedule

add(c : Course)remove(c : Course)

Course

A dependency indicates a semantic relationship between two ormore elements. The dependency from CourseSchedule to Course exists because Course is used in both the add and remove operations of CourseSchedule.

Page 12: Uml class Diagram

© SERGClass Diagram (UML)

Generalization Relationships

PersonA generalization connects a subclassto its superclass. It denotes an inheritance of attributes and behaviorfrom the superclass to the subclass andindicates a specialization in the subclassof the more general superclass.

Student

Page 13: Uml class Diagram

© SERGClass Diagram (UML)

Generalization Relationships (Cont’d)

Student

UML permits a class to inherit from multiple superclasses, although some programming languages (e.g., Java) do not permit multiple inheritance.

TeachingAssistant

Employee

Page 14: Uml class Diagram

© SERGClass Diagram (UML)

Association Relationships

If two classes in a model need to communicate with each other, there must be link between them.

An association denotes that link.

StudentInstructor instructs

Here , an association is instructs.

Page 15: Uml class Diagram

© SERGClass Diagram (UML)

Association Relationships(Cont’d)

We can indicate the multiplicity of an association by adding multiplicity adornments to the line denoting the association.

The example indicates that a Student has one or more Instructors:

InstructorStudent1..*

Page 16: Uml class Diagram

© SERGClass Diagram (UML)

Association Relationships (Cont’d)

The example indicates that every Instructor has one or more Students:

InstructorStudent1..*

Page 17: Uml class Diagram

© SERGClass Diagram (UML)

Interfaces

An interface is a named set of operations that specifies the behavior of objects without showing their inner structure. It can be rendered in the model by a one- or two-compartment rectangle, with the stereotype <<interface>> above the interface name.

<<interface>>ControlPanel

Page 18: Uml class Diagram

© SERGClass Diagram (UML)

Enumeration

<<enumeration>>Boolean

falsetrue

An enumeration is a user-defined data type that consists of a name and an ordered list of enumeration literals.

Page 19: Uml class Diagram

© SERGClass Diagram (UML)

Packages

Compiler

A package is a container-like element for organizing other elements into groups.

A package can contain classes and other packages and diagrams.

Packages can be used to provide controlled access between classes in different packages.

Page 20: Uml class Diagram

© SERG

Example : Ticket Sale

Software Design (UML)

Page 21: Uml class Diagram

© SERG

Quiz 1

• An __________is a user-defined data type that consists of a name and an ordered list of enumeration literals.

Options :

1. Generalization

2. Enumeration

3. Association

4. Dependency

Class Diagram (UML)

Page 22: Uml class Diagram

© SERG

Quiz 2

• Answer of Quiz 1 : 2. Enumeration

• We can indicate the ___________of an association by adding ___________ ___________ to the line denoting the association.

Options:

1. Association , Association adornments

2. Multiplicity , Association adornments

3. Association , Multiplicity adornment

4. Multiplicity , Multiplicity adornments

Class Diagram (UML)

Page 23: Uml class Diagram

© SERG

Quiz 3• Answer of Quiz 2 :4. Multiplicity , Multiplicity adornments

• _______________ 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.

Options:

1. Interfaces

2. Dependency

3. Generalization

4. Packages

Class Diagram (UML)

Page 24: Uml class Diagram

© SERG

Quiz 4• Answer of Quiz 3 : 3. Generalization

• ____________ can be rendered in the model by a one- or two-compartment rectangle, with the stereotype << >> above the name.

Options:

1. Interface

2. Packages

3. Enumeration

4. None of these

Class Diagram (UML)

Page 25: Uml class Diagram

© SERG

Quiz 5• Answer of Quiz 4 : All of above

• Generalization indicates a ___________in the subclass of the more general super class.

Options:

1. Association

2. Specialization

3. Relationship

4. Link

Class Diagram (UML)

Page 26: Uml class Diagram

© SERG

• Answer of Quiz 5 : 2. Specialization

Class Diagram (UML)