KONSEP DESAIN SOFTWARE DATABASE


SISTEM INFORMASI GEOGRAFIS


A.    ANALISIS DESAIN 
Analisis mengenai hal-hal yang berhubungan terhadap kebutuhan dilakukan  dengan menggunakan beberapa alat (tools). Data Dictionary menjadi bekal dasar untuk menganalisis kebutuhan. Data Dictionary berisi gambaran dari semua objek data yang diperlukan dan dihasilkan oleh software nantinya. Diagram-diagram tadi mempunyai karakteristik masing-masing. Beberapa alat yang digunakan dalam analisis diantaranya :
1.      Data Flow Diagram (DFD)
DFD memberi gambaran bagaimana data berubah sejalan dengan
alirannya dalam sistem dan menggambarkan fungsi-fungsi yang mengubah data-data.


Gambar 1. Data Flow Diagram

2.  ERD (Entity Relationship Diagram)
     ERD menggambarkan relasi antara objek data. 
Gambar 2. Entity Relationship Diagram

3.  STD ( State Transition Diagram)
  Menggambarkan bagaimana kerja sistem melalui kondisi (state) dan kejadian yang menyebabkan kondisi berubah. STD juga menggambarkan aksi yang dilakukan karena kejadian tertentu.

Gambar 3. State Transition Diagram


      Hasil yang diperoleh dari analisis kebutuhan adalah model analisis yang kemudian menjadi bekal untuk melakukan desain. Setiap bagian dari analisis model pada gambar 4 sebelah kanan menjadi bekal pada proses desain pada piramida  model desain pada sebelah kiri gambar 4.

Gambar 4. Hubungan antara Model analisis dan Model desain 

B.    MODEL DESAIN
 a.   Data design 
       Mengubah informasi menjadi struktur data untuk mengimplementasikan software. Data design dibuat berdasarkan data dictionary dan ERD.    
     b.   Architectural design 
            Mendefinisikan relasi antara elemen-elemen struktural utama, pola desain yang digunakan untuk  mencapai kebutuhan yang ditentukan untuk sistem dan batasan-batasan yang mempengaruhi bagaimana desain arsitektural ini diterapkan. Desain ini berdasarkan spesifikasi sistem, model analisis (bagian DFD) dan interaksi antara subsistem.
     c.    Interface design 
       Menjelaskan bagaimana software berkomunikasi dalam dirinya, dengan sistem yang bertukar informasi dengannya, dan dengan manusia yang menggunakannya. DFD diperlukan untuk desain ini.
      d.      Component-level design 
             Menghasilkan deskripsi prosedur software.


C.    KONSEP DESAIN
1.  Abstraction
Abstraction adalah gambaran dari fungsi suatu program. Gambaran ini bisa bertingkat-tingkat. Tingkat yang paling atas adalah gambaran suatu fungsi program dengan menggunakan bahasa alami. Pada tingkat terendah, menghasilkan abstraksi yang bersifat prosedural/ langkah perlangkah dengan menggunakan istilah yang teknis dan bisa diimplementasikan menjadi fungsi program.
Pada saat beralih dari tingkat ke tingkat, kita menggunakan procedural dan data abstraction. Procedural abstraction  adalah urutan instrasi yang mempunyai tujuan khusus,dan data abstraction adalah koleksi data yang digunakan pada fungsi tersebut.
      Contoh:
      Program : Iklan Part-time Job
      Fungsi: Pendaftaran calon part-timer
      Abstraction 1 (highest level): 
   Calon part-timer dalam melakukan upload syarat-syarat yang diperluka untuk melamar: surat lamaran, CV, foto, transkrip, data diri.
      Abstraction 2 (lower level)
Procedural abstraction : 
tampilkan pilihan part-time job 
- input data 
- verifikasi format 
- kirim data 
Data abstraction 
 - nama is STRING 
 - nim is STRING 
 - foto is IMAGE FILE 
 - surat_lamaran is PDF FILE 
2.  Refinement
  Refinement membantu designer untuk memperlihatkan detil dari lowest level dari abstraction. Abstraction dan refinement merupakan konsep yang saling melengkapi. Contoh dari refinement tentang fungsi sebuah pintu ada pada gambar 5.
3.  modularity—membagi software menjadi modul \
Software dibagi-bagi menjadi beberapa component yang disebut modul-modul.  Modul-modul ini nantinya disatukan/diintegrasikan untuk memenuhi kebutuhan sistem.
4.  software architecture—struktur software secara keseluruhan
Struktur hirarki/berjenjang dari modul-modul program. Untuk menggambarkan struktur modul-modul tersebut beberapa model yang ada adalah :
-  framework model : identifikasi pola yang berulang-ulang
-  dynamic model : identifikasi  bagaimana konfigurasi sistem berubah karena
    kejadian-kejadian tertentu
