Share Everything to Everyone

Tampilkan postingan dengan label ADBO. Tampilkan semua postingan
Tampilkan postingan dengan label ADBO. Tampilkan semua postingan

Selasa, 11 November 2014

USE CASE DIAGRAM

09.35 Posted by ROSYID'S BLOG No comments
Article ini merupakan lanjutan dari  : UML
  • Diagram  use case merupakan pemodelan untuk menggambarkan kelakuan (behavior) sistem yang akan dibuat.
  • Diagram use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem yang akan dibuat.
  • Diagram use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem dan siapa saja yang berhak menggunakan fungsi-fungsi tersebut. Yang ditekankan pada diagram ini adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”.
  • Sebuah use case merepresentasikan sebuah interaksi antara aktor (user atau sistem lainya) dengan sistem.
  • Use case menjelaskan secara sederhana fungsi sistem dari sudut pandang user.
use case
Penjelasan  bagian bagian use case diagram
1. System
Menyatakan batasan sistem dalam relasi dengan actor-actor yang menggunakannya (di luar sistem) dan fitur-fitur yang harus disediakan (dalam sistem). Digambarkan dengan segi empat yang membatasi semua use case dalam sistem terhadap pihak mana sistem akan berinteraksi. Sistem disertai label yang menyebutkan nama dari sistem, tapi umumnya tidak digambarkan karena tidak terlalu memberi arti tambahan pada diagram.
2. Actor
Aktor adalah segala hal diluar sistem yang akan menggunakan sistem tersebut
untuk melakukan sesuatu. Bisa merupakan manusia, sistem, atau device yang memiliki peranan dalam keberhasilan operasi dari sistem. Cara mudah untuk menemukan aktor adalah dengan bertanya hal-hal berikut:  SIAPA yang akan menggunakan sistem?  APAKAH sistem tersebut akan memberikan NILAI bagi aktor?
3. Use case
Mengidentifikasi fitur kunci dari sistem. Tanpa fitur ini, sistem tidak akan memenuhi permintaan user/actor. Setiap use case mengekspresikan goal dari sistem yang harus dicapai. Diberi nama sesuai dengan goal-nya dan digambarkan dengan elips dengan nama di dalamnya. Fokus tetap pada goal bukan bagaimana mengimplementasikannya walaupun use case berimplikasi pada prosesnya nanti. Setiap use case biasanya memiliki trigger/pemicu yang menyebabkan use case memulai (misalnya,Pasien mendaftar dan membuat janji baru atau meminta untuk membatalkan atau mengubah janji yang sudah ada ).ada 2 triger pertama triger eksternal, seperti pelanggan memesan atau alarm kebakaran berbunyi, kedua triger temporal, seperti tanggal pengembalian buku terlewati di perpustakaan atau keterlambatan bayar sewa.
4. Assosiation
Mengidentifikasikan interaksi antara setiap actor tertentu dengan setiap use case tertentu. Digambarkan sebagai garis antara actor terhadap use case yang bersangkutan. Asosiasi bisa berarah (garis dengan anak panah) jika komunikasi satu arah, namun umumnya terjadi kedua arah (tanpa anak panah) karena selalu diperlukan demikian.
5 Dependency
Dependensi <<include>>
  • o Mengidentifikasi hubungan antar dua use case di mana yang satu memanggil yang lain.
  • o Jika pada beberapa use case terdapat bagian yang memiliki aktivitas yang sama maka bagian aktivitas tersebut biasanya dijadikan use case tersendiri dengan relasi dependensi setiap use case semula ke use case yang baru ini sehingga memudahkan pemeliharaan.
  •  Digambarkan dengan garis putus-putus bermata panah dengan notasi <<include>> pada garis.
  • o Arah mata panah sesuai dengan arah pemanggilan.
