UNIFIED MODELING LANGUAGE

Unified Modeling Language (UML) adalah notasi yang lengkap untuk membuat visualisasi model suatu sistem. Sistem berisi informasi dan fungsi, tetapi secara normal digunakan untuk memodelkan sistem komputer. Di dalam pemodelan obyek guna menyajikan sistem yang berorientasi pada objek pada orang lain, akan sangat sulit dilakukan jika pemodelan tersebut dilakukan dalam bentuk kode bahasa pemrograman. Kesulitan yang muncul adalah timbulnya ketidak jelasan dan salah interpretasi di dalam pembacaan kode pemrograman untuk pemodelan objek tersebut.

Dimulai tahun 1994, Booch, Runbaugh dan Jacobson merupakan tiga tokoh yang metodelogi-nya paling banyak dipakai mempelopori organisasi yang bertujuan menyatukan metodelogi-metodelogi berorientasi objek, organisasi tersebut dinamakan OMG (Object Modelling Group). Pada tahun 1995 OMG merealisasi draf pertama dari UML (versi 0.8) dan pada tahun 1997 UML versi 1.1 muncul dan sekarang versi terbaru dari UML adalah versi 2.0. Pada tahun 1997 Booch, Runbaugh dan Jacobson menyusun tiga buku tentang UML. Sejak saat itulah UML telah menjelma menjadi standar bahasa pemodelan untuk aplikasi berorientasi objek.
Diagram UML

UML merupakan sintak umum untuk membuat model logika dari suatu sistem dan digunakan untuk menggambarkan sistem agar dapat dipahami selama fase analisis dan desain. UML biasanya disajikan dalam bentuk diagram/gambar yang meliputi class beserta atribut dan operasinya, serta hubungan antar class yang meliputi inheritance, association dan komposisi.

Contoh diagram UML versi 2.0


Use Case Diagram

Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem, yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah use case mempresentasikan sebuah interaksi antara actor dengan sistem. Use case menggambarkan kata kerja seperti Login ke sistem, maintenance user dan sebagainya.

Class Diagram

Class adalah sebuah spesifikasi yang jika di-instansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan berorientasi objek. Class menggambarkan keadaan (attribute/property) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metode/fungsi). Class diagram menggambarkan struktur dan deskripsi class, packed dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi dan lainnya.

Activity Diagram

Activity diagram menggambarkan berbagai alir aktifitas dalam sebuah sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram tidak menggambarkan sifat internal dari sebuah sistem dan interaksi antara beberapa sub sistem secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum.

Sequence Diagram

Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atas waktu dan obyek-obyek yang terkait. Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan.

Deployment Diagram

Deployment diagram menunjukan tata letak sebuah system secara fisik, menampakkan bagian-bagian software yang berjalan pada bagian-bagian hardware. Bagian utama hardware/perangkat keras adalah node; yaitu nama umum untuk semuah jenis sumber komputasi. Ada 2 tipe node yang mungkin. Processor adalah node yang bisa mengeksekusi sebuah component, sedangakan device tidak.

ISTILAH DALAM BASIS DATA

ENTITAS
Entitas adalah merupakan obyek yang mewakili sesuatu dalam dunia nyata dan dapat dibedakan antara satu dengan lainnya (unique)

ATTRIBUT
Attribut adalah merupakan sifat, ciri atau karakteristik dari suatu obyek atau entitas. atribut ini identik dengan field atau kolom pada suatu tabel.

RELASI
Relasi atau dikenal sebagai relationship dalam sistem basis data adalah merupakan suatu hubungan antara entitas satu dengan entitas yang lain. Ragam relasi dalam dua sisi. Dilihat dari kedudukan dalam sistem data base dikenal sebagai relasi kuat dan relasi lemah

CARDINALITY
Kardinalitas Relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Kardinalitas relasi merujuk kepada hubungan maksimum yang terjadi dari himpunan entitas yang satu ke himpunan entitas yang lain dan begitu juga sebaliknya


TUPLE
Tuple adalah Kumpulan elemen-elemen yang saling berkaitan menginformasikan tentang suatu entitas secara lengkap. Satu record mewakili satu data atau informasi.

DOMAIN
Domain adalah sekumpulan nilai yang diijinkan untuk satu atau lebih atribut.

DERAJAT
Derajat adalah Jumlah atribut dalam sebuah relasi

BASIS DATA

DDL atau Data Definiton Language adalah sebuah bahasa yang digunakan untuk mendefinisikan pendefinisian data. Terdiri dari perintah-perintah untuk membentuk, mengubah atau menghapus tabel beserta kolom-kolom dan type data penyusunnya, serta perintah-perintah untuk menetapkan hubungan dan batasan-batasan data.

5 Macam perintah DDL yang ada di Oracle :
- CREATE TABLE
Digunakan untuk membuat tabel. Syntax umumnya sebagai berikut :

CREATE TABLE [schema, ] table ( column datatype [DEFAULT expr][,...]);

Contoh pembuatan sebuah tabel adalah :

CREATE TABLE dept  (deptno NUMBER(2),  dname VARCHAR2(14),  loc    VARCHAR2(13));

