Kamus Data-ERD.pdf (576Kb)

  Perancangan Perangkat Lunak

Pendahuluan Pendahuluan

  • Kamus data adalah suatu daftar data Kamus data adalah suatu daftar data

    elemen yang terorganisir dengan

    definisi yang tetap dan sesuai definisi yang tetap dan sesuai dengan sistem, sehingga user dan analis sistem mempunyai pengertian li i t

  i ti yang sama tentang input, output, dan komponen data strore. Pendahuluan Pendahuluan

  • Pada ada ta ap tahap analisis, a a s s, kamus a us data data merupakan alat komunikasi antara user dan analis sistem tentang data yang dan analis sistem tentang data yang mengalir di dalam sistem, yaitu tentang data yang masuk ke sistem dan tentang data yang masuk ke sistem dan tentang informasi yang dibutuhkan oleh user. Sementara Sementara itu itu, pada pada tahap tahap perancangan sistem kamus data di digunakan k untuk t k merancang input, i t laporan dan database.
Bentuk Kamus Data Bentuk Kamus Data

  • Suatu sistem dapat diuraikan ke dalam Suatu sistem dapat diuraikan ke dalam 4 form kamus data yang menerangkan isi database sistem dalam bentuk hirarki isi database sistem dalam bentuk hirarki seperti yang digambarkan sebagai berikut : b ik t

Data Flow Dictionary Entry Data Flow Dictionary Entry

  • Data flow dictionary entry ini • Data flow dictionary entry ini menerangkan setiap data flow pada DFD. Data flow ini dapat berupa : DFD D t fl i i d t b

  a. Satu struktur yang terdiri dari satu y g elemen data tunggal.

  b. Satu struktur yang terdiri dari satu b S t t kt t di i d i t p paket elemen data.

  c. Multiple struktur. Data Flow Dictionary Entry Data Flow Dictionary Entry

  • • Berdasarkan uraian di atas, maka B d k i di t k hubungan antara alur data pada DFD dan alur data pada elemen kamus data adalah one to one relationship data adalah one to one relationship (relasi satu-satu). Jika DFD berisi 40

    alur data, maka kamus data harus alur data maka kamus data harus mempunyai 40 elemen alur data.

Data Flow Dictionary Entry Data Flow Dictionary Entry

  • Data flow dictionary entry berisi hanya y y y summary data atau data ringkasan, dan menerangkan alur yang mengidentifikasikan g y g g dari mana alur itu berasal dan kemana alur itu menuju. Contoh sbb: j

Data Store Dictionary Entry Data Store Dictionary Entry

  • Data store dictionary enty Data store dictionary enty menerangkan setiap data store yang unik dalam DFD. Jika data store yang unik dalam DFD Jika data store yang sama muncul lebih dari satu, maka

    h hanya satu bentuk tunggal yang akan t b t k t l k

    digunakan.
  • Seperti halnya data flow dictionary entry, data store dictionary entry entry data store dictionary entry hanya berisi summary data.

  

Data Store Dictionary Entry Data Store Dictionary Entry

  • Contoh • Contoh

Data Structure Dictionary Entry Data Structure Dictionary Entry

  • Data structure dictionary entry ini dilengkapi dengan setiap struktur yang ada g p g p y g pada bentuk data store dan data flow.
  • Tujuan dari data structure dictionary entry • Tujuan dari data structure dictionary entry adalah untuk menghubungkan summary description (deskripsi ringkasan) dari data description (deskripsi ringkasan) dari data flow dan data strore dictionary entry ke d deskripsi k i i detail d t il dari d i d t data element l t dictionary entry.

  

Data Structure Dictionary Entry Data Structure Dictionary Entry

  • Contoh Contoh
Data Element Dictionary Entry Data Element Dictionary Entry

  • Data element dictionary entry D t l t di ti t menyediakan dasar untuk skema database. Bentuk ini menyediakan data element dictionary (DED) dari data element dictionary (DED) dari

    kamus data yang berdasarkan

    komputer. komputer

