bab 2 landasan teori - thesis.binus.ac.idthesis.binus.ac.id/doc/bab2/2010-1-00280-if bab 2.pdf ·...

44
7 BAB 2 LANDASAN TEORI 2.1 Entity Menurut Whitten (2004, p295), Entity merupakan kelompok orang, tempat, objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan menyimpan. Dapat juga diartikan sebagai sesuatu yang digunakan untuk menyimpan data. Entity merupakan dasar dari relational data modeling. Entity sering disamakan dengan tabel, akan tetapi entity bukanlah tabel. Entity biasanya diterapkan sebagai tabel– tabel dan digambarkan sama seperti tabel – tabel pada grafik model data. Tabel – tabel biasanya diterapkan secara fisik, tetapi beberapa entity terlalu konseptual untuk menjadi tabel. Conceptual entity biasanya tidak memiliki karakteristik lebih lanjut yang berhubungan dengan conceptual entity dan digunakan sebagai alat untuk berkomunikasi dengan tim untuk mempelajari garis besar permasalahan dan dianalisis lebih lanjut. Contoh conceptual entity dapat dilihat pada gambar 2.1. Gambar 2.1 Contoh Conceptual entities

Upload: doankhue

Post on 16-Mar-2019

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

7

 

BAB 2

LANDASAN TEORI

 

2.1 Entity

Menurut Whitten (2004, p295), Entity merupakan kelompok orang, tempat,

objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan

menyimpan. Dapat juga diartikan sebagai sesuatu yang digunakan untuk menyimpan

data. Entity merupakan dasar dari relational data modeling. Entity sering disamakan

dengan tabel, akan tetapi entity bukanlah tabel. Entity biasanya diterapkan sebagai tabel–

tabel dan digambarkan sama seperti tabel – tabel pada grafik model data. Tabel – tabel

biasanya diterapkan secara fisik, tetapi beberapa entity terlalu konseptual untuk menjadi

tabel.

Conceptual entity biasanya tidak memiliki karakteristik lebih lanjut yang

berhubungan dengan conceptual entity dan digunakan sebagai alat untuk berkomunikasi

dengan tim untuk mempelajari garis besar permasalahan dan dianalisis lebih lanjut.

Contoh conceptual entity dapat dilihat pada gambar 2.1.

Gambar 2.1 Contoh Conceptual entities

Page 2: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

8

 

Apabila conceptual entities sudah diberi hubungan (relationship) antar entity

maka akan terlihat seperti gambar 2.2.

Gambar 2.2 Contoh Conceptual entities with relationship names

Logical entity sedikit lebih rumit karena telah dijelaskan dan didokumentasikan

secara rinci. Mereka ada diantara model konseptual dan model fisik yang menunjukkan

rancangan basis data. Contoh logical entity dapat dilihat pada gambar 2.3.

Gambar 2.3 Contoh Logical entities

Page 3: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

9

 

Ketika model logikal sudah diberi atribut dengan lengkap, maka akan terlihat

seperti gambar 2.4.

Gambar 2.4 Contoh Logical entities with relationship names

2.2 Atribut (Attribute)

Menurut Whitten (2004, p295), Atribut merupakan sifat atau karakteristik suatu

entity. Atribut sering dianggap data oleh kebanyakan orang. Atribut berupa nomor /

bilangan, kode, kata – kata, frasa, teks – teks besar, dan bahkan suara - suara atau

gambar – gambar yang digabungkan untuk membentuk sebuah instance pada sebuah

entity. Atribut bukanlah kolom (column) pada tabel, meskipun atribut mungkin akan

berkembang untuk diterapkan menjadi tabel. Atribut bersifat sederhana, terpisah, jelas,

dan berkarakteristik tunggal yang menggambarkan atau mengenalkan sebuah entity.

Page 4: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

10

 

Atribut merupakan gen, atau DNA bagi sebuah entity. Sebuah atribut dapat dijelaskan

sebagai karakteristik yang jelas bagi data yang ada.

Atribut dapat diklasifikasikan menjadi :

- Simple Attribute

Simple attribute adalah atribut yang terdiri dari satu komponen tunggal yang

keberadaannya bebas. Simple attribute tidak dapat dibagi lagi menjadi komponen

yang lebih kecil.

- Composite Attribute

Composite attribute adalah atribut yang terdiri dari banyak komponen dengan

keadaan bebas. Dalam hal ini beberapa atribut dapat dipisahkan menjadi komponen

yang lebih kecil.

- Single Value Attribute

Single value attribute adalah atribut yang memiliki nilai tunggal untuk masing –

masing kejadian dari entity.

- Multi value attribute

Multi value attribute adalah atribut yang memiliki banyak nilai untuk masing –

masing kejadian dari entity.

Page 5: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

11

 

- Derived Attribute

Derived attribute adalah atribut yang menggantikan nilai yang diturunkan dari nilai

sebuah atribut yang berhubungan, tidak perlu pada jenis entity yang sama.

Contoh atribut dapat dilihat pada gambar 2.5.

Gambar 2.5 Contoh Atribut

2.3 Keys

Menurut Whitten (2004, p298), Keys berfungsi untuk menghubungkan suatu

objek dengan objek yang lain. Keys diletakkan pada atribut yang telah ditentukan

kedudukannya, agar dapat dihubungkan dengan atribut pada entity yang lain.

Page 6: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

12

 

Beberapa jenis key yang biasa digunakan :

- Candidate Key

Candidate key adalah himpunan yang mengidentifikasikan tiap – tiap

