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

dokumen-dokumen yang mirip
Metode Perancangan. Tahap Perancangan

Prinsip & Konsep Perancangan Sistem

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

Prinsip dan Konsep Desain Perangkat Lunak

Minggu 6 Prinsip & Konsep Desain

Bab 6 PERANCANGAN PERANGKAT LUNAK

13. KONSEP DAN PRINSIP PERANCANGAN (DESAIN)

KONSEP DAN PRINSIP DESAIN. Oleh I Made Cipta Wahyudi

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

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

P10 Konsep & Prinsip Desain. A. Sidiq P.

PRINSIP DAN KONSEP DESAIN

Rekayasa Perangkat Lunak

Pertemuan 9 PRINSIP DAN KONSEP DESAIN

Terjemahan model analisis menjadi desain software

Design Engineering. Tim RPL. Program Studi Teknik Informatika

5 Perancangan Perangkat Lunak

REKAYASA PERANGKAT LUNAK

Menjelaskan maksud dari arsitektur PL dan kenapa sangat penting.

PROSES MODEL DESAIN PERANGKAT LUNAK

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

BAB V KONSEP DAN PRINSIP DESAIN

Rekayasa Perangkat Lunak (Software Engineering)

Pertemuan 11 METODE DESAIN (2)

Konsep Perancangan Perangkat Lunak

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

ANALISIS DAN PERANCANGAN SISTEM (APS) Konsep Perancangan

BAB III METODOLOGI PENELITIAN. tools yang akan digunakan untuk merancang aplikasi generator denah

BAB III METODOLOGI PENELITIAN. perangkat lunak sebagai tools untuk merancang aplikasi tersebut, yaitu:

Dibuat Oleh : 1. Andrey ( )

Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

Prinsip Fundamental dalam Desain Perangkat Lunak

MAKALAH REKAYASA PERANGKAT LUNAK ( KONSEP DESAIN PERANGKAT LUNAK )

Pertemuan 10 METODE DESAIN (1)

REKAYASA PERANGKAT LUNAK MATERI TM 10

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

DESAIN PERANGKAT LUNAK

A. Model Desain Perangkat Lunak

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

Tujuan 04/07/ :01

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

BAB III METODOLOGI PENELITIAN. Desain penelitian adalah tahapan atau gambaran yang akan dilakukan

BAB III METODE PENELITIAN. penelitian. Perancangan tingkat usability. Analisis. Identifikasi Pola Interaksi

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

Tugas Rekayasa Perangkat Lunak

REKAYASA PERANGKAT LUNAK MATERI TM 12

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

BAB 1 PENDAHULUAN. Kantor Pelayanan Pajak Pratama Jakarta Kramat Jati merupakan suatu

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

DESAIN SISTEM AKUNTANSI TERINCI

Analisis (Konvensional)

PROSES PERANCANGAN SISTEM INFORMASI

BAB III PERANCANGAN PROGRAM

PERANCANGAN SISTEM INFORMASI PEMANTAUAN ALAT BANTU MARKETING (STUDI KASUS : TELKOM UNIVERSITY)

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

BAB I PENDAHULUAN. Suatu Perusahaan atau Organisasi tidak dapat terlepas dari kegiatan atau

Analisis dan desain model

PROSES DESAIN SISTEM BASIS DATA. Daur Hidup (Life Cycle) yang Umum dari Aplikasi Basis Data

BAB 1 PENDAHULUAN Latar Belakang Masalah

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

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

MAKALAH REKAYASA PERANGKAT LUNAK ( PEMODELAN DATA )

BAB III LANDASAN TEORI. mengumpulkan (input), memanipulasi (process), menyimpan, dan menghasilkan

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

BAB V PERANCANGAN MOXIE

ANALISA DAN PERANCANGAN SISTEM INFORMASI. Pendekatan Terstruktur dan alat-alat pemodelan Sistem

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

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

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB II TINJAUAN PUSTAKA. skala menengah yang bergerak di bidang penjualan spare part mesin

12. KONSEP DAN PRINSIP ANALISIS

GL01 SPESIFIKASI KEBUTUHAN PERANGKAT LUNAK. <Nama Perangkat Lunak> untuk: <Nama Customer> Dipersiapkan oleh: <Nomor Grup & Anggota>

