Dibuat Oleh : 1. Andrey ( )

dokumen-dokumen yang mirip
REKAYASA PERANGKAT LUNAK MATERI TM 10

MAKALAH DESAIN PERANGKAT LUNAK. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

MAKALAH REKAYASA PERANGKAT LUNAK ( KONSEP DESAIN PERANGKAT LUNAK )

: ENDRO HASSRIE. Nim : : REKAYASA PERANGKAT LUNAK DESAIN PERANG LUNAK DAN REKAYASA PERANGKAT LUNAK

DESAIN PERANGKAT LUNAK

DESAIN PERANGKAT LUNAK & REKAYASA PERANGKAT LUNAK

Software Design. Konsep dan Prinsip Desain Struktur Desain. Mira/Rpl/Design

PRINSIP DAN KONSEP DESAIN

Pertemuan 9 PRINSIP DAN KONSEP DESAIN

PROSES MODEL DESAIN PERANGKAT LUNAK

Minggu 6 Prinsip & Konsep Desain

Rekayasa Perangkat Lunak

P10 Konsep & Prinsip Desain. A. Sidiq P.

Prinsip Fundamental dalam Desain Perangkat Lunak

5 Perancangan Perangkat Lunak

Prinsip dan Konsep Desain Perangkat Lunak

Tugas 5 Rekayasa Perangkat Lunak. Artikel mengenai Modularity dalam perangkat Lunak

Nama : Rendi Setiawan Nim :

REKAYASA PERANGKAT LUNAK LANJUT DESIGN ENGINEERING. Defri Kurniawan M.Kom

PEMROGRAMAN TERSTRUKTUR

IMPLEMENTASI PERANGKAT LUNAK

REKAYASA PERANGKAT LUNAK

Pembetulan permasalahan yang timbul mencakup : pembenaran kesalahan yang timbul setelah produk perangkat lunak dipergunakan oleh user

Tujuan. Menghasilkan suatu model atau representasi dari entitas yang kemudian akan dibangun. Tim RPL 1 2

Object-Oriented Design

Bab 6 PERANCANGAN PERANGKAT LUNAK

REKAYASA PERANGKAT LUNAK

Pertemuan 5 Konsep dan Prinsip Desain TIK : Menjelaskan konsep, prinsip dan tahapan dalam perancangan software

BAB II LANDASAN TEORI

METODE DESAIN DAN CODING

Dibuat Oleh : 1. Andrey ( )

III. METODE KONVENS IONAL 11. REKAYASA SISTEM BERBASIS KOMPUTER

Tujuan. entitas yang kemudian akan dibangun. ó Menghasilkan suatu model atau representasi dari. Tim RPL 1 2

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

PROSES DESAIN FAKULTAS ILMU KOMPUTER - UNIVERSITAS BRAWIJAYA 3/14/2017

DESAIN TEST CASE. Tugas ke 11 Rekayasa Perangkat Lunak

Pertemuan 5 PEDOMAN, PRINSIP DAN TEORI SISTEM INTERAKSI

MODEL DESAIN & DOKUMENTASI DESAIN

13. KONSEP DAN PRINSIP PERANCANGAN (DESAIN)

Design Engineering. Tim RPL. Program Studi Teknik Informatika

ABSTRAKSI DEKOMPOSISI PENGUJIAN Dalam REKAYASA PERANGKAT LUNAK

Pendahuluan. SDLC merupakan satu aplikasi dari pendekatan sistem untuk tugas mengembangkan dan menggunakan suatu sistem berbasiskomputer

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

Dibuat Oleh : 1. Andrey ( )

Perspektif Alur-kerja (workflow) - barisan kegiatan Perspektif Alur Data (Data flow) alur informasi Perspektif Peran/Aksi siapa melakukan apa.

DESAIN PERANGKAT LUNAK DAN REKAYASA PERANGKAT LUNAK PRINSIP DESAIN KONSEP DESAIN

