8

Click here to load reader

Penggunaan Object-Relational Database Management System

Embed Size (px)

Citation preview

Page 1: Penggunaan Object-Relational Database Management System

Proceeding of IC-ITS 2015 e-ISBN:978-967-0850-07-8

International Conference on Information Technology & Society

8-9 June 2015, Kuala Lumpur, MALAYSIA

317

Penggunaan Object-Relational Database Management

System (ORDBMS)dalam Pembangunan Sistem

Permohonan Kod Penyelidikan dan Penulisan (SISKOD)

Shakirah Mohd Sofia, Siti Noor Ahmad

b, Khairil Ashraf Elias

c,

Ahmad Yani Ismaild

a ,b, c Fakulti Sains & Teknologi Maklumat, Kolej Universiti Islam Antarabangsa Selangor,

43600 Bandar Seri Putra, Selangor.

dPusat Pengurusan Penyelidikan, Kolej Universiti Islam Antarabangsa Selangor, 43600

Bandar Seri Putra, Selangor.

[email protected], [email protected], [email protected],[email protected]

Abstrak. Pembangunan sistem applikasi pelanggan–pelayan (client-server) sangat

bergantung dengan pangkalan data yang merupakan tempat penyimpanan data untuk

memberi perkhidmatan kepadapermintaan daripelbagaipelanggan (clients). Organisasi dan

pengurusan data menjadi lebih kompleks dan mencabar di dalam era elektonik maklumat.

Teknologi pangkalan data juga berkembang mengikut perubahan keperluan semasa dengan

mengambil kira konsep pengaturcaraan berorientasikan objek. Kajian ini akan

membincangkan penggunaan Object-Relational Database Management System (ORDBMS)

dalam pembangunan pangkalan data Sistem Permohonan Kod Penyelidikan dan Penulisan

(SISKOD).Teknologi berorientasikan objekmenjadi pilihan dalam mereka bentuk pangkalan

data dengan disokong oleh gambarajah konseptual daripada Unified Modeling Languange

(UML). Bahasa pengaturcaraan berorientasikan objek yang dipilih dalam pembangunan

sistem SISKOD ini adalah Python dan dibantu dengan kerangka kerja Django. Paradigma

pembangunan berorientasikanobjekmempunyaikelebihan kerana mempunyai cara yang

lebihsemulajadi untuk memodelkandunia sebenar (real world)ke dalam bentuk aplikasi.

Kata kunci: Konsep Berorientasikan Objek, Object-Relational DBMS (ORDBMS),

Pangkalan Data Berorientasikan Objek (OODB) dan SISKOD.

PENGENALAN

Pangkalan data yang utuh dan selamat amat diperlukan dalam pembangunan sistem

yang berskala besar. Aplikasi yang dinamik dan besar amat sukar dalam pengurusan dan

penyelenggaraan data.Kini, kebanyakkan aplikasi dibangunkan dengan menggunakan bahasa

pengaturcaraan berasaskan objek dan setiap objek tersebut dimanipulasikan melalui

pernyataan SQL yang terdapat didalamaplikasi perisian(Muralidhar Subramanian, 1999).

Object-Relational DBMS (ORDBMS) digunakanuntuk memenuhi cabaran ini bagi

menguruskan data yang kompleksdengan lebih efektif dan efisien.Di dalam kajian

inipenggunaan ORDBMS dalam pembangunan sistem SISKOD akan mengatasi masalah yang

wujud dalam RDBMS dan meningkatkan prestasi pembangunan pangkalan data (Hakan

Butuner, 2012).

SISKOD merupakan satu sistem permohonan kod bagi setiap aktiviti penyelidikan,

penulisanartikel dan penulisan buku para pensyarah di Kolej Universiti Islam Antarabangsa

Selangor (KUIS). Semua pensyarah boleh mendaftar dan mendapatkan kod bagi setiap

Page 2: Penggunaan Object-Relational Database Management System

318

penyelidikan, penulisan dan pertandingan yang disertai melalui SISKOD ini.SISKOD

dibangunkan dengan menggunakan bahasa pengaturcaraan Phyton dan disokong oleh

kerangka Django menggunakanORDBMS sebagai satu data model yang mengambarkan objek

sebenar bagi data-data yang terlibat di dalam sistem ini.

KONSEP BERORIENTASIKAN OBJEK

Pangkalan data berorientasikan objek (OODB) menyimpan objek-objek selain daripada data

seperti nombor bulat (integer), jujukan huruf (string) dan nombor perpuluhan (real numbers).

Seperti Rajah 1 di bawah yang mengambarkan konsep orientasi objek bagi kelas Pensyarah