Dependensi <<extend>>
o Jika pemanggilan memerlukan adanya kondisi tertentu maka berlaku dependensi <<extend>>.
o Note: konsep “extend” ini berbeda dengan “extend” dalam Java!
o Digambarkan serupa dengan dependensi <<include>> kecuali arah panah berlawanan.
6. Generalization
Mendefinisikan relasi antara dua actor atau dua use case yang mana salah satunya meng-inherit dan menambahkan atau override sifat dari yang lainnya. Penggambaran menggunakan garis bermata panah kosong dari yang meng-inherit mengarah ke yang di-inherit.
Menyusun Diagram Use case
Langkah-langkah yang dibutuhkan untuk menyusun diagram use case adalah:
  • Mengidentifikasi pelaku bisnis
  • Mengidentifikasi use case persyaratan bisnis
  • Membuat diagram model use case
  • Mendokumentasikan naratif use case persyaratan bisnis
Practical guidance dalam membangun diagram use case:
  • Set konteks dari target sistem.
  • Identifikasi semua actor.
  • Identifikasi semua use case.
  • Definisikan asosiasi antara setiap actor dan setiap use case.
  • Evaluasi setiap actor dan setiap use case untuk mendapatkan kemungkinan perbaikan.
  • Evaluasi setiap use case untuk dependensi <<include>>.
  • Evaluasi setiap use case untuk dependensi <<extend>>.
  • Evaluasi setiap actor dan setiap use case untuk generalisasi.
Use case Description
Setiap use case harus dijelaskan alur prosesnya melalui sebuah deskripsi use case (use case description) atau scenario use case.
Deskripsi use case berisi:
  • Nama use case yaitu penamaan use case yang menggunakan kata kerja
  • Deskripsi yaitu penjelasan mengenai tujuan use case dan nilai yang akan didapatkan oleh aktor
  • Kondisi sebelum (pre-condition) yaitu kondisi-kondisi yang perlu ada sebelum use case dilakukan.
  • Kondisi sesudah (post-condition) yaitu kondisi-kondisi yang sudah dipenuhi ketika uses case sudah dilaksanakan
  • Alur dasar (basic flow) yaitu alur yang menceritakan jika semua aksi yang dilakukan adalah benar atau proses yang harusnya terjadi
  • Alur alternatif (alternatif flow) yaitu alur yang menceritakan aksi alternatif, yang berbeda dari alur dasar.
Mana yg lebih dahulu dibuat use case description atau use case diagram ? sebaiknya use case description lebih dahulu. tapi kalau anda ingin membuat use case digram lebih  dahulu juga tdk apa-apa. Yang penting kedua duanya anda buat untuk menggambarkan/menjelaskan kebutuhan sistem.
contoh  diagram use case


Selasa, 28 Oktober 2014

UML (Unified Modeling Language)

08.36 Posted by ROSYID'S BLOG No comments
UML (Unified Modeling Language) merupakan pengganti dari metode analisis berorientasi object dan design berorientasi object (OOA&D) yang dimunculkan sekitar 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.


Diagram - Diagram UML

UML menyediakan 4 macam diagram untuk memodelkan aplikasi perangkat lunak berorientasi objek. Yaitu:
1.  Use Case Diagram

              Use case diagram adalah sebuah diagram yang menunjukkan hubungan antara actors dan use cases. Digunakan untuk analisis dan desain sebuah sistem. (The Elements of UML 2.0: Scott W.Ambler,
2005:33)

 
Use cases menjelaskan tentang tindakan/aksi yang dilakukan oleh actors. Use case digambarkan dalam bentuk elips yang horizontal. (The Elements of UML 2.0 : Scott W.Ambler, 2005:33-
34)

b. Actors

Actors adalah seorang peran yang berinteraksi dengan sistem. Actors meliputi baik manusia maupun organisasi yang saling bertukar informasi. (The Elements of UML 2.0 : Scott W.Ambler, 2005:35)

b. Relationship

Relationship adalah hubungan antara use cases dengan actors. (The Elements of UML 2.0 : Scott W.Ambler, 2005:38-39) 
Relationship dalam use case diagram meliputi:

- Asosiasi antara actor dan use case

Hubungan antara actor dan use case yang terjadi karena adanya interaksi antara kedua belah pihak. Asosiasi tipe ini menggunakan garis lurus dari actor menuju use case baik dengan menggunakan mata panah terbuka ataupun tidak.

- Asosiasi antara 2 use case

Hubungan antara use case yang satu dan use case lainnya yang terjadi karena adanya interaksi antara kedua belah pihak. Asosiasi tipe ini menggunakan garis putus-putus/garis lurus dengan mata panah terbuka di ujungnya.

