Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Introduction
to UML
Presented By: Arta Iftikhar
Agenda
UML Modeling 2022 2
Part 1
• What is UML & Why is it
necessary?
• How to use UML diagrams to
design software system?
• Types of UML Diagrams
• Understanding Object-Orientation
Acknowledgements
Material for the Lectures are derived from a
variety of sources, including:
• Joseph, Schmuller. "Sams Teach Yourself
UML in 24 Hours."
• Object-Oriented and Classical Software
Engineering, Sixth Edition, WCB/McGraw-Hill,
2005 Stephen R. Schach
• UML resource page http://www.uml.org/
Presentation title 20XX 3
Introduction
Presentation title
What is UML?
• UML stands for “Unified Modeling
Language”
• One of the most interesting and
practical tools in the field of system
development
• Simplifies the complex process of
software design
2022 4
Business Process
Places Order
Item
Ships the Item
A picture is worth a thousand words!
via
Fulfill Order
Customer
Sales
Representative
Continued…
Presentation title 2022 5
What is UML?
• It is an industry-standard graphical language for specifying,
visualizing, producing, and documenting software system
artifacts.
• The UML use graphical notations to express Object-Oriented
analysis and design of the project.
• Enable system builders to create blueprints of the system that
are easy to understand and provide a mechanism to
communicate and share these visions with others
Why UML?
Presentation title 2022 6
• Use graphical notation: more clearly than natural language
(imprecise) and code (too detailed).
• Help acquire an overall view of a system.
• UML is not dependent on any one language or technology.
History
Presentation title
UML or Unified Modeling Language
comes from Rumbaugh, Booch, and
Jacobson (the three amigos) who
combined efforts to standardize on one
modeling language
20XX 7
Booch, Jacobson, Rumbaugh
Versions of UML
UML Modeling 2022 8
1997
Developed in the
mid-1990’s and
standardized in
1997 (UML 1.1)
June 2015
The current
version of
the Unified Modeling
Language
is UML 2.5, released
in June 2015.
1997: UML 1.0, 1.1
1996: UML 0.9 & 0.91
1995: Unified Method 0.8
Other methods
Booch ‘91
Booch ‘93 OMT - 2
OMT - 1
Year Version
2003: UML 2.0
2001: UML 1.4
1999: UML 1.3
HOW TO USE UML DIAGRAMS TO
DESIGN SOFTWARE SYSTEM?
2022 UML MODELING 9
• The purpose of diagrams is to present
multiple views of the system, called Model.
• One of the most important things to keep in
mind is that UML model describes what a
system is supposed to do and doesn’t tell how
to implement the system.
Types of UML Diagrams we’ll cover
Use Case Diagram
Class Diagram
Activity Diagram
Sequence Diagram
State Diagram
UML Modeling 2022 10
Presentation title 20XX 11
Recap
Presentation title 20XX 12
Understanding Object-Orientation
The object-oriented (OO) paradigm is a development strategy
based on the concept that systems should be built from a
collection of reusable components called objects
Object- An object is an instance of a class (category).
• It has a structure. That is, it has attributes (Properties) and
behavior.
• An object’s behavior consist of operations it carries out.
• These attributes and operations taken together are called
Features.
Presentation title 20XX 13
Understanding Object-Orientation
In the world of object orientation, a class serves a
purpose.
A class is a template for making objects, sort of like
a cookie cutter, that you use to stamp out cookies.
Presentation title 20XX 14
Objects everywhere
Presentation title 20XX 15
Examples of classes in a Student
Records Management System
Presentation title 20XX 16
Presentation title 20XX 17
Example
Let’s take an example of Washing
machine. Washing machine class has the
attributes brandName, modelName,
serialNumber and capacity, along with
operations acceptClothes(),
acceptDetergant(), turnOn(), and turnoff().
Presentation title 20XX 18
The washingMachine class is a template for creating new instances
of washing machines.
Object Oriented Concepts
• abstraction
• inheritance
• polymorphism
• encapsulation
• message sending
• association
• aggregation
UML Modeling 2022 19
Abstraction
• Abstraction is the concept of object-oriented programming that means to filter out
an object attributes and operations until just the ones you need are left.
• Different types of problem require different amounts of information, even if these
problems are in the same general area.
• Example
UML Modeling 2022 20
Example
Presentation title 20XX 21
Inheritance
• Inheritance is the procedure in which one class
inherits the attributes and methods of another
class.
• The class whose properties and methods are
inherited is known as the Parent class.
• And the class that inherits the properties from
the parent class is the Child class.
• Appliance, for example is subclass of
houseHoldItems Class. Furniture is another
subclass of this Class. As shown in diagram.
UML Modeling 2022 22
Examples
Presentation title 20XX 23
Polymorphism
• In Polymorphism, An object basically can take multiple forms in different
instances.
• For example, you can open a door, you can open a window, or you can
open a newspaper, bank account, or a conversation. In each case, you are
performing a different operation. This is called polymorphism.
UML Modeling 2022 24
Encapsulation
• Encapsulation is an Object-Oriented Programming concept that binds
together the data and functions that manipulate the data, and that keeps both
safe from outside interference and misuse. Data encapsulation led to the
important OOP concept of data hiding.
• Encapsulation tells us that we should know just an interface of class to be
able to use it. We don't have to know anything about internals of class to be
able to use it.
UML Modeling 2022 25
• It “shows” only essential attributes and “hides” unnecessary information.
The main purpose of encapsulation is hiding the unnecessary details from
the users.
• For example, when we are driving a car, we are only concerned about
driving the car like start/stop the car, accelerate/ break, etc. We are not
concerned about how the actual start/stop mechanism or accelerate/brake
process works internally. We are just not interested in those details.
Presentation title 20XX 26
Example
Presentation title 20XX 27
Message Sending & Association
• In a system, Objects work together. They do this by
sending messages to each other.
• One object sends a message- a request to perform
operation to another object, and receiving object perform
the operation.
• For example, when you turn on TV, the remote-object
sends message to the tv-object to turn itself on.
• And in object-oriented terms, you are in association with
your TV.
• A class can associate with more than one other class. For
example, a person can ride in a car, or a person can also
ride in a bus.
UML Modeling 2022 28
Figure: Association
Aggregation
• An aggregate object is one which contains other objects.
• For example, an Airplane class would contain Engine, Wing, Tail, Crew objects.
Sometimes the class aggregation corresponds to physical containment in the
model (like the airplane). But sometimes it is more abstract (e.g., Club and
Members).
UML Modeling 2022 29
Figure: Association
Example
Presentation title 20XX 30
Recap
Presentation title 20XX 31
Working with Object Orientation
The structure, or building blocks, of object-oriented programming include the following:
• Classes are user-defined data types that act as the blueprint for individual objects, attributes
and methods.
• Objects are instances of a class created with specifically defined data. Objects can
correspond to real-world objects or an abstract entity.
• Methods are functions that are defined inside a class that describe the behaviors of an object.
• Attributes are defined in the class template and represent the state of an object. Objects will
have data stored in the attributes field.
UML Modeling 2022 32
Class Diagram- Structural
Class diagrams are used when developing an object-oriented system model
to show the classes in a system and the associations between these classes.
An object class can be thought of as a general definition of one kind of system
object.
An association is a link between classes that indicates that there is some
relationship between these classes.
When you are developing models during the early stages of the software
engineering process, objects represent something in the real world, such as a
patient, a prescription, doctor, etc.
Presentation title 20XX 33
Visualizing a Class
• Class name
• Attributes
• Operations
• Responsibilities
• Constraints
• Notes
• objects
Presentation title 20XX 34
Class in MHC-PMS
Presentation title 20XX 35
Classes-What they do and How to
Find Them
Presentation title 20XX 36
Presentation title 20XX 37
Presentation title 20XX 38
Sample Solution
Presentation title 20XX 39
Presentation title 20XX 40
Object Diagram
Presentation title 20XX 41
Stereotypes
• Enable you to create new UML elements by basing them on existing
elements.
• Represent it as a name enclosed in two pairs of angle brackets called
gullimets.
• example
Presentation title 20XX 42
Notes to UML elements
• Add extra information
Presentation title 20XX 43
Recap
Presentation title 20XX 44
Thank You

