SlideShare a Scribd company logo
Introducing Unified Modeling Language 2003-02-26 Byungwook Cho (byungwook.cho@oracle.com)
Table of contents What is UML? Elements of UML Use case diagram Activity diagram Class diagram Sequence diagram Collaboration diagram Component diagram Deployment diagram
Key point Kind of UML diagram Role of each UML diagram Trace UML diagram
1. What is UML ? Unified Modeling Language Just Notation Goal To model system using object-oriented concepts. To visualize software structure To create modeling language useable by both humans and machines History 1994. Grady Booch (Booch Method), James Rumbaugh (OMT-2) 1995. Ivar Jacobson (OOSE and the Objectory) Rational Software (IBM.2002)
2. Elements of UML Elements of UML Things  Relationships Diagram Interaction model of things
2. Elements of UML 1) Elements - Things Structural things Static things Class,Use case,Component,Nodes. Behavioral things Dynamic things. Message,States. Grouping things Aggregate elements of UML Package Annotational things Like comment. Note
2. Elements of UML 2) Elements - Relationship  Dependency Association (method call etc.) Generalization Realization ( 특정  Things 를 구체화하여 표현하는 관계 )
2. Elements of UML 3) Elements – Diagrams Use case diagram Activity diagram Class diagram Sequence diagram Collaboration diagram Component diagram Deployment diagram
UML Diagrams Use case  Diagram Class  Diagram Sequence Diagram Collaboration Diagram Activity  Diagram Component Diagram Deployment Diagram Static Dynamic Analyze system domain (Use Case View) Relationship between class,object (Logical view) System structure and arrangement (Physical view or Implementation view) Development process
3. Use case diagram Use case Diagram Define interaction between system and external environment  ※  external environment user,external system etc. Visualize system function and elements. Frequently used in analysis phase. Main factor in RUP Consists of Actor,Use case,Association -> Diagram Use case description Very Important!!
3. Use case Diagram Use case diagram ※  Think point : use case scope. Buy Drink Add Ice <<extend>> Insert Coin <<include>> Bending Machine Buyer
3. Use case Diagram Use case description Define use case do “What”, not “How”. Include Start condition. Functional flow of use case. Interaction within actor and use case. Data,selection,exception flow. ▷  Use case:  Use case name ▷  Actor:  Actor name that uses this use case ▷  Cross Reference :  Requirement # in client requirement list ▷  Purpose:  mission objective of this use case ▷  Overview:  over view of this use case ▷  Type:  Primary,Secondary, or Optional ▷  Main Flow ▷  Detailed Flow ▷  Alternative Flow ▷  Exception ○  Actor Action … … 4.  … ○  System Response 3.  … 시작조건 <Actor> <Event>
4. Activity / State Diagram Activity / State Diagram Modeling  dynamic  behavior of system. Can be used in modeling  use case life cycle,system life cycle and object life cycle etc. Modeling object state transition (by event). Consists of Activity,Transition,Decision,Synchronization bars,State,Swim Lane ※  Activity Diagram – Business Process,Operation Algorithm. ※  State Diagram – Pre/Post condition of component.
4. Activity / State Diagram Working Check System Clock Input user action Display user action to screen action Wait for user action Refresh time  [Time check] Run screen saver H [Time over]  Press key or move mouse History State Sub state Sub state State transition
5. Class Diagram Class diagram A common techniques to modeling object oriented system. Modeling interaction within class/interface. Modeling in  static view . Consists of Package,Class,Interface,Association. Class stereo type (Entity,Boundary,Control : MVC) Phase of class diagram Conceptual model  (Not for software design, just for analysis) Logical model  (None system dependent software structure,MVC) Implementation model  (+ Architecture,System dependent)
5. Class Diagram Class Person{ Company employer = null; : }// Class Person Class Company{ : }// Class Company Multiplicity Association Name Role Name
6. Sequence Diagram Sequence diagram Dynamic diagram  that describe interaction between object. Focus on  time sequence . Define message between object Frequently be used in describing  use case scenario. Can describe sequence,selection,iteration. ※  can be used in extract class method in logical class model. Consists of Actor,Object,Message object life cycle line,operation running time
6. Sequence Diagram Example) 1. GUI notify key stroke to OS 2. Os notify key stroke to CPU 3. OS update UI. 4. CPU request updating screen to video card. 5. Video Card send update screen to monitor. 6. Monitor display some character and feed back to use :GUI :OS :CPU :Video Card :Monitor Keystroke feedback 1.notify 2.notify 3.updateRequest 4. updateScreen Object Life cycle Operation running time User
6. Sequence Diagram :GUI :Os :CPU :Video Card :Monitor Keystroke feedback Init Process Exit ※  Sequence diagram with object state User
7. Collaboration Diagram Collaboration Diagram Dynamic diagram  that describe interaction between object.  Focus on  collaboration structure and organization  between object. Modeling  link within object.  (can extract to association in class diagram) Same as sequence diagram ※  Frequently used to define class method in “Implementation Class Diagram” Consists of Object,Link,Message,Data Token
7. Collaboration Diagram :GUI[Process] :OS :CPU :Video Card :Monitor Key stroke 1: notify(Key stroke) 4: notify(Key) 3: update(key stroke) 5: display(Key) 6: feedback() :GUI[Init] <<become>> State State transition User
8. Component Diagram Component diagram Define dependency between physical element of software and other elements (class etc.) Realize class in class diagram Consists of Package,Dependency,Interface,Component Component Source component Binary component (*.dll,*.class,beans) Executable component (*.exe,server)
8. Component Diagram
9. Deployment Diagram Deployment Diagram Define ‘hardware deploy structure’ of each software element. Consists of Device,Process,Connection
9. Deployment Diagram Device
※  UML diagram tracing relationship. Use case Diagram Activity/State Diagram Class Diagram Conceptual Model Logical Model Implementation Model Sequence Diagram Collaboration Diagram scenario class,attribute method UI Design Architecture DB Design Pattern Deployment Diagram Component Diagram ongoing Analyze system domain (Use Case View) Relationship between class,object (Logical view) System structure and arrangement (Implementation Diagram) Static Dynamic Use case Diagram use case realization realization deploy structure
Object Oriented Software Development Process RUP,XP,OSP,SSADM,Information Engineering Methodolgy Key factor Incremental Iterative Device and conquer
Books UML UML distilled  Beginning java object / Wrox UML toolkit Building web application with UML / Addison Wesley OSP Applying UML and patterns 2 nd  Ed– Larman / Prentice Hall XP Extreme programming installed / Addison Wesley RUP Visual modeling with rational rose 2000 and uml / Addison Wesley The rational unified process an introduction / Addison Wesley
Ad

