BAB II LANDASAN TEORI 2.1
Pengertian Informasi Hamim Tohari (2014:7) mengemukakan sumber dari informasi adalah data. Data adalah fakta atau kenyataan yang menggambarkan suatu kejadian – kejadian yang mempunyai arti tersendiri. Informasi adalah data yang telah diproses sedemikian rupa sehingga memiliki arti yang lebih bermanfaat bagi penggunanya. Sedangkan menurut I Putu Agus Eka Pratama (2014:9), Informasi merupakan hasil pengolahan data dari satu atau berbagai sumber yang kemudian diolah sehingga memberikan nilai, arti dan manfaat.
2.2
Pengertian Sistem Informasi Menurut Tata Sutabri (2012 : 38), 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 laporan – laporan yang diperlukan oleh pihak luar tertentu. Sedangkan menurut I Putu Agus Eka Pratama (2014:10), Sistem informasi merupakan gabungan dari empat bagian utama yaitu perangkat lunak (software), perangkat keras (hardware), infrastruktur dan sumber daya manusia (SDM) yang terlatih. Keempat bagian utama ini saling berkaitan untuk menciptakan sebuah sistem yang dapat mengolah data menjadi informasi yang bermanfaat. Di dalamnya juga termasuk proses perencanaan, kontrol, koordinasi dan pengambilan keputusan. Sehingga sebagai suatu sistem yang mengolah data menjadi informasi yang akan disajikan dan digunakan oleh pengguna maka sistem informasi merupakan
1
http://digilib.mercubuana.ac.id/
sebuah sistem yang kompleks. Bukan hanya komputer saja yang bekerja (beserta software dan hardware di dalamnya) namun juga manusia (dengan brainware yang dimiliki).
2.3
Pengertian Analisa Dan Perancangan Sistem Menurut Satzinger, Jackson, Burd (2005: 4), “System analysis is the process of understanding and specifying in detail what the information system should do.” Dapat diartikan bahwa, analisa sistem adalah suatu proses pemahaman dan menentukan secara rinci apa yang sistem informasi harus lakukan. Sedangkan perancangan sistem, “System design is the process of specifying in detail how the many components of the information system should be physically implemented,” yang artinya perancangan sistem adalah suatu proses dari menentukan secara rinci bagaimana komponenkomponen dari sistem informasi harus diimplementasikan secara fisik.
2.4
Konsep Dasar Basis Data
2.4.1 Pengertian Basis Data Menurut Satzinger, Jackson, Burd (2005: 398), “A database is an integrated collection of stored data that is centrally managed and controlled.” Dapat diartikan bahwa, basis data (database) adalah sekumpulan data yang saling terintegrasi yang tersimpan dan dikelola serta dikontrol secara terpusat. Sedangkan menurut Verdi Yasin (2012: 274), basis data (database) adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat digunakan oleh suatu program komputer untuk memperoleh informasi dari basis data tersebut. Basis data adalah sekumpulan data yang saling terhubung satu sama lain secara logika dan suatu deskripsi data yang dirancang untuk memenuhi kebutuhan informasi
2
http://digilib.mercubuana.ac.id/
suatu organisasi. Pendefinisian basis data meliputi spesifikasi dari tipe data, struktur dan batasan dari data atau informasi yang akan disimpan. Database merupakan salah satu komponen yang penting dalam sistem informasi karena merupakan basis dalam menyediakan informasi pada para pengguna atau user.
2.4.2 Model Basis Data Di dalam bukunya, Satzinger, Jackson, Burd (2005: 399) mengemukakan terdapat 4 jenis model basis data yang digunakan saat ini : 1. Hirarki 2. Jaringan 3. Relasional 4. Berorientasi Objek Model hirarki merepresentasikan data menggunakan kumpulan records yang disusun terorganisir ke dalam sebuah hirarki. Model jaringan juga mengelompokkan elemen – elemen data ke dalam kumpulan records tetapi memungkinkan records tersebut ke dalam struktur jaringan yang lebih fleksibel. Model hirarki dan model jaringan digunakan terutama pada sejumlah aplikasi pemrosesan transaksi berskala besar. Pada model basis data relasional data disimpan ke dalam struktur – struktur yang disebut tabel atau relasi, tabel pada model basis data relasional mirip dengan tabel konvesional, keduanya memiliki kolom dan baris namun istilah pada basis data relasional berbeda dengan basis data konvensional, baris pada tabel disebut row atau record, kolom pada tabel disebut attribute atau field, satu cell di dalam sebuah tabel disebut attribute value, field value atau data element sedangkan model basis data berorientasi objek digunakan pada rekayasa perangkat lunak berorientasi objek.
2.4.3 Pengertian Sistem Basis Data Menurut Rosa. S.A dan M. Salahuddin. 2013 :43, Sistem basis data adalah sistem terkomputerisasi yang tujuan utamanya adalah memelihara
3
http://digilib.mercubuana.ac.id/
data yang sudah diolah atau informasi dan membuat informasi tersedia saat dibutuhkan. Pada intinya basis data adalah media untuk menyimpan data agar dapat diakses dengan mudah dan cepat. Sistem informasi tidak dapat dipisahkan dengan kebutuhan basis data apapun bentuknya, entah berupa file teks ataupun Database Management System (DBMS). Kebutuhan basis data dalam sistem informasi meliputi : 1. Memasukkan, menyimpan dan mengambil data 2. Membuat laporan berdasarkan data yang telah disimpan
2.4.4 DBMS Menurut Satzinger, Jackson, Burd (2005: 398), “A DBMS is a system software that manages and controls access to a database, A DBMS is a system software component that is generally purchased and installed separately from other system software components (for example, operating system) .” Dapat diartikan bahwa, DBMS (Database Management System) adalah sistem perangkat lunak yang mengelola dan mengontrol akses ke basis data. DBMS adalah komponen sistem perangkat lunak yang umumnya dibeli dan diinstal secara terpisah dari komponen sistem perangkat lunak lainnya (sebagai contoh, sistem operasi). Sedangkan menurut Verdi Yasin (2012: 276), DBMS (Database Management System) adalah suatu sistem perangkat lunak yang memungkinkan pengguna untuk mendefinisikan, membuat, memelihara serta mengatur akses terhadap basis data. DBMS (Database Management System) adalah suatu sistem perangkat lunak yang digunakan untuk membuat, merawat dan menyediakan pengontrolan akases pada pengguna basis data. Syarat minimal suatu aplikasi dapat dikatakan sebagai DBMS menurut Rosa. A.S dan M. Salahuddin (2013:45) adalah sebagai berikut : 1. Menyediakan fasilitas untuk mengelola akses data
4
http://digilib.mercubuana.ac.id/
2. Mampu menangani integritas data 3. Mampu menangani akses data yang dilakukan 4. Mampu menangani backup data
2.4.5 Fasilitas DBMS DBMS menyediakan beberapa fasilitas sebagai berikut : 1. Data Definition Language (DDL) Data
Definition
memungkinkan
Language administrator
adalah basis
suatu data
bahasa atau
yang
pemakai
mendeskripsikan dan memberi nama entity – entity, atribut –atribut dan hubungan yang diperlukan untuk aplikasi bersama dengan segala intregritas yang terkait dan batasan keamanan. Data Definition Language memperbolehkan pemakai untuk membuat spesifikasi tipe data, mendefinisikan basis data, struktur data dan constraint data untuk disimpan dalam basis data. 2. Data Manipulation Language (DML) Data Manipulation Language (DML) adalah suatu menyediakan sel operasi untuk mendukung pengoperasian dan manipulasi data yang terdapat dalam basis data. Data Manipulation Language memperbolehkan pemakai untuk memasukkan, memperbaharui, menghapus dan mengirim atau mengambil data dari basis data. (Verdi Yasin, 2012:276)
2.5
Konsep Dasar Berorientasi Objek Menurut Satzinger, Jackson, Burd, Jackson, Burd
(2005: 60),
“The object oriented approach to system development views an information system as a collection of interacting objects that work together to accomplish tasks. Conceptually, there are no separate processes or programs; there are no separate data entities or files. The system in operation consists of objects. An objects is a thing in the computer system that is capable of responding a message.”
5
http://digilib.mercubuana.ac.id/
Dapat
diartikan
bahwa,
pendekatan
berorientasi
objek
untuk
pengembangan sistem memandang sistem informasi sebagai kumpulan objek – objek yang saling berinteraksi yang bekerja sama untuk menyeleseaikan tugas - tugas. Secara konseptual, tidak terdapat proses – proses atau program – program yang terpisah; tidak terdapat entitas data atau file – file yang terpisah. Sistem di dalam operasi terdiri dari berbagai objek. Objek adalah sesuatu di dalam sistem komputer yang mampu merespon pesan. Menurut Rosa. A.S dan M. Salahuddin (2013 :104), berikut ini adalah beberapa konsep dasar yang harus dipahami tentang metodologi berorientasi objek : 1. Kelas (Class) Kelas adalah kumpulan objek - objek dengan karakteristik yang sama. Secara teknis kelas adalah sebuah struktur tertentu dalam pembuatan perangkat lunak. Kelas merupakan bentuk struktur pada kode program yang menggunakan metodologi berorientasi objek. 2. Objek (Object) Objek adalah abstraksi dan sesuatu yang mewakili dunia nyata seperti benda, manusia, satuan organisasi, tempat, kejadian, struktur, status atau hal – hal lain yang bersifat abstrak. Objek merupakan suatu entitas yang mampu menyimpan informasi (status) dan mempunyai operasi (kelakuan) yang dapat diterapkan atau dapat berpengaruh pada status objeknya. Objek mempunyai siklus hidup yaitu diciptakan, dimanipulasi dan dihancurkan. 3. Metode (Method) Operasi atau metode merupakan fungsi atau transformasi yang dapat dilakukan terhadap objek atau dilakukan objek. 4. Atribut (Attribute) Atribut dari sebuah kelas adalah variabel global yang dimiliki sebuah kelas. Atribut dapat berupa nilai atau elemen – elemen data yang dimiliki objek dalam kelas objek.
6
http://digilib.mercubuana.ac.id/
5. Abstraksi (Abstraction) Prinsip untuk merepresentasikan dunia nyata yang kompleks menjadi bentuk model yang sederhana dengan mengabaikan aspek – aspek lain yang tidak sesuai dengan permasalahan. 6. Enkapsulasi (Encapsulation) Pembungkusan atribut data dan layanan (operasi – operasi) yang dipunyai objek untuk menyembunyikan implementasi dan objek sehingga objek lain tidak mengetahui cara kerja-nya. 7. Pewarisan (Inheritance) Mekanisme yang memungkinkan satu objek mewarisi sebagian atau seluruh definisi objek lain sebagai bagian dirinya. 8. Antarmuka (Interface) Antarmuka atau interface sangat mirip dengan kelas tapi tanpa atribut kelas dan memiliki metode yang dideklarasikan tanpa isi. Deklarasi metode pada sebuah interface dapat diimplementasikan oleh kelas lain. Sebuah kelas dapat mengimplementasikan lebih dari satu antarmuka dimana kelas ini akan mendeklarasikan metode pada antarmuka yang dibutuhkan oleh kelas itu sekaligus mendefinisikan isinya pada kode program kelas itu. 9. Reusability Pemanfaatan kembali objek yang sudah didefinisikan untuk suatu permasalahan pada permasalahan lainnya yang melibatkan objek tersebut. 10. Generalisasi dan Spesialisasi Menunjukkan hubungan antara kelas dan objek yang umum dengan kelas dan objek yang khusus. 11. Komunikasi antar objek Komunikasi antar objek dilakukan lewat pesan (message) yang dikirim dari satu objek ke objek lainnya. 12. Polimorfisme (Polymorphism)
7
http://digilib.mercubuana.ac.id/
Kemampuan suatu objek untuk digunakan di banyak tujuan yang berbeda dengan nama yang sama sehingga menghemat baris program. 13. Package Package adalah sebuah kontainer atau kemasan yang dapat digunakan untuk mengelompokkan kelas – kelas sehingga memungkinkan beberapa kelas yang bernama sama disimpan dalam package yang berbeda.
2.5.1 Pengertian Analisa Berorientasi Objek Menurut Satzinger, Jackson, Burd, Jackson, Burd
(2005: 60)
“Object-Oriented Analysis (OOA) defines all of the types of object that the user need to work with and shows what user interactions are required to complete tasks.” Dapat diartikan bahwa, Analisa berorientasi objek (object oriented analysis) mendefinisikan semua jenis objek – objek yang pengguna butuhkan untuk bekerja dan menunjukkan interaksi pengguna apa yang diperlukan untuk menyelesaikan tugas – tugas tersebut.
2.5.2 Pengertian Desain Berorientasi Objek Menurut Satzinger, Jackson, Burd (2005: 60) “Object-Oriented Design (OOD) defines all of the additional types of objects necessary to communicate with people and devices in the system, shows how the object interact to complete tasks, and refines the definition of each type of objects so it can be implemented with a specific language or environment.” Dapat diartikan bahwa, Desain berorientasi objek (object oriented design) mendefinisikan semua jenis tambahan dari objek – objek yang diperlukan untuk berkomunikasi dengan orang dan perangkat di dalam sistem, menunjukkan bagaimana objek – objek berinteraksi untuk menyelesaikan tugas - tugas dan menyempurnakan definisi dari setiap objek sehingga dapat diimplementasikan dengan bahasa atau kondisi tertentu.
8
http://digilib.mercubuana.ac.id/
2.5.3 Pengertian Pemrograman Berorientasi Objek Menurut Satzinger, Jackson, Burd (2005: 60), “Object-Oriented Programming (OOP) consists of writing statements in a programing language to define what each type of object does.” Dapat diartikan bahwa, pemrograman berorientasi objek terdiri dari penulisan
pernyataan
ke
dalam
bahasa
pemrograman
untuk
mendefinisikan apa saja yang dapat dilakukan dari setiap jenis objek.
2.5.4 Pengertian Basis Data Berorientasi Objek Menurut Satzinger, Jackson, Burd (2005: 400), “Object database management system is a database management system that stores data as objects or class instances.” Dapat diartikan bahwa sistem manajemen basis data yang menyimpan data sebagai objek – objek atau class instances. Object database management systems (ODBMSs) didesain secara khusus untuk menyimpan objek - objek dan berinteraksi dengan bahasa pemrograman berorientasi objek, memungkinkan menyimpan objek ke dalam files atau relational databases, selain itu keuntungan menggunakan ODBMS menurut Satzinger, Jackson, Burd (2005: 400) yaitu termasuk dukungan langsung terhadap metode penyimpanan, pewarisan, objek bersarang, hubungan antar objek dan programmer-defined data types (jenis data yang ditentukan programmer). Dengan menggunakan programmer-defined data types kita dapat membuat sebuah array yang akan menyimpan beberapa tipe data. Programmer-defined data types biasanya didefinisikan di dalam code module, sehingga dapat dikenali di semua modul yang terdapat di dalam proyek. Berikut ini langkah – langkah untuk membuat skema basis data objek dari sebuah class diagram menurut Satzinger, Jackson, Burd (2005: 400) : 1. Tentukan kelas – kelas mana yang membutuhkan penyimpanan 2. Tentukan persistent classes (kelas tetap)
9
http://digilib.mercubuana.ac.id/
3. Tunjukkan relasi antar persistent classes 4. Pilih tipe data dan batasan nilai yang sesuai (jika perlu) untuk setiap field
2.6
UML
2.6.1 Pengertian UML Menurut Satzinger, Jackson, Burd (2005: 48), “UML is a standard set of model constructs and notations developed specifically for objectoriented development. By using uml, analysts and end-user are able to depict and understand a variety of specific diagrams used in system development project.” Yang artinya adalah UML merupakan suatu set standar konstruksi model dan notasi yang dikembangkan secara khusus untuk pengembangan berorientasi objek. Dengan menggunakan UML, para analis dan pengguna akhir dapat menggambarkan dan memahami berbagai diagram khusus yang digunakan dalam proyek pengembangan sistem. Sedangkan menurut Verdi Yasin (2012: 268), UML merupakan bahasa standar untuk penulisan blueprint software yang digunakan untuk visualisasi, spesifikasi, pembentukan dan pendokumentasian alat – alat dari sistem perngkat lunak. UML disebut sebagai bahasa pemodelan bukan metode. Bahasa pemodelan (sebagian besar grafik) merupakan notasi dari metode yang digunakan untuk mendesain secara cepat. Bahasa pemodelan merupakan bagian terpenting dari metode. Tujuan UML diantaranya adalah : 1. Memberikan model 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 dimengerti secara umum. 3. Menyatukan praktek – praktek terbaik yang terdapat dalam pemodelan.
10
http://digilib.mercubuana.ac.id/
2.6.2 Diagram UML Pada UML 2.3 terdiri dari 13 macam diagram yang dikelompokkan dalam 3 kategori. Pembagian kategori dan macam-macam diagram tersebut dapat dilihat pada gambar dibawah :
Gambar 1 UML 2.3 Diagram Rosa. A.S dan M. Salahuddin (2013, 140) Berikut ini penjelasan singkat dari pembagian kategori tersebut : •
Structure diagrams yaitu kumpulan diagram yang digunakan untuk menggambarkan suatu struktur statis dari sistem yang d imodelkan.
•
Behaviour
yaitu
kumpulan
diagram
yang
digunakan
untuk
menggambarkan kelakuan sistem atau rangkaian perubahan yang terjadi pada sebuah sistem. •
Interaction diagrams yaitu kumpulan diagram yang digunakan utuk menggambarkan interaksi sistem dengan sistem lain maupun interaksi antar subsistem pada suatu sistem
http://digilib.mercubuana.ac.id/
1. Use Case Diagram Menurut Yasin (2012:198) 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. Menurut Satzinger, Jackson, Burd (2005: 213) “Use case diagram is a diagram showing the various user roles and the way those users interact with the system.” Dapat diartikan bahwa, “Use case diagram adalah diagram yang menggambarkan berbagai peranan pengguna dan bagaimana pengguna tersebut berinteraksi dengan sistem. Simbol yang digunakan dalam use case diagram terdiri dari: 1. Use case: suatu kegiatan yang dilakukan oleh sistem, biasanya dalam menanggapi permintaan oleh pengguna sistem. 2. Actor: orang yang menggunakan sistem pada setiap use case. 3. Connecting Line: berada di antara aktor dan use case yang mengindikasikan aktor mana yang menjalankan use case. 4. Automation Boundary : menunjukkan batas antara lingkungan dimana aktor berada dengan komponen internal dari sistem komputer.
Gambar 2 Simbol Use Case Diagram (Satzinger, Jackson, dan Burd (2005,215)
http://digilib.mercubuana.ac.id/
Dalam melakukan pemodelan use case diagram, seringkali ditemukan lebih dari satu use case untuk menggunakan use case pendukung yang sama. Dalam kasus seperti ini, digunakan hubungan <
atau dapat juga disebut hubungan <<uses>>.
Gambar 3 Contoh Hubungan <> (Satzinger, Jackson, dan Burd (2005,215)
2. Activity Diagram Menurut Yasin (2012:201), Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing – masing alir berawal, decision yang mungkin terjadi dan bagaimana
mereka
berakhir.
Activity
diagram
juga
dapat
menggambarkan proses parallel yang mungkin terjadi pada beberapa eksekusi. Menurut Satzinger, Jackson, Burd (2005: 144), “An activity diagram is simply a workflow diagram that describes the various user
http://digilib.mercubuana.ac.id/
(or system) activities, the person who does each activity and the sequential flow of these activities.” Dapat diartikan bahwa, Activity diagram merupakan sebuah diagram alur kerja sederhana yang menggambarkan berbagai aktivitas pengguna (atau sistem), orang yang melakukan tiap aktivitas dan alur yang berurutan dalam aktivitas tersebut.” Simbol yang digunakan dalam activity diagram terdiri dari: 1. Swimlane : Merupakan area persegi pada activity diagram yagn menunjukkan aktivitas diselesaikan oleh single agent. 2. Synchronization Bar : Merupakan simbol yang digunakan untuk mengontrol pemisahan atau penyatuan dari jalur yang terpisah. 3. Starting Activity : Merupakan simbol yang digunakan untuk memulai aktivitas. 4. Ending Activity : Merupakan symbol yang digunakan untuk mengakhiri aktivitas. 5. Transition Arrow : Merupakan symbol yang digunakan untuk menggambarkan transisi dari suatu aktivitas. 6. Activity
:
Merupakan
simbol
yang
digunakan
untuk
menggambarkan sebuah aktifias. 7. Decision Activity : Merupakan simbol yang digunakan untuk mengambil keputusan.
14
http://digilib.mercubuana.ac.id/
Gambar 4 Simbol Use Case Diagram (Satzinger, Jackson, dan Burd (2005,145). 3. System Sequence Diagram Menurut Satzinger, Jackson, Burd (2005: 213), “System Sequence Diagram is a diagram showing the sequence the messages between an external actors and the system during a use case or scenario.” Dapat diartikan bahwa, “Sistem sequence diagram merupakan sebuah diagram yang menunjukkan urutan –urutan pesan antara aktor eksternal dan sistem selama use case atau skenario” Notasi-notasi yang digunakan dalam system sequence diagram terdiri dari: 1. Actor : Merupakan pengguna yang melakukan interaksi dengan sistem. 2. Input Message : Merupakan pesan masukan ke dalam sistem. 3. Output Message : Merupakan pesan keluaran dari sistem. 4. Object : Merupakan objek yang berinteraksi. 5. Object Lifeline : Merupakan urutan pesan dari atas ke bawah.
http://digilib.mercubuana.ac.id/
Gambar 5 Simbol System Sequence Diagram (Satzinger, Jackson, dan Burd (2005,229) 4. Sequence Diagram Menurut Yasin (2012:201), Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atas dimensi vertical (waktu) dan dimensi horizontal (objek-objek terkait). Sequence diagram biasa digunakan untuk menggambarkan scenario atau rangkaian langkah – langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Menurut Satzinger, Jackson dan Burd (2005:316), sequence diagram menggunakan semua elemen yang sama seperti system sequence diagram. Perbedaannya adalah pada sequence diagram objek sistem digantikan dengan seluruh pesan dan objek internal yang ada didalam sistem.
http://digilib.mercubuana.ac.id/
Gambar 6 Simbol Sequence Diagram (Satzinger, Jackson, dan Burd (2005,318) 5. Class Diagram Menurut Yasin (2012:198), Class diagram adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain, seperti containment, pewarisan, asosiasi dan lain – lain. Menurut Satzinger, Jackson, Burd (2005: 185), “The diagram used to define the problem domain classes is called a UML class diagram.” Dapat diartikan bahwa, diagram yang digunakan untuk mendefinisikan masalah kelas – kelas domain disebut sebagai UML class diagram. Class diagram memiliki 3 bagian, yaitu : 1. Class name : Merupakan nama dari suatu class. 2. Attribute : Merupakan atribut yang dimiliki sebuah class. 3. Method : Merupakan fungsi yang bisa dilakukan oleh sebuah class.
http://digilib.mercubuana.ac.id/
Gambar 7 Simbol Class Diagram (Satzinger, Jackson, dan Burd (2005,185) Hubungan yang ada dalam class diagram, yaitu sebagai berikut : 1. Whole part hierarchies a. Aggregation Aggregation digunakan untuk menggambarkan whole-part relationship antara objek dengan bagian – bagiannya dimana bagian- bagian tersebut dapat eksis secara terpisah.
Gambar 8 Contoh Aggregation (Satzinger, Jackson, dan Burd (2005,192)
http://digilib.mercubuana.ac.id/
b. Composition Composition digunakan untuk menggambarkan whole-part relationship yang lebih kuat dan tidak dapat berdiri sendiri secara
terpisah.
Pada
composition
simbol
diamond
digambarkan secara filled.
2. Association Association class merupakan sebuah class yang merepresentasikan “many-to-many relationship” antara dua class lainnya.
Gambar 9 Contoh Association (Satzinger, Jackson, dan Burd (2005,188) Jumlah
asosiasi
yang
terjadi
disebut
dengan multiplicity. Multiplicity dapat berupa hubungan one-toone atau one-to-many. Tabel 1 Notasi Multiplicity (Satzinger, Jackson, dan Burd (2005,186) Notasi Multiplicity
Keterangan
0..1
Zero or one
1
One and only one
http://digilib.mercubuana.ac.id/
1..1
One and only one alternate
0..*
Zero or more
*
Zero or more alternate
1..*
One or more
1. Generalization atau specialization Generalization didasarkan pada gagasan bahwa orang yang mengklasifikan sesuatu ke dalam hal persamaan dan perbedaan.
Gambar 10 Contoh Generalization (Satzinger, Jackson, dan Burd (2005,190) 6. Design Class Diagram Menurut Satzinger, Jackson dan Burd (2005:302), design class diagram merupakan pengembangan dari domain model class diagram. Pengembangan
tersebut
antara
lain
penambahan method,
menambahkan rincian attribute, dan menambahkan class yang berada diluar problem domain.
http://digilib.mercubuana.ac.id/
Gambar 11 Simbol Class pada Design Class Diagram (Satzinger, Jackson, dan Burd (2005,229) Menurut Satzinger, Jackson dan Burd (2005:306), untuk satu objek melakukan interaksi dengan objek lain, objek tersebut harus mengirimkan pesan.Agar pesan tersebut sampai, objek pertama harus terlihat
oleh
objek
visibility merupakan
kedua. notasi
Pada yang
konteks digunakan
tersebut, navigation untuk
mewakili
kemampuan sebuah objek untuk melihat dan berinteraksi dengan objek lain.
Gambar 12 Contoh Navigation Visibility (Satzinger, Jackson, dan Burd (2005,340)
http://digilib.mercubuana.ac.id/
2.7
Konsep Dasar Helpdesk
2.7.1 Pengertian Helpdesk Berikut beberapa pengertian dari helpdesk yang terdapat dalam berbagai literatur : 1. Philverghis dalam Kurniawan (2011) menyatakan helpdesk adalah nama yang umum digunakan untuk pusat bantuan terhadap end-user. Saat ini helpdesk makin dilihat sebagai satu kesatuan dengan fungsi layanan dan bertanggung jawab untuk menjembantani sumber daya untuk menyelesaikan masalah dan memenuhi kepuasan user. 2. Helpdeskworld dalam Kurniawan (2011) menyatakan helpdesk adalah titik pusat pelaporan masalah dan selanjutnya dikelola atau dikoordinasi. Dari sudut pandang yang lebih luas, juga dilihat sebagai bagian utama dari fungsi layanan, bertanggung jawab menjembatani sumber daya untuk menyelesaikan masalah. Pengguna helpdesk bisa internal atau eksternal, sehingga menjadikannya sangat penting dalam hal kelancaran jalannya organisasi dan kualitas bantuan yang ditawarkan kepada pelanggan.
2.7.2 Tipe Helpdesk Trimawangsari (2010) dalam Kurniawan (2011) menyatakan berdasarkan tipe – tipe customer yang ditanganinya, helpdesk dibagi menjadi dua jenis, yaitu : 1. Internal Helpdesk Adalah helpdesk memberikan pelayanan kepada internal customer yaitu para karyawan yang bekerja pada perusahaan tersebut. Tujuan utama daripada dibentuknya helpdesk ini adalah membantu karyawan untuk
dapat
memaksimalkan
infrastruktur
yang
ada
untuk
mengoptimalkan kinerja mereka. 2. External Helpdesk Adapun external helpdesk biasanya terdapat pada perusahaan yang melakukan penjualan produk atau layanan tertentu kepada pihak di
22
http://digilib.mercubuana.ac.id/
luar perusahaan. Sehingga helpdesk disini ditekankan pada pelayanan terhadap customer pengguna produk atau jasa perusahaan sebagai additional services after sales terhadap penjualan perusahaan tersebut.
2.7.3 Kelebihan Helpdesk Helpdeskworld dalam Kurniawan (2011) menyatakan helpdesk memiliki beberapa kelebihan, antara lain : 1. Helpdesk dapat memberikan solusi atas pertanyaan-pertanyaan maupun complaint yang masuk dalam waktu yang lebih singkat. 2. Helpdesk dapat mengecek status permasalahan yang ada dan mengatur pembagian kerja staff. 3. Helpdesk dapat meningkatkan efisiensi perusahaan dalam menangani pertanyaan dan complaint dari pelanggan. 4. Helpdesk dapat memberikan laporan kerja perkembangan kinerja para staff kepada pimpinan.
2.7.4 Struktur Helpdesk
Gambar 13 Struktur Helpdesk (Trimawangsari, 2010) Keterangan gambar 2.13 yang diambil dari Trimawangsari (2010) dalam Kurniawan (2011) : Gambar diatas mendeskripsikan struktur dan posisi helpdesk dalam suatu organisasi perusahaan. Helpdesk adalah lapisan pertama yang harus
http://digilib.mercubuana.ac.id/
dihubungi oleh end user bila meereka mendapatkan masalah. Helpdesk akan berupaya menanganinya, tapi bila gagal akan mengirimkan ke lapisan yang lebih senior. Selama itu, helpdesk akan menjadi koordinator dari penanganan masalah. End user harus selalu menghubungi helpdesk saat meminta bantuan mereka. End user dilarang untuk menghubungi secara langsung lapisan support yang lebih dalam (tanpa melalui helpdesk).
2.8
Konsep Pengembangan Sistem
2.8.1 SDLC SDLC
(System
Development
Life
Cycle)
adalah
proses
mengembangkan atau mengubah suatu sistem perangkat lunak dengan menggunakan model – model dan metodologi yang digunakan orang untuk mengembangkan sistem – sistem perangkat lunak sebelumnya. SDLC memiliki beberapa model dalam penerapan tahapan prosesnya seperti waterfall, prototype, RAD (Rapid Application Development), model iteratif dan model spiral. (Rosa. S.A dan M. Salahuddin. 2013 :25) Tahapan – tahapan yang ada pada SDLC secara global adalah sebagai berikut : 1. Inisiasi Tahap ini biasanya ditandai dengan pembuatan proposal perangkat lunak. 2. Pengembangan konsep sistem Mendefinisikan lingkup konsep termasuk dokumen lingkup sistem, analisis biaya manfaat, manajemen rencana dan pembelajaran kemudahan sistem. 3. Perencanaan Mengembangkan rencana manajemen proyek dan dokumen perencanaan lainnya. Menyediakan dasar untuk mendapatkan sumber daya (resources) yang dibutuhkan untuk mempermudah solusi. 4. Analisis kebutuhan
24
http://digilib.mercubuana.ac.id/
Menganalisis kebutuhan pemakai sistem perangkat lunak dan mengembangkan kebutuhan user. 5. Desain Mentransformasikan kebutuhan detail menjadi kebutuhan yang sudah lengkap, dokumen desain sistem fokus pada bagaimana dapat memenuhi fungsi – fungsi yang dibutuhkan. 6. Pengembangan Mengkonversi desain ke sistem informasi yang lengkap termasuk bagaimana memperoleh dan melakukan instalasi lingkungan sistem yang dibutuhkan, membuat basis data, mempersiapkan file pengujian,
pengkodean,
pengkompilasian,
memperbaiki
dan
membersihkan program; peninjauan pengujian. 7. Integrasi dan pengujian Pendemonstrasian sistem perangkat lunak bahwa telah memnuhi kebutuhan
yang
dispesifikasikan
pada
dokumen
kebutuhan
fungsional. 8. Implementasi Termasuk pada persiapan implementasi, implementasi perangkat lunak pada lingkungan produksi (lingkungan pada user) dan menjalankan resolusi dari permasalahan yang teridentifikasi dari fase integritas dan pengujian. 9. Operasi dan pemeliharaan Mendeskripsikan pekerjaan untuk mengoperasikan dan memelihara sistem informasi pada lingkungan produksi (lingkungan pada user), termasuk implementasi akhir dan masuk pada proses peninjauan. 10. Disposisi Mendeskripsikan aktivitas akhir dari pengembangan sistem dan membangun data yang sebenernya sesuai dengan aktivitas user.
25
http://digilib.mercubuana.ac.id/
2.8.2 Metode Waterfall Proses tradisional
untuk
melakukan
pengembangan
sistem
informasi dinamakan siklus hidup pengembangan sistem (Systems Development Life Cycle atau 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 system 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. Walaupun demikian, proses itu tidak benar - benar berjalan secara linier, suatu tahap mungkin berjalan secara parallel serta dimungkinkan untuk kembali pada langkah berikutnya
(proses
iterasi)
saat
suatu
keputusan
dipertimbangkan lagi. (Adi Nugroho. 2011:40)
Gambar 14 SDLC (Adi Nugroho. 2011:41)
http://digilib.mercubuana.ac.id/
tertentu
perlu
Penjelasan gambar SDLC : 1. Identifikasi proyek dan seleksi Tujuannya yaitu pemahaman awal situasi bisnis. Hasil : berupa permintaan formal untuk mengembangkan system informasi untuk menyelesaikan permasalahan bisnis. 2. Inisiasi proyek dan perencanaan Tujuannya untuk menentukan spesifikasi kebutuhan dan bagaimana sistem dapat membantu menyelesaikan permasalahan. Hasil : berupa permintaan tertulis untuk pembuatan sistem atau pengembangan yang ada. 3. Analisis Tujuannya
untuk
menganalisis
situasi
bisnis
untuk
menspesifikasikan dan menstrukturkan kebutuhan pengguna dan meyeleksi fitur. Hasil : berupa spesifikasi fungsional sistem. 4. Perancangan logika Tujuannya
untuk mendapatkan
dan
menstrukturkan
kebutuhan
sistem secara keseluruhan. Hasil : berupa spesifikasi terperinci untuk data, laporan, tampilan dan aturan pemrosesan. 5. Perancangan fisik Tujuannya yaitu mengembangkan spesifikasi teknologi. Hasil : berupa struktur program dan basis data, perancangan struktur fisik. 6. Implementasi Tujuannya untuk menulis program, membuat basis data, menginstal dan menguji sistem. Hasil : berupa program dan dokumentasi. 7. Pemeliharaan Tujuannya yaitu memantau kegunaan atau fungsi sistem.
27
http://digilib.mercubuana.ac.id/
Hasil : berupa audit sistem secara periodik.
2.9
Perangkat Lunak Pengembangan Sistem
2.9.1 WebServer Web server adalah suatu program (mesin yang menjalankan program) yang mengerti protokol HTTP dan dapat menanggapi permintaan-permintaan dari web browser yang menggunakan protokol tersebut. (Dedik Kurniawan, 2009:xiv).
2.9.2 XAMPP XAMPP merupakan tool yang menyediakan paket perangkat lunak ke dalam satu buah paket. Dengan menginstall XAMPP maka tidak perlu lagi melakukan instalasi dan konfigurasi web server Apache, PHP, dan MYSQL
secara
manual.
XAMPP
akan
menginstalasi
dan
mengonfigurasikannya secara otomatis untuk anda. (Dedik Kurniawan, 2009:xv).
Gambar 15 Tampilan XAMPP
http://digilib.mercubuana.ac.id/
2.9.3 APACHE Tugas utama Apache adalah menghasilkan halaman web yang benar kepada user berdasarkan kode PHP yang dituliskan oleh pembuat halaman web. Jika diperlukan juga berdasarkan kode PHP yang dituliskan, maka dapat saja suatu database diakses terlebih dahulu (misalnya dalam MYSQL) untuk mendukung halaman web yang dihasilkan. (Dedik Kurniawan, 2009:xv).
2.9.4 PHPMYADMIN Banyak sekali perangkat lunak yang dapat dimanfaatkan untuk mengelola database dalam MySQL, salah satunya adalah PHPMyAdmin. Dengan PHPMyAdmin kita dapat membuat tabel, mengisi data dan lainlain dengan mudah tanpa harus menghafal perintahnya. (Dedik Kurniawan, 2009:xvi).
Gambar 16 Tampilan PHPMYADMIN
2.9.5 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, Postgre
http://digilib.mercubuana.ac.id/
SQL dan lain- lain.
MySQL berfungsi untuk mengolah database
menggunakan bahasa SQL. (Anhar. 2010:45) MySQL adalah satu jenis database server yang sangat terkenal dan banyak digunakan untuk membangun aplikasi web yang menggunakan database sebagai sumber dan pengelolaan datanya. MySQL merupakan database yang pertama kali didukung oleh bahasa pemrograman script untuk internet (PHP dan Perl). MySQL termasuk RDBMS (Relational Database Management System) (M. Rudyanto Arief. 2011:151)
2.9.6 Adobe Dreamweaver Adobe Dreamweaver merupakan software aplikasi yang digunakan sebagai editor HTML untuk mendesain web secara visual. Aplikasi ini juga yang biasa dikenal dengan istilah WYSIWYG (What You See Is What You Get) yang intinya adalah anda tidak harus berurusan dengan tag – tag HTML yang cukup rumit untuk membuat sebuah halaman web. Selain itu, Dreamweaver
juga
memberikan
keleluasaan
kepada
anda
untuk
menggunakannya sebagai media penulisan bahasa pemrograman web. (Madcoms. 2011:2)
Gambar 17 Tampilan Adobe Dreamweaver
http://digilib.mercubuana.ac.id/
2.10
PHP PHP ( PHP: Hypertext Preprocessor) 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. (Anhar. 2010:3) PHP ( PHP: Hypertext Preprocessor) adalah bahasa server – side scripting yang menyatu dengan HTML untuk membuat halaman web yang dinamis. PHP dirancang untuk membentuk halaman web yang dinamis, yaitu halaman web yang dapat membentuk suatu tampilan berdasarkan permintaan terkini seperti menampilkan isi basis data ke halaman web. (M. Rudyanto Arief. 2011: 43) Ada beberapa cara untuk menuliskan script PHP, yaitu : 1.
2.<script language = “php”>
Script PHP
Script PHP Anda
?>
3.
4.<%
Script PHP
Script PHP Anda
?>
%>
5. Script PHP ?>
2.11
Pengujian Perangkat Lunak
2.11.1 Pengertian Pengujian Perangkat Lunak Menurut Rosa. A.S dan M. Salahuddin (2013 : 272), Pengujian adalah satu set aktivitas yang direncanakan dan sistematis untuk menguji atau mengevaluasi kebenaran yang diinginkan. Aktivitas pengujian terdiri dari satu set atau sekumpulan langkah dimana dapat menempatkan desain kasus uji yang spesifik dan metode metode pengujian. Secara umum pola pengujian perangkat lunak adalah sebagai berikut :
31
http://digilib.mercubuana.ac.id/
1. Pengujian dimulai dari level komponen hingga integrasi antar komponen menjadi sebuah sistem. 2. Teknik pengujian berbeda – beda sesuai dengan berbagai sisi atau unit uji dalam waktu yang berbeda – beda pula bergantung pada pengujian pada bagian mana yang dibutuhkan. 3. Pengujian dilakukan oleh pengembang perangkat lunak dan jika untuk proyek besar, pengujian bisa dilakukan oleh tim uji yang tidak terkait dengn tim pengembang perangkat lunak (independent test group (ITG)). 4. Pengujian dan penirkutuan (debugging) merupakan aktivitas yang berbeda tapi penirkutuan (debugging) harus diakomodasi pada berbagai strategi pengujian. Pengujian lebih fokus untuk mencari adanya kesalahan (error) baik dari sudut pandang orang secara umum atau dari sudut pengembang tanpa harus menemukan lokasi kesalahan pada kode program. Penirkutuan (debugging) adalah proses mencari lokasi kesalahan (error) pada kode program sehingga
dapat
segera
diperbaiki
oleh
pembuat
program
(programmer). Pengujian perangkat lunak adalah sebuah elemen topik yang memiliki
cakupan
luas
dan
sering
dikaitkan
dengan
verifikasi
(verification) dan validasi (validasi). Verifikasi mengacu pada sekumpulan aktivitas yang menjamin bahwa perangkat lunak mengimplementasikan dengan benar sebuah fungsi yang spesifik. Validasi mengacu pada sekumpulan aktivitas yang berbeda yang menjamin bahwa perangkat lunak yang dibangun dapat ditelusuri sesuai dengan kebutuhan pelanggan (customer).
2.11.2 Metode White Box Testing White box testing yaitu menguji perangkat lunak dari segi desain dan kode program apakah mampu menghasilkan fungsi – fungsi, masukan dan keluaran sesuai dengan spesifikasi kebutuhan. White box testing
32
http://digilib.mercubuana.ac.id/
dilakukan dengan memeriksa lojik dari kode program. Pembuatan kasus uji bisa mengikuti standar pengujian dari standar pengujian seharusnya. (Rosa. A.S dan M. Salahuddin.2013 : 275) 2.11.3 Metode Black Box Testing Black box testing yaitu menguji perangkat lunak dari segi spesifikasi fungsional tanpa menguji desain dan kode program. Pengujian dimaksudkan untuk mengetahui apakah fungsi – fungsi, masukan dan keluaran dari perangkat lunak sesuai dengan spesifikasi yang dibutuhkan. Pengujian blackbox dilakukan dengan membuat kasus uji yang bersifat mencoba semua fungsi dengan memakai perangkat lunak apakah sesuai dengan spesifikasi yang dibutuhkan. Kasus uji yang dibuat untuk melakukan pengujian blackbox
harus dibuat dengan kasus benar dan
kasus salah. (Rosa. A.S dan M. Salahuddin.2013 : 275) Terdapat setidaknya empat buah jenis pengujian pada pengujian di sisi pengembang (blackbox) ini, yaitu meliputi : 1. Pengujian interface aplikasi Bertujuan untuk mengetahui fungsionalitas dari setiap elemen interface yang ada di setiap halaman pada aplikasi sistem informasi. Elemen ini berupa tombol (button) yang menjalankan aksi sesuai yang diharapkan oleh pengguna dan pengembang. 2. Pengujian fungsi dasar sistem Bertujuan untuk mengetahui sejauh mana kinerja dari setiap fungsi dasar sistem yang ada di dalam aplikasi sistem informasi. 3. Pengujian form handle sistem Bertujuan untuk mengetahui seperti apa dan sejauh mana respon oleh sistem informasi terhadap inputan yang diberikan pengguna. 4. Pengujian keamanan sistem Bertujuan untuk mengetahui sejauh mana tingkat keamanan yang dimiliki
oleh
kenyamanan
sistem kepada
informasi para
untuk
pengguna.
Pratama.2014:51).
33
http://digilib.mercubuana.ac.id/
dapat (I
Putu
memberikan Agus
Eka