Anda di halaman 1dari 21

Laporan Tugas Rancang Oracle Administrator

Bimbingan Belajar ZIPPY

Dosen Pengampu :
Dr. KRISTOKO DWI HARTOMO,S.Kom., M.Kom.
Disusun Oleh :
Michael Christofer Hartasanjaya 682019012
Ezra Julang Prasetyo 682019077
Ehrza Omar 682019165

Program Studi S1 Sistem Informasi


Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
2021
Laporan Tugas Rancang OA

Daftar Isi

Latar Belakang.................................................................................................................................1
1.1 Perusahaan........................................................................................................................1
1.2 Proses Bisnis.....................................................................................................................2
2. Database Design.......................................................................................................................4
2.1 Data Mentah......................................................................................................................5
2.2 Tabel ERD.........................................................................................................................8
3. User..........................................................................................................................................8
4. Role..........................................................................................................................................9
5. TRIGGER...............................................................................................................................11
6. Flashback................................................................................................................................13
7. Backup & Recovery...............................................................................................................17
8. Kesimpulan.............................................................................................................................18
9. Daftar Pustaka........................................................................................................................19
Laporan Tugas Rancang OA Hal 1

Latar Belakang

1.1 Perusahaan

Zippy English Education Center merupakan Lembaga bimbingan kursus Bahasa inggris
yang berada di wilayah Surabaya. Zippy merupakan salah satu lembaga kursus di kota Surabaya
yang telah berdiri sejak 2014. Zippy merupakan lembaga kursus bahasa Inggris yang tidak hanya
berfokus pada speaking, melainkan juga writing dan listening.

Hingga saat ini, jumlah peserta didik di lembaga kursus bahasa inggris Zippy semakin
bertambah dan seiring dengan pertambahan jumlah peserta didik tersebut, diperlukan pengelolaan
yang lebih intensif dalam hal data-data administrasi. Dengan adanya Ednglish Education Center
seperti Zippy, diharapkan peminat sastra inggris berkembang dan meningkatkan kemampuan
berbahasa Inggris khususnya di kalangan orang muda.
Laporan Tugas Rancang OA Hal 2

1.2 Proses Bisnis

Gambar 1a. flowchart Pendaftaran Calon Murid pada tempat les


Laporan Tugas Rancang OA Hal 3

1. Calon Murid mendatangi tempat les zippy

2. administrator memberikan formulir pendaftaran kepada calon murid

3. calon murid mengisi formulir

4. Calon murid menyerahkan formulir ke administrator

5. Administrator menginput data calon murid ke database.

6. Administrator konfirmasi data calon murid ke bagian keuangan.

7. Bagian keuangan memberikan informasi pembayaran.

8. Administrator memberikan tagihan pembayaran kepada calon murid.

9. Calon murid melakukan pembayaran kepada administrator.

10. Administrator menerima pembayaran dan divalidasi oleh bagian keuangan.

11. Bagian keuangan membuat nota pembayaran.

12. Administrator menyerahkan nota pembayaran kepada calon murid.

13. Administrator Menentukan jadwal kelas murid baru dan pembuatan kartu member les Zippy.

14. Administrator memberikan informasi kelas dan kartu member les Zippy.

15. Calon murid menerima informasi kelas dan menerima kartu member les Zippy
Laporan Tugas Rancang OA Hal 4

2. Database Design

Gambar 2a. (ERT Tempat LES Zippy)

Deskripsi:

1. Entitas karyawan dalam hal ini yang memiliki jabatan_karyawan sebagai pengajar dapat
mengajar beberapa kelas. Sehingga dalam setiap kelas akan ada id_karyawan
2. Entitas kelas ke entitas jadwal_murid memiliki relasi one to-many, entitas jadwal_murid
memiliki id_kelas yang nantinya dalam me-query database mampu melihat setiap id_kelas
di setiap jadwal yang dimiliki oleh masing-masing murid.
3. Entitas murid ke jadwal murid memiliki relasi one-to-one karena setiap murid hanya
memiliki akan memiliki sebuah jadwal bimbingan belajar dalam satu minggu.
Laporan Tugas Rancang OA Hal 5

