SlideShare uma empresa Scribd logo
1 de 34
An Introduction to UML


Objectives
In this lesson, you will learn about :
 Object-oriented modeling
 Origin and evolution of UML
 Architecture of UML
 User View
     Actor
     Use Cases




©NIIT                                    UML /Lesson 1/Slide 1 of 34
An Introduction to UML


The Object Oriented Approach
 The object-oriented approach views a system as a
  collection of real-world objects
 Object-oriented systems are based on classes
 A class categorizes a set of objects that share
  common
     Attributes - represent the properties of the class
     Behaviors - represent the operations that can be
      performed by the class
 An object is an instance of a class and demonstrates
  the attributes and behaviors of the class

©NIIT                                   UML /Lesson 1/Slide 2 of 34
An Introduction to UML


Features of Object-Orientation
 Abstraction - represents the essential characteristics
  of an object or a class that differentiates it from other
  objects or classes with respect to the viewer’s
  perspective
 Inheritance - helps you generalize common attributes
  and behaviors in separate classes from which various
  subclasses can be derived
 Encapsulation - helps you hide unnecessary
  behaviors or attributes from the user
 Polymorphism - is the ability of an object to behave
  differently under different circumstances

©NIIT                                    UML /Lesson 1/Slide 3 of 34
An Introduction to UML

Software Development Life Cycle
 Software Development Life Cycle consists of four
  phases that any software-intensive system undergoes
     Inception - This is the first phase of the SDLC process.
      The idea of a new system is envisaged at this stage
     Elaboration - This is the second phase of the SDLC
      process. The system vision and architecture are defined
      at this stage
     Construction - This is the third phase of the SDLC
      process. The software is coded to form an executable
      base, which is ready to be deployed
     Transition - This is the last phase of the SDLC process.
      The software is handed over to the end user and is
      tested for defects


©NIIT                                     UML /Lesson 1/Slide 4 of 34
An Introduction to UML


Object-Oriented Modeling
 Modeling is breaking the complex problem into small
  elements and arriving at the solution of the problem
 Models help you visualize and specify different parts
  of a system
 Models also show how different parts are related to
  one another and help in visualizing their working




©NIIT                                 UML /Lesson 1/Slide 5 of 34
An Introduction to UML

Object-Oriented Modeling(Contd.)
 UML defines various models in the software
  engineering domain. The models and their description
  are given below:
     The class model describes the static structure
     The state model represents the dynamic behavior of
      objects
     The use case model explains the requirements of the
      user
     The interaction model describes the messages flows
     The implementation model contains the work units
     The deployment model contains details that pertain to
      process allocation

©NIIT                                    UML /Lesson 1/Slide 6 of 34
An Introduction to UML

Unified Modeling Language (UML)
Is a standard modeling language used for modeling
 software systems of varying complexities
Provides a set of notations and rules for using any kind
 of system
Focus is on creating simple, well-documented and
 easy-to-understand software models




©NIIT                                 UML /Lesson 1/Slide 7 of 34
An Introduction to UML


Goals of UML
 The goals of the UML are:
     To provide a simple and ready-to-use expressive
      visual modeling language
     To be process-independent
     To be language-independent




©NIIT                              UML /Lesson 1/Slide 8 of 34
An Introduction to UML


UML is used to:
 Visualize the software system with well-defined
  symbols
 Specify the software system and help in building
  precise, unambiguous, and complete models
 Construct models of the software system that can
  directly communicate with a variety of programming
  languages
 Document models of the software system by
  expressing requirements of the system during its
  development and deployment stages


©NIIT                                UML /Lesson 1/Slide 9 of 34
An Introduction to UML


Where is UML Used?
 Some of the most common domains where UML is
  being currently used are:
     Banking services
     Defense systems
     Distributed Web-based services
     Enterprise Information systems
     Medical systems
     Aerospace systems.



©NIIT                                  UML /Lesson 1/Slide 10 of 34
An Introduction to UML


UML: The Big Picture



        Structural View               Implementation View




                          User View


        Behavioral View               Environment View




©NIIT                                  UML /Lesson 1/Slide 11 of 34
An Introduction to UML


