REKAYASA PERANGKAT LUNAK MATERI TM 10

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

Dibuat Oleh : 1. Andrey ( )

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

MAKALAH REKAYASA PERANGKAT LUNAK ( KONSEP DESAIN PERANGKAT LUNAK )

DESAIN PERANGKAT LUNAK & REKAYASA PERANGKAT LUNAK

DESAIN PERANGKAT LUNAK

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

PRINSIP DAN KONSEP DESAIN

Pertemuan 9 PRINSIP DAN KONSEP DESAIN

Prinsip dan Konsep Desain Perangkat Lunak

P10 Konsep & Prinsip Desain. A. Sidiq P.

Minggu 6 Prinsip & Konsep Desain

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

Prinsip Fundamental dalam Desain Perangkat Lunak

Rekayasa Perangkat Lunak

REKAYASA PERANGKAT LUNAK

REKAYASA PERANGKAT LUNAK MATERI TM 12

5 Perancangan Perangkat Lunak

Object-Oriented Design

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

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

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

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

DESAIN TEST CASE. Tugas ke 11 Rekayasa Perangkat Lunak

PROSES MODEL DESAIN PERANGKAT LUNAK

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

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

Bab 6 PERANCANGAN PERANGKAT LUNAK

DESAIN PERANGKAT LUNAK DAN REKAYASA PERANGKAT LUNAK PRINSIP DESAIN KONSEP DESAIN

SOFTWARE TESTING. Ratna Wardani

Design Engineering. Tim RPL. Program Studi Teknik Informatika

KONSEP DAN PRINSIP DESAIN. Oleh I Made Cipta Wahyudi

Desain arsitektur adalah untuk mengembangkan struktur program modular dan merepresentasikan hubungan kontrol antar modul. Metode desain yang

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

IMPLEMENTASI PERANGKAT LUNAK

Ratna Wardani. Department of Electronic Engineering Yogyakarta State University

Rekayasa Perangkat Lunak

Pengenalan Obyek. Arna Fariza. Materi

Tugas Rekayasa Perangkat Lunak

PEMODELAN ANALISIS. Di Susun Oleh : Linda Liana Dosen Pengampu : Wahyu Hari Haji M.Kom

BAB 4 PELAKSANAAN PENGUJIAN

A. Pengujian Perangkat Lunak

JAMINAN KUALITAS PERANGKAT LUNAK

BAB 2 LANDASAN TEORI

REKAYASA ULANG (REENGINEERING)

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

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

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

Testing dan Implementasi Sistem Informasi

PERENCANAAN PROYEK PERANGKAT LUNAK

MODEL DESAIN & DOKUMENTASI DESAIN

Tugas Rekayasa Perangkat Lunak

Pertemuan 3 Metodologi Pengembangan Sistem Informasi

A. Spesifikasi Perangkat Lunak

ABSTRAKSI DEKOMPOSISI PENGUJIAN Dalam REKAYASA PERANGKAT LUNAK

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

Testing dan Implementasi

SI402 Arsitektur Enterprise Pertemuan #2 Suryo Widiantoro, ST, MMSI, M.Com(IS)

12. KONSEP DAN PRINSIP ANALISIS

TEKNIK PENGUJIAN PERANGKAT LUNAK

Implementasi Sistem dan Maintenace Sistem. Sistem Informasi Universitas Gunadarma 2012/2013

Nama : Rendi Setiawan Nim :

BAB III METODOLOGI PENELITIAN. Gambar 3.1 merupakan desain penelitian yang akan digunakan dalam

Dasar-Dasar Pengujian Perangkat Lunak. Fakultas Ilmu Komputer dan Teknologi Informasi Jurusan Sistem Informasi Univesitas Gunadarma

Pemahaman (cont.) Analisis merupakan sebuah : Penemuan Perbaikan Pemodelan Spesifikasi (baru) Tim RPL 1

MAKALAH REKAYASA PERANGKAT LUNAK ( SIKLUS HIDUP PERANGKAT LUNAK )

Dibuat Oleh : 1. Andrey ( )

Nama : Rendi Setiawan Nim :

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

BAB 1 PENDAHULUAN Latar Belakang

Menjelaskan maksud dari arsitektur PL dan kenapa sangat penting.

Prinsip & Konsep Perancangan Sistem

Pertemuan 11 METODE DESAIN (2)

MODEL PENGEMBANGAN SISTEM

JAMINAN KUALITAS PERANGKAT LUNAK

BAB V KONSEP DAN PRINSIP DESAIN

BAB I PENDAHULUAN. yang mungkin masih belum mengetahui bagaimana kegunaan teknologi

Unified Modelling Language (UML)

BAB II LANDASAN TEORI. Pengertian sistem terbagi menjadi dua yaitu : pendekatan yang menekankan pada elemen / komponen.

