Anda di halaman 1dari 13

TI 1153 REKAYASA PERANGKAT LUNAK 1

Rekayasa Perangkat Lunak


TI1153

KONSEP & PRINSIP ANALISIS KEBUTUHAN

Restyandito
e-mail : dito@ukdw.ac.id website : http://lecturer.ukdw.ac.id/~dito
TI1153 Konsep & Prinsip Analisis Kebutuhan Restyandito - 2

Analisis Kebutuhan
Penyebab kegagalan / masalah pada pengembangan software : keterlibatan pengguna minim kurangnya sumber daya harapan yg tidak realistis kurang dukungan dari management perubahan kebutuhan & spesifikasi kekurangan perencanaan sistem sudah tidak dibutuhkan 12.4% 10.6% 9.9% 9.3% 8.7% 8.1% 7.5%
biaya untuk mencari dan memperbaiki kesalahan

Analisis Kebutuhan
100 60-100 log scale 10 10.00

requirement yg tidak lengkap

13.1%

0.75 Reqmts

1.00 Design

1.50 Code

3.00

semua melibatkan identifikasi kebutuhan


Restyandito - 3

Test

System test

Field use
Restyandito - 4

TI1153 Konsep & Prinsip Analisis Kebutuhan

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 1

TI 1153 REKAYASA PERANGKAT LUNAK 1

Analisis Kebutuhan
identifikasi masalah analisis & pemodelan spesifikasi desain implementasi pengujian
Requirements Analysis Design Implementation Testing

Analisis Kebutuhan
Core Workflows Tahap
Inception Elaboration Construction Transition

iter. #1

iter. #2

iter. #n-1

iter. #n

Iterasi
TI1153 Konsep & Prinsip Analisis Kebutuhan Restyandito - 5 TI1153 Konsep & Prinsip Analisis Kebutuhan Restyandito - 6

Identifikasi Kebutuhan
Identifikasi kebutuhan sistem dapat ditunjukkan dg 2 mode: domain model: menjelaskan kebutuhan data statis aplikasi use-case model: menjelaskan kebutuhan proses dinamis aplikasi domain model dan use-case model dibangun melalui beberapa tahap pengembangan inception phase: identifikasi masalah dan cakupan proyek elaboration phase: identifikasi sisa kebutuhan (80%) construction phase: jika masih ada kebutuhan masih dapat diidentifikasi dilanjutkan implementasi sistem transition phase: tidak ada lagi identifikasi kebutuhan, kecuali terjadi perubahan kebutuhan
TI1153 Konsep & Prinsip Analisis Kebutuhan Restyandito - 7

Identifikasi Kebutuhan (Outline)


Identifikasi Kebutuhan Sistem Umum Life Cycle Role, Artifacts, Workers and Process Importance & Difficulty Process Identifikasi Kebutuhan Sistem Unified Development Process Domain Modeling Use-Case Modeling User-interface Description & Prototyping Validating System Requirements

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 8

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 2

TI 1153 REKAYASA PERANGKAT LUNAK 1

Workers & Artifacts


System Analyst Domain Analyst Use-Case Specifier User-Interface Designer Architect

WORKERS
system analyst - responsible for the whole set of requirements; delimits system; finds classes and associations; finds actors and use cases domain analyst - assists the system analyst in specifying detailed descriptions of one or more classes and their associations architect - describes the architectural view of the use-case model use-case specifier - assists the system analyst in specifying detailed descriptions of one or more use cases

bertanggung jawab

bertanggung jawab

bertanggung jawab

bertanggung jawab

bertanggung jawab

Domain Use-Case Actors Glossary Model Model

Domain Description

Use-Case Description

User-interface Description & Prototyping

Architecture Description

user-interface designer - visually shapes the user interface

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 9

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 10

ARTIFACTS
domain model - a model of the persistent classes and their associations in the context of the system use-case model - a model of a system containing actors and use cases and their relationships captures user requirements actors - users of the system, outside the system, that collaborate with the system represents the external environment glossary - defines important and used by analysts and other developers

