gambar: illustrasi dari RPL (sauce: deviantart/adiwaru)
Software Design (Perancangan Perangkat Lunak) merupakan salah satu tahap dalam Software Life Cycle yang berkonsentrasi pada Design dan Coding.
- Definisi: Perancangan
perangkat lunak adalah disiplin manajerial dan teknis yang
berkaitan dengan pembuatan dan pemeliharan produk perangkat lunak secara
sistematis, termasuk pengembangan dan modifikasinya, yang dilakukan pada waktu
yang tepat dan dengan mempertimbangkan faktor biaya. Definisi dari sumber yang
lain:
- Dari IEEE : perancangan perangkat lunak adalah bagian dari siklus hidup RPL saat kebutuhan perangkat lunak telah dianalisa dan menjadi sebuah deskripsi sebagai dasar pengembangan perangkat lunak.
- Dari Laplante : dinyatakan bahwa proses perancangan perangkat lunak merupakan lanjutan dari proses analisa, khususnya dari hasil SRS (Software Requirement Specification).
- Dari Pressman : dinyatakan bahwa perancangan perangkat lunak merupakan sebuah proses yang berulang dan interaktif, sehingga proses perancangan tidak akan hanya terdiri dari satu tahapan.
- Tahapan Perancangan:
- Perancangan Arsitektur: merupakan perancangan yang menghasilkan bagaimana sebuah perangkat lunak tersebut dapat dipecah menjadi komponen – komponen terpisah yang saling berkaitan. Jadi sebuah arsitektur perangkat lunak merupakan kumpulan dari komponen perangkat lunak yang disusun secara terstruktur dan disajikan secara terintegrasi.
- Perancangan Detail: tahapan ini merupakan lanjutan dari tahapan yang pertama yaitu menjelaskan secara detail dari tiap komponen yang telah dibuat
- Syarat Perancangan Perangkat Lunak yang Baik:
- Fleksibel: hasil perancangan harus dapat menyesuaikan diri dengan kebutuhan pengguna yang sewaktu-waktu bisa berubah.
- Mudah ditransfer: hasil perancangan yang dapat muda diterapkan di lingkungan perangkat keras yang berbeda.
- Mudah dimodifikasi: berkaitan dengan siklus hidup.
- Mudah digunakan: hasil perancangan yang baik harus mampu menghasilkan pengerjaan perangkat lunak yang mudah digunakan oleh pengguna.
- Handal: mampu meminimalkan kesalahan yang dibuat oleh pengembang perangkat lunak.
- Aman: hasil perancangan yang baik juga harus memperhatikan segi keamanan perangkat lunak yang dirancang sehingga tidak akan membuat pengguna menjadi cemas
- Tidak mahal: perancangan yang dibuat juga harus menyesuaikan dengan anggaran yang telah disediakan oleh pengguna.
- Hal-hal yang perlu
diperhatikan dalam pengembangan sebuah produk perangkat lunak:
- Kebutuhan
dan batasan-batasan pengguna, mengakomodasi paling tidak kepentingan tiga Kihak, tahap uji coba, dokumen pendukung, pelatihan.
- Kebutuhan dan batasan-batasan pengguna, mengakomodasi paling tidak kepentingan tiga Kihak, tahap uji coba, dokumen pendukung, pelatihan.
- Beberapa atribut
yang merupakan ukuran kualitas perangkat lunak:
- Maintanability (rawatan), harus dapat dengan mudah dirubah dengan perubahan kebutuhan pengguna.
- Dependability (ketergantungan), harus dapat dipercaya (trustworthy) sehingga pengguna dapat menggantungkan sepenuhnya proses bisnis mereka.
- Eciency, harus esien dan tidak memakai resources yang tinggi
- Usability, perangkat Lunak harus dapat digunakan (useble) oleh penggunanya dalam memenuhi kebutuhan mereka
- Distribusi UpayaMasa hidup sebuah produk perangkat lunak adalah 1 sd 3 tahun dalam pengembangan dan 5 sd 15 tahun dalam pemakaiannya (pemeliharaannya)
- Distribusi upaya antara pengembangan dan pemeliharaan bervariasi antara 40/60, 30/70 dan bahkan 10/90.
- Tiga aktivitas pengembangan perangkat lunak adalah:
- Analisa dan perancangan, implementasi dan pengujian.
- Tiga aktivitas pemeliharaan perangkat lunak adalah:
- Peningkatan kemampupan produk, penyesuaian produk dengan lingkungan pemroses baru dan perbaikan.
- Apa yg disebut perangkat lunak?
- Instruksi (Program Komputer): yang bila dieksekusi dapat menjalankan fungsi tertentu.
- Struktur data: yang dapat membuat program memanipulasi informasi.
- Dokumen: Yang menjelaskan operasi dan penggunaan program (Roger Pressman)
- Program Komputer, Prosedur, aturan dan dokumentasi: yang berkaitan dengannya serta data yang berkaitan dengan operasi suatu sistem komputer (IEEE).
- Jenis-jenis Perangakt Lunak
- Perangkat Lunak Sistem (system software)
- Perangkat Lunak Waktu Nyata (real-time software)
- Perangakat Lunak Bisnis (Business software)
- Perangkat Lunak Rekayasa dan Ilmu Pengetahuan (engineering and scientific software)
- Embedded software
- Perangkat Lunak Pribadi (Personal Software)
- Perangkat Lunak Intelegensia buatan (artificial inteligent software)
- Perangakat Lunak lainnya.
- Dokumen Perangkat Lunak
- Software Project Management Plan (SPMP) / Rencana Manajemen Proyek Perangkat Lunak
- Software Requirement Specification (SRS) / Spesifikasi Kebutuhan Software
- Software Design Description (SDD) / Deskripsi Desain Software
- Software Test Plan (STP) / Rencana Uji Software
- Software Test Description (STD) / Deskripsi Uji Software
- Software Test Result (STR) / Hasil Uji Software
- Software Version / Versi Software
- User Guide / User Manual
- Pengembangan Perangkat Lunak
- Proses dimana persoalan/kebutuhan pemakai diterjemahkan menjadi produk perangkat lunak melalui suatu rangkaian aktivitas tertentu sesuai model proses, metode dan alat bantu yang digunakan.
- Model Proses Pengembangan
- Cara atau strategi bagaimana perangkat lunak dibuat sedemikian rupa sehingga produk perangkat lunak tersebut dapat diwujudkan.
- Beberapa model proses pengembangan perangkat lunak
- Waterfall
- Incremental
- Prototyping Model
- Spiral Model
- Rational Unified Process (RUP)
- Extreme Programming (XP)
~ End Of Document ~
Sumber:
Internet:
- https://tikstkip.files.wordpress.com/2011/09/pertemuan-5.pptx
- http://nabarian.blogspot.com/2011/.../rangkuman-mata-kuliah-perancangan.html
- https://aristysaputri3.wordpress.com/desain-perangkat-lunak/perancangan-perangkat-lunak/
- Rekayasa Perangkat Lunak – Politeknik Telkom Bandung
0 komentar:
Posting Komentar