Tambahan Pertemuan 2 PSBO

Download Report

Transcript Tambahan Pertemuan 2 PSBO

A. Pemodelan sebagai Teknik Desain

Pemodelan adalah deskripsi lengkap mengenai satu sistem dari
perspektif tertentu.

Model adalah representasi abstrak dari sistem, dibangun untuk
memahami sebelum dilakukan pembangunan atas sistem tersebut.

Alasan utama membangun model adalah agar kita dapat memahami
sistem yang akan dikembangkan secara lebih baik.

Teknik pemodelan objek menggunakan tiga macam model untuk
menggambarkan sistem, yaitu
a.
model objek,
b.
model dinamik, dan
c.
model fungsional.
A. Model Object
 Model objek menggambarkan objek dalam sistem dan relasinya,
 Model objek menggambarkan struktur statis dari suatu objek
dalam sistem dan relasinya.
 Model objek berisi diagram objek. Diagram objek adalah graph di
mana node-nya adalah kelas yang mempunyai relasi antara kelas.
B. Model Dynamic
 Model dinamik menggambarkan interaksi antara objek dalam
sistem,
 Model dinamik menggambarkan aspek dari sistem yang berubah
setiap saat.
 Model dinamik dipergunakan untuk menyatakan aspek kontrol dari
sistem
 Model dinamik berisi state diagram. State diagram adalah graph di
mana nodenya adalah state dan arc adalah transisi antara state
yang disebabkan oleh event
C. Model Fungsional
 Model fungsional menggambarkan transformasi nilai data di
dalam sistem.
 Model fungsional berisi data flow diagram (DFD/diagram alir
data). Diagram alir data adalah suatu graph di mana node-nya
adalah proses dan arc-nya adalah aliran data. Sebuah model
adalah abstraksi yang perlu dipahami sebelum membangunnya.
Karena sebuah model menghilangkan rincian yang tidak penting,
hal ini membuat lebih mudah untuk dimanipulasi dari pada
entitas.
Tujuan Model
Analis sistem menggunakan pemodelan untuk :
1.
Fokus pada fitur – fitur sistem penting
2.
Membahas perubahan dan koreksi kebutuhan pembeli dengan ongkos yang murah dan
resiko minimal
3.
Memverifikasi pemahaman analisis sistem terhadap lingkungan pemakai.
Prinsip-prinsip Pemodelan
Prinsip-prinsip dalam pemodelan adalah :
1.
Pemilihan model-model yang hendak dibangun berpengaruh pada cara penanganan
masalah dan solusi yang dibentuk.
2.
Setiap model dapat diekspresikan pada level presisi yang Berbeda.
3.
Model-model yang bagus adalah terhubung dengan kenyataan.
4.
Tidak ada satu model tunggal yang mencukupi. Setiap sistem kompleks didekati dengan
sejumlah model yang hampir independen.
Penggunaan Pemodelan

Pemodelan memerlukan abstraksi, dengan tujuan membatasi aspek yang
penting untuk beberapa kebutuhan dan mengabaikan aspek yang tidak
penting.

Model yang baik menangkap aspek krusial dari masalah dan menghilangkan
yang lain.

Model menyajikan berbagai kebutuhan, di antaranya:
a.
Testing entitas sebelum dibangun
Kemajuan komputasi memperbolehkan simulasi dari banyak struktur
fisik tanpa harus membuat model secara fisik. Tidak hanya simulasi
yang memerlukan biaya murah, tetapi dilengkapi dengan informasi
yang tidak mungkin diakses atau diukur dari model fisik
b. Komunikasi dengan kustomer
Arsitek dan desainer produk membuat model untuk memperlihatkan
kepada kustomernya. Model tiruan memperlihatkan produk yang
menyerupai keadaan sebenarnya.
c. Visualisasi
Storyboard dari film televisi memperlihatkan kepada kustomer
bagaimana gagasan penulis digambarkan sebagai aliran tampilan
yang akan dibuat.
2.
Teknik Pemodelan
Model mempunyai dua dimensi - suatu pandangan tentang sistem (model
objek, model dinamik, atau model fungsional) dan tahapan dari
pengembangan (analisa, desain atau implementasi).
a.
Model objek
 Tujuan dari pembuatan model adalah menangkap konsep dari dunia
nyata yang penting ke dalam aplikasi.
 Model desain menjelaskan bagaimana memecahkan masalah dan
mungkin berisi pembangunan komputer.
 Model objek digambarkan secara grafik dengan diagram objek yang
berisi objek dan kelas.
b.
Model dinamik

Model dinamik menggambarkan aspek dari sistem yang berhubungan
dengan waktu serta sekuens dari operasi.