More Related Content

What's hot (20)

Memory Management in OS
Memory Management in OSMemory Management in OS
Memory Management in OS
Kumar Pritam
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
vampugani
 
Processor / CPU Scheduling
Processor / CPU SchedulingProcessor / CPU Scheduling
Processor / CPU Scheduling
Izaz Roghani
 
Lecture 6- Deadlocks.pptx
Lecture 6- Deadlocks.pptxLecture 6- Deadlocks.pptx
Lecture 6- Deadlocks.pptx
Amanuelmergia
 
File system structure
File system structureFile system structure
File system structure
sangrampatil81
 
Advanced Operating System- Introduction
Advanced Operating System- IntroductionAdvanced Operating System- Introduction
Advanced Operating System- Introduction
Debasis Das
 
Difference between Homogeneous and Heterogeneous
Difference between Homogeneous  and    HeterogeneousDifference between Homogeneous  and    Heterogeneous
Difference between Homogeneous and Heterogeneous
Faraz Qaisrani
 
Chapter 4 a interprocess communication
Chapter 4 a interprocess communicationChapter 4 a interprocess communication
Chapter 4 a interprocess communication
AbDul ThaYyal
 
Group Communication (Distributed computing)
Group Communication (Distributed computing)Group Communication (Distributed computing)
Group Communication (Distributed computing)
Sri Prasanna
 
