1 CSG3H3 RPL: Teknik Berorientasi Objek Semester Genap 2014/2015 Object-oriented Analysis (OOA)2 Tahap dan Hasil Pengembangan PL Objek Business Modeli...
CSG3H3 RPL: Teknik Berorientasi Objek Semester Genap 2014/2015
Object-oriented Analysis (OOA)
Tahap dan Hasil Pengembangan PL Objek Business Modeling
Requirements
Analysis
Design
Business Use Case Diagram
Deskripsi Kebutuhan Fungsional
Sequence / Identifikasi Kelas Collaboration (misal: BCE atau MVC) Diagram
Business Object Model
Use Case Diagram
Keterhubungan antar Kelas
Business Activity Diagram
Skenario / Flow of Event
Activity Diagram
Stetechart Diagram
Implementation
Kelas-kelas yang Ditulis dalam Bahasa Pemrograman Objek Tertentu (Java, C++, dll.)
Class/Object Diagram Class Specification Package Diagram
Paket-paket Kelas
Component Diagram
File-file yang mewakili komponen program
Deployment Diagram
Alat atau tempat dimana program akan dipasang 2
Bagian #1
Object-oriented Analysis (OOA)
3
Analisis Perangkat Lunak Objek (1) A core workflow whose primary purpose is to analyze the requirements as described in requirements capture by refining and structuring them in terms of the internals of the system as a logical model (known as the analysis model). The examination of a problem by modeling it as a group of interacting objects. An object is defined by its class, data elements and behavior. 4
Analisis Perangkat Lunak Objek (2) • Proses mengurai perangkat lunak objek yang akan dibuat sehingga dapat diidentifikasi kelas-kelas yang akan menyusunnya beserta keterkaitan diantaranya.
• Dilaksanakan masih dalam tataran ide/konsep, belum siap implementasi: – –
Perangkat lunak objeknya belum ada, tetapi bentuknya harus sudah dapat “dibayangkan”. Seperti apa rincian dan bagaimana teknis pembuatannya, dilaksanakan di tahap perancangan. 5
Model Analisis • Model logis perangkat lunak objek yang dapat menggambarkan kelas-kelas analisis yang akan menyusun perangkat lunak dan keterkaitannya. • Kelas analisis: – Classes are high level and abstract. – Differ from design classes in the following ways: o o o o o
Responsibilities not operations Attributes are high level Relationships are conceptual Analysis classes must link to use case realisations Analysis classes must be either boundary, control or entity stereotypes 6
Identifikasi Kelas Analisis Pendekatan Boundary, Control, Entity (BCE) Pendekatan Model, View, Controller (MVC) Pendekatan secara umum
7
Kelas Analisis B-C-E Classes that are used to model the interaction with the actors. Best example is a UI. Boundary
Control
Classes that represent the functionality needed to manage the interaction between the boundary class and the data in entity classes.
Entity
Classes that represent data that exists over a period of time or important concepts in the system (e.g. database).
8
Diagram Interaksi (Analisis) Menggambarkan interaksi antar kelas analisis secara konseptual untuk memenuhi kebutuhan sesuai skenario yang disusun. Menggunakan notasi stereotype RUP: – Sequence Diagram – Collaboration Diagram
9
Cara Mengidentifikasi Kelas (1) Skenario Utama
Diagram Use Case Lihat Nilai Mahasiswa
Setiap use case di “zoom in”
Aksi Aktor
Tanggapan Sistem
1. Ketikkan NIM, kemudian tekan tombol Cari.
2. Cari data nilai di basis data sesuai NIM yang diberikan. 3. Tampilkan informasi nilai yang didapat.
Dibuat sketsa proses pengolahan datanya sesuai skenario
10
Cara Mengidentifikasi Kelas (2)
frmNilai
ctrlNilai
tblNilai
Kelas Boundary
Kelas Control
Kelas Entity 11
Interaksi Antar Kelas
frmNilai
tblNilai
ctrlNilai
btnCariClick()
nilai = cariNilai(nim) rsMhs = getDataNilai(nim) rsMhs nilai
12
Bagian #2
Pengembangan Tugas/Latihan
13
Tambahan Kebutuhan Untuk modul Bagian Kasir, ditambahkan kebutuhan sebagai berikut: – Pada saat pencatatan penjualan, data identitas (kode) barang selain bisa dicatat melalui keyboard, juga harus dapat dibaca melalui barcode reader. – Pembayaran selain cash, harus dapat juga menangani non-cash dengan menggunanakan mesin EDC. – Ada modul pemesanan barang melalui web, sehingga customer nantinya hanya tinggal mengambil dan mebayar saja.
14
Yang Anda Harus Kerjakan Definisikan kebutuhan fungsional yang baru untuk modul Bagian Kasir. Ubah diagram use case untuk modul Bagian Kasir. Tambahkan skenario sesuai kebutuhan yang baru. Identifikasi kelas-kelas yang akan menyusun modul PL untuk Bagian Kasir.