BAB II LANDASAN TEORI 2.1 Konsep Dasar Data Istilah data dan informasi sering digunakan secara bergantian, ada yang menyebut data sebagai informasi dan sebaliknya. Menurut Gordon B. Davis yang dimuat dalam buku [Tata Sutabri, 2012: 1], yang menjelaskan hubungan antara data dan informasi, informasi adalah data yang telah diproses ke dalam suatu bentuk yang mempunyai arti bagi si penerima dan mempunyai nilai nyata dan terasa bagi keputusan saat itu atau keputusan mendatang. Definisi data adalah bahan mentah yang diproses untuk menyajikan informasi [Tata Sutabri, 2012: 2]. Penyimpanan Data Data Informasi Proses Gambar 2.1 Pemrosesan Data Menurut Drs. Jhon J. Logkutoy [Tata Sutabri, 2012: 2], istilah data adalah suatu istilah majemuk yang berarti fakta atau bagian dari fakta yang mengandung arti yang dihubungkan dengan kenyataan, simbol-simbol, gambar-gambar, angkaangka, huruf-huruf, atau simbol-simbol yang menunjukkan suatu ide, objek, kondisi atau situasi dan lain-lain. Jelasnya, data itu bias berupa apa saja yang dapat ditemui dimana saja. Kegunaan data adalah sebagai bahan dasar yang 6 7 objektif (relatif) di dalam proses kebijaksanaan dan keputusan oleh pihak pimpinan organisasi. 2.1.1 Klasifikasi Data Menurut The Liang Gie [Tata Sutabri, 2012: 3], data adalah hal, peristiwa, atau kenyataan lain apapun yang mengandung sesuatu pengetahuan untuk dijadikan dasar guna penyusunan keterangan, pembuatan kesimpulan, atau penetapan keputusan. Data dapat diklasifikasikan menjadi tiga, yaitu : 1. Klasifikasi data menurut jenis data a. Data hitung (enumeration/counting data) adalah hasil perhitungan atau jumlah tertentu. Yang termasuk data hitung adalah persentase dari suatu jumlah tertentu. b. Data ukur (measurement data) adalah data yang menunjukkan ukuran mengenai nilai sesuatu. 2. Klasifikasi data menurut sifat data a. Data kuantitatif (quantitative data) adalah data mengenai penggolongan dalam hubungannya dengan penjumlahan. b. Data kualitatif (qualitative data) adalah data mengenai penggolongan dalam hubungannya dengan kualitas atau sifat tertentu. 3. Klasifikasi data menurut sumber data a. Data internal (internal data) adalah data yang asli, artinya data sebagai hasil observasi yang dilakukan sendiri, bukan data hasil karya orang lain. b. Data eksternal (external data) adalah data hasil observasi orang lain. Seseorang boleh saja menggunakan data untuk suatu keperluan, meskipun data tersebut hasil kerja orang lain. Data eksternal ini terdiri dari dua jenis, yaitu : 8 1) Data eksternal primer (primary external data) adalah data dalam bentuk ucapan lisan atau tulisan dari pemiliknya sendiri, yakni orang yang melakukan observasi sendiri. 2) Data eksternal sekunder (secondary external data) adalah data yang diperoleh bukan dari orang lain yang melakukan observasi melainkan melalui seseorang atau sejumlah orang lain. 2.1.2 Pengolahan Data Data merupakan bahan mentah untuk diolah yang hasilnya kemudian menjadi informasi. Pengolahan data terdiri dari kegiatan-kegiatan seperti : 1. Penyimpanan data (data storage) Penyimpanan data meliput pekerjaan pengumpulan (filling), pencarian (searcing) dan pemeliharaan (maintenance). Sistem yang umum dalam penyimpanan data (filling) ialah berdasarkan lembaga, perorangan, produksi atau lain-lainnya. Untuk memperoleh dalam pencarian data (searcing) di dalam file maka file dibagi menjadi dua jenis, yaitu : a. File induk (master file) yaitu berisi data-data permanent yang biasanya hanya dibentuk satu kali saja dan kemudian digunakan untuk pengolahan data selanjutnya. Contoh : file kepegawaian, file gaji. b. File transaksi (detail file) yaitu berisi data-data temporer untuk suatu periode atau suatu bidang kegiatan atau suatu periode yang dihubungkan dengan suatu bidang kegiata. Contoh : file lembur perminggu, file mutasi harian. Pemeliharaan file (file maintenance) meliputi peremajaan data (data updating), yaitu kegiatan menambah catatan baru pada suatu data, mengadakan perbaikan, dan lain sebagainya. 2. Penanganan data (data handling) Penanganan data meliputi berbagai kegiatan seperti : 9 a. Pemeriksaan (verifying) mencangkup pengecekan data yang muncul pada berbagai daftar yan berkaitan atau yang dating dari berbagai sumber. b. Perbandingan (comparing) untuk mengetahui berbagai sumber dan untuk mengetahui perbedaan atau ketidaksesuaian. c. Pemeliharaan (sorting) dalam rangka kegiatan penanganan data mencangkup peraturan ke dalam suatu urutan yang teratur. d. Peringkasan (extracting) merupakan kegiatan lain dalam penanganan data. e. Pengunaan data (data manipulation) merupakan kegiatan untuk menghasilkan informasi. Kegiatan ini meliputi komplikasi table-tabel, statistik, ramalan mengenai perkembangan dan lain sebagainya. 2.2 Konsep Dasar Sistem 2.2.1 Pengertian Sistem Suatu sistem dapat diartikan sebagai suatu kumpulan atau himpunan dari unsur, komponen atau variabel yang terorganisir, saling berinteraksi, saling tergantung satu sama lain dan terpadu [Tata Sutabri, 2012: 10]. Teori sistem melahirkan konsep-konsep futuristik. Salah satu konsep yang terkenal adalah konsep sibernetika (cybernetics). Konsep bidang kajian ilmiah ini terutama berkaitan dengan upaya menerapkan berbagai disiplin ilmu, yaitu ilmu perilaku, fisika, biologi dan teknik. Oleh karena itu, sibernetika biasanya berkaitan dengan usaha-usaha otomasi tugas-tugas yang dilakukan oleh manusia sehingga melahirkan studi tentang robotika, kecerdasan buatan (artificaial intelegance) dan lain adalah masukan (input), pengolahan dan keluaran (output). 10 2.2.2 Karakteristik Sistem Sebuah sistem mempunyai karakteristik atau sifat-sifat tertentu yang mencirikan bahwa hal tersebut bias dikatakan seagai suatu sistem. Adapun karakteristik yang dimaksud adalah sebagai berikut: 1. Komponen Sistem (Components) Suatu sistem terdiri dari sejumlah komponen yang saling berinteraksi, artinya saling bekerja sama membentuk satu kesatuan. Komponenkomponen sistem tersebut dapat berupa suatu bentuk subsistem. Setiap subsistem memiliki sifat dari sistem yang menjalankan suatu fungsi tertentu dan mempengaruhi proses sistem secara keseluruhan. 2. Batasan Sistem (Boundary) Ruang lingkup sistem merupakan daerah yang membatasi antara sistem dengan sistem yang lain atau sistem dengan lingkungan luarnya. Batasan sistem ini memungkinkan suatu sistem dipandang sebagai satu kesatuan yang tidak dapat dipisahkan. 3. Lingkungan Luar Sistem (Environtment) Bentuk apapun yang ada di luar ruang lingkup atau batasan sistem yang mempengaruhi operasi sistem tersebut disebut lingkungan luar sistem. Lingkungan luar sistem ini dapat bersifat menguntungkan dan dapat juga bersifat merugikan sistem tersebut. 4. Penghubung Sistem (Interface) Media yang menghubungkan sistem dengan subsistem lain disebut penghubung sistem atau interface. Penghubung ini memungkinkan sumber-sumber daya mengalir dari satu subsistem ke subsistem lain. Bentuk keluaran dari satu subsistem akan menjadi masukan untuk subsistem lain melalui penghubung tersebut. Dengan demikian, dapat terjadi suatu integrasi sistem yang membentuk satu kesatuan. 5. Masukan Sistem (Input) Energi yang dimasukkan ke dalam sistem disebut masukan sistem, yang dapat berupa pemeliharaan (maintenance input) dan sinyal (signal input). Contoh, di dalam suatu unit sistem kompuer, “program” adalah 11 maintenance input yang digunakan untuk mengoperasikan komputernya dan “data” adalah signal input untuk diolah menjadi informasi. 6. Keluaran Sistem (Output) Hasil energi yang diolah dan diklasifikasikan menjadi keluaran yang berguna. Keluaran ini merupakan masukan bagi subsistem yang lain seperti sistem informasi. Keluaran yang dihasilkan adalah informasi. 7. Pengolah Sistem (Proses) Suatu sistem dapat mempunyai suatu proses yang akan megubah masukan manjadi keluaran, contohnya adalah sstem akuntansi. Sistem ini akan mengolah data transaksi menjadi laporan-laporan yang dibutuhkan oleh pihak manajemen. 8. Sasaran Sistem (Objective) Suatu sistem memiliki tujuan dan sasaran yang pasti dan bersifat deterministic. Kalau suatu sistem tidak memiliki sasaran maka operasi sistem tidak ada gunanya. Suatu sistem dikatakan berhasil bila mengenai sasaran atau tujuan yang telah direncanakan. 2.2.3 Klasifikasi Sistem Sistem merupakan suatu bentuk integrasi antara satu komponen dengan komponen lain karena sistem memiliki sasaran yang berbeda untuk setiap kasus yang terjadi yang ada di dalam sistem tersebut. Oleh karena itu, sistem dapat diklasifikasikan dari beberapa sudut pandang, di antaranya: 1. Sistem abstrak dan sistem fisik Sistem abstrak adalah sistem yang berupa pemikiran atau ide-ide yang tidak tampak secara fiisik. Sedangkan sistem fisik merupakan sistem yang ada secara fisik. 2. Sistem alamiah dan sistem buatan manusia Sistem alamiah adalah sistem yang terjadi mellaui proses alam, tidak dibuat oleh manusia. Sedangkan sistem buatan manusia merupakan sistem yang melibatkan interaksi manusia dengan mesin yang disebut human machine sistem. 12 3. Sistem determinasi dan sistem probabilistik Sistem yang beroperasi dengan tingkah laku yang dapat diprediksi disebut sistem deterministic. Sedangkan sistem bersifat probabilistik adalah sistem yang kondisi masa depannya tidak dapat diprediksi karena mengandung unsur probabilistic. 4. Sistem terbuka dan sistem tertutup Sistem tertutup merupakan sistem yang tidak berhubungan dan tidak terpengaruh oleh lingkungan luarnya. Sedangkan sistem terbuka adalah sistem yang berhubungan dan dipengaruhi oleh lingkungan luarnya. 2.3 Konsep Dasar Informasi 2.3.1 Pengertian Informasi Informasi adalah data yang telah diklasifikasi atau diinterpretasi untuk digunakandalam proses pengambilan keputusan [Tata Sutabri, 2012: 29]. Sistem pengolahan informasi mengolah data menjadi informasi atau tepatnya mengolah data dari bentuk tak berguna menjadi berguna bagi penerimanya. 2.3.2 Kualitas Informasi Kualitas suatu informasi tergantung dari tiga hal, yaitu : 1. Akurat (accurate) Informasi harus bebas dari kesalahan-kesalahan dan tidak menyesatkan. Akurat juga berarti informasi harus jelas mencerminkan maksudnya. 2. Tepat waktu (timeline) Informasi yang dating pada si penerima tidak boleh terlambat. Informasi yang sudah usang tidak akan mempunyai nilai lagi karena informasi merupakan landasan dalam pengambilan keputusan. 3. Relevan (relevance) 13 Informasi tersebut mempunyai manfaat untuk pemakainya. Relevansi informasi untuk orang satu dengan yang lain berbeda. 2.4 Konsep Dasar Sistem Informasi 2.4.1 Pengertian Sistem Informasi Sistem Informasi adalah suatu sistem di dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian yang mendukung fungsi operasi organisasi yang bersifat manajerial dengan kegiatan strategi dari suatu organisasi untuk dapat menyediakan kepada pihak luar tertentu dengan laporanlaporan yang diperlukan. [Tata Sutabri, 2012: 46]. 2.4.2 Komponen dan Jenis Sistem Informasi Sistem informasi terdiri dari komponen-komponen yang disebut blok bangunan (building block), yang terdiri dari blok masukan, blok model, blok keluaran, blok teknologi, blok basis data, dan blok kendali. Sebagai suatu sistem, keenam blok tersebut masing-masing saling berinteraksi satu dengan yang lain membentuk suatu kesatuan untuk mencapai sasaran. Keenam blok tersebut adalah: 1. Blok masukan (input block) Input mewakili data yang masuk ke dalam sistem informasi. Input yang dimaksud adalah metode dan media untuk menangkap data yang akan dimasukkan, yang dapat berupa dokumen-dokumen dasar. 2. Blok model (model block) Blok ini terdiri dari kombinasi prosedur, logika, dan model matematik yang akan memanipulasi data input dan data yang tersimpan di basis data dengan cara yang sudah tertentu untuk menghasilkan keluaran yang diinginkan. 3. Blok keluaran (ouput block) 14 Produk dari sistem informasi adalah keluaran yang merupakan informasi yang berkualitas dan dokumentasi yang berguna untuk semua tingkatan manajemen serta semua pemakai sistem. 4. Blok teknologi (technology block) Teknologi merupakan “tool box” dalam sistem informasi. Teknologi digunakan untuk menerima input, menjalankan model, menyimpan dan mengakses data, menghasilkan dan mengirimkan keluaran, dan membantu pengendalian dari sistem secara keseluruhan. Teknologi terdiri dari 3 (tiga) bagian utama, yaitu teknisi (brainware), perangkat lunak (software), dan perangkat keras (hardware). 5. Blok basis data (database block) Basis data (database) merupakan kumpulan data yang saling berkaitan dan berhubungan satu sama lain, tersimpan di perangkat keras komputer dan menggunakan perangkat lunak untuk memanipulasinya. Data perlu disimpan dalam basis data untuk keperluan penyediaan informasi lebih lanjut. Data di dalam basis data perlu diorganisasikan sedemikian rupa supaya informasi yang dihasilkan berkualitas. Organisasi basis data yang baik juga berguna untuk efisiensi kapasitas penyimpanannya. Basis data diakses atau dimanipulasi menggunakan perangkat lunak paket yang disebut DBMS (Database Management System). 6. Blok kendali (control block) Banyak hal yang dapat merusak sistem informasi, seperti bencana alam, api, temperature, air, debu, kecurangan-kecurangan, kegagalan-kegagalan istem itu sendiri, ketidak efisienan, sabotase dan lain sebaginya. Beberapa pengendalian perlu dirancang dan diterapkan untuk menyakinkan bahwa hal-hal yang dapat merusak sistem dapat dicegah ataupun bila terlanjur kesalahan-kesalahan dapat langsung cepat datasi. 15 2.5 Konsep Dasar Basis Data 2.5.1 Pengertian Basis Data Basis data didefinisikan sebagai kumpulan terorganisasi dari data-data yang berhubungan sedemikian rupa sehingga mudah disimpan, dimanipulasi serta dipanggil oleh pengguna [Adi Nugroho, 2010: 5]. 2.5.2 Komponen Basis Data Sistem basis data dapat terbagi dalam beberapa komponen penting, yakni : 1. Data Merupakan informasi yang disimpan dalam suatu struktur tertentu yang terintegrasi. 2. Hardware Merupakan perangkat keras berupa komputer dengan media penyimpanan sekunder yang digunakan untuk menyimpan data karena pada umumnya basis data memiliki ukuran yang besar. 3. Sistem Operasi Program yang mengaktifkan/memfungsikan sistem komputer, mengendalikan seluruh sumber daya dalam komputer dan melakukan operasi-operasi dasar dalam komputer yang meliputi operasi input output (IO), pengelolaan file dan sebagainya. 4. Basis Data Basis data sebagai inti dari sistem basis data. Basis data menyimpan data serta struktur sistem basis data baik untuk entitas maupun objek-objeknya secara detail. 5. Database Management System (DBMS) Merupakan perangkat lunak yang digunakan untuk melakukan pengelolaan basis data. 6. User Merupakan pengguna yang menggunakan data yang tersimpan dan terkelola. 16 7. Aplikasi Lain Program yang dibuat untuk memberikan interface kepada user sehingga lebih mudah dan terkontrol dalam mengakses basis data. 2.5.3 Perancangan Basis Data Aktifitas perancangan basis data akan mentraformasikan spesifikasi kebutuhan untuk tempat penyimpanan data yang akan dikembangkan selama analisis basis data ke dalam spesifikasi terstuktur untuk memandu implementasi langsung basis data. Ada 2 bentuk spesifikasi, yaitu: 1. Perancangan Basis Data Secara Logika Sasaran perancangan basis data secara logika untuk menterjemahkan perancangan konseptual (yang mencerminkan kebutuhan data pada organisasi yang kita analisis di tahap-tahap sebelumnya) ke perancangan basis data logika yang dapat langung di implementasikan pada sistem basis data yag dipilih. 2. Perancangan Basis Data Secara Fisik Merupakan tahapan untuk menuangkan basis data yang bersifat logis menjadi basis data fisis yang tersimpan pada media penyimpanan eksternal. Sasaran utama perancangan basis data secara fisik adalah meningkatkan efisiensi dalam pemrosesan basis data. Perancangan basis data secara fisik membutuhkan beberapa pilihan kritis yang akan berimbas pada integritas dan kinerja dari aplikasi. Kunci-kunci untuk melakukan pilihan-pilihan mencangkup: a. Pemilihan format penyimpanan (dinamakan tipe data) untuk tiap atribut dari model data logika. Format dipilih untuk meminimalisasi dan menoptimalkan penggunaan ruang fisik dan untuk memaksimalkan integritas data. b. Pengelompokan atribut-atribut dari model data logika kerekaman fisik. c. Perancangan rekaman-rekaman pada memori sekunder (terutama hardisk) sehingga rekaman-rekaman secara individual maupun 17 kelompok rekaman (kita namakan pengorganisasian berkas) dapat disimpan, dipanggil kembali serta diperbaharui dengan cepat. d. Memilih struktur (dinamakan indeks dan arsitektur basis data) untuk menyimpan dan menghubungkan berkas-berkas (file) sehingga pemanggilan data berlangsung dengan cara yang efisien. e. Menyiapkan strategi-strategi untuk menangani query pada basis data dengan tujuan mengoptimalisasikan kinerja basis data dalam menangani query. 2.5.4 Konsep Dasar Sistem Basis Basis Data Basis data merupakan sekumpulan data yang disusun secara logis dan dikendalikan secara sentral. Basis data memiliki bagian-bagian yang penting, yaitu: 1. Karakter-karakter Karakter merupakan bagian data yang tekecil, dapat berupa karakter numeric, huruf ataupun karakter-karakter khusus yang membentuk suatu item data. 2. Field Suatu field menggambarkan suatu atribut dari record yang menunjukkan suatu item dari data, seperti misalnya nama, alamat dan lain sebaginya. Kumpulan dari field membentuk suatu record. 3. Record Kumpulan dari field membentuk suatu record. Record menggambarkan suatu unit data individu tertentu. Kumpulan dari record membentuk suatu file. Misalnya file personalia, tiap-tiap record dapat mewakili data tiap-tiap karyawan. 4. File File terdiri dari record-record yang menggambarkan satu kesatuan data yang sejenis. Misalnya file matakuliah berisi data tentang semua mata kuliah yang ada. 5. Database 18 Kumpulan dari file membentuk suatu database. 2.6 Konsep Dasar Berorientasi Objek 2.6.1 Metode Waterfall Proses tradisional untuk melakukan pengembangan sistem informasi dinamakan siklus hidup pengembangan sistem (Systems Development Life Cycle/SDLC) yang memuat langkah-langkah yang semestinya diikuti oleh profesional di bidang sistem informasi, seperti perancang basis data dan pemogram, untuk menspesifikasikan, mengembangkan serta memelihara sistem informasi. Proses ini sering digambarkan secara bertingkat. Metafora bertingkat atau air terjun (waterfall) digunakan untuk menggambarkan bahwa keluaran dari suatu tahap merupakan masukan untuk tahap berikutnya. Gambar. 2.2 SDLC Waterfall [Adi Nugroho, 2010: 41] 19 1. Identifikasi proyek dan seleksi Tujuannya yaitu pemahaman awal situasi bisnis. 2. Inisiasi proyek dan perencanaan Tujuannya untuk menentukan spesifikasi kebutuhan dan bagaimana sistem dapat membantu menyelesaikan permasalahan. 3. Analisis Tujuannya untuk menganalisis situasi bisnis untuk menspesifikasikan dan menstrukturkan kebutuhan pengguna dan meyeleksi fitur. 4. Perancangan Logika Tujuannya untuk mendapatkan dan menstrukturkan kebutuhan sistem secara keseuruhan. 5. Perancangan Fisik Tujuannya yaitu mengembangkan spesifikasi teknologi. 6. Implementasi Tujuannya untuk menulis program, membuat basis data, menginstal dan menguji sistem. 7. Pemeliharaan Tujuannya yaitu memantau kegunaan atau fungsi sistem. 2.6.2 UML (Unified Modeling Language) Unifield Modeling Language (UML) adalah bahasa untuk menspesifikasi, menvisualisasikan serta mengonstruksi bangunan dasar sistem perangkat lunak, termasuk melibatkan pemodelan aturan-aturan bisnis [Adi Nugroho, 2010: 119]. UML disebut sebagai bahasa pemodelan bukan metode. Bahasa pemodelan (sebagaian besar grafik) merupakan notasi dari metode yang digunakan untuk mendesain secara cepat. Bahasa pemodelan merupakan bagian terpenting dari metode. UML merupakan bahasa standar untuk penulisan blueprint software yang digunakan untuk visualisasi, spesifikasi, pembentukan dan pendokumentasian alat-alat dari sitem perangkat lunak. 20 TujuanUML diantaranya adalah : 1. Memberikan model yang siap pakai, bahasa pemodelan visual yang ekspresif untuk mengembangkan sistem dan yang dapat saling menukar model dengan mudah dan dimengerti secara umum. 2. Memberikan bahasa pemodelan yang bebas dari berbagai bahasa pemograman dan proses rekayasa. 3. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan. 2.6.3 Analisa dan Perancangan Objek UML biasanya disajikan dalam bentuk diagram/gambar yang meliputi class beserta atribut dan operasinya, serta hubungan antar class. UML terdiri dari banyak diagram, diantaranya: 1. Use Case Diagram Use Case Diagram adalah gambar dari beberapa atau seluruh aktor dan use case dengan tujuan mengenali interaksi mereka dalam suatu sistem. Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem, yang ditekankan adalah “apa” yang diperbuat sistem dan bukan “bagaimana”. Sebuah use case mempresentasikan sebuah interaksi antara actor dengan sistem. Use case menggambarkan kata kerja seperti login ke sistem, maintenance user dan sebagainya. Oleh karena itu, use case diagram dapat membantu menganalisa kebutuhan suatu sistem. Dalam use case diagram terdapat istilah seperti aktor, use case dan use case relationship. 21 Tabel 2.1 Tabel Simbol Use Case Diagram Simbol Keterangan Aktor : Seseorang atau sesuatu yang dengan system yang sedang dikembngkan. Use Case : Peringkat tertinggi dari fungsionalitas yang dimiliki system. Association : adalah relasi antara actor dan use case. Generalisasi : untuk memperlihatkan struktur pewaris yang terjadi. Sistem Bengkel Memeriksa Mobil * * * * Memperbaiki Mobil * Mekanik * * Mengemudikan Mobil Pemilik_Mobil * Gambar 2.3 Contoh Use Case 22 2. Activity Diagram Activity Diagram menggambarkan rangkaian aliran dari aktifitas, digunakan untuk mendiskripsikan aktivitas yang dibentuk dalam suatu operasi sehingga dapat juga digunakan untuk aktivitas lainnya seperti use case atau interaksi. Diagram berupa flow chart yang digunakan untuk memperlihatkan aliran kerja dari sistem. Tabel 2.2 Simbol Activity Diagram Simbol Keterangan Titik Awal Titik Akhir Activity Pilihan untuk pengambilan keputusan Fork : Untuk menunjukkan kegiatan yang dilakukan secara paralel Rake : menunjukkan dekomposisi Tanda Waktu Tanda Penerimaan Aliran Akhir (Flow Final) adanya 23 Anggota Pustakawan Mencari Buku Memasukkan Data Peminjaman Cetak Bukti Peminjaman Gambar 2.4 Contoh Activity Diagram 3. Sequence Diagram Sequence diagram menggambarkan kolaborasi dinamis antara sejumlah objek dan untuk menunjukkan rangkaian pesan yang dikirim antar objek, sesuatu yang terjadi pada titik tertentu dalam eksekusi sistem. Sequence diagram menjelaskan interaksi objek yang disusun berdasarkan urutan waktu. Secara mudahnya sequence diagram adalah gambaran tahap demi tahap yang seharusnya dilakukan untuk menghasilkan sesuatu sesuai dengan use case diagram. Sequence diagram berhubungan erat dengan use case diagram dimana 1 use case akan menjadi 1 sequence diagram. 24 Tabel 2.3 Simbol Sequence Diagram Simbol Nama Simbol Keterangan Object Life Line Partisipan Form. Activation Merupakan sebuah focus dari control Object1 pada suatu waktu. Message Pesan yang menggambarkan komunikasi yang terjadi antar objek. Message (Call) Pesan yang menggambarkan pemanggilan yang terjadi antar objek. Message Pesan yang dikirim untuk diri sendiri. (return) Message Pesan yang dikirim untuk diri sendiri. (return) Lifetime Menambahkan pemulaan dan menghentikan titik dari suatu object. 25 PemilihanMK DaftarMK PenyimpananData Admin Printer Mahasiswa 1 : MilihMK () 2 : MintaDaftarMK () 3 : InputData () 4 : Konfirmasi () 5 : CetakData () 6 : KeluarkanJadwal () Gambar 2.5 Contoh Sequence Diagram 4. Class Diagram Class Diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi dan lain-lain. Class diagram berfungsi untuk menjelaskan tipe dari objek sistem dan hubungannya dengan objek yang lain. Objek adalah nilai tertentu dari setiap attribute kelas entity. Class adalah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan berorientasi objek. Class menggambarkan keadaan (attribute/property) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metode/fungsi). 26 Tabel 2.4 Simbol Class Diagram Simbol Nama Simbol Class Keterangan Menggambarkan sesuatu yang mengkapsulkan Class1 informasi di class menampung nama class, atribut dan method. Asosiasi 1 class dengan class Multiplycity. 0..1 Agregation 1 Asosiasi yang menghubungkan Aggregation menggambarkan suatu class terdiri dari class lain * atau suatu class adalah bagian dari class lain. Generalization Generalization merupakan sebuah taxonomic relationship antara class yang lebih umum dengan class yang lebih khusus. Gambar 2.6 Contoh Class Diagram 27 2.6.4 Kamus Data Kamus data biasanya merupakan bagian dari katalog sstem (system catalog) yang dibentuk untuk setiap basis data. Katalog sistem mendeskripsikan semua objek basis data, termasuk data tentang tabel-tabel seperti nama tabel, pembuat tabel, pengguna yang berhak menggunakanya, nama dan tipe data, kunci tamu (foreign key) dan kunci primer (primary key), berkas indeks dan sebagainya. Katalog sistem diciptakan oleh DBMS dan informasinya disimpan di tabel sistem, yang padanya dapat dilakukan permohonan seperti tabel data biasa, jika pengguna memiliki hak yang memadai. [Adi Nugroho, 2010: 530]. Tabel 2.5 Notasi Struktur Data Notasi Keterangan = Terdiri dari + Dan ( and ) () Pilihan ( ya atau tidak ) {} Pengulangan proses/ Iterasi [] Pilih salah satu jawaban I Pemisah pilihan didalam [ ] * Keterangan atau catatan @ Petunjuk (key field) 28 Tabel 2.6 Contoh Struktur Data No 1 Nama Arus Data Data Barang Struktur Data = Kd_Brg + Nm_Brg + Satuan + Hrg_Sat + Qty_Masuk + Qty_Keluar + Stok_Akhir + Tanggal 2 Data Pelanggan = Kd_Plg + Nm_Plg + Alamat + Kota + Kode_Pos + Telp + Lama_Kredit + Lmt_Kredit + NPWP 3 Data Pesanan = No_Psn + Tgl_Psn + Kd_Plg + Nil_Psn + Kd_Brg + Qty 4 Data Faktur = No_Fax + Tgl_Fax + Kd_Plg + Nil_Fax + Kd_Brg + Qty 2.7 Metode Pengujian 2.7.1 Metode White Box Uji coba white Box Adalah metode perancangan test case yang menggunakan struktur kontrol dari perancangan procedural untuk mendapatkan test case [Soetam Rizky,2011: 261]. Dengan menggunakan metode white box , akan dapat diperoleh test case yang : 1. Menjamin seluruh independent path di dalam modul yang dikerjakan sekurang-kurangnya sekali. 2. Mengerjakan seluruh keputusan logical. 3. Mengerjakan seluruh loop yang sesuai dengan batasannya. 4. Mengerjakan seluruh struktur data internal yang menjamin validasi. 29 2.7.2 Metode Black Box Pengujian fungsional atau pengujian kotak hitam (black box testing) merupakan pendekatan pengujian yang ujiannya diturunkan dari spesifikasi program atau komponen [Soetam Rizky,2011: 269]. Sistem merupakan “kotak hitam” yang perilakunya hanya dapat ditentukan dengan mempelajari input dan output yang berkaitan. Nama lain untuk cara ini adalah pengujian fungsional karena penguji hanya berkepentingan dengan fungsionalitas dan bukan implementasi perangkat lunak. Kunci pada penguji cacat adalah memilih input yang memiliki probabilitas besar sebagai anggota himpunan Ie. Pada banyak kasus, pemilihan ini berdasar pengalaman rekayasawan uji sebelumnya. Mereka memakai pengetahuan domain untuk mengindentifikasi kasus uji yang mungkin mengungkap cacat. Dengan black box analisis sistem akan memperoleh kumpulan kondisi dari input yang akan mengerjakan seluruh keperluan fungsional program. Tujuan metode ini untuk mencari kesalahan-kesalahan pada: 1. Fungsi yang salah atau hilang 2. Kesalahan pada interface 3. Kesalahan pada struktur data atau akses database 4. Kesalahan performasi 2.8 Konsep Dasar PHP (Hypertext Prepocessor) 2.8.1 Pengertian PHP PHP singkatan dari PHP : Hypertext Prepocessor yaitu bahasa pemrograman web server-side yang bersifat open source. PHP merupakan script yang terintegrasi dengan HTML dan berada pada server (server side HTML embedded scripting). PHP adalah script yang digunakan untuk membuat halaman website yang dinamis. Dinamis berarti halaman yang akan ditampilkan dibuat saat halaman itu diminta oleh client. Mekanisme ini menyebabkan informasi yang 30 diterima client selalu yang terbaru/up to date. Semua script PHP dieksekusi pada server dimana script tersebut dijalankan. [Anhar, 2010: 3]. 2.8.2 Sejarah PHP Hypertext Preprocessor (PHP) berkembang dengan sangat pesat. Berikut adalah sejarah perkembangan PHP : 1. 1995 – PHP pertama kali dibuat oleh Rasmus Lerdorf, yang diberi nama FI (Form Interpreted) dan digunakan untuk mengelola form dari web. Pada perkembangannya, kode tersebut dirilis ke umum sehingga mulai banyak dikembangkan oleh programmer di seluruh dunia. 2. 1997 – PHP 2.0 dirilis. Pada versi ini sudah terintegrasi dengan bahasa pemrograman C dan dilengkapi dengan modulnya sehingga kualitas kerja PHP meningkat secara signifikan. Pada tahun ini juga sebuah perusahaan yang bernama Zend merilis ulang PHP dengan lebih bersih, baik dan cepat. 3. 1998 – PHP 3.0 diluncurkan. 4. 1999 – PHP versi 4.0 dirilis. PHP versi ini paling banyak digunakan pada awal abad 21 karena sudah mampu membangun web komplek dengan stabilitas kecepatan yang tinggi. 5. 2004 – Zend merilis PHP 5.0. Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Versi ini juga memasukkan model pemrograman berorientasi objek ke dalam PHP untuk menjawab perkembangan bahasa pemrograman ke arah paradigma berorientasi objek. Lalu pada versi 6 PHP sudah support untuk Unicode. Juga banyak fitur penting lainnya yang telah ditambahkan ke dalam PHP 6, antara lain : 1. Support Unicode, dukungan terhadap penggunaan Unicode telah ditambahkan, sehingga lebih mudah untuk membangun dna memelihara aplikasi. 2. Perbaikan keamanan. 31 3. Fitur dan konstruksi baru, sejumlah fitur sintaks baru ditambahkan, seperti 64-bit integer type, membangun perulangan untuk array multidimensi, serta dukungan untuk labeled breaks. Adapun kelebihan dari Hypertext Prepocessor (PHP) antara lain: 1. Kesederhanaan. User yang baru belajar pemrograman, alasan ini pasti merupakan alasan utama untuk memulai belajar PHP. Karena kesederhanaan tersebut, maka kita menjadi merasa mudah untuk belajar PHP. User yang sedikit tahu atau bahkan sama sekali tidak mengerti tentang pemrograman PHP bisa dengan cepat belajar dan mencoba membuat aplikasi web PHP. Selain itu, PHP memiliki banyak sekali fungsi built-in untuk menangani kebutuhan standar pembuatan aplikasi web. Dengan adanya fungsi-fungsi tersebut, maka tentu saja proses belajar PHP terutama dalam pengembangan aplikasi akan jauh lebih mudah karena semua sudah tersedia. Kita sebagai user tinggal memakai dan mengembangkannya. 2. Dalam sisi pemahaman, PHP adalah bahasa scripting yang paling mudah karena memiliki referensi yang banyak. 3. PHP adalah bahasa open source yang dapat digunakan di berbagai sistem operasi seperti: Linux, Unix, Macintosh, dan Windows. PHP dapat dijalankan secara runtime melalui console serta dapat menjalankan perintah-perintah sistem. Open source artinya code-code PHP terbuka untuk umum dan kita tidak harus membayar biaya pembelian atas keaslian lisensi yang biasanya cukup mahal. Karena source code PHP tersedia secara gratis, maka hal tersebut memungkinkan komunitas milis-milis dan developer untuk selalu melakukan perbaikan, pengembangan, dan menemukan bug dalam bahasa PHP. 4. Web server yang mendukung PHP dapat ditemukan di mana-mana, mulai dari Apache, IIS, Lighttpd, hingga Xitami dengan configurasi yang relatif mudah. 32 5. PHP juga dilengkapi dengan berbagai macam pendukung lain seperti support langsung ke berbagai macam database yang populer, misal: Oracle, PostgreSQL, MySQL, dan lain-lain. 2.8.3 PHP dan Internet Sebenarnya saat kita berinternet menggunakan browser seperti Mozilla, Internet Explorer, Opera dan Safari, halaman yang mucul di depan layar komputer kita adalah halaman yang diperoleh dari proses pemanggilan dengan menuliskan alamat sesuai nama file yang terdapat pada web server. Web server adalah aplikasi yang berfungsi untuk melayani permintaan pemanggilan alamat dari pengguna melalui web browser, dimana web server mengirimkan kembali informasi yang diminta tersebut melalui HTTP (Hypertext Transfer Protocol) untuk ditampilkan ke layar monitor komputer kita. Agar kita dapat mengubah isi dari website yang dibuat, kita membutuhkan program PHP. Script-script PHP tersebut yang berfungsi membuat halaman website menjadi dinamis. Dinamis artinya pengunjung web dapat memberikan komentar saran/masukan pada website kita. Website yang kita buat menjadi lebih hidup karena ada komunikasi antara pengunjung dan kita sebagai webmasternya. Relational Database Oracle, Postgre SQL, MySQL Web server Apache, IIS, Tomcat Bahasa Pemrograman PHP INTERNET Web Browser Mozilla, IE, Opera, Safari Gambar 2.7 Bagan dari Aplikasi Web 33 Dari gambar di atas terlihat adanya hubungan antara Web Browser, Web Server, Bahasa Pemrograman PHP, dan Database. Secara teknis, database menyimpan data yang diolah oleh bahasa pemrograman PHP yang ada di web server kemudian data tersebut ditampilkan dengan Web Browser dengan cara menuliskan alamat/URL sesuai nama file yang terdapat pada web server. 2.9 Konsep Dasar MySQL (My Structure Query Language) 2.9.1 Pengertian MySQL MySQL (My Structure Query Language) adalah sebuah perangkat lunak sistem manajemen basis data SQL (Database Management System) atau DBMS dari sekian banyak DBMS, seperti Oracle, MS SQL, PostgreSQL, dan lain-lain. [Anhar, 2010: 21] MySQL merupakan DBMS yang multithread, multi-user yang bersifat gratis di bawah lisensi GNU General Public Licence (GPL). Tidak seperti Apache yang dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing. MySQL dimiliki dan disponsori oleh sebuah perusahaan Swedia, yaitu MySQL AB. MySQL AB memegang hak cipta kode sumbernya. Kedua dan satu orang Finlandia yang mendirikan MySQL AB adalah: David Axmark, Allan Larson, dan Michael Monty Widenius. Seperti yang telah disebutkan sebelumnya, MySQL bersifat gratis atau open source sehingga kita bisa menggunakannya secara gratis. Pemrograman PHP juga sangat mendukung/support dengan database MySQL sehingga apabila kita mempelajarinya dengan sungguh-sungguh kita dapat mengaplikasikan PHP dan MySQL dalam membuat aplikasi website maupun dalam membuat website. Beberapa kelebihan MySQL, antara lain: 1. MySQL dapat berjalan dengan stabil pada berbagai sistem operasi, seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, dan masih banyak lagi. 2. Bersifat open source, MySQL didistribusikan secara open source (gratis), di bawah lisensi GNU General Public Licence (GPL). 34 3. Bersifat multiuser, MySQL dapat digunakan oleh beberapa user dalam waktu bersamaan tanpa mengalami masalah. 4. MySQL memiliki kecepatan yang baik dalam menangani query (perintah SQL). Dengan kata lain, dapat memproses lebih banyak SQL per satuan waktu. 5. Dari segi security atau keamanan data, MySQL memiliki beberapa lapisan sekuriti, seperti level subnet mask, nama host, dan izin akses user dengan perizinan yang mendetail serta password yang terenkripsi. a. Selain MySQL bersifat fleksibel dengan berbagai pemrograman, MySQL juga memiliki interface (antarmuka) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface). b. Dukungan banyak komunitas, biasanya tergabung dalam sebuah forum untuk saling berdiskusi membagi informasi tentang MySQL. Misalnya forum http://forums.mysql.com/. Ketika menginstal server seperti PHPTriad, otomatis menginstal service MySQL sehingga Anda tidak perlu menginstal MySQL lagi. Mini server lain yang bisa Anda gunakan adalah XAMPP, WAMP, Apache2Triad, dan Appserv. 2.9.2 Data Definition Language DDL atau Data Definition Language merupakan perintah SQL yang digunakan untuk mendefinisikan atau mendeklarasikan objek database, menciptakan objek database atau bahkan menghapus objek database. [Ema Utami, 2008: 75]. Objek database dapat berupa tabel atau database itu sendiri. DDL juga dapat digunakan untuk membuat koneksi antar tabel database beserta batasannya dengan menentukan indeks sebagai kuncinya. Data Definition Language terbagi menjadi: 1. Perintah CREATE 35 Digunakan untuk membuat objek database seperti membuat database, tabel, view, store procedure, trigger dan objek database lainnya. Query yang digunakan untuk membuat database adalah: CREATE DATABASE Nama_Database Sedangkan perintah untuk membuat tabel adalah: CREATE TABLE Nama_Tabel ( Nama_Kolom1 Tipe_Data1 (Lebar_Data1), Nama_Kolom2 Tipe_Data2 (Lebar_Data2) ) 2. Perintah DROP Digunakan untuk menghapus objek database, seperti menghapus database atau menghapus tabel. Query yang diguanakan untuk menghapus database adalah: DROP DATABASE Nama_Database Atau untuk menghapus tabel: DROP TABLE Nama_Tabel 3. Perintah ALTER Digunakan untuk melakukan perubahan pada struktur tabel. Contoh query yang digunakan untuk merubah tabel adalah: ALTER TABLE Nama_Tabel DROP COLUMN Nama_Field 2.9.3 Data Manipulation Language Data Manipulation Languange (DML) merupakan query yang digunakan untuk memanipulasi data seperti menampilkan data, mengubah data, menghapus data atau mengisi data . [Ema Utami, 2008:101]. Data Manipulation Languange terbagi menjadi: 1. Perintah INSERT Digunakan untuk memasukkan data ke dalam tabel. Sintaks yang dipakai adalah: 36 INSERT INTO Nama_Tabel (Daftar_Kolom) VALUES (Daftar_Nilai) 2. Perintah SELECT Digunakan untuk mengambil data atau menampilkan data. Data yang telah diambil atau dipilih boleh saja ditampilkan dalam aplikasi yang kita buat atau digunakan untuk kontrol program. Sintaks yang dipakai adalah: SELECT Nama_Field FROM Nama_Tabel WHERE Kondisi 3. Perintah UPDATE Digunakan untuk melakukan perubahan pada data. Update berfungsi untuk mengubah data dalam tabel. Sintaks yang dipakai adalah: UPDATE Nama_Tabel SET Nama_Kolom = ‘Nilai_Kolom’ WHERE Kondisi 4. Perintah DELETE Digunakan untuk menghapus data dalam sebuah tabel. Sintaks yang dipakai adalah: DELETE FROM Nama_Tabel WHERE Kondisi 2.10 Konsep Dasar Laporan Kinerja GraPARI PT. Telkomsel Dalam penilaian kinerja GraPARI, manajer Walk In Department memiliki parameter-parameter yang dijadikan pertimbangan, yaitu: 1. Sales Adalah pencapaian penjualan GraPARI per bulannya. 2. Revenue Adalah pencapaian nilai penjualan dalam mata uang Rupiah GraPARI perbulannya. 3. Customer Visit Adalah pencapaian jumlah pengunjung GraPARI perbulannya. 4. Waiting Time Adalah pencapaian jumlah pengunjung yang menunggu untuk dilayani kurang dari 20 menit di GraPARI perbulannya. 37 Dalam penilaian kinerja tersebut, GraPARI dibagi dalam beberapa type. Type tersebut dikategorikan berdasarkan letak geografis dan tingkat ekonomi masyarakat di sekitar GraPARI. Pembagian type tersebut adalah: 1. T20, memiki target 1000 2. T40, memiliki target 1500 3. T150, memiliki target 2500 4. T300, memiliki target 5000 5. T600, memiliki target 7500 6. T1000, memiliki target 14000 2.10.1 Pengertian Kinerja Menurut http://kbbi.web.id/, kinerja dapat diartikan sebagai: 1. Sesuatu yang dicapai. 2. Prestasi yang diperlihatkan. 3. Kemampuan kerja. 2.10.2 Perhitungan Penilaian Kinerja GraPARI 1. Pencapaian Kinerja Sales Jika jumlah customer visit lebih besar dari jumlah target, rumus untuk menghitung pencapaian sales adalah: Pencapaian Sales = (20% x Sales) / Customer Visit Sedangkan jika jumlah customer visit lebih kecil dari jumlah target, rumus pencapaian sales adalah: Pencapaian Sales = (20% x Sales) / Target 2. Pencapaian Kinerja Customer Visit Rumus untuk menghitung pencapaian customer visit adalah: Pencapaian Customer Visit = Customer Visit / Target 38 3. Pencapaian Kinerja Waiting Time Rumus untuk menghitung pencapaian waiting time adalah: Pencapaian Waiting Time = Waiting Time / Customer Visit