3. Pengertian Perancangan Perangkat Lunak
Perancangan perangkat lunak dapat didefinisikan sebagai
Proses untuk mendefinisikan suatu model atau rancangan
perangkat lunak dengan menggunakan teknik dan prinsip
tertentu sedemikian hingga model atau rancangan tersebut
dapat diwujudkan menjadi perangkat lunak.
4. Pengertian Perancangan Perangkat Lunak
Tujuan dilakukannya perancangan oleh seorang designer
system (software engineer) adalah
Mendekomposisi sistem (perangkat lunak) menjadi
komponen-komponennya (data, antarmuka, prosedur,
arsitektur).
Menentukan relasi antar komponen.
Menentukan mekanisme komunikasi antar komponen.
Menentukan antarmuka komponen.
Menjelaskan fungsionalitas masing-masing komponen.
5. Prinsip Perancangan
Ada beberapa prinsip yang dikemukakan oleh Davis [DAV95]
yang perlu diketahui oleh desainer untuk dapat
mengendalikan proses perancangan, yaitu
- Perancangan harus dapat ditelusuri sampai ke model analisis.
- Perancangan tidak boleh berulang, maksudnya dapat
mengunakan kembali rancangan yang sudah ada sebelumnya
(reusable component).
- Perancangan dapat diperbaiki atau diubah tanpa merusak
keseluruhan sistem.
-Perancangan harus dinilai kualitasnya pada saat perancangan,
bukan setelah sistem jadi dengan kata lain siap
diimplementasikan
- Perancangan harus mengungkap keseragaman dan integrasi
6. Prinsip Perancangan
-Perancangan harus mempunyai beberapa pendekatan
alternatif rancangan.
-Perancangan harus meminimalkan kesenjangan intektual
antara perangkat lunak dan masalah yang ada didunia nyata.
Maksudnya perancangan perangkat lunak harus
mencerminkan struktur domain permasalahan.
- Perancangan bukanlah pengkodean dan pengkodean
bukanlah perancangan.
-Perancangan harus dikaji untuk meminimalkan kesalahan-
kesalahan konseptual
Jika prinsip perancangan diaplikasikan dengan baik, maka
desainer telah mampu menciptakan sebuah perancangan yang
mengungkapkan faktor-faktor kualitas eksternal dan internal
7. Konsep Perancangan
Ada beberpa konsep perancangan yang dikemukakan oleh
Pressman [PRE01] dan perlu dipahami oleh seorang desainer
agar mendapatkan perancangan yang berkualitas tinggi yaitu
1. Abstraksi
Tiga mekanisme dasar dari abstraksi yaitu :
a. Abstraksi Prosedural
b. Abstraksi Data
c. Abstraksi Control
2. Dekomposisi
3. Modularitas
Modularitas perangkat lunak ditentukan oleh coupling dan
cohesion
8. Konsep Perancangan
4. Arsitektur Perangkat Lunak
5. Hirarki Kontrol
6. Partisi Struktural
7. Struktur Data
8. Prosedur Perangkat Lunak
9. Penyembunyian Informasi
Ada beberapa alasan kenapa konsep perancangan ini perlu
dipahami oleh desainer yaitu
1. Mengatur sistem perangkat lunak yang kompleks.
2. Meningkatkan kualitas faktor dari perangkat lunak.
3. Memudahkan penggunaan kembali perangkat lunak.
4. Memecahkan permasalahan-permasalahan perancangan
yang ada pada umumnya.
9. Transformasi Model Analisa ke Perancangan
Pada tahap perancangan ini akan dihasilkan empat
model/objek perancangan, yaitu
- Perancangan data, yang berupa tabel-tabel basis data / file
data konvensional Dan struktur data internal (jika
diperlukan).
- Perancangan arsitektur yang berupa Structure chart dan
struktur menu program (sebagai pelengkap)
- Perancangan antarmuka (interface)
- Perancangan level komponen/prosedural yang berupa
spesifikasi program (algoritma)
10. Tahap Perancangan
Berikut tahapan-tahapan dalam perancangan perangkat lunak.
1. Menentukan bagaimana (how) solusi untuk memenuhi
kebutuhan (what) yang sudah didefinisikan.
2. Memvalidasi solusi.
3. Mendekomposisi dan memodelkan solusi.
4. Mendokumentasikan hasil rancangan pada dokumentasi
deskripsi perancangan perangkat lunak atau Software Design
Descriptions (SDD)
11. Tahap Perancangan
Yang harus di perhatikan dalam tahap perancangan di
antaranya antara lain :
Perancangan Data
Perancangan Arsitektur Perangkat Lunak
Perancangan Antarmuka (Interface)
Perancangan Prosedural (Spesifikasi Program)
12. Dokumentasi Perancangan
McGlaughin [McG91] mengusulkan 3 karakteristik yang
berfungsi sebagai pedoman bagi evaluasi sebuah perancangan
yang baik :
1. Perancangan harus mengimplementasikan keseluruhan
kebutuhan eksplisit yang dibebankan dalam model analisis,
dan harus mengakomodasi semua kebutuhan implisit yang
diinginkan oleh pelanggan.
2. Perancangan harus menjadi panduan yang dapat dibaca,
mudah dipahami bagi mereka yang akan membuat kode dan
yang pengujian serta memelihara perangkat lunak.
3. Perancangan harus memberikan sebuah gambaran lengkap
mengenai perangkat lunak, yang menekankan data, dan
domin perilaku dari perangkat lunak.
13. Dokumentasi Perancangan
pressman [PRE01] untuk mengevaluasi kulitas dan
representasi perancangan yang baik mengusulkan beberapa
kriteria teknis sebagai berikut :
1. Perancangan harus memperlihatkan suatu organisasi hirarki
yang baik dengan menggunakan kontrol diantara elemen-
elemen perangkat lunak.
2. Perancangan harus modular, yaitu perangkat lunak harus
dipartisi secara logika ke dalam elemen-elemen yang
melakukan fungsi dan subfungsi khusus.
3. Perancangan harus berisi data dan abstraksi prosedural.
4. Perancangan harus mengarah kepada antarmuka untuk
mengurangi kompleksitas hubungan anatar modul-modul dan
lingkungan eksternal.