keberadaan suatu entity.

- Composite Key

Composite key adalah sebuah candidate key yang terdiri dari dua atau lebih

atribut.

- Primary Key

Primary key adalah candidate key yang dipilih secara unik untuk

mengidentifikasikan tiap – tiap keberadaan suatu tipe entity.

- Foreign Key

Foreign key adalah himpunan atribut dalam suatu relasi yang cocok dengan

beberapa candidate key dari beberapa relasi.

- Alternate Key

Alternate key adalah candidate key yang tidak dipilih menjadi primary key.

Page 7: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

13

 

2.4 Relasi (Relationship)

Menurut Whitten (2004, p298), Relasi adalah asosiasi atau hubungan alami

antara satu entity atau lebih. Relasi merupakan hubungan logis antara entity – entity.

Relasi bersifat dua arah, merupakan hubungan timbal balik antar entity yang

dihubungkan dengan relasi tersebut. Relasi menampilkan hubungan dari satu entity ke

entity lain, atau menghubungkan entity dengan dirinya sendiri. Ada dua jenis relasi, yaitu

relasi yang mengidentifikasi (identifying relationship) dan relasi yang tidak

mengidentifikasi (nonidentifying relationship).

‐ Relasi yang mengidentifikasi (Identifying) terjadi apabila primary key pada entity

induk berpindah ke posisi primary key dari entity anak dan oleh karena itu

instance anak harus diidentifikasi.

‐ Relasi yang tidak mengidentifikasi (Nonidentifying) terjadi apabila primary key

pada entity induk berpindah ke posisi non-key dimana entity anak tidak perlu

diidentifikasi tetapi harus menjelaskan fakta tentang entity anak.

Setiap relasi memiliki simbol cardinality dan nullability. Cardinality

menjelaskan berapa banyak instance yang dapat dihubungkan untuk setiap instamce

pada entity induk. Satu entity induk dapat dihubungkan dengan entity – entity anak

dengan cardinality sebagai berikut :

‐ Nol atau satu

‐ Satu dan hanya satu

Page 8: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

14

 

‐ Nol, satu, atau banyak

‐ Satu atau banyak

‐ Spesifik (angka)

‐ Interval (angka) – (angka)

‐ Apapun yang disebut tentang hubungan lebih dari satu

Derajat yang biasanya digunakan pada suatu relationship adalah binary

relationship, yang terdiri atas :

1. One – to – One (1 : 1) Relationship

Setiap relationship menggambarkan hubungan antara sebuah entity occurrence

pada entity yang satu dengan sebuah entity occurrence pada entity lainnya yang ikut

serta dalam relationship tersebut. Contoh one – to – one relationship dapat dilihat

pada gambar 2.6.

Gambar 2.6 Contoh One – to – One Relationship

Page 9: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

15

 

2. One – to – Many (1 : *) Relationship

Setiap relationship menggambarkan hubungan antara sebuah entity occurrence

pada entity yang satu dengan satu atau lebih entity occurrence pada entity lainnya

yang ikut serta dalam relationship tersebut. Contoh one – to – many relationship

dapat dilihat pada gambar 2.7.

Gambar 2.7 Contoh One – to – Many Relationship

3. Many – to – Many (* : *) Relationship

Setiap relationship menggambarkan hubungan antara satu atau lebih entity

occurrence pada entity yang satu dengan satu atau lebih entity occurrence pada entity

lainnya yang ikut serta dalam relationship tersebut. Contoh many – to – many

relationship dapat dilihat pada gambar 2.8.

Gambar 2.8 Contoh Many – to – Many Relationship

Page 10: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

16

 

Contoh relationship terlihat dari gambar 2.9 di bawah ini :

Gambar 2.9 Contoh Relationship

Entity Relationship Diagram (ERD) merupakan model data yang

menggunakan beberapa notasi untuk menggambarkan data dalam konteks entity

dan hubungan yang dideskripsikan oleh data tersebut.

2.5 Data Model

Menurut Elmasri (2003, p26), Data model adalah sekumpulan konsep yang bisa

digunakan untuk menggambarkan struktur basis data. Kebanyakan model data

mencakup kumpulan operasi dasar (basic operation) untuk mendapatkan update pada

database. Database Designer dapat mendefinisikan user-defined operation. Misalnya

HITUNG_NILAI dapat diletakkan pada objek MAHASISWA. Namun, operasi umum

Page 11: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

17

 

seperti insert, delete, modify, atau lainnya biasanya sudah disatukan ke dalam operasi

dasar pemodelan data.

Kategori Model Data

Banyak model data yang dapat digunakan. Model – model data tersebut

dapat digolongkan menurut tipe konsep yang digunakan untuk menggambarkan

struktur basis data. High – level data model (tingkat tinggi) atau model data

konseptual (conceptual data models) menyediakan konsep yang mirip dengan

cara yang digunakan banyak orang untuk mengamati dan memahami data,

sebaliknya low – level data model (tingkat rendah) atau model data fisik

(physical data model) menyediakan konsep yang menggambarkan rincian

tentang bagaimana data disimpan dalam komputer. Di antara dua model data ini

terdapat class representational data model, yang menggambarkan konsep yang

dapat dimengerti oleh end users tetapi tetap memperhatikan bagaimana data

diorganisasikan dalam komputer. Representational data model menutupi

beberapa rincian penyimpanan data tetapi dapat diterapkan pada sistem komputer

secara langsung.

a. Model Data Konseptual (Conceptual Data Models)