Model dinamik menangkap kontrol, di mana aspek dari sistem
digambarkan serta sekuens dari operasi yang terjadi tanpa
memperhatikan operasi apakah yang dikerjakan, terhadap apa operasi
dilakukan, atau bagaimana diimplementasikan.

Model dinamik digambarlan secara grafik dengan state diagram. Setiap
state diagram memperlihatkan sekuens state dan event diperbolehkan
dalam sistem untuk satu kelas dari objek. Aksi dalam state diagram
berhubungan dengan model fungsional, event dalam state diagram
menjadi operasi pada obyek dalam model obyek.
c. Model fungsional
 Model fungsional menggambarkan aspek dari sistem yang
berhubungan dengan transformasi dari nilai fungsi, pemetaan,
batasan dan ketergantungan fungsional.
 Model fungsional menangkap apakah yang dikerjakan oleh
sistem tanpa memperhatikan bagaimana dan kapan dikerjakan.
 Model fungsional digambarkan dengan diagram alir data.
B. Model Berorientasi Objek

Sebuah model objek menangkap struktur statis dari sistem dengan
menggambarkan objek dalam sistem, hubungan antara objek, serta
atribut dan operasi yang merupakan karakteristik setiap kelas dan
objek.

Model objek adalah hal yang paling penting dari ketiga model.

Model berorientasi objek lebih mendekati keadaan nyata, dan
dilengkapi dengan penyajian grafik dari sistem yang sangat bermanfaat
untuk komunikasi dengan kustomer dan pembuatan dokumentasi
struktur dari sistem.
 Encapsulation adalah sebuah proses dimana tidak ada akses langsung ke
data yang diberikan, bahkan hidden.
 Jika kita ingin mendapat data, kita harus berinteraksi dengan object yang
bertanggung jawab atas data tersebut.
 Dalam contoh inventory, jika kita ingin melihat atau mengupdate informasi
produk, kita seharusnya bekerja melalui object produk. Untuk membaca
data, kita mengirimkan pesan ke object produk, kemudian object produk
akan membaca pesan dan mengirim pesan balik ke kita. Object produk
mendefinisikan bahwa operasi dapat dilakukan pada data produk.
 Dengan melakukan encapsulasi pada data, berarti kkita membuat data dari
sistem kita lebih secure dan terpercaya. Karena kita mengetahui bagaimana
data diakses dan operasi apa yang sedang berjalan pada data. Hal ini
membuat maintenance program menjadi lebih mudah.
Menggunakan inheritance dalam OOP untuk mengklasifikasikan objects
dalam program sesuai karakteristik umum dan fungsinya.
Hal ini akan membuat pekerjaan bersama object lebih mudah dan lebih
intuitif.
Hal ini juga membuat programming lebih mudah karena memungkinkan
kita untuk mengkombinasikan karakteristik umum kedalam object parent
dan mewariskan karakteristik ini ke child object.
 Polymorphisme adalah kemampuan 2 buah object yang berbeda untuk merespon
pesan permintaan yang sama dalam suatu cara yang unik.
 Bagaimana hal ini berhubungan dengan OOP? Kita dapat membuat objects yang dapat
merespon pesan yang sama dalam implementasi yang unik.
 Contohnya, kita dapat mengirim pesan print ke object printer yang akan mencetak
pada printer, dan kita juga dapat mengirim pesan yang sama ke object screen yang
akan menuliskan pada screen monitor.
 Dalam OOP, kita menerapkan tipe polymorphism melalui proses yang disebut
overloading.
 Kita dapat mengimplementasikan metode yang berbeda pada sebuah object yang
Ketika membangun objects dalam aplikasi OOP, adalah penting untuk
menggabungkan konsep abstraction ini. Jika kita membangun aplikasi
shipping, kita harus membangun object produk dengan atribut seperti
ukuran dan berat. Warna adalah contoh informasi yang tidak ada
hubungannya dan harus dibuang. Tetapi ketika kita membangun orderentry
application, warna menjadi penting dan harus termasuk atribut object
produk.
Aggregation adalah kondisi ketika object berisi gabungan dari object-object yang
berbeda dan bekerja bersama.
Contoh mesin pemotong rumput terdiri dari object roda, objects mesin, object
pisau dan lain-lain.
Object mesinpun merupakan gabungan dari berbagai object. Kemampuan untuk
menggunakan aggregation dalam OOP adalah satu feature yang powerful yang
memungkinkan model menjadi akurat.Pemrograman visual membawa OOP ke level
berikutnya. Tujuan pemrograman visual adalah agar pemrograman menjadi lebih
mudah bagi para programmer dan lebih mudah diakses oleh kalangan
nonprogrammer dengan meminjam bahasa OOP, dan mempraktikanya secara grafis
atau visual. Pemrograman visual memungkinkan pengguna untuk lebih focus pada
pemecahan masalah ketimbang cara menangani bahasa pemrograman