Upload
vonhu
View
225
Download
0
Embed Size (px)
Citation preview
9
BAB 2
LANDASAN TEORI
2.1 Sistem
2.1.1 Pengertian Sistem
Menurut Wilkinson (2000, p3) Sistem adalah suatu kerangka kerja
terpadu yang mempunyai suatu sasaran atau lebih. Menurut Mulyadi (2001, p8)
mendefinisikan, “Sistem adalah jaringan yang dibuat menurut pola yang terpadu
untuk melaksanakan kegiatan pokok perusahaan.”. Menurut Mcleod yang
diterjemahkan oleh Teguh, H. (2001, p6) menulis, “sistem adalah sekelompok
elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu
tujuan tertentu.”. Tetapi menurut Mathiassen (2000, p9), sistem adalah
kumpulan dari komponen yang mengimplementasikan persyaratan model,
function dan interface. Sedangkan menurut McLeod (2001, p11) definisi
sistem adalah sekelompok elemen yang terintegrasi dengan maksud yang
sama untuk mencapai suatu tujuan. Suatu organisasi seperti perusahaan atau
suatu bidang fungsional sangat cocok dengan definisi ini.
Dalam suatu organisasi terdapat berbagai macam jenis sumber daya
seperti manusia, material, uang, mesin, dan informasi, dimana sumber daya
tersebut bekerja menuju tercapainya suatu tujuan tertentu yang ditentukan
oleh pemilik modal atau manajemennya. Model dasar dari sistem ialah
sebagai berikut :
a. Input (masukan) Merupakan sekumpulan data baik dari luar organisasi maupun dari
10
dalam organisasi yang akan digunakan dalam proses sistem informasi.
b. Process (proses) Merupakan kegiatan konversi, manipulasi, dan analisis dari data input
menjadi lebih berarti bagi manusia.
c. Output (keluaran) Merupakan proses menditribusikan informasi kepada orang atau kegiatan
yang memerlukannya.
d. Feedback (Umpan balik)
Merupakan output yang dikembalikan kepada orang-orang dalam
organisasi untuk membantu mengevaluasi input.
e. Subsistem
Merupakan sebagian dari sistem yang mempunyai fungsi khusus. Masing-
masing subsistem itu sendiri memiliki komponen input, proses, output, dan
feedback
Menurut McLeod (2001, p12), hubungan antara elemen-elemen dalam
sistem dapat dijelaskan dengan proses sebagai berikut : sumber daya input
diubah menjadi sumber daya output. Sumber daya mengalir dari elemen
input, melalui elemen transformasi, ke elemen output. Suatu mekanisme
pengendalian memantau proses transformasi untuk meyakinkan bahwa sistem
tersebut memenuhi tujuannya. Mekanisme pengendalian ini dihubungkan pada
arus sumber daya dengan memakai suatu lingkaran umpan balik (feedback
loop) yang mendapatkan informasi dari output sistem dan menyediakan
informasi bagi mekanisme pengendalian. Mekanisme pengendalian
11
membandingkan sinyal-sinyal umpan balik ke sasaran dan mengarahkan
sinyal pada elemen input jika sistem operasi memang perlu diubah. Sebagai
contoh jika elemen menggambarkan suatu perusahaan manufaktur, sumber
daya input adalah bahan baku atau bahan mentah, kemudian melalui proses
transformasi diubah menjadi barang jadi atau jasa. Mekanisme
pengendaliannya adalah manajemen perusahaan, tujuannya adalah sasaran-
sasaran yang ingin dicapai perusahaan, dan lingkaran umpan baliknya
adalah arus informasi dari dan menuju manajemen.
2.1.2 Analisa Sistem
Analisa sistem adalah penguraian dari suatu sistem yang utuh ke
dalam bagian-bagian komponennya. Pada analisa sistem pengumpulan
data, dokumentasi dan analisa terhadap sistem yang berjalan merupakan
hal penting untuk mengembangkan atau membangun sebuah sistem baru.
Informasi yang dikumpulkan tahap ini akan dibawa pada tahap berikutnya
yaitu perancangan sistem.
Menurut Jogiyanto (2005, p8), informasi adalah data yang diolah
menjadi bentuk yang lebih berguna dan lebih berarti bagi yang
menerimanya. Sumber informasi adalah data yang diolah menjadi bentuk
yang lebih berguna dan lebih berarti bagi yang menerimanya. Sumber
informasi adalah data. Data adalah kenyataan yang menggambarkan suatu
kejadian-kejadian dan kesatuan nyata. Kejadian-kejadian (event) adalah
sesuatu yang terjadi pada saat tertentu. Kesatuan nyata (fact and entity)
12
adalah suatu objek nyata seperti tempat,benda,dan orang yang benar ada
dan terjadi.
2.1.3 Data dan Informasi
Data menurut Turban (2003, p15), adalah deskripsi awal dari
suatu event, aktifitas dan transaksi yang diambil, direkam, disimpan dan
dibagi – bagi, tetapi tidak diatur menjadi sebuah arti yang khusus. Menurut
McLeod (2001, p15) data terdiri dari fakta-fakta dan angka-angka yang
relatif tidak berarti bagi pemakai. Saat data ini diproses, data tersebut
dapat diubah menjadi informasi. Sedangkan pengertian informasi adalah data
yang telah diproses, atau data yang memiliki arti. Informasi juga bisa
diartikan sebagai data yang diolah menjadi bentuk yang lebih berguna dan
lebih berarti bagi yang menerimanya.
Informasi sangat dibutuhkan karena informas i merupakan suatu dasar
dalam mengambil keputusan dalam perusahaan. Pengolah informasi adalah salah
satu elemen kunci dalam sistem konseptual. Pengolah informasi dapat
meliputi elemen-elemen komputer, elemen-elemen non-komputer, atau
kombinasi keduanya.
2.2 Sistem Informasi
2.2.1 Pengertian Sistem Informasi
Menurut pendapat O’Brien (2003, p7), sistem informasi adalah suatu
kombinasi yang terorganisasi dari sumber daya manusia, perangkat keras,
13
perangkat lunak, jaringan komunikasi, dan sumber data yang mengumpulkan,
mengubah, dan menyebarkan informasi ke dalam sebuah organisasi.
People Resou rces
End User
s and
IS Special
ist
Softwa re R esources
Progr ams and Pr ocedur es
Network Re sourcesCommunications Media and Network Support
Proses Data into
In formation
Input ofData
Res our ces
Outputof Inform ation
Produc t
Cntro l of System Peformance
S torage of Data Res our ces
Gambar 2.1 Komponen Sistem Informasi
Adapun komponen - komponen dari sistem informasi adalah metode kerja (work
practices), informasi (information), manusia (people), teknologi informasi
(information technologies). Alasan diperlukannya sistem informasi dalam suatu
organisasi ialah sebagai berikut :
a. Untuk sinkronisasi aktifitas – aktifitas dalam organisasi sehingga semua
sumber daya dapat dimanfaatkan seefektif mungkin.
b. Perkembangan teknologi yang semakin kompleks.
c. Semakin pendeknya waktu untuk pengambilan keputusan.
d. Lingkungan bisnis yang semakin kompetitif
e. Pengaruh kondisi ekonomi internasional
f. Meningkatnya kompleksitas dari aktifitas bisnis / organisasi
14
Dalam suatu organisasi, sistem informasi memiliki beberapa peranan
dasar yaitu sistem informasi berusaha memberikan informasi aktual tentang
lingkungan dari organisasi tersebut sehingga organisasi mendapat gambaran
yang akurat tentang lingkungannya. Selain itu dengan aliran informasinya, sistem
informasi berusaha agar elemen – elemen di dalam organisasi selalu kompak dan
harmonis dimana tidak terjadi duplikasi kerja dan lepas satu sama lain. Dengan
demikian dapat dilihat bahwa manfaat dari sistem informasi ialah :
a. Menjadikan organisasi lebih efisien dan lebih efektif
b. Lebih cepat tanggap dalam merespon perubahan
c. Mengelola kualitas output
d. Memudahkan melakukan fungsi kontrol
e. Memprediksi masa depan
f. Melancarkan operasi organisasi
g. Menstabilkan beroperasinya organisasi
h. Membantu pengambilan keputusan
2.2.2 Metodologi Pengembangan Sistem Informasi
Menurut O’Brien (2001,p 383) System Development Life Cycle (SDLC) adalah
suatu metodologi yang digunakan untuk mengembangkan, memelihara, dan
menggunakan sistem informasi. Metodologi ini mencakup sejumlah fase atau
tahapan. Menurut Roger S. Pressman, terdapat beragam model proses
pengembangan perangkat lunak, diantaranya:
15
1. Linear Sequential Model (Model Sekuensial Linear)
Model ini pertama kali dikemukakan oleh Royce. Model ini sering disebut model
klasik atau waterfall. Model ini menyarankan pendekatan pengembangan secara
sekuen dan sistematik untuk pengembangan perangkat lunak. Model ini
merupakan model yang tertua. Model ini terdiri atas beberapa tahap yaitu:
rekayasa dan pemodelan sistem/informasi, analisis kebutuhan perangkat lunak,
desain, generasi kode, pengujian dan pemeliharaan.
Gambar 2.2 Model Sekuensial Linier
2. Prototyping Model (Model Prototipe)
Model Prototipe (Prototipe Paradigma) dimulai dengan pengumpulan kebutuhan.
Pengembang dan pelanggan bertemu dan mendefinisikan obyektif keseluruhan dari
perangkat lunak, mengidentifikasi segala kebutuhan yang diketahui, dan area garis
besar di mana definisi lebih jauh merupakan keharusan kemudian dilakukan
perancangan kilat. Perancangan kilat membawa kepada konstruksi sebuah
prototipe yang kemudian dievaluasi oleh pelanggan/pemakai dan dipakai untuk
menyaring kebutuhan pengembang perangkat lunak. Siklus dari model prototipe
ada pada Gambar 2.3.
16
Gambar 2.3 Model Prototype
3. Rapid Application Development (RAD) Model
RAD adalah sebuah model proses perkembangan perangkat lunak sekuensial linier
yang menekankan siklus perkembangan yang sangat pendek. Model RAD
merupakan adaptasi “berkecepatan tinggi” dari linear sequential model dimana
pengembangan yang cepat dapat diperoleh dengan menggunakan pendekatan
konstruksi berbasis komponen.
Gambar 2.4 Model RAD
Pemodelan
bisnis
Pemodelan
data
Pemodelan
proses
Pembentukan
aplikasi
Pengujian dan turnover
17
4. Evalutionary Software Process Model
Model evolusioner adalah model perulangan. Model ini dicirikan dengan
pengembang mengembangkan versi-versi sistem yang lebih lengkap sedikit demi
sedikit. Model telah mempertimbangkan untuk mengakomodasikan evolusi
produk secara lengkap. Model ini terdiri dari:
a. Incremental model, model ini mengkombinasikan antara linear sequential model
dengan filosofi iteratif pada prototyping. Pada masing-masing sekuen linear
menghasilkan perangkat lunak yang semakin meningkat kompleksitasnya.
b. Spriral model, model ini diusulkan oleh Boehm. Model ini menggabungkan
antara sifat alami iterasi dari prototyping dengan aspek sistematik dan terkendali
dari linear sequential model. Model ini memberi peluang untuk pengembangan
cepat.
c. Model rakitan komponen, model rakitan komponen menggabungkan beberapa
karakter model spiral. Model ini bersifat evolusioner, sehingga membutuhkan
pendekatan iteratif untuk menciptakan perangkat lunak. Tetapi model rakitan
komponen merangkai aplikasi dari komponen perangkat lunak sebelum dipaketkan
(kadang-kadang disebut “kelas”).
d. Concurent development model, model perkembangan konkuren disebut juga
rekayasa konkuren. Model proses yang konkuren dapat disajikan secara skematis
sebagai sederetan aktivitas teknis mayor, tugas-tugas dan keadaannya yang lain.
18
5. Model Formal
Model formal mencakup sekumpulan aktivitas yang membawa kepada spesifikasi
matematis perangkat lunak komputer. Model ini memungkinkan perekayasa
perangkat lunak untuk mengkhususkan, mengembangkan, dan memverifikasi sitem
berbasis komputer dengan menggunakan notasi matematis yang tepat.
6. Teknik Generasi Keempat
Bentuk “teknik generasi keempat“ (4GT) mencakup serangkaian alat bantu
perangkat lunak yang luas yang secara umum memiliki satu hal: masing-masing
memungkinkan perekayasa perangkat lunak untuk mengkhususkan beberapa
karakteristik perangkat lunak pada suatu tingkat yang tinggi. Alat bantu tersebut
kemudian secara otomatis memunculkan kode sumber yang berdasarkan pada
spesifikasi perekayasa.
Meskipun jumlah tahapan dalam SDLC dalam berbagai literatur berbeda-beda,
namun pada prinsipnya secara keseluruhan semua proses yang dilakukan sama
saja. Tahapan-tahapan dalam SDLC adalah sebagai berikut:
1. Analisis Sistem, tahapan ini dimulai karena adanya permintaan terhadap sistem
baru. Tujuan utama analisis sistem adalah untuk menetukan hal-hal detail tentang
yang akan dikerjakan oleh sistem yang diusulkan (dan bukan bagaimana caranya).
Analisis sistem mencakup studi kelayakan dan analisis kebutuhan.
2. Desain Sistem. Tahapan ini dibagi kedalam dua subtahapan, yakni perancangan
konseptual dan perancangan fisik. Target akhir tahapan ini adalah menghasilkan
19
rancangan yang memenuhi kebutuhan yang ditentukan selama tahapan analisis
sistem. Hasil akhirnya berupa spesifikasi rancangan yang sangat rinci sehingga
mudah diwujudkan pada saat pemrograman.
3. Implementasi Sistem, pada tahap ini programmer harus mampu
mengimplementasikan desain sistem kedalam bahasa pemrograman, untuk
kemudian dilakukan pengujian.
4. Pengembangan dan Pemeliharaan Sistem, tahap ini dilakukan untuk mendeteksi
kesalahan-kesalahan sistem yang tidak terdeteksi pada masa pengujian sistem.
2.3 Computer Based Information System (CBIS)
Menurut Turban et al. (2001, p16), sebuah computer-based information
system adalah sistem informasi yang menggunakan komputer dan teknologi
telekomunikasi untuk melakukan tugas yang harus dilakukannya. CBIS memiliki
elemen-elemen yang sama dengan sistem informasi pada umumnya yaitu
hardware, software, database, jaringan, prosedur dan manusia. Sumber daya
utama dalam keseluruhan sistem adalah manusia, dimana dalam sistem yang ada
yang tergolong sebagai sumber daya manusia adalah semua orang yang memiliki
ketertarikan terhadap sistem informasi baik dalam penggunaan langsung, pihak
yang mengembangkan sistem, sampai dengan orang-orang yang berhubungan
dengan pemeliharaan sistem baik perangkat lunak maupun keras. Sedangkan
database merupakan elemen sumber daya yang menjadi bahan input dari sistem
dimana terdiri dari serangkaian fakta-fata yang belum diolah sehingga masi
belum dapat digunakan sebagai suatu informasi yang dapat berguna. Hardware
20
merupakan serangkaian alat atau mesin yang mendukung teknologi informasi
seperti monitor, PC komputer, pronter, keyboard dan lain-lain. Software
merupakan alat bantu berupa program komputer yang menjadi penghubung
antara manusia dengan hardware sebagai alat bantu pemroses data. Prosedur
adalah strategi, kebijakan, metode, dan peraturan untuk menggunakan sistem
informasi. Sedangkan jaringan adalah sistem penghubung yang digunakan untuk
menyalurkan baik data untuk input maupun informasi hasil output.
Menurut Turban et al. (2001, p17), jenis-jenis dalam CBIS
dikategorikan berdasarkan level organisasi yang menggunakannya seperti
Transaction Processing Systems (TPS) untuk level yang paling bawah yaitu
menangani transaksi dari perusahaan, Management Information Systems (MIS)
untuk level menengah yaitu digunakan para manajer untuk menganalisa data TPS
dan lain-lain, dan Executive Information Systems (EIS) untuk level atas yaitu
untuk membantu membuat keputusan manajer level atas.
2.4 Sistem Billing
Menurut Hunter dan Tiebaud (2000, p164), Customer Service atau bagian
operasional bertanggung jawab dalam membangun dengan pelanggan, termasuk dalam
hal mengatur tagihan (Billing). Seringkali persepsi kepada pelanggan terbentuk pada
suatu perusahaan, bisa ditentukan atau berkaitan dengan cara menangani billing atau
tagihannya. Kemampuan untuk melihat catatan-catatan transaksi yang dilakukan
pelanggan sebelumnya, biasanya berdampak positif terhadap penilaian pelanggan.
21
2.5 Service / Layanan
Menurut Fitzsimmons (2006, p4), service adalah serangkaian aktifitas yang
kurang lebih berwujud intangible tetapi tidak harus berlangsung dalam interaksi antara
pelanggan dan karyawan jasa atau sumber daya fisik atau sistem penyedia layanan,
yang disediakan sebagai solusi untuk masalah pelanggan.
2.6 Analisis dan Perancangan Berorientasi Objek (Object-Oriented Analysis
and Design)
Menurut Mathiassen (2000, p35), definisi dari Object-Oriented Analysis and
Design adalah suatu metode yang digunakan untuk menganalisis dan merancang suatu
sistem dengan menggunakan pendekatan berorientasi objek. Menurut Mathiassen (2000,
p4), object sendiri memiliki arti suatu entitas yang memiliki identitas, status dan
perilaku. Objek dianggap sebagai suatu entitas yang memiliki identitas, status dan
perilaku dan dapat melakukan suatu operasi. Dengan menggunakan objek maka sistem
dapat mengatur apa saja yang dapat dilakukan terhadap entitas tersebut. Misalnya
menjadikan pelanggan sebagai objek, maka setiap objek pelanggan dapat memiliki
status, identitas dan perilaku yang berbeda-beda serta akses yang berbeda pula.
Sedangkan pengertian class adalah deskripsi dari kumpulan objek yang memiliki
struktur, pola perilaku, dan atribut yang sama (Mathiassen et al., 2000, p4). Contoh dari
class misalnya sekumpulan entitas karyawan yang berbeda menjadi sebuah class
karyawan, masing-masing objek didalamnya memiliki identitas seperti nama dan alamat
tetapi masing-masing nama dan alamat untuk setiap karyawan dapat saja berbeda.
Menurut Mathiassen (2000, p5-6) keuntungan dari OOAD adalah sebagai berikut:
22
• OOAD menyediakan informasi yang jelas mengenai konteks sistem. Dimana
OOAD memfokuskan dengan kejelasan yang sama antara sistem dan
konteksnya.
• OOAD dapat mendistribusikan data khusus ke seluruh bagian organisasi serta
dapat menangani data yang seragam dalam jumlah yang besar dengan berfokus
pada kejelasan yang sama, baik pada sistem dan konteks.
• Memberikan hubungan yang erat antara analisis berorientasi objek, perancangan
berorientasi objek, user interface berorientasi objek dan pemrograman
berorientasi objek. Dalam analisis, objek digunakan untuk menentukan
kebutuhan sistem, sedangkan dalam perancangan, objek digunakan untuk
mendeskripsikan sistem.
Namun selain memiliki beberapa keuntungan, OOAD juga memiliki beberapa
kelemahan seperti yang dijabarkan oleh McLeod, Jr (2001, p615) yaitu :
• Diperlukan waktu lama untuk memperoleh pengalaman pengembangan.
• Kesulitan metodologi untuk menjelaskan sistem bisnis yang rumit.
• Kurangnya pilihan peralatan pengembangan yang khusus disesuaikan untuk
sistem bisnis.
2.7 Kegiatan Utama dalam Object-Oriented Analysis and Design (OOAD)
Didalam penggunaannya OOAD memiliki empat kegiatan utama diantaranya yaitu
problem-domain analysis, application-domain analysis, component design, dan
architectural design (Mathiassen et al., 2000, p14-45). dan dapat digambarkan seperti
berikut ini :
23
Gambar 2.5 Aktivitas Utama OOAD
Dalam prakteknya sebelum kita memulai keempat kegiatan utama dalam OOAD,
terlebih dahulu kita melakukan langkah-langkah pendahuluan. Beberapa langkah yang
dilakukan adalah mengumpulkan ide-ide yang akan dikembangkan berdasarkan pada
pemahaman terhadap masalah yang sedang dihadapi, solusi-solusi yang mungkin
diterapkan untuk mengatasi masalah tersebut, dan lain-lain. Hasil dari langkah
pendahuluan ini adalah system definition yaitu deskripsi singkat dari sistem komputer
dalam natural language. System definition menjelaskan mengenai konteks sistem,
informasi yang harus ada di dalam sistem, fungsi-fungs i yang harus dimiliki, dimana
akan digunakan dan kondisi serta batasan yang harus diperhatikan.
Menurut Mathiassen (2000, p39-40) dengan menggunakan pendekatan
FACTOR, system definition akan berisi tentang:
24
• Functionality: Fungsi yang dimiliki sistem yang akan membantu kegiatan yang
dilakukan dalam application domain.
• Application Domain: Bagian dari organisasi yang akan mengawasi,
mengendalikan problem domain.
• Conditions: Kondisi dimana sistem akan dikembangkan dan digunakan.
• Technology: Teknologi yang akan digunakan baik dalam pengembangan sistem
dan teknologi yang mendukung pengoperasian dari sistem.
• Objects: Objek utama dalam problem domain.
• Responsibility: Tanggung jawab dari sistem dalam hubungan dengan konteks
sistem itu sendiri.
Dalam pembuatan system definition, kita harus memperhatikan pendekatan kriteria
FACTOR untuk dapat melengkapi informasi yang terkandung dalam definisi sistem
yang akan dibuat.
Berikut ini akan dijelaskan lebih jauh mengenai kegiatan kegiatan utama yang ada
pada OOAD seperti yang sudah disebutkan diatas :
a. Problem-domain Analysis
Problem domain merupakan bagian dari konteks yang diatur, diawasi dan
dikendalikan oleh sistem. Dengan kata lain analisis problem domain berkaitan dengan
mengekspresikan kebutuhan yang harus dipenuhi oleh sistem. Tujuan dari kegiatan ini
adalah untuk mengidentifikasi dan memodelkan problem domain sehingga didapatkan
informasi apa saja yang dibutuhkan oleh sistem.
25
Menurut Mathiassen (2000, p48) Analisis problem domain memiliki aktifitas-
aktifitas sebagai berikut :
Gambar 2.6 Aktifitas Problem Domain Analysis
1. Classes
Menurut Mathiassen (2000, p49), class adalah deskripsi dari sekumpulan
objek yang memiliki struktur, pola behavior dan atribut yang sama. Hasil dari
aktivitas ini adalah berupa event table yang menunjukkan class yang dipilih
dan event-event yang berhubungan dengan class tersebut. Menurut
Mathiassen (2000, p55) terdapat tiga subaktivitas di dalam kegiatan ini,
yaitu:
• Menentukan kandidat class
Langkah ini merupakan kunci utama dalam menentukan problem domain.
Pada umumnya cara mencarinya adalah dengan mencari sebanyak-
banyaknya kata benda yang terdapat dalam rich picture, ataupun system
definition.
26
• Menentukan kandidat event
Selain class, event juga merupakan bagian penting dalam problem
domain. Cara untuk mencari event adalah dengan mencari sebanyak-
banyaknya kata kerja yang berkaitan dengan behavior dari objek yang
telah terpilih
• Mengevaluasi dan memilih secara sistematik
Jika daftar class dan event yang ditentukan telah lengkap, maka kita akan
mengevaluasinya secara sistematik. Kriteria umum yang digunakan
dalam proses evaluasi adalah sebagai berikut:
• class dan event ada dalam system definition
• class dan event relevan untuk problem domain
2. Structure
Pada aktivitas ini, kita melakukan pendefinisian terhadap class dan objek yag
ada dalam problem domain. Konsep hubungan struktural yang digunakan
dalam langkah ini, yaitu:
• Class Structure
Generalization Structure
Pada generalization, class-class umum menjelaskan properties dari suatu
grup class yang khusus
• Cluster Structure
Pada cluster, class-class yang saling berhubungan dikelompokkan ke
dalam satu kelompok.
27
• Object Structure terdiri dari:
• Aggregation Structure
Pada aggregation, kita mendefinisikan superior objek yang
mengandung beberapa objek.
• Association Structure
Pada association, kita menunjukkan relasi yang penting di antara
objek-objek. Hasil dari aktivitas ini adalah class diagram dengan
class-class dan struktur-struktur.
3. Behavior
Aktivitas ini mendeskripsikan properti yang dinamik dan atribut dari setiap
class yang dipilih. Konsep dari behavior menurut Mathiassen (2000, p89)
adalah sebagai berikut:
a. Event Trace
Event Trace adalah serangkaian kejadian yang melibatkan objek tertentu
b. Behavioral Pattern
Behavior Pattern adalah deskripsi dari penelusuran event yang mungkin
untuk seluruh objek di dalam class.
c. Attribute
Attribute adalah deskripsi dari properti sebuah class atau sebuah event.
Hasil dari aktivitas ini adalah behavior pattern dan atribut bagi class-
class di dalam class diagram.
28
b. Application-domain Analysis
Gambar 2.7 Aktifitas Application Domain Analysis
Application domain merupakan organisasi yang mengatur, mengawasi, atau
mengendalikan problem domain. Tujuan dari kegiatan ini adalah untuk menentukan
kebutuhan penggunaan sistem. Kegiatan ini berfokus pada fungsi dan interface dari
sistem dan bagaimana suatu sistem akan digunakan oleh user. Berikut beberapa kegiatan
utama dalam application domain analysis menurut Mathiassen (2000, p117) adalah :
1. Usage
Merupakan bagian dari analisis application domain yang akan menentukan
bagaimanakan sistem akan berinteraksi dengan manusia dan sistem didalam
konteks. Hasil analisisnya dapat digambarkan melalui suatu use case diagram
yaitu pola interaksi antara sistem dengan pengguna yang berinteraksi dengan
sistem.
29
Gambar 2.8 Subaktifitas Usage
2. Function
Pada kegiatan ini kita menjelaskan bagaimana kemampuan dari proses dan
informasi dalam sistem. Function adalah fasilitas untuk membuat sebuah model
berguna untuk aktor. Tujuan dari function adalah menentukan kemampuan sistem
untuk memproses informasi. Cara untuk mengidentifikasi function adalah dengan
melihat deskripsi problem domain yang dinyatakan dalam class dan event, dan
melihat deskripsi application domain yang dapat digambarkan dalam use case
diagram
30
Gambar 2.9 Subaktifitas Function
3. Interface
Interface memiliki fokus pada penentuan antar muka yang dibutuhkan oleh suatu
sistem. Interface adalah fasilitas yang memungkinkan model sistem dan function
dari sistem agar dapat digunakan oleh para actors. Hasil dari aktifitas ini terbagi
dua yaitu yang berupa antar muka untuk user, diagram window yang dipilih, dan
navigation diagram. Hasil lainnya yaitu berupa antarmuka untuk sistem lain yang
berupa class diagram untuk peralatan eksternal dan prosedur untuk berinteraksi
dengan sistem lain.
31
Gambar 2.10 Subaktifitas Interface
c. Architecture Design
Gambar 2.11 Aktifitas Architecture Design
Architecture design adalah tahap penyusunan sistem yang terkomputerisasi.
Kegiatan ini merupakan kerangka kerja dalam aktivitas pengembangan sistem. Hasil dari
aktifitas ini adalah struktur komponen dan proses sistem. Tujuan dari kegiatan ini adalah
32
mengatur ulang struktur sebuah sistem yang terkomputerisasi. Kegiatan utama dalam
architecture design menurut Mathiassen (2000, p176) adalah :
a. Criteria
Pada kegiatan ini, kita mendefinisikan kondisi dan rancangan seperti apakah
yang digunakan pada perancangan. Kondisi adalah peluang dan batasan
teknikal, organisasional dan manusia yang terlibat dalam pelaksanaan tugas.
Criteria yang digunakan dalam menentukan kualitas dari software yang akan
dibuat ditunjukkan melalui tabel di bawah ini:
33
Tabel 2.1 Criteria untuk Menentukan Kualitas Software
Criterion Ukuran
Usable Kemampuan dari sistem untuk dapat beradaptasi dengan
konteks teknikal dan organisasional.
Secure Pencegahan akses yang tidak diinginkan terhadap data dan
fasilitas perusahaan
Efficient Eksploitasi ekonomis dari fasilitas technical platform
Correct Pemenuhan terhadap kebutuhan
Reliable Fungsi dapat dijalankan secara tepat sesuai dengan
kebutuhan
Maintainable Biaya untuk mencari dan memperbaiki kerusakan sistem
Testable Biaya untuk menjamin bahwa sistem melakukan fungsi yang
diharapkan
Flexible Biaya memodifikasi sistem
Comprehensible Usaha yang diperlukan untuk memahami sistem
Reusable Penggunaan bagian dari sistem ke dalam sistem lain yang
berkaitan
Portable Biaya memindahkan sistem ke technical platform lain
Interoperable Biaya pemasangan sistem dengan sistem lain
Terdapat tiga kriteria dasar yang harus dimiliki dalam perancangan OOAD
menurut Mathiassen (2000, p179) yaitu:
34
• Usability: menjelaskan bahwa kualitas sistem yang paling baik adalah
bergantung pada bagaimana sistem dapat bekerja memenuhi konteks dari
sistem tersebut.
• Flexibility: menjelaskan bahwa arsitektur sistem harus mampu
mengakomodasi perubahan secara menyeluruh dan kondisi teknisnya.
• Comprehensibility: menjelaskan bahwa dengan semakin berkembangnya
kompleksitas dari sistem komputer, model dan deskripsi harus mudah
dimengerti.
b. Component
Pada kegiatan ini, akan menetapkan bahwa perkembangan kerumitan sistem
yang terkomputerisasi, model dan penjelasannya harus mudah dipahami.
Arsitektur komponen adalah struktur sistem dari komponen yang saling
terkait, sedangkan komponen merupakan kumpulan dari bagian program
yang mencakup keseluruhan tanggung jawab. Pola-pola arsitektur komponen
antara lain:
• Layered Architecture Pattern
• Generic Architecture Pattern
• Client-Server Architecture Pattern
Hasil dari kegiatan ini adalah component diagram berupa class diagram yang
dilengkapi dengan spesifikasi komponen yang kompleks.
c. Processes
Pada kegiatan ini, kita menjelaskan strukturisasi fisik dari sistem. Arsitektur
proses adalah struktur sistem eksekusi yang terdiri dari proses-proses yang
35
saling tergantung satu sama lain. Dalam aktivitas ini, kita juga menentukan
pola distribusi yang sesuai dengan model sistem. Pola-pola distribusi yang
ada antara lain:
a. Centralized Pattern
b. Distributed Pattern
c. Decentralized Pattern
Hasil dari kegiatan ini adalah deployment diagram yang menunjukkan
processor dengan komponen program dan active objects.
d. Component Design
Gambar 2.12 Aktifitas Component Design
Menurut Mathiassen (2000, p232), komponen adalah sekumpulan bagian
program yang membentuk suatu keseluruhan dan memiliki tanggung jawab yang
jelas. Tujuan dari kegiatan ini adalah untuk menentukan implementasi dari
36
kebutuhan dalam sebuah kerangka arsitektur. Aktivitas utama dalam component
design adalah :
a. Model Component
Model component merupakan bagian dari sistem yang
mengimplementasikan model dari problem domain. Dengan kata lain, model
component menggambarkan model dari problem domain dan bertujuan
menyampaikan data saat ini pada saat ini atau yang telah lalu kepada
function, interface, dan ke pengguna maupun sistem yang lain. Melalui
kegiatan ini, dapat dihasilkan class diagram yang telah direvisi (revised class
diagram).
b. Function Component
Function component merupakan bagian dari sistem yang
mengimplementasikan kebutuhan fungsional. Tujuan dari function
component adalah memberikan kepada user interface dan komponen dari
sistem lain untuk dapat mengakses model. Sebuah function menggambarkan
secara eksternal behavior yang dapat diamati secara langsung dan
mempunyai arti bagi pekerjaan user. Hasil dari kegiatan ini adalah class
diagram dengan operasi dan fungsi-fungsinya. Terdapat empat pola
eksplorasi di dalam function component yaitu:
1. Model-Class Placement
2. Function-Class Placement
3. Strategy
37
4. Active Function
5. Connecting Component
c. Connecting component merupakan bagian dari sistem yang
menghubungkan komponen-komponen dari sistem. Dalam connecting
component terdapat dua konsep yaitu:
a. Coupling
Coupling merupakan ukuran untuk mengukur berapa dekat hubungan di
antara dua kelas atau komponen. Coupling memiliki sifat yang
merugikan sehingga sebaiknya diminimalisasi.
b. Cohession
Cohession nerupakan ukuran untuk mengukur seberapa baik ikatan dari
sebuah class atau komponen. Cohession memiliki sifat yang
menguntungkan sehingga sebaiknya penggunaannya dalam rancangan
class harus tinggi.
2.8 Unified Modelling Language (UML)
2.8.1 Notasi UML
Menurut Mathiassen (2000, p237) notasi adalah bahasa tekstual dan
graphical untuk menggambarkan sebuah sistem dan konteksnya yang
diformalisasikan secara terpisah. Tujuan dari notasi UML adalah untuk
menyederhanakan komunikasi dan dokumentasi.
38
2.8.2 Class Diagram
Menurut Mathiassen (2000, p336), Class Diagram menggambarkan
hubungan struktur objek dari sistem. Class diagram menunjukkan class objek
yang membentuk sistem dan hubungan struktural di antara class Terdapat tiga
hubungan antar class yang biasa digunakan dalam class diagram yaitu:
• Asosiasi
Asosiasi merupakan hubungan antara dua objek atau class. Hubungan ini
menggambarkan apa yang perlu diketahui oleh sebuah class mengenai class
lainnya. Hubungan ini memungkinkan sebuah objek atau class mereferensikan
objek atau class lain dan saling mengirimkan pesan. Hubungan ini dapat bersifat
dua arah.
Gambar 2.13 Contoh Hubungan Asosiasi
• Generalisasi
Dalam hubungan generalisasi, atribut dan perilaku yang umum pada beberapa
class objek digabungkan menjadi class tersendiri (supertype class) dan atribut
dan perilaku tersebut diturunkan pada class yang merupakan bagian dari induk
class tersebut (subtype class).
39
Gambar 2.14 Contoh Hubungan Generalisasi
• Agregasi
Agregasi merupakan hubungan yang unik dimana sebuah objek merupakan
bagian dari objek lain. Hubungan agregasi tidak simetris dimana jika objek B
merupakan bagian dari objek A, namun objek A bukan merupakan bagian dari
objek B. Pada hubungan ini, objek yang menjadi bagian dari objek tertentu tidak
akan memiliki atribut atau behavior dari objek tersebut.
Gambar 2.15 Contoh Hubungan Agregasi
2.8.3 Statechart Diagram
Statechart diagram merupakan diagram yang memodelkan perilaku
dinamis dari objek dalam sebuah class spesifik yang berisi state dan transition
(Mathiassen, 2000, p341). Statechart diagram digunakan dalam aktifitas
behavior pada problem domain analysis.
40
Gambar 2.16 Contoh Statechart Diagram
2.8.4 Use Case Diagram
Use Case diagram mendeskripsikan fungsi secara grafis hubungan antara
aktor dan use case. (Mathiassen, 2000, p343). Penjelasan use case biasa
ditambahkan untuk menghentikan langkah-langkah interaksi.
Gambar 2.17 Contoh Use Case Diagram
41
2.8.5 Sequence Diagram
Sequence diagram adalah sebuah diagram yang menggambarkan interaksi
antar objek di dalam dan di sekitar sistem (termasuk pengguna, display,dll)
berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri
atas dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait di
dalamnya). Sequence diagram juga biasa digunakan untuk menggambarkan
skenario atau rangkaian langkah-langkah yang dilakukan sebagai respon dari
sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang memicu
aktivitas tersebut,lalu proses dan perubahan apa saja yang terjadi secara internal
dan output apa yang dihasilkan. Message digambarkan sebagai garis berpanah
dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan
dipetakan menjadi operasi/metoda dari class.
Gambar 2.18 Contoh Sequence Diagram
42
2.9 Pengertian Database
Menurut pendapat Connolly & Begg (2002, p15) pendekatan database adalah
memisahkan struktur data dari program aplikasi dan menyimpannya dalam database.
Dalam menganalisa kebutuhan informasi suatu organisasi, kita berusaha menentukan
entity, atribut dan relasi. Entity adalah objek dalam organisasi yang dapat dibedakan
yang digambarkan dalam database. Atribut adalah property yang menggambarkan
beberapa aspek suatu objek yang dikenal sebagai record. Sedangkan relasi adalah
hubungan antara beberapa entity. Database menyajikan entity, atribut dan relasi yang
logis antara entity. Adapun pengertian database berdasarkan pendapat O’Brien (2003,
p145), database is an integrated collection of logically related data elements. Yang dapat
diterjemahkan bahwa database adalah sebuah kumpulan yang terintegrasi dari elemen
data yang berelasi secara logikal. Adapun menurut pandangan Mcleod (2001, p250)
database berguna untuk mengatasi kendala memanajemen data usaha yang dilakukan
meliputi penyortiran dan penggabungan file, pemrograman komputer yang ekstensif
untuk mencari dan mencocokan catatan file, serta indeks file dan kaitan yang dibangun
ke dalam catatan data. Konsep database dibangun di atas indeks dan kaitan untuk
mencapai suatu hubungan logis antara beberapa file.
2.10 Interaksi Manusia dan Komputer (IMK)
2.10.1 Delapan Aturan Emas untuk Desain Interface
Menurut shneiderman (2010, p88), Delapan aturan emas adalah prinsip-
prinsip mendasar untuk mendesain interface,antara lain :
1. Berusaha untuk konsisten.
43
Merupakan konsistensi suatu aksi-aksi dalam situasi tertentu, konsistensi colour,
layout, fonts, menu, dan sebagainya.
2. Memberikan kegunaan universal
Bagi user yang sudah ahlli menggunakan sistem, ia membutuhkan jumlah
interaksi yang lebih singkat. Interaksi yang singkat dapat diperoleh dengan
shortcut sehingga memberikan kegunaan universal.
3. Mengumpan balik yang informatif.
Untuk setiap aksi yang dilakukan pengguna terhadap sistem, sistem harus
memiliki umpan balik yang sopan dan jelas
4. Merancang dialog untuk menghasilkan keadaan akhir.
Urutan-urutan diatur ke dalam group-group dengan bagian awal, tengah, akhir.
Umpan balik pada saat akhir dari group aksi tersebut harus dapat memuaskan
pelanggan.
5. Menyediakan pencegahan kesalahan dan penanganan kesalahan yang
sederhana.
Sedapat mungkin sistem dibuat tidak melakukan kesalahan pada saat pengguna
sedang mengakses. Jika terjadi, maka sistem harus dapat mendeteksi dan
memberikan instruksi yang sederhana dan membangun untuk recovery.
6. Mengijinkan pembalikan aksi.
Pengguna harus dapat kembali pada aksi yang telah dilakukan sebelumnya baik
itu ada kesalahan atau tidak.
7. Mendukung pusat kendali internal.
Pengguna yang sudah berpengalaman menginginkan suatu perasaan bahwa
mereka menguasai sistem dan sistem harus merespon semua keinginan mereka.
44
8. Mengurangi beban ingatan jangka pendek.
Terbatasnya kemampuan manusia untuk ingatan jangka pendek membutuhkan
perhatian yang cukup. Untuk mengatasi hal ini dapat dilakukan dengan
mengurangi frekuensi pergerakan jendela (window) dan dengan waktu pelatihan
yang cukup.
2.11 XAMPP
XAMPP menurut Madcoms (2009, p1) adalah suatu perangkat lunak bebas yang
mendukung banyak sistem operasi dan merupakan kompilasi beberapa program.
XAMPP terdiri dari program Apache (web server), MySQL (database) dan penerjemah
bahasa yang ditulis dengan bahasa perograman PHP (server side scripting) dan Perl.
XAMPP dapat berjalan di system operasi Windows,Linux,MacOS maupun Solaris
sehingga memudahkan membuat web server multiplatform.
2.12 PHP
PHP menurut Peranginangin (2006, p2), PHP singkatan dari Hypertext
Preprocessor yang digunakan sebagai bahasa script server side dalam pengembangan
web yang disisipkan pada dokumen HTML. Penggunaan PHP memungkinkan web dapat
dibuat dinamis sehingga maintenance situs web tersebut menjadi lebih mudah dan
efisien. PHP merupakan perangkat lunak Open-Source yang disebarkan dan dilisensikan
secara gratis.
Sedangkan menurut Atkinson dan Suraski (2004, p10), PHP merupakan fitur
standar yang ditawarkan oleh kebanyakan perusahaan web hosting. PHP digunakan
45
sebagai alternative karena lebih cepat dalam pengkodean dan lebih cepat untuk
dieksekusi. PHP code dapat dijalankan pada berbagai macam web server dan system
operasi. PHP dapat di desain untuk terintegrasi dengan Apache Web Server. PHP dapat
beroperasi pada Linux,Unix,Windows, MyMacOS X. PHP di desain untuk terintegrasi
dengan Apache Web Server. PHP memiliki banyak kelebihan yang tidak dimiliki oleh
bahasa script sejenis.
2.13 MySQL
MySQL menurut Kasiman Peranginangin (2006,p389), MySQL menggunakan
suatu format standar SQL bahasa data yang terkenal. MySQL bekerja pada berbagai
sistem operasi, dan banyak bahasa. PHP menyediakan banyak fungsi untuk mendukung
basis data MySQL.
Sedangkan menurut Atkinson (2006, p655), MySQL adalah sebuah relasi basis
data yang memiliki fitur dengan MySQL. MySQL menjadi basis data pilihan bagi
banyak pengembang PHP.
MySQL memiliki dua bentuk lisensi, yaitu free software dan shareware. MySQL
yang biasa digunakan adalah MySQL free software yang berada dibawah lisensi
GNU/GPL (General Public License). MySQL pertama kali dirintis oleh seorang
programmer basis data bernama Michael Widenius. Selain sebagai database server,
MySQL juga merupakan program yang dapat mengakses suatu basis data MySQL yang
berposisi sebagai server. Pada saat itu program berposisi sebagai client. Jadi MySQL
adalah sebuah basis data yang dapat digunakan baik sebagai client maupun server.
46
2.14 Javascript
Javascript adalah bahasa pemrograman berbasis objek yang diletakkan pada
client-side atau berjalan di suatu halaman web. JavaScript merupakan scripting
language berbasis objek yang dapat diletakkan di halaman-halaman HTML (Flanagan,
2002, p3).
2.15 CSS
Cascading Style Sheet atau CSS adalah suatu bahasa stylesheet yang digunakan
untuk mengatur tampilan suatu halaman web. Penggunaan paling umum adalah untuk
memformat halaman web yang ditulis dengan HTML dan XHTML. CSS dapat
digunakan untuk mengatur besar kecilnya text, warna dan style font, mengatur warna
atau gambar background, dan berbagai manfaat lainnya. (Schengili dan Roberts, 2000,
p9).
2.16 JQuery
JQuery adalah library yang sangat baik untuk mengembangkan aplikasi berbasis
AJAX. JQuery sangat baik untuk programmer JavaScript, yang menyederhanakan
pengembangan dari aplikasi web 2.0. JQuery membantu programmer untuk membuat
code tetap sederhana dan singkat. JQuery library didesain untuk membuat hal-hal
menjadi sederhana dan dapat digunakan kembali. Library JQuery menyederhanakan
proses transversal dari pohon HTML DOM. Kita dapat menggunakan JQuery untuk
menangani event, menjalankan animasi, dan menambahkan dukungan AJAX ke dalam
aplikasi web dengan mudah. Kemudahan ini ditambahkan lagi dengan sifatnya yang
cross-browser atau dapat digunakan di beberapa jenis browser yang berbeda. JQuery
47
membuat kita mudah untuk membuat aplikasi JavaScript yang baik dan menciptakan
efek-efek animasi yang menarik perhatian, bersaing dengan Flash. JQuery sangat baik
untuk:
• Menambah efek animasi pada elemen-elemen
JQuery membuat kita mudah untuk memberikan efek-efek seperti fading in/out, sliding
in/out, dan expanding/contracting.
• Membuat request XML (Ajax)
Dengan menggunakan JavaScript, kita dapat merequest data tambahan dari Web Server
tanpa harus me-reload data.
• Memanipulasi DOM
Kita dapat dengan mudah menambah, menghilangkan, dan menyusun ulang konten di
dalam halaman Web hanya dengan beberapa baris code.
• Membuat slideshow image
Dengan JQuery, kita dapat membuat slideshow yang menarik dengan tambahan efek-
efek animasi.
• Membuat drop-down menu
JQuery memberikan kemudahan untuk membuat menu dropdown dengan animasi.
• Membuat drag-and-drop interfaces
Programmer bisa mengubah posisi dan menyusun urutan elemenelemen dengan hanya
drag-and-drop dalam membangun suatu halaman dengan JQuery.
• Memberikan banyak keunggulan pada form
Programmer dapat dengan mudah menambah complex client-side form validation,
membuat text field auto-complete Ajax yang dapat menarik data dari server-side
database.
48
2.16 Adobe Creative Suite
Adobe Creative Suite merupakan koleksi perangkat lunak, oleh Adobe
Systems,digunakan untuk editing gambar, gambar menciptakan, animasi pembuat, video
editing, dan pembangunan web. Perangkat lunak Adobe yang terlibat dalam proyek ini
adalah:
2.16.1 Adobe Flash
Adobe Flash merupakan program multimedia yang menciptakan animasi
dan interaktivitas. Adobe flash dapat membuat file stand alone atau file tertanam
ke halaman web. FLA merupakan flash file yang dapat diedit dan SWF
merupakan Shockwave Flash yang dihasilkan dari extension file FLA yang tidak
dapat diedit lagi.
2.16.2 Adobe Photoshop
Adobe Photoshop merupakan perangkat lunak editing gambar. Perangkat
lunak ini memungkinkan pengguna untuk memanipulasi gambar dari format
gambar (JPEG, GIF, PNG, dan lain-lain) dan format dari file Photoshop.
Pengguna dapat meng-import gambar dari extension file PSD ke format lain
seperti JPEG dan GIF.