Menurut Simsion (2005, p273), Model Data Konseptual

(Conceptual Data Models), terkadang disebut juga model domain, secara

khusus digunakan untuk mengeksplorasi konsep domain dengan

pemimpin proyek. Model konseptual tingkat tinggi (high – level

Page 12: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

18

 

conceptual models) biasanya dibuat sebagai bagian dari prediksi

kebutuhan tahap awal.

Model data konseptual menggunakan konsep – konsep seperti

entity, atribut, dan relasi. Suatu entity melambangkan objek atau konsep

yang nyata, seperti seorang pegawai atau sebuah proyek, yang

digambarkan di basis data. Suatu atribut melambangkan kepemilikan

yang menggambarkan entity lebih lanjut, seperti nama atau gaji pegawai.

Suatu relasi (relationship) antara dua atau lebih entity melambangkan

interaksi (timbal balik) di antara entity – entity; contohnya relasi antara

seorang pegawai dan sebuah proyek.

Manfaat penggunaan model data konseptual dalam perancangan

basis data :

‐ Memberikan gambaran yang lengkap dari struktur basis data yaitu

arti, hubungan, dan batasan – batasan

‐ Alat komunikasi antar pemakai basis data, perancang (designer),

dan analis

Contoh model data konseptual dapat dilihat pada gambar 2.10.

Page 13: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

19

 

Gambar 2.10 Contoh Conceptual Data Models

b. Model Data Logikal (Logical Data Models)

Menurut Simsion (2005, p321), Model Data Logikal (Logical

Data Model) merupakan representasi grafis dari keperluan bisnis. Model

data logikal menggambarkan hal – hal penting dari sebuah organisasi dan

bagaimana caranya mereka berhubungan satu dengan yang lain. Model

data logikal dapat divalidasi dan diterima oleh perwakilan bisnis, dan

dapat menjadi dasar perancangan basis data fisik (physical database).

Model data logikal digunakan untuk mengeksplorasi konsep

domain, dan relasinya pada ruang lingkup masalah. Hal ini dapat dibuat

untuk lingkup satu proyek atau untuk seluruh perusahaan. Model data

logikal menggambarkan tipe entity logikal, secara khas ditujukan untuk

menyederhanakan tipe entity, atribut yang dimiliki entiy – entity, dan

Page 14: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

20

 

relasi antara entity – entity tersebut. Contoh model data logikal dapat

dilihat pada gambar 2.11.

Gambar 2.11 Contoh Logical Data Models

c. Model Data Fisik (Physical Data Models)

Menurut Simsion (2005, p359), Model Data Fisik (Physical Data

Models) digunakan untuk merancang skema internal suatu basis data,

menggambarkan tabel data, kolom data dari tabel – tabel tersebut, dan

hubungan antara tabel – tabel. Model data fisik menggambarkan

bagaimana data disimpan di dalam komputer dengan melambangkan

informasi seperti record formats, record orderings, dan access paths.

Access paths merupakan struktur yang membuat pencarian suatu record

Page 15: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

21

 

basis data menjadi efisien. Contoh model data fisik dapat dilihat pada

gambar 2.12.

Gambar 2.12 Contoh Physical Data Models

Table perbandingan antara model data konseptual, model data logikal,

dan model data fisik :

Tabel 2.1 Tabel Perbandingan Model Data

Feature Conceptual Logical Physical

Entity Names ✓ ✓

Page 16: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

22

 

Entity Relationships ✓ ✓

Attributes ✓

Primary Keys ✓ ✓ ✓

Foreign Keys ✓ ✓

Table Names ✓

Column Names ✓

Column Data Types ✓

2.6 Algoritma Konversi Model Data Konseptual Menjadi Model Data Fisik

Untuk mengubah model data konseptual menjadi model data fisik dilakukan

melalui langkah – langkah berikut ini:

Langkah 1 : Setiap entity dalam ERD diubah menjadi tabel beserta semua atributnya.

Apabila terdapat atribut gabungan (composite attribute), maka ambil atribut

sederhana / spesifik dalam skema relasional. Primary key dari tabel yang

terbentuk dari entity tersebut diambil dari key attribute (atribut kunci) dari entity

tersebut.

Langkah 2 : Untuk setiap entity lemah, buat tabel baru untuk entity lemah tersebut

dengan memasukkan semua atribut yang dimiliki oleh entity lemah tersebut ke

dalam tabel baru tersebut. Key attribute (atribut kunci) dari entity kuatnya

Page 17: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

23

 

menjadi foreign key dalam tabel tersebut. Primary key dari tabel yang dibuat

diambil dari gabungan key kuat dan key lemah.

Langkah 3 : Jika terdapat relasi binary 1 : 1, primary key pada entity dependent (entity

yang bergantung pada entity lain) akan menjadi foreign key pada entity

independent (entity yang tidak bergantung pada entity lain).

Langkah 4 : Jika terdapat relasi 1 : N, maka primary key milik entity dengan kardinalitas

(cardinality) 1 akan menjadi foreign key pada entity dengan kardinalitas

(cardinality) N.

Langkah 5 : Jika terdapat relasi M : N antara S dan T, buat tabel baru. Primary key dari

tabel ini merupakan gabungan dari primary key S dan primary key T. Atribut

tabel ini adalah kedua primary key tersebut dan atribut – atribut lainnya.

Langkah 6 : Untuk setiap atribut dengan banyak nilai (multivalued attribute), buat tabel