BAB 2 LANDASAN TEORI. Era perkembangan teknologi yang semakin pesat dewasa ini membuat. dan penjualan produk lewat media elektronik seperti internet.

BAB V IMPLEMENTASI SISTEM

SOFTWARE TESTING. Ratna Wardani

BAB II LANDASAN TEORI

KONSEP DAN PRINSIP DESAIN. Oleh I Made Cipta Wahyudi

Pemrograman Web Berbasis Framework. Pertemuan 13 : Pengembangan Project (Bag. 1) Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

BAB III LANDASAN TEORI. Flippo (1984) mendefinisikan sebagai berikut: Penarikan calon pegawai

MAKALAH DESAIN DATA DAN ARSITEKTUR. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

BAB II LANDASAN TEORI

Pertemuan 12 dan 13 SQA TIK : Menjelaskan konsep dan strategi Software Quality Assurance

RAGAM DIALOG. Ragam Dialog (Dialogue Style) adalah cara yang digunakan untuk mengorganisasikan berbagai tehnik dialog.

REKAYASA ULANG (REENGINEERING)

A. Spesifikasi Perangkat Lunak

Pertemuan 11 METODE DESAIN (2)

RANCANGAN APLIKASI LATIHAN BELAJAR TENSES DENGAN METODE OBJECT ORIENTED DESIGN

BAB III LANDASAN TEORI

JAMINAN KUALITAS PERANGKAT LUNAK

PERTEMUAN 2 KONSEP DASAR PEMROGRAMAN

BAB V IMPLEMENTASI. A. Lingkungan Implementasi. Dalam hal kegiatan implementasi sistem ini adapun yang

