• Tidak ada hasil yang ditemukan

REKAYASA PERANGKAT LUNAK MATERI TM 11

N/A
N/A
Protected

Academic year: 2021

Membagikan "REKAYASA PERANGKAT LUNAK MATERI TM 11"

Copied!
10
0
0

Teks penuh

(1)

Rekayasa Perangkat Lunak Page 1

MATA KULIAH:

REKAYASA PERANGKAT LUNAK

MATERI TM 11

MODEL DESAIN DAN DOKUMENTASI DESAIN

NAMA

: RAHMAT JAENURI

NIM

: 41814120237

(2)

Rekayasa Perangkat Lunak Page 2

MODEL DESAIN DAN DOKUMENTASI DESAIN

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. I nterface 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.

process dimension

archit ect ure element s int erface element s component -level element s deployment -level element s low high

class diagr ams analysis packages CRC models

collabor at ion diagr ams

use- cases - t ext use- case diagr ams act ivit y diagr ams sw im lane diagr ams

collabor at ion diagr ams dat a f low diagr ams cont r ol- f low diagr ams pr ocessing nar r at ives dat a f low diagr ams

cont r ol- f low diagr ams pr ocessing nar r at ives

st at e diagr ams sequence diagr ams st at e diagr ams

sequence diagr ams

design class r ealizat ions subsyst ems

collabor at ion diagr ams

design class r ealizat ions subsyst ems

collabor at ion diagr ams

r ef inement s t o:

deployment diagr ams class diagr ams

analysis packages CRC models

collabor at ion diagr ams

component diagr ams design classes act ivit y diagr ams sequence diagr ams

r ef inement s t o:

component diagr ams design classes act ivit y diagr ams sequence diagr ams

design class r ealizat ions subsyst ems

collabor at ion diagr ams component diagr ams design classes act ivit y diagr ams sequence diagr ams a na ly sis m ode l de sign m ode l Requirement s: const raint s int eroperabilit y t arget s and conf igurat ion

t echnical int er f ace design

Navigat ion design GUI design

(3)

Rekayasa Perangkat Lunak Page 3

Konsep desain

1. abstraction

Abstraction adalah gambaran dari fungsi suatu program. Gambaran ini bisa bertingkat-tingkat. Tingkat yang paling atas adalah gambaran suatu fungsi program dengan menggunakan bahasa alami. Pada tingkat terendah, menghasilkan abstraksi yang bersifat prosedural/ langkah perlangkah dengan menggunakan istilah yang teknis dan bisa diimplementasikan menjadi fungsi program.

Pada saat beralih dari tingkat ke tingkat, kita menggunakan procedural dan data abstraction. Procedural abstraction adalah urutan instrasi yang mempunyai tujuan khusus,dan data abstraction adalah koleksi data yang digunakan pada fungsi tersebut. Contoh:

Program : Iklan Part-time Job

Fungsi: Pendaftaran calon part-timer Abstraction 1 (highest level):

Calon part-timer dalam melakukan upload syarat-syarat yang diperlukan untuk melamar: surat lamaran, CV, foto, transkrip, data diri.

Abstraction 2 (lower level): Procedural abstraction : _ tampilkan pilihan part-time job

_ input data _ verifikasi format _ kirim data Data abstraction _ nama is STRING _ nim is STRING _ foto is IMAGE FILE

_ surat_lamaran is PDF FILE

2. refinement penjelasan detil dari abstraction

Refinement membantu designer untuk memperlihatkan detil dari lowest level dari abstraction. Abstraction dan refinement merupakan konsep yang saling melengkapi. Contoh dari refinement tentang fungsi sebuah pintu ada pada gambar 5.

3. modularity : membagi software menjadi modul Software dibagi-bagi menjadi

beberapa component yang disebut modul-modul. Modul-modul ini nantinya disatukan/diintegrasikan untuk memenuhi kebutuhan sistem. Dalam pembentukan modul-modul berlaku pernyataan-pernyataan berikut: Jika C(p1) > C(p2) dimana C adalah complexity dari suatu modul, maka E(p1) > E(p2) dimana E adalah waktu yang diperlukan. Artinya semakin rumit sebuah modul, maka waktu yang digunakan untuk menyelesaikan modul tersebut makin banyak. Untuk itu, modul yang rumit dipecah lagi menjadi beberapa modul untuk memudahkan penyelesaian masalah. Namun