More Related Content

Similar to ITSE_10(UML,OO).pptx

Class diagram
Class diagramClass diagram
Class diagram
LakshmanaD2
 
Module3 - Object Oriented Analysis & Functional Model.pdf
Module3 - Object Oriented Analysis & Functional Model.pdfModule3 - Object Oriented Analysis & Functional Model.pdf
Module3 - Object Oriented Analysis & Functional Model.pdf
Gerard Alba
 
UML and Case study
UML and Case study UML and Case study
UML and Case study
Mihika-QA
 
UNIT IV DESIGN PATTERNS.pptx
UNIT IV DESIGN PATTERNS.pptxUNIT IV DESIGN PATTERNS.pptx
UNIT IV DESIGN PATTERNS.pptx
anguraju1
 
Object-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptxObject-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptx
XanGwaps
 
Unit-1 OOMD- Inthhro- class modeling.ppt
Unit-1 OOMD- Inthhro- class modeling.pptUnit-1 OOMD- Inthhro- class modeling.ppt
Unit-1 OOMD- Inthhro- class modeling.ppt
ChiragSuresh
 
Object analysis and design
Object analysis and designObject analysis and design
Object analysis and design
Anand Grewal
 
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
Jordi Cabot
 
unit-1modellingconceptsclassmodeling-140929182538-phpapp01.pdf
unit-1modellingconceptsclassmodeling-140929182538-phpapp01.pdfunit-1modellingconceptsclassmodeling-140929182538-phpapp01.pdf
unit-1modellingconceptsclassmodeling-140929182538-phpapp01.pdf
RojaPogul1
 
