Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Ir. Waniwatining Astuti, M.T.I Rekayasa Perangkat Lunak

Presentasi serupa


Presentasi berjudul: "Ir. Waniwatining Astuti, M.T.I Rekayasa Perangkat Lunak"— Transcript presentasi:

1 Ir. Waniwatining Astuti, M.T.I Rekayasa Perangkat Lunak
DESAIN

2 Desain Perangkat Lunak
Kegiatan Desain dimulai dengan satu set kebutuhan, dan mungkin arsitektur Desain dilakukan sebelum sistem diimplementasikan Desain berfokus pada sudut pandang modul (modul view) – yaitu modul apa yang harus ada di sistem Sudut pandang modul bisa memiliki hubungan yang mudah atau rumit dengan sudut pandang C&C Desain sistem adalah cetak biru untuk implementasi Sering memiliki dua tingkat - tingkat tinggi (modul didefinisikan), dan desain rinci (logika ditentukan)

3 Desain ... Desain adalah sebuah aktivitas kreatif
Tujuan: untuk membuat rencana untuk memenuhi kebutuhan Desain merupakan aktivitas yang paling penting selama pengembangan sistem Desain menentukan karakteristik utama dari suatu sistem Memiliki dampak yang besar pada pengujian dan pemeliharaan Desain bentuk dokumen referensi untuk tahap selanjutnya Metodologi desain - pendekatan sistematis untuk menciptakan desain

4 Konsep Desain Desain adalah benar, jika itu akan memenuhi semua kebutuhan dan konsisten dengan arsitektur Dari desain yang benar, kita menginginkan desain terbaik Kita fokus pada modularitas sebagai kriteria utama (selain kebenaran)

5 Modularitas Sistem Modular - di mana modul dapat dibangun secara terpisah dan perubahan dalam satu modul akan memiliki dampak minimal pada modul lain. Modularitas mendukung kebebasan model Modularitas meningkatkan kejelasan desain dan memudahkan implementasi Mengurangi biaya pengujian, debugging dan pemeliharaan Untuk mendapatkan modularitas, tidak bisa hanya memotong program menjadi modul-modul Perlu beberapa kriteria untuk dekomposisi – seperti perpasangan dan kohesi

6 Perpasangan (Coupling)
Modul Independen : jika modul dapat berfungsi sepenuhnya tanpa keberadaan modul yang lain Kebebasan antara modul merupakan hal yang diinginkan Modul dapat dimodifikasi secara terpisah Dapat diimplementasikan dan diuji secara terpisah Biaya pemrograman menurun Dalam sistem, semua modul tidak bisa mandiri Modul harus bekerjasama satu sama lain Semakin banyak koneksi antara modul Semakin modul-modul itu saling tergantung satu sama lain Lebih banyak yg harus diketahui dari suatu modul utnuk memahami modul lain. Perpasangan menangkap gagasan ketergantungan

7 Perpasangan (Coupling)...
Perpasangan antara modul adalah kekuatan interkoneksi antara modul Secara umum, kita harus tahu tentang modul A untuk memahami modul B jika semakin berhubungan dekat antara A ke B "Highly coupled" modul bergabung dengan interkoneksi yang kuat "Loosely coupled" modul memiliki interkoneksi yang lemah

8 Perpasangan (Coupling)...
Tujuan: modul barpasangan selonggar mungkin. Bila memungkinkan, memiliki modul independen Perpasangan diputuskan pada desain tingkat tinggi Tidak bisa dikurangi selama pelaksanaan Perpasangan adalah konsep antar-modul Faktor-faktor utama yang mempengaruhi perpasangan Jenis koneksi antara modul Kompleksitas antarmuka Jenis arus informasi antara modul

9 Perpasangan – Jenis koneksi
Kompleksitas dan ketidakjelasan antarmuka (interface) meningkatkan perpasangan Minimalkan jumlah antarmuka per modul Minimalkan kompleksitas setiap antarmuka Perpasangan diminimalkan bila hanya tempat masuk modul yang digunakan oleh modul lain Informasi dilewatkan secara eksklusif melalui parameter Perpasangan ditingkatkan jika antarmuka tidak langsung dan tidak jelas yang digunakan bagian internal dari sebuah modul yang langsung digunakan variabel bersama yang digunakan untuk komunikasi

10 Perpasangan - kompleksitas antarmuka
Perpasangan meningkatkan seiring kompleksitas antarmuka misalnya jumlah dan kompleksitas parameter-parameter. Antarmuka dibutuhkan untuk mendukung komunikasi yang dibutuhkan Seringkali digunakan lebih dari yang dibutuhkan, misalnya melewatkan keseluruhan record ketika hanya satu field yang diperlukan Jaga antarmuka modul sesederhana mungkin

11 Perpasangan – Jenis Aliran Informasi
Perpasangan tergantung pada jenis arus informasi Dua jenis informasi: data atau kontrol Transfer informasi kontrol Aksi modul tergantung pada informasi Membuat modul lebih sulit untuk memahami Transfer informasi data Modul dapat diperlakukan sebagai input-output fungsi Lowest perpasangan: antarmuka hanya dengan komunikasi data tertinggi: hybrid interface

12 Perpasangan - Ringkasan
Kompleksitas antarmuka Jenis koneksi Jenis komunikasi Rendah Sederhana Jelas Ke modul menggunakan nama Data Tinggi Rumit Tidak jelas Ke elemen internal hybrid

13 Sistem Perpasangan di OO
Dalam sistem OO, modul dasar adalah kelas, yang lebih kaya dari fungsi Sistem OO memiliki tiga jenis perpasangan Perpasangan interaksi Perpasangan komponen Perpasangan pewarisan

14 Perpasangan di OO - Interaksi
Perpasangan interaksi terjadi karena metode kelas memanggil metode dari kelas lain Seperti memanggil fungsi Bentuk terburuk jika metode langsung mengakses bagian-bagian internal metode lain Masih jelek jika metode langsung memanipulasi variabel kelas lainnya Melewatkan informasi melalui variabel sementara juga buruk

15 Perpasangan di OO ... Perpasangan interaksi terkecil jika metode berkomunikasi secara langsung dengan parameter Dengan jumlah parameter sesedikit mungkin Dengan jumlah arus informasi sesedikit mungkin Dengan hanya data yang diterima Yakni metode harus melewati jumlah data sesedikit mungkin, dengan jumlah parameters sesedikit mungkin

16 Perpasangan di OO - Komponen
Perpasangan komponen - ketika kelas A memiliki variabel dari kelas lain C A memiliki variabel instance dari C A memiliki beberapa parameter jenis C A memiliki metode dengan var lokal jenis C Ketika A berpasangan dengan C, maka kelas tersebut berpasangan dengan semua subkelas dari C juga Perpasangan komponen umumnya akan menyiratkan adanya perpasangan interaksi juga

17 Perpasangan di OO – Pewarisan (Inheritance)
Perpasangan pewarisan - dua kelas yang digabungkan jika satu adalah subkelas dari yang lain Bentuk terburuk – jika subkelas memodifikasi signature dari metode atau menghapus metode Perpasangannya buruk bahkan jika signature-nya sama tapi implementasinya berubah Minimal, jika subkelas hanya menambahkan variabel-variabel dan metode-metode tapi tidak mengubahnya.


Download ppt "Ir. Waniwatining Astuti, M.T.I Rekayasa Perangkat Lunak"

Presentasi serupa


Iklan oleh Google