Dibuat Oleh : 1. Andrey ( )

BAB I PENDAHULUAN. komputasi dan komunikasi untuk melakukan tugas-tugas informasi sehingga arus

BAB I PENDAHULUAN. Suara merupakan salah satu media komunikasi yang paling sering dan

BAB 3. METODOLOGI PENELITIAN

PENDAHULUAN. A. Berorientasi Objek. 1. Karakteristik dari Objek

3. Jaminan Kualaitas Jaminan kualitas terdiri atas fungsi auditing dan pelaporan manajemen. Tujuan jaminan kualitas adalah :

APLIKASI PERHITUNGAN HONOR MENGAJAR DOSEN TIDAK TETAP YANG BERBASIS PRESENSI DENGAN MENGGUNAKAN BARCODE Oleh: Wiwik Sulistiyorini (A

Metode-Metode Pengembangan Desain Aplikasi

Teknik Informatika S1

Chapter 8 Pengapsulan Peng

pada masalah pengumpulan kebutuhan pengguna pada tingkatan sistem (system requirements) dengan mendefinisikan konsep sistem beserta interface yang

REKAYASA PERANGKAT LUNAK

Manajemen Proyek Minggu 2

METODE PENGUJIAN PERANGKAT LUNAK

MODEL DESAIN DOKUMENTASI DESAIN

MAKALAH REKAYASA PERANGKAT LUNAK ( PEMODELAN PERANGKAT LUNAK DALAM ANALISIS )

MAKALAH PERANCANGAN BASIS DATA MODEL DATA. Disusun oleh: Ainun Aisyiyah Iman Safuad Ismi Fadhilah

III. METODE KONVENS IONAL 11. REKAYASA SISTEM BERBASIS KOMPUTER

Dwi Hartanto, S.Kom 6/11/2012. Pertemuan 13 PSBO 1

Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

Transkripsi:

MATA KULIAH: REKAYASA PERANGKAT LUNAK MATERI TM 10 DESAIN PERANGKAT LUNAK DAN REKAYASA PERANGKAT LUNAK ( PRINSIP DAN KONSEP DESAIN) NAMA : RAHMAT JAENURI NIM : 41814120237 Rekayasa Perangkat Lunak Page 1

MATERI: DESAIN PERANGKAT LUNAK DAN REKAYASA PERANGKAT LUNAK ( PRINSIP DAN KONSEP DESAIN) Desain adalah langkah pertama dalam fase pengembangan bagi setiap produk atau sistem yang direkayasa. Desain dapat didefinisikan berbagai proses aplikasi berbagai teknik dan prinsip bagi tujuan pendefinisian suatu perangkat, suatu proses atau sistem dalam detail yang memadai untuk memungkinkan realisasi fisiknya [TAY59]. Tujuan desainer adalah untuk menghasilkan suatu model atau representasi dari entitas yang kemudian akan dibangun. Desain Perangkat Lunak Dan Rekayasa Perangkat Lunak Desain perangkat lunak berada pada inti teknik dari proses rekayasa perangkat lunak dan diaplikasikan tanpa memperhatikan model proses perangkat lunak yang digunakan. Begitu persyaratan perangkat lunak telah mulai dianalisis dan ditentukan, maka desain perangkat lunak menjadi yang pertama dari tiga aktivitas teknik desain, pembuatan kode dan pengujian yang diperlukan untuk membangun dan menguji perangkat lunak. Persyaratan perangkat lunak, yang dimanifestasi oleh data, fungsional, dan model-model perilaku, mengisi langkah desain. Dengan menggunakan satu dari sejumlah metode desain, langkah desain menghasilkan a. desain data b. desain arsitektur c. desain interface d. desain prosedural Selama desain, kita dapat membuat keputusan yang akan mempengaruhi kesuksesan konstruksi perangkat lunak dan kemudahan maintenance-nya. Desain sangat penting karena dapat menentukan kualitas dari suatu perangkat lunak. Rekayasa Perangkat Lunak Page 2

Keterhubungan antara model desain dan model analis Proses Desain Desain perangkat lunak adalah suatu proses interaktif yang melaluinya persyaratan diterjemahkan ke dalam suatu cetak biru untuk membangun perangkat lunak. Cetak biru menggambarkan suatu pandangan menyeluruh perangkat lunak, yaitu bahwa desain dihadirkan pada tingkat abstraksi yang tinggi (dapat secara lanngsung ditelusuri sampai data spesifik, fungsional, dan persyaratan behavioral) 1. Desain dan kualitas perangkat lunak McGlaughlin mengusulkan 3 karakteristik yang berfungsi sebagai pedoman bagi evaluasi suatu desain yang baik : a. Desain harus mengimplementasikan keseluruhan persyaratan eksplisit yang dibebankan dalam model analisis, dan harus mengakomodasikan semua persyaratan implisit yang diinginkan pelanggan. b. Desain harus menjadi panduan yang dapat dibaca, dapat dipahami bagi mereka yang menghasilkan kode dan yang menguji serta memelihara perangkat lunak. Rekayasa Perangkat Lunak Page 3

c. Desain harus memberikan suatu gambaran lengkap mengenai perangkat lunak, yang menekankan data, dan domain perilaku dari perspektif implementasi. Kriteria teknis untuk desain yang baik : a. Desain harus memperlihatkan suatu organisasi yang dengan baik menggunakan kontrol di antara elemen-elemen perangkat lunak. b. Desain harus modular : yaitu bahwa perangkat lunak harus dipartisi secara logika ke dalam elemen-elemen yang melakukan fungsi dan subfungsi khusus. c. Desain harus berisi data dan abstraksi prosedural. d. Desain harus membawa ke arah modul (misal subrutin atau prosedur) yang memperlihatkan karakteristik fungsional independent. e. Desain harus mengarah kepada interface yang mengurangi kompleksitas hubungan antara modul-modul dan dengan lingkunga eksternal. f. Desain harus didapat dengan menggunakan metode berulang yang dikendalikan oleh informasi yang diperoleh selama analisis persyaratan perangkat lunak. 2. Evolusi desain perangkat lunak Merupakan suatu proses kontinu yang terus berlangsung selama tiga dekade. Kerja desain awal dikonsentrasikan pada kriteria untuk pengembangan program moduler dan metode-metode untuk menyaring arsitektur perangkat lunak dengan cara topdown. Aspek-aspek prosedural dari definisi desain yang tercakup dalam suatu filosofi disebut pemrograman terstruktur. Usaha selanjutnya mengusulkan metodemetode translasi aliran data atau struktur data ke dalam definisi desain. Pendekatan desain yang lebih baru mengusulkan suatu pendekatan orientasi obyek ke derivasi desain. Banyak metode desain yang tumbuh dari kerja tersebut, sedang diaplikasi pada industri. Setiap metode tersebut mempunyai sejumlah karakteristik umum : 1. Mekanisme penerjemahan suatu model analisis ke dalam representasi desain. Rekayasa Perangkat Lunak Page 4

2. Notasi untuk merepresentasikan komponen-komponen fungsional dan interface-nya. 3. Heuristik bagi penyaringan dan partisi 4. Pedoman bagi penilaian kualitas 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). Rekayasa Perangkat Lunak Page 5

