Pemodelan Berorientasi Objek
Adam Hendra Brata
1
Penggalian Kebutuhan dan
Identifikasi Aktor
Materi Pertemuan 3
Fase – Fase Pengembangan Perangkat Lunak
Analisis Kebutuhan
Penggalian Kebutuhan Sistem
Elisitasi dan Analisis kebutuhan
Identifikasi Aktor
Pemodelan Kebutuhan Sistem
Use Case
2
Fase – Fase Pengembangan Perangkat Lunak
3
Pengembangan Perangkat Lunak
Bantu Ayana dunks, apa sih yang teman – teman ketahui tentang proses dan fase pengembangan perangkat lunak ?
4
Pengembangan Perangkat Lunak
Pengembangan perangkat lunak (software
development) pada umumnya memiliki guideline yang disebut dengan Software Processes atau Software Development Life Cycle (SDLC)
A software process is a set of related activities that leads to the production of a software
product. (Ian Sommerville)
Software process as a framework for the
activities, actions, and tasks that are required to build high-quality software. (Roger S. Pressman)
SDLC for short, is a well-defined, structured
sequence of stages in software engineering to develop the intended software product.
(http://www.tutorialspoint.com/)
5
Pengembangan Perangkat
Lunak 6
Pengembangan Perangkat
Lunak 7
Pemodelan BO
Pengembangan Perangkat Lunak : Analisis Kebutuhan
Analisis kebutuhan adalah proses yang menjadi awal dari semua proses pengembangan
perangkat lunak
Analisis kebutuhan yang baik dan benar
menentukan hasil akhir perangkat lunak yang dibangun
Kebutuhan dari user harus “digali” dengan tepat dan pas, jangan sampai ada yang kurang atau kelebihan, harus sesuai dengan apa yang
diharapkan oleh user
Masalah utama pada analisis kebutuhan adalah interpretasi dari berbagai pihak dan jangan
sampai menimbulkan salah paham
8
Pengembangan Perangkat
Lunak : Analisis Kebutuhan 9
Pengembangan Perangkat
Lunak : Analisis Kebutuhan 10
Penggalian Kebutuhan Sistem
11
Penggalian Kebutuhan Sistem
Dalam analisis kebutuhan kita memiliki tujuan untuk melakukan “penggalian” informasi
kebutuhan sistem dari customer / user
Metode penggalian informasi kebutuhan ini bisa bermacam-macam :
Wawancara
Survey
Observasi
Dll....
12
Penggalian Kebutuhan Sistem
Penggalian informasi ini harus benar – benar sesuai, pas dan tepat sesuai dengan
kebutuhan dari user / customer
“I know you believe you understood what you think I said, but I am not sure you realize that what you heard is not what I meant . . . . .”
13
Penggalian Kebutuhan Sistem
Kebutuhan : Sesuatu yang diminta, dibutuhkan
Menurut IEEE (the institute of electrical and electronics engineers) :
Kondisi atau kemampuan yg diperlukan
pemakai untuk menyelesaikan persoalan untuk mencapai sebuah tujuan
Kondisi atau kemampuan yang harus dimiliki atau dipunyai oleh sistem atau komponen
sistem untuk memenuhi kontrak, standar, spesifikasi, atau dokumen formal lainnya
14
Penggalian Kebutuhan Sistem
15
Kebutuhan Perangkat Lunak
Kondisi, kriteria, syarat atau kemampuan yang harus dimiliki oleh perangkat lunak untuk memenuhi apa yang disyaratkan atau
diinginkan pemakai
Functional : what a system does
Deskripsi proses, masukan dan keluaran
Non-functional : constraint or quality of a system
Performance, availability, security, reliability,
implementation & design constraints, storage size
Usability : constraint to use
Acceptance criteria, end-user characteristics, system environments
Analisis Kebutuhan
Proses mempelajari kebutuhan pemakai
untuk mendapatkan definisi kebutuhan sistem atau perangkat lunak [IEE 93]
Proses untuk menetapkan fungsi dan unjuk kerja perangkat lunak, menyatakan antarmuka
perangkat lunak dengan elemen-elemen sistem lain, dan menentukan kendala yang harus
dihadapi perangkat lunak [PRE 01]
Analisis Kebutuhan 16
Tahapan
Mempelajari dan memahami persoalan
Mengidentifikasi kebutuhan pemakai
Mendefinisikan kebutuhan perangkat lunak
Membuat dokumen spesifikasi kebutuhan perangkat lunak
Mengkaji ulang (review) kebutuhan
Analisis Kebutuhan 17
Mempelajari dan memahami persoalan
Siapa pemakai yang menggunakan perangkat lunak
Dimana perangkat lunak akan digunakan
Pekerjaan apa saja dari pemakai yang akan dibantu oleh perangkat lunak
Apa saja cakupan dari pekerjaan tersebut, dan bagaimana mekanisme pelaksanaannya
Apa yang menjadi kendala dilihat dari sisi
teknologi yang digunakan atau dari sisi hukum dan standar
Analisis Kebutuhan 18
Mengidentifikasi kebutuhan pemakai dan fungsi apa yang diinginkan pada perangkat lunak
Data atau informasi apa saja yang akan diproses
Kelakuan sistem apa yang diharapkan
Antarmuka apa yang tersedia (software interfaces, hardware interfaces, user
interfaces, dan communication interfaces)
Analisis Kebutuhan 19
Mendefinisikan kebutuhan perangkat lunak
Saya ingin data transaksi jual beli bisa langsung direkap dan dicetak
Informasi penjualan per satuan waktu bisa dilihat dan dicetak dalam bentuk neraca
Kebutuhan dimodelkan/digambarkan dengan tenik analisis dan alat bantu tertentu
Data flow diagram, kamus data,dan spesifikasi proses jika menggunakan analisis tertsruktur
Use case diagram dan skenario sistem jika menggunakan analisis berorientasi objek
Analisis Kebutuhan 20
Membuat dokumen spesifikasi kebutuhan perangkat lunak
Semua kebutuhan yang telah didefinisikan selanjutnya dibuat dokumentasinya yaitu
Spesifikasi Kebutuhan Perangkat Lunak (SKPL) atau Software Requirement Specification (SRS)
Analisis Kebutuhan 21
Mengkaji ulang (review) kebutuhan
Proses untuk mengkaji ulang (validasi)
kebutuhan apakah SKPL sudah konsisten,
lengkap, dan sesuai dengan yang diinginkan oleh pemakai
Analisis Kebutuhan 22
Metode Analisis
Metode atau teknik untuk melakukan analisis kebutuhan perangkat lunak dapat
dikelompokkan berdasarkan pendekatan yang diambil pada saat melakukan aktivitas tersebut
Jenis Metode
Terstruktur (Structural)
Berorientasi Objek (Object Oriented)
Analisis Kebutuhan 23
Elisitasi
Elisitasi adalah keseluruhan proses dalam analisis kebutuhan
Analisis Kebutuhan 24
Domain understanding
Requirements checking
Requirements collection
Classification
Prioritisation
Conflict resolution
Requirements definition
Requirements specification
Langkah-Langkah Analisis Kebutuhan Berorientasi Objek
Pendefinisan fungsi sistem
Identifikasi aktor
Identifikasi use case
Membuat skenario per use case
Analisis Kebutuhan 25
Identifikasi Aktor
26
Berdasarkan domain permasalahan atau dari proses bisnis yang sedang berjalan dapat
dilakukan identifikasi aktor yang mendukung sistem tersebut
Pada dasarnya aktor adalah apa saja yang berhubungan dengan sistem yang sedang dibangun
Aktor merupakan semua yang berada di luar ruang lingkup sistem
Aktor 27
Secara umum, Aktor dapat diartikan sebagai adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk
melakukan pekerjaan-pekerjaan tertentu
Menspesifikasikan himpunan peran yang
pengguna mainkan ketika berinteraksi dengan use case
Aktor 28
Secara umum, Aktor dapat diklasifikasikan menjadi 3 jenis, yaitu :
Pengguna sistem
Sistem lain yang berhubungan dengan sistem yang sedang dibangun
Waktu
Aktor 29
Aturan Penggunaan Aktor
Aktor menggambarkan sebuah tugas/peran dan bukannya posisi sebuah jabatan
Aktor memberi input atau menerima informasi dari sistem
Aktor biasanya menggunakan kata benda
Tidak boleh ada komunikasi langsung antar aktor
Aktor 30
Identifikasi Aktor biasanya dilakukan dengan cara memberikan pertanyaan – pertanyaan ini :
Siapa atau apa yang menyediakan input bagi sistem ?
Siapa atau apa yang menerima output dari sistem ?
Apakah ada hubungan dengan sistem lain ?
Apakah ada kejadian yang otomatis dipicu pada suatu waktu tertentu ?
Siapa yang akan merawat informasi dalam sistem ?
Identifikasi Aktor 31
Pemodelan Use Case
32
Setelah dilakukan penggalian kebutuhan sistem dengan analisis kebutuhan, maka langkah selanjutnya adalah pemodelan kebutuhan yang sudah dianalisis tersebut ke dalam sebuah diagram yang
menggambarkan keseluruhan kebutuhan sistem
Pada umumnya pemodelan kebutuhan ini ditekankan pada pemodelan kebutuhan fungsional melalui diagram Use Case
Use Case 33
Use case diagram menggambarkan
fungsionalitas yang diharapkan dari sebuah sistem
Yang ditekankan adalah “apa” yang
diperbuat sistem, dan bukan “bagaimana”
Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem
Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng- create sebuah daftar belanja, dan
sebagainya
Use Case 34
Singkatnya, use case menerangkan
tentang hubungan interaksi aktor dengan sistem
Use Case 35
Bagian – Bagian Use Case 36
Pembahasan lebih lanjut mengenai diagram Use Case akan dibahas di pertemuan / slide berikutnya
Akan dibahas juga apa itu skenario Use Case