4. Entitas murid ke nilai murid memiliki relasi one-to-one karena setiap murid hanya akan
memiliki sebuah entity berisi kumpulan nilai yang ia dapat selama mengikuti bimbingan les
Zippy.
5. Entitas transaksi ke murid memiliki relasi one-to-many, karena setiap murid pasti memiliki
transaksi yang lebih dari satu.
6. Entitas transaksi ke detail transaksi memiliki relasi one-to-one, karena setiap transaksi hanya
memiliki satu detail transaksi
7. Entitas konfirmasi transaksi ke detail transaksi memiliki relasi one-to-one karena tiap detail
transaksi akan berisi info mengenai konfirmasi transaksi.

2.1 Data Mentah

A. Data Murid
Laporan Tugas Rancang OA Hal 6

B. Data Karyawan

C. Data Kelas
Laporan Tugas Rancang OA Hal 7

D. Data Jadwal Murid


Laporan Tugas Rancang OA Hal 8

2.2 Tabel ERD

3. User

-User Keuangan Zippy:

User ini memiliki roles sebagai keuangan_zippy yang memiliki tablespaces


TBS_TEMPAT_LES dan memiliki profile sebagai Karyawan di Zippy.

- User Admin Zippy:


User ini memiliki roles sebagai administrator dan memiliki tablespaces
TBS_TEMPAT_LES dan memiliki profile karyawan di Zippy

-User Guru Zippy


User ini memiliki roles sebagai tenaga pengajar dalam tempat les Zippy dan
memiliki profile karyawan dan juga memiliki tablespaces TBS_TEMPAT_LES

-User Murid Zippy


Laporan Tugas Rancang OA Hal 9

User ini memiliki roles sebagai murid atau pelajar pada tempat les Zippy dan
memiliki tablespaces TBS_TEMPAT_LES dengan profile sebagai pelajar.

4. Role

- Role MURID_ZIPPY : Digunakan untuk Murid yang ada di tempat les Zippy dan memiliki
object privilege pada tingkatan table. Object privilege dapat dilihat dalam tabel berikut:

- Role GURU_ZIPPY : Digunakan untuk Guru yang ada di tempat les Zippy dan memiliki
beberapa object privilege pada tingkatan table. Untuk Penjelasan apa saja Object privilege
yang dimiliki oleh Guru dapat dilihat pada tabel berikut:
Laporan Tugas Rancang OA Hal 10

- Role KEUANGAN_ZIPPY: roles ini dapat diberikan kepada petugas keuangan yang
bekerja pada tempat les Zippy yang memiliki jobdesk: mengecek pembayaran uang les,
mengkonfirmasi, mengupdate status pembayaran, dan juga dapat menghapus pembayaran
yang dianggap tidak valid. Oleh karena itu, karyawan bagian keuangan memiliki berbagai
Object Privilege seperti berikut:

- Role ADMIN_ZIPPY: Digunakan untuk Administrator yang ada di tempat les Zippy
administrator memiliki jobdesk untuk mengelola dan merawat integritas data dari sebuah
database, sehingga Administrator memiliki akses khusus yaitu DBA agar dapat mengakses
database secara penuh.
Laporan Tugas Rancang OA Hal 11

5. TRIGGER

A. Trigger Increment_ID_Jadwal
Trigger yang berfungsi untuk melakukan pembuatan id_jadwal_murid di table jadwal_murid
secara otomatis dengan memanfaatkan sequence. Ketika kita input values ke table
jadwal_murid, tidak perlu spesifikasikan id_jadwal_murid.