Data Element Dictionary Entry Data Element Dictionary Entry

  • Tujuan dari data element dictionary T j d i d t l t di ti

    entry adalah untuk menstandarkan

    deskripsi dari suatu elemen sehingga elemen itu direferensikan dengan cara elemen itu direferensikan dengan cara yang sama setiap kali digunakan.
  • • Hal ini sangat penting, khususnya jika H l i i t ti kh jik

    suatu sistem dikembangkan dan dimaintain oleh sekelompok user dan

  

Data Element Dictionary Entry Data Element Dictionary Entry

  • Contoh: • Contoh:

Pendefinisian Data Element Pendefinisian Data Element

  • • Menguraikan arti dari alur data dan data store dalam • Menguraikan arti dari alur data dan data store dalam DFD

  • • Menguraikan komposisi paket data pada alur data ke Menguraikan komposisi paket data pada alur data ke dalam alur yang lebih elementary (kecil) contoh :

    alamat langganan yang terdiri dari nama jalan, kota dan kode pos.

  • • Menguraikan komposisi paket data dalam data store.

  • • Menspesifikasikan nilai dan unit informasi dalam alur data dan data store.

  • • Menguraikan hubungan yang terinci antara data store dalam suatu entity relationship diagram (ERD)

Notasi Notasi Kamus Data Notasi-Notasi Kamus Data

Notasi Notasi

Arti Arti

  = terdiri dari, terbentuk dari, sama dengan

  • dan dan +

  ( ) optional { } { } iterasi/ pengulangan, misal : 1 { ... } 10 iterasi/ pengulangan, misal : 1 { ... } 10 [ ] pilih satu dari beberapa alternatif (pilihan) misal :

  [AIBICID] [AIBICID]

  • komentar

  @ @ identifier suatu data store | pemisah dalam bentuk [ ]

Contoh Kamus Data Contoh Kamus Data

  • Nama = Nama Depan + Natama Belakang Nama Nama_Depan Natama_Belakang
  • Current_Height = *Unit : 150 Cm*
  • • Nama_Langganan = (Title) + Nama_Depan + • Nama Langganan = (Title) + Nama Depan +

    (Nama_Tengah) + Nama_Belakang
  • Customer_Address = (Shipping_Address) + • Customer Address = (Shipping Address) + (Billing_Address)
  • Order = Customer_Name + Shipping_Address • Order = Customer Name + Shipping Address + 1{item}10
  • Jenis_Kelamin = [ Pria I Wanita ] Jenis Kelamin = [ Pria I Wanita ]

Contoh Kamus Data Contoh Kamus Data

  • Penjualan = *Jumlah penjualan • Penjualan = Jumlah penjualan selama satu tahun*
  • Pajak rate = *Satuan pajak yang berlaku ditentukan oleh pemerintah p dalam %*
  • • Jumlah Pajak = *Jumlah pajak yang • Jumlah Pajak = Jumlah pajak yang

    harus dibayar hasil perkalian dari

    l * sales*

  ERD

ENTITY RELATIONSHIP

DIAGRAM

Data modelling vs Process g Modelling

  • Pemodelan  proses (Co. DFD)  menunjukkan menunjukkan simpanan data,  simpanan data,  bagaimana,  dimana, dan kapan data digunakan atau diubah dalam sebuah digunakan  atau diubah dalam sebuah  Sistem  Informasi
  • Pemodelan  data (Co. ER) menunjukkan  definisi, , , g  struktur, dan hubungan dalam  data

  Tahapan Peranc. Database (1) Miniworld Tahapan Peranc. Database (1) REQUIREMENTS COLLECTION & ANALYSIS Phase 1 : Requirements, Collection and Analysis

  CONCEPTUAL DESIGN FUNCTIONAL ANALYSIS Functional Requirements Data Requirements Phase 2 : Conceptual Database Design LOGICAL DESIGN Conceptual Schema (In a high-level data model) High-level Transaction Specification DBMS-independent Phase 3 : Choice of DBMS Phase 4 : LOGICAL DESIGN (DATA MODEL MAPPING) APPLICATION PROGRAM Logical (Conceptual) Schema (In the data model of a specific DBMS) DBMS-specific Data Model Mapping (Logical design) PHYSICAL DESIGN (DATA MODEL MAPPING) APPLICATION PROGRAM DESIGN Phase 5 : Physical Design