yang mempunyai atribut (attributes)dan methods tersendiri.

i. Kelas (class) - mengambarkan keadaan entiti objek sebenar.

ii. Atribut (attributes) – data yang mewakili sifat-sifat objek tersebut.

iii. Methods – menjelaskan kelakuan bagi objek dan juga dikenali sebagai procedures atau

functions.

Rajah 1. Perwakilan kelas (Class Representation)

Objek di dalam kelas dikenali sebagai classinstances. Setiap classinstancesmempunyai nilai

data yang tersendiri bagi setiap atribut tetapi masih boleh berkongsi nama atribut

(attributes)dan methods yang sama dengan classinstances yang lain(Connolly & Begg, 2015).

Pangkalan Data Berorientasikan Objek (OODB)

Di antara kelemahan yang wujud di dalam pengurusan pangkalan data hubungan (RDBMS)

adalahkurang mewakili entitidunia sebenar, kurang semantik dan kurang integriti(Connolly &

Begg, 2015). Faktor kelemahan ini menyebabkan pemilihan pembangunan SISKOD

memihak kepada konsep berorientasikan objek seperti pengkapsulan (encapsulation),

polymorphism dan pewarisan (inheritance) disokong dengan konseppengurusan pangkalan

Pensyarah

Attributes

Nama

Staff_No

Fakulti

Jantina

No.Telefon

Methods

KemaskiniProfil()

DapatKodPenyelidikan()

PaparKod()

Nama = Ahmad Naseer

Staff_No = 0421

Fakulti = Pusat Asasi

Jantina = Lelaki

No.Telefon = 0123457891

class instances

Nama = Siti Alia Mansor

Staff_No = 0500

Fakulti = FSTM

Jantina = Perempuan

No.Telefon = 0139876543

class definition

Page 3: Penggunaan Object-Relational Database Management System

319

data berorientasikan objek (OODBMS)seperti mempunyai ciri-ciri ACID(Atomicity,

Consistency, Isolation, Durability) (Tiwari & Chopde, 2013).

Pangkalan data berorientasikan objek (OODB) mempunyai ciri yang bagus dalam

prosestransformasi, pemetaanobjek (object)yang jelas bagi gambaran konseptual

danpelaksanaan kelas (classes) yang tersusun di antara atribut (attributes) dan perlakuan

(behaviors).Di samping itu,OODBtidak mempunyai struktur yang tetap, di mana skemaboleh

ditetapkan, dikemaskini dandiperluaskan dengan lebihfleksibel. Oleh itu, ini memberiOODB

lebih kuat, dapat tingkatkan produktiviti, kualiti yang lebih baik dan lebihfleksibel (Hakan

Butuner, 2012).

Object-Relational DBMS (ORDBMS)

Secara umumnya, kelemahan yang terdapat dalam RDBMS dan diperkukuhkan lagi dengan

kemunculan OODBMS, telah diperkenalkan RDBMS dengan penambahan sifat-sifat

berorientasikan objek maka terhasil Object-Relational DBMS (ORDBMS).

Denganmembenarkan pengguna menggunakan kelebihan OODBMS yang mempunyai

produktiviti yang baik dan menyokong jenis data yang kompleks tanpa kehilangan hubungan

data. ORDBMS juga menyokong integrasi kedua-dua antara hubungan (relational) dan

hubungan-objek (object-relational). ORDBMS jugamenggunakan bahasa manipulasi yang

lebih dikenali sebagai structured query languange (SQL) yang mengandungi asas matematik

menggunakan hubungan algebra.

Kelebihan utama ORDBMS adalah kebolehan melanjutkan relational data model menjadi

boleh digunakansemuladan dikongsi(Gotseva, Naser, & Nimrawi, 2012). Digunakansemula

bermaksud pelayanDBMSakan melaksanakanfungsikawalankeserentakan (concurrency

control)berpusat, daripada iadikodkan bagi setiapaplikasi(Connolly & Begg,

2015).ORDBMSlebih cepat dan laju dalam menghasilkan sesuatu aplikasi transaksi dan juga

boleh menguruskan objek yang komplek dengan lebih efektif. Ia juga menawarkan ruangan

pembangunan yang lebih produktif dan mudah untuk diuruskan(Paruchuri, Krishna, &

Kumar, 2013).

Unified Modeling Languange (UML)

Unified Modeling Languange (UML) digunakan untuk tujuan ER Modeling (ERM) dan reka

bentuk konseptual pangkalan data. Di dalam pembinaan SISKOD, class diagram dipilih

sebagai gambarajah struktur di mana mengambarkan hubungan yang statik antara setiap

komponen. Manakala activity diagram dipilih sebagai gambarajah tingkah laku di mana