Cycle) SDLC (System Development Life

BAB 4 PELAKSANAAN PENGUJIAN

BAHASA PEMROGRAMAN. Merupakan prosedur/tata cara penulisan program.

Menjelaskan maksud dari arsitektur PL dan kenapa sangat penting.

Pengembangan Sistem Informasi

MAKALAH REKAYASA PERANGKAT LUNAK ( SIKLUS HIDUP PERANGKAT LUNAK )

BAB 2 LANDASAN TEORI

MAKALAH MODEL DESAIN DAN DOKUMENTASI DESAIN. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

BAB 2 LANDASAN TEORI. Perangkat lunak adalah perintah ( program komputer ) yang bila dieksekusi

MAKALAH DESAIN TEST CASE. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

BAB 2 LANDASAN TEORI

BAB 2 TINJAUAN PUSTAKA

BAB V IMPLEMENTASI SISTEM

BAB V IMPLEMENTASI SISTEM

Rekayasa Perangkat Lunak

BAB I PENDAHULUAN 1.1. Latar Belakang

Tugas Rekayasa Perangkat Lunak

Model Interaksi Manusia dengan Komputer. model interaksi antara manusia dan komputer (ragam dialog/antarmuka)

DESAIN PERANGKAT LUNAK. Ign.F.Bayu Andoro.S, M.Kom

Pengembangan Sistem Informasi

BAB III LANDASAN TEORI

BAB III OBJEK DAN METODE PENELITIAN

Basis Data. Bab 1. Sistem File dan Basis Data. Sistem Basis Data : Perancangan, Implementasi dan Manajemen

Testing dan Implementasi Sistem Informasi

Sistem Pendukung Keputusan. Oleh: Ade Sarah H., M.Kom

BAB II TINJAUAN PUSTAKA

Pemrograman dengan C++ Builder 2004 Taryana S Pendahuluan C++ Builder adalah sebuah aplikasi yang digunakan untuk pengembangan dengan

REKAYASA PERANGKAT LUNAK MATERI TM 12

136 Pemeliharaan Perangkat Lunak

BAB 2 LANDASAN TEORI. Istilah komputer (computer) berasal dari bahasa Latin Computare yang berarti

PENDAHULUAN TUJUAN KEGUNAAN FLOWCHART KONSEP PEMROGRAMAN

PENGEMBANGAN BAGAN KENDALI MUTU UNTUK KOMPOSISI. simplex-lattice adalah (q+ m-1)!/(m!(q-1)!) (Cornell 1990).

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. pengembangan sistem yang lazim disebut Waterfall Model. Metode ini terdiri dari enam

BAB II. 2.1 Model Data High Level Data Model (Conceptual Data Model)

Interraksi Manusia dan Komputer

Transkripsi:

Dibuat Oleh : 1. Andrey (41813120186) FAKULTAS ILMU KOMPUTER PROGRAM STUDI SISTEM INFORMASI UNIVERSITAS MERCU BUANA JAKARTA 2015

Desain Perangkat Lunak Desain perangkat lunak bukan hanya sebuah perancangan berupa interface (antar muka) sebuah perangkat lunak, tetapi memiliki lingkup yang jauh lebih luas. Sebuah proses untuk mendefinisikan sesuatu yang akan dikerjakan dengan menggunakan teknik yang bervariasi serta didalamnya melibatkan deskripsi mengenai arsitektur serta detail komponen dan juga keterbatasan yang akan dialami dalam proses pengerjaannya. Sebuah proses perancangan membutuhkan pengetahuan mengenai berbagai teknik atau model perancangan yang dapat digunakan. Selain itu, sebuah perancangan membutuhkan hasil analisa yang telah mampu mendeskripsikan kebutuhan dari sistem yang akan dibuat.dan seorang desainer harus memahami kendala atau hambatan yang mungkin terjadi pada saat implementasi. Ini berarti bahwa sebuah proses perancangan memiliki 3 unsur penting, yakni : Pengetahuan mengenai teknik perancangan Kebutuhan sistem Kendala yang mungkin terjadi Desain Perangkat Lunak merupakan sebuah proses yang berkelanjutan dari analisa dan didalamnya melakukan identifikasi hasil analisa serta menghasilkan konsep dasar untuk kepentingan pengembangan perangkat lunak. Dalam pengertian yang sama, dapat digolongkan bahwa perancangan adalah mengubah dari apa yang menjadi kebutuhan, menjadi bagaimana mendefinisikan kebutuhan tersebut menjadi sebuah perangkat lunak.

Acuan umum untuk menilai bahwa hasil perancangan merupakan hasil perancangan yang baik Hasil perancangan harus mengimplementaasikan hasil analisa secara eksplisit dan memenuhi kebutuhan pengguna secara implisit Hasil perancangan harus dapat dimengerti oleh pihak pengembang perangkat lunak yang akan mengimplementasikan ke dalam bahasa pemrograman Hasil perancangan harus menyediakan gambaran yang lengkap mengenai perangkat lunak yang akan dibuat, baik dari segi data, fungsi serta perilaku yang akan dijalankan oleh perangkat lunak tsb. Sebuah perancangan perangkat lunak yang baik harus memenuhi syarat-syarat berikut : 1. Fleksibel 2. Mudah ditransfer 3. Mudah dimodifikasi 4. Mudah digunakan 5. Handal 6. Aman 7. Tidak Mahal Desain suatu perangkat lunak merupakan proses beberapa tahap yang difokuskan pada 4 atribut yang berbeda dari sebuah program yaitu: Struktur Data Arsitektur software, Tampilan antarmuka Algoritma (prosedur) Desain ini didokumentasikan dan menjadi bagian dari konfigurasi perangkat lunak

Desain Antar Muka Desain antarmuka harus dibuat yang menarik, interaktif, mudah dipelajari, mudah digunakan dan mudah dipahami. Beberapa faktor yang perlu diperhatikan dalam desain antarmuka, yaitu : 1. Ruang gerak mata 2. Sarana komunikasi 3. Mudah digunakan 4. Ergonomic (kenyamana & keamanan), yang meliputi : Penentuan ukuran, jenis, warna & format font, Pemilihan warna, Menyajikan objek yang tipis / kecil dengan pilihan warna, Ruang gerak mata 5. Cognitive Psychology, yang meliputi : Jumlah warna, Simbol standart & tata letak, Penggunaan kata yang tidak berkonotasi ganda. Ex : Masukkan nama anda, bisa dispesifikasikan menjadi masukkan nama user dll 6. Aneka ragam dialog, yang meliputi : Model menu datar, check box dll Permasalahan yang ada pada desain perangkat lunak : 1. Waktu respon sistem, diukur mulai saat user melakukan beberapa aksi kontrol sampai dengan perangkat lunak merespon dengan menampilkan output / aksi yang diperlukan. 2. Fasilitas help untuk pemakai. Ada 2 jenis fasilitas help yaitu : Help integrated, fasilitas help yang dimasukkan ke dalam perangkat lunak, yang memungkinkan user untuk memilih topik yang sesuai dengan kegiatan yang dilakukan. Help Add-On, fasilitas help yang ditambahkan setelah aplikasi perangkat lunak selesai dikembangkan yang dapat berupa manual user-line dengan kemampuan query yang terbatas.

Beberapa hal yang perlu dipertimbangkan dalam membuat desain help : Apakah help dapat diperoleh untuk semua fungsi sistem dan keseluruhan waktu selama interaksi sistem? Bagaimana user mengakses help? Pilihan meliputi : menu help, kunci fungsi khusu, perintah help Bagaimana help diprepresentasikan? Pilihan meliputi : sebuah jendela terpisah, refensi untuk dokumen yang tercetak serta satu atau dua baris usulan yang dibuat pada suatu lokasi layer yang tetap Bagaimana pemakai kembali ke interaksi normal?pilihan mencakup tombol return yang ditampilkan pada layer dan kunci fungsi atau urutan control Bagaimana informasi help distruktur? Pilihan mencakup struktur datar di mana semua informasi diakses melalui suatu kata kunci, hirarki informasi bertingkat, kegunaan hiperteks. Penanganan informasi kesalahan Sering kali pesan kesalahan tidak memberikan indikasi nyata mengenai apa yang salah atau dimana dapat memperoleh informasi tambahan. Karakteristik peringatan kesalahan adalah : Pesan harus menggambarkan masalah dalam istilah yang dapat dipahami oleh pemakai Pesan harus memberikan nasihat instruktif untuk membetulkan kesalahan Pesan harus mengindikasikan konsekuensi negatif dari kesalahan, cont. File data yang secara potensial dikorup) sehingga pemakai dapat mengecek untuk memastikan bahwa hal tersebut tidak terjadi (atau membetulkan bila memang terjadi) Pesan harus disertai oleh sebuah isyarat visual atau bunyi untuk mengiringi tampilan pesan Pesan tersebut harus tidak menghakimi yaitu penyusunan kata tidak boleh menyalahkan pemakai.

