IF 1483 - RPL TEKNIK INFORMATIKA UPN “VETERAN” YK REKAYASA PERANGKAT LUNAK ( IF 1483) Pertemuan 8&9 Software Design Fundamentals.

Slides:



Advertisements
Presentasi serupa
Tahapan information engineering
Advertisements

DESAIN ARSITEKTUR PERANGKAT LUNAK
Ian Sommerville Software Engineering
KONSEP DESAIN SOFTWARE DATABASE
ANALISIS DAN PERANCANGAN SISTEM
BAB 3 – Pandangan Tingkat Paling Atas Fungsi dan Interkoneksi Komputer
2. Introduction to Algorithm and Programming
1 Pertemuan 1 Introduction Matakuliah: sistem Operasi Tahun: 2010.
Testing Levels. Activities of Test Engineer Test engineer is an information technology professional who is in charge of ane or more technical test activities,
KONSEP STRATEGI BISNIS DAN IMPLIKASINYA PADA STRATEGI IS/IT
WaterfallPrototyping RAD Incremental Prototyping Pendekatan SDLC.
Interesting Interfaces Where We Are At Where We Are Going Contextual Inquiry – Ethnographic Techniques to collect raw data Prototype – Application.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 5 Slide 1 Software Requirements l Deskripsi dan spesifikasi sistem.
ANALISA PERANCANGAN SISTEM
Testing Implementasi Sistem Oleh :Rifiana Arief, SKom, MMSI
Rekayasa Perangkat Lunak (Software Engineering)
1 Pertemuan 09 Kebutuhan Sistem Matakuliah: T0234 / Sistem Informasi Geografis Tahun: 2005 Versi: 01/revisi 1.
Organisasi dan arsitektur komputer
1 Pertemuan 12 Pengkodean & Implementasi Matakuliah: T0234 / Sistem Informasi Geografis Tahun: 2005 Versi: 01/revisi 1.
a.k.a structural testing WHITE BOX TESTING clear box testing
1 Pertemuan 02 Pemilihan Sistem Matakuliah: M0086/Analisis dan Perancangan Sistem Informasi Tahun: 2005 Versi: 5.
ANALYSIS CONCEPTS & PRINCIPLES. What Are the Real Problems? the customer has only a vague idea of what is required the developer is willing to proceed.
1 Pertemuan 21 Function Matakuliah: M0086/Analisis dan Perancangan Sistem Informasi Tahun: 2005 Versi: 5.
1 Pertemuan 22 Analisis Studi Kasus 2 Matakuliah: H0204/ Rekayasa Sistem Komputer Tahun: 2005 Versi: v0 / Revisi 1.
Summary Materi RPL Mid Semester
Analisis Kebutuhan Software
1 Minggu 10, Pertemuan 20 Normalization (cont.) Matakuliah: T0206-Sistem Basisdata Tahun: 2005 Versi: 1.0/0.0.
1 Pertemuan 11 Function dari System Matakuliah: M0446/Analisa dan Perancangan Sistem Informasi Tahun: 2005 Versi: 0/0.
The Research Report. Learning Outcomes Students should be able to writing research report.
1 INTRODUCTION Pertemuan 1 s.d 2 Matakuliah: A0554/Analisa dan Perancangan Sistem Informasi Akuntansi Tahun: 2006.
Software Engineering Process
Object-Oriented Design (OOD)
Object Oriented Design
proses PERANGKAT LUNAK
Pert. 16. Menyimak lingkungan IS/IT saat ini
IF2036 Software Engineering
REKAYASA PERANGKAT LUNAK
Tim RPL Program Studi Teknik Informatika
Object oriented analyst and design
Rekayasa Perangkat Lunak
REKAYASA PERANGKAT LUNAK (IF 1483)
Model Konvensional.
REKAYASA PERANGKAT LUNAK (IF 1483)
Pertemuan #3 Data Modeling Using the Entity-Relationship Model
REKAYASA PERANGKAT LUNAK (IF 1483)
Rekayasa Perangkat Lunak Pendahuluan
Overview Component-Oriented Programming
Software Engineering Rekayasa Perangkat Lunak
TAHAPAN PEMROGRAMAN Modul-10.
Pertemuan <<18>> << Penemuan Fakta(01) >>
Pengantar Bisnis 7 Sessi.
REKAYASA PERANGKAT LUNAK Perancangan arsitektur perangkat lunak
Phase III Rapid Prototyping and Demonstration Prototype
REKAYASA PERANGKAT LUNAK (IF 1483)
ANALISIS & DESAIN SISTEM
Dasar-Dasar Sistem Informasi
Rekayasa Perangkat Lunak Part-5
UML- UNIFIED MODELING LANGUAGE
REKAYASA PERANGKAT LUNAK PERANCANGAN ARSITEKTUR PERANGKAT LUNAK
Pertemuan 4 CLASS DIAGRAM.
REKAYASA PERANGKAT LUNAK PERANCANGAN ARSITEKTUR PERANGKAT LUNAK
Dokumen Kebutuhan Perangkat Lunak
Rekayasa Perangkat Lunak
Sistem Pendukung Keputusan Roni Andarsyah, ST., M.Kom Lecture Series.
DASAR - DASAR PERANCANGAN PERANGKAT LUNAK
REKAYASA PERANGKAT LUNAK (IF 1483)
Pemrograman berorientasi objek
Website: Website Technologies.
BY : LUTFIANI RATNA DEWANTI LILIS SINARSIH Action Research.
Teknik Informatika S1 Rekayasa Perangkat Lunak Design.
Transcript presentasi:

