BAB II LANDASAN TEORI

advertisement
7
BAB II
LANDASAN TEORI
2.1.
Konsep Dasar Sistem
Untuk mendefinisikan suatu sistem pakar harus mempunyai konsep dasaruntuk
memperkuat pendefinisiannya. Sistem mempunyai suatu konsep yangmendasari sebuah
pengertian-pengertian yang di kemukakan oleh berbagai pakaruntuk mendefinisikan dari
suatu sistem itu sendiri.
2.1.1.
Pengertian Sistem
Suatu sistem dapat diartikan sebagai suatu kumpulan atau himpunan dari unsur,
komponen atau variable yang terorganisir, saling berinteraksi, saling tergantung satu sama
lain dan terpadu (Shelly dan Rosenblatt, 2010) .
Teori sistem melahirkan konsep-konsep futuristik. Salah satu konsep yang terkenal
adalah konsep sibernetika (cybernetics). Konsep bidang kajian ilmiah ini terutama
berkaitan dengan upaya menerapkan berbagai disiplin ilmu, yaitu ilmu perilaku, fisika,
biologi dan teknik. Oleh karena itu, sibnetikan biasanya berkaitan dengan usaha-usaha
otomasi tugas-tugas yang dilakukan oleh manusia sehingga melahirkan studi tentang
robotika, kecerdasan buatan (artificaiaal intelegance) lain adalah masukan (input),
pengelolahan dan keluaran output).
2.1.2.
Karakteristik Sistem
Sebuah sistem mempunyau karakteristik atau sifat-sifat tertentu, yaitu :
1) Komponen Sistem (Components)
Susatu sistem terdiri dari sejumlah atau elemen yang saling berinteraksi, artinya
komponen atau elemen yang saling bekerja sama dalam bentuk satu kesatuan.
2) Batasan Sistem (Boundary)
Batasan sistem merupakan daerah yang membatasi antara suatu sistem dengan
sistem yang lainnya atau dengan lingkungan luar. Batas suatu sism menunjukkan
lingkup (scope) dari sistem tersebut.
3) Lingkungan Luar Sistem (Environments)
Lingkungan luar dari suatu sistem adalah apapun diluar batas dari sistem yang
mempengaruhi operasi dari sistem. Lingkungan luar yang menguntungkan
merupakan energi dari sistem dan demikian harus dijaga dan dipelihara. Sedangkan
7
http://digilib.mercubuana.ac.id/
8
lingkungan yang merugikan harus ditahan dan dikendalikan. Jika tidak maka akan
menggangu kelangsungn sistem.
4) Penghubung Sistem (Interface)
Penghubung sistem merupakan media penghubung antara satu subsistem dengan
subsistem yang lain untuk berinteraksi membentuk kesatuan.
5) Masukan Sistem (Interface)
Masukan sistem merupakan energi yang dimasukan kedalam sistem yang berupa
masukan perawatan (maintenance input)dan keluarannya (signal output).
6) Keluaran Sistem (output)
Keluaran sistem adalah hasil dari energi yang diolah dan diklasifikasikan menjadi
keluaan yang berguna.
7) Pengolahan Sistem (Process)
Suatu sistem dapat mempunyai suatu bagian pengelolahan yang akan merubah
masukan menjadi keluaran yang berguna.
8) Sasaran Sistem (objective) atau tujuan sistem (Goal)
Suatu sistem harus mempunyai sasaran, karena sasaran sangat menentukan sekali
masukan yang dibutuhkan oleh sistem dan keluaran yang dihasilkan sistem. Suatu
sistem dapat dikatakan berhasil apabila mengenai sasaran dan tujuan.
2.2.
Analisis Sistem
Analisis sistem merupakan tahapan yang sangat kritis dan penting karena
kesalahan dalam tahap ini dapat mempengaruhi tahapan selanjutnya, Analisis sistem dapat
didefinisikan sebagai penentuan hal-hal detail tentang apa saja yang akan dikerjakan oleh
sistem yang diusulkan. Analisis sistem mecakup studi kelayakan dan analisis kebutuhan.
1) Studi Kelayakan
Studi kelayakan digunakan untuk menentukan kemungkinan keberhasilan solusi
yang diusulkan. Tahapan ini berguna untuk memastikan bahwa solusi yang
diusulkan tersebut benar-banar dapat dicapai dengan sumber daya dan dengan
memperhatikan kendala serta dampak yang akan muncul. Tugas-tugas yang
terdapat dalam studi kelayakan yaitu :
http://digilib.mercubuana.ac.id/
9
a. Penentuan masalah dan peluang yang dituju sistem.
b. Pembentukan sasaran sistem baru secara keseluruhan.
c. Pengidentifikasian para pemakai sistem.
d. Pembentukan lingkup sistem.
2) Analisis Kebutuhan
Analisis kebutuhan dilakukan untuk menghasilkan spesifikasi kebutuhan.
Spesifikasi kebutuhan adalah spesifikasi yang dirinci tentang hal-hal yang akan
dilakukan sistem ketika diimplementasikan.
2.3.
2.3.1.
Manajemen Proyek
Pengertian Manajement
Manajemen proyek terdiri dari dua kata yaitu Manajemen dan Proyek. Manajemen
meliputi kegiatan merencanakan, mengorganisasi, mencari sumber daya, memberi instuksi,
memantau kemajuan, mengontrol, memiliki inovasi dan merepresentasi (Kemp 2010).
Manajemen adalah suatu proses perencanaan pengorganisasian, pengarahan dan
pengawasan, usaha-usaha para anggota organisasi dan penggunaan sumber daya-sumber
daya organisasi lainnya agar tercapai tujuan organisasi yang telah ditetapkan.
(http://library.usu.ac.id/download/fe/manajemen-ritha1.pdf) Dari beberapa pendapat di
atas, maka disimpulkan bahwa manajemen itu adalah proses perencanaan, pengaturan,
pengkontrolan, dan pengkoordinasian kegiatankegiatan kerja dan penggunaan sumber daya
agar tercapainya suatu hasil dan tujuan yang diinginkan.
2.3.2.
Pengertian Proyek
Proyek dapat diasumsikan sebagai sesuatu yang besar untuk ditentukan bagaimana
cara untuk menyelesaikan suatu pekerjaan(Kemp 2010). Beberapa karakteristik proyek
dapat disimpulkan antara lain : 1. Pekerjaan yang tidak rutin dilibatkan 2. Diperlukan
perencanaan 3. Objektif yang spesifik dapat dillihat atau produk yang spesifik dapat dibuat
7 4. Pekerjaan diselesaikan oleh beberapa orang 5. Pekerjaan diselesaikan dalam beberapa
fase 6. Sumber daya yang dapat digunakan dalam proyek dibatasi 7. Proyek itu besar dan
kompleks, proyek adalah suatu usaha yang bersifat sementara untuk menghasilkan suatu
produk atau layanan yang unik (Kemp 2010). Proyek normalnya melibatkan beberapa
orang yang saling berhubungan aktivitasnya. (Kemp 2010) atribut suatu proyek antara lain
: 1. Sebuah proyek memiliki tujuan yang khusus. Proyek harus menghasilkan suatu produk
khusus, layanan dan hasil akhir 2. Proyek bersifat sementara. Proyek memiliki awal dan
http://digilib.mercubuana.ac.id/
10
akhir yang jelas 3. Proyek membutuhkan sumberdaya yang didapat dari berbagai area.
Sumberdaya dapat berupa hardware, software dan sumberdaya lainnya yang dilakukan oleh
pengguna sistem tersebut 4. Proyek harus memiliki pelanggan utama ( primary customer)
atau sponsor. 5. Proyek melibatkan ketidakpastian, karena setiap proyek bersifat unik
sehingga sangat sulit untuk menentukan objektifitas proyek, mengestimasi waktu dan biaya
proyek. (Kemp 2010)setiap proyek memiliki batasan yang berbeda terhadap ruang lingkup,
waktu dan biaya yang biasanya disebut sebagai triple constraint (tiga kendala). Seperti itu
pula seorang project manager harus memperhatikan hal-hal penting dalam manajemen
proyek : 1. Ruang lingkup ( scope ) : apa yang ingin dicapai dalam proyek, produk atau
layanan apa yang pelanggan harapkan dari proyek tersebut 8 2. Waktu ( time ) : berapa
lama waktu yang dibutuhkan untuk menyelesaikan proyek dan bagaimana jadwal kegiatan
proyek akan dilaksanakan 3. Biaya ( cost ) : berapa biaya yang dibutuhkan untuk
menyelesaikan proyek Dari beberapa beberapa pendapat di atas, maka disimpulkan bahwa
proyek adalah proyek bersifat sementara namun dibutuhkan sub-sub pekerjaan dalam halhal waktu, biaya dan sumber daya yang dapat menunjang jalannya proyek agar dapat
menghasilkan produk atau hasil yang baik dan jelas.
2.3.3.
Pengertian Manajemen Proyek
Manajemen proyek adalah suatu cara untuk menyelesaikan masalah yang harus
dipaparkan oleh user, kebutuhan user harus terlihat jelas dan harus terjadi komunikasi yang
baik agar kebutuhan user bisa diketahui. (Kemp 2010)Manajemen Proyek adalah aplikasi
pengetahuan, keahlian, peralatan dan teknik untuk kegiatan proyek yang sesuai dengan
kebutuhan proyek. Sedangkan pendapat lain menyatakan bahwa manajemen proyek adalah
cara mengorganisir dan mengelola sumber penghasilan yang penting untuk menyelesaikan
proyek. (http://id.wikipedia.org/wiki/Manajemen_proyek) Dari beberapa pendapat diatas,
maka disimpulkan bahwa manajemen proyek adalah kegiatan merencanakan, mengatur,
mengkoordinasikan seluruh sumber daya, biaya, waktu untuk menghasilkan suatu hasil
yang bersifat sementara atau suatu produk yang unik dan sesuai dengan kebutuhan yang
diminta. Adapun perbedaan antar manajemen proyek sistem informasi dan teknologi
informasi adalah : 9 Manajemen proyek sistem informasi ditekankan pada tiga faktor, yaitu
: manusia, masalah dan proses. Dalam pekerjaan sistem informasi faktor manusia sangat
berperan penting dalam suksesnya manajemen proyek. Pentingnya faktor manusia
dinyatakan dalam model kematangan kemampuan manajemen manusia (a people
management capability maturity model/ PM-CMM) yang berfungsi untuk meningkatkan
kesiapan organisasi perangkat lunak (sistem informasi) dalam menyelesaikan masalah
dengan melakukan kegiatan menerima, memilih, kinerja manajemen, pelatihan,
http://digilib.mercubuana.ac.id/
11
kompensasi, pengembangan karier, organisasi dan rancangan kerja serta pengembangan
tim Sedangkan teknologi informasi dilihat dari kata penyusunnya adalah teknologi dan
informasi. Secara mudahnya teknologi informasi adalah hasil rekayasa manusia terhadap
proses penyampaian informasi dari bagian pengirim ke penerima sehingga pengiriman
informasi tersebut akan lebih cepat, lebih luas sebarannya dan lebih lama penyimpanannya.
Maka dari itu disimpulkan bahwa, manajemen proyek teknologi informasi adalah
merencanakan, menyusun, mengorganisasikan seluruh sumber daya, waktu, dan biaya
untuk membuat suatu rekayasa manusia terhadap proses penyampaian informasi kepada
penerima akan lebih cepat, lebih luas sebarannya dan lebih lama penyimpanannya.
2.4.
Tahapan Utama Manajemen Proyek
Menurut Sartika Kurniali dkk (2013 : 43 ) terdapat 5 tahapan manajemen
proyek :
1. Tahap Inisiasi (Initiation)
Tahap ini merupakan tahap awal suatu proyek. Setelah pembuatan SPK (surat
perintah kerja), kontrak kerja, statetement of work (SOW), PO (purchase order atau
job order) atau bentuk kesepakatan dan order lainya, maka suatu perusahaan, organisasi,
maupun tim dapat dikatakan telah memasuki tahap awal proyek. Proses utama dari tahap
ini menghasilkan dua dokumen yaitu :
a.
Project Charter, merupakan dokumen dimulaianya proyek yang tujuan
utamanya adalah menunjuk manajer proyek, menjelaskan kebutuhan proyek ( durasi,
anggaran, otorisasi, kendala, dan lain-lain).
b.
Stakeholder Register, merupakan proses proses untuk menghasilkan
daftar pemangku kepentingan dalam proyek.
2. Tahap Perencanaan (Planning)
Target utama dari tahap ini adalah menghasilkan master dokumen perencanaan
proyek atau Project Management Plan. Bobot isi dari dokumen ini bervariasi, bergantung
dari kompleksitas proyek. Proses utama terkait tahap perencanaan yaitu :
a. Merangkum kebutuhan dan keinginan klien
b. Merinci unit-unit pekerjaan (subproyek/kegiatan)
c. Melakukan estimasi biaya
d. Menentukan standard an kebijakan mutu e. Perencanaan sumberdaya
manusia
http://digilib.mercubuana.ac.id/
12
f. Prencanaan manajemen resiko
3. Tahap Pelaksanaan (Execution)
Dalam suatu proyek ujian dan “seni” yang sesungguhnya terletak pada tahap
pelaksanaan yang umumnya beriringan dengan pengawasan. Tugas pengelola proyek
pada tahap ini adalah memfasilitasi dan mengawasi tim agar dapat bekerja sesui
dokumen perencanaan terutama mengawal tim agar tidak behind schedule (jadwal
mundur) ataupun over budget (anggaran minus).
4. Tahap Pengawasan (Monitoring and Control)
Selain melakukan perencanaan, mengawasi dan memotivasi tim. Tugas utama
seoran manajer proyek adalah melakukan pengawasan dan pemantauan. Tujuan utama
dalam tahap pengawasan adalah memastikan agar pelaksanaan proyek tidak jauh
menyimpang dari rencana. Terutama dari sisi waktu, mutu, resiko, anggaran, dan ruang
lingkup pekerjaan.
5. Tahap Penyelesaian (Closing)
Dalam tahap ini ada beberapa aktifitas yang penting dilakukan yaitu :
a.
Memastikan persetujuan resmi dari sponsor atau klien terkait
penyelesaian pekerjaan.
b.
Mengadakan evaluasi akhir proyek (lessons learned).
c.
Mengkaji apakah metodologi manajemen proyek perlu diperbaiki.
d.
Merapikan arsip dokumentasi proyek.
e.
Memberi masukan kepada manajemen perusahaan terkait hal-hal yang
dirasakan bermanfaat selama proyek dijalankan.
f.
Menyelesaikan kewajiban dengan pihak-pihak terutama pihak
pemasok (supplier/vendor), outsourcing, dan sebagainya.
2.5.
Penilaian Sumber Daya Manusia
Dalam dunia kerja banyak sekali faktor yang dapat memotivasi karyawan untuk
bekerja lebih produktif dan menghasilkan output yang memuaskan, hal tersebut dapat
terlihat apabila dalam sebuah perusahaan terdapat proses penilaian kerja untuk setiap
karyawan yang terlibat dalam pekerjaan. Adapun pengertian dari penilaian itu sendiri
adalah sebagai berikut:
Penilaian prestasi kerja adalah proses evaluasi prestasi atau unjuk kerja pegawai
yang dilakukan oleh organisasi. Melalui kegiatan ini, para manajer atau supervisor bisa
memperoleh data tentang bagaimana pegawai bekerja. Jika prestasi pegawai masih di
http://digilib.mercubuana.ac.id/
13
bawah standar, maka harus segera diperbaiki. Sebaliknya jika prestasi kerjanya sudah baik
prilaku tersebut harus diberi penguat (reinforcement) supaya pegawai tersebut
menampilkan kembali prestasi kerja yang kita kehendaki. Adapun Penilaian prestasi kerja
didefinisikan sebagai berikut. (Justine.T.Sirait,2007)
1. Menetapkan standar kerja.
2. Menilai prestasi kerja pegawai secara nyata dibandingkan dengan standar
kerja yang telah di tetapkan.
3. Memberikan umpan balik kepada pegawai dengan tujuan untuk memotivasi
pegawai agar meninggalkan prestasi yang sudah baik.
Pada saat sekarang ini, banyak perusahaan mengkombinasikan ketiga dimensi yaitu
trait, behavior dan hasil kerja dengan asumsi bahwa individu yang memiliki watak
baik (trait) akan melakukan proses dengan benar (perilaku) sehingga mampu
menghasilkan output yang bermutu (hasil kerja).
Gambar 2.9 Dimensi Penilaian
Dalam perkembanganya, unsur –unsur di luar trait juga bisa ditambahkan sebagai
bagian dari penilaian terhadap input, misalnya motif, sistem nilai, konsep diri dan
pengetahuan.
2.5.1.
Proses Penilaian Kinerja
Disamping isi penilaian kinerja, hal peting lain dalam penilaian kinerja
adalah proses penilaian kinerja. (Budi Purwanto,2010). Proses penilaian kerja
terkait dengan hal-hal sebagai berikut:
1. Kapan waktu yang tepat untuk melakukan penilaian kinerja (bulanan,
kuartalan, semesteran, atau tahunan).?
2. Bagaimana melakukan proses penilaian kinerja secara efektif dan efisien
(memakai pinsl dan kertas atau komputer, penilaian dilakukan hanya ole
atasan atau bersifat 360 derajat, ada sesi pemberian feedback atau tanpa
pemberian feedback).?
http://digilib.mercubuana.ac.id/
14
Dalam proses penilaian adakalanya manipulasi atau kesalahan penilaian
masih terjadi adapun Empat error yang terjadi akibat adanya hambatan psikologis
antara atasan sebagai penilai dan bawahan sebagai pihak yang dinilai adalah sebagai
berikut:
1. Halo Error, yaitu rating didasarkan atas sesuatu yang bersifat global dan
bukan atas dasar penilaian terhadap dimensi penilaian yang lebih detail.
2. Leniency Error, yaitu penilaian yang condong sama terhadap semua orang
yang dinilai (semua jelek atau semua baik). Kondisi ini di dunia pendidikan
dikenal dengan istilah dosen pelit dan dosen murah hati.
3. Central tendency error, yang mirip dengan leniency error, tetapi penilaian
condong sama ke tengah, yaitu semua dinilai pada level rata – rata. Hal ini
biasanya banyak dilakukan oleh penilai yang memiliki safety Player.
4. Recency error. Yaitu penilaian yang didasarkan hanya pada peristiwa yang
terjadi beberapa saat sebelum prses penilaian kinerja dilakukan. Ini bisa
terjadi jika penilaian tidak rajin mencatat atau tidak pernah
mendokumentaskan critical incident yang menyangkut bawahanya.
2.5.2.
Sistem Penilaian Multi Raters
Banyaknya kesalahan yang muncul dalam proses penilaian kinerja
mendorong munculnya sistem penilaian 360 derajat yang melibatkan multi raters.
Dalam sistem 360 derajat penilaian biasanya terdiri atas diri sendiri, atasan,
bawahan, rekan kerja dan customer. Dengan multi raters maka hambatan psikologis
yang dialami oleh atasan selaku penilai tunggal bisa dikurangi, bahkan dihilangkan.
Namun karena melibatkan lebih dari satu penilai, maka pendekatan 360 derajat ini
menjadi lebih kompleks dan hanya akan berhasil baik jika dilakukan tidak dengan
cara manual atau konvensional. Selain mengurangi beban psikologis model 360
derajat ini dibandingkan dengan penilaian kinerja model tradisional adalah dalam
fokusnya terhadap unsur feedback untuk keperluan perbaikan ke depan.
Sebagaimana diketahui bersama fokus penilaian penilaian oleh coach akan
digunakan untuk dasar pemberian feedback terkait dengan pengembagnan skill
(atau kompensasi) dan pengambilan keputusan terkait promosi. Sementara itu hasil
penilaian oleh proses integrator akan dipakai untuk dasar pemberian feedback
terkait dengan proses kerja dan pengambilan keputusan. (Budi Purnawanto, 2010).
2.5.3.
Hasil Proses Penilaian Kinerja
Hasil dari proses penilaian kinerja adalah peringkat (rating) kinerja. Berikut
ini contoh peringkat kinerja, yang berurutan dari yang tertinggi hingga terendah:
http://digilib.mercubuana.ac.id/
15
Value
Explanation
1
Unsastisfatory (Tidak memuaskan) - Jauh di bawah harapan. Beberapa
kinerja memenuhi harapan di daerah fokus tapi hasil jauh dibawah harapan.
Ada kebutuhan yang pasti untuk perbaikan.
2
Reasonable (Cukup) - Kinerja sedikit di bawah ekspektasi. Beberapa kinerja
memenuhi harapan dalam area fokus ini tapi masih perlu untuk perbaikan.
3
Good (Baik) - Harapan telah terpenuhi. Harapan dalam area fokus ini telah
tercapai tapi masih perlu untuk perbaikan.
4
Very Good (Sangat Baik) - Telah melampaui harapan dan telah memenuhi
apa yang diharapkan dari area fokus ini.
5
Outstanding (Luar Biasa) - Telah melampaui harapan dan lebih dari yang
diharapkan yang dilakukan dalam area fokus ini.
N/A
Kompetensi tidak dapat dievaluasi
Rating kinerja biasanya digunakan untuk keperluan pengambilan keputusan
terkait dengan remunerasi dan promosi. Individu dengan peringkat yang lebih tinggi
akan mendapatkan reward (dalam bentuk merit Increase) yang lebih besar
dibandingkan dengan mereka yang peringkat lebih rendah, dan demikian pula
sebaliknya. Kesempatan promosi juga lebih cenderung di berikan kepada individu
dengan peringkat kinerja tertinggi.(Budi Purnawanto, 2010).
2.6.
Monitoring
Monitoring adalah pemantauan yang dapat dijelaskan sebagai kesadaran
(awareness) tentang apa yang ingin diketahui, pemantauan berkadar tingkat tinggi
dilakukan agar dapat membuat pengukuran melalui waktu yang menunjukkan pergerakan
ke arah tujuan atau menjauh dari itu. Monitoring akan memberikan informasi tentang status
dan kecenderungan bahwa pengukuran dan evaluasi yang diselesaikan berulang dari waktu
ke waktu, pemantauan umumnya dilakukan untuk tujuan tertentu, untuk memeriksa
terhadap proses berikut objek atau untuk mengevaluasi kondisi atau kemajuan menuju
tujuan hasil manajemen atas efek tindakan dari beberapa jenis antara lain tindakan untuk
mempertahankan manajemen yang sedang berjalan.
2.6.1.
Sistem Monitoring
Pengertian sistem monitoring dari kamus online (nonprofit dictionary) adalah “A
monitoring system is the way an organization collects and analyzes data about itself in
order to maximize its achievement”. Sebuah sistem monitoring melakukan proses
http://digilib.mercubuana.ac.id/
16
pengumpulan data mengenai dirinya sendiri dan melakukan analisis terhadap data-data
tersebut dengan tujuan untuk memaksimalkan seluruh sumber daya yang dimiliki. Data
yang dikumpulkan pada umumnya merupakan data yang real-time, baik data yang
diperoleh dari sistem yang hard real-time maupun sistem yang soft real-time. Sistem yang
real-time merupakan sebuah sistem dimana waktu yang diperlukan oleh sebuah komputer
di dalam memberikan stimulus ke lingkungan eksternal adalah suatu hal yang vital. Waktu
di dalam pengertian tersebut berarti bahwa sistem yang real-time menjalankan suatu
pekerjaan yang memiliki batasan waktu tertentu (deadline). Di dalam batasan waktu
tersebut suatu pekerjaan mungkin dapat terselesaikan dengan benar, atau sebaliknya dapat
juga belum terselesaikan. Sistem yang hard real-time mengharuskan bahwa suatu pekerjaan
harus terselesaikan dengan benar. Sesuatu yang sangat buruk akan terjadi apabila komputer
tidak mampu menghasilkan output dengan tepat waktu. Hal ini seperti yang sering terjadi
pada embedded system untuk kontrol suatu benda, seperti pesawat terbang, mesin jet, dan
yang lainnya. Sistem yang soft real-time tidak mengharuskan bahwa suatu pekerjaan harus
terselesaikan dengan benar. Seperti sistem pada multimedia dimana tidak akan memberikan
pengaruh yang begitu besar terhadap output yang dihasilkan apabila untuk beberapa
batasan waktu yang telah ditetapkan terjadi kehilangan data. Namun hal tersebut umumnya
masih bisa ditoleransi.
2.7.
Metode Waterfall
Metode waterfall adalah sebuah metode yang menyarankan sebuah pendekatan
yang sistematis dan sekuensial melalui tahapan-tahapan yang ad pada SDLC (Software
Development Life Cycle)untuk membangun perangkat lunak(SATZINGER 2010).
Gambar 2.1 Metode waterdall
http://digilib.mercubuana.ac.id/
17
Dari gambar 2.1 dapat dilihat bahwa tahapan metode waterfall diawali oleh:
1) Sistem Engineering
Karena perangkat lunak adalah bagian dari sebuah sistem yang lebih besar,
pekerjaan dimulai dari pembentukan kebutuhan-kebutuhan seluruh elemen sistem
dan kemudian memilah mana untuk pengembangan perangkat lunak.
2) Analisa KebutuhanSoftware
Pengumpulan kebutuhan dengan fokus pada perangkat lunak, yang meliputi:
domain informasi, fungsi yang dibutuhkan, untuk kerja/performasi dan antarmuka.
3) Design
Ada 4 atribut untuk program yaitu: struktur data, asitektur perangkat lunak,
prosedur detail dan karakteristik antar muka. Proses desain mengubah kebutuhankebutuhan menjadi bentuk karakteristik yang dimengerti perangkat sebelum
penulisan program.
4) Coding
Penterjemah perancangan kebentuk yang dapat dimengerti oleh mesindengan
menggunakan bahasa pemograman
5) Testing
Setelah kode program selesai proses pengujian dapat dilakukan. Testing
memfokuskan pada logika internal dari perangkat lunak, fungsi eksternal untuk
mencari segala kemungkinan kesalahan dan pemeriksaan apakah sesuai dengan
hasil yang diinginkan.
6) Maintenance
Merupakan bagian akhir dari siklus pengembangan dan dilakukan setelah
perangkat lunak siap dipergunakan
2.8.
Konsep Dasar Sistem berorientasi objek
Konsep dasar pemrograman yang lakukan pada pembuatan skripsi ini dibuat
dengan konsep pemrograman berorientasi objek (OOP)(Kendal 2011), adapun konsep
Pemograman OOP yang akan dibahas seperti :
1) Kelas (Class)
http://digilib.mercubuana.ac.id/
18
Kelas merupakan kumpulan objek yang memiliki kemiripan, ciri atau karakteristik.
Kelas didefinisikan sebagai blue printyang mendefinisikan variable-variable dan
metode-metode yang umum untuk semua objek.
2) Data/ Atribut/ Variabel
Data adalah Komponen terkecil di dalam class atau karakteristik dari suatu class.
Data merupakan istilah lain dari variable pada pemrograman berorientasi objek.
3) Objek (Object)
Object adalah Bentuk nyata dari suatu class, dengan kata lain bentuk sederhana
(instansiasi) dari class.Bentuk umum:NamaClass NamaObject =new NamaClass().
4) Metode (Method)
Sebuah method adalah bagian-bagian kode yang dapat dipanggil oleh
programutama atau dari method lainnya untuk menjalankan fungsi yang spesifik
di dalam kelas. Method dapat dibagi menjadi fungsi dan prosedur. Fungsi adalah
bagian atau sub dari program yang mempunyai algoritma tertentu dalam
menyelesaikan suatu masalah dengan mengembalikan hasil.
5) Constructor
Constructor merupakan suatu method yang akan memberikan nilai awal pada saat
suatu objek dibuat. Pada saat program dijalankan, constructor akan langsung
memberikan nilai awal pada saat perintah new, membuat suatu objek.Pada saat kita
bekerja dengan constructor, hal mendasar yang perlu diperhatikan, yaitu : nama
Constructor sama dengan nama Class., tidak ada return type yang diberikan
kedalam Constructor Signature, tidak ada return stetement, didalam tubuh
constructor.
6) Pewarisan (Inheritance)
Dalam pemrograman berbasis objek, Inheritance memungkinkan suatu Class bisa
mewariskan atribut dan Method kepada Class yang lainnya atau subClass,
sehingga membentuk Class hirarki.
7) Banyak Bentuk (Polymorphism)
Karakteristik dari polymorphism yaitu memungkinkan suatu objek dapat memiliki
berbagai bentuk atau banyak bentuk. Bentuk dari objek ini bisa sebagai Object dari
Classnya sendiri atau Object dari superClassnya.
http://digilib.mercubuana.ac.id/
19
8) Pembungkusan (Enkapsulasi)
Merupakan suatu cara bagaimana menyembunyikan sedemikian rupa suatu proses
kedalam sistem, hal ini berguna untuk menghindari interferensi dari luar
sistem dan juga lebih untuk menyederhakanan sistem itu sendiri.
9) Peckage
Peckage adalah sebuah kontainer atau kemasan yang dapat digunakan untuk
mengelompokkan kelas-kelas sehingga memungkinkan beberapa kelas yang
bernama sama disimpan dalam peckage yang berbeda.
2.9.
Unified Modelling Language (UML)
Unified Modelling Language(UML) merupakan bahasa visual untuk pemodelan dan
komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks- teks
pendukung. UML hanya berfungsi untuk melakukan pemodelan. Jadi penggunaan UML
tidak terbatas pada metodologi tertentu, meskipun pada kenyataannya UML paling banyak
digunakan pada metodologi berorientasi objek .(Dennis and Wixom 2010).
2.9.1.
Use Case
Use Casepemodelan untuk kelakuan (behavior) sistem informasi yang dibuat. Use
case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi
yang akan dibuat. Simbol-simbol use case dapat dilihat pada Tabel 2.1.
Nama
Simbol
Use case
Keterangan
Fungsionalitas
nama use
case
yang
disediakan
sistem
sebagai unit-unit yang saling bertukar pesan
antar unit atau aktor, biasanya dinyatakan
dengan menggunakan kata kerja di awal
frase nama use case.
Aktor/ Actor
Orang, proses, atau sistem lain yang
berinteraksi dengan sistem informasi yang
akan dibuat di luar sistem informasi yang
akan dibuat itu sendiri.
Asosiasi / association
Komunikasi antara aktor dan use case yang
berpartisipasi pada use case atau use case
memiliki interaksi dengan aktor.
http://digilib.mercubuana.ac.id/
20
Ekstensi / extend
<< extend >>
Komunikasi antara aktor dan use case yang
berpartisipasi pada use case atau use case
memiliki interaksi dengan aktor.
include / uses
<< uses >>
Relasi use case tambahan ke sebuah use case
danuse case yang ditambahkan memerlukan
use case ini untuk menjalanakan fungsinya
atau sebagai syarat dijalankan use case ini.
Generalisasi /
Hubungan generalisasi dan spesialisasi
generalization
(umum-khusus) antara dua buah use case
yang salah satu fungsinya adalah fungsi
yang lebih umum dari lainnya.
Table 2.1 : Simbel Use Case
Gambar 2.2 Contoh Use Case
2.9.2.
Class Diagram
Menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan
dibuat untuk membangun sistem. Simbol-simbol yang ada pada class diagram dapat dilihat
pada Tabel 2.2
Nama
Simbol
Keterangan
Sama dengan konsep interface dalam
Antamuka/interface
nama_interface
pemrograman berorientasi objek.
http://digilib.mercubuana.ac.id/
21
Asosiasi / ssociation
Relasi antarkelas dengan makna umum,
asosiasi
biasanya
juga
disertai
dengan
multiplicity.
Asosiasi berarah /
Relasi antarkelas dengan makna class yang
directed association
satu digunakan oleh class yang lain, asosiasi
biasanya juga disertai dengan multiplicity.
Generalisasi
Relasi antarkelas dengan makna generalisasispesialisasi (umum-khusus).
Kebergantungan /
Realasi
antarkelas
dependency
kebergantungan antarkelas..
Agregasi /
Relasi antarkelas dengan makna semua-
aggregation
bagian (whole-part).
Table 1.2 : Simbol class diagram
Gambar 2.3 Contoh Class Diagram
http://digilib.mercubuana.ac.id/
dengan
makna
22
2.9.3. Activity Diagram
Diagram aktivitas atau activity diagram menggambarkan workflow (aliran kerja)
atau aktivitas dari sebuah sistem atau proses bisnis .Simbol-simbol yang ada pada Activity
Diagram dapat dilihat pada Tabel 2.3
Nama
Simbol
Keterangan
Status Awal
Status awal aktivitas sistem.
Aktivitas
Aktivitas yang dilakukan sistem, aktivitas
aktivitas
biasanya diawali dengan kata kerja.
Percabangan /
Asosiasi percabangan jika ada pilihan
decision
aktivitas lebih dari satu.
Penggabungan /
Asosiasi penggabungan yang aktivitasnya
join
lebih dari satu dan digabungkan menjadi
satu.
Status akhir
Swimlane
Status akhir yang dilakukan sistem.
nama swimlane
Memisahkan
organisasi
bisnis
yang
bertanggung jawab terhadap aktivitas yang
terjadi.
Table 2.2 : Simbol activity diagram
http://digilib.mercubuana.ac.id/
23
Gambar 2.3 Contoh Aktivity Diagram
2.9.4. Sequence Diagram
Sequence Diagram menggambarkan kelakuan objek pada use case dengan
mendeskripsikan waktu hidup objek dan message yang dikirimkan dan menerima antar
objek. Simbol-simbol yang ada pada Activity Diagram dapat dilihat pada Tabel 2.4.
Nama
Simbol
Keterangan
Actor
Menggambarkan user/pengguna
Life line
Objek entity antar muka yang saling
berintegrasi
Boundry
Menggambarkan sebuah form
http://digilib.mercubuana.ac.id/
24
control
Menghubungkan boundy dengan table
Message
Spesifikasi komunikasi antar objek yang
memuat informasi-informasi tentang aktifitas
yang terjadi
Entity Class
Digunakan untuk menggambarkan hubngn
kegiatan yang akan dilakukan
Table 2.3 : Simbol Sequence diagram
Gambar 2.4 Contoh Sequence Diagram
2.10. Basis Data
Ada dua pendekatan untuk menyimpan data dalam sistem yang berdasarkan
komputer. Metode yang pertama adalah menyimpan data dengan file individu, masingmasing khusus untuk aplikasi tertentu. Pendekatan kedua untuk penyimpanan data dalam
sistem berdasarkan komputer meliputi membangun basis data. Basis data didefinisikan
secara formal dan mengontrol penyimpanan data terpusat yang dimaksud untuk
penggunaan dalam banyak aplikasi berbeda.
2.10.1. Pengertian Basis Data
Menurut Connolly dan Begg (2010: 65), basis data adalah koleksi dari berbagai
data secara logis yang terkait, dan deskripsi dari data ini dirancang untuk memenuhi
kebutuhan informasi suatu organisasi
http://digilib.mercubuana.ac.id/
25
2.10.2. Database Management System (DBMS)
Menurut Connolly dan Begg (2010: 66), Database Management System adalah
sebuah sistem perangkat lunak yang memungkinkan pengguna untuk mendefinisikan,
menciptakan, memelihara, dan kontrol akses ke basis data. DBMS memberikan beberapa
fasilitas. Fasilitas DBMS antara lain mengizinkan pengguna untuk mendefinisikan basis
data, biasanya melalui Data Definition Language (DDL).DDL memungkinkan pengguna
untuk menentukan tipe data dan struktur dan kendala pada data yang akan disimpan dalam
basis data. Selain itu DBMS juga mengizinkan pengguna untuk memasukkan, mengubah,
menghapus, dan mengambil data dari basis data melalui Data Manipulation Language
(DML).
2.10.3. SQL dan PL/SQL
2.10.3.1.
SQL
SQL singkatan dari Structured Query Language. Structured Query Language (SQL)
merupakan bahasa generasi keempat yang relatif mudah dipahami (Greenberg et al. 2010).
Perintah-perintah dinyatakan dalam bahasa inggris sederhana dan mempunyai struktur
linear dalam baris-baris terurut.Secara umum SQL dapat digunakan untuk melakukan
proses penambahan data, penghapusan data, perbaikan data, melihat data yang tersimpan
dan membentuk laporan, serta melakukan ekstraksi informasi dalam suatu database
2.10.3.2.
PL/SQL
Dalam pembahasan sebelumnya, untuk mengakses database oracle kita
menggunakan bahasa SQL. SQL merupakan bahasa yang efisien dalam mengaksesdan
memanipulasi data. Walaupun SQL membuat pekerjaan menjadi mudah, ada saatnya kita
ingin memanfaatkan bahasa prosedural untuk memanipulasi data (Gupta 2012). Misalnya
ingin memanfaatkan fungsi control if-then - else atau looping. Tentunya tidak
dapatmengandalkan SQL sepenuhnya. Di sini kita membutuhkan PL/SQL, bahasa
pemrograman yang menggabungkan fleksibilitas SQL (bahasa tingkat empat atau 4GL)
dengan bahasa prosedural (bahasa tingkat 3 atau 3GL).
PL/SQL singkatan dari Procedural Language / SQL. PL/SQL menambahkan SQL
dengan bahasa-bahasa prosedural, seperti :

