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

Slides:



Advertisements
Presentasi serupa
KEBUTUHAN & SPESIFIKASI SOFTWARE
Advertisements

Pertemuan - 8 Teknik Audit Berbantuan Komputer
TEKNIK PERANCANGAN BASIS DATA
Proses-proses Perangkat Lunak
DASAR-DASAR PENGUJIAN PERANGKAT LUNAK
Bab 6 PERANCANGAN PERANGKAT LUNAK
DESAIN ARSITEKTUR PERANGKAT LUNAK
Minggu 6 Prinsip & Konsep Desain
Perancangan Perangkat Lunak lanjutan Kuliah - 7
PENGENALAN ANALISA SISTEM BERORIENTASI OBYEK
Desain Sistem By Hendro Joko Prasetyo, M.Kom.
Pengantar Berorientasi Obyek
Pertemuan 6 Structural modelling
Manajemen Proyek Sistem Informasi
6 Managing Software Requirement Perancangan
Perancangan (Design).
Ir. Waniwatining Astuti, M.T.I Rekayasa Perangkat Lunak
PERANCANGAN PERANGKAT LUNAK
Desain Sistem By Hendro Joko Prasetyo, M.Kom.
Prototyping Aplikasi Teknologi Informasi
PERANCANGAN KASUS UJI.
Analisis Persyaratan Perangkat Lunak dan Spesifikasi
PLANNING A SOFTWARE PROJECT Ir. Waniwatining Astuti, M.T.I.
STRATEGI PENGUJIAN PERANGKAT LUNAK
TEKNIK TESTING DAN STRATEGI TESTING
KONSEP PERANCANGAN SISTEM INFORMASI
Perancangan umum Sistem Informasi
Rekayasa Perangkat Lunak Spesifikasi Formal 9 By : Andi Latifa Nabone.
Spesifikasi Perangkat Lunak
KONSEP DASAR PENDEKATAN OBJEK
Desain Sistem.
Ir. Waniwatining Astuti, M.T.I Rekayasa Perangkat Lunak
Rekayasa Perangkat Lunak Model Proses PL
Pemrograman Visual I Outline: Method Method Void & fungsi
PERANCANGAN PERANGKAT LUNAK ( PL )
Pengantar Teknologi Informasi
Perancangan Antar Muka
Object oriented analyst and design
Pertemuan 6 Implementasi Modularitas Dalam Bahasa Pemrograman
PEMODELAN PROSES EVI YULIANTI, M.SI.
PENGEMBANGAN PERANCANGAN SISTEM
Koordinasi Antara Tahap Analisa dan Tahap Rancangan
Strategi Pengujian Perangkat Lunak
PERTEMUAN 13.
KEBUTUHAN & SPESIFIKASI SOFTWARE
Jaminan Mutu dalam Kebutuhan Rekayasa
Strategi Pengujian Perangkat Lunak & Sistem
PEMODELAN PROSES.
TESTING DAN IMPLEMENTASI SISTEM (Pertemuan Ke-11)
Materi Habis Uts IMK Prototyping
PERTEMUAN 2 Proses Pengembangan Perangkat Lunak
10 Perancangan Arsitektural
KEBUTUHAN & SPESIFIKASI SOFTWARE
REKAYASA PERANGKAT LUNAK
KONSEP & PEMODELAN ANALISIS
ANALISA & DESAIN BERORIENTASI OBJEK
Pengembangan Sistem Informasi
Testing Dan Implementasi Sistem
PMO Pertemuan Ke 5 Fragment
Desain Sistem.
STRUKTUR DATA NAMA : ALDI NUGROHO SETYO PAMBUDI NIM :
Database Server & Terdistribusi
Rekayasa Perangkat Lunak
DASAR - DASAR PERANCANGAN PERANGKAT LUNAK
Strategi Pengujian Perangkat Lunak
KEBUTUHAN & SPESIFIKASI SOFTWARE
Analisis Persyaratan Perangkat Lunak dan Spesifikasi
Strategi Pengujian Perangkat Lunak
Strategi Pengujian Perangkat Lunak
Strategi Pengujian Perangkat Lunak
Transcript presentasi:

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

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)

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

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)

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

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

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

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

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

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

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

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

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

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

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

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

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.