baru. Primary key dari tabel baru tersebut adalah gabungan primary key dari

entity pemilik. Apabila atribut dengan banyak nilai tersebut merupakan

composite attribute, maka atribut tabel ini adalah komponen – komponen

sederhana dari atribut tersebut.

Langkah 7 : Jika terdapat relasi N – ary, buat tabel baru. Primary key dari tabel baru

tersebut adalah gabungan dari primary key setiap entity yang berelasi. Sedangkan

foreign key tabel baru tersebut adalah primary key dari setiap entity yang

berelasi.

Page 18: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

24

 

2.7 Oracle Database Management System

2.7.1. Sistem Basis Data

Menurut Connolly dan Begg (2002, p7), Sistem Basis Data merupakan

suatu kumpulan data yang berhubungan secara logis dan deskripsi dari data

tersebut dirancang untuk memenuhi informasi yang dibutuhkan oleh suatu

organisasi.

2.7.2. Database Management System (DBMS)

Menurut Connolly dan Begg (2002, p16), DBMS merupakan piranti

lunak yang memungkinkan user mendefinisikan, membuat, mengurus, dan

mengontrol akses ke basis data.

Database Management System menyediakan dua bahasa, yaitu Data

Definition Language (DDL) dan Data Manipulation Language (DML).

‐ Data Definition Language (DDL)

Data Definition Language digunakan untuk mendefinisikan objek – objek

pada basis data. Dengan menggunakan Data Definition Language, pengguna

dapat menentukan tipe, struktur, dan batasan data yang akan disimpan ke dalam

basis data. Secara umum, Data Definition Language yang digunakan adalah

CREATE untuk membuat objek baru, USE untuk menggunakan objek, ALTER

untuk mengubah objek yang sudah ada, dan DROP untuk menghapus objek.

Page 19: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

25

 

‐ Data Manipulation Language (DML)

Data Manipulation Language digunakan untuk memanipulasi dan

memproses objek – objek tertentu. Manipulasi yang biasa dilakukan antara lain

SELECT untuk menampilkan data, INSERT untuk menambahkan data baru,

UPDATE untuk mengubah data yang sudah ada, dan DELETE untuk menghapus

data.

2.7.3. Relational Database Management System (RDBMS)

Menurut Whalen (1998, p6), Relational Database Management System

merupakan Database Management System yang berhubungan. Ini berarti akses

data secara internal dilakukan dengan cara relasional. Salah satu contoh

Relational Database Management System adalah Oracle.

2.7.4. Oracle

Menurut Abramson, Abbey, dan Corry (2004, p2), Oracle merupakan

piranti lunak yang kaya dan penuh fitur yang digunakan untuk mengubah cara

banyak perusahaan melakukan pengaturan basis data mereka.

Oracle Relational Database Management System atau Oracle RDBMS

terdiri dari basis data (informasinya) dan instance (perwujudan sebuah sistem).

Page 20: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

26

 

Oracle RDBMS dirancang untuk memungkinkan akses secara bersama – sama

pada sejumlah besar informasi yang tersimpan.

Cara paling sederhana untuk mengakses data dengan Oracle adalah

dengan menggunakan Structured Query Language (SQL). Menurut Gruber

(2000, p20), SQL merupakan bahasa yang dipergunakan untuk mengakses data

dalam basis data relasional. Bahasa ini merupakan bahasa standar yang

digunakan dalam manajemen basis data relasional.

Secara umum SQL terdiri dari dua bahasa, yaitu DML dan DDL.

Membuat tabel baru termasuk dalam kategori bahasa definisi data (Data

Definition Language / DDL). Aturan pembuatan tabel pada Oracle adalah

sebagai berikut ;

- Nama tabel harus dimulai dengan huruf

- Panjang nama tabel antara 1 – 30 karakter

- Nama tabel hanya bisa terdiri dari A – Z, a – z, 0 – 9, _, $, dan #

- Nama tabel baru tidak boleh sama seperti nama objek lain yang dimiliki oleh

pengguna yang sama

- Nama tabel tidak boleh menggunakan kata kunci pada Oracle

Page 21: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

27

 

Teori penulisan pembuatan tabel pada Oracle dengan menggunakan SQL :

CREATE TABLE [schema.] nama_tabel

(

nama_kolom1 tipe_data,

nama_kolom2 tipe_data [ekspresi],

);

Atau

CREATE TABLE [schema.] nama_tabel

(

nama_kolom1 tipe_data,

nama_kolom2 tipe_data,

[CONSTRAINT nama_kolom constraints]

);

Contoh sintaks pembuatan tabel pada Oracle dengan menggunakan SQL :

CREATE TABLE hire_dates (

id NUMBER(9),

hire_date DATE DEFAULT SYSDATE

);

Page 22: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

28

 

Selain membuat tabel baru, yang termasuk kategori bahasa definisi data

(Data Definition Language) adalah menghapus tabel dengan menggunakan

perintah DROP. Apabila perintah drop dijalankan maka semua data dan struktur

tabel akan dihapus, semua transaksi yang menunggu akan di – commit, dan

semua indeks akan dihapus. Perintah menghapus tabel menggunakan drop tidak

dapat di – rollback. Format penulisan untuk menghapus tabel adalah sebagai

berikut :

DROP TABLE [schema.] nama_tabel ;

Contoh sintaks untuk menghapus tabel pada Oracle dengan menggunakan SQL :

DROP TABLE hire_dates ;

Yang termasuk dalam bahasa manipulasi data (Data Manipulation

Language) antara lain Insert, Update, dan Delete. Perintah insert digunakan