(4)

Rekayasa Perangkat Lunak Page 4 semakin banyak modul, maka waktu/biaya untuk integrasikan modul-modul tersebut juga makin tinggi.

4. software architecture struktur software secara keseluruhan struktur hirarki/berjenjang dari modul-modul program. Untuk menggambarkan struktur modul-modul tersebut beberapa model yang ada adalah : - framework model : identifikasi pola yang berulang-ulang - dynamic model : identifikasi bagaimana konfigurasi sistem berubah karena kejadian-kejadian tertentu - process model: fokus pada proses teknis yang harus dikerjakan sistem - functional model : menggambarkan hirarki sistem berdasarkan fungsinya

5. Software procedure

Fokus pada detil proses pada tiap modul. Prosedur menjelaskan proses, urutan kejadian, proses perulangan, penentuan keputusan/arah. Ini bisa digambarkan dengan menggunakan Flow Chart yang bertingkat.

6. Information hiding

Ide dari information hiding (menyembunyikan informasi) adalah modul dirancang sedemikian rupa sehinga inforamsi (prosedur dan data) yang di dalamnya tidak dapat di akses oleh modul lain yang tidak memerlukannya. Modul yang efektif adalah modul yang berdiri sendiri dan berkomunikasi dengan modul lain yang memang diperlukan.

Desain Arsitektur

Repository Model

Pada model ini data disimpan secara terpusat untuk semua sub-sistem. Contoh : CASE Toolset, sistem informasi perpustakaan

Keuntungan:

Efisien untuk share jumlah data yang besar Sub-system tidak perlu repot dengan bagaimana data dibuat dan manajemen terpusat contoh: backup, keamanan, re-index. Kerugian:

Sub-system harus mengikuti model yang sudah ditetapkan. Evolusi data sulit dan mahal Sulit untuk distribusi layanan secara efisien, karena yang melayani hanya satu. Contoh : sistem informasi perpustakaan, sistem registrasi akademik.

Client-Server Model

Model ini terdiri dari sekumpulan server yang berdiri sendiri dan masing-masing menyediakan layanan untuk sub-sistem. Ada client-client (sub-system) yang menggunakan layanan server dan tersedia network yang mengijinkan client untuk akses layanan dari server.

Keuntungan:

Distribution data secara langsung Penggunaan sistem jaringan secara efektif hardware jadi murah Mudah untuk tambahkan server baru atau updgrade server yang sudah ada

(5)

Rekayasa Perangkat Lunak Page 5 Tidak ada data model, jadi organisasi data macam-macam, sehingga integrasi data sulit Redundant management Tidak ada pusat register nama dan service, sehingga kalau tidak tahu nama server dan service-nya sulit ditemukan.

Elemen-Elemen Model Desain

 Elemen-elemen Data

 Data model --> struktur data  Data model --> arsitektur database  Elemen-elemen arsitektur

 Domain aplikasi

 Class-class analisis, relasinya, kolaborasi dan perilaku diubah menjadi realisasi desain

 Patterns dam “styles” (Chapter 10)  Elemen-elemen interface

 user interface (UI)

 Interface external pada sistem lain, piranti-piranti, jaringan-jaringan atau produsen maupun konsumen informasi lainnya

 Interface internal antara komponen-komponen desain.  Elemen-elemen komponen  Elemen-elemen deploy Elemen-elemen Interface Co n t ro lPa n e l LCDdi s pl ay LEDi ndi c at or s k ey PadChar ac t er i s t i c s s peak er wi r el es s Int er f ac e r eadKey St r ok e( ) dec odeKey ( ) di s pl ay St at us ( ) l i ght LEDs ( ) s endCont r ol Ms g( ) Fig u re 9 . 6 UML in t e rf a c e re p re se n t a t io n f o r Co n t r o l P a n e l K e y Pa d r eadKey s t r ok e( ) dec odeKey ( ) < < in t e rf a c e > > W ire le ssPDA K e y Pa d Mo b ile Ph o n e

(6)

Rekayasa Perangkat Lunak Page 6

