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

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

BAB V KONSEP DAN PRINSIP DESAIN

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

Prinsip dan Konsep Desain Perangkat Lunak

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

Pertemuan 9 PRINSIP DAN KONSEP DESAIN

PRINSIP DAN KONSEP DESAIN

REKAYASA PERANGKAT LUNAK MATERI TM 10

Minggu 6 Prinsip & Konsep Desain

P10 Konsep & Prinsip Desain. A. Sidiq P.

KONSEP DAN PRINSIP DESAIN. Oleh I Made Cipta Wahyudi

Rekayasa Perangkat Lunak

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

MODEL DESAIN DOKUMENTASI DESAIN

Design Engineering. Tim RPL. Program Studi Teknik Informatika

PROSES MODEL DESAIN PERANGKAT LUNAK

Bab 6 PERANCANGAN PERANGKAT LUNAK

Prinsip Fundamental dalam Desain Perangkat Lunak

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

Dibuat Oleh : 1. Andrey ( )

DESAIN SISTEM AKUNTANSI TERINCI

5 Perancangan Perangkat Lunak

MAKALAH REKAYASA PERANGKAT LUNAK ( KONSEP DESAIN PERANGKAT LUNAK )

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

Tujuan 04/07/ :01

DESAIN PERANGKAT LUNAK

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

Terjemahan model analisis menjadi desain software

REKAYASA PERANGKAT LUNAK MATERI TM 12

13. KONSEP DAN PRINSIP PERANCANGAN (DESAIN)

DESAIN PERANGKAT LUNAK & REKAYASA PERANGKAT LUNAK

Prinsip & Konsep Perancangan Sistem

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

2. BAB II LANDASAN TEORI. lanjut sehingga terbentuk suatu aplikasi yang sesuai dengan tujuan awal.

MODEL DESAIN & DOKUMENTASI DESAIN

BAB 2 LANDASAN TEORI

Jenis Metode Pengembangan Perangkat Lunak

BAB I PENDAHULUAN. Pada era kemajuan teknologi seperti sekarang ini, manusia dapat melakukan

REKAYASA PERANGKAT LUNAK

TEKNIK PENGUJIAN PERANGKAT LUNAK (Software Testing Techniques)

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

SOFTWARE TESTING. Ratna Wardani

10/4/2007. Posisi Perancangan dalam RPL. Fungsi Proses Perancangan. Elemen Proses Perancangan (1) Perancangan vs Kualitas PL

BAB III KONSEP DAN PRINSIP ANALISIS

Testing dan Implementasi Sistem Informasi

BAB V PERANCANGAN MOXIE

PERTEMUAN 13 STRATEGI PENGUJIAN PERANGKAT LUNAK

BAB 1 PENDAHULUAN. satu hal yang sangat dominan dan terjadi dengan sangat pesat. Informasi

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

PENGEMBANGAN PERANGKAT LUNAK. Setia Wirawan

Nama : Rendi Setiawan Nim :

A. Pengujian Perangkat Lunak

DASAR REKAYASA PERANGKAT LUNAK

DESAIN TEST CASE. Tugas ke 11 Rekayasa Perangkat Lunak

BAB I PERSYARATAN PRODUK

BAB II LANDASAN TEORI

BAB III OBJEK DAN METODE PENELITIAN. Dalam penelitian ini yang menjadi objek penelitian yaitu Apotek Cibatu

BAHASA PEMROGRAMAN. Merupakan prosedur/tata cara penulisan program.

Pertemuan 11 METODE DESAIN (2)

TEKNIK PENGUJIAN PERANGKAT LUNAK PERTEMUAN 14

BAB III OBJEK DAN METODE PENELITIAN. berlokasi di Jl. Leuwi Panjang No. 111 Bandung Telpon Terbaik dalam pelayanan servis di bengkel.

Nama : Rendi Setiawan Nim :

A. Model Desain Perangkat Lunak

BAB I PENDAHULUAN. untuk bergerak secara dinamis untuk dapat memenangkan persaingan dan

Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

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

BAB I PENDAHULUAN. menggunakan beberapa komputer yang terhubung dalam Local Area Network

BAB I PENDAHULUAN 1.1 Latar Belakang

Menjelaskan maksud dari arsitektur PL dan kenapa sangat penting.

BAB II LANDASAN TEORI. Menurut Mulyadi (2008:202), penjualan merupakan aktivitas yang

BAB III LANDASAN TEORI. ada berkaitan dengan sistem yang akan dibuat. Tujuannya adalah agar aplikasi ini

BAB II LANDASAN TEORI. implementasi serta pasca implementasi.(rizky, 2011:21). performasi dan fungsi yang diinginkan.