untuk memasukkan nilai atau data pada suatu tabel. Format penulisan perintah

insert adalah sebagai berikut :

INSERT INTO nama_tabel [(nama_kolom [, nama_kolom … ])] VALUES

(nilai[, nilai …]) ;

Contoh sintaks insert pada Oracle dengan menggunakan SQL :

INSERT INTO hire_dates VALUES (1, SYSDATE) ;

Perintah update digunakan untuk memodifikasi baris data yang ada pada

tabel. Format penulisan perintah update adalah sebagai berikut :

Page 23: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

29

 

UPDATE nama_tabel

SET nama_kolom = nilai [, nama_kolom = nilai, …]

[WHERE kondisi] ;

Contoh sintaks update pada Oracle dengan menggunakan SQL :

UPDATE hire_dates

SET hire_date = SYSDATE

WHERE id = 1 ;

Perintah delete digunakan untuk menghapus baris data yang ada pada

tabel. Format penulisan perintah delete adalah sebagai berikut :

DELETE [FROM] nama_tabel [WHERE kondisi] ;

Contoh sintaks delete pada Oracle dengan menggunakan SQL :

DELETE FROM hire_dates WHERE id = 1 ;

2.8 Rekayasa Piranti Lunak

Menurut Pressman (2001, p20), rekayasa piranti lunak adalah penerapan dan

pemakaian prinsip rekayasa dalam rangka mendapatkan piranti lunak ekonomis yang

terpercaya dan bekerja secara efisien pada mesin komputer.

Page 24: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

30

 

Menurut Fritz Bauer, rekayasa piranti lunak adalah peletakan dan penggunaan

prinsip-prinsip rekayasa yang tangguh / teruji dalam upaya memperoleh piranti lunak

secara ekonomis, handal dan bekerja di mesin nyata.

Piranti lunak merupakan program - program komputer, prosedur dan

dokumentasi yang ada pada sistem komputer. Beberapa macam diantaranya meliputi :

‐ Application software, seperti, pengolah kata, yang melibatkan interaksi aktif dari

user.

‐ Firmware, piranti lunak yang dibuat ke dalam alat-alat elektronik, sehingga

berintegrasi langsung dengan alat tersebut.

‐ Middleware, piranti yang mengontrol distributed system (perangkat komputer

yang berinteraksi melalui jaringan).

‐ System software, seperti sistem operasi yang berintegrasi dengan piranti keras

(hardware) sehingga dapat berinteraksi dengan piranti lunak.

‐ Software testing, berisi metode khusus yang untuk menguji kelayakan dari

sebuah piranti lunak.

Piranti lunak merupakan jembatan antara piranti keras dengan user, juga disebut

sebagai ‘penerjemah’ perintah yang di - input oleh user atau piranti keras dan

sebaliknya.

Page 25: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

31

 

Beberapa tipe piranti lunak antara lain :

‐ System software, menyediakan infrastruktur dimana program bisa

beroperasi. Contohnya mengatur dan mengontrol piranti keras sehingga piranti

lunak bisa beroperasi. Contoh system software adalah sistem operasi (operating

system). System software berisi device drivers, operating systems, server,

utilities, windows systems.

‐ Programming software, menyediakan tools bagi programmer untuk

membuat piranti lunak. Programming software berisi compilers, debuggers,

interpreter, linkers, text editor.

‐ Application software, menyediakan piranti lunak bagi user.

Menurut Pressman (2001, p6-9), elemen piranti lunak bersifat logis bukan

bersifat fisik. Beberapa karakteristik piranti lunak antara lain:

a. Piranti lunak sebenarnya direkayasa dan dikembangkan, bukan dirakit atau

dibuat seperti layaknya piranti keras. Aktifitas pengembangan piranti lunak berbeda

dengan pembuatan piranti keras.

b. Piranti lunak tidak mudah rusak, tidak seperti piranti keras. Perbedaannya, jika

rusak, piranti keras harus diperbaiki, namun pada piranti lunak, perbaikannya berupa

software maintenance, misalnya debugger.

Page 26: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

32

 

c. Piranti lunak saat ini dikembangkan dengan metode berorientasi objek (object

oriented), sehingga lebih mudah diperbaiki dan di - maintenance.

Elemen untuk pengontrolan proses pada rekayasa piranti lunak, yaitu :

a. Metode

Metode berupa cara-cara teknis membangun piranti lunak yang terdiri dari

perancangan proyek beserta estimasinya, analisis kebutuhan sistem dan piranti lunak,

perancangan struktur data, arsitektur program, prosedur algoritma, coding, pengujian

dan pemrograman.

b. Alat bantu

Alat bantu merupakan dukungan baik secara otomatis atau semi otomatis untuk

metode-metode seperti CASE (Computer Aided Software Engineering) yang

mengkombinasikan piranti lunak dan piranti keras dan software engineering database

untuk pengembangan piranti lunak yang sejalan dengan CADE (Computer Aided

Design Engineering) untuk piranti keras.

c. Prosedur

Prosedur digunakan sebagai penghubung alat bantu dengan metode. Tujuan dari

prosedur yaitu untuk mendapatkan piranti lunak yang efisien, berguna dan ekonomis.

Page 27: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

33

 

2.9 Waterfall Model

Salah satu dari lima paradigma rekayasa piranti lunak dalam pengembangan

piranti lunak yang baik dan berkualitas adalah Waterfall Model. Model ini disebut juga

