Diagram komponen: Perbedaan antara revisi
Impor teks terkontrol dari Wikipedia bahasa Indonesia; revisi 26877157; atribusi sumber disertakan. |
Presentation V4: sitasi, referensi, Math, Wikimedia Commons, dan atribusi |
||
| Baris 1: | Baris 1: | ||
'''Diagram komponen''' adalah diagram yang menggambarkan struktur fisik dari sebuah [[sistem]] dan digunakan untuk mengilustrasikan bagaimana kode program dibagi menjadi beberapa komponen, dan mendeksripsikan hubungan antar komponen. Diagram komponen memberikan gambaran tingkat tinggi dan sederhana dari sebuah sistem. Mengklasifikasikan sekelompok [[Class (computer programming)|kelas]] menjadi komponen akan membantu pertukaran dan penggunaan kembali dari sebuah kode. Tujuan dari diagram komponen adalah menunjukkan hubungan struktural antar komponen dalam sebuah sistem. | [[File:Policy_Admin_Component_Diagram.PNG|thumb|right|280px|Policy Admin Component Diagram]] | ||
'''Diagram komponen''' adalah diagram yang menggambarkan struktur fisik dari sebuah [[sistem]] dan digunakan untuk mengilustrasikan bagaimana kode program dibagi menjadi beberapa komponen, dan mendeksripsikan hubungan antar komponen.<ref>Whitten, J. L. [http://worldcat.org/oclc/830686210 Systems Analysis and design methods]. Times Mirror. 1986. ISBN 0801654645.</ref> Diagram komponen memberikan gambaran tingkat tinggi dan sederhana dari sebuah sistem. Mengklasifikasikan sekelompok [[Class (computer programming)|kelas]] menjadi komponen akan membantu pertukaran dan penggunaan kembali dari sebuah kode. Tujuan dari diagram komponen adalah menunjukkan hubungan struktural antar komponen dalam sebuah sistem.<ref>[https://online.visual-paradigm.com/tutorials/component-diagram-tutorial/ Component Diagram Tutorial]. ''online.visual-paradigm.com''.</ref> | |||
== Notasi Diagram Komponen == | == Notasi Diagram Komponen == | ||
{| class="wikitable" | |||
|+Notasi Diagram Komponen | |||
!Nama | |||
!Deskripsi | |||
!Simbol | |||
|- | |||
|''Component'' | |||
|Komponen digambar sebagai persegi panjang dengan kompartemen yang ditumpuk secara vertikal. Sebuah komponen dapat digambarkan hanya dengan persegi panjang dengan nama komponen dan stereotip teks/ikon komponen. Stereotip teks komponen adalah <<component>> dan stereotip ikon komponen adalah persegi panjang dengan 2 persegi panjang menonjol di sisi kirinya.<ref>[https://online.visual-paradigm.com/tutorials/component-diagram-tutorial/ Component Diagram Tutorial]. ''online.visual-paradigm.com''.</ref> | |||
| | |||
|- | |||
|''Provided Interface'' | |||
|Mendefinisikan seperangkat [[Attribute (computing)|atribut]] dan [[Method (computer programming)|operasi]] publik yang harus disediakan oleh kelas yang mengimplementasikan ''[[Protocol (object-oriented programming)|interface]]''.<ref>[https://online.visual-paradigm.com/tutorials/component-diagram-tutorial/ Component Diagram Tutorial]. ''online.visual-paradigm.com''.</ref> | |||
| | |||
|- | |||
|''Required Interface'' | |||
|Mendefinisikan seperangkat atribut dan operasi publik yang dibutuhkan oleh kelas yang bergantung pada ''interface''.<ref>[https://online.visual-paradigm.com/tutorials/component-diagram-tutorial/ Component Diagram Tutorial]. ''online.visual-paradigm.com''.</ref> | |||
| | |||
|- | |||
|''Ball-and-Socket Joint'' | |||
|Komponen dapat terhubung untuk membentuk subsistem dengan menggunakan ''ball-and-socket joint'' (gabungan antara ''provided interface'' dan ''required interface'').<ref>[https://online.visual-paradigm.com/tutorials/component-diagram-tutorial/ Component Diagram Tutorial]. ''online.visual-paradigm.com''.</ref> | |||
| | |||
|- | |||
|''Port'' | |||
|Mengindikasikan bahwa komponen tersebut tidak menyediakan ''interface'' yang dibutuhkan (contoh: ''required'' atau ''provided''). Sebagai gantinya, komponen mendelegasikan ''interface'' ke kelas internal.<ref>[https://online.visual-paradigm.com/tutorials/component-diagram-tutorial/ Component Diagram Tutorial]. ''online.visual-paradigm.com''.</ref> | |||
| | |||
|} | |||
== Stereotip Standar Komponen == | |||
{| class="wikitable" | |||
|+Stereotip Standar UML pada Komponen | |||
!Nama | |||
!Deskripsi | |||
|- | |||
|<<BuildComponent>> | |||
|Kumpulan elemen yang didefinisikan untuk kegiatan pengembangan pada level sistem, seperti kompilasi dan [[Software versioning|versi]].<ref>[https://www.uml-diagrams.org/component.html UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment]. ''www.uml-diagrams.org''.</ref> | |||
|- | |||
|<<Entity>> | |||
|Komponen informasi yang mewakili konsep bisnis, contohnya 'konsumen'.<ref>[https://www.uml-diagrams.org/component.html UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment]. ''www.uml-diagrams.org''.</ref> | |||
|- | |||
|<<Implement>> | |||
|Komponen yang tidak ditujukan untuk memiliki spesifikasi tersendiri. Sebaliknya, komponen ini merupakan implementasi untuk <<spesification>> terpisah yang memiliki ketergantungan (''[[Dependency (UML)|dependency]]'').<ref>[https://www.uml-diagrams.org/component.html UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment]. ''www.uml-diagrams.org''.</ref> | |||
|- | |||
|<<Process>> | |||
|Komponen berbasis transaksi.<ref>[https://www.uml-diagrams.org/component.html UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment]. ''www.uml-diagrams.org''.</ref> | |||
|- | |||
|<<Realization>> | |||
|[[Classifier (UML)|Classifier]] yang menentukan domain dari sebuah [[Object (computer science)|objek]] dan juga mendefinisikan implementasi fisik dari objek tersebut. | |||
Contohnya, komponen berstereotip <<Realization>> hanya akan memiliki ''[https://www.uml-diagrams.org/component-realization.html realizing classifier]'' yang mengimplementasikan ''[[Class (computer programming)#Behavior|behavior]]'' yang ditentukan oleh komponen <<Spesification>>. Hal ini berbeda dari <<ImplementationClass>> karena ''[[Class (computer programming)|implementation class]]'' merupakan realisasi dari kelas yang dapat memiliki fitur seperti atribut dan operasi yang berguna bagi desainer sistem.<ref>[https://www.uml-diagrams.org/component.html UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment]. ''www.uml-diagrams.org''.</ref> | |||
|- | |||
|<Service>> | |||
|Komponen fungsional tanpa status. | |||
|- | |||
|<<Spesification>> | |||
|''Classifier'' yang menentukan domain dari sebuah objek tanpa mendefinisikan implementasi fisik dari objek tersebut. | |||
Contohnya, komponen berstereotip <<Specification>> hanya akan memiliki ''provided'' dan ''required interfaces'', dan tidak ditujukan untuk memiliki ''realizing classifier'' sebagai bagian dari definisinya. | |||
<<Spesification>> dan <<Realization>> digunakan untuk memodelkan komponen dengan spesifikasi dan realisasi khusus, di mana satu spesifikasi dapat memiliki banyak realisasi.<ref>[https://www.uml-diagrams.org/component.html UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment]. ''www.uml-diagrams.org''.</ref> | |||
|- | |||
|<<Subsystem>> | |||
|Komponen yang merepresentasikan unit dekomposisi hirarkis untuk sistem besar dan digunakan untuk memodelkan komponen berskala besar. Sebuah [[System|subsistem]] dapat memiliki elemen spesifikasi dan realisasi.<ref>[https://www.uml-diagrams.org/component.html UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment]. ''www.uml-diagrams.org''.</ref> | |||
|} | |||
== Sejarah == | == Sejarah == | ||
| Baris 16: | Baris 77: | ||
Pada UML 1.4.2. <<subsystem>> merupakan jenis khusus dari package yang digunakan untuk merepresentasikan unit behavioral pada sistem, dan dalam model, dan berperan sebagai unit spesifikasi untuk ''behavior'' dari elemen-elemen model yang terkandung di dalamnya. <<Subsystem>> menjadi stereotip komponen untuk mewakili unit dekomposisi hirarkis untuk sistem besar di UML 2.0. | Pada UML 1.4.2. <<subsystem>> merupakan jenis khusus dari package yang digunakan untuk merepresentasikan unit behavioral pada sistem, dan dalam model, dan berperan sebagai unit spesifikasi untuk ''behavior'' dari elemen-elemen model yang terkandung di dalamnya. <<Subsystem>> menjadi stereotip komponen untuk mewakili unit dekomposisi hirarkis untuk sistem besar di UML 2.0. | ||
UML 2.0 juga mengenalkan stereotip komponen <<BuildComponent>>, <<Implement>> dan <<Service>>. | UML 2.0 juga mengenalkan stereotip komponen <<BuildComponent>>, <<Implement>> dan <<Service>>.<ref>[https://www.uml-diagrams.org/component.html UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment]. ''www.uml-diagrams.org''.</ref> | ||
== Referensi == | == Referensi == | ||
<references /> | |||
== Sumber dan atribusi == | |||
Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=Diagram+komponen&oldid=26877157 Wikipedia bahasa Indonesia], revisi 26877157 (2025-02-03T01:35:40Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Gambar pada artikel ini bersumber dari Wikimedia Commons dan mengikuti ketentuan lisensi masing-masing berkas. Mohon gunakan konten dan media secara bijak serta sesuai dengan ketentuan lisensi yang berlaku. | |||
<!-- WIKI_UNISSULA_PRESENTATION_V4 --> | |||
Revisi terkini sejak 23 Agustus 2026 04.05
Diagram komponen adalah diagram yang menggambarkan struktur fisik dari sebuah sistem dan digunakan untuk mengilustrasikan bagaimana kode program dibagi menjadi beberapa komponen, dan mendeksripsikan hubungan antar komponen.[1] Diagram komponen memberikan gambaran tingkat tinggi dan sederhana dari sebuah sistem. Mengklasifikasikan sekelompok kelas menjadi komponen akan membantu pertukaran dan penggunaan kembali dari sebuah kode. Tujuan dari diagram komponen adalah menunjukkan hubungan struktural antar komponen dalam sebuah sistem.[2]
Notasi Diagram Komponen
| Nama | Deskripsi | Simbol |
|---|---|---|
| Component | Komponen digambar sebagai persegi panjang dengan kompartemen yang ditumpuk secara vertikal. Sebuah komponen dapat digambarkan hanya dengan persegi panjang dengan nama komponen dan stereotip teks/ikon komponen. Stereotip teks komponen adalah <<component>> dan stereotip ikon komponen adalah persegi panjang dengan 2 persegi panjang menonjol di sisi kirinya.[3] | |
| Provided Interface | Mendefinisikan seperangkat atribut dan operasi publik yang harus disediakan oleh kelas yang mengimplementasikan interface.[4] | |
| Required Interface | Mendefinisikan seperangkat atribut dan operasi publik yang dibutuhkan oleh kelas yang bergantung pada interface.[5] | |
| Ball-and-Socket Joint | Komponen dapat terhubung untuk membentuk subsistem dengan menggunakan ball-and-socket joint (gabungan antara provided interface dan required interface).[6] | |
| Port | Mengindikasikan bahwa komponen tersebut tidak menyediakan interface yang dibutuhkan (contoh: required atau provided). Sebagai gantinya, komponen mendelegasikan interface ke kelas internal.[7] |
Stereotip Standar Komponen
| Nama | Deskripsi |
|---|---|
| <<BuildComponent>> | Kumpulan elemen yang didefinisikan untuk kegiatan pengembangan pada level sistem, seperti kompilasi dan versi.[8] |
| <<Entity>> | Komponen informasi yang mewakili konsep bisnis, contohnya 'konsumen'.[9] |
| <<Implement>> | Komponen yang tidak ditujukan untuk memiliki spesifikasi tersendiri. Sebaliknya, komponen ini merupakan implementasi untuk <<spesification>> terpisah yang memiliki ketergantungan (dependency).[10] |
| <<Process>> | Komponen berbasis transaksi.[11] |
| <<Realization>> | Classifier yang menentukan domain dari sebuah objek dan juga mendefinisikan implementasi fisik dari objek tersebut.
Contohnya, komponen berstereotip <<Realization>> hanya akan memiliki realizing classifier yang mengimplementasikan behavior yang ditentukan oleh komponen <<Spesification>>. Hal ini berbeda dari <<ImplementationClass>> karena implementation class merupakan realisasi dari kelas yang dapat memiliki fitur seperti atribut dan operasi yang berguna bagi desainer sistem.[12] |
| <Service>> | Komponen fungsional tanpa status. |
| <<Spesification>> | Classifier yang menentukan domain dari sebuah objek tanpa mendefinisikan implementasi fisik dari objek tersebut.
Contohnya, komponen berstereotip <<Specification>> hanya akan memiliki provided dan required interfaces, dan tidak ditujukan untuk memiliki realizing classifier sebagai bagian dari definisinya. <<Spesification>> dan <<Realization>> digunakan untuk memodelkan komponen dengan spesifikasi dan realisasi khusus, di mana satu spesifikasi dapat memiliki banyak realisasi.[13] |
| <<Subsystem>> | Komponen yang merepresentasikan unit dekomposisi hirarkis untuk sistem besar dan digunakan untuk memodelkan komponen berskala besar. Sebuah subsistem dapat memiliki elemen spesifikasi dan realisasi.[14] |
Sejarah
Notasi komponen sebagai classifier berbentuk persegi panjang dengan kata kunci <<component>> dikenalkan dalam UML 2.0. Pada versi sebelumnya, UML 1.x, notasi komponen berbentuk persegi panjang dengan dua persegi panjang kecil menonjol dari sisinya. Untuk alasan kesesuaian, notasi ini masih boleh digunakan pada UML 2.5.
Pada UML 1.4.2 stereotip <<entity>> merepresentasikan kelas pasif, contohnya kelas yang objeknya tidak menginisiasi interaksi pada dirinya sendiri. <<Entity>> menjadi komponen informasi tetap pada UML 2.0.
Stereotip <<process>> menentukan classifier yang merepresentasikan aliran kontrol pada UML 1.4.2. <<Process>> menjadi komponen berbasis transaksi pada UML 2.0.
Pada UML 1.4.2. <<subsystem>> merupakan jenis khusus dari package yang digunakan untuk merepresentasikan unit behavioral pada sistem, dan dalam model, dan berperan sebagai unit spesifikasi untuk behavior dari elemen-elemen model yang terkandung di dalamnya. <<Subsystem>> menjadi stereotip komponen untuk mewakili unit dekomposisi hirarkis untuk sistem besar di UML 2.0.
UML 2.0 juga mengenalkan stereotip komponen <<BuildComponent>>, <<Implement>> dan <<Service>>.[15]
Referensi
- ↑ Whitten, J. L. Systems Analysis and design methods. Times Mirror. 1986. ISBN 0801654645.
- ↑ Component Diagram Tutorial. online.visual-paradigm.com.
- ↑ Component Diagram Tutorial. online.visual-paradigm.com.
- ↑ Component Diagram Tutorial. online.visual-paradigm.com.
- ↑ Component Diagram Tutorial. online.visual-paradigm.com.
- ↑ Component Diagram Tutorial. online.visual-paradigm.com.
- ↑ Component Diagram Tutorial. online.visual-paradigm.com.
- ↑ UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment. www.uml-diagrams.org.
- ↑ UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment. www.uml-diagrams.org.
- ↑ UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment. www.uml-diagrams.org.
- ↑ UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment. www.uml-diagrams.org.
- ↑ UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment. www.uml-diagrams.org.
- ↑ UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment. www.uml-diagrams.org.
- ↑ UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment. www.uml-diagrams.org.
- ↑ UML component is a class representing a modular part of a system with encapsulated content and whose manifestation is replaceable within its environment. www.uml-diagrams.org.
Sumber dan atribusi
Konten artikel ini diadaptasi dari Wikipedia bahasa Indonesia, revisi 26877157 (2025-02-03T01:35:40Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Gambar pada artikel ini bersumber dari Wikimedia Commons dan mengikuti ketentuan lisensi masing-masing berkas. Mohon gunakan konten dan media secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.