REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set...

39
This presentation is revised by Hazlinda A., STMIK, 2014 REQUIREMENT & INTRODUCING TO USE CASE Mata Kuliah Testing & Implementasi Sistem Program Studi Sistem Informasi 2014/2015 STMIK Dumai -- Materi 4 --

Transcript of REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set...

Page 1: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

This presentation is revised by Hazlinda A., STMIK, 2014

REQUIREMENT

& INTRODUCING TO USE CASE

Mata Kuliah Testing & Implementasi Sistem

Program Studi Sistem Informasi 2014/2015

STMIK Dumai

-- Materi 4 --

Page 2: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Acknowledgement2

Main materials:

[Pressman, 2010] Pressman, Roger S. Software Engineering: A Practitioner’s Approach. New York:McGraw-Hill Higher Education, 2010. Print

Supplements:

[Yud, 2012] Yudhoatmojo, Satrio Baskoro. “Software & SoftwareEngineering” IKI30202 - Rekayasa Perangkat Lunak Term 1 -2011/2012. Faculty of Computer Science University of Indonesia. 2012. Print

[Larman, 2005] Larman, Craig. Applying UML and Patterns: an Introduction to Object-oriented Analysis and Design and IterativDevelopment. Upper Saddle River, NJ: Pearson Education International, 2005. Print

Page 3: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Requirement

Requirement adalah kapabilitas dan kondisidimana sistem dan skup proyek sudah harusdikonfirmasi. [Larman, 2005]

Secara umum, requirement terbagi atas dua tipe:

Fungsional (fungsi sistem)

Non-fungsional (diluar fungsi sistem)

Rincian tipe requirement

3

Page 4: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Tipe Requirement

Requirement Fungsional: Proses-proses yang akan dilakukan oleh sistem Informasi system yang harus ada Mendefinisikan fungsi yang ada pada sistem. Requirement ini

langsung berlanjut ke pembuatan use case, proses model, dandata model.

Requirement Non-fungsional : Operasional Performa Keamanan sistem Kultur, politik, aturan dari pihak luar dll

4

Page 5: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Menetapkan Requirements

Terdapat 3 teknik yang membantu penggunadalam menemukan kebutuhan mereka untuksistem yang akan dibuat:

Business Process Automation (BPA)

Business Process Improvement (BPI)

Business Process Reengineering (BPR)

5

Page 6: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

3 Teknik Analisis Requirement

6

Page 7: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

1. Business Process Automation

(BPA)

Jangan ubah operasional dasar(basic) dari sistem

Lakukan otomatisasi untukbebrapa fungsi (trigger by sistem)

Goal: efisiensi untukuser/pengguna

7

Page 8: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

2. Business Process Improvement

(BPI)

Memperhatikan durasidan harga proyek

Meningkatkan performasistem

Goal: Efisiensi danEfektivitas untukuser/pengguna

8

Page 9: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

3. Business Process Reengineering

(BPR)

Merubah secara pokok(fundamental) bagaimanaoperasional sistem untukperusahaan

Goal: Mendisain ulang secaratotal proses bisnis dari sistem

9

Page 10: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Perbandingan Teknik Analisis

Ketiga teknik analisis BPA, BPI, dan BPR dibandingkanberdasarkan:

Nilai bisnis/fungsi (Potential business value)

Harga proyek (Project cost)

Lebar analisis (Breadth of analysis)

Resiko (Risk)

10

Page 11: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Karakteristik Proyek

Business Process Automation (BPA)

Business Process Improvement(BPI)

Business Process Reengineering(BPR)

Nilai bisnis/fungsi Menengah-kebawah

Menengah Tinggi

Harga proyek Rendah Menengah-kebawah

Tinggi

Lebar analisis Sempit Menengah-sempit Sangat luas

Resiko Menengah-kebawah

Menengah-kebawah

Sangat tinggi

11

Page 12: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Produk Hasil Requirement

Use-Case Model – satu set skenario sistem yang dibuat dalambentuk use case.

Supplementary Specification – Spesifikasi lain yang tidak ada dalamuse case (hasil requirement non-functional).

Glossary – Istilah-istilah penting di dalam sistem, termasuk dalamdata yang akan digunakan.

Vision – Menyimpulkan requirement yang sudah dirinci dalam Use-Case Model dan Supplementary Specification, dan mendapatkanvisi/gambaran proyek.

Business Rules – Kebutuhan dan kebijakan lain yang penting bagiproyek.

12