ARTIFACTS
domain description - a description of the classes and associations in the domain model use case description - a description of some functionality that the system offers for an abstraction of a set of scenarios user-interface description & prototyping - helps us to understand and specify the interactions between human actors and the system architecture description - depicts the architecturally significant use cases (5-10%); those that describe some important and critical functionality or the involve some important requirement

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 11

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 12

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 3

TI 1153 REKAYASA PERANGKAT LUNAK 1

UDP - Process
System Analyst Find Classes Find Actors and and Associations Use Cases Structure the Use-Case Model

Domain Modeling
identifikasi class yang penting dan asosiasi antar class dalam konteks sistem

Domain Analyst Detail Classes and Associations

things that exist or events that occur in the systems environment

diperoleh dari
high-level problem statement lower-level requirements domain experts (users)

Architect

Prioritize Use Cases

class dapat berupa:


Use-Case Specifier Detail Use Cases

business objects (mis. orders, accounts, dll.) real-world objects and concepts (mis. suppliers, customers, dll.) events (kedatangan/keberangkatan pesawat, penjualan, reservasi, dll.)
Prototype User-Interface
Restyandito - 13 TI1153 Konsep & Prinsip Analisis Kebutuhan Restyandito - 14

User-Interface Designer

TI1153 Konsep & Prinsip Analisis Kebutuhan

Domain Modeling
DOKUMENTASI
Untuk tiap class harus ditentukan pula attributes nama yg bermakna penjelasan singkat pembayaran transaksi untuk mencatat pembayaran aliases synonim customer = client akronim requisition-number = requis-num, reqno panjang jumlah digit atau huruf
TI1153 Konsep & Prinsip Analisis Kebutuhan Restyandito - 15

Domain Modeling
DOKUMENTASI
nilai yg diijinkan continuous harga: Rp. 0,- hingga Rp. 1.000.000.000, discrete status-pernikahan: single, menikah, janda, cerai encoding - physical representation of the value supplementary - other information relevant to use of the attribute

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 16

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 4

TI 1153 REKAYASA PERANGKAT LUNAK 1

Domain Modeling
DOKUMENTASI
untuk tiap class tambahkan operasi yang dapat dilakukan untuk tiap asosiasi jelaskan / tentukan : sebuah nama(optional) peran (sesuai kebutuhan) multiplicity association class (jika dibutuhkan)

Domain Modeling
Manusia
*

Tinggal-di

District

Dosen
*

Mahasiswa
*

Tinggal-di
1

Tinggal-di District
1

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 17

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 18

Domain Modeling
Manusia

Use Case Modeling


mengidentifikasi sifat sistem (behavior) dari sudut pandang pengguna

Dosen
*

Mahasiswa
*

dibuat berkolaborasi dengan domain model berfungsi: identifikasi kebutuhan merencanakan iterasi pengembangan memvalidasi sistem dynamic model dimulai dengan analisis use-case Semua kebutuhan fungsional dijelaskan dalam use case

Belajar-di
1 1

Tinggal-di

Tinggal-di
1

District

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 19

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 20

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 5

TI 1153 REKAYASA PERANGKAT LUNAK 1

Use Case Model


Actor
sesuatu di luar sistem yang berinteraksi secara langsung dengan sistem
actor name

Use Case Model


Actor
MENENTUKAN AKTOR
Siapa yg berkepentingan terhadap kebutuhan tertentu? Dimana dalam organsisasi, sistem akan digunakan? Siapa yg akan diuntungkan dengan penggunaan sistem baru ini? Siapa yg menyediakan informasi bagi sistem, menggunakan informasi, dan menghapus informasi dari sistem? Siapa yg akan men-support dan memelihara sistem? Apakah sistem menggunakan sumber daya dari luar? Apakah sistem berinteraksi dengan sistem lain? Seringkali domain model class
and an actor that represent the same thing

menyediakan input atau memanfaatkan output dari sistem suatu role yang dapat diperankan oleh pengguna multiple roles per user; multiple users per role

aktor dapat digunakan sbg sumber utk menemukan use-case aktor adalah classifier (like a class) pengguna adalah instance dari classifier

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 21

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 22

Use Case Model


Use Case
a specific way of using the system by performing some part of its functionality serangkaian kejadian yang disebabkan oleh interaksi aktor pertimbangkan sudut pandang pengguna Mulai dengan kondisi atau kejadian normal atau biasa
kata kerja aktif