Shared information systems
Shared information systemsShared information systems
Shared information systems
Himanshu
 
Transport Layer Numericals
Transport Layer NumericalsTransport Layer Numericals
Transport Layer Numericals
Manisha Keim
 
Naming in Distributed System
Naming in Distributed SystemNaming in Distributed System
Naming in Distributed System
MNM Jain Engineering College
 
File allocation methods (1)
File allocation methods (1)File allocation methods (1)
File allocation methods (1)
Dr. Jasmine Beulah Gnanadurai
 
File models and file accessing models
File models and file accessing modelsFile models and file accessing models
File models and file accessing models
ishmecse13
 
Deadlock in distribute system by saeed siddik
Deadlock in distribute system by saeed siddikDeadlock in distribute system by saeed siddik
Deadlock in distribute system by saeed siddik
Saeed Siddik
 
Distributed DBMS - Unit 1 - Introduction
Distributed DBMS - Unit 1 - IntroductionDistributed DBMS - Unit 1 - Introduction
Distributed DBMS - Unit 1 - Introduction
Gyanmanjari Institute Of Technology
 
Operating system 02 os as an extended machine
Operating system 02 os as an extended machineOperating system 02 os as an extended machine
Operating system 02 os as an extended machine
Vaibhav Khanna
 
BANKER'S ALGORITHM
BANKER'S ALGORITHMBANKER'S ALGORITHM
BANKER'S ALGORITHM
Muhammad Baqar Kazmi
 
Operating System Operations ppt.pptx
Operating System Operations ppt.pptxOperating System Operations ppt.pptx
Operating System Operations ppt.pptx
MSivani
 
Desktop and multiprocessor systems
Desktop and multiprocessor systemsDesktop and multiprocessor systems
Desktop and multiprocessor systems
V.V.Vanniaperumal College for Women
 
Memory Management in OS
Memory Management in OSMemory Management in OS
Memory Management in OS
Kumar Pritam
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
vampugani
 
Processor / CPU Scheduling
Processor / CPU SchedulingProcessor / CPU Scheduling
Processor / CPU Scheduling
Izaz Roghani
 
Lecture 6- Deadlocks.pptx
Lecture 6- Deadlocks.pptxLecture 6- Deadlocks.pptx
Lecture 6- Deadlocks.pptx
Amanuelmergia
 
Advanced Operating System- Introduction
Advanced Operating System- IntroductionAdvanced Operating System- Introduction
Advanced Operating System- Introduction
Debasis Das
 
Difference between Homogeneous and Heterogeneous
Difference between Homogeneous  and    HeterogeneousDifference between Homogeneous  and    Heterogeneous
Difference between Homogeneous and Heterogeneous
Faraz Qaisrani
 
Chapter 4 a interprocess communication
Chapter 4 a interprocess communicationChapter 4 a interprocess communication
Chapter 4 a interprocess communication
AbDul ThaYyal
 
Group Communication (Distributed computing)
Group Communication (Distributed computing)Group Communication (Distributed computing)
Group Communication (Distributed computing)
Sri Prasanna
 
Shared information systems
Shared information systemsShared information systems
Shared information systems
Himanshu
 
Transport Layer Numericals
Transport Layer NumericalsTransport Layer Numericals
Transport Layer Numericals
Manisha Keim
 
File models and file accessing models
File models and file accessing modelsFile models and file accessing models
File models and file accessing models
ishmecse13
 
Deadlock in distribute system by saeed siddik
Deadlock in distribute system by saeed siddikDeadlock in distribute system by saeed siddik
Deadlock in distribute system by saeed siddik
Saeed Siddik
 
Operating system 02 os as an extended machine
Operating system 02 os as an extended machineOperating system 02 os as an extended machine
Operating system 02 os as an extended machine
Vaibhav Khanna
 
