SlideShare une entreprise Scribd logo
1  sur  51
Télécharger pour lire hors ligne
BAB XI
Component Diagram
Component Diagram
• Component diagram menggambarkan struktur dan
  hubungan antar komponen piranti lunak, termasuk
  ketergantungan (dependency) diantaranya.
• Komponen piranti lunak : modul berisi code, baik berisi
  source code maupun binary code, baik library maupun
  executable, baik yang muncul pada compile time, link
  time maupun run time.
• Umumnya komponen terbentuk dari beberapa class dan
  atau package, tapi dapat juga berupa interface, yaitu
  kumpulan layanan yang disediakan sebuah komponen
  untuk komponen lainnya.
Component Diagram
- Bersifat statis
- Merancang produk
- Memperlihatkan organisasi serta
  kebergantungan pada komponen-
  komponen yang telah ada sebelumnya
- Berhubungan dengan diagram kelas.
Component Diagram
• Menggambarkan alokasi semua class dan object kedalam
  komponen dalam desain fisik system software, termasuk
  pengaturan dan kebergantungan antar komponen software
• Component dapat terdiri dari
   – logical component, seperti business component, process
     component, dll
   – Physical component (software arsitektur) , seperti Com+, dot
     NET,CORBA, dll

• Component digambarkan
  dengan bentuk pada UML versi 1.*:
• Pada UML versi 2 digambarkan dengan bentuk

              atau           atau              atau
•
• Stereotypes yang dapat digambarkan pada bentuk component
  <<application>>,kumpulan aplikasi system
  <<executable>>,component yang jalan di client
   <<file>>, data file
  <<infrastructure>>, technical component didalam system
  <<source code>>, source file                           <<database>>
   <<table>>, table data dalam sebuah database           <<document>>
  <<UI>>, User interface (screen, pages, report)         <<library>>
  dll                                                    <<web service>>
                                                         <<XML DTD>>
Component Diagram
  Dependencies
• dimodelkan dengan garis terputus dengan panah terbuka
• gambarkan dependencies dari kiri ke kanan
  Contoh:
  <<ASP>> Source Code bergantung pada
  <<database>> MySQL
• Dimungkinkan sebuah component dependencies pada interfaces
  component lainnya
  Contoh:


Inheritance
• inheriting/child component diletakkan dibawah parent component, dengan
  arah panah menuju ke parent component
• dimodelkan dengan garis dengan panah tertutup
Contoh:
Interfaces - Component Diagram

• Interfaces adalah kumpulan >=1 methode dan >=0 attribute yang dapat
  dipakai pada class tanpa menjadi behavior suatu class.
• Jenis interface ada 2 macam yaitu :
   – Provide, digambarkan dengan bentuk lollipop
       Pada UML 1.* bisa juga digambarkan dengan garis terputus dengan
       panah tertutup
     – Required, digambarkan dengan bentuk socket
•   Penggambaran
    interfaces dapat juga
    dilakukan dengan
    menambah bagian
    component seperti
    contoh dibawah ini




    Bentuk grafik
Component Diagram

port
• adalah bentuk object yang menjelaskan interaksi antara object dan
  lingkungannya
• digambarkan sebagai kotak kecil di pinggiran component <<component>>
Assembly connector                                            Order
• Penghubung antara
  2/lebih component
  dimana
  sebuah/beberapa
  component provides
  interfaces dan
  component lain required
  interfaces
• Digambarkan dengan
  gabungan bentuk
  interfaces
  contoh:
Penggunaan Component Diagrams
•   When you model the static implementation view
    of a system, you'll typically use component
    diagrams in one of four ways
    –   To model source code
    –   To model executable releases
    –   To model physical databases
    –   To model adaptable systems
Modeling Source Code
•   Either by forward or reverse engineering, identify
    the set of source code files of interest and model
    them as components stereotyped as files.
•   For larger systems, use packages to show
    groups of source code files.
•   Model the compilation dependencies among
    these files using dependencies. Again, use tools
    to help generate and manage these
    dependencies.
Modeling Source Code (cont.)
Modeling an Executable Release
•    Executable Release
     –   main executable (usually, a .exe file)
     –   libraries (commonly .dll files if you are working
         in the context of COM+, or .class and .jar files if
         you are working in the context of Java)
     –   Databases
     –   help files, and resource files
