Modul 7 (Tujuh)
Pertemuan 7 (Tujuh)
Topik Prinsip danKonsep Desain
Sub Topik Prinsip danKonsep Desain
Materi
Mahasiswa dapat mengetahui dan memahami konsep dan
prinsip desain perangkat lunak
Mahasiswa dapat mengerti bahwa desain secara modular
Tujuan dapat mengurangi kompleksitas program dan hasil dari
desain ini dapat dengan mudah diimplementasikan
Mahasiswa dapat memahami model desain
Mahasiswa dapat membuat dan mengetahui isi dari
dokumentasi desain
A. Definisi Desain
Desain adalah Proses aplikasi berbagai teknik dan prinsip bagi tujuan
pendifinisian suatu perangkat, suatu proses atau sistem dalam detail yang
memadai untuk memungkinkan realisasi fisiknya.
Tujuan desainer: menghasilkan suatu model atau representasi dari
entitas yang kemudian akan dibangun.
Desain sebagai model: Memberikan sudut pandang yang bervariasi
dalam melihat sebuah software.
Desain adalah tempat dimana kualitas sebuah software ditentukan.
Desain menjadi sumber referensi dalam menilai kualitas sebuah software.
Desain adalah satu-satunya cara merelasikan kebutuhan customer
dengan software yang dibangun.
Manfaat desain:
Untuk Komunikasi dengan Stakeholder
Sebagai bahan analisa sistem (komponen-komponen penting dapat
teridentifikasi saat awal fase).
Dapat digunakan kembali untuk software dengan skala yang lebih
besar
Menjadi panduan dalam melakukan coding
C. Model Desain
Translasi/merubah model analisis ke model desain:
D. Prinsip Desain
Desain PL berupa proses dan model. Proses desain adalah
serangkaian langkah iteratif yang memungkinkan desainer
menggambarkan semua aspek PL yang dibangun. model desain adalah
ekivalen rencana arsitek untuk sebuah rumah.
Berikut ini merupakan prinsip desain:
1. Desain harus dapat di hubungkan dengan analisa
Karna suatu elemen tunggal dari model desain sering menelusuri
sampai persyaratan bertingkat, maka hrs ada tools yg digunakan
untuk menelusuri bahwa persyaratan dipenuhi oleh model desain
E. Konsep Desain
Konsep desain PL memberikan kerangka kerja untuk menghasilkan
program yang berfungsi dengan benar.
Konsep desain membantu desainer dalam:
Menentukan kriteria yang digunakan untuk membagi software
menjadi komponen-komponen
Memisahkan antara struktur data/fungsi dengan konsep sebuah
software
Menentukan kualitas sebuah desain software
Keterangan :
C(x) : fungsi untuk mengukur kompleksitas permasalahan x
E(x) : fungsi untuk menentukan usaha (dalam waktu) yang
diperlukan untuk memecahkan masalah x
Kesimpulan dari persamaan adalah :
lebih mudah untuk memecahkan suatu masalah yang kompleks
jika dibagi kedalam bagian2 yang dapat diatur
Jika membagi PL secara tidak terbatas, maka usaha yang
dibutuhkan untuk mengembangkannya menjadi sangat kecil
Jumlah Modul bertambah maka Biaya integrasi antar modul akan
bertambah.
Keterangan:
Depth mengindikasikan tingkat kontrol
Width mengindikasikan rentang keseluruhan kontrol
Fan-out : pengukuran jumlah modul yang dikontrol secara
langsung oleh modul yang lain
Fan-in : berapa banyak modul yang secara langsung
mengontrol sebuah modul yang diberikan
Superordinat : modul yang mengontrol modul lain, misalnya M
adalah super ordinat untuk modul a, b, c
Subordinat : modul yang dikontrol modul lain
6. Partisi structural
Partisi horizontal mendefinisikan tiga partisi (input, transformasi
data, dan output). Partisi vertikal (factoring) menyatakan bahwa
kontrol(pembuatan keputusan) dan kerja harus didistribusikan secara
top down dalam arsitektur program.
Partisi vertical:
Desain, sedemikian sehingga pembuatan keputusan dan kerja
dibuat bertingkat-tingkat. Modul pembuatan keputusan sebaiknya
terletak pada puncak arsitektur.
F. Dokumen Desain
Berikut ini merupakan template dari dokumen design:
I. Ruang Lingkup
A. Sasaran Sistem
B. Persyaratan Utama Perangkat Lunak
C. Batasan desain
II. Desain Data
A. Objek Data dan Struktur Data
B. Struktur File dan Database
1. Struktur File Eksternal
a. Struktur logis