Views in UML
User View – represents the goals and objectives of the
 system
Structural View – represents the static or idle state of
 the system
Behavioral View – represents the dynamic or changing
 state of the system
Implementation View – represents the distribution of
 the logical elements of the system
Environment View – represents the distribution of the
 physical elements of the system


©NIIT                                  UML /Lesson 1/Slide 12 of 34
An Introduction to UML


Context and Environment of a System
A system addresses a problem and provides solutions
 to the problem within a framework. This framework is
 referred to as the context of a system
The environment of a system specifies the functionality
 of the system from the user’s point of view




©NIIT                               UML /Lesson 1/Slide 13 of 34
An Introduction to UML

The User View of a System
Represents the goals and objectives of various users
 and their requirements from the system
Represents that part of the system with which the user
 interacts
Consist of:
     System Users - System users can be human users
      or other systems that interact directly with the
      system
     Actors - Actors are the elements that lie outside the
      system, and therefore are called the external
      entities of a system. They are used to model
      system users

©NIIT                                 UML /Lesson 1/Slide 14 of 34
An Introduction to UML


Actors
Are divided into four main categories:
     Principal actors – people who directly interact with
      the system.
     Secondary actors – people who are involved in
      maintenance of the system
     External hardware – The hardware that is a part of
      system other than the computer that runs an
      application
     Other systems –The external systems with which
      your system needs to interact for its working


©NIIT                                  UML /Lesson 1/Slide 15 of 34
An Introduction to UML


 Problem Statement 1.D.1
  One of the sources used by Tebisco for recruiting
  personnel is the internal job postings process.
  Whenever a vacancy arises, the Human Resource
  (HR) head of the region informs all the employees of
  that region and also sends the information to other
  regional HR heads inviting applications. The other
  regional HR heads then place the vacancy information
  on the notice board. All interested employees send
  their applications to the HR head of the region where
  the vacancy exists.
  Identify the various actors interacting with the system.



©NIIT                                 UML /Lesson 1/Slide 16 of 34
An Introduction to UML


Solution:
The actors identified are:
Regional HR head where a vacancy exists, denoted as
 RHR(V)
Other Regional HR head, denoted as RHR(O)
All employees of Tebisco, denoted as EMP




©NIIT                             UML /Lesson 1/Slide 17 of 34
An Introduction to UML

Problem Statement 1.P.1
Employee referrals are one of the best sources used for
recruiting external candidates at Tebisco. In this process
an employee recommends a candidate. Whenever a
vacancy arises, the HR head of the region informs all the
employees of that region and also sends the information
to other regional HR heads inviting applications. The
regional HR head then places the vacancy information
on the notice board. Employees send the details of
candidates being recommended by them to the HR head
of the region where the vacancy exists. After an
employee sends in the recommendation, the regional HR
head sends an acknowledgement of the receipt of the
application to the candidate.
Identify the various actors interacting with the system.

©NIIT                                  UML /Lesson 1/Slide 18 of 34
An Introduction to UML


Use Cases
 Consist of elements that lie inside the system
 Are responsible for functionality and behavior of the
  system
 Are set of transactions performed by the system when
  an actor initiates an event or an action
 Represent all the possible events that can occur in all
  possible scenarios




©NIIT                                 UML /Lesson 1/Slide 19 of 34
An Introduction to UML


Diagrammatic Conventions for Drawing
Use Case Diagrams
 The user view of a system consists of use case
  diagrams
 A use case diagram contains actors, use cases, and
  their relationships
 A use case diagram represents the functionality
  provided by the system to external entities
 Use case diagrams consist of actors and use cases




©NIIT                               UML /Lesson 1/Slide 20 of 34
An Introduction to UML


Diagrammatic Conventions for Drawing
Use Case Diagrams(Contd.)
 Following is the diagrammatic representation of use
  case diagrams




                                 Use Case Name




  Actor Name




©NIIT                               UML /Lesson 1/Slide 21 of 34
An Introduction to UML


Diagrammatic Conventions for Drawing
Use Case Diagrams(Contd.)
 Consider the following examples of use cases in the
  billing system of the department store:
     Enter Bill Details
     Calculate Total Amount
     Print Bill