Use Case Model


Identifikasi
Apa pekerjaan yang diinginkan aktor untuk dilakukan oleh sistem? Informasi apa yang diakses (buat, simpan, ubah, hapus, baca) aktor dari sistem? Perubahan eksternal apa yg perlu diketahui oleh sistem? Adakah kejadian di sistem yg perlu diketahui oleh aktor?

use-case name

acuhkan pengecualian, alternatif, dll use case harus dinamai dari persepektif pengguna sebagai menunjukan deskripsi tujuan dari use case dan definisi
fungsionalitas tingkat tingfi

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 23

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 24

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 6

TI 1153 REKAYASA PERANGKAT LUNAK 1

Use Case Model


Identifikasi

Use Case Model


Skenario
a concrete, focused, informal description of a single use of the system from the viewpoint of a single actor

Pegawai

Validate user

Jenis-jenis skenario - describes a current situation (used to understand the current system) visionary - describes a future system evaluation - describes user tasks to be used to evaluate the system (e.g., acceptance tests) training - used for introducing new users to the system as-is

Check password Salesman Manager

Retinal scan

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 25

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 26

Use Case Yang Baik


Use case biasanya merepresentasikan fungsionalitas utama yg lengkap dari awal hingga akhir. Mahasiswa pada sistem registrasi UKWD: memilih matakuliah Berhubungan dengan didaftarkan pada matakuliah kejadian yg utuh ! mendapat tagihan Registrar pada sistem registrasi UKWD: menambah kelas menghapus kelas mengubah kelas

Use Case - Documentation


nama use case actors yang terlibat entry conditions bagaimana dan kapan use case dimulai (termasuk prakondisi) flow of events urutan aksi yg diperlukan urutan kejadian yg normal Interaksi apa yg terjadi antara use case dengan aktor data apa yg dibutuhkan use case exit conditions bagaimana dan kapan use case diakhiri (termasuk postkondisi) kebutuhan khusus (jika ada) alternate or exceptional flows (jika ada)

Berhubungan dengan Class objek yg sama !

narasi harus event-response oriented

(mis. Sistem melakukan X jika pengguna melakukan Y)

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 27

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 28

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 7

TI 1153 REKAYASA PERANGKAT LUNAK 1

Use Case
<<include>>
beberapa use cases dapat berbagi fungsionalitas yg sama Pisahkan fungsionalitas tersebut, dan letakkan dalam use case yg terpisah, dan dihubungkan dengan semua use case yg membutuhkannya dengan kata <<include>>
include use case (biasanya tdk dipanggil scr langsung oleh user)
<<include>>

Use Case
<<extend>>
menambahkan deskripsi use case pada use case yang sudah ada memodelkan kondisi tambahan pada urutan aksi suatu use case digunakan untuk menunjukkan: behavior yg opsional behavior yg terjadi pada kondisi khusus beberapa sub-flow yang dijalankan berdasarkan pilihan actor
semester tdk valid

Validate user
<<include>> <<include>>

extend use case

mendaftar matakul

memilih makul yg diajar

melihat daftar peserta makul use case utama (dipanggil langsung oleh user)

<<extend>> (semester invalid) main use case extension point label

memilih matkul

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 29

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 30

Teknik Spesifikasi Aplikasi


FAST (Facilitated Application Specification Techniques), pendekatan yg mendorong munculnya tim gabungan antara pelanggan dan pengembang yg bekerjasa utkmengidentifkasi masalah, mengusulkan elemen pemecahan, menegosiasi pendekatan yg berbeda dan mengkhususkan rangkaian persyaratan pemecahan awal.

Teknik Spesifikasi Aplikasi


Tahap-tahap FAST:
1. Pertemuan dilakukan di sisi netral dan dihadiri baik oleh pengembang maupun pelanggan 2. Dibuat aturan main untuk persiapan dan partisipasi 3. Sebuah agenda yg cukup formal diusulkan utk mencakup semua hal penting ttp tidak terlalu formal agar dapat mengalirkan gagasan bebas 4. Ada seorang fasilitator untuk mengkontrol pertemuan 5. Digunakan mekanisme definisi dapat merupakan sebuah lembar kerja, digram flip, stiker dinding, etc) 6. Tujuannya adalah mengidentifikasi masalah, mengusulkan elemn pemecahan awal dalam suatu atomosfir yg kondusif thd pencapaian tujuan
TI1153 Konsep & Prinsip Analisis Kebutuhan Restyandito - 32

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 31

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 8

