Penggunaan Oracle Developer untuk implementasi sistem informasi penjualan dan inventori berbasis web : studi kasus di PT. Sanitas-Cirebon - USD Repository

  

PENGGUNAAN ORACLE DEVELOPER UNTUK IMPLEMENTASI

SISTEM INFORMASI PENJUALAN DAN INVENTORI BERBASIS WEB

(Studi Kasus di PT. Sanitas - Cirebon)

  SKRIPSI Diajukan untuk Memenuhi Salah Satu Syarat

  Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika

  Oleh: Nama : Cordelia Lajamarta NIM : 015314025

  

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

  

THE USE OF ORACLE DEVELOPER FOR IMPLEMENTATION

OF WEB-BASED SALES AND INVENTORY INFORMATION SYSTEM

(Case Study at PT. Sanitas - Cirebon)

  A THESIS Presented as a Partial Fulfillment

  To Obtain a Bachelor of Technic Degree Informatics Engineering Study Program

  By: Name : Cordelia Lajamarta NIM : 015314025

INFORMATICS ENGINEERING STUDY PROGRAM SCIENCE AND TECHNOLOGY FACULTY SANATA DHARMA UNIVERSITY YOGYAKARTA

HALAMAN PERSEMBAHAN

  

Karya ini kupersembahkan kepada

My Lord Jesus Christ…

Papa dan Mama di surga,

Kedua kakakku Cie Nonie dan Ko Herry

  

Teman-temanku Nana, Welly, Yosep, Nope, Diana,

Fenny, Vino, Grace, dan sahabat-sahabatku

lainnya…

HALAMAN MOTO

  Nilai seseorang bukan hanya dilihat dari Prestasi dan harta benda yang dimiliki tetapi juga dari Kebaikan, Ketulusan, Kerendahan dan Kebesaran Hati.

  Kegagalan bukanlah akhir dari segalanya tapi jadikan kegagalan sebagai awal usaha yang baru

Kesalahan terbesar yang dapat dilakukan oleh umat manusia adalah merasa takut

melakukan kesalahan (Abbert Hubbard).

  

Jangan menunggu, waktu tidak pernah “benar-benar” tepat mulailah dari tempat

anda berhenti sekarang dan bekerjalah dengan menggunakan alat apapun yang anda miliki, dan alat-alat yang lebih baik akan ditemukan saat anda melakukan pekerjaan anda.(Napoleon Hill)

Pikiran yang paling menghancurkan diri sendiri yang bisa dimiliki oleh setiap orang

adalah bahwa dia tidak memegang kendali atas hidupnya sendiri (Roger Dawson).

  Sebelum kau berdamai dengan jati dirimu, kau tidak akan pernah merasa puas dengan apa yang kau miliki (Dorris Mortman).

  

ABSTRAKSI

  Selama ini pencatatan transaksi penjualan, retur penjualan, dan inventori dilakukan secara manual oleh staff penjualan dan inventori, sehingga untuk memperoleh informasi ini dibutuhkan waktu yang lama. Oleh karena itu, perlu dikembangkan suatu sistem yang dapat digunakan untuk membantu kegiatan operasional perusahaan meliputi transaksi penjualan, retur penjualan, dan inventori agar mampu menghasilkan dan mengolah informasi penjualan dan inventori secara cepat, tepat, dan akurat.

  Sistem ini dikembangkan dengan menggunakan metode Rekayasa Perangkat Lunak secara terstruktur, dengan menggunakan DBMS Oracle XE, dan menggunakan Oracle Developer sebagai piranti pengembangnya. Oracle XE digunakan karena Oracle merupakan DBMS yang cukup reliable dan bersifat freeware .

  Hasil akhir yang diperoleh adalah sebuah sistem informasi penjualan & inventori berbasis web, yang mampu menerima dan mengolah masukan data transaksi penjualan, retur penjualan, dan inventori sehingga mampu menghasilkan informasi secara cepat dan akurat.

  Sistem ini hanya dapat diakses oleh lingkungan internal perusahaan khususnya staff penjualan dan inventori, manager, dan owner. Masing-masing user memiliki hak dan kewenangan sendiri dalam mengakses sistem. Sistem ini masih memiliki

  

ABSTRACT

  Transaction Sales and Inventory has been recorded manually by Sales and Information Staff. It spend more time to process data and produce information. So we need to develop a system which can help operational activity (sales and inventory transaction) to produce information quickly but still appropriate and accurate.

  This system developed by structured software engineer with Oracle XE as DBMS and Oracle Developer as development tool. Oracle XE has been used because of reliability and freeware.

  The final result is a web-based sales and inventory information system which can accept and processing sales and inventory data transaction, so it can produce appropriate and accurate information.

  Only internal side of the company can access this system, especially sales and inventory staff; manager; and owner. Each user has privilege to access the system.

  The weakness of this system is the user cannot access reports directly.

