Milano Sheva Wibowo
2115061052
PSTI C
Desain
Desain merupakan Perencanaan, penggambaran sketsa, Perancangan tentang sesuatu yang akan dibangun.
Desain dilakukan agar kualitas dapat diukur dan juga dapat dijamin jauh sebelum dilakukan pengimplementasian fisik sehingga resiko dan dampat dari resiko yang ditimbulkan akan menjadi sangat kecil
Teknik desain perangkat lunak terdapat perbedaan dengan teknik desain umumnya ( desain bangunan, desain mikrokontroller, dan desain karya seni) itu dikarenakan perangkat lunak bersifat intangible. ataupun tidak dapat disentuh secara langsung. Namun, telah dikembangkan berbagai macam metode yang dapat digunakan untuk kebutuhan mendesain sebuah perangkat lunak.
sebuah perangkat lunak harus dapat didesain demi mengejar beberapa faktor diantaranya adalah :
- Firmess : terhindar dari bugs dan error yang dapat mengganggu jalannya PL.
- Commodity : sesuai dengan keperluan dan juga kebutuhan kita.
- Delight : nyaman digunakan oleh pengguna ataupun pemakai perangkat lunak tersebut
Terdapat 4 layer yang ada di dalam desain perangkat lunak :
- Desain Data
- Desain Arsitektur
- Desain Antarmuka
- Desain Komponen
Desain data sendiri adalah Translasi ERD dan data Dictionary ke dalam konteks lingkungan implementasi
Desain Arsitektur merupakan rancang bangun dari PL, relasi dan posisi antar bagian utama dari PL dengan memanfaatkan design patterns
Desain Antarmuka adalah merancang metode interaksi antar komponen PL dan terhadap pengguna
Desain komponen merupakan desain detail masing masing prosedur di dalam komponen
Cara mengukur kualitas desain dari sebuah perangkat lunak
- Desain PL memiliki arsitektur yang :
- Dibuat menggunakan tamplate dan juga design patterns yang telah teruji
- Berisi sebuah komponen yang memiliki karakteristik desain yang baik
- Dapat diimplementasikan secara bertahap
- Desain Perangkat Lunak bersifat modular
- Desain dari perangkat lunak berisikan representasi yang jelas dari data, arsitektur, antarmuka, dan komponen
- Desain perangkat lunak memiliki struktur data yang pantas untuk setiap kelasnya
- Desain Perangkat Lunak memiliki antarmuka yang simple
- Desain Perangkat lunak dilakukan dengan metode yang jeals dan telah terbukti
- Desan Perangkat lunak harus menggunakan representasi yang dapat dimengerti secara bersama
setelah itu yang terakhir terdapat tujuan akhir dari desain perangkat lunak yaitu :
- Desain perangkat lunak harus dapat mengimplementasikan semua spesifikasi kebutuhan tertulis dan juga memenuhi harapan tak tertulis dari pengguna
- Desain Perangkat lunak harus dapat terdokumentasi dan juga mudah dibaca serta dimengerti oelh yang berkepentingan.
- Desain Perangkat lunak harus dapat menggambarkan keseluruhan dari perangkat lunak
Design class
Kelas yang ada pada tahap desain dapat dibedakan menjadi :
- Kelas analisis : yaitu kelas hasil turunan dari tahap analisis, dengan melakukan modifikasi dan adaptasi terhadap lingkungan impelemntasi. Misal : kelas mahasiswa, pada tahap desain ditambahkan fungsi getsummary() untuk mendapatkan rangkuman keterangan identitas yang akan ditampilkan pada dashboard.
- Kelas Boundary : yaitu kelas yang terlibat dalam pembangunan antarmuka perangkat lunak contohnya adalah kelas kelas form dan lain sebagainya
- kelas Controller : yaitu kelas yang dibuat untuk mengatur jalannya perangkat lunak contohnya adalah kelas main, kelas session controller dsb.
ARCHITECTURE
- Arsitektur PL adalah penggambaran secara konseptual terhadap keseluruhan struktur dari PL.
- Pada engineering yang tangible, arsitektur dapat dengan mudah dilakukan lewat penggambaran 2 dimensi maupun 3 dimensi. Lain halnya dengan PL yang tidak memiliki wujud fisik.
- Model yang dapat digunakan dalam representasi Arsitektur PL :
- Structural Models : Komponen-komponen apa saja yang ada pada PL.
- Framework Models : Kerangka & patterns apa yang digunakan.
- Dynamic Models : Bagaimana PL bereaksi pada setiap use case.
- Process Models : Proses teknis dari berjalannya PL.
- Functional Models : Hirarki secara fungsional dari komponen PL.
DESIGN PATTERNS
- Design Patterns adalah pola-pola desain khusus yang dapat diguna-ulang untuk keperluan tertentu.
- Analogi : jika ingin membangun jembatan layang, gunakan pattern cakar ayam untuk pondasinya.
- Tujuan utama design patterns : implementasi cara yang sudah teruji, dan memudahkan komunikasi
Cohesion dan Coupling
Cojesion adalah ukuran sejauh mana elemen elemen modul terkait secara fungsional ini merupakan sejauh mana semua elemen diarahkan untuk melakuakn tugas tunggal yang terkandung dalam sebuah komponen
Coupling dalam rekayasa perangkat lunak adalah tingkat saling ketergantungan antara modul perangkat lunak, ukuran seberapa erat hubungannya dua rutinitas atau modul kekuatan hubungan antara keduanya biasanya dikontraskan dengan kohesi. kopling rendah sering kali berkolerasi dengan kohesi tinggi dan begitu juga sebaliknya
Object oriented
Object oriented merupakan paradigma pemrograman berdasarkan konsep objek yang dapat ebrisi data dalam bentuk field atau dikenal juga sebagai atribut. Program-program yang telah ada merupakan gabungan dari beberapa komponen-komponen kecil yang sudah ada sebelumnya.
Recent Comments