Analisis Sistem (bag.2)

2. Semua struktur data dan operasi yang akan dilakukan pada masing masing struktur data harus diidentifikasi.

BAB II LANDASAN TEORI. Teori teori yang digunakan sebagai landasan dalam desain dan. implementasi dari sistem ini adalah sebagai berikut :

EDU SOFT. Statement Of Work

FASE PENGEMBANGAN. MPSI sesi 7 & 8

BAB III LANDASAN TEORI

Data & Architecural Design. Tim RPL Progdi Teknik Informatika

A. Spesifikasi Perangkat Lunak

DESAIN PERANGKAT LUNAK & REKAYASA PERANGKAT LUNAK

REKAYASA PERANGKAT LUNAK I

1. Konsep dan Prinsip Analisa

BAB III LANDASAN TEORI

BAB III LANDASAN TEORI. Dalam mendefinisikan istilah bimbingan, para ahli bidang bimbingan dan

BAB II LANDASAN TEORI

P4 Desain Sistem. SQ

BAB 6 MEMBANGUN USER INTERFACE YANG KONSISTEN - STANDARD MEMBANGUN USER INTERFACE - APPEARANCE VS BEHAVIOR

BAB III METODOLOGI PENELITIAN

PEMODELAN ANALISIS PL

BAB II LANDASAN TEORI. pembelian dilakukan dengan mengubah bentuk barang. 2003). Menurut Soemarso S.R (1994) kegiatan pembelian dalam perusahaan

BAB III METODOLOGI PENELITIAN

PERTEMUAN 6 MODULARISASI & KOMUNIKASI ANTAR MODUL

BAB 2 LANDASAN TEORI

BAB III METODOLOGI PENELITIAN

IMPLEMENTASI PERANGKAT LUNAK

1.1 Latar Belakang Masalah

PERANAN TEAM SOFTWARE PROCESS PADA REKAYASA PERANGKAT LUNAK

BAB 1 PENDAHULUAN. Dalam komunikasi tersebut baik yang berisi informasi maupun pemberitahuan

BAB I PENDAHULUAN 1.1 Latar Belakang

Transkripsi:

Posisi Perancangan dalam RPL Designing the System Oleh : Ir. I Gede Made Karma, MT Sebagai technical kernel dari proses pembangunan PL. Merupakan proses kreatif dalam pembangunan PL untuk memecahkan persoalan. Filosofi proses perancangan: mengemukakan suatu solusi membangun model dari solusi evaluasi model terhadap spesifikasi kebutuhan yang telah ada menjabarkan kerincian atas solusi tersebut Fungsi Proses Perancangan Elemen Proses Perancangan (1) Translasi / pengembangan spesifikasi PL Penjabaran bagaimana PL dapat berfungsi Penjabaran bagaimana spesifikasi PL dapat diimplementasikan Input : SRS Output : SDD Data Object Description Process Specification (PSPEC) Entity- Data Flow Relationship Diagram Diagram Data Dictionary State-Transition Diagram Control Specification (CSPEC) interface design architectural design data design procedural design THE ANALYSIS MODEL THE DESIGN MODEL Elemen Proses Perancangan (2) Perancangan Data transformasi model data yang dihasilkan oleh proses analisis menjadi struktur data yang dibutuhkan pada saat implementasi Perancangan Arsitektur definisi keterkaitan antar elemen-elemen utama yang akan membentuk program Perancangan Antarmuka penjabaran komunikasi: internal PL, antara PL dengan sistem diluarnya, dan antara PL dengan usernya Perancangan Prosedur transformasi elemen struktural dari arsitektur program menjadi deskripsi prosedur. Perancangan vs Kualitas PL Selama proses perancangan, kualitas perancangan selalu dipantau melalui review teknis formal. Petunjuk untuk evaluasi kualitas (McGlaughlin): perancangan harus mengimplementasikan semua kebutuhan PLyang disebut eksplisit di SRS, sekaligus mengakomodasikan semua kebutuhan implisit dari SRS harus readable, understandable khususnya bagi programmer, tester dan pelaku maintenance harus menyajikan gambaran lengkap PL, meliputi: model data,fungsi, dan kelakuan PL dari sudut pandang perspektif implementasi. 1