©NIIT                               UML /Lesson 1/Slide 22 of 34
An Introduction to UML


Diagrammatic Conventions for Drawing
Use Case Diagrams(Contd.)

                    Enter Bill Details




   Clerk
                     Calculate Total
                        Amount




                        Print Bill




                                                              Clerk


©NIIT                                    UML /Lesson 1/Slide 23 of 34
An Introduction to UML

Problem Statement 1.D.2
In the internal job postings process, the HR head of the
region where a vacancy exists informs the employees of
that region and other regional HR heads. The other
regional HR heads inform employees by putting up a
notice with the vacancy information.
In response to this information, employees from various
regions send their applications to the HR head of the
region where the vacancy exists.
The skills of the applicants are then matched with the
skills required for the vacancy. Applicants who possess
the required skills are short-listed and an interview
schedule is drawn. The short-listed applicants are
informed about the interview schedule.

©NIIT                                UML /Lesson 1/Slide 24 of 34
An Introduction to UML

Problem Statement 1.D.2 (Contd.)
Based on the interview proceedings, interview details are
updated and all the selected applicants are given a new
offer letter. The applicant informs the HR head of the
region where the vacancy exists, either by accepting or
declining the offer letter. After the employee accepts the
offer letter, a transfer request is sent to the HR head of
the current region of the employee. The respective
region processes the transfer details and sends it to the
new region where the employee has been transferred.
The new region then updates the employee details and
sends the transfer documents to the employee.
Identify the various use cases involved in the internal job
postings process and represent the user view of the
system.

©NIIT                                  UML /Lesson 1/Slide 25 of 34
An Introduction to UML


Solution:



                     Distribute
                                                     RHR (O)
                    Information



   RHR (V)



                                                     EMP



                  Send Application



   EMP                                               RHR (V)




©NIIT                                UML /Lesson 1/Slide 26 of 34
An Introduction to UML


Solution:(Contd.)

                      Match Skills



        RHR (V)
                    Arrange Interview



                                                       EMP



                    Update Interview
                        Details

        RHR (V)
                     Generate Offer
                        Letter

                                                      EMP



©NIIT                                   UML /Lesson 1/Slide 27 of 34
An Introduction to UML


Solution:(Contd.)


                    Accept / Reject Offer
                           Letter




        EMP                                                 RHR (V)




                      Transfer Request




   RHR (V)                                                  RHR (O)




©NIIT                                       UML /Lesson 1/Slide 28 of 34
An Introduction to UML


Solution:(Contd.)


                    Arrange for Transfer




 RHR (O)                                                  RHR (V)




                      Update Transfer
                         Details




  RHR (V)                                                   EMP




©NIIT                                      UML /Lesson 1/Slide 29 of 34
An Introduction to UML

Problem Statement 1.P.2
Dual Infosys Inc is going in for workflow automation. One
of the workflows that they want to automate is leave
processing. The process followed by Dual Infosys Inc is
discussed below.
The employee sends an application for a leave to the
supervisor. Supervisor sanctions or rejects the leave
application and sends it to the HR Operations (HR(O)).
HR(O) verifies the leave balance and processes the
leave by updating the leave details and sends the
approval to the employee.
Identify the various use cases involved in the employee
referral process of leave application and represent the
user view of this system.

©NIIT                                UML /Lesson 1/Slide 30 of 34
An Introduction to UML

Summary
In this lesson you learned that:
 A class is a set of objects that share common
  attributes and behaviors.
 Features of object-orientation are:
     Abstraction
     Inheritance
     Encapsulation
     Polymorphism
 Advantages of object-oriented approach are:
     Realistic modeling

©NIIT                                   UML /Lesson 1/Slide 31 of 34
An Introduction to UML


Summary (Contd.)
     Reusability
     Resilience to change
 The phases in Software Development Life Cycle are:
     Inception
     Elaboration
     Construction
     Transition
 UML provides a set of notations and rules for using
  different kind of systems


©NIIT                              UML /Lesson 1/Slide 32 of 34
An Introduction to UML

Summary (Contd.)
 The goals of UML are:
     To provide a simple and ready-to-use expressive
      visual modeling language
     To be process independent
     To be language independent