Sql Query:
CREATE OR REPLACE TRIGGER INCREMENT_ID_JADWAL
BEFORE INSERT ON JADWAL_MURID
FOR EACH ROW
BEGIN
SELECT
'55'||TO_CHAR(SEQ_JADWAL_ID.NEXTVAL,'FM0000')
INTO :NEW.ID_JADWAL_MURID
FROM DUAL;
END;

B. Trigger Increment_ID_Karyawan
Trigger yang berfungsi untuk melakukan pembuatan id_karyawan di table karyawan secara
otomatis dengan memanfaatkan sequence. Ketika kita input values ke table karyawan, tidak
perlu spesifikasikan id_karyawan.

Sql Query:
CREATE SEQUENCE SEQ_KARYAWAN_ID
INCREMENT BY 1
START WITH 1 ;

<<trigger auto increment id karyawan>>


create or replace TRIGGER INCREMENT_ID_KARYAWAN
BEFORE INSERT ON KARYAWAN
FOR EACH ROW
BEGIN
SELECT
'33'||TO_CHAR(SYSDATE,'YY')||
TO_CHAR(SEQ_KARYAWAN_ID.NEXTVAL,'FM000')
INTO :NEW.ID_KARYAWAN
FROM DUAL;
END;
Laporan Tugas Rancang OA Hal 12

C. Trigger Increment_ID_Murid
Trigger yang berfungsi untuk melakukan pembuatan id_murid di table murid secara
otomatis dengan memanfaatkan sequence. Ketika kita input values ke table murid, tidak
perlu spesifikasikan id_murid.

Sql Query:
CREATE OR REPLACE TRIGGER CREATE_ID_MURID
BEFORE INSERT ON MURID
FOR EACH ROW
BEGIN
SELECT
'88'||TO_CHAR(SYSDATE,'YYYY')||
TO_CHAR(SEQ_MURID_ID.NEXTVAL,'FM000')
INTO :NEW.ID_MURID
FROM DUAL;
END;

D. Trigger Input_Default_Nilai
Trigger yang berfungsi untuk melakukan insert secara otomatis ke dalam table nilai_murid,
transkrip_nilai, dan transaksi ketika data murid baru dimasukkan dengan nilai defaultnya.
Sql Query:
create or replace TRIGGER Input_default_nilai
AFTER INSERT ON MURID
FOR EACH ROW
BEGIN
INSERT ALL
INTO transaksi VALUES (TO_CHAR(SYSDATE,'MMYYY')||:NEW.id_murid,
SYSDATE + 30, NULL,
500000, NULL, 'BELUM LUNAS', 0, :NEW.id_murid)

INTO transkip_nilai VALUES ('909'||:NEW.id_murid, 0, 0)

INTO nilai_murid VALUES


(101||:NEW.id_murid,'berbicara',null,:NEW.id_murid,'909'||:NEW.id_murid)
INTO nilai_murid VALUES
(102||:NEW.id_murid,'membaca',null,:NEW.id_murid,'909'||:NEW.id_murid)
INTO nilai_murid VALUES
(103||:NEW.id_murid,'menulis',null,:NEW.id_murid,'909'||:NEW.id_murid)
INTO nilai_murid VALUES
(104||:NEW.id_murid,'mendengarkan',null,:NEW.id_murid,'909'||:NEW.id_murid)
INTO nilai_murid VALUES
(105||:NEW.id_murid,'tata_bahasa',null,:NEW.id_murid,'909'||:NEW.id_murid)
INTO nilai_murid VALUES
(106||:NEW.id_murid,'kosakata',null,:NEW.id_murid,'909'||:NEW.id_murid)
SELECT * FROM DUAL;
END;
Laporan Tugas Rancang OA Hal 13

E. Trigger Update_Transkrip
Trigger yang berfungsi untuk melakukan update info pada transkrip nilai, apabila status
pembayaran dalam table transaksi berubah valuenya menjadi ‘LUNAS’.

Sql Query:

CREATE OR REPLACE TRIGGER UPDATE_TRANSKRIP