Operating System Operations ppt.pptx
Operating System Operations ppt.pptxOperating System Operations ppt.pptx
Operating System Operations ppt.pptx
MSivani
 

Similar to Introducing Uml And Development Process (20)

Ch08
Ch08Ch08
Ch08
Humberto Bruno Pontes Silva
 
Ch08
Ch08Ch08
Ch08
guest50f28c
 
fdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.pptfdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.ppt
RAJESH S
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
naina-rani
 
System Modelling.ppt
System Modelling.pptSystem Modelling.ppt
System Modelling.ppt
AnishNarayan4
 
UML.pptx
UML.pptxUML.pptx
UML.pptx
RAJESH S
 
Quality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White BoxQuality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White Box
Kimberly Jones
 
Ooad overview
Ooad overviewOoad overview
Ooad overview
Dr. C.V. Suresh Babu
 
Ooad Overview
Ooad OverviewOoad Overview
Ooad Overview
Dang Tuan
 
Chapter1
Chapter1Chapter1
Chapter1
Dang Tuan
 
Bridge
BridgeBridge
Bridge
Islamia Univeristy Bahawalpur Bahawalnagar
 
Analysis modeling in software engineering
Analysis modeling in software engineeringAnalysis modeling in software engineering
Analysis modeling in software engineering
MuhammadTalha436
 
object oriented methodologies
object oriented methodologiesobject oriented methodologies
object oriented methodologies
Amith Tiwari
 
Analysis modeling
Analysis modelingAnalysis modeling
Analysis modeling
Inocentshuja Ahmad
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
VGaneshKarthikeyan
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
VGaneshKarthikeyan
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
VGaneshKarthikeyan
 
M02 Uml Overview
M02 Uml OverviewM02 Uml Overview
M02 Uml Overview
Dang Tuan
 
Intoduction to uml
Intoduction to umlIntoduction to uml
Intoduction to uml
Mahesh Bhalerao
 
Uml1 concepts
Uml1 conceptsUml1 concepts
Uml1 concepts
Nolan Neustaeter
 
Ad

More from Terry Cho (20)

Kubernetes #6 advanced scheduling
Kubernetes #6   advanced schedulingKubernetes #6   advanced scheduling
Kubernetes #6 advanced scheduling
Terry Cho
 
Kubernetes #4 volume &amp; stateful set
Kubernetes #4   volume &amp; stateful setKubernetes #4   volume &amp; stateful set
Kubernetes #4 volume &amp; stateful set
Terry Cho
 
Kubernetes #3 security
Kubernetes #3   securityKubernetes #3   security
Kubernetes #3 security
Terry Cho
 
Kubernetes #2 monitoring
Kubernetes #2   monitoring Kubernetes #2   monitoring
Kubernetes #2 monitoring
Terry Cho
 
Kubernetes #1 intro
Kubernetes #1   introKubernetes #1   intro
Kubernetes #1 intro
Terry Cho
 
머신러닝으로 얼굴 인식 모델 개발 삽질기
머신러닝으로 얼굴 인식 모델 개발 삽질기머신러닝으로 얼굴 인식 모델 개발 삽질기
머신러닝으로 얼굴 인식 모델 개발 삽질기
Terry Cho
 
5. 솔루션 카달로그
5. 솔루션 카달로그5. 솔루션 카달로그
5. 솔루션 카달로그
Terry Cho
 
4. 대용량 아키텍쳐 설계 패턴
4. 대용량 아키텍쳐 설계 패턴4. 대용량 아키텍쳐 설계 패턴
4. 대용량 아키텍쳐 설계 패턴
Terry Cho
 
3. 마이크로 서비스 아키텍쳐
3. 마이크로 서비스 아키텍쳐3. 마이크로 서비스 아키텍쳐
3. 마이크로 서비스 아키텍쳐
Terry Cho
 
서비스 지향 아키텍쳐 (SOA)
서비스 지향 아키텍쳐 (SOA)서비스 지향 아키텍쳐 (SOA)
서비스 지향 아키텍쳐 (SOA)
Terry Cho
 