Prinsip-prinsip Perancangan Mempertimbangkan beberapa alternatif model solusi Traceable terhadap model analisis Mempertimbangkan dan menghasilkan komponen reusable Meminimasi kesenjangan antara PL dengan kondisi nyata Memperlihatkan keseragaman dan integrasi Mengakomodasi perubahan Mengakomodasi kondisi-kondisi insidentil yang mungkin terjadi Abstraksi lebih detil dari analisis, tetapi lebih tinggi dari coding Dapat terukur kualitasnya Harus di-review untuk meminimasi kesalahan semantik Konsep Perancangan (1) Abstraksi: abstraksi data abstraksi prosedur abstraksi kontrol/kendali Refinement/elaborasi merinci abstraksi tingkat tinggi menjadi representasi yang lebih mengarah pada struktur internal sistem. Konsep Perancangan (2) Modularitas Konsep Perancangan (3) ArsitekturPL Konsep Perancangan (4) Hierarki kendali struktur program merepresentasikan organisasi dari modul-modul modul, yang implikasinya merupakan kendali hierarki Partisi struktur (vertical partitioning) function 1 function 3 Konsep Perancangan (5) Partisi struktur (horizontal partitioning) decision-makers workers function 2 2

Konsep Perancangan (6) Mengapa dipartisi? 1. Memudahkan pengujian PL 2. Memudahkan perawatan PL 3. Meminimalkan side effek 4. Memudahkan pengembangan PL Konsep Perancangan (7) Struktur Data: scalar item sequential vector (contiguou) linked list kombinasi dari beberapa format Penting karena mempengaruhi: organisasi informasi metode akses tingkat keterkaitan informasi alternatif pemrosesan informasi Konsep Perancangan (8) ProsedurPL menjabarkan kerincian pemrosesan setiap modul, termasuk urutan proses dan pengulangan operasi Information hiding modul-modul harus dirancang sedemikian rupa sehingga informasi (prosedur dan data) yang terkandung, tidak dapat diakses oleh modul lain yang tidak berkepentingan dengan informasi tersebut. Perancangan Modular Efektif (1) Functional Independence Diukur berdasarkan dua kriteria kualitatif (1) Cohesion: derajad kekuatan fungsional relatif dalam suatu modul Coincidental Temporal Communicational Functional Logical Procedural Sequential Scattered-brained Single-minded Perancangan Modular Efektif (2) Functional Independence (2) Coupling: derajad kebergantungan relatif antar modul Perancangan Modular Efektif (3) Contoh situasi coupling dalam perancangan PL: No direct coupling Stamp coupling External Content coupling Data coupling Control coupling Common coupling LOW HIGH 3

Perancangan Heuristik Agar hasil perancangan menjadi modular dan efektif Menggunakan petunjuk-petunjuk teknis di setiap tahap perancangan (7 langkah heuristik): pada iterasi pertama: kurangi coupling, naikkan cohesion minimisasi fan-out, usahakan fan-in ketika depth bertambah tetap perhatikan scope of control dari modul evaluasi antarmuka modul untuk mereduksi kompleksitas dan menaikkan konsistensi definisikan modul yang fungsinya dapat diprediksi, dan hindari modul yang sangat terbatas fungsinya usahakan modul yang memiliki controlled entry, hindari pathological connections bungkus lah PL sesuai kebutuhan portabilitas dan batasan perancangan. Deliverable Tahap Perancangan Dokumen Software Design Document (SDD): Ruang Lingkup Perancangan Data Perancangan Arsitektural Perancangan Antarmuka Perancangan Prosedur Kebutuhan Lainya Persiapan Pengujian Catatan Khusus Kesimpulan Proses Perancangan: technical kernel dari RPL proses utama: refinement atas isi SRS hasil rancangan harus dapat diukur kualitasnya dapat menggunakan beberapa pendekatan metode perancangan sebelum masuk ke tahap coding, harus dilakukan review atas SDD yang dihasilkan Tahap Perancangan Perancangan Data Perancangan Arsitektural Perancangan Antarmuka Perancangan Prosedural Perancangan Data (1) Memilih representasi lojik dari objek data yang ditemukanpada proses analisis Refinement terhadap Data Dictionary menjadi: struktur data (array, list, dll.) struktur file / basis data lengkap dengan fieldnya Penentuan struktur data maupun struktur file /basis data membutuhkan kreativitas dan sistematika yang rapi agar tidak menyulitkan proses berikutnya, khususnya perancangan prosedur. Perancangan Data (2) Petunjuk teknis perancangan data: menerapkan prinsip-prinsip analisis sistematis (pada tahap analisis) mengidentifikasi semua struktur data dan prosedur yang akan digunakan untuk mengakses data tsb me-refine isi data dictionary menunda perancangan data yang low-level sampai di akhir-akhir proses perancangan merepresentasikan struktur data sedemikian rupa sehingga hanyamodul yang menggunakan data tersebut yang dapat mengaksesnya membangun pustaka untuk struktur data dan prosedur yang sering digunakan mendukung spesifikasi dan realisasi ADT 4

