Pages

Selasa, 17 April 2012

Cara membuat diagram pada Star UML

Saya akan membuat sebuah diagram yang menggunakan program apilkasi Star UML. Diagram yang saya buat ini merupakan diagram yang akan menjelaskan prosedur pendaftaran untuk mengikuti kursus di Universitas Gunadarma. Langkah pertama yang harus dilakukan adalah dengan membuka aplikasi Star UML, kemudian akan muncul jendela seperti di bawah ini.


Selanjutnya klik “Default Approach” untuk memulai project baru.
Lalu double klik UseCase Diagrams pada Diagram Explorer yang terletak di sebelah kanan, dan pilih Main.

Diagram ini terdiri dari beberapa actor, UseCase, dan Directed Association, dan satu buah Dependency. Actor adalah sebuah gambar yang melambangkan seorang pelaku. Pelaku melakukan aktivitas dan membantu segala kegiatan yang membutuhkan manusia. UseCase merupakan sebuah simbol elips yang berfungsi untuk menjelaskan proses apa yang harus dijalankan, biasanya usecase ini berisi sebuah kata perintah dan sebuah kata benda. Directed Association merupakan tanda panah yang berfungsi sebagai penunjuk arah dan alur dari diagram tersebut, sedangkan dependency merupakan tanda panah putus – putus yang memiliki arti bahwa  kedua objek yang dihubungkan itu saling berketergantungan.
            Sebelum membuat diagram tersebut kita harus menganalisa setiap proses yang terjadi, proses apa saja yang butuhkan dan proses mana saja yang harus dilakukan. Selain proses, actor atau pelaku juga sangat penting keberadaannya. Untuk membuat diagram kursus ini, kita membutuhkan tiga orang pelaku atau actor, yaitu mahasiswa, penjaga loket kursus, dan teller bank. Sedangkan proses – proses yang dibutuhkan terdapat sembilan proses, yaitu :
  1. Memilih kursus dan menyerahkan KTM
  2. Mendapatkan Blanko
  3. Menyerahkan blanko dan membayar kursus
  4. Input Data
  5. Cetak tanda lunas
  6. Mendapatkan bukti pembayaran
  7. Menyerahkan bukti pembayaran
  8. Mendapatkan jadwal kursus
  9. Mengikuti kursus
Setelah mendapatkan actor dan usecase, kita dapat memulai pembuatan diagram tersebut. Pertama, klik Actor yang terdapat di sebelah kiri jendela dan letakan pada layar putih Main. Kemudian ketikkan nama actor tersebut, misalnya mahasiswa.

Jika sudah, masukkan pula actor – actor yang lain, yaitu loket Kursus dan Teller bank. Selanjutnya kita akan membuat UseCase, dengan cara mengklik UseCase dan meletakannya di layar putih. Buat sembilan buah UseCase dan isi UseCase tersebut dengan proses – proses yang tadi sudah dianalisa (lihat gambar dibawah).
 
 
Kemudian hubungkan actor – actor tersebut dengan proses-prosesnya, dengan mengklik DirectedAssociation. Klik pada actor dan tarik garis ke proses yang akan dituju, perhatikan arah dan alurnya. Jika sudah selesai menghubungkan, buatlah UseCase – UseCase yang lain sampai seluruh proses sudah dituliskan. Hubungkan seluruh komponen yang ada sesuai alur dan arah yang ditentukan. Atur seluruh komponen agar dapat terbaca dengan mudah bagi orang yang belum pernah melakukannya. Perhatikan garis – garis DirectedAssociation, tidak boleh ada garis yang saling bertumpukan atau membuat persimpangan karena akan membuat si pelaku merasa kebingungan untuk melakukannya.
  

 Jika semua telah selesai, maka inilah output nya :
 
 

Keunggulan menggunakan UML dibandingkan menggunakan metodologi terstruktur

  • Uniformity
Pengembang cukup menggunakan 1 metodologi dari tahap analsis hingga perancangan. Memungkinkan merancang komponen antarmuka secara terintegrasi bersama perancangan PL dan perancangan struktur data
  • Understandability
Kode yang dihasilkan dapat diorganisasi kedalam kelas-kelas yangberhubungan dengan masalah sesungguhnya sehingga lebih mudah untuk dipahami.
  • Stability
Kode program yang dihasilkan relatif stabil sepanjang waktu, karena mendekati permasalahan yang sesungguhnya.
  • Reusability
Dengan metodologi berorientasi objek, dimungkinkan penggunaan ulang kode, sehingga pada akhirnya akan sangat mempercepat waktu pengembangan perangkat lunak (atau sistem informasi)

Area dan Tujuan Penggunaan UML