Page 13: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Produk Hasil Requirement 13

Page 14: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Analisis Requirement

Proses analisis lebih menekankan investigasimasalah dan kebutuhan, daripada solusi [Larman, 2005]

Contoh: jika dibutuhkan suatu sistem perdaganganonline, akan bagaimana sistem tersebutdigunakan? apa fungsinya?

Jadi, analisis requirement adalah investigasirequirement.

14

Page 15: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Analisis Requirement

Menentukan karakteristik operasional dari sistem.

Mengindikasikan interface sistem dengan elemen-elemen lain yang ada pada sistem tersebut.

Membangun batasan-batasan yang ada pada sistem.

Analisis requirement mengizinkan software engineer (analis/modeler) untuk:

Merincikan kembali kebutuhan dasar sistem selama masaawal requirement.

Membangun model yang menggambarkan skenario user, aktivitas fungsional, class, dan alur data pada sistem.

15

Page 16: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Analisis = Jembatan16

Page 17: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Elemen dari Analisis Requirement17

Page 18: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Mengenal USE CASE

18

Page 19: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Use Case adalah…

Suatu kumpulan dari hubungan skenario yang sukses dan gagal yang menggambarkan seorangaktor menggunakan sistem untuk mencapai tujuandari sistem tersebut [Larman, 2005].

Sebuah skenario yang menggambarkan suatu“penggunaan” dari sebuah sistem [Pressman, 2010]

19

Page 20: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Use Case adalah…

Skenario adalah suatu urutan aksi (action) yang spesifik dan interaksi antara aktor dengan sistem[Larman, 2005].

Aktor merepresentasikan peran (role) dari orangatau piranti yang akan menggunakan fungsisistem.

Aktor/pengguna dapat memainkan sejumlahperan yang berbeda dari skenario yang ada.

20

Page 21: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Kenapa Use Case?

Use case merupakan cara yang baik untukmenerapkan prinsip KIS, dan memungkinkan parapengguna untuk mengerti deskripsi fungsi sistem (yang sesuai dengan requirement mereka) yang tergambardalam use case.

Use case menekankan pada tujuan dan perspektifpengguna; kita (sebagai analis) bertanya ke mereka:

Siapa yang akan menggunakan sistem?

Tipe skenario apa yang mereka gunakan?

Apa tujuan/goal mereka?

21

Page 22: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Format Use Case - [LARMAN, 2005]

Brief – satu paragraf kesimpulan, berupa skenarioutama dari sistem yang sukses.

Kapan? Selama masa awal requirement, untuk melihatskup/besaran proyek. Pembuatan brief use case inibiasanya tidak membutuhkan waktu yang lama.

Casual- Format paragraf yang informal. Sejumlahparagraf yang mencakupi berbagai skenario.

Kapan? Sama dengan brief UC.

22

Page 23: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Format Use Case - [LARMAN, 2005]

Fully dressed – Semua langkah dari berbagai fungsiditulis dengan detil, dan ada bagian pendukungseperti prekondisi dan jaminan sukses.

Kapan? Setelah use case diidentifikasi dan ditulisdalam format brief, maka selama masa awalrequirement, beberapa use case yang signifikan dalamsistem ditulis dengan lebih detil.

23

Page 24: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Contoh dari UC Format Casual

Handle Returns

Main Success Scenario:

Kustomer kembali ke halaman utama dengan barang yang dipilihsebelumnya.

Kasir menggunakan sistem POS untuk mendata setiap barang yang dipesan.

Alternate Scenarios:

Jika kustomer membayar dengan kredit, dan transaksi reimburse untukkartu kredit tersebut ditolak, maka beri info ke kustomer untukmelakukan pembayaran dengan cash.

Jika kode barang yang dipesan tidak ditemukan, maka beritahu kasiruntuk memasukkan kode barang secara manual.

Jika...

Jika...

24

Page 25: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Full Dressed Format25

Page 26: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Menulis Black-Box Use Cases

Umum digunakan dan direkomendasikan. Tidak mendeskripsikan kerja internal sistem,

komponennya, atau disainnya. Namun, mendeskripsikan apa yang menjadi tanggung

jawab sistem (responsibilities).

Dengan mendefinisikan tanggung jawabnya, kita bisamenspesifikasikan apa yang harus dilakukan sistem(fungsi atau tingkah lakunya) sebelum menentukanbagaimana sistem akan melakukannya.

“Analisis” vs “Disain” terkadang disimpulkan sebagai“Apa” vs “Bagaimana”.

