BAB II LANDASAN TEORI 2.1 Definisi Dasar Sistem Informasi Terdapat beberapa macam pengertian sistem informasi menurut para ahli, diantaranya yaitu sebagai berikut: 1. Menurut Sutabri (2012:46), Sistem informasi adalah suatu sistem didalam 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 laporan-laporan yang diperlukan. 2. Menurut Rudy Tantra (2012:12), Mendefinisikan system informasi sebagai berikut : “Cara yang terorganisir untuk mengumpulkan, memasukan, memproses data dan menyimpannya, mengelolah dan mengontrol serta melaporkannya sehingga dapat mendukung sebuah perusahaan atau organisasi untuk mencapai tujuan”. Berdasarkan beberapa pendapat yang dikemukakan di atas dapat ditarik kesimpulan bahwa “Sistem informasi adalah sebuah sistem yang terdiri dari pengumpulan, pemasukan, pemrosesan data, penyimpanan, pengolahan, pengendalian dan pelaporan sehingga tercapai sebuah informasi yang mendukung pengambilan keputusan didalam suatu organisasi untuk dapat mencapai sasaran dan tujuannya”. 2.2 Definisi Basis Data Menurut Thomas Connolly dan Carolyn Begg (2010:65), Basis Data (Database) merupakan sekumpulan dari data logika yang saling berhubungan dan gambaran dari data tersebut, dirancang untuk memenuhi kebutuhan informasi sebuah organisasi. Basis data adalah sebuah tempat penyimpanan data yang memiliki kapasitas penyimpanan yang besar dimana dapat digunakan secara bersamaan oleh banyak departemen dan pengguna lainnya (user). Tujuan utama dari konsep basis data adalah meminimalkan pengulangan data dan tercapainya indepensi data. Model basis data relasional adalah sistem yang banyak digunakan karena struktur logikanya yang sederhana. Pada model relasional seluruh data disusun secara logical dalam relasi – relasi atau table. Setiap relasi terdiri dari baris dan kolom. Dimana baris dari relasi disebut tuple atau setiap tuple (baris) memiliki satu nilai untuk setiap atribut dan kolom dari relasi diberi nama tertentu yang disebut atribut. 7 http://digilib.mercubuana.ac.id/ 8 Basis data yang table – tabelnya saling terhubung dikaitkan memiliki relasi. Karena tidak ada relasi yang memiliki dua tuple yang sama, maka setiap baris dapat didefinisikan dengan menggunakan primary key. Munculnya sebuah atribut dalam beberapa relasi dapat mempresentasikan hubungan antara tuple dari relasi tersebut. Pengguna basis data dapat berupa orang atau program aplikasi. Orang biasanya mengambil data dan informasi dengan menggunakan querylanguage. Query adalah permintaan informasi dari basis data dan query language adalah bahasa khusus yang userfriendly yang memungkinkan computer menjawab query. Pendekatan basis data adalah memisahkan struktur data dari program aplikasi dan menyimpannya dala basis data. Basis data merupakan system penyimpanan record terkomputerisasi yang bertujuan untuk pemeliharaan informasi dan tersedia pada saat dibutukan. Teknologi basis data memperbolehkan sekumpulan data dengan berbagai tipe seperti : teks, angka, gambar, suara, dan lain-lain. Untuk disimpan dalam computer dan digunakan secara efisien tanpa adanya duplikasi oleh aplikasi yang berhubungan. 2.2.1 Definisi Database Manajement System ( DBMS ) Database Management System (DBMS) adalah suatu sistem perangkat lunak yang memungkinkan pengguna untuk mendefinisikan, membuat, memelihara, dan mengatur akses ke basis data (Connoly dan Beg, 2010:15). Biasanya basis data memiliki fasilitas-fasilitas sebagai berikut : 1. Fasilitas mendefinisikan basis data, biasanya menggunakan Data Definition Language (DDL). DDL mengizinkan pengguna untuk memspesifikasikan tipe, struktur, dan batasan aturan mengenai data yang bisa disimpan ke dalam basis data. 2. Fasilitas untuk mengizinkan pengguna untuk menambah, mengedit, menghapus dan mendapatkan kembali data dari basis data, biasanya menggunakan Data Manipulation Language (DML). Ada pula suatu fasilitas yang melayani pengaksesan data yang disebut query language. Bahasa yang diakui adalah Structured Query Language (SQL), yang merupakan standar dari DBMS. 3. Fasilitas untuk mengontrol ke basis data (DCL). Contoh : a. Sistem keamanan yang mencegah user yang tidak punya autoritas untuk akses data. b. Suatu sistem terintegrasi yang memelihara konsistensi penyimpanan data. c. Suatu sistem control pengembalian data yang mana dapat mengembalikan data ke keadaan sebenarnya apabila terjadi kegagalan perangkat keras atau perangakat lunak. http://digilib.mercubuana.ac.id/ 9 d. Terdapat suatu catalog yang dapat diakses oleh pengguna, yang menjelaskan data didalam basis data tersebut. Komponen DBMS terbagi menjadi lima yaitu : 1. Hardware (Perangkat Keras) Hardware dapat berkisar dari komputer tunggal, mainframe tunggal, hingga jaringan computer. Hardware yang dipakai tergantung pada kebutuhan organisasi dan Database Management System DBMS memerlukan jumlah minimum memori dan hardisk untuk bekerja, tetapi konfigurasi yang minimum tidak memberikan performa yang handal. 2. Software (Perangkat Lunak) Komponen perangkat lunak terdiri dari perangkat lunak DBMSdan program aplikasi beserta sistem operasi (OS), termasuk jaringan perangkat lunak jika DBMS digunakan melalui jaringan. 3. Data Data merupakan data terpenting dalam DBMS khususnya sudut pandang dari end user mengenai data, dimana data berfungsi sebagai jembatan antara komponen mesin dengan komponen manusia. 4. Procedures Prosedur merupakan panduan dan aturan dalam membuat dan menggunakan basis data berupa : login ke dalam basis data, penggunaan fasilitas DBMS atau aplikasi program, cara menjalankan atau menghentikan DBMS, membuat buckup database, menangani kerusakan software atau hardware, mengubah struktur table, mengumpulkan basis data dari beberapa disk, meningkatkan kinerja atau membuat arsip data pada secondary storage. 5. People (manusia) Komponen terakhir yaitu manusia yang terlibat dengan sistem tersebut. 2.3 DefinisiSystem Development Life Cycle (SDLC) Pengertian SDLC adalah suatu proses berkelanjutan dari planning analisis, desain dan implementasi. Yang pada prosesnya dilakukan perbaikan secara bertahap (Dennis et al 2012:39). 2.3.1 Metode Waterfall Model perancangan SDLC adalah dengan model waterfall. Terdapat 5 langkah dalam metode waterfall, adalah : http://digilib.mercubuana.ac.id/ 10 Gambar 2.1 Metode Waterfall (Alan Dennis 2012) 1. Perencanaan ( Planning ) Dalam tahapan ini, menjelaskan dan mengargumentasikan untuk melanjutkan proyek yang telah dipilih, Rencana kerja yang matang juga disusun untuk menjalankan tahapan-tahapan lainnya. Pada tahap ini ditentukan secara detail rencana kerja yang harus dikerjakan, durasi yang diperlukan masing-masing tahap, sumber daya manusia, perangkat lunak, dokumentasi, perangkat keras, maupun financial diestimasi. 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 diperolah tidak maksimal, bahkan bias rugi. Pada tahapan ini peran manajemen sistem informasi berpengalaman sangat dibutuhkan. 2. Analisis ( Analysis ) Tahap kedua, adalah tahap analisis, yaitu tahap dimana kita berusaha mengenali segenap permasalahan yang muncul pada pengguna dengan mendekomposisi dan merealisasikan komponen-komponen sistem. Tujuan utama dari tahap analisis adalah untuk memahami dan mendokumentasikan kebutuhan bisnis dan persyaratan proses dari sistem baru. Menganalisa kebutuhan sebagai bahan dalam membuat spesifikasi di tahapan selanjutnya. 3. Perancangan ( Design ) Tahap Perancangan (design) dimana kita mencoba mencari solusi permasalahan yang didapat dari tahap analisis. Tahapan mengubah kebutuhan yang masih berupa konsep menjadi spesifikasi sistem yang nyata untuk diimplementasikan. Jika pada tahapan analisis ( form requirement to specification), maka tahapan desain adalah (form specification to implementation). Jadi, bagaimana pembuatan spesifikasi yang detail untuk bisa diimplementasikan. http://digilib.mercubuana.ac.id/ 11 4. Implementasi ( Implementation ) Tahap implementasi, dimana kita mengimplementasikan perancangan sistem ke situasi nyata atau desain harus diterjemahkan ke dalam bentuk mesin yang bisa dibaca. Disini kita mulai berurusan dengan pemilihan perangkat keras dan penyusunan perangkat lunak aplikasi ( pengkodean / coding ). 5. Sistem Pada tahapan sistem dilakukan pengujian (testing) dan pemeliharaan, yang dapat digunakan untuk menentukan apakah sistem / perangkat lunak yang kita buat sudah sesuai dengan kebutuhan pengguna atau belum. Jika belum, proses selanjutnya adalah bersifat iteractive, yaitu kembali ke tahap sebelumnya. Tahap pemeliharaan dan perawatan dimana kita mulai melakukan pengoperasian sistem dan jika diperlukan melakukan perbaikan-perbaikan kecil. Kemudian jika waktu penggunaa sistem habis, maka kita akan masuk lagi pada tahap perencanaan (design). 2.4 Definisi Unified Modeling Language (UML) Menurut Adi Nugroho (2010:6), ”UML (Unified Modeling Language) adalah bahasa pemodelan untuk sistem atau perangkat lunak yang berparadigma (berorientasi objek).” Pemodelan (modeling ) sesungguhnya digunakan untuk penyederhanaan permasalahanpermasalahan yang kompleks sedemikian rupa sehingga lebih maksimal dipelajari dan dipahami. Menurut Alan Dennis (2012:513), UML (Unified Modeling Language) merupakan kosakata umum berbasis objek dan diagram teknik yang cukup efektif untuk memodelkan setiap proyek pengembangan sistem mulai tahap analisis sampai tahap desain dan implementasi. UML diaplikasikan untuk maksud tertentu, biasanya antara lain untuk : 1. Merancang perangkat lunak. 2. Sarana komunikasi antara perangkat lunak dengan proses bisnis. 3. Menjabarkan sistem secara rinci untuk analisa dan mencari apa yang diperlukan sistem. 4. Mendokumentasikan sistem yang ada, proses-proses dan organisasinya. Blok pembangunan utama UML adalah diagram. Beberapa diagram ada yang rinci (jenis timing diagram) dan lainnya ada yang bersifat umum (misalnya diagram kelas). Para pengembang sistem berorientasi objek menggunakan bahasa model untuk mengambarkan, membangun dan mendokumentasikan sistem yang mereka rancang. UML memungkinkan para anggota team untuk bekerja samadengan bahasa model yang sama dalam mengaplikasikan beragam sistem. Intinya, UML merupakan alat komunikasi yang konsisten dalam mensupport para pengembang sistem saat ini. Diagram Use Case, Diagram Aktivitas (Activity Diagram), Diagram Sequence, dan Diagram Class. http://digilib.mercubuana.ac.id/ 12 2.4.1 Fokus Unified Modeling Language (UML) Pemetaan (mapping) Unified Modeling Language (UML) bersifat 2 (dua) arah, yaitu: 1. Generasi kode bahasa pemrograman tertentu dari Unified Modeling Language (UML) foward engineering (Nugroho, 2010:21). 2. Generasi kode belum sesuai dengan kebutuhan dan harapan pengguna, pengembang dapat melakukan langkah baik bersifat iterative dari implementasi ke Unified Modeling Language (UML) hingga didapat sistem atau piranti lunak yang sesuai dengan harapan pengguna dan pengembang (Henderi, 2010:5). 2.4.2 Diagram – Diagram UML (Unified Modeling Language) 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 Diagram Use Case, Diagram Aktivitas (Activity Diagram), Diagram Sequance, dan Diagram Class. 2.4.3 Use Case Diagram Use Case Diagram secara grafis menggambarkan, interaksi secara sistem, sistem eksternal dan pengguna. Dengan kata lain use case diagram secara grafis mendeskripsikan siapa yang akan menggunakan sistem dan dalam cara apa pengguna (user) mengharapkan interaksi dengan sistem itu. Use case secara naratif digunakan untuk secara tekstual menggambarkan sekuensi langkah-langkah dari tiap interaksi.Use case diagram merupakan suatu diagram yang menangkap kebutuhan bisnis untuk sistem dan untuk menggambarkan interaksi antara sistem dan lingkungannya. (Dennis et al, 2012:513). http://digilib.mercubuana.ac.id/ 13 Tabel 2.1 Notasi Use Case Diagram (Dennis at al:2012) 1. Aktor (actor), menggambarkan pihak-pihak yang berperan disebuah sistem. 2. Use case, aktifitas / sarana yang disiapkan oleh bisnis / sistem. 3. System boundary, adalah sebuah kotak yang mewakili sebuah sistem. 4. Hubungan (link), aktor mana saja yang terlibat dalam Use case, dan bagaimana hubungan Use case dengan Use case lain. ada hubungan antar Use case. Digolongkan menjadi 2 : yaitu extend digambarkan dengan keterangan <<extend>>, dan include digambarkan dengan keterangan <<include>>, berikut perbedaanya dijelaskan pada tabel dibawah ini : Tabel 2.2 Perbedaan include dan extend pada Use Case (Dennis et al:2012) Include Use case terpanggil (included use case) selalu diperlukan oleh use case dasar Extend Use case ekstensi tidak selalu dibutuhkan oleh use case dasar http://digilib.mercubuana.ac.id/ 14 Lanjutan Tabel 2.2 Yang memutuskan kapan dipanggilnya use case included adalah use case dasar Panah hubungan dari use case dasar ke use case include 2.4.4 Yang memutuskan kapan dipanggilnya use case extend adalah use case extend itu sendiri Panah hubungan dari use case extend ke use case dasar Activity Diagram Secara grafis untuk menggambarkan rangkaian aliran aktivitas baik proses bisnis maupun use case. Activity Diagram dapat juga digunakan untuk memodelkan action yang akan dilakukan saat operasi dieksekusi, dan memodelkan hasil dari action tersebut.Pengertian diagram Activity adalah yang menggambarkan alur kerja bisnis independen dari class, aliran kegiatan dalam Use case, atau desain rinci sebuah metode (Dennis et al 2012 :516). Tabel 2.3 Notasi Pemodelan Activity Diagram (Dennis et al, 2012 : 516) Actor Digunakan untuk melakukan tindakan . Actor Activity Digunakan untuk mewakili serangkaian tindakan. Activity Object Node Digunakan untuk mewakili suatu objek yang Class Diagram terhubung ke satu set Arus Obyek. Control Flow Menunjukkan urutan eksekusi. Object Flow Menunjukkan arus dari sebuah objek dari satu kegiatan (atau tindakan) untuk kegiatan lain (atau tindakan). http://digilib.mercubuana.ac.id/ ------------------> 15 Lanjutan Tabel 2.3 Initial Node Menggambarkan awal dari serangkaian tindakan atau kegiatan. Initial activity Node Digunakan untuk menghentikan semua arus kontrol dan arus objek dalam suatu kegiatan (atau tindakan). Decision Node Digunakan untuk mewakili kondisi tes untuk memastikan bahwa aliran kontrol atau aliran objek hanya turun satu jalur. Fork Node Adalah node kontrol yang memiliki satu dan dua atau lebih aliaran keluar. Join Node Adalah gabungan dari satu atau lebih activity aliran masuk. Swimline Digunakan untuk memecah sebuah diagram aktivitas dalam baris dan kolom untuk menetapkan aktivitas Name individu (atau tindakan) kepada individu atau benda yang bertanggung jawab untuk melaksanakan kegiatan (atau tindakan). 2.4.5 Diagram Sequence Diagram Sequence merupakan urutan model dinamis yang menggambarkan contoh class yang berpartisipasi dalam use case dan pesan yang lewat di antara mereka dari waktu ke waktu. (Dennis et al 2012 : 540).Sequence diagram merupakan diagram interaksi yang disusun berdasarkan urutan waktu. Cara membaca diagram sekuensial dari atas ke bawah. Setiap diagram sekuensial mempresentasikan satu flow dari beberapa flow didalam use case. http://digilib.mercubuana.ac.id/ 16 Tabel 2.4 Notasi Pemodelan Komponen Sequence Diagram(Dennis et al :2012) Term and Definition An Actor (Aktor) Orang atau sistem yang berasal dari luar sistem yang dapat memberikan manfaat. Berpartisipasi secara berurutan oleh mengirim dan / atau menerima pesan. Ditempatkan dibagian atas diagram. An Object (sebuah Objek) Berpartisipasi secara berurutan oleh mengirim dan / atau menerima pesan. Ditempatkan dibagian atas diagram. A Lifeline (sebuah garis hidup) Menandakan kehidupan sebuah objek selama squance. Berisi sebuah X pada titik dimana kelas tidak lagi berinteraksi A Focus of Control (Sebuah Fokus kontorl) Menandakan sebuah persegi panjang yang sempit ditempatkan diatas sebuah garis hidup. Menandakan ketika suatu objek mengirim atau menerima pesan. A Massege (sebuah Pesan) Menyampaikan informasi dari satuobjek ke objek yang lain. Object destruction (Objek Penghabisan) Merupakan sebuah X ditempatkan pada akhir suatu garis hidup untuk menunjukkan bahwa itu akan keluar dari eksistensi. http://digilib.mercubuana.ac.id/ Symbol 17 2.4.6 Class Diagram Class Diagram adalah ilustrasi antara class yang dimodelkan didalam sistem. Class Diagram sangat mirip dengan diagram hubungan entitas (ERD). Diagram class menggambarkan class yang meliputi atribut, perilaku dan states, sementara dalam ERD hanya mencakup atribut. ( Denniset al, 2012:513). Komponen class diagram : Tabel 2.5 Komponen Class Diagram (Dennis et al :2012) Term and Definition Symbol A Class (sebuah class) Mewakili jenis orang, tempat atau hal yang sistem harus menangkap dan menyimpan informasi. Memiliki nama yang diketik dengan huruf tebal dan berpusat diatas kompartemen. Memiliki daftar atribut ditengah Kompartemen. Memiliki daftar operasi An Attribut (sebuah atribut) Merupakan sifat yang menggambarkan bagian suatu objek. Attribut name / derived Dapat diturunkan dari atribut lain, ditunjukkan attribut name oleh penempatan garis miring sebelum nama atribut. A Method (sebuah metode) Merupakan tindakan atau fungsi bahwa sebuah class dapat melakukan. Dapat diklasifikasikan sebagai konstruktor, query, atau memperbaharui operasi. Termasuktanda kurung yang mungkin mengandungparameter khusus atau informasi yang dibutuhkan untuk melakukan operasi. http://digilib.mercubuana.ac.id/ Operation name () 18 Lanjutan Tabel 2.5 An Association (sebuah asosiasi) Merupakan hubungan antara beberapa class atau class dirinya sendiri. Diberi label oleh kata kerja frase mana yang 1..* verb phrase 0..1 merupakan hubungan yang tepat. Bisa ada diantara satu atau lebih class Berisi banyaknya simbol yang mewakili minimum dan maximum misalnya waktu class dapat dikaitkan dengan contoh class lain. Class Diagram menggambarkan class dan hubungan antar-class di dalam sistem. Class Diagram dibangun berdasarkan use case diagram, sequence diagram, atau collaboration diagram yang telah dibuat sebelumnya. Diagram Class memberikan pandangan secara luas dari suatu sistem dengan menunjukkan kelas-kelasnya dan hubungan mereka. Diagram Class bersifat statis, menggambarkan hubungan apa yang terjadi bukan yang terjadi jika mereka berhubungan. Sebuah class memiliki tiga area pokok, yaitu : 1. Nama, merupakan nama dari sebuah kelas. 2. Atribut, merupakan properti dari sebuah kelas. Atribut melambangkan batas nilai yang mungkin ada pada objek dari kelas. 3. Operasi, merupakan sesuatu yang bisa dilakukan oleh kelas lain terhadap sebuah kelas. 2.5 Perangkat Lunak Pendukung 2.5.1 Definisi Macromedia Dreamweaver CS5 Macromedia Dreamweaver CS5 adalah sebuah HTML editor profesional untuk mendesain web secara visual dan mengelola situs atau halaman web.Saat ini terdapat software dari kelompok Adobe yang belakangan banyak digunakan untuk mendesain suatu web.Versi terbaru dari Adobe Dreamwever CS5 memiliki beberapa kemampuan bukan hanya sebagai software untuk desain web saja, tetapi juga menyunting kode serta pembuatan aplikasi web. Antara lain: JSP, PHP, ASP, XML, dan ColdFusion. (Christianus Sigit,2010:1). http://digilib.mercubuana.ac.id/ 19 Dalam perkembangannya, Adobe Dreamweaver telah mencapai versinya yang terbaru atau lebih dikenal dengan Adobe Dreamweaver CS5.Fitur-fitur yang dimiliki semakin lengkap dan handal, untuk membuat pengguna Dreamwever CS5 semakin dapat berkreasi dan berinovasi dengan bebas dalam mendesain web.Fitur baru yang semakin handal untuk versi terbaru ini dimunculkan, diantaranya adalah Integrated CMS Support, CSS Inspection, PHP Custom Class Code Hinting, dan Site-Specific Code Hinting. Semua fitur baru tersebut semakin memantapkan pengguna Adobe Dreamwever CS5 untuk semakin mengeksplorasi dan mengeksploitasi ide kreasi pengolahan website. 2.5.2 Definisi PHP Menurut Hirin dan Virgi (2011, p25-p26), PHP atau Hypertext Preprocessor adalah salah satu bahasa pemrograman open source yang sangat cocok atau dikhususkan untuk pengembangan web dan dapat ditanamkan pada sebuah skrip HTML. PHP diciptakan untuk memaksimalkan pengembang web dalam menulis halaman web dinamis dengan cepat, bahkan lebih dari itu kita dapat mengeksplorasi hal-hal yang luar biasa dengan PHP. 2.5.2.1 Sejarah PHP Pada tahun 1995, PHP merupakan singkatan dari Personal Home Page oleh Rasmus Ledorf. Selanjutnya pembuat PHP merilis kode sumber ke khalayak umum (opensource) sehingga membuat banyak programmer mulai tertarik untuk mengembangkan PHP tersebut. PHP 2.0 dirilis pada akhir November1997, di dalamnya sudah diimplementasikan dalam C serta telah disertakan modul-modul tambahan atau dalam PHP sering disebut ekstensi. Pada tahun yang sama perusahaan Zend melakukan penulisan ulang menjadi lebih bersih, cepat dan lebih baik. Pada pertengahan tahun 1998, PHP 3.0 dirilis oleh Zend. PHP berubah dari Personal Home Page menjadi Hypertext Preprocessor. Zend terus memegang peran penting dalam pengembangan PHP 3.0. Pada pertengahan tahun 1999, PHP 4.0 dirilis oleh Zend dan PHP pada versi ini mulai banyak orang menggunakan untuk membangun aplikasi web kompleks tetapi tetap memiliki kecepatan dan stabilitas yang tinggi. 2.5.2.2 Kelebihan dan Kelemahan PHP Beberapa keunggulan dan kelemahan yang dimiliki PHP adalah : http://digilib.mercubuana.ac.id/ 20 Tabel 2.6 Kelebihan dan Kelemahan PHP (Sukarno, 2010 : 25) Kelebihan Kelemahan PHP dapat digunakan pada semua sistem Tidak detail untuk pengembangan skala operasi besar PHP mampu berjalan di beberapa Tidak memiliki sistem pemrogaman Webserver yang ada berorientasi objek yang sesungguhnya PHP mendukung akses ke beberapa PHP memiliki kelemahan security tertentu database yang sudah ada apabila programmer tidak jeli dalammelakukan pemrogaman dan kurang memperhatikan isu konfigurasi PHP PHP bersifat free atau gratis. Kode PHP dapat dibaca semua orang, dan kompilasi hanya dapat dilakukan dengantool yang mahal dari Zend. 2.5.3 MySQL Menurut Hirin dan Virgi (2011, p27-p28), MySQL adalah salah satu perangkatlunak sistem manajemen basis data (database) SQL atau sering disebut dengan DBMS (DatabaseManagementSystem). MySQL memiliki kelebihan yaitu bersifat multi-thread dan multi-user serta mendukung sistem jaringan. MySQL didistribusikan secara gratis dibawah license GNU General PublicLicense (GPL) tetapi terdapat versi komersial bagi kalangan tertentu yang menginginkannya. Kepopuleran MySQL antara lain karena MySQL menggunakan SQL sebagai bahan dasar untuk mengakses database-nya sehingga memudahkan untuk digunakan, kinerja query cepat, dan mencukupi untuk kebutuhan database perusahaan-perusahaan skala menengah kecil. MySQL merupakan database yang pertama kali didukung oleh bahasa pemograman script untuk internet (PHP dan Perl).MySQL lebih sering digunakan untuk membangun aplikasi berbasis web, umumnya pengembangan aplikasinya menggunakan bahasa pemrogaman script PHP. (M. Rudyanto Arief, 2011:151).Komponen - komponen MySQL meliputi: a. Tabel Tabel adalah kumpulan data yang tersusunmenurut aturan tertentu. Secara fisik, tabel berupa grid yang terdiri atas baris dan kolom. Baris menunjukkan recorddata dan kolom menunjukkan fielddata. http://digilib.mercubuana.ac.id/ 21 b. Key Keyberguna sebagai wakil dari tabel yang menunjukkan nilai unik suatu field.Dengan adanya key, proses pencarian menjadi lebih mudah karena tidak ada nilai yang kembar.Ada tiga macam key yang dapat diterapkan pada suatu tabel yaitu: 1. Superkey : Superkeymerupakan satu atau lebih atribut yang dapat membedakan setiap barisdata dalam sebuah tabel secara unik, ada lebih dari satu kumpulan atribut yang bersifat seperti itu pada sebuah tabel. 2. Candidate key : Candidate keymerupakan kumpulan atribut minimal yang dapat membedakan setiap baris data dalam sebuah tabel secara unik. Jadi, sebuah candidate keypastilah superkey, tapi belum tentu sebaliknya. 3. Primary key : Salah satu dari candidate key(jika memang ada lebih dari satu) dapat dijadikan sebagai primarykey. c. Relationship Database dengan kapasitas kecil cukup menggunakan sebuah table saja. Database yang demikian lazim disebut dengan file -file database. Sedangkan untuk suatu system database yang baik dan handal, organisasi data harus melibatkan lebih dari satu tabel dan seluruh table itu harus saling dihubungkan, untuk itu mutlak diperlukan kehadiran suatu relationship (relasi). MySQL juga merupakan program pengakses database yang bersifat jaringan sehingga dapat digunakan untuk aplikasi Multi User (banyak pengguna). MySQL menggunakan bahasa Query standar yang dimiliki SQL (Struktur Query Languange). MySQL tidak dapat berjalan sendiri tanpa adanya sebuah aplikasi lain (interface). MySQL dapat didukung hampir semua oleh program aplikasi baik yang open source seperti PHP maupun yang tidak. Secara umum akses ke database harus melalui tiga tahap, yaitu: 1.Koneksi ke database. 2.Query ke database. 3.Pemutusan koneksi dari database. Sedangkan fungsi-fungsi PHP yang digunakan untuk koneksi dengan database adalah: 1. Mysql_connect(); 2. Mysql_pconnect(); 3. Mysql_select_db(); http://digilib.mercubuana.ac.id/ 22 2.5.4 XAMPP XAMPP merupakan salah satu paket installasi Apache, PHP dan MySQL instant yang dapat kita gunakan untuk membantu proses installasi ketiga produk tersebut. Selain paket installasi instant XAMPP versi 1.6.4 juga memberikan fasilitas pilihan pengunaan PHP4 atau PHP5. Untuk berpindah versi PHP yang ingin digunakan juga sangat sederhana dilakukan dengan mengunakan bantuan PHP Switch yang telah disertakan oleh XAMPP dan yang terpenting XAMPP bersifat free atau gratis untuk digunakan. Sejarah singkat XAMP, merupakan pengembangan dari LAMP (Linux Apache, MySQL, PHP and PERL). XAMPP ini merupakan project nonprofit yang di kembangkan oleh Apache Friends yang didirikan Kai 'Oswald' Seidler dan Kay Vogelgesang pada tahun 2002, project mereka ini bertujuan mempromosikan pengunaan Apache web server.Detail paket pada XAMPP Berikut detail paket installasi yang disertakan pada XAMPP yang digunakan pada tugas akhir ini diantaranya adalah : a. Apache 2.2.6 b. MySQL 5.0.45 c. PHP 5.2.4 + PHP 4.4.7 + PEAR d. PHP Switch win32 1.0 e. XAMPP Control Version 2.5 from www.nat32.com f. XAMPP Security1.0 g. SQLite 2.8.15 h. OpenSSL 0.9.8e i. phpMyAdmin 2.11.1 j. ADOdb 4.95 k. Mercury Mail Transport System v4.01b l. 2.5.5 FileZilla FTP Server 0.9.23 CSS (Cascading Style Sheets) Menurut Andi (2013c:163) menjelaskan bahwa “CSS adalah suatu kumpulan kode- kode untuk memformat atau mengendalikan tampilan isi dalam suatu halaman web”. Ada dua jenis CSS yang dapat anda gunakan yaitu CSS yang bersifat internal dan Eksternal. Anda akan lebih maksimal menggunakan yang eksternal, karena scriptCSS akan tersimpan berupa file CSS tersendiri, jadi akan lebih maksimal melakukan pengeditan, karena biasanya dihubungkan dengan link. Jika anda melakukan perubahan format, Anda cukup melakukan perubahan pada file CSS, maka halaman yang terhubung dengan file CSS tersebut akan ikut berubah. Jika menggunakan CSS bersifat internal pada halaman, maka bila ada perubahan format harus melakukan banyak pengeditan pada semua file. http://digilib.mercubuana.ac.id/ 23 CSS dikembangkan oleh World Wide Web Consortium (W3C) dan menjadi bahasa standar dalam pembuatan web.CSS difungsikan sebagai penopang atau pendukung, dan pelengkap dari file html yang berperan dalam penataan kerangka dan layout. CSS lintas platform, maksudnya dapat dijalankan pada berbagai macam operasi dan web browser.Secara umum, yang dilakukan oleh CSS adalah pengaturan layout, kerangka, teks, gambar, warna, tabel, spasi dan lain sebagainya.Saat ini css telah mencapai pada versi yang ketiga, dimana pada setiap versi selalu ada peningkatan.Berikut perbedaan antara CSS-1, CSS-2 dan CSS-3: 1. CSS-1 Dikembangkan dan berpusat pada formatting dokumen HTML. 2. CSS-2 Dikembangkan untuk bias memenuhi kebutuhan terhadap format dokumen supaya bisa ditampilkan di printer. Pada CSS-2 ini mendukung juga dalam penentuan posisi konten, downloadable,font,table-layout, dan media type untuk printer. 3. CSS-3 Merupakan versi pengembangan dari sebelumnya.Pada versi ini terdapat beberapa tambahan dan mengarah pada efek animasi. Namun, saat ini belum semua didukung oleh web browser. 2.5.6 PHP MyAdmin PHP MyAdmin sebenarnya adalah sebuah aplikasi web yang ditulis menggunakan bahasa pemrograman PHP. Sebagaimana aplikasi-aplikasi lain untuk lingkungan web (aplikasi yang dibuka menggunakan pramban atau browser) PHP MyAdmin juga mengandung unsur HTML/XHTML, CSS, dan juga kode java script. PHP MyAdmin merupakan aplikasi web yang bersifat open source (sumber terbuka) sejak pertama kali di buat dan dikembangkan. Dengan dukungan dari banyak developer dan translator, aplikasi web phpMyAdmin mengalami perkembangan yang cukup pesat dengan ketersediaan banyak pilihan bahasa. PHP MyAdmin menawarkan fitur yang mencakup pengelolaan keseluruhan server MySQL (memerlukan super-user) dan juga basis data tunggal, PHP MyAdmin juga mempunyai sistem internal yang digunakan untuk mengelola metadata dan mendukung fiturfitur untuk operasi tingkat lanjut. Melalui sistem administrator, PHP MyAdmin juga dapat mengelola user dan sekaligus hak aksesnya (privilege). http://digilib.mercubuana.ac.id/ 24 2.6 Metode Pengujian Metode pengujian adalah proses cara mengeksekusi suatu program dengan maksud menemukan kesalahan. Metode Pengujian dalam pengetesan sistem terbagi menjadi dua macam, yaitu yang pertama adalah metode Black Box, dan White Box (glass box). Untuk tugas akhir ini digunakan metode Black Box untuk pengujian system yang dibuat. 2.6.1 Metode Black Box Menurut (Roger S. Pressman : 2010), Pengujian black-box berfokus pada persyaratan fungsional perangkat lunak. Dengan demikian, pengujian black-box memungkinkan perekayasa perangkat lunak mendapatkan serangkaian kondisi input yang sepenuhnya menggunakan semua persyaratan fungsional untuk suatu program. Pengujian black-box bukan merupakan alternative dari teknik white-box, tetapi merupakan pendekatan komplementor yang kemungkinan besar mampu mengungkap kesalahan dari pada metode white-box. Pengujian black-box berusaha menemukan kesalahan dalam kategori sebagai berikut: 1. Fungsi-fungsi yang tidak benar atau hilang. 2. Kesalahan interface. 3. Kesalahan dalam stuktur data atau akses database eksternal. 4. Kesalahan kinerja. 5. Inisialisasi dan kesalahan terminasi. Pengujian program aplikasi dilakukan dengan metode Black Box Testing. Metode Black Box Testing ini merupakan pengujian berdasarkan fungsi dari program.Tujuan dari metode Black Box Testing ini adalah untuk menemukan kesalahan fungsi pada program. 2.6.2 Metode White Box White Box testing secara umum merupakan jenis testing yang lebih berkonsentrasi terhadap “isi” dari perangkat lunak itu sendiri. Jenis ini lebih banyak berkonsentrasi kepada source code dari perangkat lunak yang dibuat sehingga membutuhkan proses pengetesan yang jauh lebih lama dan lebih ‘mahal’ dikarenakan membutuhkan ketelitian dari para tester serta kemampuan teknis pemrograman bagi para tester-nya (Rizky, 2011). Prinsip dari keluaran tipe pengetesan ini adalah: 1. Menjamin bahwa semua alur program yang independen (dalam bentuk modul, form, procedure, class, dan lainnya) telah diuji minimal satu kali. 2. Menjamin telah melakukan pengujian terhadap semua kondisi percabangan dengan nilai true dan false. 3. Telah melakukan testing terhadap semua jenis perulangan dengan kondisi normal dan kondisi yang dianggap melampaui batas perulangan (umumnya kondisi yang melampaui batas harus diatasi oleh prosedur tertentu). http://digilib.mercubuana.ac.id/ 25 Telah melakukan pengujian terhadap struktur data internal (seperti variabel) agar terjaga validasinya, karena validasi sangat menentukan layaknya kolom-kolom yang mandatory harus diisi, pemberian peringatan ketika user melakukan kesalahan dalam penginputan agar saat penyimpanan ke database sudah benar dan telah melewati tahap validasi yang telah diberikan. 2.6.3 Penjadwalan Pengujian Sistem Penjadwalan pengujian system merupakan aktivitas yang mendistribusikan usaha estimasi pada durasi pengujian yang direncanakan dengan mengalokasikan usaha untuk tugas rekayasa perangkat lunak tertentu. Penting untuk dicatat bahwa jadwal berkembang melampaui waktu akan membuat kemunduran waktu pada aktivitas pengetesan yang sudah dijadwalkan sebelumnya, dan akhirnya usaha pendistribusian memaksimalkan sumber-sumber daya, dan suatu tanggal akhir yang telah dianalisis dan ditentukan akhirnya tidak menjadi efisien. Resiko ketertinggalan waktu juga berdampak pada perencanaan awal yang telah disusun sebelumnya. Agar lebih teratur, alokasi waktu setiap tugas yang dijadwalkan harus dialokasikan dalam sejumlah satuan kerja (misal person-day activity). Sebagai tambahan, pada setiap tugas yang harus ditetapkan tanggal mulai dan tanggal selesai yang merupakan fungsi dari saling ketergantungan, serta apakah kerja akan dilakukan secara penuh waktu atau paruh waktu. 2.7 Pengelolahan Data Aset 2.7.1 Definisi Pengelolahan Pengelolahan adalah suatu istilah yang berasal dari kata “kelola” mengandung arti serangkaian usaha yang bertujuan untuk mengali dan memanfaatkan segala potensi yang dimiliki secara efektif dan efisien guna mencapai tujuan tertentu yang direncanakan sebelumnya. Pengolahan dapat juga diartikan suatu rangkaian kegiatan yang berintikan perencanaan, pengorganisasian, penggerakan dan pengawasan yang bertujuan menggali dan memanfaatkan sumber daya alam yang dimiliki secara efektif untuk mencapai tujuan organisasi yang telah ditentukan. http://digilib.mercubuana.ac.id/ 26 2.7.2 Definisi Aset Aset adalah barang yang dalam pengertian hukum disebut benda yang terdiri dari benda bergerak dan benda tidak bergerak, baik yang berwujud (tangible) maupun yang tidak berwujud (intangible) yang mencakup dalam aktiva, kekayaan atau harta dari suatu instansi, organisasi, badan usaha ataupun individu perorangan. Menurut Sukrisno Agus (2012 : 269-271) aset berdasarkan bentuknya dibagi atas dua jenis, yaitu aset berwujud (tangible) dan aset tidak berwujud (intangible). Bentuk aset berwujud adalah bangunan, infrastruktur, mesin atau peralatan bersistem, furnitur, utensil, equitment, dan fasilitas. Sedangkan untuk bentuk asset yang tidak berwujud adalah system organisasi (Tujuan, Visi dan Misi), Patent (Hak Cipta), Quality (Kualitas), Goodwill (Nama Baik atau Citra), Culture (Budaya), Capacity (Sikap, Hukum, Pengetahuan dan keahlian), Contract (Perjanjian), dan Motivation (Motivasi). Aset tangible (berwujud) adalah asset yang mempunyai masa manfaat lebih dari dua belas bulan untuk digunakan dalam kegiatan pemerintahan atau dimanfaatkan oleh masyarakat umum. Aset tangible (berwujud) meliputi tanah, peralatan, mesin, gedung, jalan, irigasi dan jaringan. Sedangkan asset intangible (tidak berwujud) adalah asset non keuangan yang dapat diidentifikasikan dan tidak mempunyai wujud fisik serta dimiliki untuk digunakan dalam menghasilkan barang atau jasa atau digunakan untuk tujuan lainnyatermasuk atas hak kekayaan intelektual. 2.7.3 Tujuan Pengelolahan data Aset Tujuan dari pengelolahan data asset adalah untuk mengoptimalkan potensi pengadaan barang dan jasa dari asset yang bersangkutan, meminimalisir resiko dan biaya, dan meningkatkan nilai positif modal alami dan social dalam siklus kehidupan suatu asset. Memantau kegiatan pencatatan semua koleksi yang dimiliki oleh sebuah perusahaan. 2.8 Definisi Inventaris Menurut Miktakhul Huda (2011 : 49) Inventaris adalah suatu daftar semua fasilitas yang ada diseluruh bagian, termasuk gedung dan isinya. Inventarisasi bertujuan untuk member tanda pengenal bagi semua fasilitas di industri. Inventaris yang dibuat harus mengandung informasi yang jelas dan tepatdimengerti dengan cepat, sehingga dapat membantu kelancaran pekerjaan. http://digilib.mercubuana.ac.id/ 27 Inventaris adalah kegiatan pencatatan semua koleksi yang dimiliki sebuah perusahaan. Kegiatan apabila dijabarkan terdiri dari 3 tahap, yaitu : 1. Pemberian stempel kepemilikan perusahaan. 2. Pemberian nomor inventaris. 3. Pencatatan data koleksi dalam table inventaris. 2.11 Definisi Distribusi Distribusi adalah kegiatan yang dilakukan untuk menyalurkan barang dan jasa dari tangan produsen ketangan konsumen yang membutuhkan. Secara garis besar distribusi dibagi menjadi tiga, yaitu : 1. Distribusi langsung Merupakan sistem penyaluran barang yang disampaikan langsung tanpa menggunakan perantara. 2. Distribusi semi langsung Merupakan sistem penyaluran barang yang disampaikan produsen kepada konsumen melalui pedagang eceran. 3. Distribusi tidak langsung Merupakan sistem penyaluran barang yang disampaikan produsen kepada konsumen melalui penjualan barang kepada perantara terlebih dahulu (agenataugrosir). http://digilib.mercubuana.ac.id/