2 uml
2 uml2 uml
Slideshow on the notes of software engineering
Slideshow on the notes of software engineeringSlideshow on the notes of software engineering
Slideshow on the notes of software engineering
erickbaldskie
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
GiO Friginal
 
OOAD UNIT I UML DIAGRAMS
OOAD UNIT I UML DIAGRAMSOOAD UNIT I UML DIAGRAMS
OOAD UNIT I UML DIAGRAMS
Mikel Raj
 
Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)
riarana10
 
Unit IV Software Engineering
Unit IV Software EngineeringUnit IV Software Engineering
Unit IV Software Engineering
Nandhini S
 
ppt_ooad.pdf
ppt_ooad.pdfppt_ooad.pdf
ppt_ooad.pdf
anuj962198
 
CS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and AnswerCS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and Answer
Gobinath Subramaniam
 
1. introduction to uml
1. introduction to uml1. introduction to uml
1. introduction to uml
PRABU M
 
Object-Oriented Analysis and Design
Object-Oriented Analysis and DesignObject-Oriented Analysis and Design
Object-Oriented Analysis and Design
RiazAhmad786
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
sabin kafle
 

Similar to ITSE_10(UML,OO).pptx (20)

Class diagram
Class diagramClass diagram
Class diagram
 
Module3 - Object Oriented Analysis & Functional Model.pdf
Module3 - Object Oriented Analysis & Functional Model.pdfModule3 - Object Oriented Analysis & Functional Model.pdf
Module3 - Object Oriented Analysis & Functional Model.pdf
 
UML and Case study
UML and Case study UML and Case study
UML and Case study
 
UNIT IV DESIGN PATTERNS.pptx
UNIT IV DESIGN PATTERNS.pptxUNIT IV DESIGN PATTERNS.pptx
UNIT IV DESIGN PATTERNS.pptx
 
Object-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptxObject-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptx
 
Unit-1 OOMD- Inthhro- class modeling.ppt
Unit-1 OOMD- Inthhro- class modeling.pptUnit-1 OOMD- Inthhro- class modeling.ppt
Unit-1 OOMD- Inthhro- class modeling.ppt
 
