Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Materi Kuliah 4
Desain Perangkat Lunak
Ilyas [email protected]@gmail.com
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Materi Kuliah 4
Desain Perangkat Lunak
Outlines:- Desain Data- Desain Arsitektur- Desain Interface/Antarmuka- Estetika interface- Desain coding
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Sasaran:●Mahasiswa memahami tahap-tahap dalam desain perangkat lunak.●Mahasiswa memahami teknik mendesain sistem perangkat lunak
Referensi:●Pressman, Roger S., Software Engineering:
A Practitioner’s Approach, 6th edition, McGraw-Hill International, 2001
●Bentley, Lonnie D. and Whitten, Jeffry L. System Analysis & Design for Global Enterprise, 7th edition, McGraw-Hill International, 2007
●Schach, Stephen R., Object-Oriented and Classical Software Engineering, 5th edition, McGraw-Hill International,2002
●Kristanto, Andri, Rekayasa Perangkat Lunak (Konsep Dasar), 1st edition, Gava Media:Yogyakarta, 2004
Materi Kuliah 4
Desain Perangkat Lunak
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain perangkat lunak
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Definisi desainDesain adalah perwujudan dari model
Desain merupakan langkah progressif menuju bentuk nyata (sistem)
Pressman (2005) menyebutkan bahwa desain adalah proses yang berulang yang mana kebutuhan diterjemahkan menjadi “blueprint” dalam konstruksi perangkat lunak.
Bentley and Whitten (2007) menambahkan juga bahwa desain adalah langkah yang terfokus pada implementasi spesifikasi detil dari sistem.
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Prinsip desain9 Prinsip dalam mendesain perangkat lunak (Pressman 2005):1. Desain harus bisa dilacak/sesuai dengan analisa model2. Berpacu pada arsitektur sistem3. Desain data = desain fungsi sistem4. Desain interface memuat segala keperluan sistem(fungsionalitas, deteksi error, sederhana)5. Desain interface = kebutuhan end-user6. Independensi fungsi pada level desain komponen7. Minimalkan ketergantungan antar komponen8. Desain harus bisa dimengerti9. Desain dibentuk secara bertahap- perlu iterasi untuk memaksimalkan fungsi
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Kualitas software
Kualitas software = nilai software Penilaian kualitatif bisa diukur dengan beberapa cara(Pressman, 2005):1. Fungsionality
- fungsi dari semua fitur yang disediakan2. Usability
- subyektivitas user (estetik, konsistensi dan dokumentasi)
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Kualitas software (2)
3. Reliability- kinerja sistem dari segi frekuensi kegagalan, akurasi dan kemampuan meakukan recovery4. Performance- kinerja sistem dari segi kecepatan, konsumsi sumberdaya, throughput dan efisiensi5. Supportability- dukungan sistem: perawatan, penambahan modul, kompatibilitas dan kemudahan konfigurasi
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain perangkat lunak (2)
Pendekatan desain perangkat lunak (Pressman, 2005)
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain data
Desain data merupakan desain sistem pada level organisasi dan klasifikasi kebutuhan perangkat lunak
Desain data digambarkan pada diagram-diagram yang mendukung sesuai dengan fungsionalitasnya
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain Fisik dan Logik
Desain/model fisik menggambarkan bagaimana sistem bekeja secara teknis/fisik
Desain/model logik menggambarkan proses-proses yang dalam sistem (Kristanto, 2004)
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Data Fisik dan Logik
Kelengkapan data meliputi data fisik dan logik
Data fisik: entitas fisik: server, admin dllData logik: proses (kata benda dari proses) contoh: peminjaman, pendaftaran dll
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Review..
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain Arsitektur
Diadopsi dari Clements (2002): Carnegie Mellon University
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain Arsitektur
http://www.rkrk.net.au/images/3/35/Information_overload.jpg
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Pertanyaan..
1. Bagaimana menghimpun semua kebutuhan stakeholder?2. Bagaimana titik temu atau “win-win solution” antara kebutuhan stakeholder dengan kepentingan developer?3. Bagaimana memulai pengerjaan sistem?
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Sketsa..
cementAlkali100TM
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain Arsitektur
Arsitektur adalah sebuah kerangka sistem secara menyeluruh.
Pressman (2005) menyebutkan bahwa arsitektur adalah struktur data dan komponen dalam sistem.
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Mengapa perlu membagun arsitektur?
- Sebagai panduan kerja- Meminimalisasi ketidaklengkapan data- Memastikan kebenaran sistem (Pressman, 2005)
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Tipe arsitektur sistem
- Sistem terdistribusi- Sistem alir- Sistem cabang- Sistem berlapis- Data terpusat
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Mendesain arsitektur sistem
- Desain proses- Desain basis data- Desain jaringan
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain prosesMendesain proses umumnya menggunakan PDFD (Physical Data Flow Diagram): Diagram alir untuk data (proses) fisik.
Id (optional)
Proses(bentuk nyata)
implementer
2.3
PinjamBuku.java
Java
2.3
FTPServer
Ubuntu Server 11.10
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain basis dataApa perbedaan penyimpanan konvensional dan basis data?
1.2.3.4.5.
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Review ttng basis dataDatabaseTableFileFieldRecordDDLDMLDBMSRDBMS
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Latihan..Normalisasikan data transaksi ini:
id_pinjam nam a_m hs alam at_m hs telp_m hs judul_buku pengarang tgl_pinjam tgl_kem bali denda
993457 Roni Malang 0441998458994 Beternak Itik di Lahan Kering Ardi Simatupang 12-03-2011 19-03-2011 0
993458 Rina Surabaya 0712366768884 Mengeruk dolar dari w w w Tatang Wijaya 13-03-2011 20-03-2011 1000
993459 Rani Bangil 0914523527352 Wirasw asta itu mudah Thomas Ginanjar 15-03-2011 22-03-2011 0
993460 Rini Pasuruan 0623452938596 Pengantar Teknologi Informasi Mahmud Zainal 20-03-2011 27-03-2011 300
993461 Runa Madura 0882125252244 Pengantar Jaringan Komputer Arie Tambunan 02-04-2011 09-04-2011 0
1. Berapa table yang terbentuk?2. Bagaimana relasi antar table yang telah terbentuk?3. Bagaimana bentuk ideal dari table diatas?
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain jaringan
Jaringan komputer diperlukan apabila sistem bekerja secara terdistribusi, atau melibatkan bagian lain diluar sistem. Contoh sistem bebasis internet, WAN dll
2 tipe pengembangan arsitektur jaringan- standalone- enterprise
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain Interface/antarmuka
Interface/antarmuka adalah penghubung antara sistem dengan pengguna.
Interface bisa diartikan view/tampilan perangkat lunak.
Interface bisa berupa:1. input untuk sistem2. output dari sistem
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain Input Desain input meliputi:- Desain perangkat masukan→ Website, POS, image capturer - GUI (Graphical User Interface)→ Formulir standar
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain OutputDesain output meliputi:- View→ tampilan yang diharapkan (website/desktop)- Notifikasi→ respon sistem terhadap inputan- Laporan→ pengarsipan data (pdf)- Diagram→ bagan-bagan terkait manipulasi data- Format data→ Penggunaan 2 atau lebih format data keluaran
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Estetika interfaceEstesika merupakan kaidah “keindahan” umum dalam menlai sesuatu (software).
Menurut MacLennan (2006) dari penelitian Billington(1983) ada tiga buah aspek yang perlu dievaluasi:efficiency, economy dan elegance.
Sementara bagi user ada tambahan reliable dan enak digunakan(MacLennan, 2006)
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Estetika interface (2)
4 pendekatan dalam mengembangkan estetika software engineering(MacLennan, 2006):
- experiment- critism- theory- practice
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Estetika interface (3)
Di dalam software, estetika meliputi:- Pemilihan kata dan bahasa→ singkatan, singkat:padat:jelas, istilah standar- Warna→warna saling menghidupkan, bukan mematikan- Ukuran dan letak→ komponen vs frame; screen vs frame; organisasi komponen
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain CodingPengkodean merupakan tahap konstruksi perangkat lunak yang dibangun dari model dan desain sebelumnya.
Masing-masing bahasa pemrograman memiliki format yang berbeda-beda. Namun terdapat kaidah umum penulisan program:- aturan penulisan kode
→ (kelas,atrribut,block dan tabbing)- dokumentasi kode- refactoring kode
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Desain Coding (2)if(int a!=0){ //apabila input “a” tidak bernilai
if(a>=80&&a<=100){System.out.println("Cumlaude");
}else if(a>=60&&a<=79){System.out.println("Baik");
}else{System.out.println("Ngulang");
}}else{
System.out.println("Tidak terdaftar");}
Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247
Bacaan lanjut..1. MacLennan. 2006 Aesthetic in Software Engineering. http://web.eecs.utk.edu/~mclennan/papers/ASE-TR.pdf2. Eden and kazman. Architecture, Design, Implementation. http://www.eden-study.org/articles/2003/icse03.pdf3. Garlan and Shaw. 1994. An Introduction of Software Archtecture. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.138.460&rep=rep1&type=pdf 4. Wikipedia dan yang lain..