linear sequential model. Model rekayasa ini memberikan pendekatan – pendekatan yang

sistematik dan sekuensial dalam pengembangan perangkat lunak.

Menurut Pressman (2001, p28-29), tahapan – tahapan dalam Waterfall Model

adalah sebagai berikut :

1. Analisa Kebutuhan Piranti Lunak (Software Requirement Analysis)

Hasil dari pengumpulan kebutuhan – kebutuhan piranti lunak

yang telah dilakukan akan difokuskan secara khusus pada piranti lunak.

Untuk membangun suatu piranti lunak yang sesuai dengan permintaan

pengguna, perancang aplikasi (software engineer) harus mengetahui

fungsi – fungsi yang dibutuhkan antarmuka pengguna (user interface) dan

kebutuhan piranti lunak untuk didokumentasikan dan dibahas bersama

dengan konsumen (customer).

2. Perancangan (Design)

Perancangan piranti lunak meliputi beberapa proses yang

difokuskan pada empat atribut program, yaitu perancangan struktur data,

perancangan arsitektur piranti lunak, perancangan perincian prosedur, dan

perancangan karakteristik dari antarmuka.

Page 28: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

34

 

3. Pengkodean (Coding)

Setelah dilakukan perancangan, maka selanjutnya dilakukan tahap

pengkodean. Pengkodean dilakukan untuk menerjemahkan perancangan

yang telah dibuat ke dalam bentuk yang dapat dibaca oleh mesin, yaitu

dengan membuat program.

4. Pengujian (Testing)

Setelah program selesai dibuat, maka akan dilakukan pengujian.

Tahap pengujian perlu dilakukan agar keluaran yang dihasilkan oleh

program sesuai dengan yang diharapkan. Pengujian difokuskan pada :

a. Logical internal of the software

Pengetesan terhadap statement – statement.

b. Functional external

Pengetesan dilakukan untuk menemukan error pada program. Pada

pengetesan ini, masukan (input) yang diberikan harus mendapatkan

keluaran (output) yang sesuai dengan yang diharapkan.

Pengujian dilakukan secara menyeluruh sampai semua perintah dan

fungsi telah diuji.

Page 29: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

35

 

5. Pemeliharaan (Maintenance)

Karena kebutuhan pengguna selalu meningkat, maka piranti lunak

yang telah selesai dibuat perlu dipelihara agar dapat mengantisipasi

kebutuhan pemakai terhadap fungsi – fungsi baru yang berasal dari luar

atau perubahan –perubahan pada sistem yang dapat timbul karena

munculnya sistem operasi baru, piranti keras baru, dan sebagainya.

Pemeliharaan piranti lunak menawarkan setiap langkah daur

hidup yang terdahulu, sehingga untuk melakukan perbaikan tidak perlu

merancang piranti lunak yang baru.

Gambar model waterfall dapat dilihat pada gambar 2.13.

Gambar 2.13 Waterfall Model

Analysis

Testing

Coding

Design

Maintenance

Page 30: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

36

 

2.10 Object Oriented Design

Menurut Allen dan Terry (2005), Object Oriented Design merupakan metodologi

campuran yang mengubah sistem menjadi objek, menggabungkan karakteristik data

dalam bentuk atribut dan karakteristik proses dalam bentuk metode.

Object Oriented Design menggabungkan elemen – elemen teknik perancangan

orientasi data dan orientasi fungsi, dan sistem model sebagai kumpulan objek – objek

yang bekerja bersama – sama. Rancangan sistem objek, termasuk di dalamnya fungsi

dan kebutuhan data, kemudian dilanjutkan dengan perancangan piranti lunak.

Kelebihan dari Object Oriented Design antara lain, membangun objek model

dengan tepat, penggunaan kembali dan pertukaran objek menjadi lebih mudah.

2.11 UML (Unified Modeling Language)

Model data yang akan digunakan untuk pembuatan tools adalah model data

UML.

Menurut Ponniah (2007, p61), United Modeling Language adalah bahasa

spesifikasi standar untuk mendokumentasikan, menspesifikasikan, dan membangun

sistem perangkat lunak. Unified Modeling Languange tidak berdasarkan pada bahasa

pemrograman tertentu. Standar spesifikasi Unified Modeling Languange dijadikan

standar defacto oleh OMG (Object Management Group) pada tahun 1997. Unified

Modeling Languange yang berorientasikan object mempunyai beberapa notasi standar.

Page 31: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

37

 

Unified Modeling Languange menggabungkan teknik terbaik dari pemodelan data (entity

relationship diagram / ERD), pemodelan bisnis (work flows), pemodelan objek, dan

pemodelan komponen. Unified Modeling Languange bertujuan untuk menjadi standar

bahasa pemodelan (Modeling) yang dapat membentuk sistem yang sama dan yang

terbagi – bagi (shared).

Spesifikasi ini menjadi populer dan standar karena sebelum adanya Unified

Modeling Languange, telah ada berbagai macam spesifikasi yang berbeda. Hal ini

menyulitkan komunikasi antar pengembang piranti lunak. Untuk itu beberapa

pengembang spesifikasi yang sangat berpengaruh berkumpul untuk membuat standar

baru.

Dengan menggunakan Unified Modeling Language, model dapat dibuat untuk

semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti

keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman

apapun. Karena Unified Modeling Languange menggunakan class dan operation dalam

konsep dasarnya, maka Unified Modeling Languange lebih cocok untuk penulisan