KONSEP-KONSEP DESAIN 1. Abstraksi Abstraksi memungkinkan desainer menentukan prosedur dan data, dan masih menekan detail tingkat rendah. Terdapat 3 macam bentuk abstraksi, yaitu : 1. Abstraksi prosedural. Merupakan urutan instruksi yang diberi nama yang mempunyai fungsi tertentu dan terbatas. 2. Abstraksi data. Kumpulan data yang bernama yang menggambarkan obyek data. 3. Abstraksi kontrol. Mengimplikasikan suatu mekanisme kontrol program tanpa menentukan detail-detail internal 2. Penyaringan. Penyaringan stepwise (dengan serangkaian langkah) adalah strategi desain topdown 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 tugastugas 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. Rekayasa Perangkat Lunak Page 6

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. Rekayasa Perangkat Lunak Page 7

c. Keluarga dari sistem yang berhubungan. Desain harus memiliki kemampuan untuk memakai lagi blok bangunan arsitektural tersebut. Fungsi Desain Arsitektur PL Fungsi dari desain arsitektur adalah memampukan software developer untuk : 1. Analisis efektifitas dari desain untuk memenuhi kebutuhan/ requirement yg diminta. Berguna untuk komunikasi gambaran sistem dengan stakeholder yg berkaitan dalam pembangunan sistem. 2. Mempertimbangkan alternatif lain ketika ada perubahan desain terjadi. Arsitektur memberikan gambaran bagaimana sistem itu saling terkait dan bekerja. 3. Mengurangi risiko yang berkaitan dengan pembangunan software atau coding. Arsitektur memiliki pengaruh besar dalam rekayasa perangkat lunak karena menjelaskan hasil keputusan dalam bentuk desain. 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 structural Struktur progam harus dipartisi baik secara horizontal maupun vertikal. Partisi horizontal menentukan cabang-cabang terpisah dari hirarki modular untuk setiap fungsi program mayor. Keuntungannya : 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. Rekayasa Perangkat Lunak Page 8

Partisi vertikal menyatakan bahwa kontrol dan kerja harus didistribusikan secara topdown 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 masingmasing 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. Rekayasa Perangkat Lunak Page 9

https://rpl07.wordpress.com/2007/06/21/konsep-dan-prinsip-desain-oleh-afwan-b- 5105-100-169/#more-105 Rekayasa Perangkat Lunak Page 10