• Tidak ada hasil yang ditemukan

Mendefinisikan batasan integritas / Integrity Constraint

Dalam dokumen BAB 3 ANALISIS DAN PERANCANGAN SISTEM (Halaman 76-85)

3.3 Perancangan Basis Data Konseptual .1 Identifikasi Tipe Entitas

3.4.5 Mendefinisikan batasan integritas / Integrity Constraint

Langkah ini bertujuan untuk memeriksa batasan – batasan integritas yang direpresentasikan di dalam model data logikal yang telah dibentuk. Ada beberapa pertimbangan dalam memeriksa Integrity Constraint yaitu :

1. Required Data

Memastikan bahwa atribut tertentu yang sangat dibutuhkan tidak diperbolehkan memiliki nilai NULL. Batasan ini telah terpenuhi seperti yang tertera pada bagian (3.3.3) dengan beberapa tambahan baris sebagai berikut :

Tabel 3. 21 Penambahan Kamus Atribut Position pada Tahap Pengecekan Integrity Constraint

Atribut Deskripsi Tipe Data dan Panjang

Nulls Multi Value PositionID Identifikasi unik dari

sebuah member dari Position

Char (4) No No

Position Nama jabatan dari seorang karyawan

Varchar (30) No No

  134  

Tabel 3. 22 Penambahan Kamus Atribut DetailMessage pada Tahap Pengecekan Integrity Constraint

Atribut Deskripsi Tipe Data dan Panjang

Nulls Multi Value MessageID Identifikasi unik

dari sebuah member dari Message

Char (8) No No

Comment Pesan yang dibuat oleh Customer atau Sales

Varchar (200) No No

CommentPost Nama seseorang yang menuliskan Comment

Varchar (50) No No

CommentTime Waktu pada saat Comment dibuat

Date No No

   

Tabel 3. 23 Penambahan Kamus Atribut ProductType pada Tahap Pengecekan Integrity Constraint

Atribut Deskripsi Tipe Data dan Panjang

Nulls Multi Value ProductTypeID Identifikasi unik dari

sebuah member dari ProductType

  135  

ProductType Tipe dari suatu produk Varchar (20) No No  

 

Tabel 3. 24 Penambahan Kamus Atribut DetailTransaction pada Tahap Pengecekan Integrity Constraint

Atribut Deskripsi Tipe Data dan Panjang

Nulls Multi Value DocumentNo Identifikasi unik dari

sebuah member dari Transaction

Char (5) No No

ProductID Identifikasi unik dari sebuah member dari Product

Char (10) No No

Qty Jumlah produk yang dibeli Int (11) No No DetailDate Waktu pada saat suatu

produk dipilih untuk dimasukkan ke dalam cart

Datetime No No

   

Tabel 3. 25 Penambahan Kamus Atribut RequestDetail pada Tahap Pengecekan Integrity Constraint

Atribut Deskripsi Tipe Data dan Panjang

Nulls Multi Value RequestID Nomor surat permintaan

produk ke pabrik

  136  

Atribut Deskripsi Tipe Data dan Panjang

Nulls Multi Value ProductID Identifikasi unik dari

sebuah member dari Product

Char (10) No No

Qty Jumlah produk yang

diminta oleh gudang

Int (11) No No

 

2. Attribute Domain Constraint

Menentukan domain atau nilai yang diperbolehkan dalam satu atribut. Batasan ini telah terpenuhi seperti yang tertera pada bagian (3.3.4) dengan beberapa tambahan baris sebagai berikut :

Tabel 3. 26 Penambahan Atribut Domain setelah Dilakukan Pengecekan Integrity Constraint

Nama Entitas Atribut Domain Atribut Position PositionID Char dengan panjang 4 karakter

Position Varchar dengan panjang 30 karakter DetailMessage MessageID Char dengan panjang 8 karakter 

Comment Varchar dengan panjang 200 karakter CommentPost Varchar dengan panjang 50 karakter CommentTime Date

  137  

Nama Entitas Atribut Domain Atribut ProductType ProductTypeID Char dengan panjang 2 karakter 

ProductType Varchar dengan panjang 20 karakter  DetailTransaction DetailDate Datetime 

DocumentNo Char dengan panjang 5 karakter  ProductID Char dengan panjang 10 karakter  Qty Int dengan panjang 11 digit RequestDetail RequestID Char dengan panjang 4 karakter

ProductID Char dengan panjang 10 karakter Qty Int dengan panjang 11 digit 3. Multiplicity

Merupakan batasan jumlah yang ditempatkan pada hubungan antar data dalam basis data. Batasan ini telah terpenuhi seperti yang tertera pada bagian (3.3.2).

4. Entity Integrity

Memastikan primary key suatu entitas tidak bernilai NULL. Batasan ini telah dipenuhi seperti yang telah tertera pada bagian (3.3.5) dan telah ditentukan pula pada kamus data atribut pada tabel 3.18.

  138   5. Referential Integrity

Memastikan foreign key tidak memiliki nilai NULL dan dalam model data logikal tidak ditemukan adanya kemungkinan foreign key yang bernilai NULL.

Tabel 3. 27 Tabel Relasi Setelah Melakukan Proses Referential Integrity

No Relation

1 Employee (EmployeeID, EmployeeName, EmployeeAdd, EmployeePhone, EmployeePass, PositionID)