KATA PENGANTAR

  Terima kasih dan puji syukur penulis ucapkan kepada Tuhan Yang Maha Esa atas berkat dan rahmatnya, sehingga penulis dapat menyelesaikan karya ini. Penulis menyadari bahwa tanpa bantuan dari berbagai pihak, penulis tidak dapat menyelesaikan karya ini. Untuk itu, penulis ingin mengucapkan terima kasih kepada semua pihak yang telah membantu, terutama kepada : 1.

  Ibu A. M. Polina, S. Kom, M. Sc, selaku Ketua Jurusan Teknik Informatika sekaligus pembimbing Tugas Akhir penulis yang telah memberikan bimbingan dan dukungan (serta turut direpotkan dan disibukkan) dalam pembuatan karya ini.

  2. Kakak-kakak penulis Cie Nonie dan Ko Herry yang sudah mendukung, membantu penulis dalam segala hal baik moril maupun materil dan juga yang sudah berperan sebagai pengganti orang tua penulis.

  3. Ci Ana, O Atun, Jonas, Jessi serta seluruh kerabat yang sudah ikut membantu penulis dalam segala hal.

  4. Dosen Pembimbing Akademik, Bapak Alb. Agung H., Bapak Bambang Soelistijanto, S.T., M.Sc (eks P.A.) dan Bapak Dyonisius Dony Ariananda, S.T.

  (eks.P.A juga.) yang telah memberikan bimbingan dalam bidang akademis.

  5. Pak Bele, Mas Danang, Mbak Sri, Mas Catur dan Pak Dar, serta staff laboratorium lainnya yang membantu menyediakan fasilitas laboratorium selama

  6. Teman-teman seperjuangan penulis semasa perkuliahan Welly, Nana, Nope, Ncep. Trim’s buat bantuan, saran, dan dukungan kalian.

  7. Teman-teman Kos 99999 Diana, Fenny, Grace, Vina, Linna, Limdra, Meri, Nyun, Lise, Maria, Octa, Julie. Makasih buat semuanya yang sudah kalian berikan.

  8. Mbeng n Adri yang sering membantu mengantar-antar penulis dan juga membantu pindahan mengangkut barang-barang.

  9. Seluruh teman penulis yang belum penulis sebutkan namanya diatas terimakasih atas dukungan dan bantuannya.

  Penulis mohon maaf yang sebesar-besarnya kepada semua pihak apabila dalam pembuatan karya ini, penulis melakukan kekeliruan dan kesalahan baik yang disengaja maupun yang tidak disengaja.

  Penulis juga menyadari keterbatasan kemampuan yang dimiliki untuk menyelesaikan karya ini dengan baik, sehingga masih terdapat banyak kekurangan.

  Untuk itu, penulis mengharapkan adanya kritik dan saran yang membangun. Semoga karya ini bermanfaat bagi kita semua.

  Yogyakarta, 24 September 2007 Penulis

  

DAFTAR ISI

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

DAFTAR TABEL

Tabel 2.1 Tabel Tipe Obyek....................................................................................... 22Tabel 2.2 Tabel Konstruksi Program ......................................................................... 24Tabel 2.3 Tabel Bagian dari Trigger.......................................................................... 25Tabel 2.4 Tabel Struktur Prosedur ............................................................................. 27Tabel 2.5 Tabel Perbedaan Prosedur dan Fungsi ....................................................... 28Tabel 3.1 Tabel StaffPI Tahap Physical Design ........................................................ 47Tabel 3.2 Tabel Konsumen Tahap Physical Design .................................................. 48Tabel 3.3 Tabel Barang Tahap Physical Design........................................................ 48Tabel 3.4 Tabel Masuk Tahap Physical Design......................................................... 49Tabel 3.5 Tabel DetailMasuk Tahap Physical Design............................................... 49Tabel 3.6 Tabel Jual Tahap Physical Design ............................................................. 50Tabel 3.7 Tabel DetailJual Tahap Physical Design ................................................... 50Tabel 3.8 Tabel ReturJual Tahap Physical Design .................................................... 51

  

DAFTAR GAMBAR

Gambar 2.1 Siklus Hidup Pengembangan SI (Atzeni, 2000)....................................... 8Gambar 2.2 Tahap-tahap Perancangan Database (Atzeni, 2000).............................. 12Gambar 3.1 Use Case Diagram ................................................................................. 38Gambar 3.2 Context Diagram .................................................................................... 39Gambar 3.3 Bagan Berjenjang ................................................................................... 40Gambar 3.4 Overview Diagram ................................................................................. 41Gambar 3.5 DFD level 1 Proses 6.............................................................................. 42Gambar 3.6 DFD Gabungan ...................................................................................... 43Gambar 3.7 ER Diagram (sebelum normalisasi) ....................................................... 44Gambar 3.8 Relational Model (setelah normalisasi).................................................. 46Gambar 3.9 Faktur Penjualan..................................................................................... 52Gambar 3.10 Laporan Penjualan................................................................................ 52Gambar 3.11 Laporan Persediaan Barang.................................................................. 53Gambar 3.12 Laporan Barang Terjual ....................................................................... 53Gambar 3.13 Laporan Konsumen yang Membeli Barang ......................................... 54Gambar 3.14 Form Login........................................................................................... 54Gambar 3.15 Form Input data Staff PI....................................................................... 55Gambar 3.16 Form Input Data Konsumen................................................................. 56Gambar 3.17 Form Input Data Barang ...................................................................... 57Gambar 3.18 Form Input Data Transaksi Penjualan.................................................. 58Gambar 3.19 Form Input Data Transaksi Pemasukan Barang................................... 59Gambar 3.20 Form Input untuk Pembuatan Laporan ................................................ 59Gambar 4.1 Form Login............................................................................................. 82Gambar 4.2 Menu Utama........................................................................................... 83Gambar 4.3 Sub Menu Transaksi............................................................................... 84Gambar 4.4 Sub Menu Master ................................................................................... 85Gambar 4.5 Form Input Data Staff PI........................................................................ 86Gambar 4.6 Form Input Data Konsumen................................................................... 88Gambar 4.7 Form Input Data Barang ........................................................................ 89Gambar 4.8 Form Transaksi Pemasukan Barang...................................................... 92Gambar 4.9 Form Transaksi Penjualan Barang ......................................................... 94Gambar 4.10 Form Transaksi Retur Penjualan Barang ............................................. 96Gambar 4.11 Parameter Input Tanggal untuk Pembuatan Laporan........................... 97Gambar 4.12 Faktur Penjualan................................................................................... 98Gambar 4.13 Laporan Penjualan................................................................................ 99Gambar 4.14 Laporan Persediaan Barang................................................................ 100Gambar 4.15 Laporan Barang Terjual ..................................................................... 101Gambar 4.16 Laporan Konsumen yang Membeli Barang ....................................... 102