Perancangan Data (3) Hasil perancangan data adalah: struktur data siap diprogram struktur basis data siap dibuat oleh pemrogram prosedur/operasi untuk mengakses data, siap diprogram Perancangan Arsitektural (1) Objektif utama: membangun struktur program modular dan merepresentasikan keterkaitan kendali antar modul; dan memadukan struktur program dan struktur data, dan mendefinisikan antarmuka yang memungkinkan data dapat mengalir pada seluruh program. Perancangan Arsitektural (2) Proses: pengubahan dari aliran informasi (direpresentasikan dengan DFD) menjadi struktur PL (direpresentasikan dengan Structure Chart). Langkah: (1) menentukan jenis aliran informasi (2) menentukan batas aliran informasi (3) pemetaan dari DFD ke struktur program (4) menentukan hierarki kendali dengan cara faktorisasi (5) menghaluskan struktur program yang terbentuk, dengan mempertimbangkan faktor-faktor pengukuran PL dan heuristik (fan-in, fan-out, coupling, cohesion, dll) Perancangan Arsitektural (3) Jenis aliran informasi: (1) aliran transformasional Perancangan Arsitektural (4) Perancangan Arsitektural (5) Jenis aliran informasi: (2) aliran transaksional 5

Perancangan Arsitektural (6) Langkah Pemetaan (untuk jenis aliran transformasional): kaji ulang model sistem dasarnya kaji ulang dan perhalus DFD-nya tentukan apakah DFD memiliki jenis aliran transformasional dan atau aliran transaksional isolasi pusat transaksi dengan menentukan batas aliran incoming dan outgoing lakukan faktorisasi level satu lakukan faktorisasi level dua perhalus struktur program yang diperoleh dari iterasi tahap pertama ini dengan heuristik. Perancangan Arsitektural (7) Langkah Pemetaan (untuk jenis aliran transaksional): kaji ulang model sistem dasarnya kaji ulang dan perhalus DFD-nya tentukant apakah hdfd memiliki jenisaliran transformasional dan atau aliran transaksional tentukan pusat transaksi dan jenis aliran di sepanjang setiap jalur aksi (action paths) petakan DFD ke dalam struktur program sesuai proses transaksinya faktorisasi dan perhalus struktur transaksi dan juga struktur disetiap jalur aksi perhalus struktur program yang diperoleh dari iterasi tahap pertama ini dengan heuristik. Perancangan Arsitektural (8) Perancangan Arsitektural (9) Perancangan Arsitektural (10) Optimasi rancangan arsitektural kesederhanaan struktur seringkali mencerminkan keindahan dan efisiensi PL optimasi rancangan harus diarahkan pada sesedikit mungkin modul yang terbentuk (dengan tetap mempertimbangkan kriteria perancangan modular efektif) dan sesedikit mungkin struktur data yang rumit/kompleks Perancangan Arsitektural (11) Hasil perancangan arsitektural: Structure Chart yang merepresentasikan gambaran menyeluruh struktur PL / arsitektur PL, beserta seluruh hierarki kendali / passing parameter, yang siap dituliskan dalam bentuk modul program 6