Rekayasa perangkat lunak adalah satu bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi pengembanganan perangkat lunak dan manajemen kualitas. Rekayasa perangkat lunak sebagai penerapan suatu pendekatan yang sistematis, disiplin dan terkuantifikasi atas pengembangan, penggunaan dan pemeliharaan perangkat lunak, serta studi atas pendekatan-pendekatan ini, yaitu penerapan pendekatan engineering atas perangkat lunak. Rekayasa Perangkat Lunak guna mengembangkan, memelihara, dan membangun kembali dengan menggunakan prinsip reakayasa untuk menghasilkan perangkat lunak yang dapat bekerja lebih efisien dan efektif untuk pengguna. Tujuan Rekayasa Perangkat Lunak Secara lebih khusus kita dapat menyatakan tujuan dan Rekaya Perangkat Lunak ini adalah: Memperoleh biaya produksi perangkat lunak yang rendah. Menghasilkan pereangkat lunak yang kinerjanya tinggi, andal dan tepat waktu Menghasilkan perangkat lunak yang dapat bekerja pada berbagai jenis platform Menghasilkan perangkat lunak yang biaya perawatannya rendah kriteria yang dapat digunakan sebagai acuan dalam merekayasa perangkat lunak: 1. Dapat terus dirawat dan dipelihara(maintainability) 2. Dapat mengikuti perkembangan teknologi(dependability) 3. Dapat mengikuti keinginan pengguna(robust) 4. Efektif dan efisien dalam menggunakan energi dan penggunaannya 5. Dapat memenuhi kebutuhan yang diinginkan(usability)