BAB I PENDAHULUAN 1.1. Latar Belakang Masalah Saat ini informasi memegang peranan penting dalam kehidupan

  manusia. Salah satu kriteria keunggulan suatu perusahaan dapat dilihat dari kecepatan dan ketepatan perolehan informasi. Informasi bagi perusahaan dapat digunakan untuk meningkatkan efektifitas dan efisiensi kinerja perusahaan. Kecepatan dan pengaruh informasi terhadap perusahaan akan dibandingkan dengan waktu, tenaga, dan biaya yang dikeluarkan perusahaan untuk memperoleh informasi. Tentunya semakin sedikit waktu, tenaga, dan biaya yang dikeluarkan namun menghasilkan informasi yang sangat berpengaruh bagi perusahaan merupakan hal yang diharapkan oleh perusahaan pada umumnya.

  Pada PT. Sanitas-Cirebon perhitungan omzet (hasil transaksi penjualan) setiap hari, bulan, dan tahun masih dilakukan secara manual. Laporan untuk

  owner

  /pemilik masih secara manual, staff dari pabrik harus melaporkan transaksi-transaksi penjualan dan pembayaran dari transaksi-transaksi tersebut secara manual. Staff pabrik dan owner berada di tempat yang berbeda sehingga dibutuhkan waktu, tenaga, dan biaya lebih banyak untuk mendapat informasi yang dibutuhkan. PT. Sanitas-Cirebon khususnya di bagian pabrik plastik sudah memiliki perangkat komputer namun belum dimanfaatkan secara optimal dan belum memiliki program khusus sebagai sarana penyedia sistem informasi.

  Dari latar belakang itulah, penulis tertarik mengembangkan Sistem Informasi Penjualan dan Inventori Berbasis Web yang memiliki kemampuan dalam pengelolaan data berkaitan dengan persediaan barang, penjualan, dan retur penjualan.

  1.2. Batasan Masalah a.

  Sistem yang dibuat hanya meliputi bagian penjualan dan inventori barang jadi, tanpa membahas keterlibatan bahan mentah.

  b.

  Sistem tidak menangani keamanan data akibat adanya tindakan dari pihak luar.

  c.

  Sistem tidak menangani masalah transaction management.

  d.

  Sistem tidak menangani masalah piutang konsumen.

  1.3. Tujuan dan Manfaat

  Tujuan dan manfaat yang diharapkan: a.

  Mengembangkan Sistem Informasi yang sesuai dengan kebutuhan PT.

  Sanitas-Cirebon sehingga mampu membantu operasional perusahaan, melalui tersedianya informasi yang cepat, tepat, dan akurat khususnya untuk user di bidang transaksi penjualan dan inventori.

  b.

  Dapat menjadi acuan teori dan praktek bagi pengembangan Sistem

  1.4. Rumusan Masalah a.

  Bagaimana mengembangkan Sistem Informasi Berbasis Web untuk penjualan dan inventori yang sesuai untuk PT. Sanitas-Cirebon menggunakan Oracle.

  b.

  Sejauh mana Oracle mendukung untuk membuat aplikasi berbasis web untuk kasus tersebut diatas.

  1.5. Metodologi Penelitian

  Metodologi penelitian yang digunakan adalah studi kasus, dengan tahap-tahap sebagai berikut: a.

  Studi literatur: mempelajari hal-hal yang berkaitan dengan pengembangan sistem informasi mulai dari analisa sampai proses implementasi.

  b.

  Observasi: mengamati proses kerja dari perusahaan (dalam kasus ini yang diamati PT. Sanitas-Cirebon bidang pabrik plastik).

  c.

  Interview: mewawancara staff pabrik mengenai sistem yang sedang dijalankan.

  d.

  Pengembangan sistem dengan metode pengembangan perangkat lunak secara terstruktur, dengan langkah-langkah sebagai berikut:

  1. Analisa sistem yaitu dengan melakukan analisa terhadap sistem yang ada.

  2. Merancang sistem informasi yang akan menjadi dasar dalam pembuatan

  3. Membuat implementasi Sistem Informasi Penjualan dan Inventori Berbasis Web.

  4. Menguji perangkat lunak yang dihasilkan.