- ALTER TABLE
Statemen ALTER TABLE digunakan untuk :
~ Menambahkan kolom baru
Untuk menambah kolom baru, syntax umumnya sebagai berikut :

ALTER TABLE table ADD         (column datatype [DEFAULT expr]  [, column datatype]...);

Contoh penambahan kolom pada tabel dept yang dibuat di atas adalah :

ALTER TABLE dept ADD         (job_id VARCHAR2(9));

~ Memodifikasi kolom yang sudah ada
Kita dapat memodifikasi kolom dengan mengubah tipe datanya, ukuran dan nilai defaultnya.
Sintaks dari perintah ALTER TABLE untuk memodifikasi kolom sebagai berikut :

ALTER TABLE table MODIFY      (column datatype [DEFAULT expr]  [, column datatype] ... );

Contoh :

ALTER TABLE dept MODIFY       (dname VARCHAR2(30));

Table altered.

~ Menghapus kolom
Klausa DROP COLUMN digunakan untuk menghapus kolom yang tidak diperlukan lagi pada table. Sebagai contoh untuk menghapus kolom job_id pada pada tabel dept di atas.

ALTER TABLE dept DROP COLUMN job_id;

- DROP TABLE
Digunakan untuk melakukan penghapusan tabel. Melakukan penghapusan table dengan perintah DROP, berarti mengerjakan hal berikut :
Semua data dan struktur dari table akan dihapus
Semua transaksi pending akan di-commit
Semua indeks akan dihapus
Perintah drop ini tidak bisa di-rollback
Sebagai contoh, jika kita ingin menghapus tabel dept, maka yang harus dilakukan adalah :

DROP TABLE dept;

- RENAME
Digunakan untuk merubaha nama dari suatu object (table,view,sequence atau synonim). Sebagai contoh, jika kita ingin menghapus tabel dept,maka perintah yang harus dilakukan adalah :

RENAME dept TO detail_dept;

- CREATE VIEW
View adalah tabel bayangan. Tidak menyimpan data secara fisik. Biasanya berupa hasil query dari tabel-tabel dalam sebuah database. Syntax untuk melakuakn VIEW adalah :

CREATE VIEW  AS  

Contoh : view MahasiswaPria yang diambil dari tabel Mahasiswa di mana field JenisKel = “L”. Syntax dari contoh tersebut adalah :

CREATE VIEW MahasiswaPria AS SELECT * FROM Mahasiswa WHERE jeniskel=”L”

- CREATE TRIGGER
Trigger adalah sebuah obyek dalam database yang berupa prosedur yang merespon setiap kali terdapat proses modifikasi pada tabel. Proses modifikasi berupa: Insert, Update dan delete. Syntax pembuatan Trigger:

CREATE TRIGGER  ON TABLE  FOR [DELETE] [,] [INSERT] [,] [UPDATE] AS 

Sebagai contoh adalah membuat trigger dg nama tLogUbahNilai untuk setiap penambahan / update data pada tabel Pesertakul, dilakukan penambahan data pada tabel LogHistoris.
Syntax dari contoh tersebut adalah :

CREATE TRIGGER tLogUbahNilai ON TABLE pesertakul FOR UPDATE, INSERT AS INSERT INTO LogHistoris (tanggal, proses) VALUES (getDate(), ‘Terjadi proses perubahan data nilai’)

Data Manipulation Language (DML) merupakan bahasa basis data yang berguna untuk melakukan modifikasi dan pengambilan data pada suatu basis data.

A. Penambahan data (Insert) pada sebuah tabel :
Syntax:

INSERT INTO nama_tabel(field ke-1, ….. field ke-n) VALUES(nilai_field_ke-1, …. nilai_field_ke-n);

Contoh :

INSERT INTO Mahasiswa VALUES ('5107100029','Jeffrey Hermanto','RSMJ 12','0811232425')


B. Pembaruan data (Update) pada sebuah tabel :

Syntax:

UPDATE nama_tabel SET nama_field = data_baru WHERE nama_field = data_lama;

Contoh :

 UPDATE Mahasiswa SET Telp = '7312345' WHERE Nama = 'Jeffrey Hermanto Halimsetiawan'

C. Penghapusan data (Delete) pada sebuah tabel :
Syntax:

DELETE FROM nama_tabel [ WHERE kondisi];

Contoh :

DELETE FROM Mahasiswa WHERE Nama = 'Jeffrey Hermanto'

D. Pemilihan data dari satu atau beberapa tabel :
Syntax :

SELECT [DISTINCT] select_list FROM table_source [WHERE search_condition] [GROUP BY group_by_expression] [HAVING search_condition] [ORDER BY order_expression [ASC | DESC] ]

Contoh :

SELECT * FROM Mahasiswa; SELECT * FROM Mahasiswa WHERE Nama LIKE "%rey" ORDER BY Nama DESC; SELECT Nama, Nilai, AVG(Nilai) FROM Mahasiswa GROUP BY Nama, Nilai;

Key

Key dalam Bahasa Indonesia berarti kunci, maka semakna dengan itu fungsi dari key-key yang berada pada sebuah database. Artinya setiap pintu pasti mempunyai kunci khusus untuk membukanya, begitu pula tabel dalam database. Key-key inilah yang membantu dalam pengolahan data pada sebuah tabel (insert, update, delete).