©NIIT                               UML /Lesson 1/Slide 33 of 34
An Introduction to UML

Summary (Contd.)
 Different kind of views in UML are:
     The user view
     The structural view
     The behavioral view
     The implementation view
     The environment view




©NIIT                                   UML /Lesson 1/Slide 34 of 34

Mais conteúdo relacionado

Mais procurados

Introduction to Unified Modeling Language
Introduction to Unified Modeling LanguageIntroduction to Unified Modeling Language
Introduction to Unified Modeling Language
AMITJain879
 
Software Engineering course
Software Engineering courseSoftware Engineering course
Software Engineering course
Jeremy Rose
 
10 ooad uml-13
10 ooad uml-1310 ooad uml-13
10 ooad uml-13
Niit Care
 

Mais procurados (20)

Introduction to Unified Modeling Language
Introduction to Unified Modeling LanguageIntroduction to Unified Modeling Language
Introduction to Unified Modeling Language
 
Assignment 1 SYD601 2012 rick_danby completed with audio
Assignment 1 SYD601 2012 rick_danby completed with audioAssignment 1 SYD601 2012 rick_danby completed with audio
Assignment 1 SYD601 2012 rick_danby completed with audio
 
Round - Trip Software Engineering using UML: From Architecture to Design and...
Round - Trip Software Engineering using UML:  From Architecture to Design and...Round - Trip Software Engineering using UML:  From Architecture to Design and...
Round - Trip Software Engineering using UML: From Architecture to Design and...
 
Ooad overview
Ooad overviewOoad overview
Ooad overview
 
SE18_Lec 06_Object Oriented Analysis and Design
SE18_Lec 06_Object Oriented Analysis and DesignSE18_Lec 06_Object Oriented Analysis and Design
SE18_Lec 06_Object Oriented Analysis and Design
 
Object oriented analysis and design unit- i
Object oriented analysis and design unit- iObject oriented analysis and design unit- i
Object oriented analysis and design unit- i
 
Chapter1
Chapter1Chapter1
Chapter1
 
Software Engineering course
Software Engineering courseSoftware Engineering course
Software Engineering course
 
Ooad
OoadOoad
Ooad
 
UML
UMLUML
UML
 
Devnology Back to School: Empirical Evidence on Modeling in Software Development
Devnology Back to School: Empirical Evidence on Modeling in Software DevelopmentDevnology Back to School: Empirical Evidence on Modeling in Software Development
Devnology Back to School: Empirical Evidence on Modeling in Software Development
 
4+1
4+14+1
4+1
 
Arch06 1
Arch06 1Arch06 1
Arch06 1
 
10 ooad uml-13
10 ooad uml-1310 ooad uml-13
10 ooad uml-13
 
432
432432
432
 
CS8592 Object Oriented Analysis & Design - UNIT I
CS8592 Object Oriented Analysis & Design - UNIT ICS8592 Object Oriented Analysis & Design - UNIT I
CS8592 Object Oriented Analysis & Design - UNIT I
 
Function Oriented Design
Function Oriented DesignFunction Oriented Design
Function Oriented Design
 
Jeet ooad unit-2
Jeet ooad unit-2Jeet ooad unit-2
Jeet ooad unit-2
 
Ooad lab manual
Ooad  lab manualOoad  lab manual
Ooad lab manual
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
 

Destaque (10)

03 ooad uml-03
03 ooad uml-0303 ooad uml-03
03 ooad uml-03
 
Ajs 3 a
Ajs 3 aAjs 3 a
Ajs 3 a
 
02 ooad uml-02
02 ooad uml-0202 ooad uml-02
02 ooad uml-02
 
Ajs 4 b
Ajs 4 bAjs 4 b
Ajs 4 b
 
01 ooad uml-01
01 ooad uml-0101 ooad uml-01
01 ooad uml-01
 
Book of Uml
Book of UmlBook of Uml
Book of Uml
 
Umldiagrams ForOOAD Lab B.Tech 4-1
Umldiagrams ForOOAD Lab B.Tech 4-1Umldiagrams ForOOAD Lab B.Tech 4-1
Umldiagrams ForOOAD Lab B.Tech 4-1
 
