Upload
ferdi-barlianto
View
252
Download
9
Embed Size (px)
Citation preview
PEMODELAN SISTEM PERANGKAT LUNAKWilly Sudiarto Raharjo Aditya Wikan Mahastama
UML: Use Case Model
2UNIV KRISTEN DUTA WACANA / TI GENAP 0910
Use Case Model
Teknik pemodelan untuk mendapatkan functional requirement dari sebuah sistem Menggambarkan interaksi antara pengguna dan sistem Menjelaskan secara naratif bagaimana sistem akan digunakan Menggunakan skenario untuk menjelaskan setiap aktivitas yang mungkin terjadi
Kadangkala notasi kurang detail, terutama untuk beberapa aktivitas tertentu
Kapan Menggunakan Use Case?
Use case sederhana digunakan pada saat proses requirement analysis
Tidak semua pengguna paham bahasa teknis
Versi yang lebih detail dibuat sebelum implementasi rancangan
Dibuat khusus untuk mempermudah desain sistem oleh para developer
Skenario
Buy a product scenario
The customer browses the catalog and adds desired items to the shopping basket. When the customer wishes to pay, the customer describes the shipping and credit card information and confirms the sale. The system checks the authorization on the credit card and confirms the sale both immediately and with a follow-up e-mail.
Bagaimana jika proses pembayaran menggunakan CC gagal atau konsumen lama yang tidak perlu merekam informasi CC? Buat skenario baru
Catatan: Proses pada skenario tidak selalu harus berhasil
Kesimpulan: USE CASE adalah sekumpulan skenario yang dihubungkan satu sama lain dengan satu tujuan yang sama dari pengguna Use Case berisi apa yang dilakukan oleh sistem /apa yang terjadi pada sistem, bukan bagaimana sistem melakukan
Level Use Case Model
Use Case memiliki dua istilah
System use case : interaksi dengan sistem Business use case : interaksi bisnis dengan konsumen atau kejadian nyata
Cookburn menyarankan adanya pembedaan level
Sea level : interaksi sistem dengan aktor utama Fish level : use case yang ada karena include dari use case sea-level Kite level : menggambarkan sea-level use case untuk interaksi bisnis yang lebih luas
Use Case Mdl. Key Elements
What actions or procedures exist within a system Use Case Whos involved in those actions Actor How those actions related to each other in a system Relationship
Element: Use Case
Aksi yang terdapat di dalam sistem, melingkupi semua aksi yang harus maupun dapat terjadi Tidak harus berelasi dengan seorang/sebuah aktor Pada umumnya berupa kata kerja
Element: Actor
Dalam notasi Use Case, pengguna sistem disebut dengan Actor (role) Actor bisa berupa manager, pimpinan, mahasiswa, dan lain sebagainya
Actor tidak harus berupa manusia Jika sistem A mengerjakan sebuah fungsi untuk sistem sistem B, maka sistem B disebut actor
Satu use case diagram bisa memiliki banyak actor didalamnya
Use Case ModelsUSE CASE USE CASE
TEXT
DIAGRAM
Lebih detail Tidak ada visualisasi (berbentuk teks) Cocok bagi developer
Lebih abstrak, kurang detail Bentuk visual (gambar) Cocok untuk berkomunikasi dengan client
Use Case Text
USE CASE TEXT
Pilih salah satu skenario sebagai skenario utama yang sukses Tuliskan langkah-langkah untuk menyelesaikan skenario tersebut
Setiap langkah menampilkan tujuan dari sang actor Tidak perlu menuliskan bagian user interface
Tulis skenario lain dan sebut sebagai extensions, variasi dari skenario utama
Extension bisa sukses atau gagal, tetapi interaksinya harus berbeda dengan skenario utama Extension bisa kembali ke skenario utama
Contoh Use Case Text
USE CASE TEXT
Use Case Text
USE CASE TEXT
Struktur Use Case Text cocok untuk proses brainstorming terhadap proses alternatif dari skenario utama
Bagaimana jika kasus X terjadi? Apa solusinya? Mencoba mendaftar segala kemungkinan yang ada Mempermudah developer dalam membuat program
Langkah yang terlalu kompleks bisa dipecah ke dalam use case yang berbeda
Biasa digunakan hyperlink dengan garis bawah
Use case jangan tidak terlalu banyak sub case
Informasi pada Use Case Text
USE CASE TEXT
Objective/Goal: tujuan dari use case Actors: pelaku Pre-condition: kondisi yang harus dipenuhi sebelum use case dimulai Guarantee/result: kondisi yang harus dipenuhi setelah use case selesai Trigger: kejadian yang mampu menjadi pemicu terjadinya sebuah use case Relationship: hubungan dengan use case lain Scenario: langkah-langkah ....
USE CASE TEXT
Use Case Diagram
USE CASE DIAGRAM
Use Case Diagram
USE CASE DIAGRAM
Use Case Diagram
USE CASE DIAGRAM
Nama use case
Simple name
Biasanya berupa kata kerja nama di bagian depan menyatakan paket (package) dimana use case tersebut berada
Path name
System Boundary
USE CASE DIAGRAM
Merupakan batas antara sistem dan aktor Biasa dinotasikan dengan bujur sangkar Semua use case harus berada didalam system boundary
Relationship
USE CASE DIAGRAM
Generalization Include Extend Dependency Association
Generalization
USE CASE DIAGRAM
Hubungan antara induk dan anak Anak mewarisi sifat dan method dari induk Induk disebut root / base Class yang tidak memiliki anak disebut leaf Terbagi menjadi 2
Actor Generalization Use Case Generalization
Contoh Pada Class Diagram
USE CASE DIAGRAM
Actor Generalization
USE CASE DIAGRAM
Aktor bisa umum atau spesifik
Menggunakan generalization Customer : General actor Commercial Customer: Specific
Use Case Generalization
USE CASE DIAGRAM
Use case anak mewarisi arti dari use case induk sambil menambahkan/memodifikasi behaviour dari induk
Include Relationship
USE CASE DIAGRAM
X include Y berarti use case X menggunakan use case Y sepenuhnya Include digunakan untuk menghindari redundansi flow of event (seperti fungsi) Penulisan pada Use Case Text
USE CASE DIAGRAM
Extend Relationship
USE CASE DIAGRAM
Y extend X berarti use case X menggunakan use case Y secara opsional (tergantung keputusan saat runtime atau implementasi sistem)
USE CASE DIAGRAM
Other Relationships
Dependency
Perubahan pada Event berpeluang merubah Window yang menggunakan Event Notasi dengan garis putus-putus, mirip dengan extend, tetapi tanpa label
Association
Relasi struktural antar obyek (use case, actor) Dinotasikan dengan garis penghubung antar obyek
Tips Membuat Use Case
Fokuskan pada bagian teks (narasi) dibandingkan pada diagram
Lebih banyak informasi yang bisa didapatkan pada bagian teks Pengecualian untuk komunikasi dengan client
Hindari bloated use cases Use case yang terlalu banyak akan membingungkan dan orang akan malas untuk membacanya
Studi Kasus
Restoran / Rumah Makan Memiliki 3 aktor
Pelayan (waiter) Koki / Juru Masak Kasir
Buatlah skenario untuk kasus diatas Buatlah use-case diagramnya
Next Class
UML: Activity Diagram