1.6. Sistematika Penulisan

  Bab I PENDAHULUAN berisi latar belakang masalah, batasan masalah, tujuan dan manfaat penelitian, rumusan masalah, metodologi penelitian, sistematika penulisan.

  Bab II LANDASAN TEORI berisi teori-teori yang digunakan sebagai acuan selama perancangan sampai pembuatan Sistem Informasi.

  Bab III ANALISA DAN PERANCANGAN SISTEM berisi analisa dan perancangan dari sistem informasi yang akan dibuat.

  Bab IV IMPLEMENTASI berisi pengubahan dari perancangan ke pembuatan sistem serta pengujicobaan sistem ditinjau dari sisi masukan dan keluaran sistem.

  Bab V ANALISA HASIL berisi analisa terhadap hasil dari sistem dibandingkan dengan masalah yang akan dipecahkan dalam rumusan masalah, mengungkap kelemahan dari sistem (jika ada) beserta penyebabnya.

  Bab VI KESIMPULAN DAN SARAN berisi pengambilan kesimpulan dari keluaran sistem dibandingkan dengan rumusan masalah, apakah sistem yang dibuat menyelesaikan masalah yang ada dan saran untuk pengembangan sistem lebih lanjut.

BAB II LANDASAN TEORI

  2.1 Web

  Istilah-istilah yang ada dalam Web ( Febrian & Andayani, 2002): 1.

  HTTP (Hypertext Transfer Protocol) HTTP adalah protokol yang dipakai web browser dan web server untuk mengirimkan data dalam www (world wide web).

  2. Web browser/browser Web browser adalah suatu program komputer yang menyediakan layanan

  untuk membaca halaman web di suatu komputer.

  3. Web server Web server adalah suatu program (dan juga mesin yang menjalankan

  program) yang mengerti protokol HTTP dan dapat menanggapi permintaan- permintaan dari web browser untuk mengakses suatu halaman web tertentu.

  2.2 Sistem Informasi

  Istilah-istilah yang ada dalam sistem informasi: 1.

  Proses Proses adalah mengolah masukan (input) yang diperlukan sehingga menghasilkan suatu keluaran (output) (Febrian & Andayani, 2002).

  3. Perangkat Lunak Perangkat lunak adalah program yang digunakan untuk menghasilkan, mengelola, memperoleh, mengubah, menampilkan, atau mengirimkan informasi (Febrian & Andayani, 2002).

  4. Perangkat Keras Perangkat keras adalah seluruh perangkat yang digunakan untuk mengoperasikan suatu sistem komputer (Febrian & Andayani, 2002).

  5. Teknologi Informasi Teknologi informasi adalah istilah yang menggambarkan kombinasi teknologi komputer (perangkat keras dan lunak) dengan teknologi komunikasi (jaringan data, gambar, dan suara) (Whitten, 2004).

  6. Data Data adalah suatu fakta, kejadian yang belum diolah (mentah).

  7. Databas/Basis Data

  Database adalah sekumpulan data yang dikendalikan dan dikelola oleh suatu DBMS (Atzeni, 2000).

  8. DBMS/Database Management System DBMS adalah suatu perangkat lunak yang dapat mengelola kumpulan data yang besar, digunakan bersama (shared) dan secara terus menerus (persistent), dan memastikan bahwa kumpulan data tersebut terjaga kerahasiaan dan kehandalannya (Atzeni, 2000).

  9. Informasi Informasi adalah data yang sudah diolah sehingga berguna bagi pihak tertentu.

  10. Sistem Informasi Sistem informasi adalah pengaturan orang, data, proses, dan teknologi informasi yang berinteraksi untuk mengumpulkan, memproses, menyimpan, dan menyediakan sebagai keluaran, informasi yang diperlukan untuk mendukung sebuah organisasi (Whitten, 2004).

  Siklus hidup pengembangan Sistem Informasi dapat dilihat pada gambar 2.1.

  Feasibility Study Collection & Analysis of Requirements Database Design Design

  Operational Design Implementation Validation & Testing Operation Tahap-tahap dalam siklus pengembangan sistem informasi, yaitu: 1.

   Feasibility Study

  Tahap feasibility study yaitu tahap studi kelayakan terhadap pembuatan sistem.

2. Collection and Analysis of Requirements

  Tahap collection and analysis of requirements yaitu tahap pengumpulan dan analisis terhadap kebutuhan.

  3. Design

  Tahap design meliputi design database (mendefinisikan struktur dan organisasi data) dan design operational (mendefinisikan sifat/karakteristik dari sistem informasi).

  4. Implementation

  Tahap implementation yaitu tahap pembuatan sistem informasi berdasar struktur dan karakteristik yang telah didefinisikan dalam tahap design.

  5. Validation dan testing

  Tahap validation dan testing yaitu tahap pemeriksaan kualitas dan kebenaran dari sistem informasi.

  6. Operation Tahap operation yaitu tahap penggunaan sistem informasi.

  11. Use Case Modelling/Pemodelan Use Case cara mengaksesnya. Use case merupakan pemodelan dari analisis kebutuhan.

  Didalam use case modelling terdapat beberapa istilah, yaitu: 1.

  Aktor adalah segala sesuatu yang berhubungan dengan sistem, yang mengolah dan mendapatkan informasi dalam sistem.

  2. Asosiasi adalah interaksi yang terjadi antara aktor dengan use case.

  3. Use case depends on relationship adalah adanya use case yang harus dijalankan terlebih dahulu sebelum use case yang lain.

  12. DFD (Data Flow Diagram)/DAD (Diagram Arus Data) DFD menggambarkan aliran data dari (sebagai masukan) dan ke dalam sistem (sebagai keluaran). Penggambaran DFD meliputi beberapa tahap :

  1. Context Diagram

  Context diagram menggambarkan sistem secara umum, hanya menggambarkan aliran data dari dan ke dalam sistem.

  2. Bagan Berjenjang Bagan berjenjang menggambarkan struktur dari proses-proses yang ada dalam sistem.

  3. Overview Diagram Menggambarkan aliran data dari dan ke dalam proses yang ada dalam sistem.

  4. Level 1 Proses sub proses Level 1 proses sub proses menggambarkan detail aliran data pada