Tahapan Peranc. Database (2) Tahapan Peranc. Database (2)

  • Hasil dari tahap requirement p

  p

  q  dan analisa berupa data‐data  kebutuhan user

   yang akan ditampung dan digambarkan pada tahap rancangan skema konsepsual (Conceptual

   Design).

  • Pada tahap Conceptual P d t h

  b i i d t il d k i i d i ti ti

C t l D i

   Design, berisi detail deskripsi dari tipe‐tipe

  entity,  relasi dan constraint (batasan). Hasil dari tahap ini berupa rancangan skema konseptual Database (ER g

  p ( g )  Diagram).

  • Setelah ER

   Diagram yang dibuat dari rancangan skema konsepsual database,  perlu dilakukan proses mapping ke skema relasi agar  d t b database t b t d t dii l t ik d

R l ti l

   tersebut dapat diimplementasikan dengan Relational  DBMS (RDBMS).

   Tahap ini disebut Logical Design (Data Model  p p

  Mapping). pp g)  Hasil dari tahapan ini berupa Skema Fisik Database.

  • Tahap akhir adalah Physical

   Design, berupa pendefinisian struktur

  internal  storage, index, path serta organisasi file‐file dalam

ER Data Model ER Data Model

  • Pemodelan sistem database dapat dilakukan melalui • Pemodelan sistem database

   dapat dilakukan melalui pendekatan perancangan secara konsepsual yaitu

  Entity Relationship Diagram (ERD atau ER Diagram). Entity  Relationship Diagram (ERD atau ER Diagram).

  • ER

   Diagram menggambarkan tipe objek mengenai data itu di manajemen,  serta relasi antara objek tersebut. j , j

  • ER

   Model dibuat berdasarkan persepsi atau pengamatan kondisi riil/nyata yang  terdiri atas entitas dan relasi antar entitas

  ‐entitas tersebut.

  • Sebuah database dapat dimodelkan sebagai:
    • – Kumpulan  Entity/Entitas,

ER Data Model ER Data Model

  • Entitas adalah sebuah obyek yang ada (exist) Entitas adalah  sebuah obyek yang ada (exist)  dan  dapat dibedakan dengan obyek yang lain.
  • Entitas • Entitas ada yang bersifat konkrit seperti:  ada yang bersifat konkrit, seperti:  orang  (pegawai, mahasiswa, dosen, dll), buku, 

    perusahaan; perusahaan; dan ada yang bersifat abstrak

     dan ada yang bersifat abstrak,  seperti:  peristiwa/kejadian (pendaftaran, 

    pemesanan, pemesanan penagihan) konsep (rekening

     penagihan), konsep (rekening, 

  kualifikasi),  mata kuliah, pekerjaan, status dan  sebagainya. sebagainya

ER Data Model ER Data Model

  • Setiap  entitas memiliki atribut sebagai  keterangan g  dari entitas, misal. entitas  mahasiswa,  yang memiliki atribut: NIM,  nama nama dan alamat  dan alamat.
  • Setiap atribut pada entitas memiliki

  kunci atribut (key kunci atribut (key atribut) yang bersifat  atribut) yang bersifat unik.

   

ER Data Model ER Data Model

  • Beberapa atribut juga dapat ditetapkan • Beberapa atribut juga dapat ditetapkan sebagai calon kunci (candidate  key).

Mi l Misal

    ‐ Entitas Mahasiswa dengan atribut NIM sebagai key  atribut

  ‐ Entitas Dosen dengan NIP sebagai key  atribut,  dan sebagainya.

  • Beberapa entitas kemungkinan tidak memiliki p g atribut kunci sendiri,  entitas demikian disebut

  

Simbol ER Data Model Simbol ER Data Model

Entitas Lemah (Weak Entity) Entitas Lemah (Weak Entity)

  • Entitas

  y g y

  ( y)  Lemah (Weak Entity) adalah entitas yang keberadaannya 

  sangat  bergantung dengan entitas lain. ‐ Tidak memiliki Key Attribute sendiri.

  ‐ Entitas tempat bergantung disebut Identifying  Owner/Owner. y ‐ Entitas lemah tidak memiliki identifier‐nya sendiri. ‐ Atribut entitas lemah berperan sebagai Partial Identifier 

  (identifier  yang berfungsi secara sebagian). Contoh:

Jenis Jenis Atribut (1) Jenis-Jenis Atribut (1)

  • Simple

  

S p e / to c tt bute: ada a at but ya g t da dapat d bag

 / Atomic Attribute: adalah atribut yang tidak dapat dibagi‐

  bagi  lagi menjadi atribut yang lebih mendasar.

  • Composite

   Attribute: atribut yang terdiri dari beberapa atribut 

  yang yang lebih mendasar  lebih mendasar. Contoh:

  Atribut ‐ Atribut ALAMAT, terdiri atas atribut JALAN, KOTA,  ALAMAT, terdiri atas atribut JALAN, KOTA,  KODE_POS.

    ‐ Atribut NAME, terdiri atas atribut FNAME,MNAME dan LNAME  pada pada suatu entitas (EMPLOYEE)

   suatu entitas (EMPLOYEE).

  • Single

  

‐Valued Attribute: atribut yang hanya memiliki satu 

  harga/nilai. harga/nilai  

  Contoh:

Jenis Jenis Atribut (2) Multi Valued

Jenis-Jenis Atribut (2)

  • Multi

  ‐Valued Attribute: adalah atribut yang memiliki isi lebih dari satu

   Attribute: adalah atribut yang memiliki isi lebih dari satu  nilai.

    Contoh: b

  • – Atribut d d b  PENDIDIKAN TINGGI pada entitas PEGAWAI, dapat berisi  lebih  dari satu nilai: SMP, SMU, Perguruan Tinggi (Sarjana), Doktor,  dll.
  • – Atribut  HOBBY pada entitas MAHASISWA, dapat memiliki lebih dari  satu  nilai: sepak bola, menyanyi, menari, tennis, dsb.

  Atribut PRASYARAT pada entitas MATA KULIAH dapat memiliki – Atribut  PRASYARAT pada entitas MATA_KULIAH, dapat  memiliki  lebih  dari satu nilai: Konsep Pemrograman & Algoritma  Struktur  Data

 untuk prasyarat mata kuliah Pemrograman Lanjut.

  • Null

   Values Attribute: adalah atribut dari entitas yang tidak memiliki  nilai.

Jenis Jenis Atribut (3) Jenis-Jenis Atribut (3)

  • Derived

   Attribute: adalah atribut yang nilainya dapat diisi atau  diturunkan  dari perhitungan atau algoritma tertentu. Contoh: Atribut UMUR dapat dihitung dari atribut TGL LAHIR ‐ Atribut UMUR, dapat dihitung dari atribut TGL_LAHIR ‐ Atribut LAMA_KULIAH, dapat dihitung dari NIM yang merupakan   kombinasi  antara digit tahun dan digit yang lain (2696100…). ‐ Atribut INDEX_PRESTASI, dapat dihitung dari NILAI yang diperoleh  NRP MAHASISWA. Nama Nama_MK NO_MK

  Mahasiswa Mata Kuliah

Relasi dan Rasio Kardinalitas ( ) Relasi dan Rasio Kardinalitas (1)

  • Relasi adalah g  hubungan antar entitas.
  • Relasi dapat

   memiliki atribut, dimana terjadi adanya transaksi  yang  menghasilkan suatu nilai tertentu.

Penjelasan: Penjelasan:

  

  Bentuk ER diatas antara Mahasiswa Mengambil

Relasi dan Rasio Kardinalitas ( ) Relasi dan Rasio Kardinalitas (2) Penjelasan:

   Jika  atribut Nilai ditempatkan pada entitas Mahasiswa (dimana Nilai merupakan

   salah satu atribut dari entitas Mahasiswa), maka semua mata  kuliah  yang diambil oleh seorang mahasiswa menghasilkan nilai yang sama  (tidak ( )

   realistis).

   Jika  atribut Nilai ditempatkan pada entitas Mata_Kuliah (dimana Nilai merupakan

   salah satu atribut dari entitas Mata_Kuliah), maka semua  mahasiswa  yang mengambil mata kuliah tertentu akan memiliki nilai yang sama  (tidak

   realistis).