UML (Unified Modeling Language) digunakan paling efektif pada domain seperti:
  1. Sistem Informasi Perusahaan
  2. Sistem Perbankan dan Perekonomian
  3. Bidang Telekomunikasi
  4. Bidang Transportasi
  5. Bidang Penerbangan
  6. Bidang Perdagangan
  7. Bidang Pelayanan Elekronik
  8. Bidang Pengetahuan
  9. Bidang Pelayanan Berbasis Web Terdistribusi
UML tidak terbatas untuk pemodelan software saja. Pada faktanya UML banyak digunakan untuk memodelkan sistem non-software seperti:
  1. Aliran kerja pada sistem perundangan.
  2. Struktur dan kelakuan dari Sistem Kepedulian Kesehatan Pasien
  3. Desain hardware dll.

Tujuan Penggunaan UML

  1. Memberikan bahasa pemodelan yang bebas dari berbagai bahas pemrograman dan proses rekayasa.
  2. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan.
  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).
  5. Memodelkan suatu sistem (bukan hanya perangkat lunak) yang menggunakan konsep berorientasi object
  6. Menciptakan suatu bahasa pemodelan yang dapat digunakan baik oleh manusia maupun mesin.

BAGIAN-BAGIAN UML

Bagian-bagian utama dari UML adalah view, diagram, model element, dan general mechanism.
a. 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.

b. 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 diagramsdan kadang-kadang dengan activity diagrams. Viewini digunakan terutama untuk pelanggan, perancang (designer), pengembang (developer), dan penguji sistem (tester).

c. Logical view
Mendeskripsikan bagaimana fungsionalitas dari sistem, struktur statis (class, object,danrelationship ) 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).

d. Component view
Mendeskripsikan implementasi dan ketergantungan modul. Komponen yang merupakan tipe lainnya dari code module 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).

e. 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).

f. Deployment view
Mendeskripsikan fisik dari sistem seperti komputer dan perangkat (nodes) dan bagaimana hubungannya dengan lainnya.
View ini digambarkan dalam deployment diagramsdan digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester).

g. Diagram
Diagram berbentuk grafik yang menunjukkan simbol elemen model yang disusun untuk mengilustrasikan bagian atau aspek tertentu dari sistem. Sebuah diagram merupakan bagian dari suatu view tertentu dan ketika digambarkan biasanya dialokasikan untuk view tertentu. Adapun jenis diagram antara lain :
1. Use Case Diagram
Use case adalah abstraksi dari interaksi antara system dan actor. Use case bekerja dengan cara mendeskripsikan tipe interaksi antara user sebuah system dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah system dipakai. Use casemerupakan konstruksi untuk mendeskripsikan bagaimana system akan terlihat di mata user. Sedangkan use case diagram memfasilitasi komunikasi diantara analis dan pengguna serta antara analis dan client.

2Class Diagram
Class adalah dekripsi kelompok obyek-obyek dengan property, perilaku (operasi) dan relasi yang sama. Sehingga dengan adanya class diagram dapat memberikan pandangan global atas sebuah system. Hal tersebut tercermin dari class- class yang ada dan relasinya satu dengan yang lainnya. Sebuah sistem biasanya mempunyai beberapa class diagram. Class diagram sangat membantu dalam visualisasi struktur kelas dari suatu system.

3. 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. Sebuah komponent berisi informasi tentang logic class atau class yang diimplementasikan sehingga membuat pemetaan dari logical view ke component view.Sehingga component diagram merepresentasikan dunia riil yaitu component software yang mengandung component, interface dan relationship.

4. Deployment Diagram
Menggambarkan tata letak sebuah system secara fisik, menampakkan bagian-bagian software yang berjalan pada bagian-bagian hardware, menunjukkan hubungan komputer dengan perangkat (nodes) satu sama lain dan jenis hubungannya. Di dalam nodes,executeable component dan object yang dialokasikan untuk memperlihatkan unit perangkat lunak yang dieksekusi oleh node tertentu dan ketergantungan komponen.

5. State Diagram
Menggambarkan semua state (kondisi) yang dimiliki oleh suatu object dari suatu class dan keadaan yang menyebabkan state berubah. Kejadian dapat berupa object lain yang mengirim pesan. State class tidak digambarkan untuk semua class, hanya yang mempunyai sejumlah state yang terdefinisi dengan baik dan kondisi class berubah oleh stateyang berbeda.

6. Sequence Diagram
Sequence Diagram digunakan untuk menggambarkan perilaku pada sebuah scenario. Kegunaannya untuk menunjukkan rangkaian pesan yang dikirim antara object juga interaksi antaraobject, sesuatu yang terjadi pada titik tertentu dalam eksekusi sistem.

7. Collaboration Diagram
Menggambarkan kolaborasi dinamis sepertisequence diagrams. Dalam menunjukkan pertukaran pesan, collaboration diagrams menggambarkan objectdan hubungannya (mengacu ke konteks). Jika penekannya pada waktu atau urutan gunakansequencediagrams, tapi jika penekanannya pada konteks gunakan collaboration diagram.