5. DFD Gabungan

  DFD gabungan merupakan gabungan antara overview diagram dan level 1 proses sub proses.

2.3 Database Design/Perancangan Basis Data

  Database

  design merupakan salah satu tahap yang dikerjakan dari tahap desain pada siklus hidup pengembangan sistem. Tahap-tahap yang akan dikerjakan pada tahap perancangan database dapat dilihat pada gambar 2.2.

  Application Requirements Database Design

  Conceptual Design

Conceptual Schema

  

Logical Design

Logical Schema

  Physical Design

Physical Schema

Database Structure and related documentation

Gambar 2.2 Tahap-tahap Perancangan Database (Atzeni, 2000)

  Perancangan Database terdiri dari 3 tahap yang utama, yaitu: 1.

  Conceptual Design Tahap conceptual design menggambarkan isi (content) dari database tanpa mempertimbangkan implementasi database tersebut dan efisiensi dari program yang memanfaatkan database tersebut. banyak digunakan adalah ER Model (Entity Relationship Model)/ER Diagram (Entity Relationship Diagram).

  Conceptual model mendeskripsikan organisasi data pada abstraksi level tinggi dan tidak memperhatikan aspek implementasi.

  Komponen utama yang membentuk ER Diagram, yaitu: a.

  Entitas Entitas adalah obyek (misal berupa orang, tempat, kejadian) yang nyata dan dapat dibedakan satu dengan yang lainnya. Himpunan entitas adalah kumpulan entitas yang sejenis. Setiap entitas memiliki atribut sebagai karakteristik masing-masing entitas. Macam-macam atribut:

  1. Key (primary key) dan atribut deskriptif

  Key adalah atribut yang membedakan antara satu record dengan record yang lain. Key bersifat unik. Record adalah kumpulan dari isi

  atau nilai atribut. Atribut deskriptif adalah atribut yang tidak menjadi primary key

  2. Simple Attribute dan Composite attribute Simple attribute adalah atribut yang tidak dapat diuraikan lagi.

  Composite attribute

  adalah atribut yang dapat dibagi menjadi bagian-bagian atribut.

  3. Single Valued Attribute dan Multivalued Attribute

  Single valued attribute adalah atribut yang memiliki satu dan hanya

  satu nilai pada setiap record. Multivalued attribute adalah atribut yang dapat memiliki lebih dari satu nilai.

  4. Mandatory attribute dan Nonmandatory attribute Mandatory attribute

  adalah atribut yang harus memiliki nilai (tidak boleh bernilai NULL). Nonmandatory attribute adalah atribut yang boleh tidak memiliki nilai (boleh NULL).

  5. Derived Attribute Derived attribute adalah atribut yang nilainya dapat diperoleh dari

  atribut lain atau hasil pengolahan.

  b.

  Relasi Relasi adalah hubungan antar entitas. Relasi yang mungkin terjadi : 1.

  Relasi satu lawan satu (One To One Relationship) Setiap entitas pada himpunan entitas yang satu tepat berelasi dengan satu entitas pada himpunan entitas yang lain.

  2. Relasi satu lawan banyak ( One to Many Relationship) Setiap entitas pada himpunan entitas yang satu berelasi dengan banyak (lebih dari satu) entitas pada himpunan entitas yang lain.

  3. Relasi banyak lawan banyak (Many to Many Relationship)

2. Logical Design

  Tahap logical design berisi penerjemahan conceptual schema ke model data yang digunakan suatu DBMS. Pada tahap logical design juga dilakukan optimalisasi database yang digunakan, biasanya menggunakan teknik normalisasi.

  Tahap logical design menghasilkan logical schema database yang mengacu pada logical data model (saat ini logical data model yang banyak digunakan adalah relational model).

  Logical model mempresentasikan data tanpa melibatkan physical details . Tahap logical design melakukan restrukturisasi ER Diagram dan

  mentranslasikan ER Diagram tersebut ke bentuk relational model.

  a.

  Restrukturisasi ER Diagram Langkah-langkah dalam restrukturisasi ER Diagram: 1.

  Analisa redundansi Redudansi pada ER Diagram adalah data yang diperoleh dari data yang lain.

  Macam redundansi:

  a) Redundansi akibat adanya nilai atribut yang didapat dari atribut yang lain pada entitas atau relasi yang sama.

  b) Redundansi akibat adanya nilai atribut yang didapat dari c) Redundansi akibat adanya relasi yang didapat dari relasi yang lain.

2. Hilangkan Generalisasi

  Generalisasi yang ada pada ER Diagram tidak dapat langsung ditranslasikan ke bentuk relational model. Ada 3 cara untuk menghilangkan generalisasi:

  a) Meleburkan entitas-entitas anak ke dalam entitas induk

  b) Memecah entitas induk ke dalam entitas-entitas anak.

  c) Mengganti generalisasi yang ada dengan relasi.