Object analysis and design
Object analysis and designObject analysis and design
Object analysis and design
 
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
 
unit-1modellingconceptsclassmodeling-140929182538-phpapp01.pdf
unit-1modellingconceptsclassmodeling-140929182538-phpapp01.pdfunit-1modellingconceptsclassmodeling-140929182538-phpapp01.pdf
unit-1modellingconceptsclassmodeling-140929182538-phpapp01.pdf
 
2 uml
2 uml2 uml
2 uml
 
Slideshow on the notes of software engineering
Slideshow on the notes of software engineeringSlideshow on the notes of software engineering
Slideshow on the notes of software engineering
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
OOAD UNIT I UML DIAGRAMS
OOAD UNIT I UML DIAGRAMSOOAD UNIT I UML DIAGRAMS
OOAD UNIT I UML DIAGRAMS
 
Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)
 
Unit IV Software Engineering
Unit IV Software EngineeringUnit IV Software Engineering
Unit IV Software Engineering
 
ppt_ooad.pdf
ppt_ooad.pdfppt_ooad.pdf
ppt_ooad.pdf
 
CS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and AnswerCS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and Answer
 
1. introduction to uml
1. introduction to uml1. introduction to uml
1. introduction to uml
 
Object-Oriented Analysis and Design
Object-Oriented Analysis and DesignObject-Oriented Analysis and Design
Object-Oriented Analysis and Design
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
 

Recently uploaded

UNIT-1-INTRODUCTION- MECHATRONICS-ENGGINERING
UNIT-1-INTRODUCTION- MECHATRONICS-ENGGINERINGUNIT-1-INTRODUCTION- MECHATRONICS-ENGGINERING
UNIT-1-INTRODUCTION- MECHATRONICS-ENGGINERING
Chandra Kumar S
 
Computer Graphics - Cartesian Coordinate System.pdf
Computer Graphics - Cartesian Coordinate System.pdfComputer Graphics - Cartesian Coordinate System.pdf
Computer Graphics - Cartesian Coordinate System.pdf
Amol Gaikwad
 
一比一原版美国特拉华大学毕业证(ud毕业证书)如何办理
一比一原版美国特拉华大学毕业证(ud毕业证书)如何办理一比一原版美国特拉华大学毕业证(ud毕业证书)如何办理
一比一原版美国特拉华大学毕业证(ud毕业证书)如何办理
r07z26xt
 
A Case of Unrecognized Peripartum Cardiomyopathy Which Was Noticed During Eme...
A Case of Unrecognized Peripartum Cardiomyopathy Which Was Noticed During Eme...A Case of Unrecognized Peripartum Cardiomyopathy Which Was Noticed During Eme...
A Case of Unrecognized Peripartum Cardiomyopathy Which Was Noticed During Eme...
CrimsonPublishers-SBB
 
Electrical Engineering, DC - AC Machines
Electrical Engineering, DC - AC MachinesElectrical Engineering, DC - AC Machines
Electrical Engineering, DC - AC Machines
Jason J Pulikkottil
 
Procurement and Contract Strategy in Malaysia
Procurement and Contract Strategy in MalaysiaProcurement and Contract Strategy in Malaysia
Procurement and Contract Strategy in Malaysia
SingLingLim1
 
一比一原版(uofs毕业证书)萨省大学毕业证如何办理
一比一原版(uofs毕业证书)萨省大学毕业证如何办理一比一原版(uofs毕业证书)萨省大学毕业证如何办理
一比一原版(uofs毕业证书)萨省大学毕业证如何办理
r07z26xt
 
buy a fake University of London diploma supplement
buy a fake University of London diploma supplementbuy a fake University of London diploma supplement
buy a fake University of London diploma supplement
GlethDanold
 
2300/2800 series Perkins diesel engine.pdf
2300/2800 series Perkins diesel engine.pdf2300/2800 series Perkins diesel engine.pdf
2300/2800 series Perkins diesel engine.pdf
haytham majed
 