Prinsip desain Desain perangkat lunak berupa model dan proses. Proses desain adalah serangkaian langkah iteratif yang memungkinkan desainer menggambarkan semua aspek perangkat lunak yang dibangun. Model desain adalah ekivalen rencana arsitek untuk sebuah rumah, yang dimulai dengan menyajikan totalitas dari hal yang akan dibangun. Prinsip desain dasar memungkinkan perekayasa perangkat lunak untuk mengendalikan proses desain. a. Proses desain tidak boleh menderita karena tunnel vision b. Desain harus dapat ditelusuri sampai model analisis. c. Desain tidak boleh berulang. d. Desain harus meminimalkan kesenjangan intelektual di antara perangkat lunak dan masalah yang ada di dunia nyata. e. Desain harus mengungkap keseragaman dan integrasi. f. Desain harus terstruktur untuk mengakomodasi perubahan. g. Desain harus terstruktur untuk berdegradasi dengan baik, bahkan pada saat data dan event-event menyimpang, atau menghadapi kondisi operasi. h. Desain bukanlah pengkodean, dan pengkodean bukanlah desain. i. Desain harus dinilai kualitasnya pada saat desain dibuat, bukan setelah jadi. j. Desain harus dikaji untuk meminimalkan kesalahan-kesalahan konseptual (semantik).

Konsep-konsep desain 1. Abstraksi Abstraksi memungkinkan desainer menentukan prosedur dan data, dan masih menekan detail tingkat rendah. Terdapat 3 macam bentuk abstraksi, yaitu : a. Abstraksi prosedural. Merupakan urutan instruksi yang diberi nama yang mempunyai fungsi tertentu dan terbatas. b. Abstraksi data. Kumpulan data yang bernama yang menggambarkan obyek data. c. Abstraksi kontrol. Mengimplikasikan suatu mekanisme kontrol program tanpa menentukan detail-detail internal 2. Penyaringan. Penyaringan stepwise (dengan serangkaian langkah) adalah strategi desain top-down yang diusulkan oleh Wiklaus Wirth. Kajian dari konsep tersebut adalah Pada setiap langkah (penyaringan), satu atau beberapa instruksi dari program yang diberikan didekomposisi ke dalam instruksi-instruksi yang lebih detail. Dekomposisi berurutan atau penyaringan spesifikasi berhenti bila semua instruksi diekspresikan dalam bentuk bahasa pemrograman atau komputer yang mendasar. Jika tugas-tugas disaring, maka data harus disaring juga, didekomposisi atau distruktur, dan adalah wajar untuk menyaring program dan spesifikasi data secara paralel. Abstraksi dan penyaringan adalah konsep kompementer. Kedua konsep tersebut membantu desainer dalam menciptakan suatu model desain lengkap jika desain berkembang.