3. Memecah/menggabungkan entitas-entitas dan relasi-relasi

  Memecah maupun menggabungkan entitas-entitas dan relasi-relasi dapat dilakukan dengan tujuan efisiensi operasional/akses. Akses akan berkurang dengan adanya pemisahan atribut konsep sama yang diakses dengan operasional yang berbeda. Akses juga akan berkurang dengan penggabungan atribut dari konsep berbeda yang diakses operasional yang sama. Pemecahan entitas dilakukan bila: a)

  Informasi yang sering diakses hanya sebagian kecil dari atribut yang dimiliki entitas tersebut.

b) Atribut pada entitas yang bernilai banyak.

4. Tentukan Primary Key

  Primary key merupakan komponen yang penting untuk dapat b.

  Translasi ER Diagram ke bentuk relational model Ada 2 langkah yang dilakukan dalam translasi ER diagram ke dalam bentuk relational model, yaitu:

1. Normalisasi

  Normalisasi bertujuan untuk:

  a) Memudahkan perancangan database

  b) Memperkecil redundansi

  c) Memudahkan proses update pada database

  Langkah-langkah normalisasi:

  a) Mentransformasikan semua data ke dalam tabel 2 dimensi

  Bentuk unnormalisasi dapat terjadi karena setiap record dapat memiliki lebih dari 1 nilai.

  Pada langkah ini, data yang berulang akan dihilangkan.

  b) Menentukan kunci/key dan item data yang berkaitan dengan kunci tersebut.

  Dalam proses normalisasi ada 2 bentuk normal, yaitu: 1.

  Bentuk Normal Pertama yaitu seluruh baris pada tabel bergantung terhadap seluruh kunci pada tabel tersebut.

  2. Bentuk Normal Kedua berisi pemecahan tabel normal pertama menjadi tabel-tabel yang baru. Pemecahan akan dilakukan bila ada atribut bukan kunci yang tidak tergantung penuh pada atribut kunci.

  c) Memisahkan item data yang bergantung pada item data yang bukan kunci.

  Pemisahan tabel normal kedua dilakukan bila ada item data yang bergantung secara tidak langsung (transitive dependency) pada item data bukan kunci.

2. Relational Model

  Relational model

  adalah model yang menggambarkan database dalam bentuk tabel 2 dimensi yaitu baris dan kolom. Tiap baris menggambarkan atribut sedangkan tiap kolom menggambarkan

  record . Sifat relational model:

  a) Tidak ada baris yang sama nilainya

  b) Urutan baris dan kolom bebas

c) Nilai data atomic/tidak dapat dipecah lagi.

  Komponen dalam relational model:

  a) Tabel

  Setiap entitas dan relasi pada ER Diagram akan menjadi tabel b) Kunci

  Setiap record pada tabel harus mempunyai unsur unik dalam nilai tiap atributnya. Unsur unik tersebut dapat dikelompokkan dalam kolom tersendiri. Setiap tabel memiliki jenis kunci yang berbeda dan antara kunci yang satu dengan kunci yang lain dapat digabungkan.

  Fungsi kunci adalah untuk menggambarkan relasi yang ada dan juga sebagai pengenal. Jenis kunci pada tabel: a.

  Primary Key Nilai atribut yang membedakan record yang satu dengan

  record yang lain.

  b.

  Secondary Key Nilai dari atribut yang tidak terlalu unik tetapi juga dapat digunakan untuk melengkapi primary key, dalam membedakan record yang satu dengan record yang lain.

  c.

  Foreign Key Nilai dari atribut pada record pada suatu tabel yang merupakan primary key pada record di tabel lain.

  c) Relasi

  Relasi yang ada pada relational model yaitu: relasi dalam tabel

  3. Physical Design Tahap physical design menghasilkan logical schema, yang dilengkapi dengan detail-detail implementasi database secara fisik (organisasi file dan indeks) sesuai DBMS yang digunakan.

2.4. Oracle Database Relational database /basis data relasional adalah kumpulan relasi.

  Relational database dapat diakses dengan menggunakan SQL (Structured Query Language ).

  Berdasarkan fungsinya perintah-perintah dalam SQL dibedakan menjadi 5 golongan yaitu:

  1. Data Retrieval

  Perintah SQL yang berfungsi untuk membaca data dari database. Perintah SQLnya meliputi: select.

  2. DDL/Data Definition Language DDL digunakan untuk mendefinisikan suatu database untuk pertama kali.

  Perintah SQLnya meliputi antara lain: create, alter, drop, rename, truncate.

  3. DML/Data Manipulation Language DML digunakan untuk meng-queri dan meng-update isi dari suatu

  database . Perintah SQLnya meliputi antara lain: insert, update, delete, dan merge .

  4. Transaction Control

  Perintah-perintah yang berfungsi untuk mengatur perubahan-perubahan yang dilakukan oleh perintah-perintah dalam pernyataan DML. Perintah- perintah SQLnya meliputi: commit, rollback, savepoint.

  5. DCL/Data Control Language Perintah-perintah yang memberikan atau menghilangkan hak untuk mengakses database maupun struktur dari database tersebut. Perintah- perintah SQL nya meliputi: grant, revoke. Aturan penulisan SQL: 1.

  Tidak bersifat case sensitive (tidak pengaruh bila ditulis dengan huruf besar ataupun kecil)

  2. Dapat terdiri dari beberapa baris 3.

  Kata kunci tidak dapat disingkat. Kegunaan SQL: 1.

  Menampilkan data hasil perhitungan 2. Memodifikasi item data perseorangan 3. Memanipulasi keluaran dari kumpulan baris 4. Format tanggal dan nomor untuk tampilan.

  5. a.

  Varchar2: tipe data karakter b. Char: tipe data karakter c. Number: tipe data numerik d. Date: tipe data tanggal

  Ada 2 tipe data yang berbeda untuk karakter. Perbedaan pada tipe data tersebut adalah tipe data varchar2 sifatnya lebih dinamis. Bila jumlah maksimum yang didefinisikan pada varchar2 tidak dipenuhi maka memori yang digunakan sesuai dengan kebutuhan.

  Tipe obyek yang terdapat pada Oracle Tipe obyek yang terdapat pada Oracle dapat dilihat pada tabel 2.1