Modeling an Executable Release
 •   To model an executable release
     –   Identify the set of components you'd like to
         model.
     –   Consider the stereotype of each component
         in this set. (such as executables, libraries,
         tables, files, and documents)
     –   For each component in this set, consider its
         relationship to its neighbors
Modeling an
Executable
 Release
Modeling a Physical Database
•    To model a physical database
    –   Identify the classes in your model that represent
        your logical database schema
    –   Select a strategy for mapping these classes to
        tables. Use one of three strategies :
        •   Define a separate table for each class
        •   Collapse your inheritance lattices so that all instances
            of any class in a hierarchy has the same state
        •   Separate parent and child states into different tables
Modeling a Physical Database
– To visualize, specify, construct, and
  document your mapping, create a
  component diagram that contains
  components stereotyped as tables.
– Where possible, use tools to help you
  transform your logical design into a physical
  design
Modeling a Physical Database
Modeling Adaptable Systems
•   To model an adaptable system
    –   Consider the physical distribution of the components
        that may migrate from node to node can specify the
        location of a component instance by marking it with a
        location tagged value, which you can then render in
        a component diagram (although, technically
        speaking, a diagram that contains only instances is
        an object diagram).
    –   If you want to model the actions that cause a
        component to migrate, create a corresponding
        interaction diagram that contains component
        instances.
Modeling Adaptable Systems
Forward and Reverse Engineering
•   When you forward engineer a class or a
    collaboration, you really forward engineer to a
    component that represents the source code,
    binary library, or executable for that class or
    collaboration
•   when you reverse engineer source code, binary
    libraries, or executables, you really reverse
    engineer to a component or set of components
    that, in turn, trace to classes or collaborations.
Predefined Component Diagram
         Stereotypes
• File
   – Usually a source code file
• Binary / Library
   – Usually a compiled segment directly linkable into other
     compilations
• Executable
   – Usually a directly executable module
• Table
   – Usually a database table
• Page
   – Usually a Web page
• Document
   – Usually a documentation file (as opposed to compilable code)
Example of a UML Component Diagram
Example of Source Code
    Dependencies
     <<page>>
     home.html




      <<file>>      <<document>>
     aProg.java       aProg.doc




    <<file>>        <<document>>
anotherProg.java   anotherProg.doc
Runtime Component
     Example

<<library>>    <<library>>     <<library>>
comms.dll      graphics.dll     dbgate.dll




              <<executable>>
                viewer.exe
Component Diagram
• Shows an
  encapsulated class
  and its interfaces,
  ports, and internal
  structure consisting of
  nested components
  and connectors
• Addresses the static
  design
  implementation view
  of a system
Component Diagram Example in UML 1.4
Component Diagram Example
        in UML 2
contoh
                                                       Register.exe
  Billing.exe
                        Billing
                       System




                                                                      People.dll
                                                                                         User
                          Course.dll
                                               Course




                                                           Student                 Professor

Course                     Course
                           Offering




                Copyright © 1997 by Rational Software Corporation
NOTE :
Component and Composite
   Structure Diagrams
Component and Composite
   Structure Diagrams

• A component diagram shows the
  internal parts, connectors, and ports
  that implement a component
• A composite structure diagram shows
  the internal structure of a class or a
  collaboration
• The difference between component and
  composite structure is small and we will
  treat them both as component diagrams
Terms and Concepts

• An interface is a collection of operations that specify
  a service that is provided by or requested from a
  class or component
• A component is a replaceable part of a system that
  conforms to and provides the realization of a set of
  interfaces
• A port is a specific window into an encapsulated
  component accepting messages to and from the
  component conforming to specified interfaces
Terms and Concepts (con’t)

 • Internal structure is the implementation of a
   component by means of a set of parts that are
   connected together in a specific way
 • A part is the specification of a role that composes
   part of the implementation of a component.
    – In an instance of the component, there is an instance
      corresponding to the part

 • A connector is a communication relationship between
   two parts or ports within the context of a component
Components

• A component is a replaceable part of a
 system that conforms to and provides
 the realization of a set of interfaces