3. Modularitas Modularitas merupakan atribut tunggal dari perangkat lunak yang memungkinkan sebuah program untuk dikelola secara intelektual. Meyer menyebutkan 5 kriteria yang memungkinkan kita untuk mengevaluasi suatu metode desain dengan merujuk pada kemampuannya untuk menentukan sistem modular yang efektif. a. Dekomposisi modular. b. Komposabilitas modular. c. Kemampuan pemahaman modular. d. Kontinuitas modular. e. Proteksi modular. 4. Arsitektur perangkat lunak Arsitektur perangkat lunak mencakup struktur keseluruhan perangkat lunak dan cara dimana struktur memberikan integrasi konseptual bagi suatu sistem. Shaw dan Garlan menjelaskan sekumpulan properti yang seharusnya ditetapkan sebagai bagian dari desain arsitektural : a. Properti struktural. Menentukan komponen suatu sistem dan cara dimana komponen-komponen tersebut dikemas dan berinteraksi satu dengan yang lain. b. Properti ekstra-fungsional. Menekankan pada bagaimana arsitektur desain memenuhi persyaratan kinerja, kapasitas, reliabilitas, keamanan, adaptibilitas, dan karakteristik sistem yang lain. c. Keluarga dari sistem yang berhubungan. Desain harus memiliki kemampuan untuk memakai lagi blok bangunan arsitektural tersebut. 5. Hirarki Kontrol Hirarki kontrol, disebut juga struktur program merepresentasikan organisasi komponen program serta mengimplikasikan suatu hirarki kontrol. Hirarki kontrol tidak mengimplikasikan aspek prosedural dari perangkat lunak, seperti urutan proses, kejadian/urutan dari keputusan, atau pengulangan operasi.

6. Partisi struktural Struktur progam harus dipartisi baik secara horizontal maupun vertikal. Partisi horizontal menentukan cabang-cabang terpisah dari hirarki modular untuk setiap fungsi program mayor. Keuntungannya : a. menghasilkan perangkat lunak yang lebih mudah diuji. b. Membawa kepada perangkat lunak yang lebih mudah dipelihara. c. Menghasilkan penyebaran efek samping yang lebih sedikit. d. Menghasilkan suatu perangkat lunak yang lebih mudah untuk diperluas. Partisi vertikal menyatakan bahwa kontrol dan kerja harus didistribusikan secara top-down dalam arsitektur program. 7. Struktur data Struktur data adalah representasi dari hubungan logis antara elemen-elemen data individual. 8. Prosedur perangkat lunak Prosedur perangkat lunak berfokus pada detail-detail pemrosesan dari masing-masing modul secara individual. Prosedur harus memberikan spesifikasi yang teliti terhadap pemrosesan, mencakup urutan event, poin-poin keputusan nyata, operasi repetitif, dan organisasi struktur data. 9. Penyembunyian informasi Prinsip penyembunyian informasi menyatakan bahwa bahwa modul ditandai dengan keputusan desain tersembunyi dari semua desain lain.

Desain Modular Afektif 1. Independensi fungsional Merupakan hasil pertumbuhan langsung dari modularitas dan konsep abstraksi dan penyembunyian informasi. Independensi fungsional dicapai dengan mengembangkan modul dengan fungsi single-minded dan suatu aversi ke interaksi eksesif dengan modul yang lain. 2. Kohesi Kohesi adalah suatu ekstensi natural dari konsep penyembunyian informasi. Modul kohesi melakukan suatu tugas tunggal pada suatu prosedur perangkat lunak yang memerlukan sedikit interaksi dengan prosedur yang sedang dilakukan di bagian lain dari suatu program. 3. Perangkaian Perangkaian adalah pengukuran interkoneksi diantara modul-modul pada sebuah struktur progam. Perangkaian tergantung pada kompleksitas interface diantara modul-modul, titik dimana entri atau referensi dibuat untuk sebuah modul dan data yang dilewatkan pada interface tersebut. Sumber : 1. https://aristysaputri3.wordpress.com/desain-perangkat-lunak/ 2. https://ifunsika2011099.wordpress.com/2013/04/01/pengertian-dan-tujuan-rekayasa-perangkat-lunak/ 3. http://id.wikipedia.org/wiki/rekayasa_perangkat_lunak 4. https://rpl07.wordpress.com/2007/06/21/konsep-dan-prinsip-desain-oleh-afwan-b-5105-100-169/