TI 1153 REKAYASA PERANGKAT LUNAK 1

Teknik Spesifikasi Aplikasi


Contoh: SafeHome

Teknik Spesifikasi Aplikasi


Contoh: SafeHome

Fasilitator Pengembang Pelanggan

Pemasaran

Hal pertama yang harus didiskusikan adalah justifikasi untuk produk baru
TI1153 Konsep & Prinsip Analisis Kebutuhan

Perekam

DESKRIPSI PRODUK Penelitian kami menunjukkan bahwa pasar untuk sistem keamanan rumah berkembang pada laju 40% per tahun. Kami ingin memasuki pasar tersebut dengan membangun sebuah sistem keamanan rumah berbasis mikroprosesor yg akan melindungi dari dan atau mengenali berbagai situasi yg tidak diinginkan, seperti tamu tak diundang, api, banjir, dsb. Produk tsb secara tentatif disebut SafeHome dan akan menggunakan sensor yg sesuai utk mendeteksi setiap keadaan,dapat diprogram oleh pemilik rumah, dan akan secara otomatis menelepon sebuah agen pemonitor jika berhasil mendeteksi suatu keadaan.
TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 33

Restyandito - 34

Teknik Spesifikasi Aplikasi


Contoh: SafeHome
DAFTAR OBJEK detektor asap sensor pintu sensor jendela detektor gerakan alarm panel kontrol display nomor telpon DAFTAR LAYANAN setting alarm pemonitoran sensor pemencetan no telp. pemrograman panel pembacaan display DAFTAR BATASAN biaya pembuatan user friendly berinterface lgs dengan telp DAFTAR KRITERIA deteksi kejadian dalam detik dapat membuat skema prioritas

Teknik Spesifikasi Aplikasi


Contoh: SafeHome
SPESIFIKASI MINI Kontrol Panel dipasang di dinding ukurannya kira-kira 20x30 cm berisi 12 tombol dan kunci khusus terdapat LCD display semua interaksi pelanggan terjadi melalui kunci yg digunakan utk mengaktifkan dan mematikan sistem
TI1153 Konsep & Prinsip Analisis Kebutuhan Restyandito - 36

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 35

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 9

TI 1153 REKAYASA PERANGKAT LUNAK 1

Teknik Spesifikasi Aplikasi


Contoh: SafeHome
SPESIFIKASI MINI Perangkat Lunak Perangkat Lunak SafeHome memungkinkan pemilik rumah utk mengkonfigurasi sistem keamanan pada saat sistem diinstal, memonitor semua sensor yang terhubung ke sistem keamanan, dan berinteraksi dg pemilik rumah melalui tombol dan kunci-kunci fungsi yang diisikan k dalam panel kontrol SafeHome.

Teknik Spesifikasi Aplikasi


Contoh: SafeHome
SPESIFIKASI MINI Perangkat Lunak Selama instalasi, kontrol panel SafeHome digunakan untuk memprogram dan mengkonfigurasi sistem. Tiap-tiap sensor ditandai dengan nomor dan tipe, sebuah password master diprogram untuk mengunci dan membuka sistem, dan nomor telepon menjadi in untuk penekanan tombol nomorpada saat event sensor berlangsung.

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 37

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 38

Teknik Spesifikasi Aplikasi


Contoh: SafeHome
SPESIFIKASI MINI Perangkat Lunak Semua interaksi dengan SafeHome diatur oleh subsistem user-interface yang membaca input yang diberikan melalui papan ketik dan kunci-kunci fungsi, tampilan yang menunjukkan pesan dan status sistem pada tampilan LCD.
TI1153 Konsep & Prinsip Analisis Kebutuhan Restyandito - 39

Teknik Spesifikasi Aplikasi


Contoh: SafeHome [ Pemodelan domain fungsional ]
Perangkat Lunak SafeHome

mengkonfigurasi sistem

sensor monitor

interaksi dg pemakai