• Graphically, a component is rendered
 as a rectangle with a small two-pronged
 icon in its upper right corner
Components and Interfaces

 • An interface is a collection of operations
   that are used to specify a service of a
   class or a component
 • An interface that a component realizes
   is called a provided interface
   – An interface that the component provides
     as a service to other components
Components and Interfaces
• An interface that a component uses is called
  a required interface
  – An interface that the component conforms to when
    requesting services from other components
• A given interface may be provided by one
  component and required by another
• A component that uses a given interface will
  function properly no matter what component
  realizes that interface
Components and Interfaces
Binary Replaceability
• The basic intent of every component-
 based operating system facility is to
 permit the assembly of systems from
 binary replaceable parts
  – Can create a system out of components
    and then evolve that system by adding new
    components and replacing old ones
Characteristics of A
          Component
• It is replaceable
• It is part of a system
• It conforms to and provides the realization of a set
  of interfaces
• Component diagrams can be used for both logical
  and physical modeling
   – Component diagrams are often used for physical
     modeling of the software architectures of systems
Organizing Components

• Can organize components by grouping
 them in packages in the same manner
 in which one organizes classes
• Can organize components by specifying
 dependency, generalization, association
 (including aggregation), and realization
 relationship among them
Ports
• A port is an explicit window into an
  encapsulated component
• A port has identity
• Ports permit the interfaces of a component to
  be divided into discrete packets and used
  independently
• A port is shown as a small square straddling
  the border of a component
  – It represents a hole through the encapsulation
    boundary of the component
Ports (con’t)
• Both provided and required interfaces may be
  attached to a port
  – A provided interface represents a service that can
    be requested through that port
  – A required interface represents a service that the
    port needs to obtain from some other component
• Each port has a name so that it can be
  uniquely identified given the component and
  the port name
• Ports are part of a component
Ports
Internal Structure
• The internal structure of a component is
  the parts that compose the
  implementation of the component
  together with the connections among
  them
• A part is a unit of the implementation of
  a component
  – A part has a name and a type
Parts within A Component
Parts of the Same Type
Connector
• A wire between two ports is called a
  connector
• Show connectors in two ways
  – If two components are wired explicitly,
    draw a line between them or their ports
  – If two components are connected because
    they have compatible interfaces, use a
    ball-and-socket notation
• A delegation connector wires internal
  ports to external ports of the overall
  component
Connectors
Component Diagrams

• A component diagram shows an
 encapsulated class and its interfaces,
 ports, and internal structure consisting
 of nested components and connectors
• Component diagrams address the static
 design implementation view of a system
Example of Component Diagram
Bab 11 component diagram 2010

Contenu connexe

Tendances (20)

Chapter9
Chapter9Chapter9
Chapter9
 
Component diagram and Deployment Diagram
Component diagram and Deployment DiagramComponent diagram and Deployment Diagram
Component diagram and Deployment Diagram
 
11 deployment diagrams
11 deployment diagrams11 deployment diagrams
11 deployment diagrams
 
Uml basic
Uml basicUml basic
Uml basic
 
Component diagram
Component diagramComponent diagram
Component diagram
 
Deployment Diagram Example Templates
Deployment Diagram Example TemplatesDeployment Diagram Example Templates
Deployment Diagram Example Templates
 
Bab 12 deployment diagram 2010
Bab 12 deployment diagram 2010Bab 12 deployment diagram 2010
Bab 12 deployment diagram 2010
 
Uml deployment diagram
Uml deployment diagramUml deployment diagram
Uml deployment diagram
 
Ch12
Ch12Ch12
Ch12
 
Component Diagram
Component DiagramComponent Diagram
Component Diagram
 
Dynamic modeling
Dynamic modelingDynamic modeling
Dynamic modeling
 
Arch06 1
Arch06 1Arch06 1
Arch06 1
 
Uml2
Uml2Uml2
Uml2
 
What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?
 
UML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxUML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptx
 
Modeling software architecture with uml
Modeling software architecture with umlModeling software architecture with uml
Modeling software architecture with uml
 
Uml
UmlUml
Uml
 
Uml
UmlUml
Uml
 