Relasi dan Rasio Kardinalitas (3) D j d R l i Relasi dan Rasio Kardinalitas (3) Derajad  Relasi

  • Derajad

   Relasi adalah jumlah entitas yang berpatisipasi  dalam  suatu relasi.

  • Derajad  Relasi dapat berupa: j p p ‐ Unary Relationship (Relasi Berderajad 1) Binary Relationship (Relasi Berderajad 2) ‐ Binary Relationship (Relasi Berderajad 2) ‐ Ternary Relationship (Relasi Berderajad 3)

  

Relasi dan Rasio Kardinalitas (4) Relasi dan Rasio Kardinalitas (4)

Unary Unary Relationship (Relasi Berderajad 1)  Relationship (Relasi Berderajad 1)

  • adalah  relasi dimana entitas yang terlibat hanya 1.
  • Sering • Sering disebut relasi rekursif (recursive relationship)  disebut relasi rekursif (recursive relationship).

  Contoh:

  

Relasi dan Rasio Kardinalitas (5) Relasi dan Rasio Kardinalitas (5)

Binary Binary Relationship (Relasi Berderajad 2)  Relationship  (Relasi Berderajad 2)

  • Atau  relasi Biner adalah relasi yang melibatkan 2 entitas.

  Contoh: Contoh:

  

Relasi dan Rasio Kardinalitas (6) Relasi dan Rasio Kardinalitas (6)

Ternary Ternary Relationship (Relasi Berderajad 3)  Relationship  (Relasi Berderajad 3)

  • adalah

   relasi tunggal yang menghubungkan 3 entitas yang  berbeda.

  Contoh:

Relasi dan Rasio Kardinalitas (7) Relasi dan Rasio Kardinalitas (7) Rasio  Kardinalitas

  • Dalam  relasi binary antar 2 entitas, terdapat beberapa  PEGAWAI MANAGE DEPARTEMEN kemungkinan:

   p1  r1  d1

  1

   : 1 :  One‐to‐One  p2  r2  d2  p3  r3  d3  p4

  PEGAWAI BEKERJA_PADA DEPARTEMEN   p1 r1

N y

    d1 d1

   : 1 :  Many‐to‐One   p2 r2

   d2   p3 r3

   d3   p4 r4

M

    : N : Many‐to‐Many

   p1  r1  d1

Participation Constraint Dependencies D d i

  • Menunjukkan • Menunjukkan apakah keberadaan suatu entitas bergantung

   apakah keberadaan suatu entitas bergantung 

  penuh /  tidak dengan entitas relasinya.

  • Batasan (constraint) adalah jumlah minimum relasi dimana tiap Batasan  (constraint) adalah jumlah minimum relasi dimana tiap  entitas  dapat ikut berpatisipasi.
  • Ada

  j p

   2 jenis Participation Constraint: 1.  Partisipasi Total (          ) adalah p p y g j g g

   bentuk partisipasi yang menunjukkan ketergantungan 

  penuh  suatu entitas (semua dan harus).

  2.

   Partisipasi Parsial (          ) adalah  bentuk partisipasi yang menujukkan ketergantuan tidak 

Participation Constraint Dependencies D d i

  

Rasio Rasio Kardinalitas Participation Participation Constraint

 Kardinalitas  Constraint

  1PEGAWAI MANAGE DEPARTEMEN  : 1  :  One‐to‐One p1 p1  r1  d1  p3p4 p2     r2 d2 r3 d3

  NPEGAWAI BEKERJA_PADA DEPARTEMEN  : 1 :  Many‐to‐One p p1 r1

    d1 d1

 

 p2  r2  d2  p3  r3  d3  p4  r4

  M

   : N : Many‐to‐Many

Mapping ke Skema Relasi (1) Mapping ke Skema Relasi (1)

  Untuk pp g (p )  melakukan mapping (pemetaan) dari skema ER  Diagram  ke skema relasi terdapat langkah‐langkah yang  harus  diperhatikan.               

Langkah ‐langkah mapping:

  1. p Untuk setiap entitas skema relasi R yang y g y  menyertakan

seluruh Simple Atribute dan Simple Attribute dari