1. 아키텍쳐 설계 프로세스
1. 아키텍쳐 설계 프로세스1. 아키텍쳐 설계 프로세스
1. 아키텍쳐 설계 프로세스
Terry Cho
 
애자일 스크럼과 JIRA
애자일 스크럼과 JIRA 애자일 스크럼과 JIRA
애자일 스크럼과 JIRA
Terry Cho
 
REST API 설계
REST API 설계REST API 설계
REST API 설계
Terry Cho
 
모바일 개발 트랜드
모바일 개발 트랜드모바일 개발 트랜드
모바일 개발 트랜드
Terry Cho
 
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
Terry Cho
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해
Terry Cho
 
머신 러닝 입문 #1-머신러닝 소개와 kNN 소개
머신 러닝 입문 #1-머신러닝 소개와 kNN 소개머신 러닝 입문 #1-머신러닝 소개와 kNN 소개
머신 러닝 입문 #1-머신러닝 소개와 kNN 소개
Terry Cho
 
R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작
Terry Cho
 
R 프로그래밍 기본 문법
R 프로그래밍 기본 문법R 프로그래밍 기본 문법
R 프로그래밍 기본 문법
Terry Cho
 
R 기본-데이타형 소개
R 기본-데이타형 소개R 기본-데이타형 소개
R 기본-데이타형 소개
Terry Cho
 
Kubernetes #6 advanced scheduling
Kubernetes #6   advanced schedulingKubernetes #6   advanced scheduling
Kubernetes #6 advanced scheduling
Terry Cho
 
Kubernetes #4 volume &amp; stateful set
Kubernetes #4   volume &amp; stateful setKubernetes #4   volume &amp; stateful set
Kubernetes #4 volume &amp; stateful set
Terry Cho
 
Kubernetes #3 security
Kubernetes #3   securityKubernetes #3   security
Kubernetes #3 security
Terry Cho
 
Kubernetes #2 monitoring
Kubernetes #2   monitoring Kubernetes #2   monitoring
Kubernetes #2 monitoring
Terry Cho
 
Kubernetes #1 intro
Kubernetes #1   introKubernetes #1   intro
Kubernetes #1 intro
Terry Cho
 
머신러닝으로 얼굴 인식 모델 개발 삽질기
머신러닝으로 얼굴 인식 모델 개발 삽질기머신러닝으로 얼굴 인식 모델 개발 삽질기
머신러닝으로 얼굴 인식 모델 개발 삽질기
Terry Cho
 
5. 솔루션 카달로그
5. 솔루션 카달로그5. 솔루션 카달로그
5. 솔루션 카달로그
Terry Cho
 
4. 대용량 아키텍쳐 설계 패턴
4. 대용량 아키텍쳐 설계 패턴4. 대용량 아키텍쳐 설계 패턴
4. 대용량 아키텍쳐 설계 패턴
Terry Cho
 
3. 마이크로 서비스 아키텍쳐
3. 마이크로 서비스 아키텍쳐3. 마이크로 서비스 아키텍쳐
3. 마이크로 서비스 아키텍쳐
Terry Cho
 
서비스 지향 아키텍쳐 (SOA)
서비스 지향 아키텍쳐 (SOA)서비스 지향 아키텍쳐 (SOA)
서비스 지향 아키텍쳐 (SOA)
Terry Cho
 
1. 아키텍쳐 설계 프로세스
1. 아키텍쳐 설계 프로세스1. 아키텍쳐 설계 프로세스
1. 아키텍쳐 설계 프로세스
Terry Cho
 
애자일 스크럼과 JIRA
애자일 스크럼과 JIRA 애자일 스크럼과 JIRA
애자일 스크럼과 JIRA
Terry Cho
 
REST API 설계
REST API 설계REST API 설계
REST API 설계
Terry Cho
 
모바일 개발 트랜드
모바일 개발 트랜드모바일 개발 트랜드
모바일 개발 트랜드
Terry Cho
 
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
Terry Cho
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해
Terry Cho
 
