DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... ·...

34
email Fasilkom|| 12/10/2013 DESIGN ENGINEERING Defri Kurniawan M.Kom REKAYASA PERANGKAT LUNAK LANJUT

Transcript of DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... ·...

Page 1: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

DESIGN ENGINEERINGDefri Kurniawan M.Kom

REKAYASA PERANGKAT LUNAK LANJUT

Page 2: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Content

Pengenalan Perancangan Model Analysis to Model Design Design Concept Design Model

Page 3: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Pengenalan Perancangan

Perancangan PL merupakan tindakan rekayasa PL yang terakhir di dalam aktivitas pemodelan danmerupakan landasan bagi aktivitas konstruksi

Perancangan merupakan tempat disatukannya kebutuhan-kebutuhan stakeholder, kebutuhan-kebutuhan bisnis, dan pertimbangan-pertimbangan teknis

Tujuan design untuk membentuk sebuah produkatau sistem/PL yang berkualitas

Page 4: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Pengenalan Perancangan

Pertanyaan yang dapat dilakukan untuk menilaikualitas, sebelum konstruksi dilakukan: Apakah desain mengandung kesalahan,

inkonsistensi, atau kelalaian? Apakah ada alternatif desain yang lebih baik? Dapatkah desain diimplementasikan dalam

keterbatasan, jadwal, dan biaya yang telahditetapkan?

Page 5: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Pengenalan Perancangan

Model perancangan PL menyediakan rinciantentang: 1. Arsitektur PL (architectural design)2. Struktur-struktur data (data/class design)3. Antarmuka-antarmuka (interface design), dan4. Komponen-komponen/subsistem-subsistem

(component level design) yang diperlukan untuk mengimplementasikan

sistem/PL

Page 6: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Pengenalan Perancangan

architectural design / desain arsitekturmendefinisikan hubungan antara elemen-elemenstruktural utama dari perangkat lunak, gayaarsitektur dan pola desain yang membantumencapai persyaratan yang ditetapkan untuk sistem

data/class design / perancangan kelas/data mengubah kelas analisis ke dalam kelas desainbersama dengan struktur data yang diperlukanuntuk mengimplementasikan perangkat lunak

Page 7: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Pengenalan Perancangan

interface design / perancangan antarmukamenjelaskan bagaimana software berkomunikasidengan sistem yang beroperasi dengan hal itu dandengan manusia yang menggunakannya

component level design / perancangan peringkatkomponen mentransformasikan elemen strukturaldari arsitektur perangkat lunak ke sebuah deskripsiprosedur dari komponen software

Page 8: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

FROM ANALYSIS MODEL TO DESIGN MODEL

Transformasi Model Analisis ke Model Perancangan(condong kepada pendekatan Model Analisis Terstruktur)

Old

Page 9: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Data/Class Design

(Class-based model)

Architectural Design

(Class-based model, Flow-oriented model)

Interface Design

(Scenario-based model, Flow-oriented modelBehavioral model)

Component-level Design

(Class-based model, Flow-oriented modelBehavioral model)

FROM ANALYSIS MODEL TO DESIGN MODEL

TransformasiModel Analisis keModel Perancanganberdasarkan 4 (empat) elemenmodel Analisis

(Roger, S.Pressman)

New

Page 10: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Design Concepts

Dalam perancangan terdapat konsep dasar(fundamental concepts) yang memberikan dasarbagi perancangan, meliputi:

Abstraction Refinement Modularity Software

Architecture Control Hierarchy

Structure Partitioning

Data Structure Software Procedure Information Hidding

Page 11: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Design Concepts

Abstraction / Abstraksi Mengidentifikasi fitur penting untuk representasi Ada banyak tingkat abstraksi tergantung pada

seberapa rinci representasi diperlukan Data abstraksi - representasi objek data Prosedural abstraksi - representasi instruksi

Refinement / Penghalusan Dimulai dari level abstraksi tertinggi, setiap langkah

penghalusan merupakan dekomposisi ke tingkatlebih rinci (top to down strategy)

Melengkapi/memperjelas abstraksi

Page 12: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Design Concepts

Modularity / Pemodulan Software dibagi menjadi beberapa modul Masalah dipecah menjadi potongan-potongan yang

terkelolaSoftware Architecture / Arsitektur PL Modul dapat diintegrasikan dengan berbagai cara

untuk menghasilkan sistem Arsitektur PL adalah struktur keseluruhan perangkat

lunak Hirarki dan interaksi komponen, serta struktur data

yang digunakan oleh komponen

Page 13: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Design Concepts

Control Hierarchy / Hirarki Kontrol Hirarki modul mewakili hubungan kontrol Sebuah modul super-ordinat mengontrol modul lain Sebuah modul subordinate/bawahan dikendalikan

oleh modul lain Tindakan yang relevan untuk mengendalikan hirarki:

kedalaman, lebar, fan-in, fan-out

Page 14: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Structure Terminology

g hed

i

f

a b c

MFan-out

Fan-in

Width

Depth

Page 15: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Structure Terminology

Page 16: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Design Concepts