AFTER UPDATE OF STATUS_PEMBAYARAN ON TRANSAKSI
FOR EACH ROW
BEGIN
IF :NEW.STATUS_PEMBAYARAN = 'LUNAS' THEN
UPDATE transkrip_nilai SET TOTAL_NILAI =
(
SELECT SUM(SUBJECT_SCORE)
FROM nilai_murid
WHERE id_transkrip_nilai = '909'||:NEW.ID_MURID
)
WHERE id_transkrip_nilai = '909'||:NEW.ID_MURID;
END IF;
END;

6. Flashback

A. Flashback Drop Table


Kami akan meng-drop table jadwal_murid dan ingin mengembalikannya, seperti dibawah
ini, flashback ini berguna untuk mengembalikan table yang sudah didrop. pertama-tama
Laporan Tugas Rancang OA Hal 14

kami akan drop table dengan query “drop table jadwal_murid;”

dan setelah itu kami ingin mengembalikan table tersebut dengan query “Flashback table
jadwal_murid to before drop;”

B. Flashback Table
Laporan Tugas Rancang OA Hal 15

Kami akan mencoba untuk mengubah isi dari table Jadwal_murid, dan setelah itu kami akan
mengubahnya ke kondisi semulanya, dengan syarat kita sudah memasukan query “ALTER
TABLE JADWAL_MURID ENABLE ROW MOVEMENT;”

Seetelah itu kami mencoba untuk mengganti data yang ada didalamnya yang semula
ID_KELAS = AM201, menjadi ID_KELAS= AM209 dengan query “UPDATE
JADWAL_MURID SET ID_KELAS='AM209' WHERE ID_MURID=882021001;”
Laporan Tugas Rancang OA Hal 16

Setelah sudah kami akan mengembalikannya ke kondisi atau data semulanya dengan query
“FLASHBACK TABLE JADWAL_MURID TO TIMESTAMP
TO_TIMESTAMP('2021-06-22 01:15:00', 'yyyy-mm-dd hh24:mi:ss');”
Laporan Tugas Rancang OA Hal 17

7. Backup & Recovery

Metode Backup dan Recovery ini kami lakukan jika server untuk menyimpan data Zippy
mengalami kerusakan akibat hardware failure, seperti mengalami kerusakan pada hard disk, untuk
menghindari dan mengantisipasi terjadinya data loss akibat hardware failure, maka Backup dan
Recovery sangat diperlukan.

PROSES BACKUP DATABASE


Laporan Tugas Rancang OA Hal 18

PROSES RESTORE DATABASE

8. Kesimpulan

Semua yang kami pelajari di Oracle Administrator dapat memudahkan seorang


administrator database untuk dapat menghandle database beserta dengan keseluruhan datanya.
Dengan mempelajari Oracle Administrator juga dapat menambah cara berpikir kita secara sistematis
yang lebih baik.
Dengan membangun Relational Database yang baik, akan membuat proses administrasi di
Bimbingan Belajar Zippy dalam penyimpanan database dari murid dapat teratur. Dengan
memanfaatkan beberapa trigger yang dapat memberikan pengaruh antar tabel, dapat menciptakan
sebuah sistem database yang terorganisir dengan baik.
Rancangan database yang kami buat sangat memungkinkan untuk bisa dikembangkan, oleh
karena itu semoga dari laporan yang kami buat ini dapat menjadi referensi untuk dapat memberikan
tambahan ilmu berkaitan dengan perancangan Database.
Laporan Tugas Rancang OA Hal 19

9. Daftar Pustaka

● Pratiwi, Rizky Dwi, and Prisa Marga Kusumantara. "Rancang Bangun Sistem Informasi Manajemen
Administrasi di Lembaga Bimbingan Belajar Bahasa Inggris." Jurnal Informatika dan Sistem
Informasi (JIFoSI) 1.3 (2020): 926-935.

Anda mungkin juga menyukai