Senin, 02 Desember 2013

Penjelasan UML , Bagian Bagian UML dan Jenis Jenis Diagramnya

UML (Unified Modeling Language) dan Jenis - Jenis Diagramnya

     UML (Unified Modeling Language) adalah sebuah bahasa untuk menentukan, visualisasi, kontruksi, dan juga mendokumentasikan artifact (bagian dari informasi yang digunakan atau dihasilkan dalam suatu proses pembuatan perangkat lunak. Artifact dapat berupa model, deskripsi atau perangkat lunak) dari sistem perangkat lunak, seperti pada pemodelan bisnis dan sistem non perangkat lunak lainnya.
     UML tidak hanya merupakan sebuah bahasa pemograman visual saja, namun juga dapat secara langsung dihubungkan ke berbagai bahasa pemograman, seperti JAVA, C++, Visual Basic, atau bahkan dihubungkan secara langsung ke dalam sebuah object-oriented database.


BAGIAN-BAGIAN UML
            
        1. View
    View digunakan untuk melihat sistem yang dimodelkan dari beberapa aspek yang berbeda. View bukan melihat grafik, tapi merupakan suatu abstraksi yang berisi sejumlah diagram. Beberapa jenis view dalam UML antara lain : use case view, logical view, component view, concurrency view, dan deployment view.

        2. Use case View
  Mendeskripsikan fungsionalitas sistem yang seharusnya dilakukan sesuai yang diinginkan external actors. Actor yang berinteraksi dengan sistem dapat berupa user atau sistem lainnya. View ini digambarkan dalam use case diagrams dan kadang-kadang dengan activity diagrams. View ini digunakan terutama untuk pelanggan, perancang (designer), pengembang (developer), dan penguji sistem (tester).

        3. Logical View
  Mendeskripsikan bagaimana fungsionalitas dari sistem, struktur statis (class, object, dan relationship ) dan kolaborasi dinamis yang terjadi ketika  object  mengirim pesan ke object lain dalam suatu fungsi tertentu. View ini digambarkan dalam class diagrams untuk struktur statis dan dalam state, sequence, collaboration, dan activity diagram untuk model dinamisnya. View ini digunakan untuk perancang (designer) dan pengembang (developer).
4. Component View 
   Mendeskripsikan implementasi dan ketergantungan modul. Komponen yang merupakan tipe lainnya dari code modul diperlihatkan dengan struktur dan ketergantungannya juga alokasi sumber daya komponen dan informasi administrative lainnya. View ini digambarkan dalam component view dan digunakan untuk pengembang (developer). 
5. Concurrency View 
   Membagi sistem ke dalam proses dan prosesor. View ini digambarkan dalam diagram dinamis (state, sequence, collaboration, dan activity diagrams) dan diagram implementasi (component dan deployment diagrams) serta digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester).
6. Deployment View 
   Mendeskripsikan fisik dari sistem seperti komputer dan perangkat (nodes) dan bagaimana hubungannya dengan yang lain. View ini digambarkan dalam deployment diagrams dan digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester). 


Aplikasi StarUML :
STARUML sering digunakan untuk membuat alur atau proses suatu prosedur program yang ingin dibuat dengan cara menggambarkan model perangkatnya. Didalam STARUML terdapat bagian-bagian utama dari UML yaitu view, diagram, model element, dan general mechanism. Selain itu juga terdapat diagram-diagram yg sering digunakan, yaitu :

a. Use Case Diagram
  Use case diagram adalah abstraksi dari interaksi antara system dan actor. Dalam use case diagram ini menggunakan actor sebagai awal pemula dan seterusnya dilakukan dengan use case yang dapat diisi dengan proses-proses yang sedang dilakukan. use case diagram memfasilitasi komunikasi diantara analis dan pengguna serta antara analis dan client.

b. Class Diagram
    Class diagram digunakan untuk mengelompokkan hal-hal inti dari setiap proses yang ingin dilakukan. Semua proses di masukkan ke dalam tiap-tiap class dan saling dihubungkan pada class-class lainnya yang saling berhubungan.

c. Component Diagram
   Component software merupakan bagian fisik dari sebuah system, karena menetap di komputer tidak berada di benak para analis. Komponent merupakan implementasi software dari sebuah atau lebih class. Komponent dapat berupa source code, komponent biner, atau executable component.


d. Deployment Diagram
  Deployment menggambarkan software-software yang digunakan dalam membuat suatu program yang nanti dituliskan pada tiap-tiap node dan dihubungkan pada masing-masing node.

e. State Diagram
    Menggambarkan semua kondisi dari suatu object dari suatu class dan keadaan. Diawali dengan intialstate sebagai diawal dan diakhiri dengan finalstate. Stateclass hanya digambarkan untuk beberapa object saja.

f. Sequence Diagram
  Sequence diagram digunakan untuk menggambarkan menggunakan classifierrole untuk menentukan actor dan bagian - bagiannya menggunakan message untuk menyampaikan pesan.

g. Collaboration Diagram
    Collaboration diagram menggunakan object sebagai tempat pertukaran pesan dan dihubungkan dengan menggunakan forwardstimulus. Jika penekannya pada waktu atau urutan gunakan sequence diagrams, tapi jika penekanannya pada konteks gunakan collaboration diagram.

h. Activity Diagram
  Menggambarkan alur dari aktifitas. Dideskripsikan menggunakan intialstate dan diakhiri menggunakan finalstate. Jika ada pilihan menggunakan synchronization.


i. Conceptual Diagram 
Untuk memodelkan konsep-konsep yang ada di dalam aplikasi.

j. Object Diagram 
  Untuk memodelkan struktur object. Pada object diagram digambarkan hubungan antar elemen dalam model, tapi dengan memakai objeknya, bukan class. Class ialah kumpulan dari objek-objek yang memiliki attribute, behaviour atau operation yang sama.

k. Interaction Overview 
    Diagram  menunjukan  layout  dari  activity diagram untuk memodelkan alur dari logic dalam sekumpulan interaksi.
 
l. Package Diagram 
   Menggambarkan dekomposisi dari sistem menjadi unit-unit dan hubungan ketergantungannya.
m. Timing Diagram
    Menyediakan perubahan statis yang menekankan pada waktu sebenarnya.

Tujuan Penggunaan UML
1.
Menyatukan praktek-praktek terbaik yang terdapat dalam 
    pemodelan.
2. Memberikan bahasa pemodelan yang bebas dari berbagai 
    bahas pemrograman dan proses rekayasa. 3. Memberikan model yang siap pakai, bahsa pemodelan  
    visual  yang ekspresif untuk mengembangkan dan saling 
   menukar model dengan mudah dan dimengerti secara umum.
4. UML bisa juga berfungsi sebagai sebuah (blue print) cetak 

    biru karena sangat lengkap dan detail. Dengan cetak biru ini 
    maka akan bias diketahui informasi secara detail tentang 
    coding program atau bahkan membaca program dan  
    menginterpretasikan kembali ke dalam bentuk diagram   
    (reserve enginering).