Future Networking v Energy Limits ICTON 2024 Bari Italy
Future Networking v Energy Limits ICTON 2024 Bari ItalyFuture Networking v Energy Limits ICTON 2024 Bari Italy
Future Networking v Energy Limits ICTON 2024 Bari Italy
University of Hertfordshire
 
Software Requirement Engineering Analyzing the Problem.pdf
Software Requirement Engineering Analyzing the Problem.pdfSoftware Requirement Engineering Analyzing the Problem.pdf
Software Requirement Engineering Analyzing the Problem.pdf
jeevaakatiravanhod
 
SM_5th-SEM_Cse_Mobile-Computing.pdf_________________
SM_5th-SEM_Cse_Mobile-Computing.pdf_________________SM_5th-SEM_Cse_Mobile-Computing.pdf_________________
SM_5th-SEM_Cse_Mobile-Computing.pdf_________________
smarakd64
 
image processing image enhancement and filtering
image processing image enhancement and filteringimage processing image enhancement and filtering
image processing image enhancement and filtering
Sophia804451
 
BLW vocational training mechanical production workshop report.
BLW vocational training mechanical production workshop report.BLW vocational training mechanical production workshop report.
BLW vocational training mechanical production workshop report.
nk3275141
 
Presentation on ergonomics in mining industry
Presentation on ergonomics in mining industryPresentation on ergonomics in mining industry
Presentation on ergonomics in mining industry
praku727
 
Trends in digital era-Programming Knowledge
Trends in digital era-Programming KnowledgeTrends in digital era-Programming Knowledge
Trends in digital era-Programming Knowledge
DrJSathyaPriyaPhd
 
13th International Conference on Information Technology Convergence and Servi...
13th International Conference on Information Technology Convergence and Servi...13th International Conference on Information Technology Convergence and Servi...
13th International Conference on Information Technology Convergence and Servi...
ijait
 
DOUBLE SKIN FACADE PRESENTATION SLIDE.pdf
DOUBLE SKIN FACADE PRESENTATION SLIDE.pdfDOUBLE SKIN FACADE PRESENTATION SLIDE.pdf
DOUBLE SKIN FACADE PRESENTATION SLIDE.pdf
shakyabhumika51
 
RAILWAYS, a vital part of our infrastructure, play a crucial role in ensuring...
RAILWAYS, a vital part of our infrastructure, play a crucial role in ensuring...RAILWAYS, a vital part of our infrastructure, play a crucial role in ensuring...
RAILWAYS, a vital part of our infrastructure, play a crucial role in ensuring...
Kiran Kumar Manigam
 
MAJOR ACCIDENTS DUE TO FIRE IN COAL MINES.pptx
MAJOR ACCIDENTS DUE TO FIRE IN COAL MINES.pptxMAJOR ACCIDENTS DUE TO FIRE IN COAL MINES.pptx
MAJOR ACCIDENTS DUE TO FIRE IN COAL MINES.pptx
maniksrikant
 

Recently uploaded (20)

UNIT-1-INTRODUCTION- MECHATRONICS-ENGGINERING
UNIT-1-INTRODUCTION- MECHATRONICS-ENGGINERINGUNIT-1-INTRODUCTION- MECHATRONICS-ENGGINERING
UNIT-1-INTRODUCTION- MECHATRONICS-ENGGINERING
 
Computer Graphics - Cartesian Coordinate System.pdf
Computer Graphics - Cartesian Coordinate System.pdfComputer Graphics - Cartesian Coordinate System.pdf
Computer Graphics - Cartesian Coordinate System.pdf
 
一比一原版美国特拉华大学毕业证(ud毕业证书)如何办理
一比一原版美国特拉华大学毕业证(ud毕业证书)如何办理一比一原版美国特拉华大学毕业证(ud毕业证书)如何办理
一比一原版美国特拉华大学毕业证(ud毕业证书)如何办理
 