Composite Attribute yang

   ada, pilih salah satu atribut kunci sebagai Primary kunci sebagai Primary Key  Key.

   setiap Entitas Lemah, buatlah skema relasi R

dengan dengan mengikutsertakan seluruh Simple Attribute

 mengikutsertakan seluruh Simple Attribute.  Tambahkan

   Primary Key dari entitas kuatnya (Owner  Entity

  Mapping ke Skema Relasi (2) Mapping ke Skema Relasi (2) 3.

   Untuk setiap relasi binary 1:1, tambahkan Primary Key dari  sisi  yang lebih ”ringan” ke sisi (entitas) yang lebih ”berat”. 

  Suatu  sisi dianggap lebih ”berat” timbangannya apabila  mempunyai

   partisipasi total. Tambahkan juga Simple 

  Attribute yang

   terdapat pada relasi tersebut ke sisi yang  lebih  ”berat”. 

  Apabila Apabila kedua partisipasi adalah sama total, maka kedua  kedua partisipasi adalah sama total, maka kedua  entitas

   tersebut boleh digabung menjadi satu skema relasi.

  4.

   Untuk setiap relasi binary 1:N yang tidak melibatkan entitas  lemah, lemah tentukan mana sisi yang lebih ”berat” Sisi dianggap  tentukan mana sisi yang lebih  berat . Sisi dianggap  lebih

   ”berat” timbangannya adalah sisi‐N (Many).  Tambahkan

   Primary Key dari sisi yang ”ringan” ke skema  relasi l i i i l bih ”b b hk j

  t” T l h i l

   sisi yang lebih ”berat”. Tambahkan juga seluruh simple 

  attribute yang  terdapat pada relasi biner tersebut.

  Mapping ke Skema Relasi (3) Mapping ke Skema Relasi (3) 5.

  5. Untuk setiap relasi binary M:N, buatlah skema relasi baru R dengan  Untuk setiap relasi binary M:Nbuatlah skema relasi baru R dengan  atribut

   seluruh simple attribute yang terdapat pada relasi biner  tersebut.

   Tambahkan primary key yang terdapat pada kedua sisi ke  skema k l i R K d did t d i k d i i

F i K

   relasi R. Kedua Foreign Key yang didapat dari kedua sisi  tersebut  digabung menjadi satu membentuk Primary Key dari  skema

   relasi R.

  6.

   Untuk setiap Multivalued Attribute, buatlah skema relasi R yang  menyertakan  atribut dari multivalue tersebut. Tambahkan Primary 

  K Key d i l i iliki lti l d t b t K d t ib t  dari relasi yang memiliki multivalued tersebut. Kedua atribut 

  tersebut  membentuk Primary Key dari skema relasi R.

  7 Untuk setiap relasi n  Untuk setiap relasi n ary dengan n>2, buatlah skema relasi R yang  ‐ary dengan n>2 buatlah skema relasi R yang menyertakan

  7.

   seluruh Primary Key dari entitas yang ikut serta.  Sejumlah

   n Foreign Key  tersebut akan membentuk Primary Key 

  Mapping ke Skema Relasi (4) Mapping ke Skema Relasi (4) Diagram  Skema Konsepsual / ER Diagram untuk Database COMPANY

Mapping ke Skema Relasi (5) Mapping ke Skema Relasi (5) EMPLOYEE

  

FNAME MINIT LNAME SSN BDATE ADDRESS SEX SALARY SUPERSSN DNO

DEPARTMENT DEPARTMENT DNAME DNUMBER MGRSSN MGRSTARTDATE

Mapping Skema ER Diagram dengan R f i l I i C i Referential Integrity Constraint

  E l Fname Minit Lname SSN Bdate Address Sex Salary SuperSSN DNO Employee Dname DNumber MgrSSN MgrStartDate

  Departement DNumber DLocation Dept_Locations Pname PNumber PLocation DNum

  Project PNO Works_On Hours ESSN

  Contoh Implementasi Data Table Contoh Implementasi Data Table DEPARTMENT DEPARTMENT

Contoh Implementasi Data Table

  

Contoh Implementasi Data Table

DEPENDENT

  EMPLOYEE