7
BAB II LANDASAN TEORI 2.1
Konsep Dasar Sistem Informasi
2.1.1 Definisi Sistem Suatu sistem mempunyai maksud tertentu. Ada yang menyebutkan maksud dari suatu sistem adalah untuk mencapai suatu tujuan (goal) dan ada yang menyebutkan untuk mencapai suatu sasaran (objectives). Goal biasanya dihubungkan dengan ruang lingkup yang lebih luas dan sasaran dalam ruang lingkup yang lebih sempit. Menurut Bambang Hariyanto (2004:59) “Sistem adalah kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu. Komponen-komponen ataau subsistem subsistem saling berinteraksi dan saling berhubungan membentuk satu kesatuan sehingga tujuan atau sasaran sistem tersebut dapat tercapai. Komponen-komponen atau subsistem subsistem saling berinteraksi dan saling berhubungan membentuk satu kesatuan sehingga tujuan atau sasaran sistem tersebut dapat tercapai. Dengan demikian , secara sederhana sistem dapat diartikan sebagai suatu kumpulan dari variable yang saling terorganisasi, saling berinteraksi dan saling bergantung sama lain.
2.1.2 Definisi Informasi Sumber Informasi adalah data. Data merupakan kenyataan yang menggambatkan suatu kejadian-kejadian dan kesatuan nyata. Informasi tanpa adanya data maka informasi tersebut tidak akan terbentuk. Begitu pentingnya peranan data dalam terjadinya sesuatu informasi yang berkualitas. Keakuratan data sangat mempengaruhi terhadap keluaran informasi yang akan terbentuk. Dalam hal ini antara data dan informasi erat kaitannya dalam sistem, seperti yang dikemukakan oleh Jogiyanto HM ( 2005: 7-8) “ Informasi adalah
7
8
data yang telah diolah kedalam bentuk yang lebih berguna bagi si penerima ataupun si pemberi informasi untuk mencapai keputusan”. Menurut Abdul Kadir (2003:28) Informasi adalah data yang telah diolah menjadi sebuah bentuk yang berarti bagi penerimanya dan bermanfaat bagi pengambilan keputusan saat ini atau saat mendatang..Sumber dari informasi adalah data. Data merupakan bentuk jamak dari bentuk tunggal datum atau dataitem. Data adalah kenyataan yang menggambarkan suatu kejadian-kejadian dan kesatuan nyata. Kejadian (event) adalah sesuatu yang terjadi pada saat tertentu.
2.1.3 Definisi Sistem Informasi Seperti telah kita ketahui bahwa informasi merupakan hal yang sangat penting didalam
pengambilan keputusan. Pertanyaannya adalah darimana
informasi tersebut biasa didapatkan?.Informasi dapat diperoleh dari sistem informasi (information systems). Menurut Jogiyanto (2005:11) “Sistem informasi adalah suatu sistem didalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi, bersifat manajerial dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan. Menurut John F. Nash (1995:8), yang diterjemahkan oleh La Midjan dan Azhar Susanto, menyatakan bahwa: Sistem Informasi adalah kombinasi dari manusia, fasilitas atau alat teknologi, media, prosedur dan pengendalian yang bermaksud menata jaringan komunikasi yang penting, proses atas transaksi-transaksi tertentu dan rutin, membantu manajemen dalam pengambilan keputusan
2.2
Analisa Sistem Wahana Komputer (2010:27) menjelaskan bahwa analisa sistem adalah
sebuah proses penelaahan sebuah sistem informasi dan membaginya kedalam komponen-komponen penyusunnya untuk kemudian dilakukan penelitian sehingga diketahui permasalahan-permasalahan serta kebutuhan-kebutuhan yang
9
akan timbul, sehingga dapat dilaporkan secara lengkap serta diusulkan perbaikanperbaikan pada sistem tersebut.
2.3
Metode Waterfall Gaya Metode waterfall adalah memecah sebuah proyek berdasarkan
aktivitas, untuk membuat perangkat lunak, terlebih dahulu harus melakukan kegiatan tettentu, yaitu rekayasa system, analisa system, desain system, pengkodean(coding), pengujian dan pemeliharaan(maintenance). Roger S Pressman (2002:26) Tahapan dalam metode ini adalah perencanaan, analisis, desain, pemrograman, uji coba, implementasi dan pemeliharaan.
2.3.1
Fase Model Waterfall
Gambar 2.1 Metode Waterfall Tahapan Metode Waterfall (Aunur R. Mulyanto, (2008:20)) Pada skema waterfall atau sekuensial linear terdapat beberapa tahapantahapan yang dimana dari tiap-tiap tahapan terdapat penjelasan sebagai berikut :
10
1. Sistem Engineering Karena software merupakan bagian terbesar dari sistem, maka pekerjaan dimulai dengan cara menerapkan kebutuhan semua elemen sistem dan mengalokasikan sebagian kebutuhan tersebut ke software. Pandangan terhadap sistem adalah penting, terutama pada saat software harus berhubungan dengan elemen lain, hardware, software dan database. 2. Analisa Kebutuhan Proses
pengumpulan
kebutuhan
dilakukan
secara
intensif
untuk
menspesifikasikan kebutuhan sistem agar dapat dipahami sistem seperti apa yang dibutuhkan oleh user. Spesifikasi pada tahap ini perlu didokumentasikan. 3. Desain Desain adalah proses multi langkah yang fokus pada desain pembuatan program. Tahap ini mentranslasi kebutuhan dari tahap analisis kebutuhan kerepreentasi desain agar dapat diimplementasikan menjadi program pada tahap selanjutnya. Desain yang dihasilkan pada tahap ini juga perlu didokumentasikan. 4. Coding Desain harus ditranslasikan kedalam program. Hasil dari tahap ini adalah program komputer sesuai dengan desain yang telah dibuat pada tahap desain. 5. Testing Pengujian fokus pada sistem dari segi lojik dan fungsional dan memastikan bahwa semua bagian sudah diuji. Hal ini dilakukan untuk meminimalisir kesalahan (error) dan memastikan keluaran yang dihasilkan sesuai dengan yang diinginkan. 6. Maintanance Tidak menutup kemungkinan sebuah sistem mengalami perubahan ketika sudah dikirimkan pada user. Perubahan bias terjadi karena adanya kesalahan yang muncul dan tidak terdeteksi saat pengujian atau sistem harus beradapatasi dengan lingkungan baru. Tahap pemeliharaan dapat mengulangi proses pengembangan mulai dari analisis spesifikasi untuk perubahan sistem yang sudah ada, tapi tidak untuk membuat sistem baru.
11
2.4
UML (Unified Modelling Language) Pada perkembangan teknik pemrograman berorientasi objek, muncullah
sebuah standarisasi bahasa pemodelan untuk pembangunan sistem yang dibangun dengan menggunakan teknik pemrograman berorientasi objek, yaitu Unified Modeling Language (UML). Definisi UML menurut Rosa, Salahuddin (2011:118) “UML merupakan bahasa visual untuk pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks-teks pendukung”. Adapun katagori UML adalah: 1. Structure diagram yaitu kumpulan diagram yang digunakan untuk menggambarkan suatu struktur statis dari sistem yang dimodelkan. 2. Behavioral diargam yaitu kumpulan diagram yang digunakan untuk menggambarkan kelakuan sistem atau rangkaian perubahan yang terjadi pada sebuah sistem. 3. Interaction diagram yaitu kumpulan diagram yang digunakan untuk menggambarkan interaksi sistem lain maupun interaksi antar subsistem pada suatu sistem. Berikut ini beberapa metode yang digunakan dalam rancangan UML (Unified Modelling Language) 2.4.1. Use Case Diagram Definisi use case diagram “adalah pemodelan untuk kelakuan (behavior) sistem informasi yang akan dibuat dan mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat” Rosa,Salahuddin (2011:130).
12
Table 2.1 Simbol Use Case Diagram (Rosa,Salahuddin. 2011:130) Simbol
Deskripsi
Use case
Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit atau aktor, biasanya dinyatakan
Nama Use Case
Aktor / actor
dengan menggunakan kata kerja diawal frase nama use case.
Orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat diluar sistem informasi yang akan dibuat itu sendiri, jadi walaupun symbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang, biasanya
Nama aktor
dinyatakan menggunakan kata benda diawal frase nama aktor.
add fasilitas
view fasilitas
booking fasilitas customer
admin edit fasilitas
Gambar 2.2 Contoh Use Case Diagram (Munawar, 2005:124) 2.4.2. Activity Diagram Activity diagram adalah teknik untuk mendeskripsikan logika prosedural, proses bisnis dan aliran kerja dalam banyak kasus, akan tetapi perbedaannya dengan flowchart adalah activity diagram bisa mendukung perilaku pararel sedangkan flowchart tidak bisa. (Munawar, 2005:109)
13
Tabel 2.2 Simbol Activity Diagram (Munawar, 2005:109). Simbol
Nama Simbol
Keterangan
Initial State
Titik awal
Final State
Titik akhir
Action State
Aktifitas Sistem
Decision
pilihan untuk pengambilan keputusan
Fork
digunakan untuk menunjukan kegiatan yang dilakukan secara parallel atau untuk meggabungkan dua kegiatan parallel menjadi satu
node awal ActionState1
Menerima Pesanan
keputusan
[else] Pengiriman Semalam
Pengiriman Biasa
Menerima Pembayaran
join
Menutup Pesanan akhir kegiatan
Gambar 2.3 Activity Diagram (Munawar, 2005: 111)
14
2.4.3. Sequence Diagram “Diagram sekuen menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan massage yang dikirimkan dan diterima antar objek.” Rosa, Salahuddin (2011:137). Oleh karena itu untuk menggambar diagram sekuen maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang yang diinstansiasi menjadi objek itu.
Tabel 2.3 Simbol Sequence Diagram. Simbol
Nama Simbol
Object LifeLine
Keterangan
Partisipan Form
merupakan sebuah focus dari control pada Activation
Message
Message (Call)
suatu waktu. Pesan yang mengambarkan komunikasi yang terjadi antar objek. Pesan yang mengambarkan Pemanggilan
yang terjadi antar objek.
Message (return)
Pesan yang dikirim untuk diri sendiri.
Message (return)
Pesan yang dikirim untuk diri sendiri. Menambahkan pemulaan dan menghentikan
Lifetime
titik dari suatu object
15
Gambar 2.4 Sequence Diagram (Munawar, 2005: 91)
2.4.4. Class Diagram Diagram
kelas
atau
class
diagram
adalah
suatu
diagram
yang
menggambarkan struktur sistem dari segi pendefinisian kela-kelas yang akan dibuat untuk membangun sistem. (Rosa Salahuddin, 2011: 122). Kelas memiliki apa yang disebut atribut dan metode atau operasi. Tabel 2.4 Simbol Class Diagram. (John wiley & Sons, System Analysis and Design with UML 2.0, 2005)
Simbol
Nama Simbol Class
Keterangan mengambarkan sesuatu yang mengkapsulkan informasi di class menampung nama class, atribut dan method
• Merupakan tindakan atau fungsi yang dapat di lakukan oleh kelas
operation name ()
• Dapat diklasifikasikan sebagai query, konstruktor, atau perubahan operasi
• Termasuk tanda kurung yang mungkin berisi parameter atau
16
informasi yang dibutuhkan melakukan operasi 1..*
0..1 verb phrase
Asosiasi
Atribut
Aggregation
Generalization
untuk
Asosiasi yang menghubungkan class dengan class Multiplycity. • Merupakan sifat yang menggambarkan keadaan sebuah nama atribut objek • Dapat berasal dari atribut lainnya, yang ditunjukkan dengan menempatkan sebuah garis miring sebelum nama atribut yang Aggregation mengambarkan suatu class terdiri dari class lain atau suatu class adalah bagian dari class lain. Generalization merupakan sebuah taxonomic relationship antara class yang lebih umum dengan class yang lebih khusus.
Gambar 2.5 Class Diagram
(John wiley & Sons, System Analysis and Design with UML 2.0, 2005)
17
2.5
Perancangan Berorientasi Objek Awalnya, dunia perangkat lunak dibangn di atas konsep-konsep
pemrograman linier. Setelah era pemrograman linier yang penuh dengan keterbatasan berlalu, orang mulai beralih ke konsep baru yang lebih baik yang pada dasarnya merupakan pengembangan dari konsep pemrograman terdahulu, yaitu pemrograman terstruktur atau pemrograman modular atau sering pula disebut pemrograman procedural. Konsep objek tersebut kemudian diterapkan dalam lingkup pemrograman. Dalam sebuah program, menu adalah sebuah objek, tampilan layar (form) adalah sebuah objek, tulisan (teks) yang tertera di layar adalah sebuah objek dan seterusnya. Namun sedikit berbeda dengan objek, penggunaan sifat/kepemilikan digantikan dengan atributdan istilah kerja digantikan dengan metoda. Perancangan berorientasi objek bertujuan untuk : a. Sistematika proses desain b. Menghasilkan pendesainan model diagram Atau dengan kata lain Pemrograman orientasi-objek menekankan konsep berikut: 1. kelas kumpulan atas definisi data dan fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebuah class adalah dasar dari modularitas dan struktur OOP. 2. Objek Membungkus data dan fungsi bersama menjadi suatu unit dalam sebuah program komputer, objek merupakan dasar dari modularitas dan struktur dalam sebuah program komputer berorientasi objek. 3. Abstraksi Kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada inti. 4. Enkapsulasi Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak, hanya metode dalam objek tersebut yang diberi ijin untuk mengakses keadaannya adminiistrasi. 5. Polimorfisme
18
Melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan, metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesan tersebut dikirim. 2.6
BASIS DATA (DATABASE) Menurut Fathansyah (2007:11) “Basis data adalah kumpulan data yang
saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redundansasi) yang tidak perlu, untuk memenuhi berbagai kebutuhan”. DBMS merupakan perantara bagi pemakai dengan basis data dalam disk. Contoh-contoh dalam basis data adalah SQL,dBASE,QUEL, dsb
2.7
XAMPP Control Panel Digunakan sebagai perangkat lunak untuk mengatur konfigurasi web
server dan database. XAMPP berperan sebagai kontrol antar muka untuk memudahkan aktivasi koneksi web server local dengan database yang akan digunakan untuk menjalankan sistem manajemen alur kerja.
Gambar 2.6 Tampilan XAMPP Control Panel
19
2.8
PHP dan PHP MyAdmin PHP
(PHP:Hypertext
Preprocessor)
adalah
merupakan
bahasa
pemrograman yang difungsikan untuk membangun suatu website dinamis. PHP Menyatu dengan kode HTML, maksudnya adalah beda kondisi. HTML digunakan sbagai pembangun atau pondasi dari kerangka layout web, sedangkan PHP difungsikan sebagai prosesnya sehingga dengan adanya PHP tersebut, sebuah web akan sangat mudah di-maintenance. PHP Berjalan pada sisi server sehingga PHP disebut sebagai bahasa server side scripting. Artinya bahwa dalam setiap/untuk menjalankan PHP, wajib adanya server. PHP ini bersifat open source sehingga dapat dipakai secara Cuma-Cuma dan mampu lintas platform, yaitu dapat berjalan pada sistem operasi windows maupun linux. (Agus Saputra, 2011:1).
Gambar 2.7 Tampilan PHP (PHP Hypertext Preprocessor)
20
Gambar 2.8 Tampilan PHP MyAdmin 2.9
MySQL MySQL adalah Relational Database Management System (RDBMS) yang
didistribusikan secara gratis dibawah lisensi GPL (General Public License). Dimana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu SQL (Structured Query Language). Bunafit, Nugroho (2005:1). MySQL dapat juga dikatakan sebagai database yang sangat cocok bila dipadukan dengan PHP. Secara umum, database berfungsi sebagai tempat atau wadah untuk menyimpan, mengklasifikasikan data secara professional. MySQL bekerja menggunakan SQL Language (Strructure Query Language). Itu dapat diartikan bahwa MySQL merupakan standar penggunaan database di dunia untuk pengolahan data.
21
2.10
Macromedia Dreamweaver Macromedia Dreamweaver adalah sebuah editor HTML professional
untuk desain secara visual dan mengelola situs halaman Web. Dreamweaver merupakan software utama yang digunakan oleh Web desaigner maupun Web programmer dalam mengembangkan suatu situs Web. Hal ini disebabkan ruang kerja, fasilitas, dan kemampuan Dreamweaver yang mampu meningkatkan produktivitas dan efektifitas dalam desain mampu membangun suatu situs Web.
Gambar 2.9 Dramweaver
2.11
Metode White Box Menurut Roger S. Pressman. (2002:533) “White Box atau juga di sebut
pengujian glass box adalah metode desain testcase yang menggunakan struktur control procedural untuk memperoleh test cast. Dengan menggunakan metode white box, akan dapat diperoleh : 1.
Menjamin seluruh independent path di dalam modul yang dikerjakan sekurang-kurangnya sekali.
22
2.
Mengerjakan seluruh keputusan secara logical.
3.
Mengerjakan seluruh loop yang sesuai dengan batasannya.
4.
Mengerjakan seluruh struktur data internal yang menjamin validitas.
2.12
Metode Black Box Roger S. Pressman. (2002:551), metode black Box testing yaitu pengujian
untuk menemukan kesalahan dalam lingkup kategori sebagai berikut: 1.
Fungsi-
3.
Kesalahan dalam struktur fungsi yang salah atau hilang
2.
Kesalahan interface
data atau akses database eksternal 4.
Kesalahan kinerja
5.
kesalahan inisialisasi dan terminasi Pengujian program aplikasi aplikasi persediaan barang ini 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.13
Definisi outsourching Menurut definisi Maurice Greaver, Outsourcing dipandang sebagai
tindakan mengalihkan beberapa aktivitas perusahaan dan hak pengambilan keputusannya kepada pihak lain (outside provider), dimana tindakan ini terikat dalam suatu kontrak kerjasamaBeberapa pakar serta praktisi outsourcing dari Indonesia juga memberikan definisi mengenai outsourcing, antara lain menyebutkan bahwa outsourcing dalam bahasa Indonesia disebut sebagai alih daya, adalah pendelegasian operasi dan manajemen harian dari suatu proses bisnis kepada pihak luar (perusahaan jasa outsourcing). Secara definitive, Outsourcing diartikan sebagai pemindahan atau pendelegasian beberapa proses bisnis kepada suatu badan penyedia jasa, dimana badan penyedia jasa tersebut melakukan proses administrasi dan manajemen
23
berdasarkan definisi serta kriteria yang telah disepakati oleh para pihak. Istilah Outsourcing ini juga sering disebut juga system kerja kontrak. Definisi lainnya dari outsourcing atau alih daya merupakan proses pemindahan tanggung jawab tenaga kerja dari perusahaan induk ke perusahaan lain diluar perusahaan induk. Perusahaan diluar perusahaan induk bisa berupa vendor, koperasi ataupun instansi lain yang diatur dalam suatu kesepakatan tertentu. Outsourcing dalam regulasi ketenagakerjaan bisa hanya mencakup tenaga kerja pada proses pendukung (non– core business unit) atau secara praktek semua lini kerja bisa dialihkan sebagai unit outsourcing