MODEL DESAIN & DOKUMENTASI DESAIN Tugas ke 9 Rekayasa Perangkat Lunak
Dibuat oleh : Dekha Sundhawati (41813120217) Dosen Pengampu : Wachyu Hari Haji, S.Kom,MM
JURUSAN SISTEM INFORMASI FAKULTAS ILMU KOMPUTER UNIVERSITAS MERCU BUANA 1
Model Desain
Data design mengubah informasi menjadi struktur data untuk mengimplementasikan software. Data design dibuat berdasarkan data dictionary dan ERD. Architectural design mendefinisikan relasi antara elemen-elemen struktural utama, pola desain yang digunakan untuk mencapai kebutuhan yang ditentukan untuk sistem dan batasan batasan yang mempengaruhi bagaimana desain arsitektural ini diterapkan. Desain ini berdasarkan spesifikasi sistem, model analisis (bagian DFD) dan interaksi antara subsistem. Interface design menjelaskan bagaimana software berkomunikasi dalam dirinya, dengan sistem yang bertukar informasi dengannya, dan dengan manusia yang menggunakannya. DFD diperlukan untuk desain ini. Component-level design menghasilkan deskripsi prosedur software. Dalam software engineering, dapat dibuat 2 kelas model yaitu: 1) Model Persyaratan 2) Model Desain 1. Model Persyaratan (analysis model) Merepresentasikan persyaratan konsumen dengan menggambarkan software dalam 3 domain yang berbeda:
Domain infomrasi
Domain fungsional
Domain perilaku
Elemen Model Persyaratan a) Elemen Scenario-based.
Sistem ini dijelaskan dari sudut pandang pengguna menggunakan pendekatan berbasis scenario
Elemen Scenario-based dari model persyaratan seringkali menjadi bagian pertama dari model yang dikembangkan.
Dengan demikian, mereka berfungsi sebagai input untuk pembuatan elemen pemodelan lainnya.
b) Elemen Class-based.
2
Setiap penggunaan skenario menyiratkan satu set objek yang dimanipulasi sebagai aktor yang berinteraksi dengan system.
Obyek ini dikategorikan ke dalam kelas- yaitu sekumpulan hal-hal yang memiliki atribut yang sama dan perilaku yg umum.
Kelas perlu berkolaborasi dengansatu sama lain dan hubungan dan interaksi antara kelas
c) Elemen Perilaku.
Perilaku sistem berbasis komputer dapat dapat memiliki efek mendalam pada desain yang dipilih dan pendekatan implementasi yang diterapkan.
Oleh karena itu, model persyaratan harus menyediakan unsur-unsur pemodelan yang menggambarkan perilaku.
d) Elemen Flow-oriented.
Informasi berubah karena mengalir melalui sebuah sistem berbasis komputer.
Sistem ini menerima masukan dalam berbagai bentuk, menggunakan fungsi untuk mengubahnya, dan menghasilkan output dalam berbagai bentuk.
2. Model Desain
Merepresentasikan karakteristik software yang membantu praktisi membangun dengan efektif: arsitektur, user interface dan detail component-level.
Model desain perangkat lunak dianalog dengan rencana arsitek untuk rumah.
Dimulai dengan mewakili keseluruhan yang akan dibangun (misalnya, render tiga dimensi dari rumah) dan perlahan-lahan menyempurnakan hal untuk memberikan bimbingan untuk membangun setiap detail (misalnya, tata letak pipa).
Demikian pula, model desain yang dibuat untuk perangkat lunak menyediakan berbagai pandangan yang berbeda dari sistem.
Desain adalah apa yang engineer ingin lakukan.
Adalah tempat di mana kreativitas aturan pemangku kepentingan persyaratan, persyaratan bisnis, dan pertimbangan teknis semua menjadi perumusan suatu produk atau sistem.
Desain membuat representasi atau model perangkat lunak, tetapi tidak seperti model persyaratan (yang fokus pada penggambaran data yang dibutuhkan, fungsi, dan perilaku), model desain menyediakan detail tentang arsitektur perangkat lunak, 3
struktur
data,
antarmuka,
dan
komponen
yang
diperlukan
untuk
mengimplementasikan sistem.
Dokumentasi Desain Dokumentasi digunakan secara berkala untuk menggambarkan seluruh instruksi, programprogram, dan naratif atau segala sesuatu yang bersifat abstrak/virtual mengenai sistem informasi. Dokumentasi mempunyai beberapa kegunaan, diantaranya :
Selama dilaksanakan desain sistem merupakan penyusunan produk yang dibangun oleh team desain dan user.
Setelah instalasi, merupakan dasar untuk membuat perubahan terhadap sistem.
Kualitas dari dokumentasi menentukan seberapa besar flesibilitas departemen layanan informasi
memberikan respon terhadap permintaan user.
Dokumentasi yang baik disajikan untuk mengurangi konflik antar user dengan departemen layanan
informasi, ketika sistem didokumentasikan dengan baik menjadi lebih mudah dimengerti oleh user.
Melalui dokumentasi berarti referensi yang memadai tersedian ketika masalah terjadi, dan informasi informasi ini membantu user untuk mempelajari bagaimana menyelesaikan masalah mereka dengan sistem. Terdapat beberapa jenis dokumentasi, yaitu : 1.
Dokumentasi desain
2.
Dokumentasi user untuk training
3.
Dokumentasi operasi
4.
Dokumentasi referensi user
4
1. Design Documentation Purpose :
Dokumentasi ini membantu komunikasi didalam tim desain, merepresentasikan konseptualisasi terakhir dari sistem yang baru atau pemahaman terhadap sistem yang telah ada.
Selama proses desain kegunaan lain dari dokumentasi ini merupakan kontrol, menyediakan record dari apa yang telah dibangun dan diubah.
Menjadi sangat penting untuk memastikan bahwa seluruh bagian dari sistem dipengaruhi oleh perubahan
yang dipertimbangkan dan bahwa tanggung jawab untuk komponen-komponen dari sistem yang dipengaruhi oleh perubahan telah diberitahukan.
Misalkan jika format file atau isi dari file diubah, maka modul program apa dan siapa saja pemrogram yang akan terpengaruh ?
Kontrol ini juga berfungsi untuk memanggil ujicoba pelaksanaan yang lampau atau versi lama dari suatu program atau file.
Jenis dokumentasi ini akan membentuk database yang baik untuk menentukan estimasi diwaktu mendatang mengenai berapa lama waktu yang dibutuhkan untuk membangun sistem yang serupa.
Sistem perpustakaan program dapat menyimpan setiap track dari seluruh versi program dan memastikan bahwa pemrogram bekerja dengan versi terbaru.
Content :
Komponen dari dokumentasi desain
Elemen mendasar dari dokumentasi desain seperti tersebut diatas, dokumentasi yang terpenting adalah tabel isian (table of content) yang disediakan sebagai derektori untuk file manual yang berisikan seluruh informasi lainnya mengenai sistem.
Pustaka harus berisi survey dan studi kemungkinan dan dokumen yang berhubungan dengan analisis dari sistem yang ada. Juga sebagai tempat untuk menyimpan spesifikasi untuk sistem yang baru.
Ketika diagram alur data diubah, maka diagram yang asli disimpan dalam penyimpanan arsip sebagai backup. Menyimpan dokumen terbaru dalam pustaka kerja dengan setiap modul tertanggal dan pointer untuk lokasi versi lampau dalam arsip.
5
Penting untuk menyimpan salinan dari input, output dan format record file dan daftar modul. Baebagai macam modul dan file harus direferensi silang berdasarkan modul lain yang terkait dengannya.
Harus terdapat daftar referensi silang dari pemanggilan modul dan modul yang menggunakan elemen data yang berbeda, dan jika diperlukan perubahan uratan pemanggilan atau format record, maka beberapa pemrogram yang terpengaruh dapat di beritahukan dengan menggunakan daftar referensi silang.
Seseorang dalam tim desain harus ditunjuk sebagai pustakawan atau databese administrator, yang harus mendistribusikan daftar identifier kepada pemrogram.
2. User Documentation for training Purpose :
Dokumentasi training mempersiapkan user untuk implementasi dan penggunaan sistem selanjutnya
Dokumentasi user training digunakan untuk menjembatani jarak antara prosedurprosedur lama, saat ini dan yang dibutuhkan/diminta untuk sistem baru
Dokumen ini harus dibangun oleh anggota user dari tim desain dalam hubungannya dengan user lainnya dalam organisasi
Content :
Minimal komponen dokumentasi training use
Sangat baik untuk memulai pelatihan dengan terlebih dahulu memberikan penjelasan menyeluruh mengenai sistem dan apa masud/tujuan diselesaikannya pelatihan tersebut
Untuk aplikasi interaktif, pengguna dapat mempelajari sistem lebih sering dengan melihat pohon menu
Pelatihan user juga termasuk mempertimbangkan pengaruh dari transisi, khususnya ujicoba dan konversi
6
3. Operation Documentation Purpose :
Bagian operasi dari departemen layanan informasi harus mengoperasikan sistem setelah
diimplementasikan
Kelompok ini memerlukan informasi mengenai prosedur operasi normal dan bagaimana merespon kesalahan
Informasi ini baiknya disiapkan oleh analis sistem dan programer, dan banyak diantaranya dihasilkan/diambil dari dokumentasi desain
Content :
Minimal komponen dokumentasi operasi
Diagram alur yang lengkap yang menunjukan input yang dibutuhkan untuk setiap program, file-file apa saja yang diperlukan dan output apa saja yang harus dicetak/dihasilkan
Jika terdapat input yang khusus, maka harus diberikan catatan dan dokumentasi harus menunjukkan file-file yang terkait dalam pemrosesan
Penting bagi operator untuk mengetahui kondisi kesalahan yang mungkin terjadi dan bagaimana merespon keadaan tersebut
Jika terdapat beberapa pengguna sistem, maka akan menjadi hal yang baik jika disediakan daftar terminal dan pengguna yang mengakses sistem
4. User Reference Documentation Purpose :
Informasi ini akan dituju oleh user yang mempunyai pertanyan atau masalah sebelum mereka menghubungi departemen layanan informasi
Jika dokumentasi ini memiliki kualitas yang cukup, maka pertanyaan-pertanyaan tersebut akan terjawab tanpa harus menghubungi departemen layanan informasi
Akan terjadi tingkat frustasi yang cukup tinggi ketika terjadi suatu kesalahan dengan sistem informasi dan user tidak mengerti mengapa terjadi masalah tersebut atau bagaimana cara mengatasinya 7
JENIS DOKUMENTASI DAN STRUKTUR DOKUMENTASI Ian Sommerville mengklasifikasi dokumentasi ke dalam dua kelas, yaitu dokumentasi proses dan dokumentasi produk. Dokumentasi proses merupakan dokumen yang menyimpan semua proses dari pembangunan
dan
pemeliharaan
perangkat
lunak,
termasuk
perencanaan,
penjadwalan, lembar kerja, serta memo maupun email. Dokumen produk yaitu dokumen yang merupakan penjelasan dari perangkat lunak yang dibangun. Dokumentasi pengguna dan dokumentasi sistem termasuk dalam dokumen produk. Dokumentasi pengguna yaitu dokumen yang menjelaskan tentang bagaimana penggunaan dari produk perangkat lunak tersebut, sedangkan dokumen sistem yaitu semua dokumen yang menjelaskan tentang sistem yang dibagun, mulai dari spesifikasi kebutuhan sampai dengan pengujian perangkat lunak.
Pada sumber lain ada yang mengklasifikasikan dokumentasi ke dalam empat bagian yaitu dokumen kebutuhan, arsitektur dan desain, dokumen teknis, dokumen end user, dan dokumen pemasaran. Dokumen kebutuhan merupakan dokumen yang menjelaskan tentang atribut, kemampuan, karakterisitik, atau kualitas dari suatu sistem yang merupakan dasar dari pembuatan suatu perangkat lunak. Dokumen arsitektur dan disain yaitu dokumen yang menjelaskan tentang arsitektur sistem dan prinsip – prinsip konstruksi yang akan digunakan dalam desain komponen perangkat lunak. Dokumen teknis merupakan dokumentasi dari kode, algoritma dan interface. Dokumen end user merupakan dokumen manual tentang bagaimana perangkat lunak tersebut digunakan. Dokumen pemasaran berisi bagaimana cara pemasaran dari produk dan analisis permintaan pasar.
8
KUALITAS DOKUMENTASI Berdasarkan hasil survei yang dilakukan oleh Andrew Forward, software engineers mengungkapkan dokumen seperti apa yang dianggap berkualitas bagus, jelek dan sangat buruk. 1) Dokumen berkualitas bagus Arsitektur dan informasi dokumentasi lainnya selalu valid atau setidaknya menyediakan panduan sejarah yang dapat berguna untuk pemeliharaan perangkat lunak. Inline comments pada kode program cukup baik dalam memberikan informasi yang berguna untuk pemeliharaan perangkat lunak. 2) Dokumen berkualitas jelek
Dokumentasi untuk semua jenis sering sekali tidak diperbaharui (out of date)
Sistem mempunyai terlalu banyak dokumentasi
Penulisan dokumentasi yang buruk
Pengguna kesulitan menemukan isi yang berguna dalam dokumentasi
Pembuatan dokumentasi yang memakan waktu yang tidak sebanding dengan keuntungan dari dokumentasi tersebut
3) Dokumen berkualitas sangat buruk
Sebuah dokumentasi yang informasinya tidak dapat
Secara umum dokumentasi yang bagus yaitu dokumen yang ditulis dengan baik, mudah dibaca dan dimengerti serta memberikan informasi yang lengkap dan akurat. Walaupun pembuatan dokumen yang seperti ini mungkin akan menyita waktu yang lebih banyak, tetapi dengan dokumen yang baik akan sangat membantu baik itu pengembang maupun pengguna program tersebut. Berdasarkan survei Andrew Forward menunjukkan bahwa isi dokumen merupakan atribut dokumen yang paling penting dari sebuah dokumentasi perangkat lunak. Tiga atribut lainnya yang dianggap penting yaitu up-to-date, availability, use of examples. Atribut-atribut tersebut yang sangat menentukan kualitas suatu dokumen, walaupun atribut lainnya juga tidak kalah pentingnya.
9
Dokumentasi Desain Dokumentasi desain berisi penjelasan rinci tentang inti teknis dari rekayasa perangkat lunak yang meliputi struktur data, arsitektur program, interface dan detail prosedural. Gambar 1 menunjukan contoh outline dari dokumen desain yang diambil dari buku Pressman. Berikut penjelasan perbagian dari Pressman mengenai outline tersebut:
Bagian I berisi ruang lingkup dari kerja desain.
Bagian II berisi desain data, struktur file eksternal dan referensi silang yang menghubungkan objek data dengan file tertentu.
Bagian III berisi desain arsitektur.
Bagian IV dan V, pada bagian ini berkembang pada saat desain interface dan procedural dimulai.
Bagian VI berisi referensi silang yang bertujuan utnuk menetapkan bahwa semua persyaratan dipenuhi oleh desainperangkat lunak dan menunjukkan modul mana yang krites terhadap implementasi persyaratan spesifik.
Bagian VII berisi tahap pertama dari pembuatan dokumentasi pengujian.
Bagian VIII dan IX berisi data tambahan meliputi deskripsi algoritma, prosedur alternative, data dalam bentuk tabel, kutipan dari dokumen lain, dan informasi relevan lainnya.
10
Gambar 1: Outline Dokumen Desain
Dokumentasi Pengujian Pengujian perangkat lunak merupakan sederetan langkah yang digunakan untuk melakukan pengujian atau pengecekan terhadap unit program ataupun sistem lengkap dari perangkat lunak untuk menjamin bahwa persyaratan sistem telah dipenuhi. Pengujian memastikan bahwa program tersebut telah berfungsi sebagaimana mestinya. Rencana, hasil serta prosedur pengujian harus didokumentasikan dalam suatu dokumen pengujian.
11