mengambarkan hubungan yang dinamik antara setiap komponen(Connolly & Begg, 2015).

Class Diagram Siskod

Class diagramatau ERM digunakan di dalam sesuatu pembangunan sistem adalah bertujuan

untuk menggambarkan rekabentuk pangkalan data secara konseptual model data. Konseptual

model datamerupakan satu set konsep yang menerangkan struktur pangkalan data dan setiap

perubahan yang berlaku dalam pangkalan data tersebut. Beberapa entiti telah

dikenalpastisemasa fasa analisis keperluan pembangunan sistem SSIKOD seperti di

pensyarah/staff, kategori, penyelidikan, artikel, buku, geran, prosiding dan pertandingan.

Page 4: Penggunaan Object-Relational Database Management System

320

ERM boleh digambarkan di dalam pelbagai bentuk antaranya dengan menggunakan Rajah 2

terhasil daripada beberapabusiness rules yang wujud di dalam SISKOD ini, antaranya adalah

seperti berikut:

i. Seorang pensyarah/staffsebagai ketua boleh memohon kod bagi

penyelidikan/artikel/buku dan pertandingan di dalam sistem SISKOD.

ii. Permohonan kod penyelidikan, kod akan dihasilkan berdasarkan tahun penyelidikan,

jenis geran,kategori geran dan tiga digit nombor berurutan. Contoh kod penyelidikan

2014/P/GPIK/GPI/001 .

iii. Permohonan kod penulisan artikel/bukudan pertandingan, kod akan dihasilkan

berdasarkan tahun artikel diterbitkan , jenis penulisan, kategori penulisan dan tiga digit

nombor berurutan. Contoh kod penulisan jurnal dalaman berwasit 2014/

A/JU/JDW/001. Contoh bagi kod penulisan bab dalam buku 2014/B/BB-001.

iv. Pensyarah/staff boleh melihat kod yang telah dipohon daripada SISKOD.

Rajah 2 : Class Diagram SISKOD

MainCategory

PK main_category

description

Research

PK id_research

date_start_research date_end_research duration budget_approved id_app FK

Article

PK id_article

published_date journal_name publisher issn_isbn doc_image id_app FK

Book

PK id_book

published_date book_name publisher issn_isbn doc_image id_app FK

Competition

PK id_competition

competition_date competition_name organizer achievement doc_image id_app FK

UserProfile

PK id_user

name

Application

PK id_app

date title remarks status id_user FK main_category FK sub_category FK sub_sub_category FK

SubCategory

PK sub_category

description

SubSubCategory

PK sub_sub_category

description

has

has

has

has

has

has

has

apply

Page 5: Penggunaan Object-Relational Database Management System

321

Activity Diagram Siskod

Activity Diagram merupakan model kawalan aliran satu aktiviti kepada satu aktiviti yang

lain.Secara umumnya, setiap activity diagram menggambarkan aliran sesuatu operasi,

langkah di dalam proses perniagaan atau keseluruhan proses perniagaan.

Rajah 3 menerangkan activity diagram bagi permohonan kod daripada sistem SISKOD.

Pensyarah daftar masuk ke dalam sistem SISKOD dan server akan mengesahkan nama

pengguna dan katalaluan pengguna. Setelah pensyarah mendaftar masuk ke dalam

sistem, pensyarah akan membuat permohonan kod mengikut pilihan kategori seperti

kategori 1 yang mewakili penyelidikan, penulisan artikel, penulisan buku dan

pertandingan. Manakala bagi kategori 2, tidak kesemua kategori 1 perlu memilih

kategori 2 seperti penulisan buku. Setiap kategori mempunyai sub kategori yang

berlainan, sebagai contoh penyelidikan mempunyai 5 jenis geran penyelidikan

sepertiGeran Penyelidikan Dan Inovasi KUIS (GPIK), Geran KUIS (GK), Geran Industri

(GI) Geran KPM (GKPM) dan Geran Agensi Islam(GAI). Sistem SISKOD akan

menjanakan kod apabila mendapat pengesahan permohonan daripada pihak RMC.

SISKOD

SISKOD SERVERPENSYARAH

LOG MASUK

MOHON KOD

PILIH KATEGORI 1

PILIH KATEGORI 2

PENGESAHAN RMC

KOD DIBERI

DISAHKAN

YA

YA

DISAHKAN

TIDAK

TIDAK

Rajah 3 : Activity Diagram SISKOD

PEMBANGUNAN PANGKALAN DATA

Pembangunan sistem SISKOD ini melibatkan dua persekitaran iaitu persekitaran

pembangunan (development environment) dan persekitaran pengeluaran (production

environment). Semasa persekitaran pembangunan (development environment) SISKOD,

