5 BAB II LANDASAN TEORI 2.1 Perjalanan Dinas 2.1.1 Pengertian Perjalanan Dinas Perjalanan dinas secara umum adalah perjalanan yang dilakukan oleh karwaran atau pegawai suatu perusahaan yang berkitan dengan tugas pekerjaan kedinasan. Tugas pekerjaan kedinasan adalah tugas pekerjaan yang berkaitan dengan kepentingan lembaga perusahaan yang bersangkutan. Perjalanan dinas biasanya dilakukan karena berbagai kepentingan, antara lain pelaksanaan dan pengawasan di kantor cabang atau di area, seminar, tender, janji tamu, penjajakan kerja sama dan lain-lain.(handbook PT Versacon Medical: 2016-2018) Menurut Kamus Besar Bahasa Indonesia, perjalanan diartikan sebagai suatu kegiatan berpergian ke suatu tempat, dinas diartikan sebagai orang yang memimpin suatu unit organisasi. 2.1.2 Jenis jenis Perjalanan Dinas Berdasarkan peraturan perusahaan di PT Versacon Medical, terdapat 2 (dua) jenis perjalanan(handbook PT Versacon: 2016-2018) yaitu: 1. Perjalanan Domestik Perjalanan domestik ini yaitu perjalanan yang di lakukan oleh karyawan ke kota kota yang ada di Indonesia 2. Perjalanan International Perjalanan international yaitu perjalanan ke luar negeri, yang dilakukan untuk melakukan training, kunjungan principle dan lain lain. 2.2 Waterfall Dalam pembuatan suatu aplikasi terdapat beberapa model proses, salah satu dari model proses yang digunakan adalah Waterfall Model. Menurut (Pressman,2010) model waterfall adalah model klasik yang bersifat sistematis, berurutan dalam membangun perangkat lunak.
7 2.3 Basis Data dan Database Management System (DBMS) 2.3.1 Basis Data (Database) Basis data atau Database merupakan kumpulan table-tabel yang berisi datadata yang saling berkaitan (Jubilee, 2014). Pengertian basis data menurut Abdul Kadir adalah suatu penggorganisasian sekumpulan data yang saling terkait sehingga memudahkan aktivitas untuk memperoleh informasi (Kadir, 2014). Berdasarkan pengertian diatas dapat ditarik kesimpulan bahwa basis data adalah kumpulan table-tabel berisi data yabg saling berkaitan untuk memudahkan aktivitas untuk memperoleh informasi. 2.3.2 Database Management System (DBMS) Database Management System (DBMS) merupakan paket program (software) yang dibuat agar memudahkan dan mengefesienkan pemasukan, pengeditan, penghapusan dan pengambilan informasi terhadap database (Yanto, 2016). 2.4 PHP Hypertext Preprocessor PHP Hypertext Preprocessor (PHP) merupakan bahasa pemrograman yang berjalan di sisi server. Ketika user melakukan akses ke sebuah alamat situs dengan mengetikkan alamat URLnya, browser akan mengirimkan request atau permintaan ke webserver (Ardhana, 2013). 2.5 CodeIngniter CodeIgniter merupakan salah satu framework PHP yang diciptakan oleh Rick Ellis. Tujuan dibuatnya framework ini adalah untuk menghasilkan sebuah aturan yang dapat digunakan untuk melakukan pengembangan dari proyek pembuatan website agar dapat diselesaikan lebih cepat dibandingkan dengan pembuatan website secara biasa (Ardhana, 2013). 2.6 XAMPP
8 XAMPP adalah perangkat lunak bebas, yang mendukung banyak sistem operasi, merupakan kompilasi dari beberapa program. Fungsinya adalah sebagai server yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server, MySQL database, dan penerjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan Perl. Nama XAMPP merupakan singkatan dari X (empat sistem operasi apapun), Apache, MySQL, PHP dan Perl. Program ini tersedia dalam GNU (General Public License) dan bebas, merupakan webserver yang mudah digunakan yang dapat melayani tampilan halaman web yang dinamis (Aditya, 2011). 2.7 Metode Software Testing Black Box Pengujian Black Box kadang disebut behavioral testing yaitu pengujuan yang berfokus pada pengetesan kebutuhan fungsional perangkat lunak. Kasus uji yang digunakan metode Black Box yaitu: (Pressman, 2010) 1. Pengecekan fungsi fungsi yang tidak tepat atau hilang. 2. Pengecekan kesalahan antar muka 3. Pengecekan kesalahan pada struktur data atau akses ke basis data eksternal. 4. Pengecekan kesalahan proses inisialisasi dan proses terminasi 2.8 Type Data MySQL Database MySQL menyediakan banyak tipe data untuk digunakan pada saat membuat table pada database. Secara umum tipe data pada MySQL dibagi menjadi 4 (Gilang: 2017)yaitu: 1. Numerical Values yaitu angka atau bilangan seperti 10;123;100.50;- 10;1.2E+17;2.7e-11; dan sebagainya. Tipe data ini dibagi menjadi dua yaitu Bilangan Bulat (Integer) dan Bilangan Pecahan (Floating-Point). Bilangan bulat adalah bilangan tanpa tanda decimal sedangkan bilangan pecahan adalah bilangan dengan tanda desima. Kedua jenis bilangan in dapat bernilai positif (+) dan juga negative (-). Jika bilangan ini dapat bernilai positif(+) atau negative (-), maka disebut SIGNED. Sebaliknya bila tanpa tanda apapun disebut UNSIGNED. Karena tanda positif(+) dapat diabaikan penulisannya maka pada bilangan yang bernilai positif disebut UNSIGNED 2. String / Character Values adalah semua karakter (teks) yang penulisannya selalu diapit oleh tanda kutip baik kutip tunggal ( ) maupun kutip ganda ( ). Hal ini tidak hanya berlaku pada huruf alphabet saja tetapi angka yang ditulis dengan tanda kutip pun akan menjadi karakter atau string.
9 3. Date an Time Values yaitu tanggal dan waktu. Untuk jenis data tanggal dan waktu format standar penulisan tanggalnya adalah tahun-bulan-tanggal, Misalnya untuk 22 Januari 2001 dituliskan 2002-01-22. Untuk penulisan waktu, formatnya adalah jam-menit-detik. Contoh, 13:55:07. Data tanggal dan waktu bias digabung penulisannya menjadi 2002-01-22 13:55:07. 4. NULL. NULL sebenarnya bukan data, tapi dia mewakili sesuatu yang tidak pasti, tidak diketahui atau belum ada nilainya. Pada tipe-tipe data MySQL terdapar beberapa atribut yang memiliki arti sebagai berikut: M, menunjukkan lebar karakter maksimum. Nilai M maksimum adalah 255 D, menunjukkan jumlah angka di belakang koma. Nilai maksimum D adalah 30 tetapi dibatasi oleh nilai M, yaitu tidak boleh lebih besar daripada M-2. Atribut yang di beri tanda [dan] berarti pemakaiannya adalah optional. Jika atribut ZEROFILL disertakan, MySQL akan otomatis menambahkan atribut UNSIGNED. UNSIGNED adalah bilangan tanpa tanda di depannya (misalnya tanda negatif) 2.9 UML UML (Unified Modeling Language) adalah sekumpulan teknik diagram standar yang menyediakan representasi grafis yang cukup kaya untuk model setiap proyek pengembangan sistem dari analisis melalui implementasi (Dennis et al, 2012). Menurut Yasin (2012:268), UML memiliki tujuan UML diantaranya, yaitu : 1. Memberikan model yag 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 pemrograman dan proses rekayasa. 3. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan. 2.9.1 Use Case Diagram Use case diagram mewakili bagaimana sistem berinteraksi dengan lingkungannya dengan menggambarkan kegiatan yang dilakukan oleh
11 Tabel 2.2 Komponen Class Diagram Simbol Nama Deskripsi Class name -Atribute name -/derived attribute name +Operation name() Kelas Merepresentasikan person, tempat, atau hal lain yang harus ditangkap sistem dan menyimpan informasi. Nama kelas diketik tebal dan berada pada posisi tengah. Mempunyai daftar atribut. Memiliki daftar method (operation) Package Merupakan sebuah bungkusan dari satu atau lebih kelas. Association Merupakan hubungan antara beberapa class, atau class dan dirinya sendiri.
12 Tabel Lanjutan 2.3 Class Diagram Simbol Nama Deskripsi Diberi label kata kerja atau nama peran, mana yang lebih baik Directed Association / Asosiasi Berarah Relasi antarkelas dengan makna kelas yang satu digunakan oleh kelas yang lain, asosiasi biasanya juga disertai dengan multiplicity. Generalization Dependency / Kebergantungan Aggregation / agregasi Relasi antarkelas dengan makna generalisasi - spesialisasi (umum khusus). Relasi antarkelas dengan makna kebergantungan antarkelas. Relasi antarkelas dengan makna semua bagian (whole part). 2.9.3 Activity Diagram Activity Diagram mendukung pemodelan logis dari proses bisnis dan workflows. Activity Diagram dapat digunakan untuk semua jenis kegiatan proses-modeling. Dalam banyak hal, activity diagram dapat dilihat sebagai diagram aliran data yang canggih yang digunakan dengan analisis terstruktur (Dennis et al, 2012).
13 Tabel 2.4 Notasi Pemodelan Activity Diagram Simbol Nama Deskripsi Initial Node Menggambarkan tanda awal dari serangkaian tindakan atau kegiatan Activity Digunakan untuk mewakili serangkaian tindakan. Decision Node Digunakan untuk pengambilan keputusan Merge Node Digunakan untuk menghubungkan kembali keputusan yang berbedayang sebelumnya dibuat menggunakan decision node Activity Final Digunakan untuk menghentikan arus control yang spesifik dan arus objek Swimlane Contra flow Digunakan untuk memisahkan activity diagram ke dalam sebuah baris dan kolom untuk menetapkan kegiatan individu (atau tindakan) kepada individu atau objek yang bertanggung jawab untuk melaksanakan kegiatan (atau tindakan) Menunjukkan urutan eksekusi.
14 2.9.4 Sequence Diagram Sequence Diagram menggambarkan objek yang berpartisipasi dalam use case dan pesan yang saling terkirim dari waktu ke waktu untuk satu use case. Sequence diagram adalah model dinamis yang mendukung tampilan yang dinamis dari sistem yang sedang dikembangkan (Dennis et al: 2012) Tabel 2.6 Notasi Pemodelan Komponen Sequence Diagram Simbol Nama Deskripsi Actor - Menggambarkan seseorang atau sesuatu baik perangkat maupun sistem lain yang berinteraksi dengan sistem. - Berpartisipasi secara berurutan dalam pengiriman dan/atau penerimaan - pesan. Ditempatkan dibagian atas diagram. - Object merupakan instance dari sebuah anobject:aclass class dan dituliskan tersusun secara horizontal. Object - Berpartisipasi secara berurutan dengan mengirimkan dan/atau menerima pesan. - Ditempatkan di bagian atas diagram. Mengindikasikan keberadaan sebuah objek dalam basis waktu. Notasi untuk Lifeline LifeLine adalah garis putus-putus vertikal yang ditarik dari sebuah object. Execcution Occurrence Message Message (return) Message (return) Menyatakan objek dalam keadaan aktif dan berinteraksi pesan. Menggambarkan pesan antar object. Pesan yang dikirim untuk diri sendiri secara langsung. Pesan yang dikirim untuk diri sendiri.