Analysis Modeling 4/10/2018. Focus on What not How. Kenapa Analisis Kebutuhan. Definisi Analisis Kebutuhan. Langkah-Langkah Analisis Kebutuhan

TEKNIK PENGUJIAN PERANGKAT LUNAK

PERTEMUAN 6 MODULARISASI & KOMUNIKASI ANTAR MODUL

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

3. ANALISA KEPERLUAN PERANGKAT LUNAK

BAB III 3. LANDASAN TEORI

BAB III PERANCANGAN SISTEM

FASE PENGEMBANGAN. MPSI sesi 7 & 8

PEMROGRAMAN TERSTRUKTUR

1. Penggunaan Pemodelan

Perencanaan Proyek Perancangan Perangkat Lunak

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

Ratna Wardani. Department of Electronic Engineering Yogyakarta State University

BAB III METODE PENELITIAN. a. Menentukan kebutuhan data yang dibutuhkan. b. Mengumpulkan semua data yang dibutuhkan.

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

BAB III LANDASAN TEORI

Pertemuan 10 METODE DESAIN (1)

PENGANTAR RUP & UML. Pertemuan 2

ABSTRAKSI DEKOMPOSISI PENGUJIAN Dalam REKAYASA PERANGKAT LUNAK

BAB 6 METODE PENGUJIAN

BAB III OBJEK DAN METODE PENELITIAN. penelitian. Objek penelitian dalam penelitian ini adalah Sistem Informasi

Metode Perancangan. Tahap Perancangan

BAB V IMPLEMENTASI SISTEM. tersebut siap diterapkan atau diimplementasikan. Tahap Implementasi Sistem

Pengujian Perangkat Lunak

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

Dibuat Oleh : 1. Andrey ( )

PENGEMBANGAN PERANGKAT LUNAK

Object-Oriented Design

Transkripsi:

Pertemuan 7

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

FASE PENGEMBANGAN DAN DESAIN PERANGKAT LUNAK Fase pengembangan terdiri dari 3 langkah : 1. Design 2. Code Generation (manual or automatic) 3. Testing Setiap langkah melakukantransformasi informasi dalam suatu cara yang akhirnya menghasilkan software komputer yang valid Tim RPL 1 3

Software Requirement Dijelaskan dengan Information Domain, Functional and performance requirments, Feed the design step Menggunakan metodelogi : 1. Data Design 2. Architectural Design 3. Procedural Design Data Design -> difokuskan pada definisi dari struktur data Tim RPL 1 4

Software Requirement Architectural Design -> mendefinisikan hubungan antara elemen struktur utama dari program Procedural Design -> mengubah struktur elemen ke dalam prosedur software Tim RPL 1 5

Proses Design Software design -> Suatu proses yang melawati serangkaian kebutuhan yang membentuk sebuah perangkat lunak Software design dibagi dalam 2 tahap : 1. Preliminary Design Pada tahap ini difokuskan dengan transformasi dari keperluan / kebutuhan ke dalam data dan arsitektur software Tim RPL 1 6

Proses Design 2. Detail Design Difokuskan pada penghalusan representasi arsitektur yang berisi struktur data detail dan algoritma untuk software Tim RPL 1 7

Proses Design Tim RPL 1 8

Kualitas Desain & Software Beberapa tuntunan dalam melakukan agar dihasilkan desain dengan kriteria yang baik, yaitu suatu desain haruslah : 1. Memperlihatkan organisasi hirarki yang mengontrol elemen-elemen software 2. Berkenaan dengan modul. Software secara logika terbagi dalam elemenelemen yang membentuk fungsi dan sub fungsi 3. Berisi representasi yang berbeda dan terpisah dari data dan prosedur Tim RPL 1 9

Kualitas Desain & Software 4. Membentuk modul ( contoh subroutine dan procedure ) yang memperlihatkan karakteristik fungsi yang tidak saling bergantung 5. Diturunkan dengan menggunakan metode perulangan yang didukung oleh informasi yang ada selama analisa kebutuhan software Tim RPL 1 10

EVOLUSI DESAIN SOFTWARE Evolusi dari desain software merupakan proses yang berkelanjutan terus selama 3 dekade Beberapa metodologi telah tumbuh, dan secara umum memiliki karakteristik sebagai berikut : 1. Sebuah mekanisme untuk menterjemahkan representasi domain informasi ke dalam representasi desain 2. Notasi untuk merepresentasikan fungsi komponenkomponen dan interfaces-nya Tim RPL 1 11

EVOLUSI DESAIN SOFTWARE 3. Heuristics bagi penyaringan dan partisi 4. Petunjuk untuk penaksiran kualitas Tim RPL 1 12