Secara global key-key dalam Oracle dapat dibagi sebagai berikut :

Primary Key



:Key yang mengindentifikasikan bahwa setiap record pastiunique. Dalam sebuah tabel hanya diperbolehkan satuprimary key, tidak lebih. Misalnya adalah tabel MURID, tidak ada murid yang memiliki NIS (Nomor Induk Siswa) yang sama dalam keadaan real, kemudian diimplementasikan dalam bentuk tabel dengan diberikanprimary key pada kolom NIS.

Foreign Key:Key yang dihasilkan dari primary key dari tabel lain sebagai bentuk referensi dari tabel lain tersebut. Misalnya adalah tabel BELAJAR, dalam proses pembelajaran dibutuhkan kelas, guru dan apa yang dipelajari alias mata pelajaran, maka diimplementasikan dalam sebuah tabel bahwa dalam tabel BELAJAR terdapatforeign key (key asing) dari tabel KELAS, GURU dan MATA_PELAJARAN. Dari definisi key ini kita dapat mengetahui istilah MASTER-DETAIL.
Alternate Key (Unique Key):Key ini sebenarnya hampir sama dengan fungsi primary key yaitu berjenis unique key. Maksudnya adalah mungkin saja primary key yang kita buat pada suatu tabel adalah merupakan autonumber (angka yang bertambah terus-menerus ketika proses insert data, sehingga tidak dimungkinkan terdapat nilai yang sama), dikarenakan tidak diperbolehkan ada dua primary keymaka dapat dibantu oleh alternate key ini sebagai penanda unique-nya sebuah record dengan record lain. Dalam sebuah tabel diperbolehkan lebih dari satu alternate key.
Non Unique Key:Key yang bisa lebih dari satu dalam sebuah tabel dan tidak mendefinisikan unique antar record di dalam table tersabut. Key ini biasa digunakan untuk membantu proses pencarian (select) data pada sebuah kolom yang sering digunakan untuk proses tersebut.Setelah mengetahui definisi “mudah” dari setiap key maka ada beberapa tips yang harus diperhatikan dalam pemberian key pada kolom-kolom dalam sebuah tabel :
  1. Pastikan sebuah tabel mempunyai primary key.
  2. Pastikan primary key tersebut mewakili unique-nya sebuah record.
  3. Ada baiknya menjadikan satu kolom saja untuk sebuah primary key sebagai autonumber mewakili beberapa kolom yang merupakan unique-nya record. Mis : tabel BELAJAR mempunyai tiga kolom sebagai primary key, yaitu : NIG, Kode_MP, dan Kelas_ID, maka ketiga kolom tersebut dapat dijadikanalternate key, dan untuk primary key-nya dibuatkan satu kolom lagi, yaitu Belajar_ID. Ini akan mempermudah jika ada tabel yang mengambil primary key pada tabel BELAJAR sebagai foreign key tabel tersebut.
  4. Jangan terlalu banyak dalam pembuatan alternate key, karena key ini akan memperlambat proses insert dan update pada tabel tersebut. Secara logika alternate key akan mengecek ke-unique-kan seluruh record dari setiap record baru yang di-insert atau perubahan data pada record. Bayangkan jika datanya cukup besar… dan banyak alternate key… !!
  5. Pilihlah dengan baik alternate key karena alternate key akan mempermudah dan mempercepat proses select jika digunakan. Maksudnyanya adalah KOLOM-KOLOM dalam alternate keytersebut yang digunakan.
  6. Gunakan Non-unique key untuk kolom yang sering digunakan dalam proses select.
  7. Gunakan penamaan key-key tersebut dengan penamaan yang baik dan mudah diidentifikasikan, seperti BELAJAR_PK (primary key tabel BELAJAR), BELAJAR#GURU_FK (foreign key pada tabel BELAJAR dari tabel GURU), dan BELAJAR_AK (alternate key tabel BELAJAR)

Kunci kandidat adalah satu attribute atau satu set minimal attribute yang mengidentifikasi secara unik suatu kejadian specific dari entity.

Satu minimal set dari attribute menyatakan secara tak langsung dimana anda tidak dapat membuang beberapa attribute dalam set tanpa merusak kepemilikan yang unik.

Jika satu kunci kandidat berisi lebih dari satu attribute maka biasanya disebut sebagai composite key (kunci campuran/gabungan).

Contoh :

File Pegawai berisi attribute seperti :

*No Induk
*No KTP
*Nama
*Tempat Lahir
*Tanggal Lahir
*Alamat
*Kota

Kunci kandidat disini adalah :

*No Induk, karena unik tidak mungkin ganda
*No KTP, karena unik juga tidak mungkin ganda
*Nama, sering dipakai sebagai kunci pencarian namun tidak dapat dikatakan kunci karena sering seseorang punya nama yang sama.
*Nama + tempat lahir + tanggal lahir, dapat dipakai sebagai kunci
*Alamat, kota (bukan kunci).

Digital Clock


ShoutMix chat widget

Followers