- Generalisasi antara 2 actor

Hubungan inheritance (pewarisan) yang melibatkan actor yang satu (the child) dengan actor lainnya (the parent). Generalisasi tipe ini menggunakan garis lurus dengan mata panah
tertutup di ujungnya.

- Generalisasi anatari 2 use case

Hubungan inheritance (pewarisan) yang melibatkan use case yang satu (the child) dengan use case lainnya(the parent). Generalisasi tipe ini menggunakan garis lurus dengan mata panah
tertutup di ujungnya.

2. Class Diagram

              Class diagram adalah sebuah diagram yang menunjukkan hubungan antar class yang didalamnya terdapat atribut dan fungsi dari suatu objek. (The Elements of UML 2.0 : Scott W.Ambler, 2005:47)
Class diagram mempunyai 3 relasi dalam penggunaannya, yaitu :

a. Assosiation

Assosiation adalah sebuah hubungan yang menunjukkan adanya interaksi antar class. Hubungan ini dapat ditunjukkan dengan garis dengan mata panah terbuka di ujungnya yang mengindikasikan adanya aliran pesan dalam satu arah.

b. Generalization

Generalization adalah sebuah hubungan antar class yang bersifat dari khusus ke umum.

c. Constraint

Constraint adalah sebuah hubungan yang digunakan dalam sistem untuk memberi batasan pada sistem sehingga didapat aspek yang tidak fungsional.

Sumber: The Elements of UML 2.0: Scott W.Ambler (2005:71)

3. Activity Diagram

              Activity diagram adalah suatu diagram yang menggambarkan konsep aliran data/kontrol, aksi terstruktur serta dirancang dengan baik dalam suatu sistem. (Journal of Object
Technology:Conrad Bock, 2003:45)

Berikut ini merupakan komponen dalam activity diagram menurut Journal of Object Technology:Conrad Bock (2003:47) yaitu :

a. Activity Node

Activity node menggambarkan bentuk notasi dari beberapa proses yang beroperasi dalam kontrol dan nilai data.

b. Activity Edge

Activity edge menggambarkan bentuk edge yang menghubungkan aliran aksi secara langsung ,dimana menghubungkan input dan output dari aksi tersebut .

c. Initial state

Bentuk lingkaran berisi penuh melambangkan awal dari suatu proses.

d. Decision

Bentuk wajib dengan suatu flow yang masuk beserta dua atau lebih activity node yang keluar. Activity node yang keluar ditandai untuk mengindikasikan beberapa kondisi.

e. Fork

Satu bar hitam dengan satu activity node yang masuk beserta dua atau lebih activity node yang keluar.

f. Join

Satu bar hitam dengan dua atau lebih activity node yang masuk beserta satu activity node yang keluar, tercatat pada akhir dari proses secara bersamaan. Semua actions yang menuju join harus lengkap sebelum proses dapat berlanjut.

g. final State

Bentuk lingkaran berisi penuh yang berada di dalam lingkaran kosong, menunjukkan akhir dari suatu proses

4. Sequence Diagram

              Sequence diagram adalah sebuah diagram yang menggambarkan kolaborasi dari objek-objek yang saling berinteraksi antar elemen dari suatu class. (Embedded System Design:Bruce Powell Douglass, 2003:55)

Berikut ini merupakan komponen dalam sequence diagram :
a. Activations
Activations menjelaskan tentang eksekusi dari fungsi yang dimiliki oleh suatu objek.
b. Actor
Actor menjelaskan tentang peran yang melakukan serangkaian aksi dalam suatu proses.
c. Collaboration boundary

Collaboration boundary menjelaskan tentang tempat untuk lingkungan percobaan dan digunakan untuk memonitor objek.
d. Parallel vertical lines

Parallel vertical lines menjelaskan tentang suatu garis proses yang menunjuk pada suatu state.
e. Processes
Processes menjelaskan tentang tindakan/aksi yang dilakukan oleh aktor dalam suatu waktu.

f. Window

Window menjelaskan tentang halaman yang sedang ditampilkan dalam suatu proses.
g. Loop

Loop menjelaskan tentang model logika yang berpotensi untuk diulang beberapa kali.