Ajs 4 a
Ajs 4 aAjs 4 a
Ajs 4 a
 
Ajs 1 b
Ajs 1 bAjs 1 b
Ajs 1 b
 
Crj 3 1-b
Crj 3 1-bCrj 3 1-b
Crj 3 1-b
 

Semelhante a Crj 3 1-a

Chap5 oodm-uml-part1
Chap5 oodm-uml-part1Chap5 oodm-uml-part1
Chap5 oodm-uml-part1
SJC
 
Chap5 oodm-uml-part11
Chap5 oodm-uml-part11Chap5 oodm-uml-part11
Chap5 oodm-uml-part11
SJC
 
Introduction to Modeling Java and UML
Introduction to Modeling Java and UMLIntroduction to Modeling Java and UML
Introduction to Modeling Java and UML
Dang Tuan
 

Semelhante a Crj 3 1-a (20)

UML Unit 01
UML Unit 01UML Unit 01
UML Unit 01
 
Ch 2.1
Ch 2.1Ch 2.1
Ch 2.1
 
Presentation on uml
Presentation on umlPresentation on uml
Presentation on uml
 
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdfPhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
 
18540PhDreport.pdf
18540PhDreport.pdf18540PhDreport.pdf
18540PhDreport.pdf
 
03 ooad-uml 03
03 ooad-uml 0303 ooad-uml 03
03 ooad-uml 03
 
Uml
UmlUml
Uml
 
Chap5 oodm-uml-part1
Chap5 oodm-uml-part1Chap5 oodm-uml-part1
Chap5 oodm-uml-part1
 
Chap5 oodm-uml-part11
Chap5 oodm-uml-part11Chap5 oodm-uml-part11
Chap5 oodm-uml-part11
 
SE - Lecture 3 - Software Tools n Environment.pptx
SE - Lecture 3 - Software Tools n Environment.pptxSE - Lecture 3 - Software Tools n Environment.pptx
SE - Lecture 3 - Software Tools n Environment.pptx
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
 
4+1 view model
4+1 view model4+1 view model
4+1 view model
 
Case Study Uml
Case Study UmlCase Study Uml
Case Study Uml
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
 
Introduction to Modeling Java and UML
Introduction to Modeling Java and UMLIntroduction to Modeling Java and UML
Introduction to Modeling Java and UML
 
UNIFIED MODELLING LANGUAGE (UML)
UNIFIED MODELLING LANGUAGE (UML)UNIFIED MODELLING LANGUAGE (UML)
UNIFIED MODELLING LANGUAGE (UML)
 
Unified modelling language (UML)
Unified modelling language (UML)Unified modelling language (UML)
Unified modelling language (UML)
 
0136061257
01360612570136061257
0136061257
 
Case stydy cs701
Case stydy cs701 Case stydy cs701
Case stydy cs701
 
Uml
UmlUml
Uml
 

Mais de Niit Care (20)

Ajs 4 c
Ajs 4 cAjs 4 c
Ajs 4 c
 
Ajs 3 b
Ajs 3 bAjs 3 b
Ajs 3 b
 
Ajs 3 c
Ajs 3 cAjs 3 c
Ajs 3 c
 
Ajs 2 b
Ajs 2 bAjs 2 b
Ajs 2 b
 
Ajs 2 a
Ajs 2 aAjs 2 a
Ajs 2 a
 
Ajs 2 c
Ajs 2 cAjs 2 c
Ajs 2 c
 
Ajs 1 a
Ajs 1 aAjs 1 a
Ajs 1 a
 
Ajs 1 c
Ajs 1 cAjs 1 c
Ajs 1 c
 
Dacj 4 2-c
Dacj 4 2-cDacj 4 2-c
Dacj 4 2-c
 
Dacj 4 2-b
Dacj 4 2-bDacj 4 2-b
Dacj 4 2-b
 
Dacj 4 2-a
Dacj 4 2-aDacj 4 2-a
Dacj 4 2-a
 
Dacj 4 1-c
Dacj 4 1-cDacj 4 1-c
Dacj 4 1-c
 