DASAR-DASAR DESAIN Membantu software engineer untuk menjawab pertanyaan-pertanyaan berikut : Apakah kriteria yang dapat dipakai untuk mempartisi software menjadi sejumlah komponen? Bagaimana fungsi atau struktur data dipisahkan dari suatu representasi konseptual software? Apakah ada kriteria yang seragam yang menetapkan kualitas tehnik dari suatu software desain? Tim RPL 1 13

Arsitektur Software Arsitektur perangkat lunak menyinggung 2 karakteristik penting dari sebuah program komputer : 1. Hirarki struktur dari komponen-komponen prosedural ( modul ) 2. Struktur data Tim RPL 1 14

Arsitekture Software Tim RPL 1 15

Arsitektur Software Tim RPL 1 16

Program Structure Program structure menampilkan / menyajikan organisasi ( seringkali organisasi hirarki ) dari komponen-komponen program ( modul-modul ) dan mengandung arti hirarki dari kontrol program Notasi yang digunakan adalah diagram tree. Biasanya dinamakan structure chart Tim RPL 1 17

Program Structure Tim RPL 1 18

Data Structure Menggambarkan relasi logikal antara sejumlah elemen dari. Contoh : type G = array [1..100] of integer;...... Procedure S ( var T : G ; n : integer ; sum : integer ); Var begin end; I : integer; sum := 0; for I:=1 to n do sum := sum + t[i]; Tim RPL 1 19

Sotware Procedure Difokuskan pada detail pemrosesan dari setiap modul secara individu. Prosedur harus mengandung spesifikasi yang benar / tepat dari pemrosesan, termasuk : sequence of events, decision points, repetitive operations, dan struktur data. Tim RPL 1 20

Software Procedure Tim RPL 1 21

Modularitas Software dibagi kedalam nama-nama yang terpisah dan elemen-elemen yang dapat dipanggil, yang disebut dengan modul, yang termasuk kedalam memenuhi syarat-syarat permasalahan Misalkan : C(x) = fungsi kompleksitas dari suatu masalah E(x) = fungsi usaha/waktu yang diperlukan untuk memecahkan suatu masalah P1,P2 = masalah 1, masalah 2 Tim RPL 1 22

Modularitas Jika : C(P1) > C(P2) maka : E(P1) > E(P2) Berdasarkan penelitian : 1. C ( P1 + P2 ) > C ( P1 ) + C ( P2 ) 2. E ( P1 + P2 ) > E ( P1 ) + E ( P2 ) Konklusi : 1. Kompleksitas suatu masalah gabungan P1 dan P2 akan berkurang jika masalah tersebut dipisahkan 2. Akan lebih mudah menyelesaikan suatu masalah jika dipecah / dipartisi Tim RPL 1 23

Modularitas Tim RPL 1 24

Abstraksi Jika kita menggunakan suatu solusi modular untuk beberapa masalah, maka beberapa level / tingkat abstrasi dapat ditampilakn / diperlihatkan. Pada level tertinggi, suatu solusi berada pada term yang umum dengan menggunakan bahasa natural Level yang lebih rendah lebih berorientasi pada prosedur-prosedur Tim RPL 1 25

Contoh Abstraksi 1 The software will incorporate a computer graphics interface that will enable visual communication with the drafts person and a digitizer interface that replace the drafting board and square. All line and curve drawing, all geometric computation, and all sectioning and auxiliary views will be performed by the CAD Comp. Tim RPL 1 26

Contoh Abstraksi 2 CAD Software tasks : user interaction task ; 2-D drawing creation task ; graphics display task ; drawing file management task ; end. Tim RPL 1 27

Penyembunyian Informasi Black Box --> input, output, & proses diketahui tetapi proses detail tidak diketahui. Bagi Modul B, Modul C adalah Black Box Tim RPL 1 28

Penyembunyian Informasi Keuntungan : Jika diperlukan modifikasi selama testing dan maintenance data & prosedur disembunyikan dari bagian lain, dari program / software secara keseluruhan. Kesalahan-kesalahan yang terjadi selama modifikasi tidak merambat pada bagian lain. Tim RPL 1 29

Desain Modular Efektif Modular design mereduksi komplesitas masalah, menyediakan fasilitas untuk melakukan perubahan ( dalam hal pemeliharaan ), dan memudahkan implementasi dengan pengembangan paralel dari bagian-bagian yang berbeda dalam suatu sistem Module Type Abstraksi dan penyembunyian informasi dipakai untuk mendefinisikan modul-modul di dalam lingkungan software architecture Tim RPL 1 30

