Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain...

35
Jurusan Teknik Informatika Fakultas Teknik Universitas Muhammadiyah Malang Jl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247 Materi Kuliah 4 Desain Perangkat Lunak Ilyas Nuryasin [email protected] [email protected]

Transcript of Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain...

Page 1: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 2: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 3: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 4: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247

Desain perangkat lunak

Page 5: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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.

Page 6: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 7: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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)

Page 8: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 9: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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)

Page 10: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 11: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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)

Page 12: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 13: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247

Review..

Page 14: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 15: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 16: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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?

Page 17: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247

Sketsa..

cementAlkali100TM

Page 18: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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.

Page 19: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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)

Page 20: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 21: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 22: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 23: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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.

Page 24: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

Jurusan Teknik InformatikaFakultas TeknikUniversitas Muhammadiyah MalangJl. Raya Tlogomas No. 246 Malang Telp. 0341-464318 Ext. 247

Review ttng basis dataDatabaseTableFileFieldRecordDDLDMLDBMSRDBMS

Page 25: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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?

Page 26: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 27: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 28: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 29: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 30: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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)

Page 31: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 32: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 33: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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

Page 34: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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");}

Page 35: Jurusan Teknik Informatika Fakultas Teknik Universitas ... · PDF fileDefinisi desain Desain adalah perwujudan dari model ... Ubuntu Server 11.10. ... Eden and kazman. Architecture,

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