pembangun membangunkanpangkalan data dengan menggunakan SQLite, menulis atucara

sistem dengan menggunakan bahasa pengaturcaraan Phyton di dalam persekitaran kerangka

kerja web Django 1.7.1. Phyton adalah satu bahasa pengaturcaraan sumber terbuka (open

source) di mana ia adalah percuma, mudah alih dan mudah digunakan. Phyton digunakan

Page 6: Penggunaan Object-Relational Database Management System

322

dalam membangunkan kerangka Django. Kelebihan utama Phyton ini adalah menyokong

penulisan yang dinamik dan mempunyai pengurusan memori yang bagus dalam pengumpulan

maklumat secara automatik. Antara kelebihan lain bagi bahasa pengaturcaraan ini adalah

sintak yang mudah dipelajari serta mempunyai standard library yang besar. Django

merupakan peringkat tertinggi Phyton dalam merangka kerja Web yang mengalakkan

pembangunan yang cepat, bersih dan reka bentuk pragmatik. Dibangunkan oleh pembangun

projek yang berpengalaman yang memfokuskan kepada kerumitan dalam pembangunan web.

Cepat, selamat dan fleksibel adalah antara yang dijanjikan oleh kerangka kerja Django.

https://www.djangoproject.com/

Di dalam persekitaran pengeluaran(production environment) SISKOD, pembangun

membangunkan pangkalan data dengan menggunakanMySQL 5.1 dan pelayan Apache HTTP

Server 2.2.15. MySQL berfungsi untuk menyimpan data dalam bentuk yang lebuh

berstruktur. Modul tambahan iaitu mod_wsgi telah dipasang bagi membolehkan Apache

memproses bahasa pengaturcaraan Python yang digunakan dalam aplikasi SISKOD.

Rajah 4 menunjukkan atribut (attributes)bersama-sama jenis data (data types) yang terdapat

di dalam objek iaitu lebih dikenali sebagai Rsiskod_application table.

Rajah 4 :Senarai atribut(attributes) di dalam Rsiskod_application table

Rajah 5 : Based class bagi Class Application

Page 7: Penggunaan Object-Relational Database Management System

323

Rajah 6 : Derived class bagi Class Research, Class Article dan Class Book

Rajah 5 merupakanbased class bagi class Applicationdi mana maklumat tentang permohonan

penyelidikan, penulisan artikel dan penulisan buku akan terdapat pada kelas tersebut.

Manakala di dalam Rajah 6merupakan derived class bagi Class Research, Class Article dan

Class Book. Derived class akan mewarisi atribut (attributes) yang terdapat di dalam based

class dan juga atribut (attributes) tersendiri.

KESIMPULAN

Sejak kebelakangan ini, kajian berkaitan dengan pembangunan aplikasi sistem dan

penggunaan teknologi pangkalan data berorientasikan objek berkembang dengan lebih cepat

dan pesat. Kelebihan yang terdapat dalam konsep berorientasikan objek dan disokong dengan

bahasa pengaturcaraan berorientasikan objek dapat menjadikan data yang komplek dapat

diuruskan oleh ORDBMS dengan lebih laju dan cepat berbanding RDBMS. Di harap dengan

kajian yang dilakukan ini dapat membantu atau menyumbang kepada penyelidik di luar sana.

RUJUKAN

1. Connolly, T., & Begg, C. (2015). Database Systems A Practical Approach to Design,

Implementation and Management, 6 Edition. England: Pearson Education Limited.

2. Gotseva, D., Naser, L., & Nimrawi, M. (2012). Comparison Between Object-Relational

and Object-Oriented Databases. RECENT, 13(3), 291–295.

3. Hakan Butuner. (2012). Advantages of Object-Oriented Over Relational Databases on

Real-Life. Research Journal of Economics, Business and ICT, 5, 1–4.

4. Muralidhar Subramanian, V. K. (1999). Performance Challenges in Object-Relational

DBMSs. Bulletin of the Technical Committee on Data Engineering, 22(2), 27–31.

Page 8: Penggunaan Object-Relational Database Management System

324

5. Paruchuri, A., Krishna, C. P., & Kumar, V. S. D. (2013). Applying Object Oriented

Concepts to RDBMS, 2(3), 578–583.

6. Tiwari, S. K., & Chopde, P. N. R. (2013). Comparative Analysis of Object Oriented

Database and Relational database. International Journal of Research in Computer

Engineering & Electronics, 2(5), 1–10.

7. M.Wang (2011). Solving Relational Database Problems with ORDBMS in an Advanced

Database Course. Information Systems Education Journal (ISEDJ), 9(4), 80-89.