Module Type Di dalam structure software, suatu modul mungkin dikategorikan sebagai berikut : 1. Sequential module dieksekusi tanpa interupsi yang dilakukan software aplikasi 2. Incremental module dapat diinterupsi oleh program aplikasi dan kemudian kembali ke titik semula setelah interupsi selesai 3. Parallel module dieksekusi secara simultan dengan modul lain dalam lingkungan Concurrent multiprocessor Tim RPL 1 31

Independensi Fungsional Konsep functional independence berkembang dari modularitas dan konsep abstraksi serta information hiding Independence diukur dengan menggunakan 2 kriteria kualitatif, yaitu 1. Cohesion 2. Coupling Tim RPL 1 32

Cohesion (Keterpautan) Perluasan / kelanjutan dari information hiding Suatu modul kohesif membentuk sebuah tugas tunggal di dalam suatu software prosedur dan memerlukan sedikit interaksi dengan prosedur yang dibuat dalam bagian lain dari suatu program Tim RPL 1 33

Cohesion (Keterpautan) Coincidental cohesion : sebuah modul yang membentuk sejumlah tugas yang berhubungan satu sama lain dengan longgar Logically cohesion : sebuah modul yang membentuk tugas-tugas yang dihubungkan secara logical Temporal cohesion : jika sebuah modul berisi sejumlah tugas yang dihubungkan dengan segala yang harus dieksekusi di dalam waktu yang bersamaan. Tim RPL 1 34

Procedural cohesion : jika pemrosesan elemen-elemen dari suatu modul dihubungkan dan harus dieksekusi dalam urutan spesifik Communication cohesion : jika pemrosesan elemen-elemen dikonsentrasikan pada satu area dari suatu struktur data Tim RPL 1 35

Coupling (Bergandengan) Merupakan suatu pengukuran dari keterkaitan / keterhubungan antara sejumlah modul dalam struktur program Coupling tergantung pada kompleksitas interface antar modul Tim RPL 1 36

Tim RPL 1 37

Control coupling terjadi ketika modul 1 mengirimkan kontrol data ke modul2 Tim RPL 1 38

Modul C, E, dan N menunjukkan common-coupling Tim RPL 1 39

Heuristik Design Bagi Modularitas yang Efektif Evaluasi iterasi pertama dari struktur program untuk mengurangi perangkaian dan meningkatkan kohesi. Usahakan meminimalkan struktur dengan fan-out yang tinggi; usahakan untuk melakukan fan-in pada saat kedalaman (depth) bertambah. Jagalah supaya lingkup efek dari suatu model ada dalam lingkup control. Evaluasi interface modul untuk mengurangi kompleksitas dan redundansi. Tim RPL 1 40

Tetapkan modul-modul yang fungsinya dapat diprediksi, tetapi hindari modul yang terlalu restriktif. Usahakan modul-modul entri kontrol" dengan menghindari hubungan patalogis Kemaslah software berdasarkan batasan desain dan persyaratan probabilitas. Tim RPL 1 41

Modul Design Prinsip dan konsep desain yang dibicarakan pada bab ini membangun sebuah fondasi untuk pembuatan model desain yang mencakup representasi data, arsitektur, interface dan prosedur. Tim RPL 1 42

Dokumentasi Design Outline spesifikasi desain : I. Ruang Lingkup A. Sasaran Sistem B. Persyaratan utama software C. Batasan-batasan dan pembatasan desain II. Desain Data A. Obyek data dan struktur data resultan B. Struktur file dan database 1. Struktur file eksternal Tim RPL 1 43

a. struktur logis b. deskripsi record logis c. metode akses 2. data global 3. file dan referensi lintas data III. Desain Arsitektural A. Kajian data dan aliran control B. Struktur program yang diperoleh Tim RPL 1 44

IV. Desain Interface A. Spesifikasi interface manusia-mesin B. Aturan desain interface manusia-mesin C. Desain interface eksternal 1. Interface untuk data eksternal 2. Interface untuk sistem atau peralatan eksternal V. Desain Prosedural Untuk masing-masing modul : A. Naratif pemrosesan Tim RPL 1 45

B. Deskripsi Interface C. Deskripsi bahasa (atau lainnya) desain D. Modul-modul yang digunakan E. Struktur data internal F. Keterangan/larangan/pembatasan VI. Persyaratan Lintas-Referensi VII. Ketetentuan pengujian 1. Panduan pengujian 2. Strategi integrasi Tim RPL 1 46

3. Pertimbangan Khusus VIII. Catatan Khusus IX. Lampiran Tim RPL 1 47

Selesai Tim RPL 1 48