Uml with detail
Uml with detailUml with detail
Uml with detail
 
Unit 1- OOAD ppt
Unit 1- OOAD  pptUnit 1- OOAD  ppt
Unit 1- OOAD ppt
 

Similaire à Bab 11 component diagram 2010

OOAD Anna University Notes Unit - III.ppt
OOAD Anna University  Notes Unit - III.pptOOAD Anna University  Notes Unit - III.ppt
OOAD Anna University Notes Unit - III.pptBlessingChristiana2
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineeringRupesh Vaishnav
 
software engineering Architecture and design Unit 3.pptx
software engineering Architecture and design Unit 3.pptxsoftware engineering Architecture and design Unit 3.pptx
software engineering Architecture and design Unit 3.pptxSomnathMule5
 
Software requirement specification Unit 3.pptx
Software requirement specification Unit 3.pptxSoftware requirement specification Unit 3.pptx
Software requirement specification Unit 3.pptxSomnathMule5
 
Chapter 3_Software Design sunorganisedASE_BW_finalised.ppt
Chapter 3_Software Design sunorganisedASE_BW_finalised.pptChapter 3_Software Design sunorganisedASE_BW_finalised.ppt
Chapter 3_Software Design sunorganisedASE_BW_finalised.pptBule Hora University
 
Architectural Modeling
Architectural ModelingArchitectural Modeling
Architectural ModelingAMITJain879
 
Advanced Structural Modeling
Advanced Structural ModelingAdvanced Structural Modeling
Advanced Structural ModelingAMITJain879
 
Chapter 3 UML Structured Diagrams.pptx
Chapter 3 UML Structured Diagrams.pptxChapter 3 UML Structured Diagrams.pptx
Chapter 3 UML Structured Diagrams.pptxditsinieves
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagramsbarney92
 
Moeed SDA LAB2.pptx
Moeed SDA LAB2.pptxMoeed SDA LAB2.pptx
Moeed SDA LAB2.pptxUnknownCraft
 
An Introduction To Software Development - Architecture & Detailed Design
An Introduction To Software Development - Architecture & Detailed DesignAn Introduction To Software Development - Architecture & Detailed Design
An Introduction To Software Development - Architecture & Detailed DesignBlue Elephant Consulting
 
Reverse Architecting using Relation Algebra.pdf
Reverse Architecting using Relation Algebra.pdfReverse Architecting using Relation Algebra.pdf
Reverse Architecting using Relation Algebra.pdfDharmalingam Ganesan
 

Similaire à Bab 11 component diagram 2010 (20)

Chapter 9
Chapter 9Chapter 9
Chapter 9
 
OOAD Anna University Notes Unit - III.ppt
OOAD Anna University  Notes Unit - III.pptOOAD Anna University  Notes Unit - III.ppt
OOAD Anna University Notes Unit - III.ppt
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineering
 
software engineering Architecture and design Unit 3.pptx
software engineering Architecture and design Unit 3.pptxsoftware engineering Architecture and design Unit 3.pptx
software engineering Architecture and design Unit 3.pptx
 
Intoduction to uml
Intoduction to umlIntoduction to uml
Intoduction to uml
 
Software requirement specification Unit 3.pptx
Software requirement specification Unit 3.pptxSoftware requirement specification Unit 3.pptx
Software requirement specification Unit 3.pptx
 
Chapter 3_Software Design sunorganisedASE_BW_finalised.ppt
Chapter 3_Software Design sunorganisedASE_BW_finalised.pptChapter 3_Software Design sunorganisedASE_BW_finalised.ppt
Chapter 3_Software Design sunorganisedASE_BW_finalised.ppt
 
Architectural Modeling
Architectural ModelingArchitectural Modeling
Architectural Modeling
 
06 uml-component
06 uml-component06 uml-component
06 uml-component
 
Advanced Structural Modeling
Advanced Structural ModelingAdvanced Structural Modeling
Advanced Structural Modeling
 
Chapter 3 UML Structured Diagrams.pptx
Chapter 3 UML Structured Diagrams.pptxChapter 3 UML Structured Diagrams.pptx
Chapter 3 UML Structured Diagrams.pptx
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagrams
 