Tabel 2.1 Tabel Tipe Obyek

  Tipe Obyek Keterangan Tabel Tempat untuk menyimpan data, terdiri dari kumpulan baris dan kolom yang membentuk record-record. View Mempresentasikan secara logis subset dari satu atau lebih table

  

Sequence Membantu membangkitkan (generate)

  nilai dari primary key

  Indeks Mempercepat pengeksekusian query

  Sinonim Nama alias untuk suatu obyek b.

  Maksimal 30 karakter c. Berisi alfabet (A-Z/a-z), 0-9, _, $, #) d. Unik (setiap nama obyek untuk 1 pemakai dan ruang nama tidak boleh sama) e.

  Tidak berupa kata kunci dari Oracle Tabulasi Oracle mengenai berbagai konstruksi program (tipe blok) dapat dilihat pada tabel 2.2

Tabel 2.2 Tabel Konstruksi Program

  Konstruksi program Keterangan Terdapat pada

  Anonymous block Blok yang tidak memiliki PL/SQL

  nama

  Stored procedure Mencakup prosedur dan Oracle Server

  fungsi Prosedur atau fungsi Blok bernama yang Oracle Developer (misal aplikasi ditulis di aplikasi pada

  : forms) Oracle Developer dan yang bisa menerima

  operand Package

  Bisa disebut module Oracle Server berfungi untuk Oracle Developer membungkus tipe, operasi maupun obyek sebagai satu kesatuan.

  Trigger (database Blok bernama yang Oracle Server trigger ) pemanggilannya secara

  implisit (tidak langsung)

  Trigger aplikasi Hampir sama dengan Bagian dari Oracle trigger pada database

  Developer yaitu pemanggilannya implisit, perbedaannya pada even untuk trigger aplikasi didefinisikan oleh development tool (misal : Oracle Developer)

  Trigger

Trigger adalah suatu aksi dalam database yang mempengaruhi database

  lain yang berelasi akibat adanya suatu perubahan pada database tersebut.

  

Triger dipicu oleh even/kejadian insert, update, dan delete pada database.

  Kode dalam trigger disebut trigger body, dibuat dalam blok PL/SQL. Trigger digunakan untuk menjaga integritas data, membuat aturan bisnis yang kompleks dan mengaudit perubahan data. Trigger dapat dijalankan sebelum atau sesudah dilakukan perubahan pada database.

  Bagian-bagian dari trigger dapat dilihat pada tabel 2.3

Tabel 2.3 Tabel Bagian dari Trigger

  Bagian Keterangan Kemungkinan Nilai

  Trigger timing Waktu trigger dijalankan: Before , after, instead off

  sesudah, sebelum, atau bersamaan dengan terjadinya perubahan pada database.

  Triggering event Perintah yang Insert , update, dan delete

  menyebabkan perubahan pada database sebagai pemicu terjadinya trigger

  Trigger type Jumlah pengeksekusian Setiap pernyataan, setiap trigger

  baris

2.5. Oracle PL/SQL (Procedural Language/Structured Query Language)

  PL merupakan bagian pemrograman prosedural yang untuk melengkapi SQL yang dianggap non prosedural.

  Blok PL/SQL Ada 3 blok dalam PL/SQL:

  DECLARE

  Bersifat opsional, berisi deklarasi variabel, kursor, dan user-define exceptions , konstanta.

  BEGIN Bersifat mandatory, berisi perintah-perintah SQL.

  EXCEPTION

  Bersifat opsional, berisi tindakan/aksi yang akan dilakukan bila terjadi error/kesalahan.

  END Bersifat mandatory, untuk mengakhiri blok PL/SQL.

  Procedure /Prosedur

  Prosedur adalah blok PL/SQL yang digunakan untuk memperbaiki kinerja dan dapat disimpan dalam database. Prosedur berfungsi untuk memindahkan kode dari aplikasi ke database. Sehingga kode tersebut akan dapat digunakan oleh berbagai aplikasi yang menggunakan database yang sama. Langkah-

  2. kompilasi kode 3. eksekusi prosedur

  Struktur dari prosedur dapat dilihat pada tabel 2.4

Tabel 2.4 Tabel Struktur Prosedur

  Parameter Keterangan

  Procedure_name

  Nama dari prosedur Paramater Nama dari variabel PL/SQL yang dihasilkan dari lingkungan pemanggil prosedur, dipengaruhi mode yang digunakan

  Mode Tipe:

  IN OUT

  IN OUT Tipe data Tipe data yang umum digunakan di

  PL/SQL: %TYPE,%ROWTYPE,skalar, ataupun komposit Blok PL/SQL Body dari prosedur yang akan mendefinisikan aksi dari prosedur.

  Function/Fungsi Fungsi adalah blok PL/SQL yang mengembalikan sebuah nilai.

  Keuntungan penggunaan fungsi: 1. merupakan perluasan SQL, untuk menjalankan perintah SQL yang terlalu kompleks atau yang tidak tersedia dengan SQL biasa.

