BAB II LANDASAN TEORI
2.1
Konsep Dasar Sistem Informasi 2.1.1 Pengertian Sistem Menurut Al Fatta, Hanif (2007:3) “Sistem adalah suatu kumpulan atau himpunan dari unsur atau variabel-variabel yang saling terorganisasi, saling berinteraksi dan saling bergantung satu sama lain”. Menurut Tantra, Rudy (2012:1) “Sistem adalahentitas atau satuan yang terdiri dari dua atau lebih komponen atau subsistem(sistem yang lebih kecil) yang saling terhubung dan terkait untuk mencapai suatu tujuan”. Dari kedua definisi diatas, dapat disimpulkan bahwa sistem adalah sekumpulan fungsi-fungsi yang saling berhubungan satu sama lain untuk mencapai tujuan tertentu.
2.1.2 Pengertian Informasi Menurut Al Fatta, Hanif (2007:9) informasi adalah data yang telah diolah menjadi sebuah bentuk yang berarti bagi penerimanya dan bermanfaat dalam pengambilan keputusan saat ini maupun mendatang. Menurut Tantra, Rudy (2012:1) menyebutkan bahwa “Informasi adalah pemrosesan input yang terorganisir, memiliki arti, dan berguna bagi orang yang menerimanya”. Dari sumber diatas maka dapat disimpulkan, bahawa informasi adalah data yang sudah diolah sehingga bermanfaat dalam pengambilan keputusan maupun sebagai pengetahuan. Menurut Ibnu Syamsyi, S.U. dalam bukunya mengatakan bahwa informasi yang akurat harus memenuhi persyaratan sebagai berikut: (1) Lengkap sesuai dengan yang dibutuhkan.
6
7
(2) Dapat dipercaya kebenarannya (reliable). (3) Aktual (up-to-date). (4) Tepat sasaran yang dituju, dan (5) Tepat waktu penyampaiannya. Dari berbagai sumber yang terkumpul, dapat disimpulkan bahwa informasi adalah hasil pemrosesan dari data yang diolah menjadi sebuah bentuk yang lebih berarti dan berguna bagi penerimanya. pengertian informasi selalu dikaitkan dengan data, namun arti dari masing-masing kata dalam pengertian tersebut berbeda. Keberadaan suatu data sangat menunjang terhadap informasi, karena data merupakan bahan mentah yang diperlukan untuk mengambil keputusan atau dengan kata lain, sumber dari informasi adalah data. Siklus informasi dapat dijelaskan seperti gambar berikut :
Gambar 2.1 : Siklus Informasi Sutabri (2004:21)
2.1.3 Pengertian Sistem Informasi Menurut Tantra, Rudy (2012:2) menyebutkan bahwa “Sistem Informasi
adalah
cara
yang
terorganisir
untuk
mengumpulkan,
memasukkan, dan memproses data dan menyimpannya, mengelola, mengontrol dan melaporkannya sehingga dapat mendukung perusahaan atau organisasi untuk mencapai tujuan”.
8
Dari pengertian diatas, maka dapat disimpulkan bahwa sistem informasi adalah proses pengolahan data sehingga menjadi sebuah informasi, mulai dari pengumpulan, memproses, menyimpan, dan mendistribusikan informasi yang berguna bagi penggunanya.
2.1.4 Pengertian Analisa dan Perancangan Dalam bukunya Al Fatta, Hanif
(2007:24) menjelaskan, analisis
sistem didefinisikan sebagai bagaimana memahami dan menspesifikasi dengan detail apa yang harus dilakukan oleh sistem. Sementara desain perancangan sistem diartikan sebagai menjelaskan dengan detail bagaimana bagian-bagian dari sistem informasi diimplementasikan. Dengan demikian, analisis dan perancangan sistem bisa didefinisikan sebagai: Proses organisasi / komplek dimana sistem informasi berbasis computer berjalan dan diimplementasikan (Hanif, 2007:24) Atau bisa diringkas sebagi berikut : • Analysis: mendefinisikan kejadian. (From requirement to specification). • Design/ perancangan: memecahkan masalah (From specification to implementation).
Jadi, dapat disimpulkan sebuah sistem informasi erat kaitanya dengan analisa dan perancangan. Tentu ada ketentuan atau teori tentang pengembangan
sebuah
sistem
informasi.
bagaimana
membuat,
mengembangkan dan menjalankan sistem informasi yang baik. Pada perkembanganya, proses-proses standar dituangkan dalam satu metode yang dikenal dengan nama System Development Life Cycle (SDLC)yang merupakan metodologi umum dalam pengembangan sistem informasi yang menandai kemajuan usaha analisis dan desain. Dibawah akan dijelaskan lebih detail tentang pengembangan sistem informasi yang didalamnya terdapat SDLC.
9
1.2
Pengembangan Sistem Informasi Sebuah sistem informasi bisa dikatakan berjalan dengan baik jikadilaksanakan dan dikeloladengan baik. Di dalam sistem informasi, dikenal dengan istilah SDLC (System Developement Life Cycle). metodetersebutlah yang menjadi acuan untuk membangun dan mengelola sistem dengan baik.
2.2.1 Pengertian SDLC (Sistem Developement Life Cycle) System Development Life Cycle atau yang dikenal dengan sebutan SDLC adalah alat bantu proses yang digunakan oleh analisis sistem membangun dan mengembangkan sebuah sistem informasi (Rudy,2012:11). Ada beberapa model SDLC, model yang populer dan banyak digunakan adalah waterfall. Teori model ini juga dikemukakan dalam buku SoftwareEngineering karya Roger S.Pressman, yang menggambarkan proses pengembangan software mengikuti skema 'air terjun' atau disebut the waterfall
model.
Tujuannya
adalah
untuk
memudahkan
dalam
pengembangan sistem informasi menjadi lebih cermat, terstruktur dan mengikuti metode yang telah ditentukan secara terurut .Sebuah fase tidak bisa dikerjakan sebelum fase sebelumnya telah selesai dikerjakan.Metode ini sering digunakan karena sifatnya general dalam proyek manajemen.The Waterfall model ini pertama kali diperkenalkan oleh Winston W.Royee (1926 - 1995).
Kelebihan dari Waterfall Development Methodology adalah : • Merupakan model pengembangan paling handal dan paling lama digunakan • Meminimalisasi pengubahan sistem pada saat proses pengembangan perangkat lunak. • Cocok untuk sistem software berskala besar. • Cocok untuk sistem software yang bersifat umum. • Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol.
10
• Jadwal menjadi lebih menentu. Kekurangan dari Waterfall Development Methodology adalah : • Persyaratan sistem dan rincian proses harus digambarkan dengan sangat jelas dan sebaik mungkin tidak berubah-ubah. • Sulit untuk mengadaptasi jika terjadi perubahan spesifikasi pada suatu tahapan pengembangan. • Terjadi selisih waktu yang cukup lama antara pengajuan sistem dan pembaharuan sistem.
2.2.2 Perancangan SDLC (Model Waterfall) Menurut Hanif (2007:26), terdapat enam langkah fase dalam siklus SDLC. Jumlah langkah SDLC pada referensi lain mungkin berbeda, namun secara umum adalah sama. Berikut adalah Fase-fase yang digambarkan dalam metode waterfall sebagai berikut :
Identifikasi Seleksi Proyek Perencanaan Analisis Desain
Implementasi
Pemeliharaan
Gambar 2.2 : Fase-Fase SDLC (Hanif:2007)
11
2.2.2.1 Identifikasi dan Seleksi Proyek Merupakan langkah pertama dalam SDLC keseluruhan informasi yang akan dikembangkan, dalam tahapan ini ada beberapa hal yang harus dilakukan , diantaranya : 1. Mengidentifikasi proyek-proyek yang potensial . Potensi dari proyek yang dimaksud adalah seberapa besar keuntungan yang bisa diperoleh, durasi waktu yang tersedia apakah cukup dan masuk akal untuk menyelesaikan proyek, dan apakah sumber daya yang dimiliki mampu untuk menyelesaikan proyek. 2. Melakukan klasifikasi dan meranking proyek , Jika pada saat yang bersamaan ada beberapa proyek yang harus dikerjakan sekaligus maka perlu dibuat klasifikasi dan rangking proyek , dari proyek yang paling layak untuk dikerjakan sampai proyek yang dirasa tidak menguntungkan jika dikerjakan. 3. Memilih proyek untuk dikembangkan , Jika klasifikasi dan ranking telah ditetapkan maka selanjutnya adalah menentukan proyek yang harus dikerjakan Adapun sumber daya yang terlibat adalah pengguna, analisis sistem, dan manajer yang mengkoordinasi proyek. Aktifitas yang biasa dilakukan pada tahap ini meliputi mewawancarai manajemen pengguna, merangkum pengetahuan yang didapatkan, dan mengestimasi cakupan proyek dan mendokumentasikan hasilnya. Tahapan ini akan menghasilkan laporan kelayakan yang berisi definisi masalah dan rangkuman tujuan yang ingin dicapai dari proyek yang dipilih. 2.2.2.2 Perencanaan Proyek Dalam tahapan ini, menjelaskan dan mengargumentasi untuk melanjutkan proyek yang telah dipilih. Rencana kerja yang matang juga disusun untuk menjalankan tahapan-tahapan lainnya. Pada tahap ini
12
ditentukan secara detail rencana kerja yang harus dikerjakan, durasi yang diperlukan masing-masing tahap, sumber daya manusia, perangkat lunak,dokumentasi, perangkat keras, maupun estimasi financial. Biasanya hal-hal tadi dituangkan dalam jadwal pelaksanaan proyek.Pembuatan perencanaan ini bukan langkah mudah karena untuk mengestimasi beban kerja dan durasi dari masing-masing tahap dibutuhkan pengalaman yang cukup banyak. Kesalahan pada tahap ini akan mengakibatkan keuntungan yang diperoleh tidak maksimal, bahkan bisa rugi. Pada tahapan ini peran manajemen sistem informasi berpengalaman sangat dibutuhkan. 2.2.2.3 Tahapan Analisis Fase ketiga dalam SDLC adalah tahapan analisis.Analisis sistem didefinisikan sebagai bagaimana memahami dan menspesifikasi dengan detail apa yang harus dilakukan oleh sistem, sistem yang sedang berjalan dipelajari dan sistem pengganti diusulkan. Atau bisa diringkas sebagai berikut : • Analysis: mendefinisikan kejadian From requirement to specification Tujuan utama dari fase analisis adalah untuk memahami dan mendokumentasikan kebutuhan bisnis dan persyaratan proses dari sistem baru. Menganalisa kebutuhan sebagai bahan dalam membuat spesifikasi di tahapan selanjutnya. Adapun aktivitas utama adalam fase ini , sebagai berikut: 1. Pengumpulan informasi Langkah awal pada tahapan analisis adalah mengumpulkan informasi tentang bagaimana proses-proses bisnis yang ada pada sistem lama berjalan. Kemudian ditentukan pada titik-titik mana saja proses bisnis yang mengalami masalah yang bisa diselesaikan dengan sistem informasi. Kelemahan-kelemahan dari sistem lama diidentifikasi dan diperbaiki dengan sistem baru. 2. Mendefinisikan sistem requirement
13
Dari Informasi kelemahan sistem yang didapat, analisis sistem kemudian mendefinisikan apa saja sebenarnya yang dibutuhkan oleh sistem lama untuk mengatasi masalahnya. Inilah yang disebut sebagai system requirement (kebutuhan sistem). Seringkali kebutuhan ini akan mengubah total keseluruhan proses bisnis pada sistem lama, tetapi kadang-kadang hanya perubahan penambahan beberapa prosedur baru. 3. Memprioritaskan kebutuhan Dalam beberapa kasus, kebutuhan yang diperoleh sangat lengkap dan rumit. Ketersediaan waktu dan sumber daya lain untuk menyelesaikan keseluruhan kebutuhan bisa saja tidak mencukupi. Pada kondisi seperti ini maka analisis akan memprioritaskan kebutuhan-kebutuhan yang dianggap kritis untuk diprioritaskan . 4. Menyusun dan mengevaluasi alternatif Setelah menyusun dan memprioritaskan kebutuhan, analisis harus menyiapkan alternatif jika seandainya susunan kebutuhan nantinya akan ditolak olek manajemen. 5. Mengulas kebutuhan dengan pihak manajemen. Langkah terakhir adalah mengulas kebutuhan yang sudah ada dengan pihak klien.karena pihak klien lah yang paling tau kebutuhan sistem mereka.
2.2.2.4 Tahapan Desain Tahapan desain adalah tahapan mengubah kebutuhan yang masih berupa
konsep
menjadi
spesifikasi
sistem
yang
riil
untuk
diimplementasikan.Jika pada tahapan analisis (from requirement to specification).Maka
tahapan
desain
adalah
from
specification
to
implementation.Jadi, bagaimana membuat spesifikasi yang detail untuk bisa diimplementasikan.Tahapan desain sistem dapat dibagi menjadi 2 tahap, yaitu tahap desain logis dan tahapan desain fisik.adapun perbedaan dari keduanya dapat dijelaskan sebagai berikut:
14
•
Desain Logis Desain logis adalah bagian dari fase desain dalam SDLC dimana semua fitur-fitur fungsional dari sistem dipilih dari tahapan analisis dideskripsikan terpisah dari platform komputer yang nanti digunakan. Hasil dari tahapan ini adalah : a. Deskripsi fungsional mengenai data dan proses yang ada dalam sistem baru. b. Deskripsi yang detail dari spesifikasi sistem, meliputi : Input (data apa saja yang menjadi input). Output (informasi apa saja yang menjadi output). Proses (prosedur apa saja yang harus dieksekusi untuk mengubah input menjadi output). Tahapan desain logis biasanya menghasilkan beberapa dokumen,
diantaranya dokumen model data, dokumen model proses, rancangan tabel, hirarki antar modul, sampai desain antar muka dari sistem yang akan dibuat •
Desain Fisik Pada bagian ini, spesifikasi logis diubah ke dalam detail teknologi dimana pemrograman dan pengembangan sistem bisa diselesaikan.pada tahapan inilah aktifitas coding dilakukan. Adapun output dari sistem ini adalah : a. Deskripsi teknis, mengenai pilihan teknologi perangkat lunak dan perangkat keras yang digunakan. b. Deskripsi yang detail dari spesifikasi sistem meliputi : Modul-modul program File-file Sistem Jaringan Sistem perangkat lunak Pada tahapan desain, ada beberapa aktivitas utama yang dilakukan, yaitu : a. Merancang dan mengintegrasikan jaringan. b. Merancang arsitektur aplikasi
15
c. Mendesain antar muka pengguna. d. Mendesain dan mengintegrasikan database. e. Membuat prototype untuk detail dari desain . f. Mendesain dan mengintegrasikan kendali sistem. Dalam tahapan analisis dan desain, ada sebuah alat bantu yang memudahkan manajemen proyek untuk membuat skema perancangan, alat bantu tersebut adalah UML.
2.2.2.4.1 Pengertian UML (Unified Modelling Language) Didalam tahapan fase-fase SDLC, terdapat fase analisis dan fase desain .fase tersebut dapat dibentuk dalam sebuah gambaran dan dokumen yang dibuat menggunakan UML . UML singkatan dari Unified Modeling Language . UML Merupakan alat komunikasi yang konsisten dan standard dam mendukung para pengembang sistem saat ini (Prabowo, 2011:7). Sedangkan menurut (Rudy , 2012:149) menyebutkan dalam bukunya bahwa UML adalah bahasa spesifikasi standar untuk mendokumentasikan , menspesifikasikan dan membangun sistem software dari bahasa pemodelan berorientasi objek. Berdasarkan beberapa pendapat yang dikemukakan diatas dapat ditarik kesimpulan bahwa Unified Modeling Language (UML) adalah sebuah alat komunikasi bahasa yang berdasarkan diagram, deskripsi atau gambar untuk menvisualisasikan, menspesifikasikan, membangun dan pendokumentasian dari sebuah system pengembangan perangkat lunak berbasis orientasi objek yang standar. Pentingnya UML disinilah ada standarisasi pemodelan sistem. (Prabowo:2011) dalam bukunya berjudul Menggunakan UML menjelaskan bahwa sebelum ada UML, para pengembang bahasa sistem sulit untuk berkomunikasi satu sama lain, ada kira-kira 50 jenis notasi dan grafik yang menggambarkan bahasa pemrograman berorientasi objek pada waktu itu . dengan adanya UML, para pengembang sistem diharapkan melakukan standarisasi pemodelan sistem. Saat ini, versi UML yang digunakan adalah versi 2.0 yang
16
merupakan hasil dari pengembangan metode yang dikreasikan oleh Gardy Booch, Jim Raumbaugh dan Ivar Jacobson. Adapun tujuan pemodelan UML adalah sebagai sarana analisis, pemahaman, visualisasi dan komunikasi antar anggota tim pengembang agar lebih mudah dipelajari dan dipahami dalam pandangan pikir yang sama, serta sebagai sarana dokumentasi dalam pembangunan sistem (Adi Nugroho:2010). 2.2.2.4.2 Diagram-Diagram UML Beberapa
literature
menyebutkan
bahwa
UML
menyediakan
Sembilan jenis diagram. Namun kesembilan diagram ini tidak mutlak harus digunakan dalam pengembangan perangkat lunak, semuanya dibuat sesuai dengan kebutuhan. Diagram yang sering digunakan adalah DiagramUse case, Diagram Aktivitas(Activity Diagram), Diagram Sequence, Diagram Class. 2.2.2.4.2.1 Use case Diagram Use case diagram merupakan gambaran lengkap tentang interaksi yang terjadi antara actor dengan sistem/perangkat lunak yang sedang kita kembangkan secara tidak terperinci (Adi Nugroho:2009). Diagram ini memperlihatkan himpunan use casedan aktor-aktor.diagram ini terutama sangat penting untuk mengorganisasi dan memodelkan perilaku suatu sistem yang dibutuhkan serta diharapkan pengguna . membuatuse case diagram yang komprehensif merupakan hal yang sangat penting dilakukan pada tahap analisis. Dengan menggunakan use case diagram, kita akan mendapatkan banyak informasi yang berkaitan dengan apa yang terjadi dalam sistem/bisnis. Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Komponen pembentuk diagram use case adalah:
17
1.
Aktor (actor) , menggambarkan pihak-pihak yang berperan dalam sistem
2.
Use case, aktifitas / sarana yang disiapkan oleh bisnis / sistem .
3.
Hubungan (link) , aktor mana saja yang terlibat dalam use case, dan bagaimana hubungan use case dengan use case lain. Hubungan antar use case. Digolongkan menjadi dua: yaitu extend digambarkan dengan keterangan <<extend>>, dan include digambarkan
dengan
keterangan
<
>.
berikut
perbedaanya : Extend
Include Use caseterpanggil (included use case) selalu diperlukan oleh use
Use case ekstensi tidak selalu dibutuhkan oleh use casedasar
casedasar Yang
memutuskan
kapan
dipanggilnya use case included
Yang
memutuskan
dipanggilnya
use
case
kapan extend
adalah use case extend itu sendiri
adalah use casedasar Panah hubungan dari use casedasar
Panah hubungan dari use case extend ke use casedasar
ke use case include
Tabel2.1 : Perbedaan include dan extendpadause case (Prabowo:2011) Terdapat juga relasi yang berhubungan dengan aktor, antara lain : Relasi Asosiasi
Fungsi Lintasan komunikasi antara aktor dengan use case
Generalisasi
Menghubungkan antara aktor/use case yang bersifat umum dengan yang bersifat spesifik. Tabel 2.2 : Hubungan RelasiUse Case (Adi Nugroho:2010)
Notasi
18
Use case biasanya disertai dengan penjelesan narasi yang dirangkum dalam tabel yaitu disebut Use case Description. Use case Description merupakan tabel yang digunakan untuk membuat dan menjelaskan keterangan terperinci mengenai tiap tiap use case. Terdapat istilah pre condition dan post condition, fungsinya adalah memberikan informasi penting mengenai keadaan sistem sebelum dan sesudah use case. Hal ini dapat dilakukan dengan memberikan penjelasan singkat atau dapat pula berupa nama Use-case.
Gambar 2.3: Contoh Use case (Sumber: Prabowo, Menggunakan UML, 2011)
Nama Use case
Pesan Tiket
Aktor
Pelanggan
Deskripsi
Menggambarkan pemesanan tiket
Pre Condition
Pelanggan harus sudah mempunyai data kapan dia berangkat, di kelas apa dan di kursi nomor berapa
19
Tindakan
Melakukan pemesanan tiket, mengisi data pribadi lalu submit.
Post Condition
Mengetahui no pemesanan tiket, beserta data tentang jadwal, kelas dan kursi . Tabel2.3 :Use Case Description
2.2.2.4.2.2 Activity Diagram Sudah dijelaskan diatas bahwa use case merupakan gambaran umum yang tidak terperinci. Oleh karena itu, kita harus memperinci lagi perilaku sistem untuk masing-masing use case yang ada. kita bisa menggunakan yang namanya activity diagram agar bisa mendapatkan gambaran yang lebih menyeluruh. Diagram
ini
memperlihatkan
aliaran dari suatu aktifitas ke aktifitas lainnya dalam suatu sistem. Diagram ini terutama penting dalam pemodelan fungsi-fungsi dalam suatu sistem dan memberi tekanan pada aliran kendali antar objek.
Gambar2.4 : ActivityDiagram (Adi Nugroho:2010)
20
Tabel 2.3: Komponen Activity Diagram (Adi Nugroho:2010) 2.2.4.2.3 Sequence Diagram Diagram ini memperlihatkan interaksi yang menekankan pada urutan pertukaran pesan/data dalam suatu waktu tertentu yang dilakukan oleh sekumpulan objek atau aktor yang mengerjakan pekerjaan (Prabowo:2011) . Sequence diagram biasanya tersusun dari elemen obyek, interaction dan message. Interaction menghubungkan 2 obyek dengan pesannya. Diagram ini menjelaskan aspek dinamis dari sistem yang sedang dibangun.Untuk satu use case bisa dibuat beberapa sequence diagram, karena satu use case biasanya terdiri dari beberapa aktivitas yang harus dilakukan dan masing-masing aktivitas ini bisa direpresentasikan dalam satu sequence diagram.
21
Gambar 2.5: Contoh Sequence Diagram (Sumber: Ghinwa, UML By Example ,2004) Berikut merupakan komponen utama dalam sequence diagram :
Gambar 2.6: Komponen Sequence Diagram
22
2.2.4.2.4 Class Diagram Langkah selanjutnya adalah menentukan metode-metode yang akan terlibat dalam suatu kelas tertentu.Berfungsi juga sebagai suatu dasar yang kuat dalam implementasi ke dalam sistem komputerisasi. Diagram ini memperlihatkan himpunan kelas-kelas dan objek. Objek adalah entitas yang memiliki atribut(anggota komponen objek), karakter/sifat (behaviour) dan kondisi. contoh: Siswa, Negara, Kota. Sedangkan Kelas adalah penggambaran satu set objek yang memiliki atribut dan behavior yang sama. (Prabowo:2011). Komponen class diagram :
Gambar 2.7 : Komponen Class Diagram
Gambar 2.8 : Kelas Diagram Sederhana (Adi Nugroho, 2009)
23
Untuk atribut, kita bisa menentukan yang secara akal sehat bisa menempel pada kelas tersebut. Sedangkan metode, bisa berasumsi yang didapat dari sequence diagram.
2.3
Perancangan Basis Data 2.3.1 Definisi Basis Data Basis Data terdiri dari 2 kata, yaitu Basis dan Data. Basis kurang lebih dapat diartikan sebagai markas atau gudang, tempat bersarang/berkumpul. Sedangkan Data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelangan), barang hewan, peristiwa, konsep, keadaan, dan sebagainya, yang diwujudkan dalam bentuk angka, huruf , simbol, teks, gambar, bunyi, atau kombinasinya. Jadi Database bisa disimpulkan yaitu sekumpulan file data yang saling berhubungan dan diorganisasi sedemikian rupa sehingga data-data tersebut dapat diakses dengan mudah dan cepat, dan diproses menjadi sebuah informasi yang lebih bermanfaat. (Wahana Komputer, 2008). Dalam database, data yang ada tidak hanya disimpan begitu saja dalam sebuah media penyimpanan, tetapi dikelola dan diolah oleh sebuah sistem database yang disebut Database Management System (DBMS). Dengan demikian, data yang begitu besar dan kompleks dapat tersusun dengan rapi dan terstruktur sehingga memberikan kemudahan dan kecepatan. Sebuah DBMS menyediakan bahasa untuk mendefinisikan basis data DDL (Data Defintion Language) serta bahasa untuk memanipulasi basis data, DML (Data Manipulation Language). Saat ini keduanya merupakan bagian dari bahasa basis data tunggal yang disebut Structured Query Language (SQL) yang merupakan bahasa basis data standar. 1.
Data Definition Language (DDL) yang memungkinkan user menentukan basis data, misalnya jenis data, struktur data, dan batasan-batasan pada data yang hendak disimpan dalam basis data.
2.
Data Manipulation Language (DML) yang memungkinkan user untuk mengolah data seperti memasukkan, mengubah, menghapus dan menerima data dari basis data.
24
Adapun istilah RDBMS (Relational Database Management System). RDBMS merupakan sekumpulan data yang saling berhubungan sehingga menjadi sebuah informasi yang bermanfaat bagi pengguna.
2.3.2 Komponen Basis Data Terdapat tingkatan data pada struktur database, meliputi :
Gambar 2.9 : Tingkatan data pada database (Wahana Komputer: 2008)
1.
Tabel, sering disebut entitas atau entity. Entity adalah benda atau objek pada dunia nyata yang dapat dibedakan dari objek lain. Tabel terdiri atas record-record yang menggambarkan kesatuan data-data yang sejenis.
2.
Record, merupakan kumpulan field yang membentuk suatu record atau baris. satu record menggambarkan informasi tentang individu tertentu.
3.
Field/kolom, merupakan atribut dari record yang menunjukkan suatu value / item data. Kumpulan field yang membentuk suatu record harus diberi nama untuk membedakan antara field satu dengan yang
25
lain. Syarat-syarat pembentukan Field Name pada tabel : a. Harus Unik atau Spesifik. b. Boleh disingkat. c. Pemisah sebagai pengganti spasi dalam pembentuk field adalah tanda lambang "_". 4.
Value, jenjang terkecil yang merupakan isi dari field yang dapat berupa karakter, huruf, dan angka. Value dapat juga disebut data yang tersimpan dalam setiap field / kolom.
Dibawah ini adalah gambar yang menunjukkan struktur tabel: Nama tabel : barang
Gambar 2.10 : Struktur Tabel (WahanaKomputer, 2008) Selain istilah-istilah tersebut, terdapat istilah-istilah lain yang berhubungan dengan perancangan database . 1.
Primary key (Kunci primer) yaitu field yang mewakili field lainnya dalam sebuah tabel. Primary key hanya dibentuk dari data yang unik dan harus berbeda atau tidak boleh kembar.
2.
Foreign key (kunci tamu) yaitu sebua kunci yang berasal dari tabel lain. Kunci ini digunakan untuk merelasikan sebuah tabel dengan tabel lain. tabel-tabel yang berelasi disebut relational.
26
2.4
Perangkat Pendukung Sistem 2.4.1 Web Server Web server adalah sebuah perangkat lunak server yang berfungsi menerima permintaan HTTP atau HTTPS dari klien yang dikenal dengan web browser dan mengirimkan kembali hasilnya dalam bentuk halamanhalaman web yang umumnya berbentuk dokumen HTML. Dalam perancangan ini web server yang digunakan adalah XAMPP, XAMPP adalah sebuah perangkat lunak web server open source yang sudah lengkap menjadi satu paket yang terdiri dari Aphace HTTP server, Database MySQL dan interpreter untuk script PHP, sehingga memudahkan programer untuk membangun sebuah aplikasi yang berbasis web.
2.4.2 MySQL MySQL adalah salah satuRDBMS (Relational Database Management System) yang dapat mengelola dan menyimpan database. Selain bisa dijalankan
dengan
menggunakan
command
prompt
MySQL
juga
menyediakan fasilitas GUI (Graphical User Interface) dalam bentuk web sehingga memudahkan dalam proses pembangunan sebuah database.
2.4.3 PHP Framework Codeigniter Codeigniter adalah sebuah open source framework untuk membuat website bersifat dinamis dengan bahasa pemrograman PHP. Dalam dunia pemrograman OOP (Object Oriented Programming), framework merupakan sekumpulan kode berupa kelas dan fungsi yang siap digunakan. Jadi, ini bukanlah sebuah bahasa pemrograman baru. Codeigniter dibangun menggunakan PHP yang memiliki serangkaian fungsi dan kelas yang memudahkan kita dalam membangun aplikasi web secara mudah, cepat, dan terstruktur.
2.4.3.1 OOP (Object Oriented Programming) Konsep OOP cukup sederhana, yaitu agar memudahkan kita menggunakan kembali fungsi bagian program tertentu di bagian program yang lain tanpa harus mengetik ulang algoritmanya.
27
2.4.3.2 Konsep MVC (Model-View-Controller) Codeigniter
menggunakan
pola
MVC
(Model-View-
Controller)dalam penyusunan modul program. MVC merupakan pendekatan pengembangan perangkat lunak yang memisahkan logika aplikasi dan tampilan antar muka pengguna (Upton, 2007: Chapter 3). Dibawah ini adalah penjelasan mengenai konsep MVC: 1.
Model, merepresentasikan struktur data. Biasanya kelas dalam model mengandung berbagai macam fungsi yang berguna memperoleh, memasukkan, dan mengubah data dalam basis data.
2.
View, menampilkan antar muka yang akan diakses oleh pengguna. View dapat berupa halaman penuh website, atau sebagian dari halaman website seperti header dan footer.
3.
Controller, berada diantara model dan view dalam topologi MVC. Dapat berupa logika program, pendefinisian variable global, atau navigasi menuju halaman/view lain.
2.4.4 Notepad ++ Hampir bisa dipastikan semua pengguna sistem operasi Windows mengenal aplikasi pengolah teks yang bernama Notepad. Aplikasi ini memiliki banyak keterbatasan terutama dalam menuliskan bahasa pemrograman. Notepad++ bukanlah versi baru dari Notepad, melainkan aplikasi thirdparty yang terpisah dan dapat diunduh secara gratis di internet. Aplikasi ini cukup ringan dan sangat membantu dalam menuliskan kode program, serta memiliki serangkaian plugin yang siap digunakan.
Dukungan Bahasa Pemrograman Notepad++ sudah mendukung beberapa model penulisan bahasa pemrograman antara lain ASP, PHP, C, C++, C#, HTML, COBOL, Visual Basic, Java, Javascript, JSP, Phyton, Perl, Pascal.
28
2.4.5 Web Browser Web Browser adalah sebuah program atau aplikasi yang digunakan untuk melintasi, mengambil dan menyajikan sumber informasi di Word Wide Web (www). Sumber informasi diidentifikasi dengan Uniform Resource Identifier (URI). Termasuk sebuah halaman web, gambar, video atau bagian lain dari konten web.
2.5
Tahapan Implementasi Pada tahapan yang kelima dari SDLC terdapat beberapa hal yang perlu
dilakukan, yaitu : 2.5.1 Testing Yaitu menguji hasil kode program yang telah dihasilkan dari tahapan desain fisik. Tujuan pengujian ada dua. Dari sisi pengembang sistem, harus dijamin kode program yang dibuat bebas dari kesalahan sintaks maupun logika. Dari sisi pengguna, program yang dihasilkan harus mampu menyelesaikan masalah yang ada pada klien dan sistem baru harus mudah dijalankan dan dipahami oleh pengguna akhir. Terdapat dua teknik pengujian berdasarkan ketersediaan logik sistem, yaitu black box testing dan white box testing. 1.
Black Box Testing Konsep kotak hitam digunakan untuk merepresentasikan sistem yang cara kerja didalamnya tidak tersedia untuk diinspeksi. Di dalam kotak hitam, item-item yang diuji dianggap gelap karena logiknya tidak diketahui, yang diketahui hanya apa yang masuk dan apa yang keluar dari kotak hitam. Pada pengujian ini, dicoba beragam masukan dan memeriksa keluaran yang dihasilkan. Kasus-kasus pengujian berdasarkan pada spesifikasi sistem. Rencana pengujian dapat dimulai sedini mungkin diproses pengembangan perangkat lunak. Teori pengujian black box juga dapat digunakan untuk pengujian berbasis skenario, dimana isi dalam sistem mungkin tidak tersedia untuk diinspeksi
29
tapi masukan dan keluaran yang didefinisikan dengan use case dan informasi analisis yang lain. 2.
White Box Testing Pengujian white box mengasumsikan bahwa logik spesifik adalah penting dan harus diuji untuk menjamin sistem melakukan fungsi dengan benar. Penggunaan utama adalah pengujian berbasis kesalahan ketika siap menguji semua objek di aplikasi dan semua metode eksternal atau publik dari objek. Pengujian ini juga disebut pengujian struktur (structural testing). Penurunan kasus-kasus
pengujian
berdasarkan
struktur
program.
Pengetahuan
mengenai program digunakan untuk identifikasi kasus-kasus pengujian. Sasaran dari pengujian ini adalah memeriksa semua pernyataan program. Teknik pengujian white box antara lain : 1.
Basis path testing Metode ini melakukan pencarian ukuran kompleksitas perancangan prosedur dan menggunakannya untuk mendefinisikan sekumpulan jalur eksekusi dasar. Kasus uji diturunkan dari himpunan basis yang dijamin mengeksekusi seluruh pernyataan di program setidaknya satu kali selama pengujian.
2.
Control structure testing Terdapat beragam control structure testing, yaitu Condition testing, Data flow testing&Loop testing
2.5.2 Instalasi (Pemasangan) Setelah program lulus ujicoba, maka perangkat lunak dan perangkat keras akan diinstal pada organisasi atau perusahaan klien dan secara resmi mulai digunakan untuk menggantikan sistem lama. Setelah pemasangan selesaipun, dilakukan pengujian menyeluruh terhapad sistem yang diimplementasikan, apakah berjalan dengan baik atau tidak. Namun dalam aplikasi yang berbasis web seperti yang penulis rancang ini, proses instalasi program hanya dilakukan pada server website yang nantinya
30
user/client hanya mengakses alamat website tersebut untuk menjalankan program.
2.5
Tahapan Pemeliharaan Langkah terakhir dari SDLC adalah tahap pemeliharaan, dimana pada
tahapan ini sistem secara sistematis diperbaiki dan ditingkatkan agar sistem tetap bisa berjalan dengan baik sesuai kebutuhan dengan maksimal. Adapun hal-hal yang terkandung di dalam tahapan pemeliharaan yaitu sebagai berikut : 2.6.1 Conduct post-implementation system review Mengidentifikasi kelayakan sistem yang akan digunakan agar mendapatkan nilai yang maksimal dari sistem yang baru.
2.6.2 Indentify errors and enhancements Mengidentifikasi kesalahan dan Dukungan pengguna tambahan disediakan, sebagai kegiatan yang sedang berlangsung, untuk membantu menyelesaikan masalah yang dilaporkan.
2.6.3 Monitor system perfomence Memonitor sistem ialah menyesuaikan dan meningkatkan sistem dengan cara melakukan audit dan evaluasi secara periode dan dengan membuat
perubahan
berdasarkan
kondisi-kondisi
baru.Meskipun
pengonversian sudah lengkap, bahkan pengguna sudah dilatih, sistem tidak bisa berjalan dengan sendirinya.Inilah tahap dimana system harus dimonitor untuk memastikan bahwa sistem itu berhasil. Pemeliharaan tidak hanya menjaga agar mesin tetap berjalan, namun juga meng-upgrade dan mengupdate sistem agar bisa mengikuti perkembangan produk, jasa, layanan, peraturan pemerintah, dan ketentuan lain yang baru.Perbaikan yang dilakukan tingakatannya bisa sangat variatif, mulai dari memperbaiki program yang crash hingga befungsi kembali sampai pada penambahan
31
modul-modul program yang baru sebagai jawaban atas perubahan kebutuhan pengguna.
2.6
Pembahasan Bisnis Dalam Sistem Perancangan 2.7.1 Pengertian Asuransi Asuransi adalah suatu kemauan untuk menetapkan kerguian-kerugian kecil (sedikit) yang sudah pasti sebagai pengganti (substitusi) kerugiankerugian besar yang belum pasti (Abbas: 2007). Dari pengertian diatas dapat disimpulkan bahwa dengan bersedia membayar sedikit kerugian dimasa sekarang, maka dapat mecegah kerugian yang besar dimasa yang akan datang, karena risiko kerugian besar yang mungkin terjadi dimasa akan datang tersebut sudah kita pindahkan ke perusahaan asuransi.
2.7.2 Risiko, Penanggung dan Tertanggung. Risiko adalah ketidaktentuan atau uncertainty yang mungkin melahirkan kerugian (Abbas: 2007). Tertanggung adalah orang atau individu atau badan hukum yang memiliki
kepentingan
keuangan
terhadap
barang/properti
yang
dipertanggungkan sehingga ia memiliki hak untuk membeli proteksi asuransi. Penanggung adalah badan hukum yang menerima limpahan resiko tertanggung atau biasa disebut perusahaan asuransi. Adapun Pihak ketiga, adalah semua pihak diluar pihak tertanggung dan penanggung.
2.7.3 Jenis-jenis Asuransi Beberapa jenis-jenis asuransi yang ada di Negara kita yaitu sebagai berikut:
32
Asuransi Kerugian (asuransi umum), adalah asuransi yang melindungi terhadap hak milik, kebakaran, dan lain-lain. 1) Asuransi Varia (Marine Insurance), adalah asuransi kecelakaan, asuransi mobil dan pencurian. 2) Asuransi Jiwa (Life Insurance), adalah asuransi yang menyangkut kematian, sakit, cacat, dan lain-lain. Adapun jenis-jenis asuransi yang digunakan oleh PT. Astra Daihatsu Motor adalah sebagai berikut: 1) Porperty All Risk Property All Risk adalah asuransi yang menjamin kerusakan atau kerugian pada harta benda akibat kebakaran, bencana alam, kerusuhan atau kerusakan lainnya yang timbul dari suatu incidentyang terjadi secara tibatiba dan tidak diduga.
2) Bussiness Interuption Merupakan perluasan jaminan dari Property All Risk yang menjamin resiko atas kerugian financial yang diakibatkan karena terhentinya aktifitas perusahaan setelah terjadinya kerusakan atau kerugian pada harta benda akibat kebakaran, bencana alam, kerusuhan atau kerusakan lainnya pada obyek yang dipertanggungkan dengan syarat polis utama (Property All Risk) dapat menjamin risiko yang dimaksud.
3) Marine Cargo Insurance Marine Cargo Insurance menjamin kerugian atas kehilangan atau kerusakan barang-barang selama pengangkutan melalui transportasi di air/darat/udara. Beberapa jenis Marine Cargo Insurance yang dikenal adalah marine cargo inland, marine cargo Import dan marine cargo Export.
4) Motor Vehicle Asuransi Kendaraan bermotor memberikan jaminan ganti rugi atas kerusakan/kerugian partial atau total loss yang dialami kendaraan bermotor
33
akibat tabrakan, huru hara, kerusuhan, perbuatan jahat, kebakaran, sambaran petir, bencana alam dan tanggung jawab hukum kepada pihak ketiga.
5) Money Insurance Memberikan perlindungan bagi tertanggung atas kerugian keuangan yang terjadi akibat pembongkaran, perampokan, pencurian, yang dilakukan oleh pihak luar yang disertai dengan kekerasan atas uang yang tersimpan di brankas atau uang dalam perjalanan.
6) Product Liability Menjamin
tuntutan
hukum
dari
konsumen
terhadap
produk
perusahaan yang mengakibatkan kerugian berupa kerusakan atau kerugian harta benda dan cidera badan atau kematian atas penggunaan produk tersebut, akibat kesalahan dari proses produksi, (Product recall tidak dijamin dalam asuransi ini).
7) Comprehensive General Liability Menjamin tuntutan hukum dari pihak ketiga atas kelalaian yang dilakukan oleh pihak tertanggung ketika sedang melakukan kegiatan usahanya, yang mengakibatkan pihak ketiga mengalami cedera tubuh dan/atau kerusakan/kerugian terhadap barang miliknya.
8) Director & Officer Liability Menjamin direktur, pejabat dalam pengambilan keputusan terhadap tuntutan pihak ketiga akibat suatu tindakan melawan hukum.
2.7.4 Proses Klaim Asuransi Proses klaim asuransi dilakukan jika terjadi Incident/kejadian yang mengakibatkan kerusakan asset milik perusahaan, proses klaim yang dilakukan yaitu sebagai berikut:
1. Pembuatan berita acara kerjadian (Incident Report)
34
Proses pembuatan berita acara kejadian dilakukan oleh PIC asuransi yang berada di area masing-masing. Data-data yang tercantum dalam Incident Report adalah sebagai berikut: a. Tanggal dan tempat kejadian, driver, saksi. b. Kronologi kejadian. c. Barang-barang yang rusak akibat kejadian. d. Foto kejadian.
2. Pengecekan kualitas barang Proses pengecekan kualitas barang di lakukan oleh Quality Departemen, jika hasil pengecekan barang adalah NG (Not Good)atau barang tersebut rusak, maka barang tersebut harus diklaim ke perusahaan asuransi. Akan tetapi jika barang tersebut OK (masih baik) maka kita tidak dilakukan klaim ke perusahaan asuransi. Prosedur pengecekan kualitas barang dinilai dari beberapa point diantaranya yaitu: a. Kondisi fisik (Penyok, Baret dan Karat) b. Fungsi (Kelistrikan dan Mekanik)
3. Pembuatan surat klaim (Claim Note) Proses pembuatan surat klaim dilakukan oleh admin asuransi, proses ini dilakukan jika barang-barang yang terjadi dalam incident dinyatakan NG oleh quality departemen dan menerima incident report dari PIC. Data yang ada dalam surat klaim adalah sebagai berikut: c. Data perusahaan asuransi yang dituju d. Polis asuransi. e. Rangkuman barang yang akan diklaim, beserta besarnya jumlah klaim. f. Data bank untuk penerimaan dana pembayaran klaim dari perusahaan asuransi.
4. Pembayaran klaim
35
Proses pembayaran klaim dilakukan oleh perusahaan asuransi, jika proses yang disebutkan diatas sudah dilakukan dengan tuntas dan semua dokumen yang dibutuhkan sudah lengkap.
Dibawah ini adalah gambaran dari proses klaim asuransi yang dilakukan oleh PT. Astra Daihatsu Motor :
Gambar 2.11 : Proses Klaim Asuransi