머신 러닝 입문 #1-머신러닝 소개와 kNN 소개
머신 러닝 입문 #1-머신러닝 소개와 kNN 소개머신 러닝 입문 #1-머신러닝 소개와 kNN 소개
머신 러닝 입문 #1-머신러닝 소개와 kNN 소개
Terry Cho
 
R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작
Terry Cho
 
R 프로그래밍 기본 문법
R 프로그래밍 기본 문법R 프로그래밍 기본 문법
R 프로그래밍 기본 문법
Terry Cho
 
R 기본-데이타형 소개
R 기본-데이타형 소개R 기본-데이타형 소개
R 기본-데이타형 소개
Terry Cho
 
Ad

Recently uploaded (20)

Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
TrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business ConsultingTrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business Consulting
Trs Labs
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded DevelopersLinux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Toradex
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
TrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business ConsultingTrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business Consulting
Trs Labs
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded DevelopersLinux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Toradex
 

Introducing Uml And Development Process

  • 1. Introducing Unified Modeling Language 2003-02-26 Byungwook Cho ([email protected])
  • 2. Table of contents What is UML? Elements of UML Use case diagram Activity diagram Class diagram Sequence diagram Collaboration diagram Component diagram Deployment diagram
  • 3. Key point Kind of UML diagram Role of each UML diagram Trace UML diagram
  • 4. 1. What is UML ? Unified Modeling Language Just Notation Goal To model system using object-oriented concepts. To visualize software structure To create modeling language useable by both humans and machines History 1994. Grady Booch (Booch Method), James Rumbaugh (OMT-2) 1995. Ivar Jacobson (OOSE and the Objectory) Rational Software (IBM.2002)
  • 5. 2. Elements of UML Elements of UML Things Relationships Diagram Interaction model of things
  • 6. 2. Elements of UML 1) Elements - Things Structural things Static things Class,Use case,Component,Nodes. Behavioral things Dynamic things. Message,States. Grouping things Aggregate elements of UML Package Annotational things Like comment. Note
  • 7. 2. Elements of UML 2) Elements - Relationship Dependency Association (method call etc.) Generalization Realization ( 특정 Things 를 구체화하여 표현하는 관계 )
  • 8. 2. Elements of UML 3) Elements – Diagrams Use case diagram Activity diagram Class diagram Sequence diagram Collaboration diagram Component diagram Deployment diagram
  • 9. UML Diagrams Use case Diagram Class Diagram Sequence Diagram Collaboration Diagram Activity Diagram Component Diagram Deployment Diagram Static Dynamic Analyze system domain (Use Case View) Relationship between class,object (Logical view) System structure and arrangement (Physical view or Implementation view) Development process
  • 10. 3. Use case diagram Use case Diagram Define interaction between system and external environment ※ external environment user,external system etc. Visualize system function and elements. Frequently used in analysis phase. Main factor in RUP Consists of Actor,Use case,Association -> Diagram Use case description Very Important!!
  • 11. 3. Use case Diagram Use case diagram ※ Think point : use case scope. Buy Drink Add Ice <<extend>> Insert Coin <<include>> Bending Machine Buyer
  • 12. 3. Use case Diagram Use case description Define use case do “What”, not “How”. Include Start condition. Functional flow of use case. Interaction within actor and use case. Data,selection,exception flow. ▷ Use case: Use case name ▷ Actor: Actor name that uses this use case ▷ Cross Reference : Requirement # in client requirement list ▷ Purpose: mission objective of this use case ▷ Overview: over view of this use case ▷ Type: Primary,Secondary, or Optional ▷ Main Flow ▷ Detailed Flow ▷ Alternative Flow ▷ Exception ○ Actor Action … … 4. … ○ System Response 3. … 시작조건 <Actor> <Event>
  • 13. 4. Activity / State Diagram Activity / State Diagram Modeling dynamic behavior of system. Can be used in modeling use case life cycle,system life cycle and object life cycle etc. Modeling object state transition (by event). Consists of Activity,Transition,Decision,Synchronization bars,State,Swim Lane ※ Activity Diagram – Business Process,Operation Algorithm. ※ State Diagram – Pre/Post condition of component.
  • 14. 4. Activity / State Diagram Working Check System Clock Input user action Display user action to screen action Wait for user action Refresh time [Time check] Run screen saver H [Time over] Press key or move mouse History State Sub state Sub state State transition
  • 15. 5. Class Diagram Class diagram A common techniques to modeling object oriented system. Modeling interaction within class/interface. Modeling in static view . Consists of Package,Class,Interface,Association. Class stereo type (Entity,Boundary,Control : MVC) Phase of class diagram Conceptual model (Not for software design, just for analysis) Logical model (None system dependent software structure,MVC) Implementation model (+ Architecture,System dependent)
  • 16. 5. Class Diagram Class Person{ Company employer = null; : }// Class Person Class Company{ : }// Class Company Multiplicity Association Name Role Name
  • 17. 6. Sequence Diagram Sequence diagram Dynamic diagram that describe interaction between object. Focus on time sequence . Define message between object Frequently be used in describing use case scenario. Can describe sequence,selection,iteration. ※ can be used in extract class method in logical class model. Consists of Actor,Object,Message object life cycle line,operation running time
  • 18. 6. Sequence Diagram Example) 1. GUI notify key stroke to OS 2. Os notify key stroke to CPU 3. OS update UI. 4. CPU request updating screen to video card. 5. Video Card send update screen to monitor. 6. Monitor display some character and feed back to use :GUI :OS :CPU :Video Card :Monitor Keystroke feedback 1.notify 2.notify 3.updateRequest 4. updateScreen Object Life cycle Operation running time User
  • 19. 6. Sequence Diagram :GUI :Os :CPU :Video Card :Monitor Keystroke feedback Init Process Exit ※ Sequence diagram with object state User
  • 20. 7. Collaboration Diagram Collaboration Diagram Dynamic diagram that describe interaction between object. Focus on collaboration structure and organization between object. Modeling link within object. (can extract to association in class diagram) Same as sequence diagram ※ Frequently used to define class method in “Implementation Class Diagram” Consists of Object,Link,Message,Data Token
  • 21. 7. Collaboration Diagram :GUI[Process] :OS :CPU :Video Card :Monitor Key stroke 1: notify(Key stroke) 4: notify(Key) 3: update(key stroke) 5: display(Key) 6: feedback() :GUI[Init] <<become>> State State transition User
  • 22. 8. Component Diagram Component diagram Define dependency between physical element of software and other elements (class etc.) Realize class in class diagram Consists of Package,Dependency,Interface,Component Component Source component Binary component (*.dll,*.class,beans) Executable component (*.exe,server)
  • 24. 9. Deployment Diagram Deployment Diagram Define ‘hardware deploy structure’ of each software element. Consists of Device,Process,Connection
  • 26. ※ UML diagram tracing relationship. Use case Diagram Activity/State Diagram Class Diagram Conceptual Model Logical Model Implementation Model Sequence Diagram Collaboration Diagram scenario class,attribute method UI Design Architecture DB Design Pattern Deployment Diagram Component Diagram ongoing Analyze system domain (Use Case View) Relationship between class,object (Logical view) System structure and arrangement (Implementation Diagram) Static Dynamic Use case Diagram use case realization realization deploy structure
  • 27. Object Oriented Software Development Process RUP,XP,OSP,SSADM,Information Engineering Methodolgy Key factor Incremental Iterative Device and conquer
  • 28. Books UML UML distilled Beginning java object / Wrox UML toolkit Building web application with UML / Addison Wesley OSP Applying UML and patterns 2 nd Ed– Larman / Prentice Hall XP Extreme programming installed / Addison Wesley RUP Visual modeling with rational rose 2000 and uml / Addison Wesley The rational unified process an introduction / Addison Wesley