BAB 2 LANDASAN TEORI
2.1
Sistem Informasi
2.1.1 Pengertian Sistem Informasi Sistem informasi adalah keteraturan kombinasi dari manusia, hardware, software, jaringan komunikasi, dan sumber data yang dikumpulkan, diubah, dan penyebaran informasi dalam sebuah organisasi. (O’Brien, 2001, p7) Sedangkan pengertian sistem pada area sistem informasi adalah kumpulan komponen yang saling berhubungan bekerja sama untuk mencapai tujuan bersama dengan menerima input dan menghasilkan output melalui proses perubahan yang sudah diatur. (O’Brien, 2001, p8) Pendapat lain mengatakan bahwa sistem informasi adalah sebuah kumpulan
dari
komponen-komponen
yang
saling
berhubungan
yang
mengumpulkan (atau mengambil kembali), mengolah, menyimpan dan mendistribusikan
informasi
untuk
mendukung
pengambilan
keputusan,
koordinasi dan pengendalian di dalam sebuah organisasi. (Laudon, 2004, p8)
2.1.2 Sumber Daya Sistem Informasi Sebuah sistem informasi terdiri dari sumber daya manusia (end user dan IS specialist), perangkat keras (mesin dan media), perangkat lunak (program dan prosedur), data (data dan pengetahuan), dan jaringan (media komunikasi dan dukungan jaringan) untuk membentuk input, pemrosesan, output, penyimpanan,
7
8 dan kegiatan pengendalian yang mengubah sumber daya data menjadi produk informasi. (O’Brien, 2001, p11)
People Hardware
Software
Information System Resource
Data
Network
Gambar 2.1 Sumber Daya Sistem Informasi (Sumber: O’Brien, 2001, p8)
2.1.3 Kegiatan Dasar Sistem Informasi Tiga kegiatan sistem informasi menghasilkan informasi yang diperlukan organisasi untuk mengambil keputusan, pengontrolan operasi, menganalisis masalah, dan menciptakan produk baru atau pelayanan. Kegiatan-kegiatan tersebut adalah input, proses, dan output. (Laudon, 2004, p8)
Input menangkap atau mengumpulkan data mentah dari organisasi atau dari lingkungan eksternal.
Proses mengubah inputan mentah tersebut menjadi bentuk yang memiliki arti.
Output mentransfer informasi yang telah diproses kepada orang atau kegiatan yang akan menggunakannya.
Sistem
informasi
juga
memerlukan
feedback,
yaitu
output
yang
9 dikembalikan kepada orang yang tepat di dalam organisasi untuk membantu mereka mengevaluasi atau memperbaiki tahapan input. ENVIRONMENT Supplier Customer ORGANIZATION INFORMATION SYSTEM Input
Processing Classify Arrange Calculate
Output
Gambar 2.2 Kegiatan Dasar Sistem Informasi (Sumber: Laudon, 2004, p9)
2.1.4 Pengertian Sistem Sistem adalah sekelompok elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan. (McLeod, 2001, p11) Pendapat lain mengatakan bahwa sistem adalah sekumpulan objek seperti manusia, sumber daya, konsep, dan prosedur yang bertujuan untuk menampilkan fungsi yang dapat diidentifikasikan atau untuk mendukung keputusan. (Turban, 2001, p34 )
2.1.5 Pengertian Data Data terdiri dari fakta- fakta dan angka-angka yang secara relatif tidak berarti bagi pemakai; fakta mentah yang belum diolah. (McLeod, 2001, p12)
10 Pendapat lain mengatakan bahwa data adalah fakta mentah atau observasi, biasanya tentang fenomena fisik, atau transaksi bisnis. (O’Brien, 2001, p13)
2.2
Pool
2.2.1 Pengertian Pool Sekumpulan orang atau sumber daya perusahaan yang dapat dibagi; seperti car pool, secretarial pool. (Anonim 2) Pooling adalah pengelompokan aset, sample, perlengkapan, dan sebagainya dengan tujuan untuk memaksimalkan keuntungan bagi pengguna. (Anonim 1)
2.2.2 Pengertian Car Pooling Car Pooling adalah penggunaan mobil yang dibagi, khususnya untuk memperingan pekerjaan, sering oleh orang yang memiliki sebuah mobil tetapi melakukan perjalanan bersama untuk menghemat biaya. (Anonim 1) Adapun terdapat beberapa keuntungan Car Pooling:
Peserta car pool dapat menghemat uang dengan berbagi biaya mengendarai satu mobil. Mengendarai satu mobil menghemat bahan bakar, biaya tol, parkir, dan memelihara kendaraan.
Dengan adanya car pool dapat mengurangi kemampatan jalan.
Car pool mengurangi polusi dan pengeluaran karbondioksida, dengan demikian dapat mengurangi pemanasan global.
11
Car pool mengurangi perjalanan berhubungan dengan stress bagi peserta yang tidak mengemudi. Peserta bergiliran berbagi kendaraan mereka dan mengemudi dengan yang lain.
2.3
Pengertian Penjadwalan Penjadwalan adalah pengaturan waktu dari suatu kegiatan operasi yang mencakup kegiatan mengalokasikan fasilitas, peralatan ataupun tenaga kerja bagi suatu kegiatan operasi dan menentukan urutan pelaksanaan kegiatan operasi. (Herjanto, 1999, p287)
2.4
Unified Process Analisis menekankan pada sebuah investigasi dari masalah dan kebutuhan, daripada sebuah solusi. Sebagai contoh, jika sebuah sistem perdagangan online dibutuhkan, bagaimana akan digunakan? Apa fungsifungsinya? (Larman, 2005, p6) Design menekankan pada sebuah solusi konseptual (dalam software dan hardware) yang memenuhi kebutuhan, dibandingkan pengimplementasiannya. Sebagai contoh, sebuah deskripsi dari sebuah skema basis data dan objek software. (Larman, 2005, p7) Sehingga dapat dikatakan bahwa saat menganalisa terdapat sebuah penekanan pada pencarian dan pendeskripsian objek atau konsep dalam problem domain, sedangkan saat merancang terdapat penekanan pada mendefinisikan objek software dan bagaimana mereka berkolaborasi untuk memenuhi kebutuhan. (Larman, 2005, p7)
12 Unified Process (UP) adalah sebuah proses yang beriterasi, yang menyediakan sebuah struktur contoh mengenai bagaimana melakukan dan bagaimana menjelaskan OOAD. UP bersifat fleksibel, dan dapat digunakan pada pendekatan yang mudah dan cepat yang meliputi praktek dari metode lainnya. (Larman, 2005, p18) Key practice di dalam UP adalah pengembangan yang beriterasi (iterative development). Daur hidup yang beriterasi berdasarkan pada pembesaran dan perbaikan yang berturut-turut dari sebuah sistem melalui iterasi yang berkalikali, dengan umpan balik dan adaptasi sebagai driver utama untuk menemukan sebuah sistem yang cocok. Sistem berkembang sejalan dengan waktu, berulangulang, dan oleh karena itu pendekatan ini juga diketahui sebagai iterative and incremental development. Karena adaptasi dan umpan balik mengembangkan spesifikasi dan design, maka juga diketahui sebagai iterative and evolutionary development. (Larman, 2005, p19) Keuntungan iterative development yaitu (Larman, 2005, p22): 1. Kegagalan proyek lebih kecil, produktivitas yang lebih baik, tingkat kerusakan yang lebih rendah, ditunjukkan dengan penelitian dalam metode iterative dan evolutionary. 2. Resiko tinggi yang dapat diketahui lebih awal. 3. Kemajuan proyek yang dapat dilihat lebih awal. 4. Umpan balik, perjanjian dengan user, dan adaptasi yang lebih awal, memimpin pada perbaikan sistem sehingga semakin mendekati kebutuhan dari stakeholder. 5. Mengatur kompleksitas.
13 6. Pembelajaran dalam sebuah iterasi secara metode dapat digunakan untuk mengembangkan proses pengembangan itu sendiri, yaitu dengan berulangulang.
Gambar 2.3 UP Disciplines (Sumber: Larman, 2005, p35)
2.4.1 Fase Sumbu horizontal menunjukkan dimensi waktu yang menunjukkan bagaimana kemajuan proyek setiap waktu yang digambarkan dalam fase, milestone, dan iterasi. Fase adalah jarak antara dua milestone utama, dimana ditetapkan sekumpulan tujuan, penyelesaian artifact dan keputusan untuk pindah ke fase berikutnya. Milestone adalah suatu kondisi yang menandakan bahwa sebuah iterasi berakhir. Dalam setiap fase dapat terdiri dari beberapa iterasi. Iterasi adalah serangkaian siklus pengembangan yang lengkap dari semua discipline yang menghasilkan sebuah release. Dalam UP terdapat empat fase, yaitu: inception, elaboration, construction, dan transition, dimana setiap akhir
14 fase memiliki milestone sebagai penanda fasenya telah berakhir. (Kruchten, 2000, p22)
2.4.2 UP Disciplines UP menjelaskan kegiatan-kegiatan seperti menuliskan use case, dengan discipline. Disciplines merupakan serangkaian kegiatan (dan artifact yang saling berhubungan) dalam sebuah area subjek, seperti kegiatan dalam analisa kebutuhan. Dalam UP, sebuah artifact adalah istilah yang umum untuk berbagai produk kerja: code, web graphics, skema basis data, dokumen teks, diagram, model. (Larman, 2005, p34) Artifact adalah bagian dari informasi yang digunakan atau dihasilkan oleh proses pengembangan software. (Booch, 1999, p) Terdapat beberapa discipline dalam UP yaitu (Larman, 2005, p34):
Business modeling: Domain Model artifact, untuk memvisualisasikan konsep yang penting dalam application domain.
Requirements: Use Case Model dan Supplementary Specification artifact untuk mengenali kebutuhan fungsional dan non-fungsional.
Design: Design Model artifact, untuk merancang software object.
2.4.3 Tahapan dalam UP Sebuah proyek UP mengatur kerja dan iterasi melalui 4 tahapan (Larman, 2005, p33): 1. Inception: perkiraan visi, business case, scope, perkiraan yang masih samar.
15 2. Elaboration: visi yang diperjelas, pengimplemetasian yang beriterasi dari arsitektur inti, resolusi dari resiko yang tinggi, identifikasi dari kebutuhan dan batasan, perkiraan yang lebih realistis. 3. Construction: implementasi yang beriterasi dari perbaikan resiko yang lebih rendah dan elemen-elemen yang lebih mudah, dan persiapan untuk tahap deployment. 4. Transition: beta tests, deployment. Tabel 2.1 Artifact dalam Inception (Sumber: Larman, 2005, p50) Artifact Vision and Business Case
Comment Menjelaskan tujuan dan batasan, business case, dan menyediakan sebuah ringkasan eksekutif.
Use Case Model
Menjelaskan
kebutuhan
fungsional.
Selama tahapan inception, nama dari use case akan diindetifikasikan dan mungkin 10% dari use case akan dianalisa secara rinci. Supplementary Specification
Menjelaskan
kebutuhan
lainnya,
kebutuhan non fungsional yang memiliki dampak utama pada arsitektur, seperti laporan, dokumentasi, packaging, ijin, supportability.
16 Glossary
Terminologi utama kunci, dan kamus data.
Risk List dan Risk Management Menjelaskan resiko-resiko (bisnis, teknis, Plan
sumber daya, jadwal) dan ide.
Prototypes
and
Proof
of Untuk menjelaskan visi, dan memvalidasi
concepts
ide-ide teknis.
Iteration Plan
Menjelaskan apa yang dilakukan pada tahap awal iterasi elaborasi.
Phase
Plan
and
Software Tools, orang, edukasi, dan sumber daya
Development Plan
lainnya.
Development Case
Sebuah penjelasan dari langkah UP yang diubah dan artifact untuk proyek ini.
Tabel 2.2 Artifact dalam Elaboration (Sumber: Larman, 2005, p129) Artifact Domain Model
Comment Ini merupakan visualisasi dari konsep domain, mirip dengan model informasi statis dari entitas domain.
Design Model
Ini merupakan seperangkat diagram yang menjelaskan rancangan logis. Termasuk di dalamnya software class diagram, object interaction diagrams, package diagrams.
17 Software
Architecture Merupakan
Document
perancangan
ringkasan dan
dari
motivasinya
ide dalam
sistem. Data Model
Termasuk di dalamnya skema basis data dan pemetaan strategis antara perwakilan objek dan non objek.
Use
Case
Storyboards,
Prototypes
UI Sebuah penjelasan dari User Interface, navigasi, usability models.
2.4.4 Jenis – Jenis Class dalam UP Class adalah dekripsi dari sekumpulan object yang saling berbagi attribute, operation, relationship, dan semantics. (Booch, 1999, p49) Jenis – jenis class :
Conceptual Class Konsep dunia nyata atau benda, sebuah perspektif yang konseptual atau penting. UP Domain Model mengandung conceptual class.
Software Class Sebuah class yang mewakili sebuah spesifikasi atau perspektif implementasi dari sebuah komponen software.
Implementation Class Sebuah class yang diimplementaskan dalam bahasa object oriented yang spesifik misalnya Java. (Larman, 2005, p14)
18 Object adalah sebuah perwujudan konkrit dari abstraksi; sebuah entitas dengan batasan yang didefinisikan dengan baik serta identitas yang mengenkapsulasi state dan behaviour; instance dari sebuah class. (Booch, 1999, p185) Attribute adalah property yang memiliki identifikasi dari sebuah classifier yang menjelaskan nilai-nilai yang dimiliki oleh instance dari property. (Booch, 1999, p50) Attribute adalah sebuah logical data value dari sebuah object. (Larman, 2005, p158) Behaviour adalah efek yang dapat diamati dari sebuah event dan mencakup hasilnya. (Booch, 1999, p458) Event adalah spesifikasi dari kejadian yang penting yang memiliki dimensi ruang dan waktu. (Booch, 1999, p278)
2.4.5 Requirements Dalam UP, kebutuhan dikategorikan berdasarkan FURPS + (Larman, 2005, p56):
Functional: features, capabilities, security.
Usability: human factors, help, documentation.
Reliability: frequency of failure, recoverability, predictability.
Performance: response times, throughput, accuracy, availability, resource usage.
19
Supportability:
adaptability,
maintainability,
internationalization,
configurability. “+” dalam FURPS + mengindikasikan tambahan dan sub-faktor, seperti:
Implementation: batasan sumber daya, bahasa dan tools, hardware.
Interface: konstrain atau halangan ditentukan dengan menghadapkan pada sistem eksternal.
Operations: manajemen sistem dalam operational setting.
Packaging: sebagai contoh, sebuah kotak fisik.
Legal: ijin dan sebagainya.
2.4.6 Use Case Use case adalah text stories dari beberapa aktor menggunakan sebuah sistem untuk mencapai tujuan. Use case adalah dokumen teks, bukan diagram, dan use case modelling adalah sebuah aksi dari penulisan teks, bukan menggambarkan diagram. (Larman, 2005, p63) Aktor adalah sesuatu dengan behaviour, seperti orang (diidentifikasi berdasarkan peran), sistem komputer, atau organisasi, sebagai contoh, kasir. (Larman, 2005, p63) Scenario adalah sebuah aksi spesifik yang berkelanjutan dan interaksi antara aktor dan sistem, biasa disebut juga use case instance. (Larman, 2005, p63)
20 Notasi Use Case Use Case dapat ditulis dalam format dan level yang berbeda (Larman, 2005, p66):
Brief: Ringkasan 1 paragraf, biasanya merupakan kriteria sukses utama.
Casual: Format paragraf informal. Beberapa paragraf yang meliputi beberapa skenario.
Fully Dressed: Semua langkah dan variasi ditulis secara rinci, terdapat bagian pendukung, seperti kondisi awal dan garansi kesuksesan.
Tabel 2.3 Fully Dressed Template (Sumber: Larman, 2005, p67) Use Case Section
Comment
Use Case Name
Dimulai dengan kata kerja
Scope
Sistem yang ingin dirancang
Level
User goal atau subfungsi
Primary actor
Yang menjalankan sistem
Stakeholders and Interest
Siapa yang berkepentingan dengan use case ini, dan apa yang mereka inginkan?
Preconditions
Apa yang harus benar ketika memulai, dan layak untuk diberitahukan kepada pembaca?
Success Guarantee
Apa yang harus benar untuk pemenuhan kesuksesan,
dan
layak
untuk
21 diberitahukan kepada pembaca? Main Success Scenario
Sebuah tipikal, skenario kondisi yang sukses sesuai harapan (tidak bersyarat).
Extensions
Skenario alternatif dari kesuksesan atau kegagalan.
Special Requirements
Berhubungan
dengan
kebutuhan
non
fungsional. Technology and Data Variations Varying I/O methods dan format data. List Frequency of Occurence
Mempengaruhi investigasi, testing, dan waktu pengimplementasian.
Miscellaneous
Misalnya seperti open issue.
2.4.7 Use Case Diagram Use Case diagram adalah sebuah gambar mengenai konteks sistem, membuat sebuah diagram konteks yang bagus yang menunjukkan batasan sistem, dan bagaimana digunakan. Ia juga merupakan sebuah alat komunikasi yang merangkum perilaku dari sistem dan aktornya. (Larman, 2005, p60)
22
System boundary Communicates UseCase
Actor
Gambar 2.4 Notasi Use Case Diagram
2.4.8 Domain Model Domain model adalah sebuah representasi visual dari conceptual class atau object dalam situasi nyata dalam sebuah domain. Domain model juga dapat disebut sebagai conceptual model, domain object model, dan analysis object model. (Larman, 2005, p134) Domain model mengilustrasikan conceptual class dalam domain. Secara informal, conceptual class merupakan sebuah ide, sesuatu, atau object. Secara lebih formal, conceptual class dapat dianggap sebagai (Larman, 2005, p136):
Symbol Kata atau gambar yang mewakili sebuah conceptual class
Intension Definisi dari conceptual class.
Extension Sekumpulan contoh dimana conceptual class digunakan.
23
Gambar 2.5 Notasi Domain Model
2.4.9 Sequence Diagram Sequence diagram adalah gambaran interaksi antar objek yang diatur dalam sebuah urutan waktu. (Bennett, 2006, p253) Interaction operator yang digunakan adalah (Bennett, 2006, p270):
Alt: alternative mewakili alternative behaviour, setiap pilihan dari behaviour ditunjukkan dalam sebuah hasil matematika yang terpisah. Hasil matematika hanya akan dieksekusi jika interaction constraint bernilai benar.
Opt: option menjelaskan sebuah pilihan tunggal dari hasil matematika, hanya akan dieksekusi jika interaction constraint bernilai benar.
Loop: digunakan untuk mengindikasikan sebuah hasil matematika yang diulang sebanyak jumlah tertentu hingga interaction constraint bernilai salah.
24
Gambar 2.6 Notasi Sequence Diagram
2.4.10 Design Class Diagram Design Class diagram digunakan untuk memvisualisasikan sebuah domain model. (Larman, 2005, p251) Class diagram digunakan untuk mengilustrasikan class, interface, dan hubungannya. (Larman, 2005, p249)
25 Operations adalah deklarasi, dengan sebuah nama, parameter, nilai balik, daftar pengecualian, dan sekumpulan batasan dari pre- dan post-condition. (Larman, 2005, p257) Method adalah implementasi dari sebuah operasi. Method dapat diilustrasikan dalam beberapa cara, yaitu (Larman, 2005, p257):
Dalam interaction diagram melalui detail dan sequence of messages.
Dalam class diagram dengan menggunakan simbol <<method>>. Aggregation adalah asosiasi yang memiliki hubungan whole part yang
tidak erat. (Larman, 2005, p264) Composition, juga dikenal sebagai composite agregation, merupakan whole part agregation yang memiliki hubungan yang sangat kuat. Composition relationship mengimplikasikan bahwa (Larman, 2005, p264): 1. Sebuah instance dari bagian merupakan milik dari hanya satu composite instance. 2. Bagian tersebut harus selalu merupakan milik dari composite. 3. Composite
bertanggung
jawab dalam pembuatan
dan penghapusan
bagiannya. Association merupakan sebuah garis antar class. Association bersifat dua arah, yang berarti bahwa objek dari class lain melintasi ke class lainnya yang memungkinkan. Lintasan ini bersifat abstrak; bukan merupakan sebuah pernyataan mengenai hubungan antara entitas software. (Larman, 2005, p151) Multiplicity mendefinisikan bagaimana objek dari sebuah class dapat diasosiasikan dengan objek dari class lainnya. (Larman, 2005, p153)
26
Gambar 2.7 Notasi Multiplicity Class 1
*
*
1
*
1
*
Gambar 2.8 Notasi Design Class Diagram
27 2.5
Interaksi Manusia dan Komputer (IMK)
2.5.1 Pengertian IMK IMK adalah ilmu yang berhubungan dengan perancangan, evaluasi, dan implementasi sistem komputer interaktif untuk digunakan oleh manusia. (Schneiderman, 1998, p8)
2.5.2 User Interface Hampir semua program mempunyai sebuah user interface yang merupakan bagian dari aplikasi yang memungkinkan user untuk berinteraksi dengan program. Sebuah user interface biasanya mengandung bermacam-macam tipe, tombol, menu, dan objek-objek lainnya. Dengan menggunakan objek-objek yang menyusun user interface, user menyediakan perintah-perintah dan informasi pada program. Program ini kemudian mengakses user interface untuk menampilkan informasi kepada user. User interface adalah bagian dari aplikasi yang dilihat oleh user. Interface harus dirancang secara tepat dan intuitif. (Schneiderman, 1998, p72)
2.5.3 Delapan Aturan Emas Perancangan User Interface Aturan-aturan dasar perancangan user interface yang interaktif, antara lain sebagai berikut (Schneiderman, 1998, p74):
Rancangan yang dibuat harus selalu konsisten. Konsistensi ada berbagai macam, seperti konsisten dalam urutan aksi harus diperhatikan dalam suatu situasi yang memiliki kemiripan. Menu, pesan, Help haruslah menggunakan istilah atau terminologi yang sama.
28
Memungkinkan pemakai menggunakan shortcuts. Seiring dengan meningkatnya penggunaan dari suatu sistem, user menginginkan suatu interaksi yang minimal namun dengan hasil yang sama dengan interaksi yang kebih banyak. Waktu responsi yang rendah dan tingkat display yang tinggi merupakan daya tarik tersendiri bagi para user.
Memberikan umpan balik yang informatif. Untuk setiap sistem diharapkan adanya suatu umpan balik bagi user. Tanggapan yang diberikan tergantung dari aksi yang dilakukan oleh user.
Merancang dialog untuk menghasilkan keadaan akhir yang baik. Urutan suatu aksi haruslah diorganisir menurut kelompok tertentu yang terdiri dari permulaan, tengah, dan akhir. Umpan balik yang informatif kepada pengguna pada taraf akhir dari suatu kelompok aksi akan memberikan kepuasan kepada user bahwa aksi yang mereka lakukan telah berhasil dengan baik, sehingga akan memberikan kesan kepada user bahwa ia aman untuk melakukan aksi selanjutnya.
Memberikan penanganan kesalahan yang sederhana. Perancangan suatu sistem haruslah dibuat sedemikian rupa sehingga user tidak akan menimbulkan kesalahan yang signifikan. Jika user akhirnya melakukan suatu kesalahan, maka sistem hendaknya memberikan peringatan yang sederhana dan konstruktif serta spesifik.
Memungkinkan pembalikan aksi (undo) dengan mudah. Setiap aksi dirancang sedemikian rupa sehingga dapat melakukan pembalikan untuk kembali ke keadaan semula sebelum aksi tersebut
29 dijalankan. Dengan adanya fasilitas ini, user akan memiliki keberanian untuk mengeksploitasi sistem yang dibuat, karena untuk semua kesalahan yang timbul, user memiliki pilihan untuk melakukan pembalikan terhadap aksi yang telah dilakukan.
Mendukung pengaturan fokus secara internal User yang berpengalaman biasanya memiliki keyakinan bahwa mereka bertanggungjawab terhadap sistem dan sistem akan memberikan tanggapan terhadap aksi yang mereka lakukan. Tanggapan yang aneh, urutan yang aneh dalam pengisian data, kesulitan dalam memperoleh informasi, serta ketidakmampuan untuk mendapatkan hasil sesuai aksi tertentu akan menimbulkan kekacauan dan keraguan bagi user.
Mengurangi beban ingatan jangka pendek. Keterbatasan manusia dalam mengelola memori jangka pendek menyebabkan dibutuhkannya suatu tampilan yang sesederhana mungkin, pengaturan dalam multipage, pergerakan window yang sesedikit mungkin, waktu latihan yang cukup dan optimal serta pengaturan dalam urutan aksi. Hal ini juga harus didukung dengan ketersediaan dari adanya akses secara langsung, kode, singkatan, dan informasi yang dibutuhkan oleh user.