IF RPL TEKNIK INFORMATIKA UPN “VETERAN” YK REKAYASA PERANGKAT LUNAK ( IF 1483) Pertemuan 8&9 Software Design Fundamentals

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Deskripsi  Menjelaskan konsep disain PL

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Tujuan Instruksional Umum (TIU)  Memahami konsep disain perangkat lunak

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Software Design/ Disain PL Definisi Umum dari disain  “… the process of applying various techniques and principles for the purpose of defining a device, a process, or a system in sufficient detail to permit its physical realization.”  Penerapan variasi teknik dan prinsip2 untuk menentukan device, proses atau sistem lebih detil untuk direalisasikan secara fisik Goal/Tujuan:  Membuat model yang akan diimplementasikan Engineering or Art?/ Engineering / Seni

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Software Design Model Information model Functional model Behavioral model Other requirements Design Code Test Data design Architectural design Procedural design Program modules Integrated & validated software

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK General Design Guidelines Menunjukkan hirarki organisasi software dalam mengatur komponen-komponennya Secara logik dibagi ke dalam beberapa komponen yang menampilkan spsesifik task dan subtask Merepresentikan secara jelas data dan procedure Membuat interface yang mereduksi kompleksitas Diturunkan menggunakan metode yang berulang berdasar pada informasi yang diperoleh selama tahapan requirements

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Data Design Identifikasi modul program yang beroperasi dengan struktur data logik Disain Data menentukan struktur program yang lebih baik, effective modularity, & mengurangi kompleksitas The primary activity during data design is to select logical representations of data objects identified during the requirements definition and specification phase. The selection process may involve algorithmic analysis of alternative structures in order to determine the most efficient design or may simply involve the use of a set of modules that provide the operations upon some representation of an object.[Wasserman]

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Prinsip Spesifikasi Data Menerapkan prinsip analysa fungsioanal pada data Identifikasi struktur data dan operasi yang sesuai Menetapkan kamus data untuk mendefinisikan disain data & program Defer/menunda keputusan untuk disain low-level data Representasif structure data hanya diketahui oleh modul yang menggunakan langsung data tersebut Mendevelop library structure data Bahasa harus support abstract data types

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Architectural Design Tujuannya adalah untuk membuat struktur program yang modular dan merepresentasikan hubungan control diantara modul Mengkombinasikan program dan struktur dengan mendefinisikan interfaces yang mengijinkan data mengalir diseluruh program “Holistic view” dari software

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Procedural Design Setelah data & program structure telah ditetapkan, selanjutnya menentukan detil procedural tanpa ambiguity Design Notations  Structured programming  Graphical design notation  Tabular design notation  Program design language (PDL)

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Software Design Fundamentals Good design is not accomplished by chance Disain yang baik tidak diselesaikan secara kebetulan Fundamental concepts provide the framework for “getting it right” “The beginning of wisdom for a computer programmer is to recognize the difference between getting a program to work, and getting it right.” [Jackson]

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Design Fundamentals Abstraction Refinement Modularity Software Architecture Control Hierarchy Data Structure Software Procedure Information Hiding

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Design Fundamentals Abstraction  Levels of detail/language used to describe a problem …notion of “abstraction” permits one to concentrate on a problem at some level of generalization without regard to irrelevant low level details; use of abstraction also permits one to work with concepts and terms that are familiar in the problem environment… [Wasserman]  Types of abstractions

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Design Fundamentals (cont.) Refinement/perbaikan  Top-down strategy In each step, one or several instructions of the given program are decomposed into more detailed instructions. This successive decomposition or refinement of specification terminates when all instructions are expressed in terms of any underlying computer or programming language. [Wirth] Modularity  Membagi software menjadi kompnen-komponen terpisah yang terintegrasi untuk menampilkan kemampuan software

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Design Fundamentals (cont.) Software Architecture  The hierarchical structure of procedural components & the structure of data  Transition between analysis and design Control Hierarchy/Program Structure  Organization of modules that implies a hierarchy of control  Metrics - depth, width, fan-out, fan-in  Visibility & connectivity

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Control Hierarchy

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Design Fundamentals (cont.) Data Structure  Logical representation of the relationship among individual data elements  Scalar, sequential vector, array, linked list, hierarchical data structure Software Procedure  Processing details of each module  Precise specification includes sequence of events, decision points, repetitive operations, data organization

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Design Fundamentals (cont.) Information Hiding  Modules should be “characterized by design decisions that each hides from all others”  Modules are designed so that information within a module is inaccessible to other modules with no need for the information  Defines and enforces access constraints

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Modular Design Benefits  Reduces complexity  Facilitates change  Easier implementation afforded by parallel development Activation Mechanisms Pattern of Control

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Functional Independence Benefits  Easier to develop  Easier to maintain & test Measures of Independence  Cohesion  Coupling “Design software so that each module addresses a specific sub-function of requirements and has a simple interface when viewed from other parts of the program structure”

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Cohesion “A cohesive module should do just one thing.” Levels of Cohesion  Coincidental  Logical  Temporal  Procedural  Communicational  Sequential  Functional

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Coupling Measure of interconnection among modules Levels of Coupling  No direct coupling  Data coupling  Stamp coupling  Control coupling  External coupling  Common coupling  Content coupling

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Ringkasan Materi  Definisi Umum disain PL  Prinsip disain PL  Disain Modular

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Tugas  Membuat disain perangkat lunak

IF RPLTEKNIK INFORMATIKA UPN “VETERAN” YK Referensi Software Engineering: A Practitioner's Approach (Bab 13) Pengarang : Roger S. Pressman Penerbit: Fourth Edition, McGraw-Hill, 1997