26

Page 27: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Menulis Black-Box Use Cases

Black-box Style Not

Sistem merekam data penjualan Sistem menulis data penjualanke database..

Atau…

Sistem men-generate statement SQL INSERT untuk data penjualan..

27

Contoh:

Page 28: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Temukan Aktor dan Tujuannya

Sebelum menentukan use case…

Observasi nilai hasil dari setiap aktor selamarequirement dengan melakukan hal berikut:

Tulis requirement dengan berfokus ke aktor/user darisistem, pastikan tujuannya dan tipe situasinya(perannya)

Fokus kepada “Apa pertimbangan aktor dan apa nilaihasilnya pada sistem”

28

Page 29: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Bagaimana Menemukan Use Case

Step 1: Tentukan batasan sistem (the System Boundary) Klarifikasi dengan menentukan siapa aktor utama sistem

dan siapa aktor pendukung (contoh: pihak pemerintah, pajak).

Jika aktor sudah diidentifikasi, batasan sistem akan menjadikelihatan.

Step 2 dan 3: Tentukan aktor utama dan tujuannya Penentuan aktor utama dilakukan untuk mengidentifikasi

apa tujuan/perannya terhadap sistem untuk kemudiandicarikan solusinya.

29

Page 30: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Bagaimana Menemukan Use Case

Siapa yang membuka danmenutup sistem ?

Siapa pengguna danmanajemen sekuritinya?

Siapa yang melakukan sistemadministrasinya?

Bagaimana ketersediaan“waktu” aktor pada saatsistem membutuhkan waktuuntuk respon yang lebihbanyak untuk kasus tertentu?

Adakah yang memonitoriproses restart sistem saatsistem bermasalah?

Bagaimana menangani update software?

Adakah software external atausistem robotik yang jugamenggunakan layanan sistem?

Siapa yang akan mengevaluasiaktivitas atau performasistem?

Apa saja pertanyaan untuk menemukan aktor dan tujuannya?

30

Page 31: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Bagaimana Menemukan Use Case

Dari pihak admin sistem…

Siapa yang mengevaluasi log kerja sistem?

Siapa pihak yang harus segera tahu apabila sistemmengelami error atau gagal berfungsi?

31

Page 32: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Bagaimana Menemukan Use Case

Ciri Bahasa Use Case:

Singkat, jelas

Hapus kata-kata yang “mengganggu”

Mulai nama use case dengan menggunakan katakerja

Contoh: “Batalkan pemesanan”, bukan “Sistemmembatalkan pemesanan…”

32

Page 33: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Bagaimana Menemukan Use Case

Untuk mengatur aktor dan tujuannya, paling tidakada 2 pendekatan:

Setelah menemukan aktor dan tujuannya, gambaraktor di use case diagram sebagai aktornya, dantujuan sebagai use case-nya.

atau…

Tulis tujuan aktor terlebih dahulu, review dan perbaikijika perlu, gunakan “bahasa use case”, kemudiangambar use case diagram-nya.

33

Page 34: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Contoh Daftar Aktor dan Tujuannya34

Page 35: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Bagaimana Menemukan Use Case

Setelah mengetahui gambaran besar tentang sistem...

Mengapa bertanya tentang “aktor-dan-tujuannya” lebihbaik daripada langsung membuat use case?

Karena visi dari membuat use case adalah untukmenemukan aktor dan tujuannya, kemudian membuatsolusi yang menjadi nilai dari hasil sistem.

Daripada bertanya “Apa tugas yang dilakukan sistem?”, lebih baik bertanya “Siapa yang akan menggunakansistem dan apa tujuan mereka?”

35

Page 36: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Bagaimana Menemukan Use Case

Step 4: Define Use Cases

Ingat, mulai nama use case dengan menggunakan katakerja.

36

Page 37: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

(Mulai) Membangun Use Case

Untuk mendapatkan “tujuan aktor”, analis memastikan:

Apa tugas/fungsi utama yang akan dilakukan olehaktor?

Informasi apa yang bisa didapat, dibuat, atau diubaholeh aktor didalam sistem?

Informasi apa yang aktor inginkan ada di dalamsistem?

37

Contoh Use Case Diagram … (next slide)

Page 38: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

38

Page 39: REQUIREMENT & INTRODUCING TO USE CASE · Produk Hasil Requirement Use-Case Model –satu set skenario sistem yang dibuat dalam bentuk use case. Supplementary Specification –Spesifikasi

Materi ke-5…

Use Case Diagram

39