A Case of Unrecognized Peripartum Cardiomyopathy Which Was Noticed During Eme...
A Case of Unrecognized Peripartum Cardiomyopathy Which Was Noticed During Eme...A Case of Unrecognized Peripartum Cardiomyopathy Which Was Noticed During Eme...
A Case of Unrecognized Peripartum Cardiomyopathy Which Was Noticed During Eme...
 
Electrical Engineering, DC - AC Machines
Electrical Engineering, DC - AC MachinesElectrical Engineering, DC - AC Machines
Electrical Engineering, DC - AC Machines
 
Procurement and Contract Strategy in Malaysia
Procurement and Contract Strategy in MalaysiaProcurement and Contract Strategy in Malaysia
Procurement and Contract Strategy in Malaysia
 
一比一原版(uofs毕业证书)萨省大学毕业证如何办理
一比一原版(uofs毕业证书)萨省大学毕业证如何办理一比一原版(uofs毕业证书)萨省大学毕业证如何办理
一比一原版(uofs毕业证书)萨省大学毕业证如何办理
 
buy a fake University of London diploma supplement
buy a fake University of London diploma supplementbuy a fake University of London diploma supplement
buy a fake University of London diploma supplement
 
2300/2800 series Perkins diesel engine.pdf
2300/2800 series Perkins diesel engine.pdf2300/2800 series Perkins diesel engine.pdf
2300/2800 series Perkins diesel engine.pdf
 
Future Networking v Energy Limits ICTON 2024 Bari Italy
Future Networking v Energy Limits ICTON 2024 Bari ItalyFuture Networking v Energy Limits ICTON 2024 Bari Italy
Future Networking v Energy Limits ICTON 2024 Bari Italy
 
Software Requirement Engineering Analyzing the Problem.pdf
Software Requirement Engineering Analyzing the Problem.pdfSoftware Requirement Engineering Analyzing the Problem.pdf
Software Requirement Engineering Analyzing the Problem.pdf
 
SM_5th-SEM_Cse_Mobile-Computing.pdf_________________
SM_5th-SEM_Cse_Mobile-Computing.pdf_________________SM_5th-SEM_Cse_Mobile-Computing.pdf_________________
SM_5th-SEM_Cse_Mobile-Computing.pdf_________________
 
image processing image enhancement and filtering
image processing image enhancement and filteringimage processing image enhancement and filtering
image processing image enhancement and filtering
 
BLW vocational training mechanical production workshop report.
BLW vocational training mechanical production workshop report.BLW vocational training mechanical production workshop report.
BLW vocational training mechanical production workshop report.
 
Presentation on ergonomics in mining industry
Presentation on ergonomics in mining industryPresentation on ergonomics in mining industry
Presentation on ergonomics in mining industry
 
Trends in digital era-Programming Knowledge
Trends in digital era-Programming KnowledgeTrends in digital era-Programming Knowledge
Trends in digital era-Programming Knowledge
 
13th International Conference on Information Technology Convergence and Servi...
13th International Conference on Information Technology Convergence and Servi...13th International Conference on Information Technology Convergence and Servi...
13th International Conference on Information Technology Convergence and Servi...
 
DOUBLE SKIN FACADE PRESENTATION SLIDE.pdf
DOUBLE SKIN FACADE PRESENTATION SLIDE.pdfDOUBLE SKIN FACADE PRESENTATION SLIDE.pdf
DOUBLE SKIN FACADE PRESENTATION SLIDE.pdf
 
RAILWAYS, a vital part of our infrastructure, play a crucial role in ensuring...
RAILWAYS, a vital part of our infrastructure, play a crucial role in ensuring...RAILWAYS, a vital part of our infrastructure, play a crucial role in ensuring...
RAILWAYS, a vital part of our infrastructure, play a crucial role in ensuring...
 
MAJOR ACCIDENTS DUE TO FIRE IN COAL MINES.pptx
MAJOR ACCIDENTS DUE TO FIRE IN COAL MINES.pptxMAJOR ACCIDENTS DUE TO FIRE IN COAL MINES.pptx
MAJOR ACCIDENTS DUE TO FIRE IN COAL MINES.pptx
 