Perancangan Antarmuka (1) Fokus perancangan antarmuka: antarmuka antar modul-modul PL antarmuka antara PL dengan sumber informasi, selain manusia (external entities) antarmuka antara manusia (user) dengan komputernya Perancangan Antarmuka (2) Jenis antarmuka yang diperlukan adalah: antarmuka untuk input parameter process layar antarmuka untuk output proses layar antarmuka untuk input data layar maupun parameter passing antarmuka untuk output data layar maupun parameter passing antarmuka untuk pesan-pesan layar Perancangan Antarmuka (3) Hal-hal yang perlu diperhatikan dalam merancang antarmuka di layar: harus konsisten (warna, font, bahasa, dll) memberikan umpan balik ke pengguna meminta verifikasi untuk semua aksi destruktif penting memungkinkan aksi reversal mengurangi jumlah infomasi yang harus diingat antar aksi efisiensi dialog, gerak, dan pikiran pengguna (dekomposisi, nilaidefault, layout) mengelompokkan aktivitas berdasarkan fungsi & mengatur layarsesuai dengan pengelompokkan tersebut sediakan bantuan (help) yang context sensitve tampilkan info yang sesuai dengan konteks Perancangan Antarmuka (4) Hal-hal yang perlu diperhatikan dalam merancang antarmuka di layar (lanjutan): perhatikan presentasi data: sedikit: form/tabel banyak: graph/chart pelihara konteks visual pesan kesalahan harus berarti gunakan analog display untuk hal yang sesuai, misalnya bar chart minimalkan jumlah aksi masukan yang diperlukan sesuaikan dengan kebutuhan/kebiasaan user, misalnya: clerk - keyboard, manager mouse clerk - input, decision makers - update/delete Perancangan Antarmuka (5) Perancangan antarmuka dapat dilakukan secara: manual, dilakukan pada kertas bantuan alat bantu, alat bantu pemrograman atau dengan CASEtools (misalnya dengan AppModeller pada Power Designer) Hasil perancangan antarmuka adalah: definisi antarmuka modul yang siap untuk diprogram definisi / format rancangan layar yang siap diimplementasikan Perancangan Prosedural (1) Tahapan terakhir pada proses perancangan Membentuk algoritma siap program dengan menggunakan dan mengacu pada: struktur data yang terbentuk pada perancangan data struktur modul dan kendali PL yang terbentuk pada Structure Chart yang diperoleh pada saat perancangan arsitektural struktur dan rancangan menu / format tampilan layar yang diperoleh pada perancangan antarmuka 7

Perancangan Prosedural (2) Pada intinya perancangan prosedural harus memperhatikandua hal utama yaitu: coupling (a measure of the interdependence among software module), yaitu ukuran kekuatan saling kebergantungan antar modul-modul software cohesion (a measure of the relative functional strength of amodule), yaitu ukuran kekuatan modul-modul perangkat lunak secara fungsional relatif terhadap modul perangkat lunak itu sendiri Perancangan Prosedural (3) Untuk merancang prosedur/modul alat bantu yang dapat digunakan adalah: flow-chart algoritma/pseudocode/program design language Alat bantu tersebut dapat dicapai secara: manual, dilakukan pada kertas atau pada text editor/shape editor dengan alat bantu menggunakan CASE tools misalnya PSpec pada Process Analyst (Power Designer) Hasil Proses Perancangan Hasil proses perancangan perangkat lunak dinyatakan dengan sebuah dokumen yang diberi nama: Software Design Description (SDD). Isi SDD adalah paparan sistem yang umumnya disusun berdasarkan: Tujuan tuntutan umum (general requirement) Batasan Asumsi Rancangan data basis data external file Rancangan arsitektural, yaitu faktorisasi modul & deskripsinya Rancangan antarmuka Rancangan prosedural SDD menjadi patokan dalam melakukan pemrograman agar modulmodul yang dihasilkan terarah dan dapat dipertanggungjawabkan. Kesimpulan Perancangan PL: perancangan data hasilnya: struktur data dan basis data perancangan arsitektural hasilnya: structure chart perancangan antarmuka hasilnya: definisi parameter passing dan format layar/menu perancangan prosedural hasilnya: algoritma program Semua hasil itu harus dituangkan dalam SDD 8