Anda di halaman 1dari 23

PERANCANGAN SISTEM

PERANCANGAN SISTEM
Proses untuk mendefinisikan suatu model atau rancangan sistem dengan menggunakan teknik dan prinsip tertentu sedemikian sehingga model atau rancangan tersebut dapat diwujudkan menjadi sistem. Proses mendefinisikan arsitektur sistem, komponen, modul, antarmuka, pendekatan pengujian, serta data untuk memenuhi kebutuhan yang sudah ditentukan sebelumnya. Proses bertahap dimana semua kebutuhan yang ada diterjemahkan menjadi suatu cetak biru yang akan digunakan untuk mengkonstruksi sistem. [Pressman, 2001]

Strategi Perancangan
Top Down Bottom Up Organizational
Struktur proses perancangan dipengaruhi oleh faktorfaktor non teknis yang timbul dari faktor organisasi pemakai peangkat lunak

Cetak Biru
Menggunakan strategi perancangan yang standar untuk beberapa masalah yang memiliki kesamaan paradigma
3

3 Karakteristik Evaluasi Perancangan


Perancangan harus mengimplementasikan keseluruhan kebutuhan eksplisit dan mengakomodasi semua kebutuhan implisit yang diinginkan Perancangan harus menjadi panduan yang dapat dibaca, dipahami bagi programmer dan penguji sistem Perancangan harus memberikan suatu gambaran lengkap mengenai sistem
4

Perancangan Sistem
Proses Perancangan
Serangkaian langkah iteratif yang memungkinkan desainer menggambarkan semua aspek sistem yang dibangun