Tabel 2.5 Tabel Perbedaan Prosedur dan Fungsi

  Prosedur Fungsi Dieksekusi sebagai statemen PL/SQL Diinvoke sebagai bagian ekspresi

  Header tidak mengandung klausa Header mengandung klausa RETURN RETURN

  Mengembalikan 0 atau lebih nilai Mengembalikan nilai tunggal Dapat mengandung statemen RETURN Mengandung minimal 1 statemen

  RETURN 2.6.

   Oracle Developer

2.6.1 Forms Developer

  Oracle Forms Developer merupakan piranti pengembang yang dibuat Oracle untuk memudahkan pembuatan aplikasi yang menggunakan database Oracle. Kemudahan dalam hal konektivitas/sambungan aplikasi terhadap

  database

  yang digunakan. Karena Oracle Developer merupakan piranti desain berbasis visual yang diciptakan berpasangan dengan database Oracle.

  Aplikasi pada Forms Developer dapat memiliki 1 atau lebih form.

  Untuk aplikasi yang kompleks, terdiri atas beberapa form dapat digunakan menu program untuk mengintegrasikan form-form tersebut. Ada 2 jenis menu program, yaitu: b.

  Menu sekunder : menu yang terdapat dalam menu, biasa disebut sub menu.

  Pada Forms Developer dikenal adanya Object Navigator yaitu tempat pengelompokkan obyek-obyek yang terdapat pada Forms Developer.

  Obyek-obyek yang terdapat pada Oracle Forms antara lain: 1.

  Triggers Blok PL/SQL yang ditulis dengan fungsi tertentu yang berhubungan dengan even/kejadian spesifik/khusus pada database. Even khusus seperti insert, update, atau delete pada database.

  2. Alerts

  Window

  yang akan menampilkan pesan kesalahan bila suatu kondisi terpenuhi. Alert menampilkan pesan kesalahan atas aksi yang dilakukan oleh user. Ada 3 jenis tipe alert: a.

  Stop: alert yang mencegah user untuk melanjutkan aksi yang dilakukan user, sistem menolak aksi yang dilakukan user.

  b.

  Caution: alert yang hanya menampilkan peringatan pada user atas aksi yang dilakukannya.

  c.

  Note: alert yang hanya menampilkan catatan atas aksi user.

  3. Data Blok Merupakan kontainer yang menampung sekelompok obyek seperti: text item, list, dan buttons. blok mengelompokkan obyek-obyek dalam suatu fungsi untuk menampilkan, memanipulasi, atau menyimpan record dalam database.

  4. Canvas Tempat untuk meletakkan semua obyek pada form yang akan ditampilkan dalam aplikasi. Merupakan permukaan dari sebuah

  windows 5.

  List Of Values (LOVs) dan Record Group

  Record Group merupakan daftar kumpulan field dari 1 atau beberapa tabel. LOVs merupakan daftar atau tampilan dari sebuah record group.

  6. Parameters Parameter menampung nilai yang akan dilewatkan ke form lain.

  7. Program Units Berisi sub program yang terdapat pada suatu form. Program unit dapat berupa fungsi, prosedur ataupun package.

  8. Reports Menampilkan report yang dibuat dengan Reports Developer.

  9. Windows

  Windows

  adalah obyek yang menampung seluruh obyek lain yang terdapat dalam sebuah modul form.

  Setiap form dapat memiliki 1 atau lebih obyek.

2.6.2 Reports Developer

  Merupakan piranti untuk membuat laporan-laporan berdasar data yang tersimpan dalam database melalui form yang telah dibuat.

  Jenis laporan yang dapat dibuat menggunakan Reports Developer antara lain: tabular, master-detail (group), form, form letter, mailing label.

  Reports developer memiliki Object Navigator untuk mengatur obyek- obyek dalam laporan. Obyek-obyek yang terdapat pada laporan antara lain: a.

  Data Model Merupakan tempat untuk mendefinisikan data-data yang digunakan dalam laporan. Data-data yang didefinisikan antara lain:

  1. Queries Perintah select dari SQL.

  2. Groups Kumpulan field yang di-queri.

  3. Column Terdiri dari formula column, summary column, placeholder column.

  4. Parameter Terdiri dari sistem parameter dan user parameter. Merupakan form yang digunakan sebagai parameter masukan laporan. Sistem parameter telah didefinisikan Reports Developer dan digunakan untuk mengubah pilihan pada saat runtime. User parameter didefinisikan

5. DataLinks Untuk menghubungkan 2 queri, umumnya merupakan master-detail.

  b.

  Paper Layout Merupakan tempat untuk mendesain tampilan laporan. Paper layout terdiri atas 4 bagian: 1. : halaman awal/pembuka laporan

  Header Section 2. : bagian utama laporan

  Main Section 3. : bagian akhir dari laporan

  Trailer Section Obyek-obyek yang terdapat pada paper layout, antara lain:

  1. : untuk membuat label text 2. : obyek yang mengelilingi field. frame 3. repeating frame : merupakan obyek yang mengelilingi field, yang mewakili grup pada data model.