8. Activity Diagram
Menggambarkan rangkaian aliran dari aktivitas, digunakan untuk mendeskripsikan aktifitas yang dibentuk dalam suatu operasi sehingga dapat juga digunakan untuk aktifitas lainnya seperti use caseatau interaksi.

Sejarah Singkat UML

UML dimulai secara resmi pada oktober 1994, ketika Rumbaugh bergabung dengan Booch pada Relational Software Corporation. Proyek ini memfokuskan pada penyatuan metode Booch dan OMT. UML versi 0.8 merupakan metode penyatuanyang dirilis pada bulan Oktober 1995. Dalam waktu yang sama, Jacobson bergabung dengan Relational dan cakupan dari UML semakin luas sampai diluar perusahaan OOSE. Dokumentasi UML versi 0.9 akhirnya dirilis pada bulan Juni 1996. Meskipun pada  tahun 1996 ini  melihat dan  menerima feedback dari  komunitas Software Engineering.
Dalam waktu tersebut, menjadi lebih jelas bahwa beberapa organisasi perangkat lunak melihat UML sebagai strategi dari bisnisnya. Kemudian dibangunla hUML Consortium dengan beberapa organisasi yang akan menyumbangkan sumber dayanya untuk bekerja, mengembangkan, dan melengkapi UML. Di sini beberapa partner yang berkontribusi pada UML 1.0, diantaranya Digita lEquipment Corporation, Hewlett-Packard, I-Logix, Intellicorp, IBM, ICON Computing, MCI Systemhouse, Microsoft, Oracle, Relational, Texas Instruments dan Unisys. Dari kolaborasi ini dihasilkan UML 1.0 yang merupakan bahasa pemodelan yang ditetapkan secara baik,expressive, kuat, dan cocok untuk lingkungan masalahyang luas. UML 1.0 ditawarkan menjadi standarisasi dari Object Management Group (OMG). Dan pada Januari 1997 dijadikan sebagai standar bahasa pemodelan.
Antara Januari–Juli 1997 gabungan group tersebut memperluas kontribusinya sebagai hasil respon dari OMG dengan memasukkan Adersen Consulting, Ericsson, Object Time Limeted, Platinum Technology, Ptech, Reich Technologies, Softeam,Sterling Software dan Taskon. Revisi dari versi UML (versi 1.1) ditawarkan kepada OMG sebagai standarisasi pada bulan Juli 1997. Dan pada bulan September 1997,versi ini dierima oleh OMG Analysis dan Design Task Force (ADTF) dan OMG Architecture Board. Dan Akhirnya pada Juli 1997 UML versi 1.1 menjadi standarisasi.
Pemeliharaan UML terus dipegang oleh OMG Revision Task Force (RTF) yang dipimpin oleh Cris Kobryn. RTP merilis editorial dari UML 1.2 pada Juni 1998. Danpada tahun 1998 RTF juga merilis UML 1.3 disertai dengan user guidedan memberikan technical cleanup.

Pengertian UML

UML adalah bahasa untuk mengspesifikasi, memvisualisasi,membangun dan mendokumentasikan artefacts (bagian dari informasiyang digunakan atau  dihasilkan oleh  proses pembuatan perangkat lunak, seperti pada pemodelan bisnis dan sistem non  perangkat lunak lainnya.

Pengertian UML Lainnya :

UML (Unified Modeling Language) merupakan pengganti dari metode analisis berorientasi object dan design berorientasi object (OOA&D) yang dimunculkansekitar akhir tahun 80-an dan awal tahun 90-an.UML merupakan gabungan dari metode Booch, Rumbaugh (OMT) dan Jacobson.Tetapi UML ini akan mencakup lebih luas daripada OOA&D. Pada pertengahan pengembangan UML dilakukan standarisasi proses dengan OMG (Object Management Group) dengan harapan UML akan menjadi bahasa standar pemodelan pada  masa  yang  akan  datang.
UML disebut sebagai bahasa pemodelan bukan metode. Kebanyakan metode terdiri paling sedikit prinsip, bahasa pemodelan dan proses. Bahasa pemodelan (sebagian besar grafik) merupakan notasi dari metode yang digunakan untuk mendesain secara cepat.
Bahasa pemodelan merupakan bagian terpenting dari metode. Ini merupakan bagian kunci tertentu untuk komunikasi. Jika anda ingin berdiskusi tentang desain dengan seseorang, maka Anda hanya membutuhkan bahasa pemodelan bukan proses yang digunakan untuk mendapatkan desain.
UML merupakan bahasa standar untuk penulisan blueprint software yang digunakan untuk visualisasi, spesifikasi, pembentukan dan pendokumentasian alat-alat dari sistem perangkat  lunak.