Moeed SDA LAB2.pptx
Moeed SDA LAB2.pptxMoeed SDA LAB2.pptx
Moeed SDA LAB2.pptx
 
UML tutorial
UML tutorialUML tutorial
UML tutorial
 
UML
UMLUML
UML
 
An Introduction To Software Development - Architecture & Detailed Design
An Introduction To Software Development - Architecture & Detailed DesignAn Introduction To Software Development - Architecture & Detailed Design
An Introduction To Software Development - Architecture & Detailed Design
 
Reverse Architecting using Relation Algebra.pdf
Reverse Architecting using Relation Algebra.pdfReverse Architecting using Relation Algebra.pdf
Reverse Architecting using Relation Algebra.pdf
 
Software Patterns
Software PatternsSoftware Patterns
Software Patterns
 
Sda 9
Sda   9Sda   9
Sda 9
 
Software Design Patterns
Software Design PatternsSoftware Design Patterns
Software Design Patterns
 

Plus de donasiilmu

Plus de donasiilmu (20)

Penjelasan strukturdata
Penjelasan strukturdataPenjelasan strukturdata
Penjelasan strukturdata
 
Isi
IsiIsi
Isi
 
Dftr isi
Dftr isiDftr isi
Dftr isi
 
Pengantar
PengantarPengantar
Pengantar
 
9 materisim komputer
9 materisim komputer9 materisim komputer
9 materisim komputer
 
Interaksi manusia dan komputer
Interaksi manusia dan komputerInteraksi manusia dan komputer
Interaksi manusia dan komputer
 
Makalah jaringan-komputer2
Makalah jaringan-komputer2Makalah jaringan-komputer2
Makalah jaringan-komputer2
 
Makalah jaringan-komputer2
Makalah jaringan-komputer2Makalah jaringan-komputer2
Makalah jaringan-komputer2
 
Apsi
ApsiApsi
Apsi
 
Data flow diagram
Data flow diagramData flow diagram
Data flow diagram
 
Erd
ErdErd
Erd
 
Norma lisasi
Norma lisasiNorma lisasi
Norma lisasi
 
Pertemuan4
Pertemuan4Pertemuan4
Pertemuan4
 
Pertemuan5
Pertemuan5Pertemuan5
Pertemuan5
 
Pertemuan6
Pertemuan6Pertemuan6
Pertemuan6
 
Pertemuan7
Pertemuan7Pertemuan7
Pertemuan7
 
Pertemuan9
Pertemuan9Pertemuan9
Pertemuan9
 
Pertemuan10
Pertemuan10Pertemuan10
Pertemuan10
 
Pertemuan10
Pertemuan10Pertemuan10
Pertemuan10
 
Pertemuan11
Pertemuan11Pertemuan11
Pertemuan11
 

Dernier

Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseAnaAcapella
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the ClassroomPooky Knightsmith
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxAmanpreet Kaur
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...Poonam Aher Patil
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701bronxfugly43
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024Elizabeth Walsh
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxDr. Sarita Anand
 

Dernier (20)

Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 

