Desain Internal Sistem KBSSI Perancangan Sistem Informasi Perancangan
Desain Internal Sistem KBS-SI Perancangan Sistem Informasi Perancangan Internal Sistem
Sesi 10 Desain Internal Sistem – Tujuan: • Mengembangkan lebih lanjut subsistem yang diotomatisasi. • Merancang detail proses komputer dan database dari kebutuhan sistem untuk pembangunan software aplikasi. – Hasil: • • • Dokumen desain spesifikasi database Konfigurasi HW/SW Spesifikasi Fungsional Program Dokumen desain proses komputer ‘Update’ Rencana Proyek. Perancangan Internal Sistem 2
Sesi 10 Perancangan Data Menggunakan Metodologi Pengembangan Data yang meliputi: • • Model Relasi antar Entitas (Entity Relationship Model) Model Data Konseptual/logikal (Conceptual/logical Data Model) Model Data Fisikal (Physical Data Model) Normalisasi dan Sintesis Perancangan Internal Sistem 4
Sesi 10 Normalisasi Kriteria Bentuk Normal 1. Tidak Mengandung Grup Berulang. 2. Untuk tabel dengan Primery-Key yang Komposit, tidak ada atribut biasa yang tergantung hanya pada sebagian atribut dari Primary-Key Komposit tsb. 3. Tidak ada atribut-biasa yang bergantung pada atribut-biasa (bukan Primary-Key) yang lain. 4. Tidak ada atribut-biasa yang memiliki ketergantungan bernilai banyak kepada Primary -Key. Perancangan Internal Sistem 5
Sesi 10 Tahapan Normalisasi Bentuk 1 (1 NF): • Memisahkan Grup Berulang dari Tabel. Normalisasi Bentuk 2 (2 NF): • Sudah dalam bentuk normal 1 • Memisahkan atribut-biasa yang tergantung pada sebagian atribut Primary-Key (Komposit) Normalisasi Bentuk 3 (3 NF): • Sudah dalam bentuk normal 2 • Memisahkan atribut-biasa yang tergantung pada atributbiasa lainnya bukan Primary-Key dari tabel ybs. Normalisasi Bentuk 4 (4 NF): • Sudah dalam bentuk normal 3 • Memisahkan atribut-biasa yang memiliki tergantungan bernilai-banyak Perancangan pada Primary-Key. Internal Sistem 6
Sesi 10 Sintesis • • Normalisasi telah selesai. Menggabungkan relasi-relasi dari semua tabel dan mengevaluasi tabel yang memiliki hubungan satu ke satu (1: 1) dengan kemungkinan mempunyai primary-key yang sama. Perancangan Internal Sistem 7
Sesi 10/5 Kasus Perancangan Sistem: Menagih Pembayaran – PT. PAPIRUS MAKMUR adalah sebuah perusahaan yang mendistribusikan berbagai jenis kertas di wilayah Jawa-barat. Untuk setiap pesanan (Order Penjualan) yang diterima ditindaklanjuti dengan pengiriman kertas yang sesuai dan untuk setiap pengiriman tersebut akan diperoleh tanda terima dalam bentuk dokumen BAPB (Berita Acara Penerimaan Barang). Pengiriman ini untuk satu Order Penjualan umumnya dilakukan berkali-kali di waktu yang berbeda. Jadi satu Order Penjualan berhubungan dengan banyak BAPB. Proses berikutnya adalah Menagih Pembayaran untuk penjualan yang telah lengkap pengirimannya. Berikut uraian mengenai transaksi “Menagih Pembayaran” ini. Perancangan Internal Sistem 8
Sesi 10/5 Setiap pagi, Bagian Penagihan akan memeriksa arsip ORDER-JUAL dan BAPB yang belum ditagih pembayarannya. Jika jumlah total pengiriman kertas seperti yang tercantum di BAPB telah sesuai dengan jumlah di ORDER-JUAL-nya, maka piutangnya dianggap sudah jatuh tempo dan dapat ditagih. Untuk itu akan disusun SURAT-TAGIHAN yang sesuai dan kemudian dikirimkan ke Pelanggan yang bersangkutan. Secara lebih sistematis hal ini dilakukan sbb: 1. Pilih ORDER-JUAL yang belum ditagih, yalni yang statusnya “OPEN”. 2. Hitung total pengiriman per jenis kertas untuk ORDERJUAL “OPEN” tersebut dengan melihat data BAPB-nya. 3. Bandingkan jumlah total pengiriman dengan jumlah pesanan di ORDER-JUAL. Jika jumlahnya sama, maka ORDER-JUAL ini “dapat ditagih”. 4. Untuk ORDER-JUAL yang dapat ditagih ini disusun SURAT-TAGIHAN dan dikirimkan ke Pelanggan. 5. Set Status = ‘CLOSE” untk ORDER-JUAL yang telah ditagih ini. 9 Perancangan Internal Sistem
Sesi 10/5 Kamus Data: DATA STORE: 1. ORDER-JUAL = No. Ord. Jual+ Tg. Ord. Jual+ No. Cust+ Nm. Cust+ Al. Cust+ Sta. Ord+ {Kd. ATK+Nm. ATK+Kt. Sat+ Jm. Psn+ Hg. Sat} 2. BAPB = No. BAPB+ Tg. BAPB+ No. Ord. Jual+ No. Cust+ Nm. Cust+ {Kd. ATK+ Nm. ATK+Kt. Sat+ Jm. Terima} Tugas Anda: 1. Rancang komputerisasi untuk transaksi “Menagih Pembayaran” ini dengan menggambarkan DFD Fisikal yang dilengkapi batas otomatisasi. 2. Uraikan secara naratif/tekstual mengenai cara kerja sistem sesuai hasil butir 1. 3. Lakukan Normalisasi terhadap ORDER-JUAL dan BAPB hingga diperoleh bentuk Normal ke 3(4). Gambarkan hasil akhirnya. 10 4. Sintesis-kan hasil butir 3. Perancangan Internal Sistem
Sesi 10/5 Jawaban Kasus Perancangan Sistem: Menagih Pembayaran – PT. PAPIRUS MAKMUR • DFD Fisikal Level 1 – Menagih Pembayaran Bapb Order-jual 4. 2 Hitung Total kirim 4. 1 Pilih Order-jual Tagihan Total kirim Order ‘open’ 4. 3 Bandingkan Order dpt Order & kirim ditagih Perancangan Internal Sistem 4. 4 Cetak Tagihan Surat-tagihan ‘Close ’ Order-jual 11
Sesi 10/5 Penjelasan Naratif: Setiap pagi, bagian Penagihan berkewajiban memeriksa Order-Jual untuk menentukan Order yang sudah selesai pengirimannya kemudian menagihnya ke Pelanggan. Seluruh proses ini diotomatisasi sbb: a. Order-Jual yang berstatus ‘open’ dipilih. b. Berdasarkan order ‘open’ tersebut, dicari BAPB yang berhubungan dan jumlah pengirimannya di-total per jenis kertas. c. Total pengiriman per jenis kertas dibandingkan jumlah pesanannya. Jika untuk setiap jenis kertas jumlah pengirimannya sudah sesuai dengan jumlah yang diorder, maka order tersebut sudah dapat ditagih. d. Untuk order yang dapat ditagih ini dicetak Surat. Tagihan yang sesuai dan dikirim ke Pelanggan. e. Set Status = ‘CLOSE” untk ORDER-JUAL yang telah 12 Perancangan Internal Sistem ditagih ini.
Sesi 10/5 Normalisasi: 1. ORDER-JUAL = No. Ord. Jual+ Tg. Ord. Jual+ No. Cust+ Nm. Cust+ Al. Cust+ Sta. Ord+ {Kd. ATK+Nm. ATK+Kt. Sat+ Jm. Psn+ Hg. Sat} 2. BAPB = No. BAPB+ Tg. BAPB+ No. Ord. Jual+ No. Cust+ Nm. Cust+ {Kd. ATK+ Nm. ATK+Kt. Sat+ Jm. Terima} ORDER-JUAL: ORDER-JUAL = No. Ord. Jual+ Tg. Ord. Jual+ No. Cust+ Nm. Cust+ Al. Cust+ Sta. Ord+ {Kd. ATK+ Nm. ATK+ Kt. Sat+ Jm. Psn+ Hg. Sat} Order = No. Ord. Jual+ Tg. Ord. Jual+ No. Cust+ Sta. Ord Customer = No. Cust+ Nm. Cust+ Al. Cust Order-ATK= No. Ord. Jual+Kd. ATK+ Jm. Psn ATK = Kd. ATK+ Nm. ATK+ Kt. Sat + Hg. Sat Perancangan Internal Sistem 13
Sesi 10/5 Normalisasi: BAPB = No. BAPB+ Tg. BAPB+ No. Ord. Jual+ No. Cust+ Nm. Cust+ {Kd. ATK+ Nm. ATK+ Kt. Sat+ Jm. Terima} BAPB = No. BAPB+ Tg. BAPB+ No. Ord. Jual Oeder = No. Ord. Jual+ No. Customer = No. Cust+ Nm. Cust BAPB-ATK = No. BAPB+Kd. ATK+ Jm. Terima ATK = Kd. ATK+ Nm. ATK+ Kt. Sat Perancangan Internal Sistem 14
Sesi 10/5 Sintesis Digabung: Order dan Order HEAD-ORDJUAL Customer dan Customer CUSTOMER ATK dan ATK Tidak digabung: Order_ATK TAIL-ORDJUAL BAPB HEAD-BAPB-ATK TAIL-BAPB Hasil Akhir: HEAD-ORJUAL= No. Ord. Jual+ Tg. Ord. Jual+ No. Cust+ Sta. Ord TAIL-ORDJUAL= No. Ord. Jual+ Kd. ATK+ Jm. Psn+ Hg. Sat HEAD-BAPB= No. BAPB+ Tg. BAPB+ No. Ord. Jual TAIL-BAPB= No. BAPB+Kd. ATK+ Jm. Terima CUTOMER= No. Cust+ Nm. Cust+ Al. Cust 15 ATK= Kd. ATK+ Nm. ATK+ Kt. Sat Perancangan Internal Sistem
Sesi 10/5 Perancangan Database • Merancang Database logikal dan fisikal secara rinci. • Hanya memperhatikan Data-Store yang ada pada sub-sistem yang diotomatisasi (batch, on-line, real-time) • Data masukan utama untuk tahap ini adalah Data Dictionary-Data Store dan elemen Data Elemen seperti yang telah dihasilkan dalam tahap Analisis Sistem. Perancangan Internal Sistem 16
Sesi 10/5 Data Dictionary: DATA-STORE Nama Deskripsi : FAKTUR : Permintaan pembayaran dari Supplier atas pembelian baranag ketika barang telah selesai dikirimkan diterima Volume Akses : 25 buah/hari. Rata-rata ada 4 item barang per Faktur. : Di-batch-kan untuk diproses secara berurutan setiap pagi hari. : Umur aktif rata-rata 6 bulan. Pengarsipan data pasif dilakukan 1 tahun sekali. Dapat dimusnahkan setelah 15 tahun sesuai aturan pemerintah Retensi Struktur Tabel: Faktur = No_Faktur+ Tg_Faktur+ No_Order+ Tg_Order+ Total+ {Kd_Barang+ Nm_Barang+ Hg_Satuan+ Jm_Barang} Perancangan Internal Sistem 17
Sesi 10 • Dalam perancangan database fisikal, perlu diketahui kapasitas penyimpanan data, maka harus diketahui volume dari data yang harus disimpan (demikian juga untuk yang manual) • Sebelum menghitung kapasitas memory yang dibutuhkan (byte), ditentukan dulu volume dalam satuan record-nya; berapa record yang harus dapat ditampung dalam arsip tsb. Misal: Untuk siswa berjumlah 4500 orang, perlu tabel database yang dapat menampung 4500 record. Perancangan Internal Sistem 18
Sesi 10 · Untuk data kejadian/transaksi (Order, Faktur, Surat dll) tidak dapat ditentukan secara langsung, karena data seperti ini dari waktu ke waktu bertambah secara dinamis dan data yang pasif pada suatu waktu akan dibuang. Untuk data seperti ini kapasitasnya dapat dihitung menggunakan persamaanberikut: Volume-Record = (Umur Aktif + Periode Pengarsipan) * Frekuensi Keterangan: Volume-Record : besarnya tempat penyimpanan dalam satuan record. Secara manual dapat berarti baris atau lembar Periode-Pengarsipan : Interval waktu untuk memisahkan data yang tidak digunakan lagi (pasif) dari tempat penyimpanannya. Frekuansi : Jumlah data yang terjadi per satuan waktu. 19 Perancangan Internal Sistem
Sesi 10 Contoh untuk data Faktur: 1. Frekuensi = 25 Faktur/hari atau sekitar 550 Faktur/bln (25 X 22) 2. Umur aktif = 6 bulan 3. Periode Pengaesipan = 1 thn atau 12 bln 4. Volume. Record = (6 + 12) * 550 = 9. 900 Faktur Ini berarti, jika faktur tersebut akan disimpan di laci, maka volume laci harus dapat menampung 9. 900 Faktur. Perancangan Internal Sistem 20
Sesi 10 Tahap Perancangan Database 1. Buat daftar data-store yang diperlukan. 2. Lakukan Normalisasi dan Sintesa. 3. Berdasarkan hasil butir 2 serta informasi statistik, buat daftar file berikut: Nama File 1. Ord_Jl 2. Det_Ord_Jl 3. … Frekuansi 660/bln 1980/bln …. 4. Tentukan … Perancangan Internal Sistem Umur Aktif 6 bln … Volume 11880 35640 … 21
Sesi 10 Tahap Perancangan Database (lanjutan…) 4. Tentukan Metoda Akses: • Secara umum dapat ditentukan berdasarkan karakteristik pengaksesannya: Sequential, Random dll. • Untuk sistem online, umumnya diperlukan pengaksesan random berdasarkan primary-key pada saat pemeliharaan data (isi, edit dan hapus) dan akses sequential hanya pada saat pencetakan laporan. • Oleh karena itu gunakan Index-Sequential berdasarkan Primary-Key. • Penggunaan Index kedua dapat dipertimbangkan. Perancangan Internal Sistem 22
Sesi 10 Tahap Perancangan Database (lanjutan…) 5. Hitung volume file-data dan file-Index: a. Volume file-data = 1024 + (Panjang. Record + 1) x Volume. Record b. Volume file Index = (Panjang. Primary. Key+4) x Volume. Record x (1+%Free) Catatan untuk %Free: - d. BASE = 0. 3; Foxbase = 0. 5; dll Nama File Primary Key Nama Panjang. Record (byte) Perancangan Internal Sistem Volume (record) Volume (Kbyte)
Sesi 11 Perancangan Konfigurasi HW-SW ● Berdasarkan data statistik sistem serta batasotomatisasi dapat dimulai penetapan yang lebih spesifik dari HW-SW. Bentuk dasar pemilihan HW adalah struktur sistem, daya komputasi CPU, kapasitas disk serta kapasitas saluran komunikasi data. ● SW sistem yang harus dipilih antara lain: ● Bahasa Pemrograman ● DBMS (Database Management Syatem) ● Query /report Generator ● Operating System (Dos, Netware, dll) ● Communication Monitor (Netview, dll) Perancangan Internal Sistem 24
Sesi 11 Perancangan Konfigurasi HW-SW (lanjutan) · Kapasitas Disk: · Database · SW Sistem · Program Aplikasi · Daya komputasi CPU serta kapasitas saluran komunikasi (termasuk kecepatan akses CPUDisk) pada umumnya amat sulit ditentukan secara analitik kuantitatif. Perkiraan secara praktikal biasa dilakukan berdasarkan pengelaman atau rekomendasi dari vendor. Perancangan Internal Sistem 25
Sesi 11/12 Perancangan Proses · Dijelaskan dengan menggunakan teknik perancangan terstruktur. · Perancangan Terstruktur, meliputi aspek: Ø Menggunakan Definisi Persoalan/kebutuhan untuk mendapatkan solusi (hasil rancangan). Ø Memecah kompleksitas sistem yang besar dengan membagi-bagi sistem ke sejumlah ‘kotak-hitam’ dan mengorganisasikannya ke bentuk hirarki yang cocok diimplementasikan di sistem komputer. Ø Menggunakan alat grafis untuk memodelkan sistem sehingga mudah dibentuk dan dipahami. Ø Memiliki sejumlah strategi untuk mengembangkan suatu solusi rancangan. Ø Menyediakan sejumlah kriteria untuk mengevaluasi kualitas dari solusi yang dihasilkan. Perancangan Internal Sistem 26
Sesi 11/12 Structure Chart · Suatu teknik pendokumentasian untuk menggambarkan modul-modul dalam suatu sistem, dan hubungan antar modulnya. (Yourdon, 1979) · Menggambarkan alur dan keputusan utama dalam suatu sistem. (Weinberg, 1980) Perancangan Internal Sistem 27
Sesi 11/12 Structure Chart (lanjutan) ● Merupakan alat utama perancangan terstruktur untuk memperlihatkan struktur dari sistem. ● Pada dasarnya top-down: suatu fungsi didekomposisi sampai ke tingkat yang cukup sederhana untuk diprogramkan dengan menggunakan aturan tertentu Perancangan Internal Sistem 28
Sesi 11/12 Notasi Structure Chart Nama JUDUL · Adalah suatu modul sehubungan dengan suatu proses atau seperangkat proses pada suatu DFD. · Nama : Nama Modul · JUDUL: Uraian rinci dari Nama Modul … Informasi yang dialirkan dari satu modul ke modul yang lain (Data Couple) … Kontrol yang dialirkan dari satu modul ke modul yan lain (Flag) Perancangan Internal Sistem 29
Sesi 11/12 Modul: UDAPEG Ubah Data Pegawai Contoh Structure Chart Modul Nama Modul · Sebuah Modul dengan nama UDAPEG Koneksi antar Modul: A Pemanggil · Modul A memanggil modul B B Yang dipanggil Perancangan Internal Sistem 30
Sesi 11/12 Contoh Structure Chart (lanjutan) A P Q FLAG B · Modul X memanggil modul Y berdasar keputusan dalam modul X. · Modul X memanggil modul Z berdasar pada modul loop dalam modul X X Y · Modul A memanggil modul B dengan mengirim elemen data P. · Modul B mengembalikan ke A elemen data Q dan elemen kontrol FLAG Z Perancangan Internal Sistem 31
Notasi: Modul yang di dalamnya telah ditetapkan datanya atau pustaka aplikasi Contoh: VALIDASI NO. TELEPON READ (BACA) Modul sistem WRITE
Sesi 11/12 Contoh Structure chart Buat Slip Gaji NIP wan a Kary Te ta p Hitung Gj. Bersih Ky Honorer Hitung Gj. Bersih Ky Tetap Ke Hitung Potongan Pajak Perancangan Internal Sistem Ja rif s nu Gj Kotor Ky Tetap Bo Gj Kotor Honorer ok m- Potongan Pajak ok Ta . P Hitung Gj. Kotor Ky Honorer Cetak Slip Gaji Gj rja Baca Data Karyawan Gaj i j. p G Nam a G or ta on H j Te Ky n Ho y EOF er K er or Hitung Gj. Kotor Ky Tetap 33
Sesi 11/12 Modul · Sekumpulan perintah untuk mengerjakan suatu aktivitas/proses. Implementasinya: · Bhs Pascal · Bhs C : Procedure, Function. : Function. · Didefinisikan sebagai: · · · Input Output Fungsi Mekanik Internal data : apa yang diberikan oleh pemanggil : apa yang diberikan kepada pemanggil : Proses yang dilakukan : Prosedur atau logik dari fungsi : variabel/memori private Perancangan Internal Sistem 34
Sesi 11/12 Dalam STRUCTURE CHART, modul hanya dilihat dari segi external-view-nya saja. FUNGSI INPUT OUTPUT - prosedur/logik - data internal Internal view External view Perancangan Internal Sistem 35
Sesi 11/12 Analisis Transformasi dan Transaksi Merupakan peralihan dari Analisis ke Perancangan ● Kebanyakan sistem-sistem utama masuk pke dalam dua model sistem dasar, yaitu: ● Model Transaksi terpusat ● Model Transformasi terpusat. Perancangan Internal Sistem 36
Sesi 11/12 Peralihan Desain Terstruktur 3 4 C B 2 D A 5 E 1 6 3 B 2 A Perancangan Internal Sistem C 4 D 5 E 37
Sesi 11/12 Transformasi Model Terpusat CONTROL 5 3 3 C CONTROL 2 2 1 GET 3 CONTROL 4 5 5 B CONTROL 1 4 D CONTROL 5 2 6 6 A E Perancangan Internal Sistem PUT 38
Sesi 11/12 Peralihan Desain Terstruktur 4 D 9 5 3 6 B 2 1 C 7 8 A E 10 F 11 G 12 K J I 14 13 H C/I 3 4 B D 9 E 10 14 11 6 5 F 15 7 12 G 8 13 H J 15 2 A K Perancangan Internal Sistem 39
Sesi 11/12 Transaksi Model Terpusat CONTROL C/I 3 14 CONTROL 15 3 2 17 2 16 B CONTROL 1 1 GET 1 J CONTROL 17 2 18 18 A K 4 5 10 9 D E 6 11 7 F Perancangan Internal Sistem 12 G 8 PUT 18 13 H 40
Sesi 11/12 Langkah-langkah 1. 2. 3. 4. 5. 6. 7. 8. 9. Diagram Relasi Data Matriks Relasi Data Transisi desain Dekomposisi Fungsional Analisis Transformasi dan Transaksi “Structure Charts” “Strctured English/Pseudocode/PDL” Evaluasi desain “Packaging” Perancangan Internal Sistem 41
Sesi 11/12 Merancang Structure Chart (SC) Menggunakan dua strategi: 1. Analisis Transaksi 2. Analisis Transformasi Langkah umum: 1. Memecah sistem ke unit-unit transaksi dengan menggunkan Analisis Transaksi. 2. Mengkonversikan setiap unit transaksi ke suatu SC dengan menggunkan Analisis Transformasi. 3. Merekonstruksi SC-SC yang terpisah ke dalam SC keseluruhan Perancangan Internal Sistem 42
Sesi 12 Analisis Transaksi q Definisi Transaksi Terdiri dari lima komponen: 1. Event (Kejadian), di lingkungan sistem. 2. Stimulus (Pemicu), masuk ke sistem. 3. Activity (aktivitas), di dalam sistem. 4. Response (Tanggapan), dari sistem ke lingkungan. 5. Effect (Dampak), terhadap lingkungan sistem Perancangan Internal Sistem 43
Sesi 12 Contoh Transaksi 1. Event 2. Stimulus 3. 4. 5. Activity Response Effect : Siswa ingin mengikuti sejumlah mata kuliah. : Formulir Rencana Strudi (FRS) diserahkan. : Memeriksa FRS. : FRS diarsipkan. : Siswa terdaftar di perkuliahan. Perancangan Internal Sistem 44
Sesi 12 q Unit-unit transaksi dapat diidentifikasi pada DFD dengan mempelajari bentuk-bentuk kejadian diskrit di sistem. A B Transaksi 1 2. 0 1. 0 Y X 3. 0 Perancangan Internal Sistem C Transaksi 2 45
Sesi 12 Analisis Transformasi · Suatu strategi untuk mengkonversikan setiap bagian DFD (unit transaksi), yang telah diisolasikan dalam Analisis Transformasi, ke suatu Structure Chart. 1 3 A 4 2 6 B 5 C E 6 D C 8 3 A Perancangan Internal Sistem 4 B 6 D 5 E 46
Sesi 12 q Analisis Transformasi terdiri dari 5 langkah: 1. 2. 3. 4. 5. Gambar DFD dari unit transaksi Identifikasi fungsi sentral DFD (central transform) Ubah DFD ke bentuk kasar SC Perhalus SC menggunkan kriteria rancangan Periksa SC tetap sesuai dengan DFD asal Central Transform · Merupakan bagian DFD yang berisi fungsi pokok/esensial dari unit transaksi dan tak tergantung implementasi fisik input-output · Cara pertama untuk mengidentifikasikannya adalah dengan cara melihatnya 1 3 A 4 2 6 5 C E 6 B Perancangan Internal Sistem D 8 47
Sesi 12 ● Cara kedua dilakukan dengan “memangkas” cabang “masuk” (input-data) dan “keluar” (outputdata) dari DFD: 1. Telusuri setiap aliran dari luar ke tengah DFD. Tandai data flow yang menyajikan input dalam bentuk paling esensial. Dengan kata lain, tandai tahap dimana input segera akan diproses secara aktual. 2. Telusuri setiap aliran “keluar” dari tengah DFD. Tandai data flow output dalam bentuk paling esensial. Dengan kata lain, tandai tahap dimana output sudah dihasilkan tapi belum diformat. 3. Gabungkan semua tanda dalam lingkaran tertutup. Perancangan Internal Sistem 48
Sesi 12 6. 0 Release Order Jual Shipping Release 1. 1 Isi Order-Jual Order ditolak Order Jual Valid 1. 3 Stock Kurang 1. 2 Periksa Stock Customer Slip Back. Order Susun Order Beli 1. 4 Rekam Back-Order PART Order Jual Detil Order Jual CENTRAL TRANSFORM Perancangan Internal Sistem Back Order 49
Sesi 12 q Membuat SC kasar (versi pertama) 1. Tentukan “Boss” dari SC: a. Diambil dari Central Transform. b. Diambil dari luar 2. Biarkan bubble lainnya menggantung pada “Boss”. 3. Hilangkan panah pada DFD. 4. Buat SC versi pertama. PERIKSA ORDER JUAL 1. 2 1. 1 2. 0 1. 3 1. 4 ISI RELEASE SUSUN REKAM ORDER JUAL ORDER BELI BACK ORDER Perancangan Internal Sistem 50
Sesi 12 q Perhalus dan Perbaiki SC 1. Dekomposisikan (pecah lebih lanjut) dan reorganisasi modul-modul SC versi pertama. 2. Tambahkan modul baca/tulis untuk mengakses peralatan I/O, termasuk file. 3. Berikan nama modul yang sesuai dengan aturan hirarki. 4. Gambarkan FLAG yang dibutuhkan. 5. Periksa seluruh kriteria perancangan (evaluasi) Perancangan Internal Sistem 51
Sesi 12 PERIKSA ORDER JUAL l lea Re Or de r Sh g ip pi ng an ur Q ck k. K oc uit Ba St se ua r. J de alid r O v k. O rde r REKAM BACK ORDER Quit id DISPLAY SCREEN SUSUN ORDER BELI Bac Order Jual edit RELEASE ORDER JUAL l Va Order Jual ISI ORDER JUAL Back Order Yg diformat EDIT VALIDASI ORDER JUAL FORMAT CETAK BACK ORDER Perancangan Internal Sistem 52
Shi ppi ng Rel eas e Sesi 12 RELEASE ORDER JUAL e s lea l ua d. J Or d. J ua l No Or er BACA ORDER JUAL CUSTOMER UPDATE CUSTOMER CETAK SLIP al rd. Ju Det. O rt BACA DETAIL ORDER JUAL Pa No No. O rd. J aul rt Pa +No Par t BENTUK DETAIL SLIP om D lip t il S eta st l ta To r Ha s Cu No ip Sh Sli p ga pin Cu e g. R BACA PART Perancangan Internal Sistem 53
Sesi 12 Back Order 2. 3 Detail Order. Jual Tangani Backorder Nota Terima 2. 1 6. 0 Release Order Jual Stock ada Validasi Barang Datang Barang Valid 2. 2 Update Stock PART Perancangan Internal Sistem Buffer Shipping Release 2. 4 Buat Shipping Release 54
Sesi 12 CATAT BARANG DATANG Pa rt it Part No Qu J Paml rt ta a Norim Te BUAT SHIPPING RELEASE ual +N o Pa BACA PART Det. Ord. Jual EDIT NOTA KREDIT Bac DISPLAY SCREEN k. O rde r EOF No. P a rt rt ul No. O rd. J Pa Ja ing ipp Sh ease l Re No. P t ar TANGANI BACKORDER N rt o. O rd rt Pa Nota Trima edit UPDATE STOCK No Nota Terima VALIDASI BARANG DATANG SIMPAN ITEM BACA ITEM RELEASE ORDER JUAL BUFFER HAPUS BACA DETAIL BACK ORDER JUAL BACK ORDER Perancangan Internal Sistem 55
Sesi 13 Spesifikasi Modul · Structure-Chart umumnya hanya memperlihatkan struktur keseluruhan dan “menyembunyikan” hampir seluruh rincian prosedural. · Sebagai penghubung dengan programmer, perancang sistem sebaiknya membuat suatu spesifikasi dari setiap modul yang ada. · Bentuk spesifikasi modul: - MODUL GUNA INPUT OUTPUT LAYOUT LOGIK : <nama modul> : <keterangan kegunaan modul> : <daftar input ke modul> : <daftar output dari modul> : <screen lay-out atau print lay-out> : <action diagram dan atau “structure-English”> Perancangan Internal Sistem 56
Sesi 13 Alat Menspesifikasikan Proses (lanjutan)… DECISION TABLE KONDISI ATURAN KEPUTUSAN Volume <10 <10 >= 10 Wilayah TMR TGH BRT 6% 5% 4% 10% 8% % Potongan DECISION TREE TMR 10% TGH 10% BRT 8% TMR 6% TGH 5% Perancangan Eksternal Sistem BRT 4% VOLUME > =10 POTONGAN < 10 57
Sesi 13 Simbol Action Diagram • Urutan (sequence): Prosedur Cetak Inisialisasi Cetak_Header Cetak_Body Cetak_Final 58
Sesi 13 Simbol Action Diagram (lanjutan…) • Looping Selama masih ada data Baca data Hitung Cetak hasil Perancangan Eksternal Sistem 59
Sesi 13 Simbol Action Diagram (lanjutan…) • Seleksi (selection) JIKA PIL=1 Kerjakan A LAINNYA JIKA PIL=2 Kerjakan B JIKA PIL=3 Kerjakan C JIKA PIL=4 Kerjakan D Perancangan Eksternal Sistem 60
Sesi 13 Contoh-contoh Action-Diagram: Membuat Kopi Manis Siapkan Gelas, Sendok dan bahan Masukan Kopi satu sendok ke gelas Masukan gula dua sendok ke gelas Tambahkan air panas secukupnya Siapkan Gelas, Sendok dan bahan Kocek air kopi dengan sendok Jika kurang manis Tambahkan gula setengah sendok Perancangan Eksternal Sistem 61
Sesi 13 Modul : CATAT_BARANG_DATANG Guna : Untuk menambahkan part yang datang, ke stock serta melayani backorder. Input : Output : Procedure CATAT_BARANG_DATANG Buka file PART, BACKORDER, DETORDJUAL, BUFFER Selama masih ada Nota-Terima Input Nota-Terima Untuk setiap part yang datang Update_stock Tangani_Backorder Buat_Shipping_Release Perancangan Eksternal Sistem 62
Sesi 13 Hitungan Gaji Pokok Jika Status = Kawin Tunj. Istri = 0, 2 x gaji Pokok Jika tidak Tunj. Istri = 0 Jika Jumlah anak > 3 Tunj. Anak = 0, 3 x Gaji Pokok Jika Tidak Tunj. Anak = Jumlah Anak x 0, 1 Gaji Pokok Gaji = Gaji Pokok + Tunj. Istri + Tunj. Anak Perancangan Eksternal Sistem 63
Sesi 13 PROSES PERIKSA ORDER - JUAL Terima Order-Penjualan Untuk tiap item-part di order periksa daftar PART Jika tidak ada dalam daftar Tolak Order Penjualan Jika persediaan kurang Catat dalam BACKORDER Jika tidak Catat dalam SLIP Jika ada slip Kirim SLIP ke Dept. KIRIM Perancangan Eksternal Sistem 64
Sesi 14 EVALUASI DESAIN • • Complexity (Kompleksitas) Copling (Kopeling/perangkai) Cohesion (Kohesi/kepaduan) Heuristics (heuristik)
Sesi 14 KOHESI (COHESION) Perekat yang memegang elemen pengolahan suatu modul bersama
Sesi 14 KOHESI (COHESION) • Kohesi adalah perpanjangan alami dari konsep penyembunyian informasi. • Modul yang kohesif ‘idealnya’ melakukan tugas tunggal dalam prosedur perangkat lunak. • Modul yang kohesif Memerlukan sedikit interaksi dengan prosedur yang dilakukan di bagian lain dari sebuah program. • Kohesi dapat direpresentasikan sebagai "spektrum“ dan harus selalu berusaha untuk mencapai kohesi yang tinggi, walaupun , spektrum pertengahan bisa diterima. • Skala untuk kohesi adalah nonlinier. Artinya, kohesi ‘low-end’ jauh "lebih buruk" dari pertengahan, dan yang mendekati "bagus" adalah kohesi yang ‘high-end’. • Dalam prakteknya, seorang desainer tidak perlu bersangkutan dengan pengkategorian kohesi dalam modul tertentu. Sebaliknya, konsep keseluruhan harus dipahami dan rendahnya tingkat kohesi harus dihindari ketika modul dirancang.
Sesi 14 Tingkatan Kohesi • • Functional (Fungsional) (Strongest) Sequential (Sekuensial) Communicational (Komunikasional) Procedural (Prosedural) Temporal(Temporal) Logical (Logikal) Coincidental (Koinsidental) (Weakest)
Sesi 14 Kohesi ‘Functional’ • Modul melakukan satu dan hanya satu tugas • Didefinisikan dengan kalimat penting sederhana A a k ng H il as Hitung SQRT (Akar)
Sesi 14 Kohesi ‘Sequential’ • Transformasi data yang berurut • Kontrol aliran yang berhubungan dengan aliran data up o r l. g va GET VALID GROUP GET RECORD record r va val. rec ec d or VALIDATE l. g va ro up l. r ec COLLECT
Sesi 14 Kohesi ‘Communicational’ • Semua bawahan beroperasi pada data input yang sama atau menghasilkan output data yang sama • Urutan eksekusi tidak y lar a S penting p. tory. Em His GET SALARY STATUS ry la a S y p. tor Em His ry ala r s g. Av CALCULATE AVERAGE SALARY Em x. Ma ary l sa p Hi. Sa sto lar ry y Ma x. rg Av lary sa sa lar y CALCULATE MAXIMUM SALARY
Sesi 14 Kohesi ‘Procedural’ T er Us GET USER TRANSACTION n ra s. Master record • Urutan eksekusi adalah penting namun kegiatan individu berhubungan • Bagan struktur mungkin menunjukkan iterasi keputusan AND/OR (DAN/ATAU) • Bawahan lebih terkait dengan urutan eksekusi daripada GET dengan fungsi spesifik MATCHED MASTER yang tunggal Us e r. T Ma READ MASTER RECORD tch ran s. M re aste c. r MATCH TRANSACTION AND RECORD
Sesi 14 Kohesi ‘Temporal’ • Semua bawahan harus dijalankan di (sekitar) waktu yang sama • Urutan eksekusi tidak penting DO PROGRAM STARTUP OPEN ALL FILES INITIALIZE ALL VARIABLES DISPLAY GREETING
Sesi 14 Kohesi ‘Logical’ • Modul dengan fungsi yang sama dikelompokkan bersama • Sering, bendera yang digunakan untuk menunjukkan fungsi tertentu yang harus dilakukan rd d Me ium READ FROM VARIOUS DATA d ar sk u Inp C READ CARDS k Dis ut Inp Di t pe Ta ut Inp Tape Input READ FROM TAPE Ca ut Inp ut READ FROM DISK
Sesi 14 Kohesi ‘Coincidental’ • Bawahan tidak ada hubungannya dengan satu sama lain • Aneka modul DO STUFF GET CLOCK TIME CHECK SINTAX OUTPUT LINE CALCULATE
Sesi 14 Pengukuran Kohesi • Berusaha untuk di level kohesi yang terkuat • Modul diklasifikasikan menurut tingkat terendah kohesi berlaku untuk semua elemen
Sesi 14 KOPLING (COUPLING) • Suatu cara untuk mengukur kualitas desain • Merupakan derajat kekuatan dari kesalingtergantungan antara dua modul • Coupling harus minimal sehingga modul bebas dan sebebas mungkin (tidak bergantung)
Sesi 14 Faktor-faktor yang mempengaruhi ‘coupling’ • Tipe koneksi • Kompleksitas antarmuka • Aliran informasi
Sesi 14 Tipe koneksi • Minimal • Normal • Patologi (Lowest) coupling
Sesi 14 Kompleksitas antarmuka 1. Jumlah parameter yang berbeda 2. Aksesibilitas informasi 3. Struktur informasi Pertimbangan yang paling penting adalah no 1.
Sesi 14 Aliran informasi • Data • Kontrol • Hidrid (data yang dipakai juga untuk kontrol)
Sesi 15 Tipe-tipe ‘coupling’ • • • Content Common Control Stamped Data • Derajat Tertinggi Normal • Derajat Terendah Yang terbaik yang terendah
Sesi 15 Coupling: Content • Referensi isi modul lain • Pengambilan data tanpa panggil (‘call’) modul yang mempunyai data tsb. A B C
Sesi 15 Coupling: Common • Digabungkan oleh lingkungan data umum (Untuk File Tradisional) GET PROCESS R R.
Sesi 15 Coupling: Common • Contoh: pada saat print ada kontrol untuk pindah baris baru. Item New Line REPORT DO IT New Line Item HEADER IT IT IT Process IT LINE Transfer kontrol aktual VALIDATE REJECT Melintaskan data yang mengontrol modul lain PROCESS
Sesi 15 Coupling: Stamp • Melintaskan struktur data bukannya elemen data A Total Mileage Auto. Record SUM MILEAGE Berapa jarak tempuh yang sudah dilakukan
Sesi 15 Coupling: Data • Hanaya melintaskan elemen-elemen data A B Sin C s Co n Ta CALC TRIG. VALUE A C C A SIN CALC SIN TAN B CALC COS B CALC TAN
Sesi 15 Pengukuran Kopling • Mengusahakan kopling tingkat terendah • Modul diklasifikasikan menurut tingkat tertinggi kopling
Sesi 15 Mengikat Waktu (Binding Time) • Menunda pengikatan waktu sedikit menurunkan kopling • • • CODE (Kode) COMPILATION (Kompilasi) LINKAGE EDITOR (Hub. Editor) LOAD (Beban) EXECUTION (Eksekusi) (Most) (Least)
Sesi 15 DECOUPLING (Membuat Kopling menjadi Rendah) • • • Desain sistem uncoupled Menunda pengikatan sampai terakhir Menggunakan parameter eksplisit Menggunakan koneksi standar Melokalisasi data dari lingkungan umum
Sesi 15 HEURISTICS Trik yang umumnya meningkatkan modularitas sistem
Sesi 15 Aspek Heuristics Ukuran modul (module size) Rentang kendali (Span of control) Kipas (Fan-In) Ruang linkup kendali (sope of effect/scope of control) Sistem diperhitungkan sepenuhnya (fully factored systems) • Kemudahan akses data (data accessibility) • Modul-modul dapat diprediksi (predictable modules) • Morfologi/bentuk kata (morphology) • • •
Sesi 15 Strctured English: PROSES PERIKSA ORDER –JUAL. Untuk setiap item – part di order Periksa daftar PART Jika tidak ada dalam daftar Tolak order penjualan Jika persediaan kurang Catat dalam BACKORDER Jika tidak Catat dalam Slip Jika ada slip Kirim SLIP ke Dept_Kirim. Perancangan Internal Sistem 93
- Slides: 93