Dacj 4 1-b
Dacj 4 1-bDacj 4 1-b
Dacj 4 1-b
 
Dacj 4 1-a
Dacj 4 1-aDacj 4 1-a
Dacj 4 1-a
 
Dacj 1-2 b
Dacj 1-2 bDacj 1-2 b
Dacj 1-2 b
 
Dacj 1-3 c
Dacj 1-3 cDacj 1-3 c
Dacj 1-3 c
 
Dacj 1-3 b
Dacj 1-3 bDacj 1-3 b
Dacj 1-3 b
 
Dacj 1-3 a
Dacj 1-3 aDacj 1-3 a
Dacj 1-3 a
 
Dacj 1-2 c
Dacj 1-2 cDacj 1-2 c
Dacj 1-2 c
 
Dacj 1-2 a
Dacj 1-2 aDacj 1-2 a
Dacj 1-2 a
 

Último

Último (20)

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 

Crj 3 1-a

  • 1. An Introduction to UML Objectives In this lesson, you will learn about : Object-oriented modeling Origin and evolution of UML Architecture of UML User View Actor Use Cases ©NIIT UML /Lesson 1/Slide 1 of 34
  • 2. An Introduction to UML The Object Oriented Approach The object-oriented approach views a system as a collection of real-world objects Object-oriented systems are based on classes A class categorizes a set of objects that share common Attributes - represent the properties of the class Behaviors - represent the operations that can be performed by the class An object is an instance of a class and demonstrates the attributes and behaviors of the class ©NIIT UML /Lesson 1/Slide 2 of 34
  • 3. An Introduction to UML Features of Object-Orientation Abstraction - represents the essential characteristics of an object or a class that differentiates it from other objects or classes with respect to the viewer’s perspective Inheritance - helps you generalize common attributes and behaviors in separate classes from which various subclasses can be derived Encapsulation - helps you hide unnecessary behaviors or attributes from the user Polymorphism - is the ability of an object to behave differently under different circumstances ©NIIT UML /Lesson 1/Slide 3 of 34
  • 4. An Introduction to UML Software Development Life Cycle Software Development Life Cycle consists of four phases that any software-intensive system undergoes Inception - This is the first phase of the SDLC process. The idea of a new system is envisaged at this stage Elaboration - This is the second phase of the SDLC process. The system vision and architecture are defined at this stage Construction - This is the third phase of the SDLC process. The software is coded to form an executable base, which is ready to be deployed Transition - This is the last phase of the SDLC process. The software is handed over to the end user and is tested for defects ©NIIT UML /Lesson 1/Slide 4 of 34
  • 5. An Introduction to UML Object-Oriented Modeling Modeling is breaking the complex problem into small elements and arriving at the solution of the problem Models help you visualize and specify different parts of a system Models also show how different parts are related to one another and help in visualizing their working ©NIIT UML /Lesson 1/Slide 5 of 34
  • 6. An Introduction to UML Object-Oriented Modeling(Contd.) UML defines various models in the software engineering domain. The models and their description are given below: The class model describes the static structure The state model represents the dynamic behavior of objects The use case model explains the requirements of the user The interaction model describes the messages flows The implementation model contains the work units The deployment model contains details that pertain to process allocation ©NIIT UML /Lesson 1/Slide 6 of 34
  • 7. An Introduction to UML Unified Modeling Language (UML) Is a standard modeling language used for modeling software systems of varying complexities Provides a set of notations and rules for using any kind of system Focus is on creating simple, well-documented and easy-to-understand software models ©NIIT UML /Lesson 1/Slide 7 of 34
  • 8. An Introduction to UML Goals of UML The goals of the UML are: To provide a simple and ready-to-use expressive visual modeling language To be process-independent To be language-independent ©NIIT UML /Lesson 1/Slide 8 of 34
  • 9. An Introduction to UML UML is used to: Visualize the software system with well-defined symbols Specify the software system and help in building precise, unambiguous, and complete models Construct models of the software system that can directly communicate with a variety of programming languages Document models of the software system by expressing requirements of the system during its development and deployment stages ©NIIT UML /Lesson 1/Slide 9 of 34
  • 10. An Introduction to UML Where is UML Used? Some of the most common domains where UML is being currently used are: Banking services Defense systems Distributed Web-based services Enterprise Information systems Medical systems Aerospace systems. ©NIIT UML /Lesson 1/Slide 10 of 34
  • 11. An Introduction to UML UML: The Big Picture Structural View Implementation View User View Behavioral View Environment View ©NIIT UML /Lesson 1/Slide 11 of 34
  • 12. An Introduction to UML Views in UML User View – represents the goals and objectives of the system Structural View – represents the static or idle state of the system Behavioral View – represents the dynamic or changing state of the system Implementation View – represents the distribution of the logical elements of the system Environment View – represents the distribution of the physical elements of the system ©NIIT UML /Lesson 1/Slide 12 of 34
  • 13. An Introduction to UML Context and Environment of a System A system addresses a problem and provides solutions to the problem within a framework. This framework is referred to as the context of a system The environment of a system specifies the functionality of the system from the user’s point of view ©NIIT UML /Lesson 1/Slide 13 of 34
  • 14. An Introduction to UML The User View of a System Represents the goals and objectives of various users and their requirements from the system Represents that part of the system with which the user interacts Consist of: System Users - System users can be human users or other systems that interact directly with the system Actors - Actors are the elements that lie outside the system, and therefore are called the external entities of a system. They are used to model system users ©NIIT UML /Lesson 1/Slide 14 of 34
  • 15. An Introduction to UML Actors Are divided into four main categories: Principal actors – people who directly interact with the system. Secondary actors – people who are involved in maintenance of the system External hardware – The hardware that is a part of system other than the computer that runs an application Other systems –The external systems with which your system needs to interact for its working ©NIIT UML /Lesson 1/Slide 15 of 34
  • 16. An Introduction to UML Problem Statement 1.D.1 One of the sources used by Tebisco for recruiting personnel is the internal job postings process. Whenever a vacancy arises, the Human Resource (HR) head of the region informs all the employees of that region and also sends the information to other regional HR heads inviting applications. The other regional HR heads then place the vacancy information on the notice board. All interested employees send their applications to the HR head of the region where the vacancy exists. Identify the various actors interacting with the system. ©NIIT UML /Lesson 1/Slide 16 of 34
  • 17. An Introduction to UML Solution: The actors identified are: Regional HR head where a vacancy exists, denoted as RHR(V) Other Regional HR head, denoted as RHR(O) All employees of Tebisco, denoted as EMP ©NIIT UML /Lesson 1/Slide 17 of 34
  • 18. An Introduction to UML Problem Statement 1.P.1 Employee referrals are one of the best sources used for recruiting external candidates at Tebisco. In this process an employee recommends a candidate. Whenever a vacancy arises, the HR head of the region informs all the employees of that region and also sends the information to other regional HR heads inviting applications. The regional HR head then places the vacancy information on the notice board. Employees send the details of candidates being recommended by them to the HR head of the region where the vacancy exists. After an employee sends in the recommendation, the regional HR head sends an acknowledgement of the receipt of the application to the candidate. Identify the various actors interacting with the system. ©NIIT UML /Lesson 1/Slide 18 of 34
  • 19. An Introduction to UML Use Cases Consist of elements that lie inside the system Are responsible for functionality and behavior of the system Are set of transactions performed by the system when an actor initiates an event or an action Represent all the possible events that can occur in all possible scenarios ©NIIT UML /Lesson 1/Slide 19 of 34
  • 20. An Introduction to UML Diagrammatic Conventions for Drawing Use Case Diagrams The user view of a system consists of use case diagrams A use case diagram contains actors, use cases, and their relationships A use case diagram represents the functionality provided by the system to external entities Use case diagrams consist of actors and use cases ©NIIT UML /Lesson 1/Slide 20 of 34
  • 21. An Introduction to UML Diagrammatic Conventions for Drawing Use Case Diagrams(Contd.) Following is the diagrammatic representation of use case diagrams Use Case Name Actor Name ©NIIT UML /Lesson 1/Slide 21 of 34
  • 22. An Introduction to UML Diagrammatic Conventions for Drawing Use Case Diagrams(Contd.) Consider the following examples of use cases in the billing system of the department store: Enter Bill Details Calculate Total Amount Print Bill ©NIIT UML /Lesson 1/Slide 22 of 34
  • 23. An Introduction to UML Diagrammatic Conventions for Drawing Use Case Diagrams(Contd.) Enter Bill Details Clerk Calculate Total Amount Print Bill Clerk ©NIIT UML /Lesson 1/Slide 23 of 34
  • 24. An Introduction to UML Problem Statement 1.D.2 In the internal job postings process, the HR head of the region where a vacancy exists informs the employees of that region and other regional HR heads. The other regional HR heads inform employees by putting up a notice with the vacancy information. In response to this information, employees from various regions send their applications to the HR head of the region where the vacancy exists. The skills of the applicants are then matched with the skills required for the vacancy. Applicants who possess the required skills are short-listed and an interview schedule is drawn. The short-listed applicants are informed about the interview schedule. ©NIIT UML /Lesson 1/Slide 24 of 34
  • 25. An Introduction to UML Problem Statement 1.D.2 (Contd.) Based on the interview proceedings, interview details are updated and all the selected applicants are given a new offer letter. The applicant informs the HR head of the region where the vacancy exists, either by accepting or declining the offer letter. After the employee accepts the offer letter, a transfer request is sent to the HR head of the current region of the employee. The respective region processes the transfer details and sends it to the new region where the employee has been transferred. The new region then updates the employee details and sends the transfer documents to the employee. Identify the various use cases involved in the internal job postings process and represent the user view of the system. ©NIIT UML /Lesson 1/Slide 25 of 34
  • 26. An Introduction to UML Solution: Distribute RHR (O) Information RHR (V) EMP Send Application EMP RHR (V) ©NIIT UML /Lesson 1/Slide 26 of 34
  • 27. An Introduction to UML Solution:(Contd.) Match Skills RHR (V) Arrange Interview EMP Update Interview Details RHR (V) Generate Offer Letter EMP ©NIIT UML /Lesson 1/Slide 27 of 34
  • 28. An Introduction to UML Solution:(Contd.) Accept / Reject Offer Letter EMP RHR (V) Transfer Request RHR (V) RHR (O) ©NIIT UML /Lesson 1/Slide 28 of 34
  • 29. An Introduction to UML Solution:(Contd.) Arrange for Transfer RHR (O) RHR (V) Update Transfer Details RHR (V) EMP ©NIIT UML /Lesson 1/Slide 29 of 34
  • 30. An Introduction to UML Problem Statement 1.P.2 Dual Infosys Inc is going in for workflow automation. One of the workflows that they want to automate is leave processing. The process followed by Dual Infosys Inc is discussed below. The employee sends an application for a leave to the supervisor. Supervisor sanctions or rejects the leave application and sends it to the HR Operations (HR(O)). HR(O) verifies the leave balance and processes the leave by updating the leave details and sends the approval to the employee. Identify the various use cases involved in the employee referral process of leave application and represent the user view of this system. ©NIIT UML /Lesson 1/Slide 30 of 34
  • 31. An Introduction to UML Summary In this lesson you learned that: A class is a set of objects that share common attributes and behaviors. Features of object-orientation are: Abstraction Inheritance Encapsulation Polymorphism Advantages of object-oriented approach are: Realistic modeling ©NIIT UML /Lesson 1/Slide 31 of 34
  • 32. An Introduction to UML Summary (Contd.) Reusability Resilience to change The phases in Software Development Life Cycle are: Inception Elaboration Construction Transition UML provides a set of notations and rules for using different kind of systems ©NIIT UML /Lesson 1/Slide 32 of 34
  • 33. An Introduction to UML Summary (Contd.) The goals of UML are: To provide a simple and ready-to-use expressive visual modeling language To be process independent To be language independent ©NIIT UML /Lesson 1/Slide 33 of 34
  • 34. An Introduction to UML Summary (Contd.) Different kind of views in UML are: The user view The structural view The behavioral view The implementation view The environment view ©NIIT UML /Lesson 1/Slide 34 of 34