Unified Modeling Language: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Membatalkan 1 suntingan by Arditaclaraa (bicara) (TW)
Tag: Pembatalan Suntingan perangkat seluler Suntingan peramban seluler Suntingan seluler lanjutan
 
(42 revisi perantara oleh 29 pengguna tidak ditampilkan)
Baris 1:
[[Berkas:UML logo.svg|nirbing|ka]]
[[Berkas:Uml diagram.svg |thumbjmpl|rightka|650px400px| Diagram UML]]'''Unified Modeling Language''' ('''UML''') adalah bahasa spesifikasi standar untuk mendokumentasikan, menspesifikasikan, dan membangun sistem [[perangkat lunak]].
 
== Pendahuluan ==
Baris 7 ⟶ 8:
 
== UML ==
Sampai era [[tahun]] [[1990]] puluhan metodologi pemodelan berorientasi objek telah bermunculan di [[dunia]].<ref name="sri">Sri Dharwiyanti (2003), ''Pengantar Unified Modeling Language (UML)'', IlmuKomputer.Com.</ref> Diantaranya adalah: metodologi booch, metodologi coad, metodologi OOSEOOSe, metodologi OMT, metodologi shlaer-mellor, metodologi wirfs-brock, dsb.<ref name="sri"/> Masa itu terkenal dengan masa perang metodologi (''method war'') dalam pendesainan berorientasi objek.<ref name="sri"/> Masing-masing metodologi membawa [[notasi]] sendiri-sendiri, yang mengakibatkan timbul masalah baru apabila kita bekerjasama dengan kelompok/perusahaan lain yang menggunakan metodologi yang berlainan.<ref name="sri"/>
 
Dimulai pada [[bulan]] [[Oktober]] [[1994]] Booch, Rumbaugh dan Jacobson, yang merupakan tiga [[tokoh]] yang boleh dikata metodologinya banyak digunakan mempelopori usaha untuk penyatuan metodologi pendesainan berorientasi objek.<ref name="sri"/> Pada tahun [[1995]] direlease draft pertama dari UML (versi 0.8).<ref name="sri"/>. Sejak tahun [[1996]] pengembangan tersebut dikoordinasikan oleh Object Management Group (OMG – http://www.omg.org).<ref name="sri"/>
 
== Diagram UML ==
UML menyediakan [[10]] macam diagram untuk memodelkan aplikasi berorientasi objek, yaitu:<ref name="php5">Ir. M. FARID AZIS, M. Kom, ''Object Oriented Programming Php 5'', halaman 118. Elex Media Komputindo.</ref>
 
* '''Use Case Diagram''' untuk memodelkan proses bisnis.
* '''Conceptual Diagram''' untuk memodelkan konsep-konsep yang ada di dalam aplikasi.
* '''Sequence Diagram''' untuk memodelkan pengiriman pesan (''message'') antar ''objects''.
* '''Collaboration Diagram''' untuk memodelkan interaksi antar ''objects''.
* '''State Diagram''' untuk memodelkan perilaku ''objects'' di dalam sistem.
* '''[[Diagram Aktivitas|Activity Diagram]]''' untuk memodelkan perilaku ''Use Cases'' dan ''objects'' di dalam ''system''.
* '''[[Class Diagram]]''' untuk memodelkan struktur kelas.
* '''Object Diagram''' untuk memodelkan struktur ''object''.
* '''[[Diagram komponen|Component Diagram']]'' untuk memodelkan komponen ''object''.
* '''Deployment Diagram''' untuk memodelkan distribusi aplikasi.
 
Berikut akan dijelaskan 4 macam diagram yang paling sering digunakan dalam pembangunan aplikasi berorientasi object, yaitu ''use case diagram, sequence diagram, collaboration diagram, dan class diagram''.<ref name="php5"/>
 
=== ''Use Case Diagram'' ===
'''Use case diagram''' digunakan untuk memodelkan [[bisnis|semua bisnis]] proses berdasarkan perspektif pengguna sistem. <ref name="php5"/> Use case diagram terdiri atas diagram untuk use case dan ''actor''.<ref name="php5"/> ''Actor'' merepresentasikan [[orang]] yang akan mengoperasikan atau orang yang behhhrinteraksiberinteraksi dengan sistem aplikasi.<ref name="php5"/>
 
Use case merepresentasikan operasi-operasi yang dilakukan oleh ''actor''.<ref name="php5"/> Use case digambarkan berbentuk [[elips]] dengan [[nama]] [[operasi]] dituliskan di dalamnya. ''Actor'' yang melakukan operasi dihubungkan dengan garis lurus ke use case.<ref name="php5"/>
 
=== ''Sequence Diagram'' ===
''Sequence Diagram'' merupakan gabungan dari Diagram Class dan diagram Object yang memiliki suatu gambaran model statis.Namun ada juga yang bersifat dinamis, seperti Diagram Interaction.Diagram sequence merupakan salah satu diagram Interaction yang menjelaskan bagaimana suatu operasi itu dilakukan; ''message'' (pesan) apa yang dikirimdan kapan pelaksanaannya. Diagram ini diatur berdasarkan waktu. Objek-objek yang berkaitan dengan proses berjalannya operasi diurutkan dari kiri ke kanan berdasarkan waktu terjadinya dalam pesan yang terurut.
'''Sequence diagram''' menjelaskan secara detail urutan proses yang dilakukan dalam sistem untuk mencapai tujuan dari use case: interaksi yang terjadi antar ''class'', operasi apa saja yang terlibat, urutan antar operasi, dan informasi yang diperlukan oleh masing-masing operasi.<ref name="jul">Julius Hermawan, ''Analisis Desain & Pemrograman Berorientasi Obyek dengan UML dan Visual Basic.NET''by Danoe Mraz.</ref>
 
=== ''Collaboration Diagram'' ===
'''Collaboration diagram''' dipakai untuk memodelkan interaksi antar object di dalam sistem.<ref name="php5"/> Berbeda dengan sequence diagram yang lebih menonjolkan kronologis dari operasi-operasi yang dilakukan, collaboration diagram lebih fokus pada pemahaman atas keseluruhan operasi yang dilakukan oleh object.<ref name="php5"/>
 
=== ''Class Diagramdiagram'' ===
''Class diagram'' menggambarkan struktur statis class di dalam sistem. class merepresentasikan sesuatu yang ditangani oleh sistem. class dapat berhubungan dengan yang lain melalui berbagai cara: ''associated'' (terhubung satu sama lain), ''dependent'' (satu class tergantung/menggunakan class yang lain), ''specialed'' (satu class merupakan spesialisasi dari class lainnya), atau ''package'' (group bersama sebagai satu unit). sebuah sistem biasanya mempunyai beberapa class diagram.
'''Class diagram''' <ref name="jul"/>
 
== Pranala luar ==
:* [http://www.uml.org/ UML® Resource Page]
:* [http://www.omg.org/technology/documents/formal/uml.htm Object Management Group1234 (OMG)]
:* [http://dn.codegear.com/article/31863 Practical UML (UML simple tutorial)]
 
== Referensi ==
{{reflist}}
== Pranala luar ==
:* [http://www.uml.org/ UML®Situs Resourceresmi PageUML]
:* [http://www.omg.org/technology/documents/formal/uml.htm Situs resmi Object Management Group1234 (OMG)Group]
{{Rekayasa perangkat lunak}}
 
[[Kategori:Notasi]]