Elemen-elemen Komponen

SensorManagement

Sensor

Fig u re 9 . 8 UML d e p lo y m e n t d ia g ra m f o r Sa f e Ho m e

Per sonal c omput er

Security homeManagement Surveillance communication Co n t ro l Pa n e l CPI se rv e r Security homeownerAccess externalAccess

(7)

Rekayasa Perangkat Lunak Page 7

Design Patterns

 Desainer terbaik di segala bidang tetap mempunyai keterbatasan untuk melihat pola yang mencirikan sebuah masalah dan menghubungkannya dengan pola yang dapat dikombinasikan untuk membuat solusi

 Sebuah deskripsi dari design pattern dapat juga dilihat sebagai sekumpulan design forces.

 Design forces menjelaskan kebutuhan non fungsional (misalkan : kemudahan perawatan, portabilitas) yang dihubungkan dengan PL dimana pattern akan diaplikasikan.

 Karakteristik pattern (class, tanggungjawab, dan kolaborasi) mengindikasikan atribut-atrobit desain yang harus diatur untuk memungkinkan pattern

mengakomodasi permasalahan yang bervariasi.

Frameworks

 Sebuah framework bukan merupakan pattern arsitektur, namun lebih merupakan kerangka dengan sekumpulan “plug points” (yang juga disebut hooks dan slots) yang memungkinkannya untuk beradaptasi dengan domain permasalahan tertentu.  Gamma et al mencatat bahwa:

 Design patterns lebih abstrak dari frameworks.

 Design patterns adalah elemen-elemen arsitektural yang lebih kecil daripada frameworks

(8)

Rekayasa Perangkat Lunak Page 8

Dokumentasi Desain

 Dokumentasi digunakan secara berkala untuk menggambarkan seluruh instruksi, program-program, 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

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.

(9)

Rekayasa Perangkat Lunak Page 9

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.

 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.

User Documentation for training Purpose :

 Dokumentasi training mempersiapkan user untuk implementasi dan penggunaan sistem selanjutnya

 Dokumentasi user training digunakan untuk menjembatani jarak antara prosedur-prosedur 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

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

(10)

Rekayasa Perangkat Lunak Page 10

 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

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

http://racingperformancetuning.blogspot.com/2010/10/dokumentasi-desain.html Diadaptasi dari: 1. Pressman, Roger.S. "Software Engineering : A Practioner's Approach." 5th . McGrawHill. 2001. 2. Sommerville, Ian. "Software Engineering" .6th . Addison Wesley. 2001

Gambar

Fig u re   9 . 8  UML  d e p lo y m e n t   d ia g ra m   f o r Sa f e Ho m ePer sonal c omput er

Referensi

Dokumen terkait

Dibutuhkan sebuah perangkat lunak yang dapat digunakan oleh para pelanggan atau calon pelattggan sebuah bengkel untuk mendapatkan berbagai informasi mengenai layanan di

Dengan suatu metode merancang spesifikasi kebutuhan perangkat lunak yang diwujudkan dalam domain informasi, keperluan fungsional dan performansi dirancang menjadi

User interface dari aplikasi Sistem Informasi Koperasi Karyawan “STIKOM Surabaya” menggunakan desain interface yang merupakan bagian dari perangkat lunak yang

Pada aplikasi sistem informasi penjadwalan dan pemesanan iklan radio ini masih sederhana, baik dari segi tampilan maupun dari segi pemesanan iklannya.Penulis berharap

Aplikasi MAnAIS pada perangkat pengguna yang dibangun menggunakan Android Studio ini dapat berjalan dengan baik pada perangkat mobile siswa (pengguna) dan

Sistem informasi pengelolaan gangguan layanan TI menggunakan trouble ticket dapat meningkatkan pelayanan kepada user, disamping itu merupakan dokumentasi yang baik

untuk menjamin keseluruhan proses bisnis yang bergantung pada sistem informasi berjalan dengan tidak baik.. Menyewa vendor luar, pengembang atau penyedia layanan untuk

Oleh karena itu, sarana yang cepat dan tepat untuk mengakses, mengolah dan menyimpan sumber informasi telah menjadi bagian yang tak terpisahkan dalam kegiatan usaha.Kini