Model Perancangan
Ekivalen rencana arsitek untuk sebuah rumah. (yang dibuat untuk perangkat sistem memberikan berbagai pandangan yang berbeda tentang program komputer

OBJEK PERANCANGAN
Data
Struktur tabel basis data / file data Struktur data internal

Arsitektur perangkat lunak


Structure chart Struktur menu program

Antarmuka pemakai Spesifikasi program (algoritma)


6

TRANSFORMASI MODEL ANALISIS - PERANCANGAN

Model Analisis Diagram Konteks DFD level 1, 2,


2

Model Perancangan Rancangan Data Arsitektur PL (Structure Chart)


Antarmuka Pemakai
1 4

Kamus Data
Spesifikasi Proses E-R Diagram

Spesifikasi Program (Algoritma)

PERANCANGAN BASIS DATA


Transformasi Diagram E-R (conceptual data model, CDM) menjadi model relasi (skema relasi, tabel relasi). Penentuan atribut relasi sesuai dengan kamus data yang telah dibuat. Normalisasi. Pendefinisian struktur tabel. Pembuatan relasi antar tabel (physical data model, PDM)
8

CONTOH STRUKTUR TABEL BASIS DATA


Tabel Penjualan Fungsi Jenis Primary Key Foreign Key Struktur Tabel
No. Nama Field 1 2 3 4 No_Faktur Kode_Brg Hrg_Jual Kuantitas

: : : : :

Menyimpan data transaksi penjualan Tabel Transaksi No_Faktur+Kode_Brg Kode_Brg

Jenis String String Long Integer Integer

Lebar Keterangan 10 8 8 5 Nomor Faktur Kode Barang Harga jual barang saat transaksi Banyaknya (kuantitas) barang

CONTOH RELASI ANTAR TABEL


BARANG KODE_BRG KODE_SUP NAMA_BRG SATUAN JENIS HRG_BELI HRG_JUAL JML_STOK A8 A6 A25 A4 A1 I I I SUPPLIER KODE_SUP NAMA_SUP ALAMAT KOTA TELEPON A6 A25 A30 A15 A12

KODE_SUP = KODE_SUP

KODE_BRG = KODE_BRG

JUAL KODE_BRG NO_FAKTUR HRG_JUAL KUANTITAS

A8 A10 I NO_FAKT UR = NO_FAKT UR I

BAYAR NO_FAKTUR TANGGAL JML_BAYAR

A10 D I

10

ARSITEKTUR PERANGKAT LUNAK


Gambaran bagaimana elemen/komponen fungsional perangkat lunak disusun, diorganisasi dan distrukturkan sehingga:

Hubungan antar elemen/komponen dapat dijelaskan. Interface yang menghubungkan elemen/komponen dapat didefinisikan. Wujud dan penempatan elemen/komponen dalam tempat penyimpanan sekunder secara fisik dapat ditetapkan.

11

TRANSFORMASI DFD - STRUCTURE CHART


B

XX

???
A
H

U
H B E C F D G

YY
G D

V
Get A
Keterangan:

XX

YY

ZZ

Put H

ZZ
meny atakan transaction center

Menggunakan teknik:

Analisis transformasi Analisis transaksi

12

Aliran Transformasi

Mentrasformasikan data eksternal ke bentuk internal diidenti fikasi sebagai aliran masuk, terjadi transisi , data masuk di lewatkan melalui pusat transformasi dan bergerak keluar melalui jalur keluar

13

Aliran Transaksi

14

CONTOH ARSITEKTUR PERANGKAT LUNAK


Model Analisis (DFD level atomik)
1 Tambah Data Barang Bagian Penjualan id_barang

Modul Pemanggil

rec_barang id_supplier Barang rec_supplier 2 Tambah Data Supplier

Arsitektur Perangkat Lunak (Structure Chart)


Kelola Data Induk

rec_supplier Supplier

Proses 1.0
Tambah Data Barang Tambah Data Supplier rec_barang id_supplier

Proses 2.0

id_barang
supplier

rec_supplier

Modul-modul atomik (procedure, function)

Baca Id_Barang

Rekam Barang

Baca Id_Supplier

Rekam Supplier

15

STRUCTURE CHART (1) : PASCAL


A notasi untuk parameter input yang dikirimkan kepada modul yang dipanggil modul pemanggil notasi untuk parameter output yang diberikan pada modul pemanggil modul yang dipanggil

x, y

p, q

Modul A memanggil modul B dengan data x dan y sebagai parameternya. Modul B mengirimkan data p dan q sebagai return value ke modul A.

Procedure A; Var p, q : Real; Procedure B(x, y : Real); Begin p := ... { manipulasi nilai p } q := ... { manipulasi nilai q } End; Begin B(x, y); { call procedure B } End;

Potongan kode program dalam bahasa Pascal

16

STRUCTURE CHART (2) : PASCAL


Modul A akan memanggil modul B jika kondisi dalam modul A dipenuhi. Modul A akan memanggil modul C secara berulang.
B A

Potongan kode program dalam bahasa Pascal

Procedure C; Begin ... End; Procedure B; Begin ... End; Procedure A; Begin If True Then B; {call procedure B} While True Do C; {call procedure C} End;
17

STRUCTURE CHART (3) : PHP


FormInput.html
<html> ... <form method=post action=Rekam.php> ... </html>

FormInput

Rekam.php
<? // Rekam.php function getId() { } function saveId(id) { } id = getId(); saveId(id) ?>

Rekam
id id

getId

saveId

18

STRUCTURE CHART (4) : DELPHI


main.pas
unit main; ... var Form1: TForm1; implementation uses Rekam; procedure TForm1.Click(Sender: TObject); begin frmRekam.Show; end; end.

Main

rekam.pas
unit Rekam; ... var frmRekam: TForm1; implementation ... end.

Rekam

19

PERANCANGAN ANTARMUKA PEMAKAI


Secara fisik antarmuka pemakai yang dirancang adalah tampilan layar (form, halaman web). Jenisnya dapat berupa:

Menu pilihan Form isian (entry) Penyajian informasi (report, query) Kotak dialog, jika diperlukan Fasilitas bantuan (Help), jika diperlukan
20

IDENTIFIKASI RANCANGAN ANTARMUKA PEMAKAI


1 Tambah Data Barang Bagian Penjualan id_barang

rec_barang id_supplier Barang rec_supplier 2 Tambah Data Supplier

Ada interaksi antara pemakai dengan PL


Harus ada user interface untuk Tambah Data Barang!

rec_supplier Supplier

Ada data yang diberikan oleh pemakai ke PL Lihat kamus datanya!!! id_barang = kode_ brg + nama_brg + satuan + jenis + hrg_beli + hrg_jual + jml_stok + kode_sup

Tambah Data Data Barang Barang Tambah Kode Barang: Nama Barang: Satuan: Jenis: 1:Milik 2:Konsinyasi Harga Beli: Rp. Harga Jual: Rp. Jumlah Stok: unit Kode Supplier: Rekam Batal

X X

21

PENULISAN SPESIFIKASI PROGRAM


Deskripsi prosedural (algoritma) untuk semua modul-modul program yang menjadi elemenelemen struktural dari arsitektur perangkat lunak:

Prosedur Fungsi

Merupakan penjelasan lebih rinci dan teknis dari spesifikasi proses. Ditulis dengan menggunakan notasi pseudocode, atau notasi yang mirip dengan bahasa pemrograman yang digunakan.
22

SPESIFIKASI PROSES
Proses 1.1 Tambah Data Barang Begin While data barang masih ada Do Baca identitas barang Verifikasi If not valid Then tulis pesan Else rekam ke tabel barang End

SPESIFIKASI PROGRAM ( DELPHI LIKE )


Procedure btnRekamBarangClick Kamus { Deklarasi variabel; TEdit, TDBLookupCombo, TTable terdefinisi } eKode, eNama, eSatuan, eJenis, eHrgBeli, eHrgJual, eJmlStok: TEdit DBLookupCombo1: TDBLookupCombo TabelBarang, TabelSupplier: TTable Algoritma { Buka tabel barang dan supplier } TabelBarang.Open TabelSupplier.Open { Baca identitas barang melalui komponen TEdit dan validasi } { Rekam ke tabel barang } TabelBarang.Append TabelBarang.FieldByName('Kode_Brg').AsString := eKode.Text TabelBarang.FieldByName('Nama_Brg').AsString := eNama.Text TabelBarang.FieldByName('Satuan').AsString := eSatuan.Text TabelBarang.FieldByName('Jenis').AsInteger:=StrToInt(eJenis.Text) TabelBarang.FieldByName('Hrg_Beli').AsInteger:=StrToInt(eHrgBeli.Text) TabelBarang.FieldByName('Hrg_Jual').AsInteger:=StrToInt(eHrgJual.Text) TabelBarang.FieldByName('Jml_Stok').AsInteger:=StrToInt(eJmlStok.Text) TabelBarang.FieldByName('Kode_Sup').AsString := DBLookupCombo1.Value; TabelBarang.Post
23

1 Tambah Data Barang Bagian Penjualan

id_barang

rec_barang id_supplier Barang rec_supplier 2 Tambah Data Supplier

rec_supplier Supplier