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
13.1%
0.75 Reqmts
1.00 Design
1.50 Code
3.00
Test
System test
Field use
Restyandito - 4
Restyandito
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
Restyandito - 8
Restyandito
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 Description
Use-Case Description
Architecture Description
Restyandito - 9
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
Restyandito - 11
Restyandito - 12
Restyandito
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
diperoleh dari
high-level problem statement lower-level requirements domain experts (users)
Architect
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
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
Restyandito - 16
Restyandito
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
Restyandito - 17
Restyandito - 18
Domain Modeling
Manusia
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
Restyandito - 19
Restyandito - 20
Restyandito
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
Restyandito - 21
Restyandito - 22
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
Restyandito - 23
Restyandito - 24
Restyandito
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
Retinal scan
Restyandito - 25
Restyandito - 26
Restyandito - 27
Restyandito - 28
Restyandito
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>>
mendaftar matakul
melihat daftar peserta makul use case utama (dipanggil langsung oleh user)
memilih matkul
Restyandito - 29
Restyandito - 30
Restyandito - 31
Restyandito
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
Restyandito - 35
Restyandito
Restyandito - 37
Restyandito - 38
mengkonfigurasi sistem
sensor monitor
interaksi dg pemakai
pembagian horisontal
Restyandito - 40
Restyandito
mengkonfigurasi sistem
sensor monitor
interaksi dg pemakai
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
Restyandito
Restyandito - 45
Restyandito - 46
Restyandito - 47
Restyandito - 48
Restyandito
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
Restyandito - 49
Restyandito