piranti lunak dalam bahasa – bahasa berorientasi objek seperti C++, Java, C# atau

VB.NET. Walaupun demikian, Unified Modeling Languange tetap dapat digunakan

untuk pemodelan aplikasi procedural dalam VB atau C.

Page 32: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

38

 

Simbol – simbol Unified Modeling Language yang digunakan :

1. Sebuah class bernama B

2. Garis menghubungkan class A dan B secara

asosiatif

3. Interval nomor yang diperkenankan untuk objek –

objek asosiasi. (1 = tepat satu; 0..* = nol atau lebih)

4. Aggregation : Class B merupakan bagian dari A

Inheritance : Class C merupakan class turunan

dari B

Berikut beberapa diagram dalam Unified Modeling Languange dan

penjelasannya:

‐ Use case diagram : use case diagram digunakan untuk mengidentifikasi elemen

primer dan proses yang membentuk sistem.

‐ Class diagram : class diagram digunakan untuk menyempurnakan use case

diagram dan menjelaskan rancangan sistem secara detail.

‐ Object diagram : object diagram merupakan spesialisasi dari class diagram.

Sebuah objek adalah instance dari sebuah class.

A  B 

1  0..* 

A  B 

Page 33: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

39

 

‐ State diagram : state diagram menggambarkan state dari objek dalam sistem.

Objek dalam sistem mengubah state sebagai respon dari event. Sebagai tambahan,

sebuah state diagram juga menggambarkan transisi dari state object mulai dari awal

sampai akhir sebagai respon terhadap event yang berdampak pada sistem.

‐ Activity diagram : activity diagram menggambarkan aliran proses dalam sistem.

‐ Sequence diagram : sequence diagram menggambarkan interaksi antar objek

dalam sistem berdasarkan waktu.

‐ Collaboration diagram : collaboration diagram mengelompokkan interaksi antar

objek berbeda.

‐ Component diagram : component diagram menggambarkan gabungan high –

level yang membangun sistem.

‐ Deployment diagram : deployment diagram menggambarkan konfigurasi elemen

runtime dari aplikasi.

2.11.1 Use Case Diagram

Menurut Allen dan Terry (2005), Use Case Diagram adalah diagram

yang menggambarkan fungsionalitas yang disediakan sistem yang disebut

dengan aktor (actor), fungsi (digambarkan sebagai use case), dan ketergantungan

antara use case tersebut.

Page 34: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

40

 

Use case diagram menunjukkan posisi atau konteks dari suatu use case

diantara use case lainnya. Use case memperlihatkan diagram dari sudut pandang

perilaku sistem.

Relasi dalam use case diagram harus antara aktor dengan sistem, namun

ada relasi yang diperbolehkan antara aktor dengan aktor yang digambarkan

dengan notasi garis lurus dengan ujung segitiga kosong dari aktor khusus menuju

aktor umum. Contoh use case diagram dapat dilihat pada gambar 2.14.

Gambar 2.14 Contoh Use Case diagram

Terdapat tiga relasi dalam use case diagram yang didukung oleh standar

Unified Modeling Language, yaitu :

‐ Include

Relasi ini berguna untuk memadukan perilaku dari use case lain yang

disebutkan ke dalam use case. Notasinya dilambangkan dengan tanda panah

dari including menuju included use case disertai label “<<include>>”.

Page 35: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

41

 

Notasi ini mirip seperti sebuah perluasan makro dimana included use case

ditempatkan didalam use case behavior dasar.

‐ Extend

Relasi ini mengindikasikan bahwa behavior dari extension use case boleh

dimasukkan dalam extended use case dengan syarat tertentu. Notasinya

dilambangkan tanda panah dari extension use case menuju extended use

case, dengan label “<<extend>>”

‐ Generalization

Dalam relasi antara use case, terdapat relasi generalisasi / spesialisasi.

Notasinya dilambangkan dengan sebuah garis lurus berujung segitiga kosong

dari spesialisasi ke generalisasi use case.

2.11.2 Class diagram

Menurut Whitten et al. (2004, p441), Dalam Unified Modeling Language,

class diagram adalah tipe dari static structure diagram yang menggambarkan

struktur dari sebuah sistem dengan menunjukkan kelas – kelas sistem, atributnya,

dan relasi antar kelas. Class diagram bisa berisi tampilan dari suatu package dan

bisa berisi simbol untuk nested package. Class diagram berisi elemen tingkah

laku tertentu, seperti operasi, tetapi dinamikanya digambarkan pada diagram lain,

Page 36: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

42

 

seperti statechart diagram dan collaboration diagram. Contoh class diagram

dapat dilihat pada gambar 2.15.

Gambar 2.15 Class diagram

Terdapat beberapa relasi dalam class diagram :

‐ Link

Menurut Allen dan Terry (2005), Link adalah relasi dasar antara objek.

Digambarkan dengan sebuah garis yang terhubung antara dua objek atau

lebih. Dapat digunakan pada class diagram atau object diagram. Link adalah

instance dari asosiasi (association).

Page 37: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

43

 

‐ Association

Association mewakili kumpulan link. Binary association (dengan dua

ujung) umumnya digambarkan sebagai sebuah garis, dengan masing –

masing ujung terhubung pada class box. Association tingkat tinggi dapat

digambarkan lebih dari dua ujung. Pada beberapa kasus, ujung – ujungnya

terhubung dengan permata pusat. Contoh association dapat dilihat pada

gambar 2.16.

Gambar 2.16 Contoh Association

‐ Aggregation