Variabel

Struktur kontrol seperti if- then - else dan loop

Prosedur dan fungsi
http://digilib.mercubuana.ac.id/
26
Berikut ini adalah struktur dari PL/SQL :
DECLARE
--Bagian deklarasi - variabel, jenisdata, kursor, dan subprogram
BEGIN
-- Bagian yang dapat dieksekusi - perintah prosedural, dan SQL
EXCEPTION
--Bagian yang menangani error - perintah untuk menangani error .
END ;
Seperti bahasa pemrograman C, untuk memasukkan komentar menggunakan
karakter - - atau /* */. Untuk mengeksekusi blok ini, dapat disimpan dalam teks file
biasanya dengan extention .sql , kemudian mengeksekusinya menggunakan perintah @.
Cara lain adalah langsung mengetikkan di SQL*Plus , kemudian di akhiri dengan tanda /
(slash). PL/SQL Blok seperti contoh diatas adalah anonymous blok. Artinya blok tersebut
tidak memiliki nama dan dieksekusi saat dijalankan. Procedure, function, dan trigger
adalah termasuk named PL/SQL blok. Artinya blok PL/SQL ini memiliki nama. Named
PLSQL dapat dipanggil dari blok PL/SQL lain atau diakses langsung dari SQL*Plus
command line dengan cara memanggil nama bloknya.
1) Prosedur (Procedure)
Procedure merupakan blok yang memiliki nama. Pemanggilan procedure
dilakukan melalui blok PL/SQL lain. Penggunaan procedure, merupakan fasilitas
yang paling sering digunakan dalam membuat kontrol program di database
oracle(Pl-Sql 2010). Procedure memiliki struktur yang mudah dipahami, terletak
dalam database, dan mudah dipanggil untuk dieksekusi. Untuk membuat
procedure, dan contoh sebelumnya tinggal mengganti bagian DECLARE dengan
CREATE OR REPLACE PROCEDURE. Berikut ini adalah contoh pembuatan
procedure :
CREATEORREPLACEPROCEDURE KaryawanBaru(
p_Id
Karyswan.id %TYPE,
p_NamaDepan Karyawan.namadepan%TYPE,
p_NamaBeIakang Karyawan.namabelakang%TYPE,
p_Gaji
Karyawan.gaji%TYPE) AS
BEGIN
INSERTINTO Karyawan
(id, namadepan, namabelakang, gaji)
VALUES
(p_Id, p_NamaDepan, p_NamaBelakang, p_Gaji);
END KaryawanBaru;
http://digilib.mercubuana.ac.id/
27
Setelah procedure terbentuk maka untuk memanggilnya dengan cara berikut
;
BEGIN
KaryawanBaru(1008, ‘Yudhi’, ‘ Triatmanto’, 2500000);
END;
2) Fungsi (Function)
Functionmerupakan PL/SQL blok yang mirip dengan procedure. Perbedaannya
adalah function mengembalikan suatu nilai dan dipanggil melalui suatu
ekspresi(Pl-Sql 2010). Berikut ini adalah contoh membuah function :
CREATEORREPLACEFUNCTION NamaLengkap(p_Id Karyawan.id%TYPE)
RETURNVARCHAR2IS
v_Hasil VARCHAR2(20);
BEGIN
SELECT namadepan || namabelakang
INTO v_Hasil
FROM Karyawan
WHEREid = P_Id;
RETURN v_Hasil;
END NamaLengkap;
Sama seperti membuat procedure kalimat OR REPLACE digunakan untuk
menimpa function yang sudah ada jika namanya sama. Pernyataan RETURN
berfungsi mengembalikan suatu nilai.
3) Pemicu (Trigger)
Trigger mcrupakan PL/SQL blok yang mirip dengan procedure. Jika procedure
dijalankan secara eksplisit lewat pemanggilan procedure, trigger dijalankan secara
implisit lewat 'pemicu'(Pl-Sql 2010). Pemicu yang dimaksud adalah Data
Manipulation Language (DML) yang terdiri atas perintah INSERT, UPDATE, atau
DELETE dari suatu tabel database. Trigger ini dapat dipicu sebelum (BEFORE)
atau sesudah (AFTER) operasi berjalan. Trigger juga berlaku untuk tingkat baris
(FOR EACH ROW) yang berlaku untuk setiap baris tabel saat dimanipulasi, atau
tingkat seluruh tabel yang dijalankan untuk seluruh tabel saat trigger ita dijalankan.
Berikut ini adalah contoh penggunaan trigger :
CREATEORREPLACETRIGGERubah_karyawan
BEFOREINSERTONKaryawan
BEGIN
INSERTINTO tabel_audit (nama, waktu,komentar)
VALUES (USER,TO_CHAR(SYSDATE, ‘MONTH DD, HH24:MI’ );
END;
http://digilib.mercubuana.ac.id/
28
Pada contoh di atas, Trigger diberi nama ubah karyawan yang dijalankan ketika
tabel karyawan dihapus atau diubah. Di bagian yang dapat dieksekusi ketika trigger
berjalan akan dimasukkan nilai nama user yang aktif login saat itu, bulan tanggal
dan waktu saat itu, dan komentar ' Tabel karyawan diubah atau dihapus pada waklu
ini ‘.
Dengan memanfaatkan fasilitas trigger seperti contoh di atas, kita dapat menelusuri
user yang melakukan perubahan data. Hal ini sangat berguna untuk keperluan audit
database
2.11. Java
Java adalah bahasa pemrograman berorientasi objek yang dikembangkan oleh Sun
Microsystems sejak tahun 1991. Bahasa ini dikembangkan dengan model yang mirip
dengan bahasa C++, namun dirancang agar lebih mudah dipakai dan platform independen,
yaitu dapat dijalankan di berbagai jenis sistem operasi dan arsitektur komputer. Bahasa ini
juga dirancang untuk pemrograman di internet sehingga dirancang agar aman dan
portable(Kendal 2011).
2.11.1. Defenisi bahasa Java
Definisi Bahasa Java menurut Sun Microsystems adalah nama sekumpulan
teknologi untuk membuat dan menjalankan perangkat lunak pada komputer standalone
ataupun pada lingkungan jaringan. Menurut definisi lainnya, Java adalah bahasa
pemrograman yang open source dan berorientasi objek (OOP) serta bersifat portable
sehingga bisa dijalankan diberbagai sistem operasi.
2.11.2. Edisi Bahasa Java
Definisi Bahasa Java menurut Sun Microsystems adalah nama sekumpulan
teknologi untuk membuat dan menjalankan perangkat lunak pada komputer standalone
ataupun pada lingkungan jaringan. Menurut definisi lainnya, Java adalah bahasa
pemrograman yang open source dan berorientasi objek (OOP) serta bersifat portable
sehingga bisa dijalankan diberbagai sistem operasi
Bahasa Java selalu dikembangkan hingga secara garis besar bahasa Java memiliki
tiga edisi, yaitu:
1)
J2SE (Java 2 Standard Edition)
Edisi ini adalah edisi standar/dasar dari bahasa pemrograman Java. Jika kita
ingin menguasai bahasa Java, maka yang harus kita kuasai terlebih dahulu
adalah edisi J2SE. Edisi J2SE ini meliputi aplikasi desktop dan pada lingkungan
http://digilib.mercubuana.ac.id/
29
web browser (applet). Edisi ini mendukung pemrograman database,
perancangan input/output, perancangan interface, network programming, dan
sebagainya.
2) J2ME (Java 2 Micro Edition)
Edisi ini adalah edisi Java yang diperuntukkan untuk membuat aplikasi berskala
micro, seperti handphone, PDA, pagers, smart card, dan sebagainya. Banyak
juga yang mendefinisikan bahwa edisi ini adalah edisi mobile dari bahasa
pemrograman Java. Edisi J2ME ini hanya bisa mengimplementasikan sedikit
dari library J2SE. Library yang digunakan dalam edisi J2ME ini adalah
sebagian library J2SE ditambah library khusus J2ME.
3) J2EE (Java 2 Enterprise Edition)
Edisi ini adalah edisi Java yang paling lengkap, karena diperuntukkan untuk
membangun aplikasi berskala enterprise (besar). J2EE berisikan paket-paket
J2SE ditambah paket-paket khusus enterprise seperti JavaBeans, Servlets, JSP
(Java Server Pages), XML, dan sebagainya. Edisi ini berbasis website dan kita
juga bisa menggunakan library applet untuk membangun aplikasi enterprise
ini. Edisi ini memiliki tingkatan paling sulit dari semua edisi Java.
2.12. Perangkat Lunak Pendukung
2.12.1. Zkoss Framework
Zkoss
adalah
framework
berbasis
komponen
(componen-based)
yang
menyediakan tampilan antar muka (interfaces) yang kaya, dinamis dan interaktif bagi
pengembangan web aplikasi(Zkoss n.d.). Zkoss atau yang biasa disingkat ZK menyertakan
sebuah engineevent-driven berbasis AJAX, yaitu sekumpulan komponen-komponen
beraneka ragam (rich) yang terdiri dari XML User Interface Language (XUL), XHTML
dan ZK User Interface Markup Language disingkat ZUML (markup language milik ZK).
Engineevent-driven sendiri merupakan sebuah engine yang dapat memungkinkan
untuk melakukan model pemrograman desktop ke model pemrograman web programming.
Maksudnya, konsep-konsep pemrograman pada aplikasi desktop yang dilakukan dengan
cepat dan mudah atau istilah tren-nya drag and drop, dapat dilakukan pada lingkungan
web. Para programmer dapat menampilkan aplikasinya dalam fitur komponen rich XUL
dan XHMTL(zkoss n.d.).
2.12.2. Spring Framework
Spring adalah salah satu application framework untuk aplikasi berbasis Java,
tepatnya JEE(Long 2013). Spring merupakan sebuah framework (kerangka kerja)
http://digilib.mercubuana.ac.id/
30
yangdigunakan untuk membangun sebuah aplikasi Enterprise. Spring termasukframework
yang lightweight (ringan) untuk mendukung secara penuh dalampengembangan aplikasi
Enterprise siap pakai.Spring dapat digunakan untuk melakukan pengaturan deklarasi
manajementransaksi, remote access dengan menggunakan RMI atau layanan web
lainnya,fasilitas mailing, dan beragam opsi untuk pengaturan data ke database. Springjuga
memungkinkan kita menggunakan hanya modul-modul tertentu sehingga kitatidak usah
menggunakan semua modul spring dalam aplikasi apabila tidakdiperlukan.
2.12.2.1.
Fitur-fitur dari Spring Framework
1) Transaction Management : Spring framework menyediakan sebuah layerabstrak
yang generik untuk manajemen transaksi, sehingga memudahkanpara developer
dalam melakukan manajemen transaksi.
2) JDBC Exception Handling : layer abstrak JDBC menawarkan exceptionyang
bersifat hierarki sehingga memudahkan penanganan error.
3) Integration with Hibernate, JDO, and iBatis : Spring menawarkan layananintegrasi
terbaik dengan Hibernate, JDO dan iBatas
4) AOP Framework : Spring merupakan framework AOP Terbaik yangpernah ada.
5) MVC Framework : Spring hadir dengan framework aplikasi web MVC,yang
dibangun di atas inti Spring. Spring merupakan framework yangsangat fleksibel
dalam pengaturan strategi interface, dan mengakomodasibeberapa teknologi view
seperti JSP, Velocity, Tiles, iText, dan POI.
2.12.2.2.
Arsitektur Spring
1) Spring AOP
Salah satu komponen utama Spring adalah AOP framework, AOP framework
digunakan untuk :
A.
Untuk menyediakan layanan Enterprise, terutama sebagai penggantiEJB.
Layanan terpenting dalam layanan ini adalah untuk mendekralifmanajemen
transaksi, yang telah disediakan dalam abstraksi springtransaction.
B.
Untuk
memungkinkan
pengguna
dalam
menerapkan
AOP
dalampenggunaan OOP.
2) Spring ORM
Spring ORM berhubungan dengan akses database dan menyediakanlapisan layer
terintegrasi dengan ORM yang populer termasuk JDO,Hibernate dan iBatis.
3) Spring Web
http://digilib.mercubuana.ac.id/
31
Merupakan bagian dari modul pengembangan Web Spring termasukSpring Web
MVC.
4) Spring DAO
DAO (Data Access Object) mendukung standarisasi akses data yangmenggunakan
teknologi seperti JDBC, Hibernate dan JDO.
5) Spring Context
Paket ini didasari pada paket beans untuk menambah dukungan sumberpesan dan
untuk pola desain Observer, dan kemampuan untukmendapatkan sumber daya
yang konsisten dengan menggunakan API.
6) Spring Web MVC
Menyediakan implementasi MVC untuk aplikasi web.
7) Spring Core
Paket
Spring
Core
SpringFramework.
ini
merupakan
Komponen
Injection.BeanFactory
ini
memisahkan
komponen
menyediakan
dependensi
pembentukandan akses object dari logika program.
Diagram Berikut menggambarkan arsitektur dari Spring :
Gambar 1.2 : Arsitektur Spring
http://digilib.mercubuana.ac.id/
paling
penting
dari
fitur
Dependency
seperti
inisialisasi,
32
Pola desain MVC (Model-View-Controller) memberikan pemecahan permasalahan
coupling yang tinggi tersebut dengan men-decoupling lapisan dataaccess, business logic,
dan data presentation atau user interaction.
1) Model
Model merepresentasikan lapisan data enterprise dan logika atau rulebisnis yang
akan mengakses dan mengupdate data tersebut. Pada bagian modeljuga
merepresentasikan proses riil yang terjadi pada suatu objek. Bisa termasukdalam
bagian ini adalah java beans dengan properti dan method yang dimiliki
(getters,
setters
dan
constructors).
Javabeans
berhubungan
dengan
konsepkegunaan dari website yang kita buat yang akan digunakan oleh user.
Sebagai
contoh, jika web yang dikembangkan adalah tentang penjualan produk, maka
tentu akan terdapat beberapa java beans inti seperti : produk, customer, order,
invoice. Secara singkat dapat kita sebut bahwa bagian model merupakan inti
darilayer bisnis.
2) View
Bagian ini bisa dibangun dengan teknologi JSP. Bagian ini yang akan memberikan
tampilan kepada user, dari data yang didapatkan dari lapisan model.Jadi JSP
digunakan disini hanya untuk menampilkan data saja. Bagian ini bisajuga disebut
presentation layer. Selain JSP bisa juga dengan menggunakan JSF
3) Controller
Bagian ini digunakan untuk menerima setiap request dan memformulasikan sutau
response untuk request tersebut. Ini bisa dilakukandengan teknologi servlet, yang
bisa juga diimplementasikan dengan JSP atau JSF.Arsitektur Model-ViewController adalah sebuah pola yang terbuktimembangun proyek secara lebih
efektif. Hal itu dilakukan dengan memilahkomponen antara Model, View dan
Controller pada bagian-bagian dalam proyek.
2.12.3. DAO
Data access object atau lebih terkenal singkatannya yaitu DAO merupakandesign
pattern yang biasa digunakan oleh seorang java developer dalammembangun sebuah
sistem berbasis database. DAO merupakan sebuah konsepdimana digunakan untuk
menangani kasus yang terjadi dalam bisnis logic, ataulebih gampangnya proses yang
berhubungan dengan manipulasi data dalamdatabase. DAO merupakan pola membangun
sebuah bisnis logic secaraterstruktur sesuai dengan entitas yang terdapat pada database.
http://digilib.mercubuana.ac.id/
33
2.12.4. ORACLE 11G
Database Oracle adalah Database relasional yang terdiri dari kumpulan data dalam
suatu sistem manajemen Database RDBMS((Greenberg et al. 2010). Perusahaan Software
Oracle memasarkan jenis Database ini untuk bermacam-macam aplikasi yang bisa berjalan
pada banyak jenis dan merk perangkat keras komputer (platform). Database Oracle ini
pertama kali dikembangkan oleh Larry Ellison, Bob Miner dan Ed Oates lewat perusahaan
konsultasinya bernama Software Development Laboratories (SDL) pada tahun 1977. Pada
tahun 1983, perusahaan ini berubah nama menjadi Oracle Corporation sampai
sekarang.(oracle n.d.)
2.13. Metode pengujian Black Box
Metode
Black
Box
merupakan
strategi
testing
dimana
hanya
memperhatikan/memfokuskan kepada faktor fungsional dan spesifikasi perangakat lunak.
Berbeda dengan metode white box, black box testing tidak membutuhkan pengetahuan
mengenai alur internal (internal path), struktur atau informasi dari softwareunder test
(SUT). Pengujian black box berusaha menemukan kesalahan dalam kategori diantarana:
1)
Fungsi-fungsi yang salah atau hilang
2)
Kesalahan interface
3)
Kesalahan dalam infrastruktur
4)
Kesalahan peforma
5) Kesalahan inisialisasi dan terminasi.
http://digilib.mercubuana.ac.id/
Download