Structural Partitioning / Pemartisi Struktur Jika gaya arsitektur suatu sistem adalah hirarki,

maka struktur program dapat dipartisi secarahorizontal dan vertikal

Partisi horizontal menggambarkan cabang terpisahuntuk setiap fungsi program utama

Partisi vertikal mendefinisikan kontrol (pengambilankeputusan) di bagian atas dan bekerja di bagianbawah

Page 17: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Structural Partitioning

Page 18: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Design Concepts

Data Structure / Struktur Data Struktur data adalah representasi dari hubungan

logis antara elemen-elemen individual data. Struktur informasi akan selalu mempengaruhi

prosedural akhir desain Struktur data adalah sama pentingnya dengan

struktur program untuk representasi arsitekturperangkat lunak

Page 19: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Design Concepts

Software Procedure / Prosedur PL Prosedur Software berfokus pada rincian

pengolahan setiap modul secara individual Prosedur harus memberikan spesifikasi pengolahan

yang tepat, termasuk urutan kejadian, poin-poinkeputusan, operasi berulang, dan bahkan organisasidata dan struktur

Page 20: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Design Concepts

Information Hidding / Penyembunyian Informasi Informasi (prosedur dan data) yang terdapat dalam

modul ini tidak dapat diakses oleh modul lain yang tidak membutuhkan informasi tersebut

Modularitas efektif dicapai dengan modulindependen, yang berkomunikasi hanya informasiyang diperlukan

Kemudahan pemeliharaan - pengujian, modifikasilokal dan kecil kemungkinannya untuk menyebarkan

Page 21: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Design Model

Model desain dapat dilihat dalam dua dimensi yang berbeda Horizontal / Dimensi Proses: menunjukkan evolusi bagian

model desain sebagai setiap tugas desain yang harusdieksekusi

Vertikal / Dimensi Abstraksi: merupakan tingkat detail setiap elemen model analisis ditransformasikan ke dalammodel desain dan kemudian disempurnakan secaraiteratif

Page 22: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Process Dimension (Progression)

Abs

trac

tion

Dim

ensi

on

Data/ClassElements

InterfaceElements

ArchitecturalElements

Component-levelElements

Deployment-levelElements

Dimensions of the Design Model

Analysis model

Design model

Low

High

Page 23: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Design Model

Design model memilki elemen-elemen berlapis Data/class design Architectural design Interface design Component-level design Dan elemen tambahan

deployment-level designData/Class Design

Architectural Design

Interface Design

Component-level Design

deployment-level design: menunjukkan bagaimana fungsiperangkat lunak dan subsistem akan dialokasikan dalamlingkungan komputasi fisik yang akan mendukung perangkatlunak

Page 24: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Architecture Design

Penggolongan sederhana gaya-gaya arsitektur1. Arsitektur Berpusat pada Data Sebuah tempat penyimpanan data (misal basis data)

berada pada pusat arsitektur dan diakses secarasering oleh komponen-komponen lainnya yang melakukan pembaruan, penambahan, penghapusan, atau memodifikasi data yang berada di tempatpenyimpanan

Page 25: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Architecture Design

Arisitektur Berpusat pada Data

Page 26: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Architecture Design

Penggolongan sederhana gaya-gaya arsitektur2. Arsitektur Aliran Data Aristektur aliran data ini dapat diterapkan saat data

yang dimasukkan akan ditransformasikanmenggunakan sejumlah komponen komputasionalatau pemanipulasi untum menghasilkan data keluaran

Page 27: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Architecture Design

Arisitektur Aliran Data

Page 28: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Architecture Design

Penggolongan sederhana gaya-gaya arsitektur3. Arsitektur Pemanggilan dan Pengembalian Nilai Gaya arsitektur yang memungkinkan untuk

mencapai suatu struktur program yang relatifmudah untuk dimodifikasi dan diubah.

Page 29: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Architecture Design

Arisitektur Pemanggilan dan Pengembalian Nilai

Program Utama

Sub Program Pengendali

Sub Program Pengendali

Sub Program Pengendali

Sub Program Aplikasi

Sub Program Aplikasi

Sub Program Aplikasi

Sub Program Aplikasi

Sub Program Aplikasi

Page 30: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Architecture Design

Penggolongan sederhana gaya-gaya arsitektur4. Arsitektur Berorientasi Objek Komponen-komponen suatu sistem yang

membungkus di dalamnya data dan operasi untukmemanipulasi data

5. Arsitektur Perlapisan Sejumlah lapisan yang berbeda, masing-masing

menyelesaikan operasinya. Dengan lapisan intiadalah sistem operasi

Page 31: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Architecture Design

Arisitektur Pemanggilan dan Pengembalian Nilai

Page 32: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Interface Design

The User Interface Design Process

1. User, Task & Environment Analysis

2. Interface Design

3. Implementation4. Interface

Validation

Page 33: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013

Interface Design

Interface Design Evaluation Process

Page 34: DESIGN ENGINEERING - dinus.ac.iddinus.ac.id/repository/docs/ajar/03.b_-_RPL.DEF.2013.Design... · struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu

email Fasilkom|| 12/10/2013