pembagian horisontal

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 40

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 10

TI 1153 REKAYASA PERANGKAT LUNAK 1

Teknik Spesifikasi Aplikasi


Contoh: SafeHome [ Pemodelan domain fungsional ]
pembagian fungsi secara vertikal

Teknik Spesifikasi Aplikasi


Contoh: SafeHome [ Use Case Modeling ] tentukan siapa saja actors yang terlibat dalam skenario siapa aktor utama? aktor kedua? apa yg ingin dicapai / dibutuhkan oleh aktor bersangkutan? apa yg harus dilakukan oleh aktor? bagaimana aktor tersebut berinteraksi dg sistem? adakah pra-kondisi yang harus dipenuhi? adakah pengecualian-pengecualian dalam skenario? adakah pra-kondisi yang harus dipenuhi?
TI1153 Konsep & Prinsip Analisis Kebutuhan Restyandito - 42

Perangkat Lunak SafeHome

mengkonfigurasi sistem

sensor monitor

interaksi dg pemakai

penyelidikan event sensor identifikasi jenis event mengaktifkan / mematikan sensor

mengaktifkan fungsi alarm mengaktifkan alarm audible memasang no telp


Restyandito - 41

membaca status sensor

TI1153 Konsep & Prinsip Analisis Kebutuhan

Teknik Spesifikasi Aplikasi


Contoh: SafeHome [ Use Case Modeling ]
HomeOwner ConfigurationManager Sensors MonitoringSubsystem

Teknik Spesifikasi Aplikasi


Contoh: SafeHome [ Use Case Modeling ]
Use-case memulaiPengawasan

Primary Actor PemilikRumah Tujuan Mengaktifkan sistem untuk mengawasi sensor saat pemilik rumah tidak di rumah (atau di dalam rumah) Pra-Kondisi Sistem telah diprogram untuk memvalidasi password dan mengenali berbagai macam sensor. Pemicu Skenario Pemilik rumah ingin mengaktifkan fungsi alarm Pemilik rumah : mengamati control panel Pemilik rumah : memasukkan password Pemilik rumah : memilih pergi atau di rumah Pemilik rumah : mengamati lampu indikator yg menunjukkan bahwa sistem sudah aktif
Restyandito - 44

HomeOwner

memasukkan passwords agar dapat berinteraksi memperoleh informasi mengenai status rumah memperoleh informasi mengenai kondisi sensor menekan panic button jika terjadi keadaan darurat mengaktifkan / menonaktifkan sistem keamanan
Restyandito - 43

TI1153 Konsep & Prinsip Analisis Kebutuhan

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 11

TI 1153 REKAYASA PERANGKAT LUNAK 1

Teknik Spesifikasi Aplikasi


Contoh: SafeHome [ Use Case Modeling ]
Pengecualian Control panel belum siap: Pemilik Rumah memeriksa control panel, memeriksa semua sensor Password yg dimasukkan salah, sistem membunyikan beep sekali, Pemilik Rumah memasukkan ulang password yg benar Pemilik Rumah memilih di rumah, control panel membunyikan beep 2x dan lampu indikator di rumah menyala, sesor dihidupkan Pemilik Rumah memilih pergi, control panel membunyikan beep 3x dan lampu indikator pergi menyala

Teknik Spesifikasi Aplikasi


Contoh: SafeHome [ Use Case Modeling ]

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 45

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 46

Teknik Spesifikasi Aplikasi


Contoh: SafeHome [ Use Case Modeling ]

Teknik Spesifikasi Aplikasi


Contoh: SafeHome [ Use Case Modeling ]

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 47

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 48

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 12

TI 1153 REKAYASA PERANGKAT LUNAK 1

Referensi
Pressman, Roger S., Software Engineering: A Practitioners Approach, 6th Edition, McGraw-Hill, 2005 (bab 8) Pressman,Roger S., Rekayasa Perangkat Lunak: Pendekatan Praktisi (Buku 1), Penerbit Andi, 2002 (bab 11)

The End

terima kasih

TI1153 Konsep & Prinsip Analisis Kebutuhan

Restyandito - 49

Restyandito

Konsep & Prinsip Analisis Kebutuhan - 13

Anda mungkin juga menyukai