ITSE_10(UML,OO).pptx

  • 2. Agenda UML Modeling 2022 2 Part 1 • What is UML & Why is it necessary? • How to use UML diagrams to design software system? • Types of UML Diagrams • Understanding Object-Orientation
  • 3. Acknowledgements Material for the Lectures are derived from a variety of sources, including: • Joseph, Schmuller. "Sams Teach Yourself UML in 24 Hours." • Object-Oriented and Classical Software Engineering, Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach • UML resource page http://www.uml.org/ Presentation title 20XX 3
  • 4. Introduction Presentation title What is UML? • UML stands for “Unified Modeling Language” • One of the most interesting and practical tools in the field of system development • Simplifies the complex process of software design 2022 4 Business Process Places Order Item Ships the Item A picture is worth a thousand words! via Fulfill Order Customer Sales Representative
  • 5. Continued… Presentation title 2022 5 What is UML? • It is an industry-standard graphical language for specifying, visualizing, producing, and documenting software system artifacts. • The UML use graphical notations to express Object-Oriented analysis and design of the project. • Enable system builders to create blueprints of the system that are easy to understand and provide a mechanism to communicate and share these visions with others
  • 6. Why UML? Presentation title 2022 6 • Use graphical notation: more clearly than natural language (imprecise) and code (too detailed). • Help acquire an overall view of a system. • UML is not dependent on any one language or technology.
  • 7. History Presentation title UML or Unified Modeling Language comes from Rumbaugh, Booch, and Jacobson (the three amigos) who combined efforts to standardize on one modeling language 20XX 7 Booch, Jacobson, Rumbaugh
  • 8. Versions of UML UML Modeling 2022 8 1997 Developed in the mid-1990’s and standardized in 1997 (UML 1.1) June 2015 The current version of the Unified Modeling Language is UML 2.5, released in June 2015. 1997: UML 1.0, 1.1 1996: UML 0.9 & 0.91 1995: Unified Method 0.8 Other methods Booch ‘91 Booch ‘93 OMT - 2 OMT - 1 Year Version 2003: UML 2.0 2001: UML 1.4 1999: UML 1.3
  • 9. HOW TO USE UML DIAGRAMS TO DESIGN SOFTWARE SYSTEM? 2022 UML MODELING 9 • The purpose of diagrams is to present multiple views of the system, called Model. • One of the most important things to keep in mind is that UML model describes what a system is supposed to do and doesn’t tell how to implement the system.
  • 10. Types of UML Diagrams we’ll cover Use Case Diagram Class Diagram Activity Diagram Sequence Diagram State Diagram UML Modeling 2022 10
  • 13. Understanding Object-Orientation The object-oriented (OO) paradigm is a development strategy based on the concept that systems should be built from a collection of reusable components called objects Object- An object is an instance of a class (category). • It has a structure. That is, it has attributes (Properties) and behavior. • An object’s behavior consist of operations it carries out. • These attributes and operations taken together are called Features. Presentation title 20XX 13
  • 14. Understanding Object-Orientation In the world of object orientation, a class serves a purpose. A class is a template for making objects, sort of like a cookie cutter, that you use to stamp out cookies. Presentation title 20XX 14
  • 16. Examples of classes in a Student Records Management System Presentation title 20XX 16
  • 18. Example Let’s take an example of Washing machine. Washing machine class has the attributes brandName, modelName, serialNumber and capacity, along with operations acceptClothes(), acceptDetergant(), turnOn(), and turnoff(). Presentation title 20XX 18 The washingMachine class is a template for creating new instances of washing machines.
  • 19. Object Oriented Concepts • abstraction • inheritance • polymorphism • encapsulation • message sending • association • aggregation UML Modeling 2022 19
  • 20. Abstraction • Abstraction is the concept of object-oriented programming that means to filter out an object attributes and operations until just the ones you need are left. • Different types of problem require different amounts of information, even if these problems are in the same general area. • Example UML Modeling 2022 20
  • 22. Inheritance • Inheritance is the procedure in which one class inherits the attributes and methods of another class. • The class whose properties and methods are inherited is known as the Parent class. • And the class that inherits the properties from the parent class is the Child class. • Appliance, for example is subclass of houseHoldItems Class. Furniture is another subclass of this Class. As shown in diagram. UML Modeling 2022 22
  • 24. Polymorphism • In Polymorphism, An object basically can take multiple forms in different instances. • For example, you can open a door, you can open a window, or you can open a newspaper, bank account, or a conversation. In each case, you are performing a different operation. This is called polymorphism. UML Modeling 2022 24
  • 25. Encapsulation • Encapsulation is an Object-Oriented Programming concept that binds together the data and functions that manipulate the data, and that keeps both safe from outside interference and misuse. Data encapsulation led to the important OOP concept of data hiding. • Encapsulation tells us that we should know just an interface of class to be able to use it. We don't have to know anything about internals of class to be able to use it. UML Modeling 2022 25
  • 26. • It “shows” only essential attributes and “hides” unnecessary information. The main purpose of encapsulation is hiding the unnecessary details from the users. • For example, when we are driving a car, we are only concerned about driving the car like start/stop the car, accelerate/ break, etc. We are not concerned about how the actual start/stop mechanism or accelerate/brake process works internally. We are just not interested in those details. Presentation title 20XX 26
  • 28. Message Sending & Association • In a system, Objects work together. They do this by sending messages to each other. • One object sends a message- a request to perform operation to another object, and receiving object perform the operation. • For example, when you turn on TV, the remote-object sends message to the tv-object to turn itself on. • And in object-oriented terms, you are in association with your TV. • A class can associate with more than one other class. For example, a person can ride in a car, or a person can also ride in a bus. UML Modeling 2022 28 Figure: Association
  • 29. Aggregation • An aggregate object is one which contains other objects. • For example, an Airplane class would contain Engine, Wing, Tail, Crew objects. Sometimes the class aggregation corresponds to physical containment in the model (like the airplane). But sometimes it is more abstract (e.g., Club and Members). UML Modeling 2022 29 Figure: Association
  • 32. Working with Object Orientation The structure, or building blocks, of object-oriented programming include the following: • Classes are user-defined data types that act as the blueprint for individual objects, attributes and methods. • Objects are instances of a class created with specifically defined data. Objects can correspond to real-world objects or an abstract entity. • Methods are functions that are defined inside a class that describe the behaviors of an object. • Attributes are defined in the class template and represent the state of an object. Objects will have data stored in the attributes field. UML Modeling 2022 32
  • 33. Class Diagram- Structural Class diagrams are used when developing an object-oriented system model to show the classes in a system and the associations between these classes. An object class can be thought of as a general definition of one kind of system object. An association is a link between classes that indicates that there is some relationship between these classes. When you are developing models during the early stages of the software engineering process, objects represent something in the real world, such as a patient, a prescription, doctor, etc. Presentation title 20XX 33
  • 34. Visualizing a Class • Class name • Attributes • Operations • Responsibilities • Constraints • Notes • objects Presentation title 20XX 34
  • 36. Classes-What they do and How to Find Them Presentation title 20XX 36
  • 42. Stereotypes • Enable you to create new UML elements by basing them on existing elements. • Represent it as a name enclosed in two pairs of angle brackets called gullimets. • example Presentation title 20XX 42
  • 43. Notes to UML elements • Add extra information Presentation title 20XX 43

Editor's Notes

  1. You and I are instances of Person class
  2. Object orientation goes beyond just modeling attributes and behavior. It considers other aspects as well. The other important parts are
  3. Filter out object properties and operation until the ones you need are left
  4. If develop computer program (serial num not imp) If s/w to track transaction in a laundry then skip all just serial num
  5. Help client talk in own terms No need to make artificial words
  6. Coworker, friend
  7. An object that made up of combination of number of different types of objects
  8. As an implementation is developed, you usually need to define additional implementation objects that are used to provide the required system functionality.