BAB 2 LANDASAN TEORI 2.1 Sistem Informasi Pencapaian sebuah perusahaan dalam meningkatkan produktivitas memiliki tantangan dalam dunia bisnis, tidak hanya kemampuan untuk membuat bisnis semakin besar namun dibalik itu semua perusahaan akan diuji untuk dapat memiliki ketepatan, kedisiplinan serta efisiensi. Dalam mencapai itu semua, maka perusahaan membutuhkan suatu sistem yang terkomputerisasi untuk dapat memenuhi kebutuhan informasi perusahaan dan membantu untuk melakukan berbagai produktivitas dalam perusahaan. Sistem Secara etimologi, kata sistem berasal dari bahasa Latin yaitu systēma yang berarti kumpulan atau kesatuan dari komponen atau elemen. Ini juga bisa berarti sebagai komposisi dari beberapa elemen yang bekerja secara bersama untuk mencapai suatu tujuan. Istilah sistem seringkali dipergunakan untuk memberikan gambaran suatu set entitas yang saling berinteraksi dalam bekerja untuk menuju suatu objektivitas yang telah ditetapkan. Menurut Satzinger et al. (2010:6). Systems & Analysis Design in a Changing World. Sistem merupakan suatu kumpulan komponen yang saling berhubungan yang memiliki fungsi bersama untuk mencapai suatu hasil tertentu. Menurut Ulric J. Gelinas et al. (2008:14). Business Processes & Information Technology. Sistem adalah suatu set elemen yang saling bergantung yang secara bersama-sama bekerja untuk menyelesaikan suatu tujuan yang spesifik. Sebuah sistem harus memiliki empat komponen yaitu organisasi, hubungan yang saling berkaitan, integrasi dan objektifitas yang terpusat. Menurut O’Brien et al. (2011:26). Management Information System. sistem memiliki 3 fungsi dasar yaitu: 1. Masukan (Input) Terlibat didalamnya fungsi untuk menangkap dan perakitan elemen yang memasuki sistem untuk diproses. 2. Pengolahan (Processing) Terlibat didalamnya proses transformasi yang mengubah input menjadi output. 9
10 3. Keluaran (Output) Terlibat didalamnya suatu fungsi untuk mentransfer elemen yang telah diproduksi oleh proses transformasi ke tujuan akhir mereka. Berdasarkan pandangan beberapa ahli tersebut, dapat disimpulkan bahwa sistem adalah suatu kumpulan komponen yang memberikan masukkan atau input yang melakukan proses secara bersama-sama dan saling berinteraksi yang menghasilkan suatu output untuk tujuan yang telah ditetapkan guna memenuhi suatu kebutuhan. Informasi Dalam keperluannya bagi suatu organisasi, informasi dengan jumlah dan mutu yang memadai tidak dapat tercipta dengan sendirinya. Kontribusi informasi pada efektivitas organisasi terletak pada suatu kenyataan bahwa dari informasi yang tersedia dapat memberikan kemungkinan hidup, berkembang dan memperlancar kegiatan organisasi baik pada tingkat operasional maupun pada tingkat pengambilan keputusan. Pengertian infromasi sendiri menurut Rainer et al. (2014:14). Introduction to Information System. Informasi mengacu pada data yang telah terorganisir sehingga memiliki makna dan nilai kepada penerima. Menurut Ulric J. Gelinas et al. (2008:27). Business Processes & Information Technology. Informasi dalam kaitannya yang digunakan didalam suatu organisasi adalah data yang disajikan dalam bentuk yang berguna dalam kegiatan pengambilan keputusan. Informasi memiliki nilai untuk pembuat keputusan karena mengurangi ketidakpastian dan meningkatkan pengetahuan tentang daerah tertentu yang menjadi perhatian. Data adalah fakta atau angka dalam bentuk mentah. Data mewakili pengukuran atau pengamatan objek dan peristiwa. Untuk menjadi berguna untuk pembuat keputusan, data harus diubah menjadi informasi. Berdasarkan pengertian dari beberapa ahli tersebut, dapat disimpulkan bahwa informasi adalah suatu data yang disajikan secara terorganisir sehingga kedalam bentuk yang lebih berguna bagi penerimanya. Dalam suatu organisasi, informasi merupakan data yang diolah sehingga memberikan nilai untuk pengambilan keputusan.
11 Sistem Informasi Suatu organisasi untuk dapat selalu bertahan dan berkembang sehingga meningkatkan produktivitasnya harus dapat memanfaatkan semua kekuatan dan peluang yang tersedia. Selain itu, organisasi juga harus dapat mampu meminimalisir setiap kelemahan dan hambatan yang dapat terjadi dalam setiap perjalanan bisnis yang dilaksanakannya. Semua itu dapat dilakukan apabila manajemen mampu melakukan pengambilan keputusan yang berdasarkan pada informasi yang berkualitas. Suatu informasi yang berkualitas tidak lahir dengan sendirinya, akan tetapi terbentuk dari suatu sistem yang dirancang dengan baik. Menurut Rainer et al. (2014:30) sistem Informasi memiliki fungsi untuk mengumpulkan
(collects),
mengolah
(processes),
menyimpan
(stores),
menganalisis (analyzes) dan menyebarkan (disseminates) suatu informasi untuk suatu tujuan yang spesifik. Menurut O’Brien et al. (2011:4) suatu sistem informasi dapat berupa kombinasi dari komponen-komponen yang bekerja dan saling berinteraksi untuk menyimpan, mengambil, mengubah, dan menyebarkan informasi dalam sebuah organisasi. Berdasarkan pengertian para ahli tersebut, dapat disimpulkan bahwa suatu sistem informasi merupakan suatu kombinasi yang dibentuk dari komponen-komponen yang bekerja secara bersama-sama dalam mengumpulkan (collects), mengolah (processes), menyimpan (stores), menganalisis (analyzes) dan menyebarkan (disseminates) suatu informasi untuk menghasilkan suatu hasil untuk mencapai suatu tujuan yang telah ditetapkan. Komponen Sistem Informasi Secara luas suatu sistem informasi dalam prosesnya terdiri dari berbagai komponen dengan berbagai prosedur dan orang-orang yang bertanggung jawab untuk menangkap, menggerakan, mengatur dan mendistribusi informasi. Sangat penting bahwa komponen sistem informasi tersebut bekerja sama dengan baik dan juga terhubung dengan satu sama lain. Komponen-komponen yang membentuk suatu sistem informasi menurut O’Brien et al. (2011:31) terdiri dari 5 yaitu:
12 1. Sumber daya manusia (Human Resource) Sumber daya manusia adalah komponen penting untuk keberhasilan operasi dari semua sistem informasi. Sumber daya orang ini termasuk pengguna akhir (end user) dan Sistem Infromasi (SI) spesialis.
Pengguna akhir (End user) Pengguna akhir (juga disebut pengguna atau klien) adalah orang-orang yang menggunakan sistem informasi atau informasi yang dihasilkan. Mereka bisa sebagai pelanggan, penjual, insinyur, pegawai, akuntan, atau manajer dan ditemukan di semua tingkat organisasi. Kebanyakan pengguna akhir dalam bisnis adalah pekerja pengetahuan, yaitu, orangorang yang menghabiskan sebagian besar waktu mereka berkomunikasi dan berkolaborasi dalam tim dan kelompok kerja dan menciptakan, menggunakan, dan mendistribusikan informasi.
Sistem Informasi (SI) spesialis SI
spesialis
adalah
orang-orang
yang
mengembangkan
dan
mengoperasikan sistem informasi. Mereka termasuk sistem analis, pengembang perangkat lunak, operator sistem, manajerial lainnya, dan personil administrasi SI. Secara singkat, sistem analis merancang sistem informasi berdasarkan kebutuhan informasi dari pengguna akhir, pengembang perangkat lunak membuat program komputer berdasarkan spesifikasi sistem analis, dan operator sistem membantu untuk memantau dan mengoperasikan sistem komputer dan jaringan dalam menjalankan sistem informasi. 2. Sumber daya perangkat keras (Hardware Resource) Konsep sumber daya perangkat keras termasuk semua perangkat fisik dan bahan yang digunakan dalam pengolahan informasi. Secara khusus, itu termasuk tidak hanya mesin, seperti komputer dan peralatan lainnya, tetapi juga semua media data, yaitu, benda nyata dimana data dicatat, dari lembaran kertas untuk disk magnetik atau optik. 3. Sumber daya piranti lunak (Software Resource) Konsep sumber daya perangkat lunak mencakup semua set instruksi pemrosesan informasi. Konsep generik perangkat lunak ini tidak hanya mencakup set instruksi pengoperasian program yang secara langsung mengendalikan perangkat keras komputer, tetapi juga set instruksi
13 pemrosesan informasi yang disebut prosedur yang memerlukan orang sebagai pengguna. 4. Sumber daya data (Data Resource) Data lebih dari bahan baku sistem informasi. Data dapat mengambil banyak bentuk, termasuk didalamnya angka, huruf, teks, gambar, grafis, suara, video dan karakter lain yang menggambarkan transaksi bisnis, kejadian dan entitas lain. 5. Sumber daya jaringan (Network Resource) Teknologi telekomunikasi dan jaringan sangat penting untuk semua jenis organisasi dan sistem informasi berbasis komputer. Jaringan telekomunikasi terdiri dari komputer, prosesor komunikasi, dan perangkat lain yang saling saling berhubungan dalam media komunikasi dan dikendalikan oleh perangkat lunak komunikasi. Konsep sumber daya jaringan menekankan bahwa teknologi komunikasi dan jaringan merupakan komponen sumber daya dasar dari semua sistem informasi. Sumber jaringan meliputi:
Media Komunikasi. Contohnya kabel twisted-pair, coaxial, kabel fiberoptik, wireless, selular, maupun satelit.
Jaringan infrastruktur. Contohnya prosesor komunikasi, seperti modem dan prosesor interjaringan, dan perangkat lunak kontrol komunikasi, seperti sistem operasi jaringan dan internet browser.
Peran dan Fungsi Sistem Informasi Dalam Organisasi Sistem informasi dalam suatu organisasi menerapkan setiap sumber daya yang tersedia untuk digunakan dengan cara saling berinteraksi dengan tujuan untuk memberikan kontribusi bagi kegiatan organisasi dengan suatu prosedur yang telah ditetapkan. Menurut Ulric J. Gelinas et al. (2008:16) sistem Informasi dalam suatu organisasi adalah suatu sistem buatan manusia yang terdiri dari serangkaian komponen terpadu berbasis komputer dan manual yang memiliki peran untuk memfasilitasi fungsi operasional organisasi dan untuk mendukung manajemen pengambilan keputusan dengan memberikan informasi dapat digunakan untuk merencanakan dan mengendalikan kegiatan organisasi.
14 Dengan berbagai macam dan fungsi dari suatu sistem informasi yang tersedia dan dapat digunakan untuk suatu organisasi, pada dasarnya menurut O’Brien et al. (2011:8) terdapat 3 peran utama yang vital yang digunakan untuk suatu organisasi ialah:
Mendukung proses bisnis dan operasi suatu organisasi
Mendukung dalam pengambilan keputusan bagi manajemen
Mendukung strategi untuk keunggulan kompetitif Berdasarkan peran yang dimiliki oleh suatu sistem informasi dalam suatu
organisasi, fungsi sistem informasi bagi suatu organisasi menurut O’Brien et al. (2011:24) diantaranya adalah:
Sistem informasi memiliki posisi dalam wilayah fungsional utama dari bisnis yang sama pentingnya untuk kesuksesan bisnis sebagai fungsi akuntansi, keuangan, manajemen operasi, pemasaran, dan manajemen sumber daya manusia.
Sistem informasi merupakan kontributor penting untuk efisiensi operasional, produktivitas karyawan, dan layanan serta kepuasan pelanggan.
Sistem informasi sebuah sumber yang memiliki nilai yang diakui dalam organisasi.
Sistem informasi sebagai sumber utama informasi dan dukungan yang diperlukan untuk mempromosikan pengambilan keputusan yang efektif oleh para manajer dan profesional bisnis.
Sistem informasi sebagai unsur yang sangat penting dalam mengembangkan produk dan jasa yang memberikan organisasi keuntungan strategis di pasar global yang kompetitif.
Sistem informasi merupakan komponen kunci dari sumber daya, infrastruktur, dan kemampuan dari suatu organisasi.
Sistem informasi memiliki fungsi sebagai sumber daya strategis.
2.2 Analisis dan Perancangan Berorientasi Objek Dalam
pengembangan
suatu
sistem
informasi
dapat
menggunakan
pendekatan berorientasi objek, yaitu memandang sistem informasi sebagai koleksi objek-objek yang berinteraksi yang bekerja sama untuk menyelesaikan tugas-tugas. Secara konseptual, tidak ada proses atau program, tidak ada entitas data atau file.
15 Sebuah objek adalah hal yang dalam sistem komputer yang mampu merespon pesan atau informasi. Pendekatan berorientasi objek dimulai dengan perkembangan bahasa pemrograman Simula di Norwegia pada tahun 1960. Simula digunakan untuk membuat simulasi komputer yang melibatkan "objek". Pada 1970-an, bahasa Smalltalk dikembangkan untuk memecahkan masalah dengan menciptakan antarmuka pengguna grafis (GUI) yang melibatkan "objek" seperti menu pull-down, tombol, kotak cek, dan kotak dialog. Pendekatan berorientasi objek menghasilkan beberapa manfaat utama, di antaranya kealamian dan dapat digunakan kembali. Pendekatan ini alami atau intuitif terhadap orang, karena mereka cenderung berpikir tentang dunia dalam hal objek nyata. Pendekatan berorientasi objek melibatkan kelas objek dan dalam banyak sistem yaitu dalam objek kelas yang sama, kelas-kelas ini dapat digunakan berulangulang setiap kali mereka dibutuhkan. Sebagai contoh, hampir semua sistem menggunakan menu, kotak dialog, jendela, dan tombol, tetapi banyak sistem dalam perusahaan yang sama juga menggunakan kelas pelanggan, produk, dan faktur yang dapat digunakan kembali. Unified Process (UP) Unified Process (UP) merupakan suatu metodologi pengembangan sistem berorientasi obyek yang ditawarkan oleh IBM Rational Software, berasal oleh tiga pendukung Unified Modeling Language (UML) yaitu Grady Booch, James Rumbaugh, dan Ivar Jacobson. UP adalah upaya mereka untuk mendefinisikan metodologi
lengkap
yang
menyediakan
beberapa
fitur
unik
dengan
menggunakan model sistem UML. UP saat ini secara luas diakui sebagai metodologi pengembangan sistem standar untuk pengembangan berorientasi obyek. UP dijelaskan oleh Satzinger et al. (2010:62) dirancang untuk memperkuat enam "praktik terbaik" pengembangan sistem yang umum digunakan pada sebagian besar metodologi pengembangan sistem yaitu: 1. Pengembangan iteratif (Develop iteratively) 2. Mendefiniskan dan mengelola persyaratan sistem (Define and manage system requirements) 3. Penggunaan arsitektur komponen (Use component architectures)
16 4. Membuat model visual (Create visual model) 5. Verifikasi kualitas (Verify quality) 6. Kontrol terhadap perubahan (Control changes) Dalam UP terdapat 9 discipline dengan 4 phase siklus seperti yang digambarkan pada gambar 2.1 dibawah:
Gambar 2.1 Unified Process Sumber : Satzinger et al. (2010:62)
Dari 4 (empat) phase UP tersebut memiliki objektifitas yang dapat dijelaskan pada table berikut:
Tabel 2.1 Unified Process Phase Objective UP Phase Inception
Objective Mengembangkan visi perkiraan dari sistem, membuat kasus
bisnis,
menentukan
ruang
lingkup,
dan
menghasilkan perkiraan kasar biaya dan jadwal. Elaboration
Mendefinisikan visi, mengidentifikasi dan menjelaskan semua persyaratan, menyelesaikan lingkup, desain dan mengimplementasikan
arsitektur
inti
dan
fungsi,
mengatasi risiko tinggi, dan menghasilkan perkiraan yang realistis untuk biaya dan jadwal.
17 Construction
Iteratif menerapkan sisa-risiko yang lebih rendah, diprediksi, dan elemen lebih mudah dan mempersiapkan untuk penyebaran.
Transition
Menyelesaikan tes beta dan penyebaran sehingga pengguna memiliki sistem kerja dan siap untuk mendapatkan keuntungan seperti yang diharapkan. Sumber : Satzinger et al. (2010:668)
Object-Oriented Analysis (OOA) Menurut Satzinger et al. (2010:60) analisis berorientasi objek atau Object Oriented Analysis (OOA) mendefinisikan semua jenis objek yang melakukan pekerjaan dalam sistem dan menunjukkan interaksi pengguna yang disebut juga sebagai case yang diperlukan untuk menyelesaikan tugas.
Gambar 2.2 Activities of the Requirement Discipline Sumber : Satzinger et al. (2010:119)
Proses analisis mendefinisikan secara detail apa yang perlu sistem informasi capai untuk menyediakan manfaat yang diinginkan. Banyak ide-ide alternatif harus diajukan dan solusi desain yang terbaik harus dipilih dari antara mereka. Kemudian, selama desain sistem, alternatif yang dipilih dirancang secara rinci. Menurut Satzinger et al. (2010:119) seperti yang ditunjukkan pada
18 gambar 2.2 terdapat 6 (enam) aktifitas yang harus diselesaikan selama analisis yaitu: 1. Pengumpulan Informasi (Gather information) Proses analisis melibatkan pengumpulan sejumlah besar informasi. Sistem analis mendapatkan beberapa informasi dari orang-orang yang akan menggunakan sistem, baik melalui wawancara, observasi atau dari dokumen pendukung lainnya. Dokumentasi dari sistem sudah berjalan juga perlu dipelajari dengan hati-hati. Dari dokumentasi sistem yang telah berjalan, analis dapat memperoleh informasi tambahan dengan melihat apa yang perusahaan telah lakukan ketika dihadapkan dengan kebutuhan bisnis serupa. Singkatnya, analis perlu berbicara dengan hampir semua orang yang akan menggunakan sistem baru atau telah menggunakan sistem yang sama, dan mereka harus membaca hampir segala sesuatu yang tersedia tentang sistem yang ada. 2. Mendefinisikan kebutuhan sistem (Define system requirement) Langkah
berikutnya
setelah
pengumpulan
informasi
ialah
mendokumentasikan seluruh informasi tersebut. Beberapa informasi ini menjelaskan persyaratan teknis. Mendefinisikan persyaratan fungsional tidak hanya soal menuliskan fakta dan angka. Sebaliknya, berbagai jenis model yang dibuat untuk membantu merekam dan mengkomunikasikan apa yang dibutuhkan. Proses pemodelan adalah proses pembelajaran bagi seorang analis. 3. Kebutuhan prioritas (Prioritize requirement) Setelah persyaratan sistem dipahami dengan baik dan model rinci persyaratan selesai, penting untuk menetapkan persyaratan fungsional dan teknis yang paling penting untuk sistem. Saat pengembangan suatu sistem, terkadang pengguna menyarankan fungsi sistem tambahan yang diinginkan tetapi memiliki fungsi yang penting. Dengan demikian analis harus dapat meentukan prioritas kebutuhan yang harus terlebih didahulukan untuk di selesaikan. Kondisi ini diperlukan karena sumber daya yang terbatas dan bisa terjadinya perubahan terhadap ruang lingkup pekerjaan. 4. Prototipe untuk uji kelayakan dan penelusuran (Prototype for feasibility and discovery)
19 Menciptakan prototipe bagian dari sistem baru dapat menjadi sangat berharga selama analisis sistem. Tujuan utama dari pembuatan suatu prototipe selama analisis adalah untuk lebih memahami kebutuhan pengguna. Prototipe tidak dibangun dengan maksud berfungsi secara penuh tetapi untuk memeriksa kelayakan dengan pendekatan tertentu untuk kebutuhan bisnis. Dalam banyak kasus, pengguna mencoba untuk meningkatkan proses bisnis mereka atau merampingkan prosedur. Jadi, untuk memudahkan penyelidikan proses bisnis baru, analis dapat membangun prototipe. Menggunakan layar sampel atau laporan, analis berdiskusi dengan pengguna bagaimana sistem baru dapat mendukung proses baru, dan mereka dapat menunjukkan prosedur bisnis baru bagi sistem baru. 5. Membuat dan mengevaluasi alternatif (Generate and evaluate alternative) Ada banyak alternatif untuk desain akhir dan implementasi sistem. Jadi, sangat penting untuk menentukan secara hati-hati dan kemudian mengevaluasi semua kemungkinan. Ketika persyaratan diprioritaskan, analis dapat menghasilkan beberapa alternatif dengan menghilangkan beberapa persyaratan yang kurang penting. Selain itu, teknologi juga menimbulkan beberapa alternatif untuk sistem. Setiap alternative harus dapat dijelaskan atau dimodelkan pada tinggi tingkat. Setiap alternatif juga memiliki biaya sendiri, manfaat, dan karakteristik lain yang harus diukur dan dievaluasi. 6. Review rekomendasi dengan manajemen (Review recommendation with management) Meninjau rekomendasi dengan manajemen biasanya dilakukan ketika semua kegiatan analisis telah atau hampir lengkap. Manajemen harus terus dapat menerima informasi tentang kemajuan analisis melalui pelaporan proyek secara reguler. Hasil dan pilihan rekomendasi solusi harus mendapatkan keputusan dari manajemen. Masing-masing dari enam kegiatan analisis melibatkan banyak pemangku kepentingan (stakeholder) dan bertugas untuk menjawab satu atau lebih pertanyaan kunci. Kegiatan dan pertanyaan kunci dari setiap kegiatan analisis tersebut dirangkum dalam table 2.2 berikut:
20 Tabel 2.2 Pertanyaan Kunci Aktifitas Analisis No. 1.
Kegiatan Analisis
Pertanyaan kunci
Pengumpulan Informasi
Apakah
kita
(Gather information)
informasi
memiliki
dan
semua
wawasan
yang
diperlukan untuk mendefinisikan apa yang sistem harus lakukan? 2.
Mendefinisikan kebutuhan
Apa yang kita butuhkan untuk
sistem
membangun sistem (secara detail)?
(Define system requirement) 3.
Kebutuhan prioritas
Apa yang paling penting dari setiap
(Prioritize requirement)
kebutuhan
untuk
sistem
yang
dikembangkan? 4.
Prototipe untuk uji kelayakan
Apakah kita dapat membuktikan
dan penelusuran
bahwa teknologi yang diusulkan
(Prototype for feasibility and
dapat
discovery)
sedang kita kembangkan?
mendukung
sistem
yang
Apakah kita membangun beberapa prototipe
untuk
memastikan
pengguna memahami potensi apa yang dapat dilakukan dari sistem baru? 5.
Membuat dan mengevaluasi
Apakah
pilihan
alternatif
alternatif
terbaik untuk membuat sistem?
yang
(Generate and evaluate alternative) 6.
Review rekomendasi dengan
Haruskah
kita
manajemen (Review
tahapan design dan implementasi
recommendation with
dari sitem yang diajukan?
management) Sumber : Satzinger et al. (2010:122)
melanjutkan
ke
21 Object-Oriented Design (OOD) Menurut Satzinger et al. (2010:60) design berorientasi objek atau Object Oriented Design (OOD) mendefinisikan semua jenis tambahan objek yang diperlukan untuk berkomunikasi dengan orang-orang dan perangkat dalam sistem, menunjukkan bagaimana objek berinteraksi untuk menyelesaikan tugastugas, dan memurnikan definisi dari setiap jenis objek sehingga dapat diimplementasikan dengan bahasa atau lingkungan tertentu.
Gambar 2.3 Activities of the Design Discipline Sumber : Satzinger et al. (2010:330)
Sistem desain adalah upaya pembentukan model dari hasil analisis sistem. Sebagai detail desain yang dibuat diputuskan dan didokumentasikan dengan membangun model. Seperti yang ditunjukkan sebelumnya, model mungkin cukup informal, tetapi mereka adalah esensi dari desain. Sistem desain melibatkan dan menentukan secara rinci bagaimana sistem akan bekerja menggunakan teknologi tertentu. Beberapa rincian desain akan telah dikembangkan selama analisis sistem ketika alternatif digambarkan. Terkadang sistem kerja desain dilakukan secara paralel dengan kegiatan analisis. Selain itu, setiap komponen dari solusi akhir sangat dipengaruhi oleh desain komponen lainnya. Menurut Satzinger et al. (2010:330) seperti yang ditunjukkan pada gambar 2.3 terdapat 7 (enam) aktifitas yang harus diselesaikan selama analisis yaitu:
22 1. Perancangan dan integrasi jaringan (Design and integrate network) Pada aktifitas ini merupakan proses perancangan jaringan yang dibutuhkan sistem baru. Hal ini diperlukan karena untuk pengembangan sistem baru mungkin memerlukan rancangan sistem yang berbeda dari sistem yang telah berjalan atau mungkin tidak tersedianya jaringan. Kondisi atau kendala teknis yang perlu diperhatikan ketika membuat sistem beroperasi melalui jaringan, adalah keandalan, keamanan, throughput, dan sinkronisasi. 2. Perancangan arsitektur aplikasi dan perangkat lunak (Design the application architecture and software) Dalam kegiatan ini dilakukannya penetapan keputusan tentang struktur dan konfigurasi sistem baru dan desain perangkat lunak komputer yang sebenarnya. Rancangan arsitektur dibuat untuk menghubungkan semua komponen sistem yang saling bergantung satu sama lain termasuk dengan konfigurasi yang diinginkan dari arsitektur aplikasi. Merancang arsitektur aplikasi melibatkan menentukan secara rinci bagaimana semua kegiatan sistem akan benar-benar dilakukan beserta dengan alternative-alternatif yang bisa dikembangkan. Setelah alternatif desain arsitektur tertentu yang dipilih, model pemrosesan komputer rinci dapat dibangun. 3. Perancangan antarmuka pengguna (Design the user interface) Sebuah aspek penting dari sistem informasi adalah kualitas antarmuka pengguna. Desain user interface mendefinisikan bagaimana pengguna akan berinteraksi dengan sistem. Kemampuan dan kebutuhan pengguna sangat berbeda; setiap pengguna berinteraksi dengan sistem dengan cara yang berbeda. Selain itu, pendekatan yang berbeda untuk antarmuka mungkin diperlukan untuk bagian yang berbeda dari sistem. 4. Perancangan antarmuka sistem (Design the system interface) Sebuah sistem informasi baru akan mempengaruhi banyak sistem informasi lainnya. Kadang-kadang satu sistem menyediakan informasi yang kemudian digunakan oleh sistem lain, dan kadang-kadang sistem pertukaran informasi terjadi secara terus menerus saat mereka berjalan. Komponen yang memungkinkan sistem untuk berbagi informasi adalah sistem antarmuka, dan setiap sistem antarmuka perlu dirancang secara detail. Dari awal desain sistem, analis harus memastikan bahwa semua sistem bekerja sama dengan baik.
23 5. Perancangan dan integrasi database (Design and integrate database) Merancang database adalah salah satu kegiatan kunci dari aktifitas perancangan sistem. Model implementasi database dibuat berdasarkan model data yang dibuat selama analisis sistem. Keputusan yang harus ditentukan pada saat perancangan salah satunya adalah pilihan penggunaan database terpusat atau terdistribusi. Sifat internal database juga harus dirancang, termasuk hal-hal seperti table, atribut, dan link. Analis harus mempertimbangkan banyak masalah teknis yang penting saat merancang database. 6. Prototipe untuk detail perancangan (Prototype for design detail) Karena banyak keputusan desain yang dibuat pada awal proyek bersifat prediktif, prototipe merupakan alat penting untuk memastikan bahwa keputusan yang dibuat adalah yang terbaik dan dapat mengurangi risiko. Ide dasar dari prototipe adalah untuk menguji beberapa aspek baru atau berisiko dari sistem baru sebelum melakukan sumber utama untuk konfigurasi tertentu dari solusi baru. Bahkan, prototipe yang digunakan tidak hanya untuk memverifikasi keputusan desain, tetapi mengkonfirmasi bahwa pendekatan tertentu akan memenuhi kebutuhan bisnis pengguna. Prototipe dapat digunakan untuk mengkonfirmasi pilihan desain tentang antarmuka pengguna, database, arsitektur jaringan, kontrol, atau lingkungan bahkan pemrograman yang digunakan. 7. Perancangan dan integrasi kontrol sistem (Design and integrate the system control) Kegiatan akhir dari perancangan
adalah memastikan bahwa sistem
memiliki perlindungan yang memadai untuk melindungi aset organisasi. Pengamanan ini disebut sebagai sistem kontrol. Menghindari dari potensi yang dapat menyebabkan kerusakan parah pada sistem dan data, merancang sistem kontrol merupakan kegiatan penting. Semua kontrol ini perlu dirancang ke dalam sistem, berdasarkan teknologi yang ada. Spesialis sering dibawa untuk bekerja pada beberapa kontrol, dan semua kontrol sistem perlu diuji secara menyeluruh. Masing-masing dari setiap kegiatan perancangan sistem harus mampu untuk menjawab satu atau lebih pertanyaan kunci. Kegiatan dan pertanyaan
24 kunci dari setiap kegiatan perancangan sistem tersebut dirangkum dalam table 2.3 berikut: Tabel 2.3 Pertanyaan Kunci Aktifitas Perancangan No. 1.
2.
3.
4.
Kegiatan Analisis
Pertanyaan kunci
Perancangan dan integrasi
Apakah
kita
jaringan
secara detail setiap komponen sistem
(Design and integrate network)
dapat berkomunikasi?
Perancangan arsitektur aplikasi
Apakah
dan perangkat lunak
secara detail bagaimana aktifitas sistem
(Design the application
dapat digunakan baik antara pengguna
architecture and software)
dan komputer?
Perancangan antarmuka
Apakah
pengguna
secara detail bagaimana user dapat
(Design the user interface)
berinteraksi dengan sistem?
Perancangan antarmuka sistem
Apakah
(Design the system interface)
secara detail bagaimana sistem dapat
kita
kita
kita
sudah
sudah
sudah
sudah
menspesifikasikan
menspesifikasikan
menspesifikasikan
menspesifikasikan
bekerja dengan sistem lain baik didalam maupun diluar organisasi 5.
Perancangan dan integrasi
Apakah
kita
sudah
menspesifikasikan
database
secara detail bagaimana dan dimana
(Design and integrate database)
sistem akan menyimpan seluruh informasi yang dibutuhkan oleh organisasi?
6.
Prototipe untuk detail
Apakah kita sudah membuat prototype
perancangan
untuk
memastikan
(Prototype for design detail)
detail
perancangan
keputusan telah
seluruh
sepenuhnya
dimengerti? 7.
Perancangan dan integrasi
Apakah
kita
sudah
kontrol sistem
secara detail bagaimana kita bisa yakin
(Design and integrate the system
bahwa sistem dapat beroperasi secara
control)
benar dan data yang digunakan oleh sistem sudah aman? Sumber : Satzinger et al. (2010:331)
menspesifikasikan
25 Unified Modelling Language (UML) UML merupakan singkatan Unified Modelling Language yang menurut Satzinger et al. (2010: 61), merupakan standar model dan notasi yang dikembangkan dan digunakan untuk menggambarkan suatu pengembangan sistem yang menggunakan konsep berorientasi objek. UML dikembangkan pertama kali di tahun 1990an oleh James Rumbaugh, Grady Booch dan Ivar Jacobson. Model dalam metode pengembangan sistem adalah representasi dari input, output, proses, data, objek, interaksi antar objek, lokasi, jaringan, dan peralatan. Analisis Sistem Informasi Activity Diagram Menurut Satzinger et al. (2010:142) activity diagram merupakan sebuah diagram alur kerja yang menggambarkan berbagai kegiatan pengguna (atau sistem), orang yang melakukan setiap kegiatan, dan aliran sekuensial kegiatan tersebut. Activity diagram adalah salah satu diagram Unified Modeling Language (UML) yang terkait dengan pendekatan berorientasi objek, tetapi dapat digunakan dengan pendekatan lain.
Gambar 2.4 Activity Diagram Sumber : Satzinger et al. (2010:143)
26 Event Table Menurut Satzinger et al. (2010:168) event table merupakan table yang meliputi baris dan kolom, yang mewakili event atau peristiwa berikut rincian masing-masing. Setiap baris dalam event table mencatat informasi tentang satu peristiwa dan kasus penggunaannya. Setiap kolom dalam tabel merupakan bagian kunci dari informasi tentang peristiwa dan kasus penggunaan.
Gambar 2.5 Event Table Sumber : Satzinger et al. (2010:169)
Komponen dari sebuah event table yaitu: a. Event: Suatu peristiwa yang menjadi penyebab bagi sistem untuk melakukan sesuatu. b. Trigger: Suatu pertanda atau sinyal yang mennginformasikan sistem bahwa suatu peristiwa telah terjadi, baik suatu data yang memerlukan pengolahan atau titik waktu. c. Source: Agen eksternal yang menyediakan data untuk sistem. d. Use case: Kegiatan yang dilakukan sistem ketika peristiwa (event) terjadi. e. Response: Output yang diproduksi oleh system dan memiliki tujuan. f. Destination: Agen eksternal atau aktor yang menerima data dari sistem.
27 Use Case Diagram Menurut Satzinger et al. (2010:242) use case diagram adalah diagram yang digunakan untuk menunjukkan berbagai peran pengguna dan bagaimana peran mereka menggunakan sistem. Tujuan dari use case diagram adalah untuk mengidentifikasi "kegunaan" atau menggunakan kasus pada sistem baru. Dengan kata lain, untuk mengidentifikasi bagaimana sistem akan digunakan. Use case diagram dapat diturunkan langsung dari dalam event table. Use case diagram adalah cara yang nyaman untuk mendokumentasikan kegiatan sistem. Pada suatu kondisi diagram komprehensif digunakan untuk mengidentifikasi semua kasus penggunaan untuk seluruh sistem atau di kondisi lain cukup satu set penggunaan kecil diagram kasus.
Gambar 2.6 Use Case Diagram Sumber : Satzinger et al. (2010:243)
Use Case Description Daftar use case dan event table memberikan gambaran dari semua penggunaan sistem. Informasi rinci tentang setiap use case dijelaskan dengan use case description. Sebuah use case description menjelaskan rincian pengolahan untuk suatu use case yang sudah dijelaskan pada bagian sebelumnya. Berdasarkan kebutuhan dari seorang analis, detail use case description dapat ditulis pada tiga tingkat yaitu: 1. Brief Description
28 Sebuah brief description dapat digunakan untuk use case yang sangat sederhana, terutama ketika sistem yang akan dikembangkan juga kecil atau aplikasi dapat dipahami dengan baik. Sebuah use case sederhana biasanya akan memiliki skenario tunggal dan sangat sedikit.
Gambar 2.7 Brief Description Sumber : Satzinger et al. (2010:172)
2. Intermediate Description Intermediate
description
memperluas
penjelasan
singkat
dengan
menyertakan aliran kegiatan internal untuk suatu use case. Jika ada beberapa skenario, masing-masing aliran kegiatan digambarkan secara individual. Kondisi pengecualian dapat didokumentasikan jika mereka dibutuhkan. Dalam banyak hal, gambaran ini adalah versi terstruktur, yang dapat mencakup urutan, keputusan, dan blok pengulangan.
Gambar 2.8 Intermediate Description Sumber : Satzinger et al. (2010:172)
3. Fully Developed Description Fully Developed Description adalah metode yang paling formal untuk mendokumentasikan use case. Pada tingkat ini menjelaskan lebih banyak komponen
dan
merupakan
metode
yang
paling
baik
untuk
29 menggambarkan aliran kegiatan internal untuk suatu use case. Salah satu kesulitan utama untuk pengembang perangkat lunak adalah sulitnya pemahaman yang mendalam dari kebutuhan pengguna. Tapi melalui fully developed description meningkatkan kemungkinan bahwa proses bisnis dan cara sistem dapat lebih dipahami dengan baik.
Gambar 2.9 Fully Developed Description Sumber : Satzinger et al. (2010:173)
Domain Model Class Diagram Pendekatan berorientasi objek juga menekankan pemahaman hal yang terlibat dalam apa yang dilakukan oleh pengguna. Pendekatan ini menggunakan model class sebagai objek. Menurut Satzinger et al. (2010: 187), Domain Model Class Diagram merupakan suatu UML Class Diagram yang menggambarkan hal yang berkaitan dengan pekerjaan user yaitu mengenai problem domain classe, hubungan dan atributnya. Beberapa bagian dari Domain Model Class Diagram yaitu: 1. Object
30 Adalah nama atau entity dari setiap class yang terlibat. 2. Attribute Nilai yang ada pada dalam setiap class.
Gambar 2.10 Contoh Domain Class Symbol Sumber : Satzinger et al. (2010:187)
3. Methods/Behaviour Kegiatan atau event yang dilakukan oleh object. 4. Kunci Class Diagram a. General Class Symbol: Terdiri dari : name, attribute dan behavior. b. Method/Behaviour tidak ditampilkan dalam domain model class diagram. c. Garis penghubung antar class menunjukan association d. Multiplicity digambarkan di atas garis penghubung.
Gambar 2.11 Multiplicity of association Sumber : Satzinger et al. (2010:188)
31 5. Hierarchies Class Diagram a. Generalization/Specialization hierarchies Generalization/Specialization hierarchies didasarkan pada gagasan bahwa orang mengklasifikasikan hal dalam hal persamaan dan perbedaan. Generalization/Specialization hierarchies merupakan hierarki yang membentuk struktur pangkat dari classes, terdapat class sebagai superclass dan sebagai subclasses. Superclass dapat dinilai sebagai parent class, sementara subclass dapat dinilai sebagai child class. Generalization/Specialization hierarchies mengusung konsep
object-oriented
yang
disebut
inheritance,
yang
memungkinkan terjadinya pewarisan karakteristik dari superclass ke subclasses.
Gambar 2.12 Contoh Generalization/Specialization hierarchies Sumber : Satzinger et al. (2010:190)
b. Whole-Part hierarchies Merupakan bentuk hubungan classes berdasarkan class yang satu (part) sebagai pembentuk class yang lainnya (whole). Terdapat 2 (dua) jenis Whole-Part hierarchies: 1) Aggregation Merupakan hubungan di antara sebuah objek (whole) dan bagian pembentuk objek tersebut (part). Aggregation dilambangkan dengan notasi berbentuk diamond berwarna putih. 2) Composition
32 Merupakan hubungan diantara objek sebagai part tidak terpisahkan
dari
objek
sebagai
whole.
Composition
dilambangkan dengan notasi berbentuk diamond berwarna hitam.
Gambar 2.13 Contoh Whole-Part (Aggregation) hierarchies Sumber : Satzinger et al. (2010:191)
System Sequence Diagram Dalam pendekatan berorientasi objek, arus informasi dicapai melalui mengirim pesan baik ke dan dari aktor atau bolak-balik antara objek internal. Menurut Satzinger et al. (2010: 252) System Sequence Diagram (SSD) digunakan untuk menggambarkan aliran informasi ini ke dalam dan keluar dari sistem otomatis. Sehingga SSD mendokumentasikan input dan output dan mengidentifikasi interaksi antara aktor dan sistem.
Gambar 2.14 Contoh System Sequence Diagram (SSD) Sumber : Satzinger et al. (2010:253)
33 Perancangan Sistem Informasi Network Design Kegiatan pertama dalam daftar kegiatan desain adalah untuk merancang jaringan. Perencanaan jaringan dan desain adalah masalah penting yang harus ditangani di awal desain sistem multitier. Masalahmasalah desain kunci adalah sebagai berikut: •
Mengintegrasikan kebutuhan jaringan dari sistem baru dengan infrastruktur jaringan yang ada
•
Menggambarkan kegiatan pengolahan dan konektivitas jaringan di setiap lokasi sistem
•
Menggambarkan
protokol
komunikasi
dan
middleware
yang
menghubungkan lapisan •
Memastikan bahwa kapasitas jaringan yang memadai tersedia Dalam penggunaan suatu sistem infomasi berarti diperlukan suatu
perancangan jaringan computer yaitu seperangkat jalur transmisi, hardware khusus, dan protokol komunikasi yang memungkinkan komunikasi antar pengguna yang berbeda dan sistem komputer. Menurut Satzinger et al. (2010:335) Jaringan komputer dibagi menjadi 2 (dua) kelas tergantung pada jarak atau area yang mencakupnya yaitu: 1.
Local Area Network (LAN) Local Area Network (LAN) merupakan jaringan yang menghubungkan computer yang memiliki ciri area kurang dari satu kilometer dan menghubungkan komputer dalam satu gedung atau lantai.
2.
Wide Area Network (WAN) Istilah Wide Area Network (WAN) dapat menggambarkan jaringan apapun lebih dari satu kilometer, meskipun istilah tersebut biasanya berarti jarak yang lebih besar yang mencakup kota, negara, benua, atau seluruh dunia. Jaringan komputer menyediakan kemampuan komunikasi generik
antara sistem komputer dan pengguna. Kemampuan generik ini dapat mendukung berbagai layanan, termasuk komunikasi langsung (seperti layanan telepon dan video conferencing), komunikasi berbasis pesan (seperti e-mail), dan berbagi sumber daya (seperti akses ke dokumen
34 elektronik, program aplikasi, dan database). Sebuah jaringan secara bersamaan dapat mendukung berbagai layanan dengan hardware yang sesuai dan kapasitas transmisi yang memadai. Dalam jaringan, cara suatu jaringan untuk berkomunikasi dapat dibagi 3 yaitu: 1. Internet Internet adalah kumpulan jaringan secara global atau mendunia yang saling berhubungan menggunakan standar jaringan tingkat rendah umum yang disebut TCP / IP (Transmission Control Protocol / Internet Protocol). World Wide Web (WWW), juga disebut hanya Web, adalah kumpulan sumber daya (program, file, dan jasa) yang dapat diakses melalui Internet oleh sejumlah protokol standar. Internet adalah infrastruktur yang berdasarkan pada web. Dengan kata lain, sumber daya web dikirim ke pengguna melalui Internet. 2. Intranet Intranet adalah jaringan pribadi yang menggunakan protokol internet tetapi hanya dapat diakses oleh satu set terbatas pengguna internal (biasanya anggota dari organisasi yang sama atau workgroup). Istilah ini juga menggambarkan seperangkat sumber daya diakses secara pribadi yang terorganisir dan disampaikan melalui satu atau lebih protokol Web melalui jaringan yang mendukung TCP / IP. 3. Extranet Sebuah extranet adalah intranet yang telah diperluas untuk mencakup pengguna yang terkait langsung bisnis di luar organisasi (seperti pemasok,
pelanggan
besar,
dan
mitra
strategis).
Extranet
memungkinkan organisasi terpisah untuk bertukar informasi dan mengkoordinasikan kegiatan mereka, sehingga membentuk sebuah organisasi virtual. Salah satu metode yang banyak digunakan untuk mengimplementasikan extranet adalah melalui jaringan virtual private atau Virtual Private Network (VPN), jaringan pribadi yang aman dan dapat diakses hanya untuk anggota organisasi (atau organisasi virtual). Dalam perancangan jaringan untuk sistem informasi, ada banyak cara untuk mendistribusikan sumber daya sistem informasi di jaringan komputer. Pengguna, program aplikasi, dan database dapat ditempatkan
35 pada sistem komputer yang sama, pada sistem komputer yang berbeda pada LAN yang sama, atau pada sistem komputer yang berbeda pada LAN yang berbeda. Program aplikasi dan database juga dapat dibagi dan masingmasing didistribusikan secara terpisah. Penggambaran rancangan jaringan suatu sistem informasi dapat menggunakan suatu network diagram yaitu suatu skema hubungan infrastruktur jaringan komputer yang terhubung dalam sistem.
Gambar 2.15 Contoh Network Diagram Sumber : Satzinger et al. (2010:338)
Deployment dan Application Architecture Kegiatan kedua yang diidentifikasi dalam perancangan design sistem adalah untuk merancang bagaimana arsitektur aplikasi dan penyebaran aplikasi tersebut. Dalam pengembangan sistem informasi terdapat berbagai pilihan untuk arsitektur aplikasi dan penyebarannya atau deployment. Arsitektur melibatkan struktur dan organisasi untuk sistem yang baru, sebagai contoh apakah itu sistem desktop, apakah sistem jaringan, atau merupakan suatu sistem berbasis internet. Jelas struktur arsitektur sistem perangkat lunak harus didukung oleh peralatan komputer dan konfigurasinya.
36 Beberapa jenis arsitektur menurut Satzinger et al. (2010:340) adalah: 1.
Single Computer Architecture Seperti namanya, Single Computer Architecture menggunakan sistem komputer dan perangkat periferal yang terpasang langsung seperti yang ditunjukkan pada gambar 2.17 dibawah. Meskipun single computer architecture dapat merujuk ke PC yang berdiri sendiri, satu PC memiliki kemampuan terbatas bahkan pada kecepatan komputer saat ini. Oleh karena itu, dalam konteks ini kita membahas komputer mainframe besar dengan kemampuan komputasi yang luas yaitu dengan penggunaan beberapa CPU, multiple virtual machine, penyimpanan data yang besar, dan kemampuan throughput yang luar biasa. Keuntungan
utama
kesederhanaannya.
dari
single
Keuntungan
computer utama
architecture
lainnya
dari
adalah
arsitektur
mainframe adalah sangat mendukung pengolahan volume yang tinggi. Sebuah mainframe tunggal dapat melakukan pekerjaan yang sama sebagai cluster server computer. Perusahaan yang menggunakan komputer mainframe biasanya memiliki kebutuhan bisnis yang membutuhkan transaksi online dengan volume yang tinggi atau beban kerja yang berat setiap saat. 2. Multilier Computer Architecture Multilier Computer Architecture mempekerjakan beberapa sistem komputer yang bekerja sama untuk memenuhi kebutuhan informasi pengolahan. Multilier Computer Architecture dapat dibagi lagi menjadi dua jenis yaitu: Clustered Architecture Seperti
ditunjukkan pada gambar 2.17 dibawah,
Clustered
Architecture mempekerjakan sekelompok (cluster) dari komputer, biasanya dari produsen dan model yang sama. Program dialokasikan ke komputer setidaknya dimanfaatkan ketika mereka mengeksekusi sehingga beban pengolahan dapat seimbang di semua mesin. Akibatnya, cluster bertindak sebagai sistem komputer besar. Sistem komputer biasanya ditempatkan dekat satu sama lain sehingga mereka dapat terhubung dengan komunikasi yang singkat. Multicomputer Architecture
37 Arsitektur ini juga mempekerjakan beberapa sistem komputer, akan tetapi hardware dan sistem operasi tidak diperlukan untuk menjadi sama seperti dalam Clustered Architecture. Sebuah suite aplikasi atau sistem program dan sumber data secara eksklusif ditugaskan untuk setiap sistem komputer. Setiap sistem komputer dioptimalkan untuk peran yang akan digunakan dalam sistem gabungan, seperti database atau server aplikasi.
Gambar 2.15 Single-computer, Clustered, dan Multicomputer architectures Sumber : Satzinger et al. (2010:341)
3. Centralized dan Distributed Architecture Centralized architecture menggambarkan penyebaran semua sistem komputer dalam satu lokasi. Centralized architecture umumnya digunakan untuk aplikasi pengolahan skala besar, termasuk aplikasi batch dan real-time. Sistem komputer centralized architecture jarang digunakan sebagai platform perangkat keras untuk sistem informasi tunggal.
Centralized
architecture
biasanya
digunakan
untuk
mengimplementasikan satu atau lebih subsistem dalam sistem informasi yang lebih besar. Komponen sistem informasi modern biasanya didistribusikan untuk beberapa letak geografis dengan banyak sistem komputer. Sebagai
38 contoh, data keuangan perusahaan mungkin disimpan pada komputer mainframe terpusat. Komputer midrange di kantor regional dapat digunakan untuk menghasilkan akuntansi dan laporan lain secara periodik berdasarkan data yang disimpan pada mainframe. Komputer pribadi di banyak lokasi dapat digunakan untuk mengakses dan melihat laporan berkala serta dapat langsung mengupdate database pusat. Pendekatan mendistribusikan komponen di beberapa sistem komputer pada beberapa lokasi dapat disebut distributed architecture. Distributed architecture
bergantung
pada
jaringan
komunikasi
untuk
menghubungkan secara geografis beberapa komponen perangkat keras komputer. 4. Client/Server Architecture Arsitektur client/server membagi program menjadi dua jenis: client dan server. Sebuah server mengelola satu atau lebih informasi sumber daya sistem atau menyediakan layanan yang telah didefinisikan dengan baik. Client berkomunikasi dengan server untuk meminta sumber daya atau layanan, dan server merespon permintaan tersebut. Menurut Satzinger et al. (2010:343) Keuntungan utama dari arsitektur client/server adalah:
Flexibility: Kemampuan untuk merubah komponen sistem tanpa mengganggu komponen sistem lainnya, respon terhadap perubahan parameter organisasi, seperti ukuran dan lokasi fisik.
Scalability: Kemampuan untuk meningkatkan kapasitas sistem dengan meningkatkan atau mengubah perangkat.
Maintainability: Kemampuan untuk memperbarui pelaksanaan internal salah satu bagian dari sistem tanpa perlu mengubah bagian lain
Kelemahan utama dari arsitektur client/server adalah kompleksitas tambahan pada protokol client/server dan masalah performa, keamanan, serta kehandalan potensial yang timbul dari komunikasi melalui jaringan.
39
Gambar 2.16 Client/Server Architecture Sumber : Satzinger et al. (2010:343)
5. Three-Layer Client/Server Architecture Satzinger et al. (2010:344) merupakan varian arsitektur client/server yang membagi aplikasi ke beberapa lapisan proses independen dalam satu set client dan server. Semua lapisan mungkin berada pada satu prosesor, atau tiga atau lebih lapisan mungkin didistribusikan di banyak prosesor. Dengan kata lain, lapisan mungkin berada pada satu atau lebih tingkatan. Lapisan dari Three-Layer Client/Server Architecture meliputi:
Data Layer: yang mengelola penyimpanan data, biasanya dalam satu atau lebih database.
Business Logic Layer: mengimplementasikan aturan dan prosedur pengolahan bisnis.
View Layer: menerima input pengguna, format dan menampilkan hasil pengolahan.
Gambar 2.18 Three-Layer Client/Server Architecture Sumber : Satzinger et al. (2010:345)
6. Internet dan Web Based Application Architecture Web adalah contoh kompleks dari arsitektur client/server. Web resource dikelola oleh proses server yang dapat dijalankan pada web server atau pada sistem komputer multiguna. Client adalah program yang mengirim permintaan ke server menggunakan satu atau lebih dari
40 protokol permintaan web resource standar. Protokol web menentukan format resource valid dan sarana standar meminta resource dan service. Setiap program, bukan hanya browser web akan tetapi dapat juga menggunakan protokol web. Dengan demikian, kemampuan web dapat tertanam dalam program aplikasi biasa. Teknologi Internet dan web menyajikan alternatif yang menarik untuk menerapkan sistem informasi. Menerapkan aplikasi melalui web, intranet, atau extranet memiliki sejumlah keunggulan dibandingkan aplikasi client/server tradisional, diantaranya adalah:
Accessibility: Web browser dan koneksi internet hampir di manamana. Internet, intranet, extranet dan aplikasi dapat diakses untuk sejumlah besar pengguna potensial (termasuk pelanggan, pemasok, dan karyawan off site).
Low Cost Communication: Koneksi antara LAN pribadi dan internet dapat dibeli dari berbagai penyedia layanan internet pribadi dengan biaya yang relatif rendah.
Widely implemented standards: Standar web sudah banya dikenal dan
banyak
profesional
komputasi
sudah
dilatih
dalam
penggunaannya. Server, client software, dan pengembangan aplikasi yang tersedia secara luas dan relatif murah. Aspek negatif dari aplikasi melalui Internet dan teknologi web, diantaranya adalah:
Security: Web server adalah target untuk pelanggaran keamanan karena standar web terbuka dan dikenal secara luas.
Reliability: Protokol internet tidak menjamin tingkat minimum throughput jaringan atau bahkan yang pesan akan diterima oleh penerima yang dimaksudkan.
Throughput: kapasitas bandwidth yang dapat menjadi terbatas sehingga waktu respon lambat untuk semua pengguna dan penundaan yang lama ketika mengakses sumber daya yang besar.
Volatile Standard: Standar web berubah dengan cepat. Perangkat lunak klien diperbarui setiap beberapa bulan. Pengembang aplikasi
41 banyak dihadapkan dengan dilemma yaitu gunakan standar terbaru untuk meningkatkan fungsi atau menggunakan standar yang lebih tua untuk memastikan kompatibilitas yang lebih besar dengan perangkat lunak pengguna yang lebih tua. 7. Web Service Architecture Web Service Architecture adalah varian modern dari arsitektur client/server. Menurut Satzinger et al. (2010:347) Web Service Architecture merupakan layanan perangkat lunak ke dalam proses server yang dapat diakses melalui protokol web, termasuk XML, SOAP, Web Services Description Language (WSDL), dan Universal Description, Discover, and Integrasi (UDDI). Seperti pada gambar 2.20 dibawah, menunjukkan bagaimana klien berinteraksi dengan layanan web melalui web service directory. Web Service Architecture menyediakan mekanisme fleksibel untuk membuat layanan perangkat lunak yang tersedia baik untuk klien internal dan eksternal. Hal ini banyak digunakan untuk membuat suatu sistem terpadu dengan menggabungkan layanan perangkat lunak yang didistribusikan di beberapa organisasi dan komputer.
Gambar 2.19 Web Service Architecture Sumber : Satzinger et al. (2010:347) 8. Middleware Menurut Satzinger et al. (2010:348) arsitektur client/server dan threelayer bergantung pada program-program khusus untuk memungkinkan komunikasi
antara
berbagai
lapisan.
Software
yang
mengimplementasikan antarmuka komunikasi ini biasanya disebut middleware. Middleware menghubungkan bagian dari aplikasi dan memungkinkan permintaan dan data untuk melewati antara mereka. Ada berbagai metode untuk melaksanakan fungsi middleware.
42 Beberapa jenis umum dari middleware termasuk monitor transaksi pengolahan, Object Request Broker (ORB), dan web service directory. Setiap jenis middleware telah menetapkan protokol sendiri untuk memfasilitasi komunikasi antara berbagai komponen dari suatu sistem informasi. Ketika menentukan protokol yang akan digunakan untuk client/server atau komunikasi interlayer, desainer biasanya bergantung pada kerangka kerja standar dan protokol yang dimasukkan ke dalam middleware. Penyedia layanan pihak ketiga seperti biro kredit dan pembelian atau penawaran layanan elektronik biasanya menggunakan protokol web standar seperti HTTP atau XML. Protokol-industri tertentu telah dikembangkan di banyak industri seperti perawatan kesehatan dan perbankan. First-Cut Design Class Diagram Untuk memulai proses desain, First-cut design class diagram dikembangkan berdasarkan domain model. First-cut design class diagram dikembangkan dengan memperluas domain model class diagram. Menurut Satzinger et al. (2010:413) untuk membuat first-cut design class diagram membutuhkan dua langkah yaitu: 1. Elaboration of Attributes Cara untuk elaborasi dari atribut dimulai dari menentukan jenis informasi yang ditentukan oleh desainer berdasarkan keahliannya. Dalam kebanyakan kasus, semua atribut disimpan untuk tak terlihat dan ditandai dengan tanda (-) sebelum penulisan atribut. 2. Navigation Visibility Seperti yang dinyatakan sebelumnya, sistem berorientasi objek adalah seperangkat benda berinteraksi. Diagram interaksi dikembangkan selama dokumen desain apa yang terjadi interaksi antara yang objek. Namun, untuk satu objek untuk berinteraksi dengan yang lain dengan mengirim pesan, objek pertama harus terlihat ke objek kedua. Navigation visibility dalam konteks ini, mengacu pada kemampuan satu
43 objek untuk dapat melihat dan berinteraksi dengan objek lain. Terdapat 2 (dua) jenis visibilitas navigasi selama desain yaitu:
Attribute navigation visibility: Terjadi ketika sebuah kelas memiliki atribut yang merujuk objek lain.
Parameter navigation visibility: Terjadi ketika kelas dilewatkan parameter yang merujuk objek lain.
Gambar 2.20 Contoh First-cut Design Class Diagram Sumber : Satzinger et al. (2010:416) Multilayer Design System Sequence Diagram 1. First-Cut System Sequence Diagram Menurut Satzinger et al. (2010:438) tahapan dalam membuat First-Cut System Sequence Diagram yaitu: a. Tentukan object lain untuk melaksanakan use case yang mungkin terlibat. b. Merubah :System object dengan internal object dan melihat message dalam sistem. c. Melihat problem domain classes dan menentukan class mana yang dibutuhkan untuk use case.
44 d. Untuk memperluas SSD yaitu dengan meletakkan problem domain pada diagram beserta input message dari SSD. e. Menentukan internal messages yang harus dikirmkan antar object termasuk object mana yang harus menjadi source dan destination untuk setiap message. f. Menggunakan activation lifelines untuk menunjukkan ketika suatu object mengeksekusi metode.
Gambar 2.21 Contoh First-cut Sequence Design Diagram Sumber : Satzinger et al. (2010:444)
2. Data Access Layer Menurut Satzinger et al. (2010:447), Prinsip pemisahan tanggung jawab adalah faktor pendorong di balik desain dari data access layer. Data Layer merupakan bagian dari three-layer architecture yang memiliki interaksi dengan database serta memiliki tugas untuk mengelola data yang disimpan pada satu atau lebih database. Tahapan dalam membuat data access layer menurut Satzinger et al. (2010:447) adalah :
45 a. Tentukan domain objects dengan data yang diperlukan dari database. b. Lakukan Query database dan mengirim object reference. c. Lakukan proses pengembalian informasi dalam referensi object.
Gambar 2.22 Contoh Data Access Layer Sumber : Satzinger et al. (2010:448)
3. View Layer Menurut Satzinger et al. (2010: 451), View Layer dalah suatu bagian dari three-layer architecture yang memiliki isi yaitu user interface dan berfungsi
untuk
menerima
input
user,
memformatnya,
lalu
menampilkan hasil proses. Tahapan dalam membuat View Layer menurut Satzinger et al. (2010: 452) adalah : a. Desain user interface untuk setiap use case. b. Mengembangkan
desain
dialog
untuk
use
case,
yang
mendefinisikan satu atau lebih tampilan atau view yang akan berinteraksi dengan sistem.
46 c. Tambahkan class window/boundary yang akan berfungsi sebagai view layer.
Gambar 2.23 Contoh View Layer Sumber : Satzinger et al. (2010:454)
Updated Design Class Diagram Menurut Satzinger et al. (2010:457) design class diagram dapat dirancang untuk setiap layer. Tahap pertama di dalam updated design class diagram adalah menambahkan method berdasarkan informasi dari sequence diagram. Terdapat 3 (tiga) jenis method yaitu : 1. Contructor method 2. Data-get dan data-set method 3. Use case-spesific method Untuk menghindari kelebihan informasi, pengembang biasanya tidak memasukkan method get dan set untuk setiap design class diagram.
47
Gambar 2.24 Contoh Updated Design Class Diagram Sumber : Satzinger et al. (2010:458)
Persistent Object Menurut pendapat Satzinger, et al, (2010, p504), Persistent Object merupakan objek yang diingat oleh sistem dan bisa di gunakan dari waktu ke waktu. Persistent object disebut juga relational database yang digambarkan dalam bentuk tabel yang diisi atribut beserta dengan masing – masing nilai dari atribut tersebut. Di tiap tabel tersebut memiliki primary key, dimana primary key tersebut merupakan sebuah atribut yang unik.
48 Dalam persistence object, digambarkan dengan bentuk table setiap class dari database dengan menjelaskan entity, primary key dan foreign key dari suatu class. Untuk memberikan informasi yang baik, juga dijelaskan setiap attribute dari masing-masing class berikut dengan tipe data dan deskripsi dari attribute tersebut. User Interface Menurut Satzinger et al. (2010:531) user interface merupakan suatu bagian dari sistem informasi yang membutuhkan interaksi pengguna dalam membuat input dan output. Banyak orang berpikir user interface dikembangkan dan ditambahkan saat mendekati akhir dari proses pengembangan sistem. Tapi user interface dari sistem interaktif jauh lebih dari itu. User interface adalah kontak antara pengguna akhir saat menggunakan sistem baik secara fisik, perseptual, dan konseptual. Untuk pengguna akhir dari suatu sistem, user interface adalah sistem itu sendiri. Aspek suatu user interface terhadap pengguna menurut Satzinger et al. (2010:533) dapat dinilai kedalam 3 aspek yaitu: 1. Aspek Fisik Aspek fisik dari user interface termasuk perangkat pengguna yang terjadi kontak secara fisik secara sentuh yaitu keyboard, mouse, layar sentuh, atau tombol. 2. Aspek Persepsi Aspek persepsi dari user interface mencakup semua pengguna akhir lihat, dengar, atau menyentuh (di luar perangkat fisik). Ini mencakup semua data dan petunjuk yang ditampilkan pada layar, termasuk bentuk, garis, angka, dan kata-kata. Pengguna mungkin mengandalkan suara yang dibuat oleh sistem, bahkan bip sederhana atau klik yang memberitahu pengguna bahwa sistem mengakui keystroke atau seleksi. 3. Aspek Konseptual Aspek konseptual dari user interface termasuk semua yang pengguna tahu tentang cara menggunakan sistem, termasuk semua domain dalam sistem seperti memanipulasi, operasi yang dapat dilakukan, dan prosedur yang harus diikuti untuk melaksanakan operasi. Untuk menggunakan sistem ini, pengguna akhir harus tahu semua tentang
49 rincian
bagaimana
sistem
diimplementasikan
dan
bagaimana
menggunakannya untuk menyelesaikan tugas. Ben Shneiderman salah satu peneliti dalam Human Computer Interface memberikan 8 prinsip dalam membangun user interface yang baik yang dikenal dengan “Eight Golden Rules” yaitu: 1.
Upayakan untuk konsistensi (Strive for Consistency) User interface haruslah memiliki konsistensi dalam rancangannya. Seperti dari cara bagaimana informasi dibentuk, nama dan susunan menu, ukuran dan bentuk ikon haruslah memiliki konsistensi didalam seluruh sistem. Hal ini bertujuan agar pengguna tidak mengalami kebingungan saat penggunaan sistem.
2. Fungsi tombol pintas untuk pengguna (Enable Frequent User to Use Shortcut) Pengguna yang bekerja dengan satu aplikasi sepanjang hari bersedia menginvestasikan waktu untuk belajar cara pintas. Mereka dengan cepat kehilangan kesabaran dengan urutan menu panjang dan beberapa kotak dialog ketika mereka tahu persis apa yang ingin mereka lakukan. Oleh karena itu, tombol pintas mengurangi jumlah interaksi untuk tugas yang diberikan. Juga, desainer harus menyediakan fasilitas makro bagi pengguna untuk membuat cara pintas mereka sendiri. 3. Memberikan umpan balik yang informatif (Offer Informative Feedback) Setiap tindakan pengguna lakukan harus menghasilkan beberapa jenis umpan balik dari komputer sehingga pengguna tahu bahwa tindakan itu diakui. Rasa konfirmasi dan kepercayaan yang dihasilkan dalam sistem yang sangat penting bagi pengguna, terutama ketika mereka bekerja dengan sistem sepanjang hari. Tetapi sistem tidak harus memperlambat pengguna dengan menampilkan terlalu banyak kotak dialog yang pengguna harus merespon. 4. Design dialog untuk hasil pengakhiran (Design Dialogs to Yield Closure) Setiap dialog dengan sistem harus diatur dengan jelas urutannya baik itu awal, tengah, dan akhir. Interface yang baik harus dapat memberikan notifikasi bagi pengguna untuk urutan dari setiap pekerjaan atau tugas yang pengguna lakukan.
50 5. Memberikan penanganan kesalahan yang mudah (Offer Simple Error Handling) Kesalahan atau error dapat saja terjadi, interface yang baik harus dapat memberikan kemudahan bagi pengguna dalam penanganan bila saat terjadinya kesalahan atau error. 6. Mengizinkan pembalikan atas suatu aksi (Permit Easy Reversal of Actions) Dalam penggunaan sistem, terkadang pengguna dapat melakukan pembalikan atas suatu aksi yang sudah mereka lakukan. Untuk interface yang baik, harus dapat memberikan keleluasaan bagi pengguna untuk membalikan atas suatu aksi yang telah mereka lakukan. 7. Memberikan kendali bagi pengguna (Support Internal Locust of Control) Sistem yang baik harus dapat memberikan pengguna kendali. Interface harus dapat memberikan user menjadi inisiator terhadap setiap responden. User dapat dengan bebas bernavigasi dan mengubah informasi. 8. Mengurangi beban ingatan jangka pendek (Reduce Short-Term Memory Load) Interace yang baik haruslah dapat mengurangi beban ingatan jangka pendek untuk penggunaan sistem bagi pengguna. Dalam kemampuan untuk mengingat, manusia memiliki keterbatasan, oleh karena itu sistem akan lebih baik bila dapat mengurangi keharusan bagi pengguna dalam mengingat dalam penggunaan sistem.
51
Gambar 2.25 Contoh User Interface Sumber : Satzinger et al. (2010:557)
2.3 Database Bayangkan saja betapa sulitnya akan mendapatkan informasi dari suatu sistem informasi apabila data disimpan dengan cara yang tidak terorganisir atau jika tidak ada cara yang sistematis untuk mengambil data yang kita butuhkan. Oleh karena itu dalam semua sistem informasi, sumber data harus diatur dan disusun dalam beberapa cara yang logis sehingga mereka dapat diakses dengan mudah, diproses secara efisien, diambil dengan cepat, dan dikelola secara efektif. Struktur data dan metode akses mulai dari yang sederhana sampai yang kompleks telah dirancang untuk mengatur dan mengakses data yang disimpan oleh sistem informasi secara efisien. Menurut Connelly et al. (2013:63). Database System : A Practical Approach to Design Implementation and Management. Database adalah koleksi bersama dari suatu logical data dan deskripsi yang berhubungan dan didesign untuk memenuhi kebutuhan informasi pada suatu organisasi. Menurut O’Brien et al. (2011:181) database adalah koleksi terpadu dari elemen data logis yang saling terkait. Database mengkonsolidasikan data yang disimpan dalam file terpisah ke dalam suatu elemen data yang menyediakan data untuk banyak aplikasi.
52 Dengan demikian dapat disimpulkan bahwa database merupakan suatu kumpulan data yang memiliki deskripsi yang saling berhubungan secara logical yang disimpan dalam suatu tempat penyimpanan khusus yang digunakan bagi aplikasi secara bersama-sama untuk memenuhi kebutuhan informasi yang berguna. Struktur Database Hubungan antara begitu banyak elemen data yang tersimpan dalam database berdasarkan satu atau lebih struktur logical data atau model. Menurut O’Brien et al. (2011:183) terdapat 5 (lima) dasar untuk struktur database yaitu: 1. Hierarchical Structure Dalam hierarchical structure, hubungan antara setiap record digambarkan secara struktur hierarki atau garis pohon. Unsur data atau record pada tingkat hirarki tertinggi disebut elemen root. Dalam model hirarkis tradisional, semua record tergantung dan diatur dalam struktur bertingkat, terdiri dari satu catatan root dan sejumlah subordinat. Dengan demikian, semua hubungan antara record adalah salah one-to-many karena setiap elemen data terkait dengan hanya satu elemen di atasnya. 2. Network Structure Network structure dapat mewakili hubungan logis yang lebih kompleks. Hal ini memungkinkan hubungan antara record secara many-to-many yaitu, model jaringan dapat mengakses elemen data dengan mengikuti salah satu dari beberapa jalur karena setiap elemen data atau record dapat berhubungan dengan sejumlah elemen data lainnya. 3. Relational Structure Model relational structure adalah yang paling banyak digunakan dari tiga struktur database. Dalam model relasional, semua elemen data dalam database disimpan dalam bentuk tabel dua dimensi yang sederhana, kadangkadang disebut sebagai relational. Tabel dalam database relasional adalah file datar yang memiliki baris dan kolom. Setiap baris mewakili satu record dalam file, dan setiap kolom mewakili field. Perbedaan utama antara flat file dan database adalah bahwa flat file hanya dapat memiliki atribut data yang ditentukan untuk satu file. Sebaliknya, database dapat menentukan data atribut untuk beberapa file secara bersamaan dan dapat menghubungkan
53 berbagai elemen data dalam satu file dengan yang di satu atau lebih file lainnya.
Gambar 2.26 Hierarchical, Network dan Relational Structure Sumber : O’Brien et al. (2011:183)
4. Object-oriented Structure Model dengan struktur object oriented dianggap salah satu teknologi kunci dari generasi baru aplikasi berbasis web multimedia. Obyek terdiri dari nilainilai data yang menggambarkan atribut dari suatu entitas, ditambah operasi yang dapat dilakukan pada data. Kemampuan enkapsulasi ini memungkinkan model object oriented untuk menangani jenis data kompleks (grafis, gambar, suara, dan teks) lebih mudah daripada struktur database lain. Model object oriented juga mendukung warisan; yaitu, objek baru dapat otomatis dibuat dengan mereplikasi beberapa atau semua karakteristik dari satu atau lebih objek induknya. 5. Multidimensional Structure Model struktur multidimensional adalah variasi dari model relasional yang menggunakan
struktur
multidimensional
untuk
mengatur
data
dan
54 mengungkapkan hubungan antara data. Model ini dapat memvisualisasikan struktur multidimensi sebagai kubus data dan kubus dalam kubus data. Setiap sisi kubus dianggap dimensi data. Setiap sel dalam struktur multidimensi berisi data agregat yang berkaitan dengan unsur-unsur bersama masingmasing dimensi. Database Management System (DBMS) Menurut Connolly et al. (2013:64) Database Managemant Syatem (DBMS) merupakan suatu sistem perangkat lunak yang mengijinkan pengguna untuk mendefinisikan (define), membuat (create), mengelola (maintain) dan mengatur (control) akses ke suatu database. Biasanya DBMS menyediakan fasilitas sebagai berikut:
Memungkinkan pengguna untuk menentukan database melalui Data Definition Language (DDL). DDL memungkinkan pengguna untuk menentukan tipe data dan struktur dan kendala pada data yang akan disimpan dalam database.
Memungkinkan pengguna untuk memasukkan (insert), mengubah (update), menghapus (erase), dan mengambil (retrieve) data dari database, biasanya melalui Data Manipulation Language (DML).
Memiliki sebuah repositori terpusat untuk semua data dan deskripsi data yang memungkinkan DML untuk memberikan fasilitas penyelidikan umum untuk data atau disebut query.
Menyediakan
kendali
akses
ke
database.
Sebagai
contoh,
dapat
memberikan: -
Sistem keamanan, yang mencegah pengguna yang tidak sah mengakses database
-
Sistem integritas, yang mempertahankan konsistensi data yang disimpan
-
Sistem kontrol concurrency, yang memungkinkan akses bersama database
-
Sistem kontrol pemulihan, yang mengembalikan database ke keadaan yang konsisten sebelumnya terjadinya kegagalan hardware atau perangkat lunak
55 -
Katalog yang dapat diakses pengguna, yang berisi deskripsi dari data dalam database
Komponen lingkungan Database Management System (DBMS) Menurut Connolly et al. (2013:66) terdapat 5 (lima) komponen utama dari suatu lingkungan DBMS yaitu: 1. Hardware DBMS dan aplikasi memerlukan perangkat keras untuk dapat berjalan. Hardware dapat berkisar dari komputer personal hingga komputer mainframe atau jaringan dari komputer. Hardware tertentu tergantung pada kebutuhan organisasi dan DBMS yang digunakan. Beberapa DBMS hanya berjalan pada perangkat keras atau operasi tertentu sistem, sementara yang lain dijalankan pada berbagai macam perangkat keras dan sistem operasi. Sebuah DBMS membutuhkan jumlah minimal memori utama dan ruang disk untuk menjalankan, tapi konfigurasi minimal ini mungkin tidak selalu memberikan kinerja yang dapat diterima. 2. Software Komponen perangkat lunak terdiri dari perangkat lunak DBMS itu sendiri dan program aplikasi, bersama dengan sistem operasi, termasuk perangkat lunak jaringan jika DBMS digunakan melalui jaringan. Perangkat lunang berfungsi menghubungkan database dengan perangkat fisik. 3. Data Mungkin komponen yang paling penting dari lingkungan DBMS dari titik pandang pengguna akhir adalah data. Data bertindak sebagai jembatan antara komponen mesin dan komponen manusia. Database berisi data operasional dan metadata. 4. Procedure Prosedur mengacu pada instruksi dan aturan yang mengatur desain dan penggunaan database. Para pengguna sistem dan staf yang mengelola database memerlukan prosedur tentang cara menggunakan atau menjalankan sistem DBMS. Ini dapat terdiri dari petunjuk tentang cara:
Log on ke DBMS.
Gunakan fasilitas DBMS atau program aplikasi tertentu.
Mulai dan menghentikan DBMS.
56
Membuat backup dari database.
Menangani kegagalan pada perangkat keras atau perangkat lunak. Ini mungkin termasuk prosedur bagaimana mengidentifikasi komponen yang mengalami kegagalan, cara memperbaiki komponen dan bagaimana memulihkan database.
Mengubah
struktur
tabel,
menata
database
di
beberapa
disk,
meningkatkan kinerja, atau arsip data ke penyimpanan sekunder. 5. People Pengguna adalah manusia yang memiliki interaksi dengan sistem database. Setiap pengguna memiliki username dan password untuk membatasi dan membedakan setiap hak akses pengguna. Kondisi tersebut berkaitan dengan kemampuan kontrol dan keamanan atas suatu sistem database. Kelebihan dan Kekurangan Database Management System (DBMS) Kelebihan dari penggunaan Database Management System (DBMS) menurut Connolly et al. (2013:75) adalah:
Pengendalian redundansi data Pendekatan database mencoba untuk menghilangkan redundansi dengan mengintegrasikan file sehingga beberapa salinan data yang sama tidak disimpan. Namun, pendekatan database tidak menghilangkan redundansi sepenuhnya, namun mengendalikan jumlah redundansi yang melekat dalam database. Kadang-kadang perlu untuk menduplikasi item data kunci untuk model relasi dengan alasan lain diantaranya adalah untuk meningkatkan kinerja.
Konsistensi data Dengan menghilangkan atau mengendalikan redundansi, kita mengurangi terjadinya risiko inkonsistensi. Jika item data disimpan hanya sekali dalam database, setiap update untuk nilainya harus dilakukan hanya sekali dan nilai baru segera tersedia untuk semua pengguna. Jika item data disimpan lebih dari sekali dan sistem menyadari ini, sistem dapat memastikan bahwa semua salinan item disimpan tersebut konsisten.
Informasi lebih lanjut dari jumlah data yang sama Dengan integrasi data operasional, dimungkinkan bagi organisasi untuk memperoleh informasi tambahan dari data yang sama. Hal ini disebabkan
57 karena dalam suatu sistem database, penggunaan suatu informasi dapat di gunakan secara bebrbagi antar pengguna.
Berbagi data Database dapat digunakan bersama oleh semua pengguna sesuai dengan hak akses yang dimilikinya. Dengan cara ini, lebih banyak pengguna dapat saling berbagi data. Selanjutnya, aplikasi dapat membangun data yang ada dalam database dan menambahkan hanya data yang saat ini tidak disimpan, daripada harus mendefinisikan semua persyaratan data lagi.
Peningkatan integritas data Integritas database mengacu pada validitas dan konsistensi data yang tersimpan. Integritas biasanya dinyatakan dalam hal untuk tidak dilanggarnya aturan konsistensi data didalam sebuah database. Integrasi memungkinkan aplikasi untuk mendefinisikan batasan integritas.
Peningkatan keamanan Keamanan database adalah perlindungan database dari pengguna yang tidak sah. Tanpa langkah-langkah keamanan yang sesuai, integrasi membuat data lebih rentan daripada sistem berbasis berkas. Keamanan ini dapat mengambil bentuk username dan password untuk mengidentifikasi orang yang berwenang untuk menggunakan database.
Penegakan standar Integrasi memungkinkan aplikasi untuk mendefinisikan standar dan DBMS untuk menegakkan standar yang diperlukan. Ini mungkin termasuk standar departemen, organisasi, nasional, atau internasional untuk hal-hal seperti format data untuk memfasilitasi pertukaran data antara sistem, konvensi penamaan, standar dokumentasi, prosedur update, dan aturan akses.
Skala ekonomi Menggabungkan semua data operasional organisasi ke dalam satu database dan menciptakan satu set aplikasi yang bekerja pada ini salah satu sumber data dapat menghasilkan penghematan biaya. Dalam hal ini, anggaran yang biasanya akan dialokasikan untuk masing-masing departemen untuk pengembangan
dan
pemeliharaan
sistem
database
yang
dapat
dikombinasikan, mungkin mengakibatkan total biaya yang lebih rendah.
58 Anggaran gabungan dapat digunakan untuk membeli konfigurasi sistem yang lebih cocok dengan kebutuhan organisasi.
Penanganan persyaratan yang saling bertentangan Setiap pengguna atau departemen memiliki kebutuhan yang mungkin bertentangan dengan kebutuhan pengguna lain. Karena database berada di bawah kendali administrator, administrator dapat membuat keputusan tentang desain dan penggunaan operasional database yang menyediakan penggunaan terbaik dari sumber daya bagi organisasi secara keseluruhan. Keputusan ini akan memberikan kinerja yang optimal untuk aplikasi penting, mungkin dengan mengorbankan yang kurang-kritis.
Peningkatan aksesibilitas dan responsive data Sebagai akibat dari integrasi, data yang melintasi batas-batas departemen diakses secara langsung ke pemakai akhir. Ini menyediakan sistem dengan potensi yang lebih baik, misalnya digunakan untuk menyediakan layanan yang lebih baik kepada pengguna akhir atau klien organisasi. Banyak DBMS
menyediakan
bahasa
query atau
penulisan
laporan
yang
memungkinkan pengguna untuk mengajukan pertanyaan ad hoc dan untuk memperoleh informasi yang diperlukan segera di terminal mereka, tanpa memerlukan programmer untuk menulis beberapa perangkat lunak untuk mengekstrak informasi ini dari database.
Peningkatan produktivitas Seperti disebutkan sebelumnya, DBMS menyediakan banyak fungsi standar yang programmer biasanya harus menulis dalam aplikasi file based. Pada tingkat dasar, DBMS menyediakan semua rutinitas penanganan file yang khas dalam program aplikasi. Penyediaan fungsi-fungsi ini memungkinkan programmer untuk berkonsentrasi pada fungsi khusus yang diperlukan oleh pengguna tanpa harus khawatir tentang rincian pelaksanaan. Hal ini menyebabkan peningkatan produktivitas programmer dan mengurangi waktu pengembangan.
Peningkatan pemeliharaan melalui independensi data Dalam sistem berbasis file, deskripsi dari data dan logika untuk mengakses data yang dibangun ke dalam setiap program aplikasi, membuat program tergantung pada data. Perubahan pada struktur data atau perubahan dengan
59 cara data disimpan dapat memerlukan perubahan besar untuk program yang dipengaruhi oleh perubahan. Sebaliknya, DBMS memisahkan deskripsi data dari aplikasi, sehingga membuat aplikasi dapat lebih baik dalam menghadapi perubahan dalam deskripsi data.
Peningkatan konkurensi Dalam beberapa sistem berbasis file, jika dua atau lebih pengguna yang diizinkan untuk mengakses file yang sama secara bersamaan, adalah mungkin bahwa akses akan terganggu satu sama lain, yang mengakibatkan hilangnya informasi atau bahkan hilangnya integritas. Banyak DBMS mengelola database untuk dapat diakses bersamaan dan memastikan bahwa masalah tersebut tidak dapat terjadi.
Kekurangan dari penggunaan Database Management System (DBMS) menurut Connolly et al. (2013:78) adalah:
Kompleksitas Penyediaan fungsi yang di harapkan dari DBMS yang baik membuat DBMS sangat kompleks. Desainer dan pengembang database, data dan administrator database, dan pengguna akhir harus memahami fungsi ini untuk mengambil keuntungan penuh dari itu. Kegagalan untuk memahami sistem dapat menyebabkan keputusan desain yang buruk, yang dapat memiliki konsekuensi serius bagi suatu organisasi.
Ukuran Kompleksitas dan luasnya fungsi DBMS membuat bagian yang sangat besar dari perangkat lunak, membutuhkan banyak ruang penyimpanan dan membutuhkan sejumlah besar memori agar dapat berjalan secara efisien.
Biaya DBMS Biaya DBMS bervariasi secara signifikan, tergantung pada lingkungan dan fungsi yang disediakan. Sebagai contoh, sebuah DBMS single-user untuk komputer pribadi mungkin relative tidak terlalu mahal. Namun, DBMS mainframe multi-user besar yang melayani ratusan pengguna bisa sangat mahal. Selain itu mungkin juga ada biaya pemeliharaan tahunan.
Biaya hardware tambahan
60 Persyaratan penyimpanan disk untuk DBMS dan database mungkin memerlukan pembelian ruang penyimpanan tambahan. Selanjutnya, untuk mencapai kinerja yang diperlukan, mungkin perlu untuk membeli mesin yang lebih besar, bahkan mungkin sebuah mesin yang didedikasikan untuk menjalankan DBMS.
Biaya konversi Dalam beberapa situasi, biaya DBMS dan hardware tambahan mungkin relatif kecil dibandingkan dengan biaya konversi aplikasi yang ada untuk dijalankan pada DBMS dan perangkat keras baru. Biaya ini juga termasuk biaya pelatihan staf untuk menggunakan sistem baru, dan mungkin kerja dengan staf ahli untuk membantu konversi dan menjalankan sistem. Biaya ini adalah salah satu alasan utama mengapa beberapa organisasi merasa terikat dengan sistem mereka saat ini dan tidak dapat beralih ke teknologi database yang lebih modern.
Performa Biasanya, sistem berbasis file ditulis untuk aplikasi tertentu, seperti faktur. Akibatnya, kinerja secara umum sangat baik. Namun, DBMS ditulis untuk menjadi lebih umum, untuk memenuhi banyak aplikasi bukan hanya satu. Hasilnya adalah bahwa beberapa aplikasi tidak dapat berjalan secepat dulu.
Dampak yang lebih besar dari kegagalan Sentralisasi sumber daya meningkatkan kerentanan sistem. Karena semua pengguna dan aplikasi bergantung pada ketersediaan DBMS, kegagalan komponen tertentu dapat mengakibatkan berhentinya operasi sistem. Pengenalan MySQL Menurut Vikram (2010:4). MySQL Database Usage Administration.
MySQL merupakan suatu implementasi dari sistem manajemen database relasional atau Relational Database Management System (RDBMS) yaitu perangkat lunak yang digunakan untuk mengorganisir (organize), menerima (retrieving) dan pertukaran referensi (cross referencing) informasi. MySQL adalah aplikasi RDBMS yang memiliki kinerja tinggi, multithreaded, multiuser dan dibangun dengan arsitektur client-server. MySQL sebenarnya merupakan turunan dari sistem database Structured Query Language (SQL) yang telah ada sebelumnya.
61 MySQL didistribusikan dengan lisensi General Public License (GPL) dimana dalam distibusi dan penggunaannya gratis selama produk turunan yang dihasilkannya tidak digunakan untuk kepentingan komersial. Fitur MySQL Popularitas MySQL adalah karena kombinasi dari fitur unik yang dimilikinya. Beberapa fitur unik MySql menurut Vikram (2010:26) adalah:
Kecepatan (Speed) Dalam performanya, MySQL memiliki kecepatan yang tinggi dalam menangani query sederhana dan dapat lebih banyak SQL di proses dalam persatuan waktu
Reabilitas (Reability) Dalam penggunaannya, MySQL didesign dengan rabilitas dan uptime yang maksimal.
Skalabilitas (Scalability) MySQL mampu menangani database dengan jumlah skala yang besar.
Kemudahan dalam penggunaan (Easy of Use) MySQL memiliki antarmuka pengguna dan bahasa pemograman yang relative mudah untuk dipahami
Portabilitas dan Standar Pemenuhan (Portability and Standard Compliance) MySQL dapat dijalankan dalam berbagai sistem operasi seperti Windows, Linux, MacOS, FreeBSD dan lain-lain dan memiliki pemenuhan untuk standar ANSI untuk SQL.
Dukungan untuk banyak pengguna (Multiuser Support) MySQL dapat digunakan beberapa pengguna dalam waktu yang bersamaan tanpa terjadinya konflik.
Internasionalisasi (Internationalization) Memiliki dukungan dalam penggunaan berbagi macam Bahasa dan karakter set.
Dukungan aplikasi yang luas (Wide Application Support) MySQL memiliki fitur application programming Interface (API) sebaga penghubung dengan aplikasi lain.
Pengembangan kode secara terbuka (Open-Source Code)
62 Distribusi MySQL dilakukan dibawah lisensi GPL sehingga dapat digunakan secara gratis dan pengembangannya bersifat terbuka atau open source.
Gambar 2.27 MySQL User Interface Sumber : O’Brien et al. (2011:205)
2.4 Manajemen Proyek Menurut Satzinger et al. (2010:75) Manajemen proyek adalah suatu upaya mengorganisir dan mengarahkan orang lain untuk mencapai hasil yang direncanakan dalam jadwal dan anggaran yang telah ditetapkan. Pada awal proyek, rencana dikembangkan untuk menentukan kegiatan yang harus dilakukan, deliverable yang harus diproduksi, dan sumber daya yang dibutuhkan. Jadi, manajemen proyek dapat juga didefinisikan sebagai proses yang digunakan untuk merencanakan proyek dan kemudian untuk memantau dan mengontrolnya. Menurut Schwalbe et al. (2014:9) manajemen proyek adalah penerapan pengetahuan, keterampilan, peralatan, dan teknik untuk kegiatan proyek untuk memenuhi kebutuhan proyek. Proyek sendiri didefinisikan sebagai usaha yang bersifat sementara yang dilakukan untuk membuat produk, layanan, atau hasil. Dengan demikian manajemen proyek dapat disimpulkan sebagai suatu usaha yang mengatur suatu usaha untuk menciptakan produk atau layanan dengan perencanaan baik jadwal, anggaran dan sumber daya yang telah ditentukan.
63 Siklus Hidup Manajemen Proyek Karena proyek beroperasi sebagai bagian dari sistem dan melibatkan ketidakpastian, maka perlu untuk membagi proyek menjadi beberapa tahap. Sebuah siklus hidup proyek adalah kumpulan dari fase proyek. Beberapa organisasi menentukan seperangkat siklus hidup untuk digunakan dalam semua proyek mereka, sementara yang lain mengikuti praktik industri umum berdasarkan jenis proyek yang terlibat. Secara umum, siklus hidup proyek mendefinisikan pekerjaan apa yang akan dilakukan di setiap tahap, apa dan kapan deliverable yang akan diproduksi, yang terlibat dalam setiap fase, dan bagaimana manajemen akan mengontrol dan menyetujui karya yang dihasilkan di setiap tahap. Sebuah deliverable adalah produk atau layanan, seperti laporan teknis, sesi pelatihan, hardware, atau segmen kode software, diproduksi atau disediakan sebagai bagian dari proyek. Fase proyek bervariasi pada setiap proyek atau industri, menurut Schwalbe et al. (2014:56) tahapan umum dalam manajemen proyek tradisional adalah: 1. Concept Pada tahap konsep proyek, manajer biasanya mengembangkan beberapa jenis kasus bisnis, yang menggambarkan kebutuhan proyek dan konsep yang mendasari dasar. Perkiraan biaya awal atau kasar dikembangkan dalam tahap pertama ini, dan gambaran pekerjaan yang diperlukan dibuat. Sebuah struktur rincian kerja atau Work Breakdown Structure (WBS) menguraikan pekerjaan proyek dengan menguraikan aktivitas kerja ke berbagai tingkat tugas. WBS merupakan deliverable dokumen yang mendefinisikan total lingkup proyek. Pada akhir fase konsep, team proyek akan dapat memberikan laporan dan presentasi tentang temuan-temuannya. Laporan dan presentasi akan menjadi contoh kiriman atau deliverable. 2. Development Setelah tahap konsep selesai, proyek berikutnya adalah fase pengembangan. Pada tahap pengembangan, tim proyek menciptakan rencana manajemen proyek yang lebih rinci, perkiraan biaya yang lebih akurat, dan WBS lebih menyeluruh. Pendekatan bertahap meminimalkan waktu dan uang yang dihabiskan mengembangkan proyek-proyek yang tidak pantas. Ide proyek
64 harus melewati tahap konsep sebelum berkembang menjadi tahap pengembangan. 3. Implementation Tahap ketiga dari siklus hidup proyek tradisional adalah implementasi. Pada fase ini, tim proyek menciptakan perkiraan biaya definitif atau sangat akurat, memberikan pekerjaan yang diperlukan, dan memberikan laporan kinerja kepada stakeholder.. Selama fase implementasi proyek sistem informasi, tim proyek akan perlu untuk mendapatkan perangkat keras dan perangkat lunak yang diperlukan, menginstal peralatan jaringan yang diperlukan dan memberikan pelatihan kepada pengguna akhir. Tim proyek biasanya menghabiskan sebagian besar upaya dan biaya selama fase pelaksanaan proyek. 4. Close-out Tahap terakhir dari siklus hidup proyek tradisional adalah fase close-out. Di dalamnya, semua pekerjaan selesai, dan pemilik proyek harus menerima seluruh hasil. Tim proyek harus mendokumentasikan pengalaman pada proyek dalam laporan proyek.
Gambar 2.28 Traditional Project Life Cycle Sumber : Schwalbe et al. (2014:58)
Project Management Knowledge Area The Project Management Institute (PMI) adalah sebuah organisasi profesional yang mempromosikan manajemen proyek. Sebagai bagian dari
65 misinya, PMI telah mendefinisikan Body of Knowledge (BOK) untuk manajemen proyek yang disebut sebagai Project Management Book of Knowledge (PMBOK). PMBOK telah disusun dalam sembilan bidang pengetahuan yang berbeda sebagai panduan untuk pelaksanaan manajemen proyek yang baik. Project Integration Management Project integration management atau manajemen integrasi proyek melibatkan koordinasi semua bidang pengetahuan manajemen proyek lainnya di seluruh siklus hidup proyek. Integrasi ini memastikan bahwa semua elemen dari proyek datang bersama-sama pada saat yang tepat untuk menyelesaikan proyek dengan sukses. Menurut panduan PMBOK, enam proses utama yang terlibat dalam integrasi manajemen proyek ialah: 1. Developing the project charter Bekerja
dengan
melibatkan
para
stakeholder
atau
pemangku
kepentingan untuk menciptakan dokumen wewenang proyek yang resmi. 2. Developing the project management plan Mengembangkan rencana manajemen proyek melibatkan koordinasi semua upaya perencanaan untuk membuat, dokumen rencana manajemen proyek yang koheren dan konsisten. 3. Directing and managing project work Mengarahkan dan mengelola proyek yang melibatkan pelaksanaan rencana manajemen proyek dengan melakukan kegiatan-kegiatan yang termasuk di dalamnya. Output dari proses ini adalah deliverable, informasi kinerja, permintaan perubahan, update rencana manajemen proyek, dan update dokumen proyek. 4. Monitoring and controlling project work Pemantauan dan pengendalian pekerjaan proyek melibatkan mengawasi kegiatan untuk memenuhi tujuan kinerja proyek. Output dari proses ini adalah permintaan perubahan, update manajemen proyek rencana, dan update dokumen proyek. 5. Performing integrated change control
66 Melakukan kontrol perubahan terintegrasi melibatkan identifikasi, evaluasi, dan mengelola perubahan di seluruh siklus hidup proyek. Output dari proses ini termasuk perubahan status update permintaan, update manajemen proyek rencana, dan update dokumen proyek. 6. Closing the project phase Menutup proyek atau fase melibatkan penyelesaian semua kegiatan untuk secara resmi menutup proyek atau fase. Output dari proses ini termasuk produk akhir, layanan, atau hasil transisi dan update proses asset organisasi.
Gambar 2.29 Project integration management summary Sumber : Schwalbe et al. (2014:141)
Project Scope Management Menurut Schwalbe et al. (2014:188) salah satu aspek yang paling penting dan paling sulit dari manajemen proyek ialah mendefinisikan ruang lingkup proyek. Ruang lingkup mengacu pada semua pekerjaan yang terlibat dalam menciptakan produk-produk dari proyek dan proses yang digunakan untuk membuat mereka. Manajemen lingkup proyek mencakup proses-proses yang terlibat dalam mendefinisikan dan mengendalikan pekerjaan apa yang termasuk
67 atau tidak termasuk dalam proyek. Ini memastikan bahwa tim proyek dan stakeholder memiliki pemahaman yang sama tentang apa produk proyek akan hasilkan dan proses apa yang tim proyek akan. Enam proses utama yang terlibat dalam manajemen lingkup proyek ialah: 1. Planning scope management Perencanaan
manajemen
lingkup
melibatkan
dan
menentukan
bagaimana ruang lingkup dan persyaratan proyek akan dikelola. Tim proyek bekerja dengan para pemangku kepentingan yang tepat untuk membuat rencana manajemen pengelolaan ruang lingkup dan persyaratan. 2. Collecting requirement Mengumpulkan
persyaratan
melibatkan
mendefinisikan
dan
mendokumentasikan fitur dan fungsi dari produk untuk proyek serta proses yang digunakan untuk menciptakan mereka. Tim proyek menciptakan
persyaratan
dokumentasi
dan
matriks
persyaratan
ketertelusuran sebagai output dari proses pengumpulan persyaratan. 3. Defining Scope Meninjau rencana ruang lingkup manajemen, proyek charter, dokumen persyaratan, dan aset proses organisasi untuk membuat pernyataan lingkup, menambahkan informasi lebih lanjut sebagai persyaratan dikembangkan dan perubahan permintaan disetujui. deliverable dari pendefinisian ruang lingkup adalah pernyataan lingkup proyek dan update dokumen proyek. 4. Creating the WBS Membuat WBS melibatkan pengelompokan deliverable proyek besar menjadi lebih kecil sehingga komponen lebih mudah dikelola. Deliverable termasuk dasar lingkup (yang meliputi struktur rincian kerja dan kamus WBS) dan update dokumen proyek. 5. Validating scope Memvalidasi ruang lingkup melibatkan penerimaan secara resmi atas deliverable proyek. Stakeholder proyek utama, seperti pelanggan dan sponsor untuk proyek, memeriksa dan kemudian secara resmi menerima deliverable selama proses ini. Jika kiriman tidak dapat diterima, pelanggan atau sponsor biasanya meminta perubahan.
68 6. Controlling scope Mengontrol ruang lingkup melibatkan kemampuan dalam menghadapi perubahan sepanjang life cycle proyek. Perubahan lingkup sering mempengaruhi kemampuan tim untuk memenuhi waktu proyek dan tujuan
biaya,
sehingga
manajer
proyek
harus
hati-hati
mempertimbangkan biaya dan manfaat dari perubahan lingkup. Keluaran utama dari proses ini adalah informasi kinerja pekerjaan, permintaan perubahan, dan update rencana manajemen proyek, dokumen proyek, dan aset proses organisasi.
Gambar 2.30 Project scope management summary Sumber : Schwalbe et al. (2014:190)
Project Time Management Dalam pelaksanaan proyek sangat rentan terjadinya konflik pada schedule yang telah di buat dalam proses perencanaan proyek. Penting bagi manajer proyek untuk menggunakan manajemen waktu proyek yang baik. Manajemen waktu proyek melibatkan proses yang diperlukan untuk memastikan penyelesaian tepat waktu proyek. Tujuh proses utama yang terlibat dalam manajemen waktu proyek ialah: 1. Planning schedule Manajemen jadwal perencanaan melibatkan penentuan kebijakan, prosedur, dan dokumentasi yang akan digunakan untuk perencanaan,
69 pelaksanaan, dan pengendalian jadwal proyek. Output utama dari proses ini adalah rencana pengelolaan jadwal. 2. Defining activities Mendefinisikan kegiatan melibatkan identifikasi kegiatan spesifik bahwa anggota tim proyek dan stakeholder harus memiliki performa untuk menghasilkan deliverable proyek. Suatu kegiatan atau tugas adalah elemen kerja yang dapat dilihat pada struktur rincian kerja atau Work Breakdown Structure (WBS) yang telah memiliki rincian persyaratan durasi, biaya, dan sumber daya. Keluaran utama dari proses ini adalah daftar kegiatan, atribut kegiatan, milestone, dan update rencana manajemen proyek. 3. Sequencing activities Mengurutkan
kegiatan
melibatkan
identifikasi
dan
mendokumentasikan
hubungan antara kegiatan proyek. Keluaran utama dari proses ini meliputi diagram jaringan jadwal proyek dan update dokumen proyek. 4. Estimating activity resource Memperkirakan sumber aktivitas melibatkan perkiraan berapa banyak sumber daya proyek yang harus digunakan untuk melakukan kegiatan proyek. Keluaran utama dari proses ini adalah kebutuhan sumber daya aktivitas, struktur rincian sumber daya, dan update dokumen proyek. 5. Estimating activity duration Memperkirakan jangka waktu kegiatan melibatkan perkiraan jumlah periode kerja yang dibutuhkan untuk menyelesaikan kegiatan individu. Output termasuk perkiraan durasi aktivitas dan updatedokumen proyek. 6. Developing the schedule Mengembangkan jadwal melibatkan analisis urutan kegiatan, estimasi sumber daya kegiatan, dan perkiraan durasi kegiatan untuk membuat jadwal proyek. Output meliputi dasar jadwal, jadwal proyek, data jadwal, kalender proyek, update rencana manajemen proyek, dan update dokumen proyek. 7. Controlling the schedule Mengontrol jadwal melibatkan pengendalian dan pengelolaan perubahan pada jadwal proyek. Output termasuk informasi performa pekerjaan, perkiraan jadwal, permintaan perubahan, update rencana pengelolaan proyek, update dokumen proyek, dan update proses asset organisasi.
70
Gambar 2.31 Project time management summary Sumber : Schwalbe et al. (2014:228)
Project Cost Management Manajemen biaya proyek mencakup proses-proses yang diperlukan untuk memastikan bahwa tim proyek selesai proyek dalam anggaran yang disetujui. Perhatikan dua frase penting dalam definisi ini: ". Anggaran yang disetujui" "proyek" dan manajer proyek harus memastikan proyek mereka didefinisikan dengan baik, memiliki waktu yang akurat dan perkiraan biaya, dan memiliki anggaran yang realistis bahwa mereka terlibat dalam menyetujui. Ini adalah tugas manajer proyek untuk memenuhi stakeholder proyek sambil terus berusaha untuk mengurangi dan mengendalikan biaya. Ada empat proses manajemen biaya proyek: 1. Planning cost management Manajemen perencanaan biaya melibatkan penentuan kebijakan, prosedur, dan dokumentasi yang akan digunakan untuk perencanaan, pelaksanaan, dan pengendalian biaya proyek. Output utama dari proses ini adalah rencana manajemen biaya. 2. Estimating costs
71 Perkiraan biaya melibatkan mengembangkan pendekatan atau perkiraan biaya sumber daya yang dibutuhkan untuk menyelesaikan proyek. Keluaran utama dari proses estimasi biaya merupakan perkiraan aktivitas biaya, dasar perkiraan, dan update dokumen proyek. 3. Determining the budget Menentukan anggaran melibatkan mengalokasikan biaya estimasi keseluruhan untuk item pekerjaan individu untuk membangun dasar untuk mengukur kinerja. Keluaran utama dari proses penganggaran biaya adalah dasar penentuan biaya, kebutuhan dana proyek, dan update dokumen proyek. 4. Controlling costs Kontrol biaya melibatkan pengendali untuk anggaran proyek. Keluaran utama dari proses pengendalian biaya merupakan informasi perubahan pekerjaan, perkiraan biaya, permintaan perubahan, update rencana pengelolaan proyek, update dokumen proyek, dan update proses asset organisasi.
Gambar 2.32 Project cost management summary Sumber : Schwalbe et al. (2014:275)
Project Quality Management Tujuan dari manajemen kualitas proyek adalah untuk memastikan bahwa proyek akan memenuhi kebutuhan yang ditetapkan. Tim proyek harus mengembangkan hubungan yang baik dengan para pemangku
72 kepentingan utama, sehingga memahami kualitas yang mereka harapkan. Banyak proyek-proyek teknis gagal karena tim proyek hanya berfokus pada pemenuhan persyaratan produk tertulis dan mengabaikan kebutuhan stakeholder lainnya dan harapan untuk proyek tersebut. Dengan demikian kualitas harus pada tingkat yang sama dengan ruang lingkup proyek, waktu, dan biaya. Jika stakeholder sebuah proyek tidak puas dengan kualitas manajemen proyek atau produk yang dihasilkan dari proyek, tim proyek akan perlu menyesuaikan lingkup, waktu, dan biaya untuk memenuhi stakeholder. Memenuhi persyaratan tidak cukup hanya ditulis untuk lingkup, waktu, dan biaya. Untuk mencapai kepuasan pemangku kepentingan, tim proyek harus mengembangkan hubungan kerja yang baik dengan semua pemangku kepentingan dan memahami kebutuhan yang dinyatakan. Manajemen kualitas proyek melibatkan tiga proses utama: 1. Planning quality management Perencanaan manajemen kualitas meliputi identifikasi persyaratan kualitas dan standar yang relevan dengan proyek dan bagaimana memenuhinya. Memasukkan standar kualitas ke dalam desain proyek merupakan bagian penting dari perencanaan kualitas. Untuk proyek TI, standar kualitas mungkin termasuk memungkinkan untuk pertumbuhan sistem, merencanakan waktu respon yang wajar untuk sistem, atau memastikan bahwa sistem menghasilkan informasi yang konsisten dan akurat. Standar kualitas juga dapat berlaku untuk layanan TI. Keluaran utama perencanaan manajemen kualitas adalah rencana manajemen kualitas, rencana proses perbaikan, metrik kualitas, daftar periksa kualitas, dan update proyek dokumen. Sebuah metrik adalah standar pengukuran. Contoh metrik umum termasuk tingkat kegagalan produk, ketersediaan barang dan jasa, dan peringkat kepuasan pelanggan. 2. Performing quality assurance Pelaksanaan jaminan kualitas melibatkan evaluasi berkala kinerja proyek secara keseluruhan untuk memastikan bahwa proyek akan memenuhi standar kualitas yang relevan. Proses jaminan kualitas melibatkan mengambil tanggung jawab untuk kualitas di seluruh siklus hidup proyek. Manajemen puncak harus memimpin dalam menekankan peran seluruh karyawan terlibat dalam jaminan kualitas, terutama peran
73 manajer senior. Keluaran utama dari proses ini adalah permintaan perubahan, update rencana manajemen proyek, update dokumen proyek dan update proses aset organisasi. 3. Controlling quality Pengendalian kualitas melibatkan pemantauan hasil proyek tertentu untuk memastikan bahwa proyek memenuhi standar mutu yang relevan juga mengidentifikasi cara-cara untuk meningkatkan kualitas secara keseluruhan. Proses ini sering dikaitkan dengan alat-alat teknis dan teknik manajemen kualitas, seperti Pareto diagram, diagram kontrol kualitas, dan sampling statistik. Keluaran utama kontrol kualitas meliputi pengukuran kualitas kontrol, perubahan divalidasi, kiriman divalidasi, informasi kinerja, permintaan perubahan, update rencana manajemen proyek, update dokumen proyek dan update proses aset organisasi.
Gambar 2.33 Project quality management summary Sumber : Schwalbe et al. (2014:316)
Project Human Resource Management Manajemen sumber daya manusia (SDM) proyek mencakup prosesproses yang diperlukan untuk membuat penggunaan paling efektif dari orang yang terlibat dengan proyek. Manajemen SDM meliputi semua stakeholder proyek yaitu: sponsor, pelanggan, anggota tim proyek, staf
74 pendukung, pemasok pendukung proyek, dan sebagainya. Manajemen sumber daya manusia meliputi empat proses berikut: 1. Planning human resource management Perencanaan manajemen sumber daya manusia melibatkan identifikasi dan dokumentasi peran proyek, tanggung jawab, dan pelaporan hubungan. Output utama dari proses ini adalah rencana sumber daya manusia. 2. Acquiring the project team Mendapatkan tim proyek melibatkan menempatkan personil yang diperlukan untuk bekerja pada proyek. Output utama dari proses ini adalah tugas proyek staf, kalender sumber daya, dan update rencana pengelolaan proyek. 3. Developing the project team Mengembangkan tim proyek melibatkan pengembangan keterampilan individu
dan
kelompok
untuk
meningkatkan
kinerja
proyek.
Keterampilan membangun tim sering tantangan bagi banyak manajer proyek. Keluaran utama dari proses ini adalah penilaian kinerja tim dan update faktor lingkungan perusahaan. 4. Managing the project team Mengelola tim proyek melibatkan pelacakan kinerja anggota tim, memotivasi anggota tim, memberikan umpan balik tepat waktu, menyelesaikan masalah dan konflik, dan mengkoordinasikan perubahan untuk membantu meningkatkan kinerja proyek. Output dari proses ini meliputi permintaan perubahan, update manajemen rencana proyek, update dokumen proyek, update faktor lingkungan perusahaan, dan update proses aset organisasi.
75
Gambar 2.34 Project human resource management summary Sumber : Schwalbe et al. (2014:316)
Project Communications Management Tujuan
dari
manajemen
komunikasi
proyek
adalah
untuk
memastikan generasi tepat waktu dan tepat, pengumpulan, diseminasi, penyimpanan, dan disposisi informasi proyek. Ada tiga proses utama dalam proyek manajemen komunikasi: 1. Planning communications management Perencanaan manajemen komunikasi melibatkan menentukan informasi dan komunikasi kebutuhan para pemangku kepentingan. Siapa yang butuh informasi apa? Kapan mereka akan membutuhkannya? Bagaimana informasi diberikan kepada mereka? Output dari proses ini mencakup update rencana manajemen komunikasi dan proyek dokumen. 2. Managing communications Mengelola
komunikasi
melibatkan
bagaimana
menciptakan,
mendistribusikan, menyimpan, mengambil, dan membuang komunikasi proyek berdasarkan rencana pengelolaan komunikasi. Keluaran utama dari proses ini adalah komunikasi proyek, update dokumen proyek, update rencana manajemen proyek, dan update proses aset organisasi. 3. Controlling communications
76 Mengontrol komunikasi melibatkan pemantauan dan pengendalian komunikasi proyek untuk memastikan bahwa kebutuhan komunikasi pemangku kepentingan terpenuhi.
Gambar 2.35 Project communication management summary Sumber : Schwalbe et al. (2014:408)
Project Risk Management Tujuan dari manajemen risiko proyek dapat dilihat sebagai meminimalkan risiko negatif sekaligus memaksimalkan potensi risiko positif. Manajemen resiko digunakan untuk menggambarkan bahwa tim proyek telah mengidetifikasi dan menganalisis resiko. Risiko yang dikenal dapat dikelola secara proaktif. Namun, risiko tidak diketahui, atau risiko yang belum diidentifikasi dan dianalisa, tidak dapat dikelola. Manajer proyek yang baik, mengetahui praktik yang terbaik untuk mengidentifikasi dan mengelola risiko proyek. Enam proses utama yang terlibat dalam manajemen risiko: 1. Planning risk management Perencanaan manajemen risiko melibatkan bagaimana pendekatan dan kegiatan manajemen risiko proyek. Dengan meninjau rencana manajemen proyek, project charter, pemangku kepentingan terdaftar, faktor lingkungan perusahaan, dan proses aset organisasi maka tim proyek dapat membahas dan menganalisis kegiatan manajemen risiko untuk proyek-proyek khusus mereka. Output utama dari proses ini adalah rencana manajemen risiko.
77 2. Identifying risks Mengidentifikasi risiko melibatkan penentuan risiko yang mungkin mempengaruhi proyek dan mendokumentasikan karakteristik masingmasing. Output utama dari proses ini adalah awal dari sebuah daftar risiko. 3. Performing qualitative risk analysis Melakukan analisis risiko kualitatif melibatkan prioritas risiko berdasarkan probabilitas dan dampaknya. Setelah mengidentifikasi risiko, tim proyek dapat menggunakan berbagai alat dan teknik untuk menentukan peringkat risiko dan memperbarui informasi dalam daftar risiko. Output utama adalah update dokumen proyek. 4. Performing quantitative risk analysis Melakukan analisis risiko kuantitatif melibatkan perkiraan efek dari risiko numerik pada tujuan proyek. Keluaran utama dari proses ini adalah update dokumen proyek. 5. Planning risk responses Tanggapan perencanaan risiko melibatkan pengambilan langkahlangkah untuk meningkatkan peluang dan mengurangi ancaman untuk memenuhi tujuan proyek. Menggunakan output dari proses manajemen risiko sebelumnya, tim proyek dapat mengembangkan strategi respon risiko yang menghasilkan update rencana manajemen proyek dan dokumen proyek lainnya. 6. Controlling risk Pengendalian risiko melibatkan pemantauan identifikasi dan residual risiko, mengidentifikasi risiko baru, melaksanakan rencana respon risiko, dan mengevaluasi efektivitas strategi risiko sepanjang pelaksanaan proyek. Keluaran utama dari proses ini mencakup informasi kinerja pekerjaan, permintaan perubahan, dan update rencana manajemen proyek, dokumen proyek lainnya, dan proses aset organisasi.
78
Gambar 2.36 Project risk management summary Sumber : Schwalbe et al. (2014:446)
Project Procurement Management Keberhasilan proyek IT yang menggunakan sumber luar biasanya dikarenakan manajemen pengadaan proyek yang baik. Manajemen pengadaan proyek mencakup proses-proses yang diperlukan untuk memperoleh barang dan jasa untuk proyek dari luar organisasi. Ada empat proses utama dalam manajemen pengadaan proyek: 1. Planning procurement management Manajemen perencanaan pengadaan meliputi penentuan apa yang harus diperoleh, kapan dan bagaimana melakukannya. Dalam perencanaan pengadaan, seseorang harus memutuskan apa yang harus outsourcing, kontrak, dan menjelaskan detail pekerjaan untuk penjual potensial. Penjual yaitu provider, kontraktor, atau supplier yang menyediakan barang dan jasa kepada organisasi lain. Output dari proses ini mencakup rencana manajemen pengadaan, laporan pekerjaan pengadaan, dokumen pengadaan, kriteria pemilihan sumber, keputusan membuat atau membeli, perubahan permintaan, dan update dokumen proyek. 2. Conducting procurements Melakukan pengadaan melibatkan bagaimana mendapatkan tanggapan penjual, memilih penjual, dan pemberian kontrak. Output termasuk penjual yang dipilih, perjanjian, kalender sumber daya, permintaan
79 perubahan, dan update rencana manajemen proyek dan dokumen proyek lainnya. 3. Controlling procurements Mengontrol pengadaan melibatkan hubungan pengelolaan dengan penjual, pemantauan kinerja kontrak, dan membuat perubahan yang diperlukan. Keluaran utama dari proses ini mencakup informasi kinerja pekerjaan, permintaan perubahan, dan pembaruan rencana manajemen proyek, dokumen proyek, dan proses aset organisasi. 4. Closing procurements Penutupan pengadaan melibatkan penyelesaian setiap kontrak atau perjanjian, termasuk resolusi dari setiap item yang terbuka. Output meliputi penutupan pengadaan dan update proses asset organisasi.
Gambar 2.37 Project procurement management summary Sumber : Schwalbe et al. (2014:484)
80