Primary Key : EmployeeID

Foreign Key : PositionID references Position(PositionID) ON UPDATE CASCADE ON DELETE NO ACTION

2 Position (PositionID, Position) Primary Key : PositionID

3 Customer (CustomerID, CustomerName, CustomerAdd, CustomerTaxNo, CustomerPhone, CustomerFax, CustomerCP, CustomerPass, DeliveryAdd)

Primary Key : CustomerID

4 Message (MessageID, Topic, MessageTime, MessagePost, CustomerID, EmployeeID)

Primary Key : MessageID

Foreign Key : EmployeeID references Employee(EmployeeID) ON UPDATE CASCADE ON DELETE NO ACTION

  139  

No Relation

Foreign Key : CustomerID references Customer(CustomerID) ON UPDATE CASCADE ON DELETE NO ACTION

5 DetailMessage (MessageID, Comment, CommentPost, CommentTime) Primary Key : MessageID, CommentTime

Foreign Key : MessageID references Message ON UPDATE CASCADE ON DELETE NO ACTION

6 Delivery (DeliveryID, DeliveryDate, WarehouseID, VehicleID) Primary Key : DeliveryID

Foreign Key : WarehouseID references Warehouse(WarehouseID) ON UPDATE CASCADE ON DELETE NO ACTION

Foreign Key : VehicleID references Vehicle(VehicleID) ON UPDATE CASCADE ON DELETE NO ACTION

7 Product (ProductID, ProductName, ProductPrice, ProductSize, ProductImage, ProductTypeID)

Primary Key : ProductID

Foreign Key : ProductTypeID references ProductType(ProductTypeID) ON UPDATE CASCADE ON DELETE NO ACTION

8 ProductType (ProductTypeID, ProductType) Primary Key : ProductTypeID

9 Transaction (DocumentNo, CustomerID, PurchaseOrderID, TransactionDate, MaturityDate, SalesConfirmDate, DeliveryID, EmployeeID, Status, DeliveryStatus, PaymentStatus, TransferNo)

  140  

No Relation

Primary Key : DocumentNo

Foreign Key : CustomerID references PurchaseOrder(CustomerID) ON UPDATE CASCADE ON DELETE NO ACTION

Foreign Key : PurchaseOrder ID references

PurchaseOrder(PurchaseOrderID) ON UPDATE CASCADE ON DELETE NO ACTION

Foreign Key : DeliveryID references Delivery(DeliveryID) ON UPDATE CASCADE ON DELETE NO ACTION

Foreign Key : EmployeeID references Employee(EmployeeID) ON UPDATE CASCADE ON DELETE NO ACTION

10 DetailTransaction (DocumentNo, ProductID, Qty, DetailDate) Primary Key : DocumentNo, ProductID

Foreign Key : DocumentNo references Transaction(DocumentNo) ON UPDATE CASCADE ON DELETE NO ACTION

Foreign Key : ProductID references Product(ProductID) ON UPDATE CASCADE ON DELETE NO ACTION

11 PurchaseOrder (PurchaseOrderID, PurchaseOrderDate, CustomerID, EmployeeID)

Primary Key : PurchaseOrderID

Foreign Key : CustomerID references Customer(CustomerID) ON UPDATE CASCADE ON DELETE NO ACTION

  141  

No Relation

UPDATE CASCADE ON DELETE NO ACTION 12 Input (CustomerID, EmployeeID, InputDate)

Primary Key : CustomerID, EmployeeID

Foreign Key : CustomerID references Customer(CustomerID) ON UPDATE CASCADE ON DELETE NO ACTION

Foreign Key : EmployeeID references Employee(EmployeeID) ON UPDATE CASCADE ON DELETE NO ACTION

13 Vehicle (VehicleID, WarehouseID, VehicleName) Primary Key : VehicleID

Foreign Key : WarehouseID references Warehouse(WarehouseID) ON UPDATE CASCADE ON DELETE NO ACTION

14 Warehouse (WarehouseID, WarehouseName, WarehouseAdd, WarehousePhone, WarehouseFax, WarehousePass, VerPass) Primary Key : WarehouseID

15 Request (RequestID, RequestDate, WarehouseID) Primary Key : RequestID

Foreign Key : WarehouseID references Warehouse(WarehouseID) ON UPDATE CASCADE ON DELETE NO ACTION

16 RequestDetail (RequestID, ProductID, Qty) Primary Key : RequestID, ProductID

Foreign Key : RequestID references Request(RequestID) ON UPDATE CASCADE ON DELETE NO ACTION

  142  

No Relation

Foreign Key : ProductID references Product(ProductID) ON UPDATE CASCADE ON DELETE NO ACTION

3.4.6 Melakukan Review Model Data Logikal dengan User

Pada tahap ini diperlukan proses diskusi dengan pihak kantor cabang untuk melakukan review apakah model data logikal telah sesuai dengan kebutuhan dan telah memenuhi semua persyaratan data user. Setelah melakukan diskusi, model data yang telah dibentuk dinyatakan cukup memenuhi persyaratan yang diperlukan perusahaan.

Dalam dokumen BAB 3 ANALISIS DAN PERANCANGAN SISTEM (Halaman 76-85)

Dokumen terkait