Bab 11 component diagram 2010

  • 2. Component Diagram • Component diagram menggambarkan struktur dan hubungan antar komponen piranti lunak, termasuk ketergantungan (dependency) diantaranya. • Komponen piranti lunak : modul berisi code, baik berisi source code maupun binary code, baik library maupun executable, baik yang muncul pada compile time, link time maupun run time. • Umumnya komponen terbentuk dari beberapa class dan atau package, tapi dapat juga berupa interface, yaitu kumpulan layanan yang disediakan sebuah komponen untuk komponen lainnya.
  • 3. Component Diagram - Bersifat statis - Merancang produk - Memperlihatkan organisasi serta kebergantungan pada komponen- komponen yang telah ada sebelumnya - Berhubungan dengan diagram kelas.
  • 4. Component Diagram • Menggambarkan alokasi semua class dan object kedalam komponen dalam desain fisik system software, termasuk pengaturan dan kebergantungan antar komponen software • Component dapat terdiri dari – logical component, seperti business component, process component, dll – Physical component (software arsitektur) , seperti Com+, dot NET,CORBA, dll • Component digambarkan dengan bentuk pada UML versi 1.*: • Pada UML versi 2 digambarkan dengan bentuk atau atau atau
  • 5. • • Stereotypes yang dapat digambarkan pada bentuk component <<application>>,kumpulan aplikasi system <<executable>>,component yang jalan di client <<file>>, data file <<infrastructure>>, technical component didalam system <<source code>>, source file <<database>> <<table>>, table data dalam sebuah database <<document>> <<UI>>, User interface (screen, pages, report) <<library>> dll <<web service>> <<XML DTD>>
  • 6. Component Diagram Dependencies • dimodelkan dengan garis terputus dengan panah terbuka • gambarkan dependencies dari kiri ke kanan Contoh: <<ASP>> Source Code bergantung pada <<database>> MySQL • Dimungkinkan sebuah component dependencies pada interfaces component lainnya Contoh: Inheritance • inheriting/child component diletakkan dibawah parent component, dengan arah panah menuju ke parent component • dimodelkan dengan garis dengan panah tertutup Contoh:
  • 7. Interfaces - Component Diagram • Interfaces adalah kumpulan >=1 methode dan >=0 attribute yang dapat dipakai pada class tanpa menjadi behavior suatu class. • Jenis interface ada 2 macam yaitu : – Provide, digambarkan dengan bentuk lollipop Pada UML 1.* bisa juga digambarkan dengan garis terputus dengan panah tertutup – Required, digambarkan dengan bentuk socket • Penggambaran interfaces dapat juga dilakukan dengan menambah bagian component seperti contoh dibawah ini Bentuk grafik
  • 8. Component Diagram port • adalah bentuk object yang menjelaskan interaksi antara object dan lingkungannya • digambarkan sebagai kotak kecil di pinggiran component <<component>> Assembly connector Order • Penghubung antara 2/lebih component dimana sebuah/beberapa component provides interfaces dan component lain required interfaces • Digambarkan dengan gabungan bentuk interfaces contoh:
  • 9. Penggunaan Component Diagrams • When you model the static implementation view of a system, you'll typically use component diagrams in one of four ways – To model source code – To model executable releases – To model physical databases – To model adaptable systems
  • 10. Modeling Source Code • Either by forward or reverse engineering, identify the set of source code files of interest and model them as components stereotyped as files. • For larger systems, use packages to show groups of source code files. • Model the compilation dependencies among these files using dependencies. Again, use tools to help generate and manage these dependencies.
  • 12. Modeling an Executable Release • Executable Release – main executable (usually, a .exe file) – libraries (commonly .dll files if you are working in the context of COM+, or .class and .jar files if you are working in the context of Java) – Databases – help files, and resource files
  • 13. Modeling an Executable Release • To model an executable release – Identify the set of components you'd like to model. – Consider the stereotype of each component in this set. (such as executables, libraries, tables, files, and documents) – For each component in this set, consider its relationship to its neighbors
  • 15. Modeling a Physical Database • To model a physical database – Identify the classes in your model that represent your logical database schema – Select a strategy for mapping these classes to tables. Use one of three strategies : • Define a separate table for each class • Collapse your inheritance lattices so that all instances of any class in a hierarchy has the same state • Separate parent and child states into different tables
  • 16. Modeling a Physical Database – To visualize, specify, construct, and document your mapping, create a component diagram that contains components stereotyped as tables. – Where possible, use tools to help you transform your logical design into a physical design
  • 18. Modeling Adaptable Systems • To model an adaptable system – Consider the physical distribution of the components that may migrate from node to node can specify the location of a component instance by marking it with a location tagged value, which you can then render in a component diagram (although, technically speaking, a diagram that contains only instances is an object diagram). – If you want to model the actions that cause a component to migrate, create a corresponding interaction diagram that contains component instances.
  • 20. Forward and Reverse Engineering • When you forward engineer a class or a collaboration, you really forward engineer to a component that represents the source code, binary library, or executable for that class or collaboration • when you reverse engineer source code, binary libraries, or executables, you really reverse engineer to a component or set of components that, in turn, trace to classes or collaborations.
  • 21. Predefined Component Diagram Stereotypes • File – Usually a source code file • Binary / Library – Usually a compiled segment directly linkable into other compilations • Executable – Usually a directly executable module • Table – Usually a database table • Page – Usually a Web page • Document – Usually a documentation file (as opposed to compilable code)
  • 22. Example of a UML Component Diagram
  • 23. Example of Source Code Dependencies <<page>> home.html <<file>> <<document>> aProg.java aProg.doc <<file>> <<document>> anotherProg.java anotherProg.doc
  • 24. Runtime Component Example <<library>> <<library>> <<library>> comms.dll graphics.dll dbgate.dll <<executable>> viewer.exe
  • 25.
  • 26. Component Diagram • Shows an encapsulated class and its interfaces, ports, and internal structure consisting of nested components and connectors • Addresses the static design implementation view of a system
  • 29. contoh Register.exe Billing.exe Billing System People.dll User Course.dll Course Student Professor Course Course Offering Copyright © 1997 by Rational Software Corporation
  • 30. NOTE : Component and Composite Structure Diagrams
  • 31. Component and Composite Structure Diagrams • A component diagram shows the internal parts, connectors, and ports that implement a component • A composite structure diagram shows the internal structure of a class or a collaboration • The difference between component and composite structure is small and we will treat them both as component diagrams
  • 32. Terms and Concepts • An interface is a collection of operations that specify a service that is provided by or requested from a class or component • A component is a replaceable part of a system that conforms to and provides the realization of a set of interfaces • A port is a specific window into an encapsulated component accepting messages to and from the component conforming to specified interfaces
  • 33. Terms and Concepts (con’t) • Internal structure is the implementation of a component by means of a set of parts that are connected together in a specific way • A part is the specification of a role that composes part of the implementation of a component. – In an instance of the component, there is an instance corresponding to the part • A connector is a communication relationship between two parts or ports within the context of a component
  • 34. Components • A component is a replaceable part of a system that conforms to and provides the realization of a set of interfaces • Graphically, a component is rendered as a rectangle with a small two-pronged icon in its upper right corner
  • 35. Components and Interfaces • An interface is a collection of operations that are used to specify a service of a class or a component • An interface that a component realizes is called a provided interface – An interface that the component provides as a service to other components
  • 36. Components and Interfaces • An interface that a component uses is called a required interface – An interface that the component conforms to when requesting services from other components • A given interface may be provided by one component and required by another • A component that uses a given interface will function properly no matter what component realizes that interface
  • 38. Binary Replaceability • The basic intent of every component- based operating system facility is to permit the assembly of systems from binary replaceable parts – Can create a system out of components and then evolve that system by adding new components and replacing old ones
  • 39. Characteristics of A Component • It is replaceable • It is part of a system • It conforms to and provides the realization of a set of interfaces • Component diagrams can be used for both logical and physical modeling – Component diagrams are often used for physical modeling of the software architectures of systems
  • 40. Organizing Components • Can organize components by grouping them in packages in the same manner in which one organizes classes • Can organize components by specifying dependency, generalization, association (including aggregation), and realization relationship among them
  • 41. Ports • A port is an explicit window into an encapsulated component • A port has identity • Ports permit the interfaces of a component to be divided into discrete packets and used independently • A port is shown as a small square straddling the border of a component – It represents a hole through the encapsulation boundary of the component
  • 42. Ports (con’t) • Both provided and required interfaces may be attached to a port – A provided interface represents a service that can be requested through that port – A required interface represents a service that the port needs to obtain from some other component • Each port has a name so that it can be uniquely identified given the component and the port name • Ports are part of a component
  • 43. Ports
  • 44. Internal Structure • The internal structure of a component is the parts that compose the implementation of the component together with the connections among them • A part is a unit of the implementation of a component – A part has a name and a type
  • 45. Parts within A Component
  • 46. Parts of the Same Type
  • 47. Connector • A wire between two ports is called a connector • Show connectors in two ways – If two components are wired explicitly, draw a line between them or their ports – If two components are connected because they have compatible interfaces, use a ball-and-socket notation • A delegation connector wires internal ports to external ports of the overall component
  • 49. Component Diagrams • A component diagram shows an encapsulated class and its interfaces, ports, and internal structure consisting of nested components and connectors • Component diagrams address the static design implementation view of a system