Menurut Allen dan Terry (2005), Aggregation adalah varian dari

“mempunyai” asosiasi, aggregation lebih spesifik dibandingkan asosiasi.

Aggregation adalah asosiasi yang mewakili relasi bagian – keseluruhan.

Sebagai bagian dari asosiasi, aggregation dapat dinamai dan mempunyai

bentuk yang sama dengan asosiasi. Walaupun begitu, aggregation tidak

boleh melibatkan lebih dari dua kelas. Contoh aggregation dapat dilihat pada

gambar 2.17.

Page 38: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

44

 

Gambar 2.17 Contoh Aggregation

‐ Composition

Menurut Allen dan Terry (2005), Composition adalah varian yang lebih

kuat dari “mempunyai” asosiasi; composition lebih spesifik dibandingkan

aggregation. Composition biasanya mempunyai ketergantungan daur hidup

(life cycle) yang kuat antara instance dari container class dan instance dari

contained class : jika container dihancurkan, normalnya setiap instance yang

dimilikinya dihancurkan pula. Perhatikan bahwa sebuah bagian dapat (jika

diperbolehkan) dibuang dari composite sebelum composite dihapus, dan

kemudian tidak dihapus sebagai bagian dari composite. Contoh composite

dapat dilihat pada gambar 2.18.

Gambar 2.18 Contoh Composition

Page 39: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

45

 

‐ Generalization

Relasi generalization mengindikasikan bahwa satu dari dua class yang

saling berhubungan (subtype) adalah bentuk spesialisasi dari class lainnya

(supertype) dan supertype adalah generalization dari subtype juga.

Generalization pada class diagram mirip dengan pada use case diagram,

begitu pula dengan notasinya.

2.11.3 Activity diagram

Menurut Whitten et al (2004, p442), Activity diagram adalah sebuah

diagram yang berisi aktifitas dan aksi untuk menggambarkan alur kerja.

Berikut beberapa simbol yang digunakan dalam activity diagram dan

fungsinya.

‐ Initial state, menggambarkan awal dari sebuah proses.

‐ State, segi empat bersudut tumpul menggambarkan tugas yang perlu

dilakukan.

‐ Transition, panah menggambarkan sasaran yang mengawali aktivitas.

‐ Transition (fork), merupakan bar sinkronisasi dimana kegiatan dapat

dilakukan secara paralel.

Page 40: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

46

 

‐ Transition (join), merupakan bar sinkronisasi dimana dua aktivitas

mempunyai tujuan yang sama dan tujuan dari keduanya digabungkan menjadi

satu.

‐ Decision, menggambarkan sebuah kegiatan keputusan.

‐ Final state, menggambarkan akhir dari sebuah proses.

Sebuah activity diagram bisa menunjukkan aliran nilai objek, seperti

halnya dengan aliran kontrol. Aliran state object (object flow state)

menggambarkan objek yang merupakan input dan output dari suatu activity.

Untuk nilai output, anak panah putus – putus digambarkan dari activity ke object

flow state. Untuk nilai input, garis putus – putus digambarkan dari object flow

state ke activity. Jika activity punya lebih dari satu nilai output atau penerus dari

control flow, maka anak panah digambarkan dari simbol fork. Sama halnya

dengan multiple input yang digambarkan menuju simbol join. Contoh activity

diagram dapat dilihat pada gambar 2.19.

Gambar 2.19 Activity diagram

Page 41: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

47

 

2.11.4 Sequence Diagram

Menurut Allen dan Terry (2005), Sequence Diagram adalah salah satu

diagram interaksi dalam Unified Modeling Language, yang menunjukkan

bagaimana proses beroperasi satu sama lain dan bagaimana urutannya.

Sequence diagram digambarkan sebagai interaksi dari dua grafik

dimensional. Dimensi vertikal merupakan sumbu waktu, yang berjalan makin ke

bawah. Dimensi horisontal menggambarkan peranan classifier yang

menampilkan objek individual di dalam kolaborasi. Tiap peranan classifier

digambarkan dengan kolom vertikal sebagai lifeline. Selama objek ada, peranan

dari objek tersebut digambarkan dengan garis putus – putus. Selama aktivasi

prosedur pada sebuah objek masih aktif, lifeline digambarkan dengan garis ganda

(double line). Contoh sequence diagram dapat dilihat pada gambar 2.20.

Page 42: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

48

 

Gambar 2.20 Sequence diagram

Di bawah ini beberapa simbol yang sering digunakan saat membuat

sequence diagram :

‐ Object lifeline

Object lifeline menggambarkan waktu life cycle suatu objek selama skenario

sedang dibuat.

Page 43: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

49

 

‐ Activation

Dimana proses sedang dilakukan oleh objek / class untuk memenuhi pesan /

perintah.

‐ Message

Message merupakan sebuah anak panah yang mengindikasikan pesan

diantara objek. Dan objek dapat mengirimkan pesan ke dirinya sendiri.

2.11.5 State diagram

State diagram menggambarkan transisi dan perubahan keadaan dari satu

state ke state yang lain. State diagram juga dapat menggambarkan kondisi

tampilan sebagai suatu state. Kondisi tampilan akan berubah sesuai aksi yang

diberikan. Contoh state diagram dapat dilihat pada gambar 2.21.

Page 44: BAB 2 LANDASAN TEORI - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00280-IF BAB 2.pdf · objek, kejadian atau konsep tentang apa yang diperlukan untuk menangkap dan ... induk

50

 

Gambar 2.21 State diagram