-  process model: fokus pada proses teknis yang harus dikerjakan sistem
-  functional model : menggambarkan hirarki sistem berdasarkan fungsinya 
5.  Software procedure
Fokus pada detil proses pada tiap modul. Prosedur menjelaskan proses, urutan kejadian, proses perulangan, penentuan keputusan/arah. Ini bisa digambarkan dengan menggunakan Flow Chart yang bertingka. 
6. Information hiding

Ide dari information hiding (menyembunyikan informasi) adalah modul dirancang sedemikian rupa sehinga inforamsi (prosedur dan data) yang di dalamnya tidak  dapat di akses oleh modul lain yang tidak memerlukannya.  

D. DATABASE MANAGEMENT SYSTEM (DBMS)
   
DBMS adalah perangkat lunak yang menangani semua pengaksesan database yang
mempunyai fasilitas membuat, mengakses, memanipulasi dan memelihara basis data.


   Gambar 5. Database Management System


Gambar 6. Database System Environment

PERBEDAAN FILE SYSTEM DENGAN DBMS

File Systems
DBMS
      Data terpisah dan terisolasi   
      Terintegrasi
      Banyak data terduplikasi
      Dikurangi
      Program aplikasi bergantung pada format    file dengan file lain
      Independence - Standarization
      Sulit mereprensentasikan data dalam perspektif user
      Mudah, dengan adanya berbagai cara pandang terhadap data
Tabel 1. Perbedaan File System dengan DBMS

Contoh perangkat lunak DBMS :

Microsoft Access, Microsoft SQL Server, MySQL, PostgreSQL, Oracle, Informix, Sybase, DB2Interbase dan lain-lain.

E. BAHASA BASIS DATA

DBMS merupakan perantara antara user dengan database. Cara komunikasi diatur dalam suatu bahasa khusus yang telah ditetapkan oleh DBMS. Contoh: SQL, dBase, QUEL, dsb. Bahasa database, dibagi dalam 2 bentuk:
a.       Data Definition Language (DDL)
Digunakan dalam membuat tabel baru, indeks, mengubah tabel, menetukan struktur tabel, dsb. Hasil dari kompilasi perintah DDL berupa kumpulan tabel yang disimpan dalam file khusus: Kamus Data (Data Dictionary). Data Dictionary: merupakan metadata (super data), yaitu data yang mendeskripsikan data sesungguhnya. Data dictionary ini akan selalu diakses dalam suatu operasi database sebelum suatu file data yang sesungguhnya diakses.
b.      Data Manipulation Language (DML)
Digunakan dalam memanipulasi dan pengambilan data pada database. Manipulasi data, dapat mencakup:
·         Pemanggilan data yang tersimpan dalam database (query)
·         Penyisipan/penambahan data baru ke database
·         Penghapusan data dari database
·         Pengubahan data pada database
Terdapat dua (2) jenis DML:
Ø  Prosedural
Menghendaki user untuk menspesifikasikan data apa yang diperlukan dan bagaimana cara mendapatkan data itu. Contoh: bahasa C/C++, PL/SQL, dsb.
Ø  Nonprosedural
Menghendaki user untuk menspesifikasikan data apa yang dibutuhkan, tanpa harus menspesifikasikan bagaimana cara mendapatkan data tersebut.

Contoh: SQL
F. KOMPONEN DBMS
Gambar 7. Komponen DBMS
1.      Query Processsor
Merubah bentuk query ke dalam instruksi tingkat rendah ke database manager
2.      Database Manager
Menerima query dan menguji skema eksternal dan konseptual untuk menentukan apakah record-record dibutuhkan untuk memenuhi permintaan.
3.      File Manager
Manipulasi penyimpanan file dan mengatur alokasi ruang penyimpanan pada disk.
4.      DML Preprocessor
Merubah perintah DML embedded ke dalam program aplikasi dalam bentuk fungsi-fungsi yang memanggil dalam host language.
5.      DDL Compiler
Merubah perintah DDL menjadi kumpulan tabel yang berisi metadata.
6.      Dictionary Manager
Mengatur akses dan memelihara data dictionary.





 

Komentar

Postingan populer dari blog ini

Mengenali Tanda dan Gejala Serangan Virus pada Tanaman

TITIK LAYU PADA TANAMAN

SOAL UTS DASAR-DASAR ILMU TANAH