1 BAB II LANDASAN TEORI 2.1. Pengertian Rumah Sakit Rumah sakit merupakan sebuah tempat, tetapi juga sebuah fasilitas, sebuah institusi dan sebuah org...
2.1. Pengertian Rumah Sakit Rumah sakit merupakan sebuah tempat, tetapi juga sebuah fasilitas, sebuah institusi dan sebuah organisasi. Pengertian yang paling klasik menyatakan bahwa rumah sakit adalah institusi atau fasilitas yang menyediakan pelayanan pasien rawat inap. American Hospital Association di tahun 1978 menyatakan bahwa rumah sakit adalah institusi atau fasilitas memberikan pelayanan kepada pasien berupa diagnostik dan terapeutik untuk berbagai penyakit dan masalah kesehatan,baik yang bersifat bedah maupun non bedah. Rumah sakit harus dibangun,dilengkapi dan dipelihara dengan baik untuk menjamin kesehatan dan keselamatan pasiennya dan harus menyediakan fasilitas yang lapang tidak berdesak-desakan dan terjamin sanitasinya bagi kesembuhan pasien. Rumah sakit merupakan lembaga yang padat modal, padat karya, padat pakar,padat teknologi dan padat pula masalah yang dihadapinya. Menurut Rowland &Rowland dalam buku Hospital Administration Handbook (1984) menyatakan bahwa rumah sakit adalah suatu sistem kesehatan yang paling kompleks dan paling efektif di dunia. SK Menteri Kesehatan RI No.983/Menkes/SK/XI/1992 menyebutkan bahwa rumah sakit adalah institusi yang memberikan pelayanan kesehatan yang bersifat dasar, spesialistik dan subspesialistik. Rumah sakit mempunyai misi memberikan pelayanan kesehatan yang bermutu dan terjangkau oleh masyarakat dalam rangka meningkatkan derajat kesehatan masyarakat. Tugasnya adalah melaksanakan upaya kesehatan secara berdaya guna dan berhasil guna dengan mengutamakanupaya penyembuhan dan pemulihan yang dilaksanakan secara serasi dan terpadu dengan upaya peningkatan dan pencegahan serta melaksanakan upaya rujukan. Untuk itu rumah sakit harus benar-benar berfungsi dengan baik sesuai yang tercantum di dalam aturan di atas.
8
9
2.2. Pengertian Sistem Suat sistem pada dasarnya adalah sekelompok unsur yang erat hubungannya satu dengan yang lain, yang berfungsi bersama – sama untuk mencapai tujuan tetentu. 2.2.1. Pendekatan sistem Pendekatan sistem merupakan suatu filsafat atau persepsi tentang struktur yang mengkordinasi kegiatan – kegiatan dan operasi – operasai dalam suatu organisasi dengan cara yang efisien dan yang paling baik. Suatu system dapat dirumuskan sebagai setiap kumpulan komponen atau subsitem yang dirancang untuk mencapai suatu tujuan. Dengan pendekatan system kita berhubungan dengan komponen perseorangan, dan kita lebih menekankan perannya di dalam system daripada perannya sebagai suatu keseluruhan individu. Keberhasilan komponen – komponen yang di pertimbangkan secara bersama sebagai suatu system mungkin jauh lebih besar daripada jumlah keberhasilan setiap komponen yang dipertimbangkan secara terpisah.(Tata Sutabri, 2012:6) Norman L.Enger menyatakan bahwa suatu sistem dapat terdiri atas kegiatan – kegiatan yang berhubungan guna mencapai tujuan – tujuan perusahaan seperti pengendalian inventasi atau penjadwalan produksi. Sedangkan Prof.Dr.Mr.S. Prajudi Atmosudirjo menyatakan bahwa suatu sistem terdiri atas objek – objek atau unsur – unsure atau komponen – komponen yang berkaitan dan berhubugan satu sama lainnya sedemikian rupa sehingga unsure – unsure tersebut merupakan suatu kesatuan pemrosesan atau pengolahan yang tertentu. Pendekatan sistem yang menekankan pada komponen akan lebih mudah digunakan untuk mempelajari system dengan tujuan analisis dan perancangan. Suatu system mempunyai maksud tertentu. Ada yang menyebutkan maksud dari suatu system adalah untuk mencapai suatu tujuan(goal) dan ada yang menyebutkan untuk mencapai suatu sasaran (objectivies). Tujuan biasanya dihubungkan dengan ruang lingkup yang
10
lebih luas sementara sasaran memiliki ruang lingkup yang lebih sempit. Bila merupakan sistem utama, misalnya sistem bisnis, maka istilah goal lebih tepat diterapkan. Untuk system akutansi atau system – system lainnya yang merupakan subsistem dari system bisnis, maka istilah objectives lebih tepat. Jadi tergantung dari ruang lingkup dari mana memandang system tersebut.(Tata Sutabri, 2012:7) 2.2.2. Daur Hidup Sistem Siklus hidup sitem (system life cycle) adalah proses evolusioner yang diikuti dalam penerapan sistem atau subsistem informasi berbasis computer. Siklus hidup sistem terdiri dari serangkaian tugas yang mengikuti langkah – langkah pendekatan sistem, karena tugas-tugas tersebut mengikuti pola yang teratur dan dilakukan secara top down. Siklus hidup sistem sering disebut sebagai pendekatan air terjun (waterfall approach) bagi pembanguna dan pengembangan sistem. Pembangunan sistem hanyalah salah satu dari rangkaian daur hidup suatu sistem. Meskipun demikian proses ini merupakan aspek yang sangat penting. Kita akan melihat beberapa fase/tahapan daur hidup suatu sistem.(Tata Sutabri, 2012:20)
a.
Mengenali adanya kebutuhan Sebelum segala sesuatu terjadi, pastilah terlebih dahulu timbul suatu kebutuhan atau problema yang harus dapat dikenali sebagaimana adanya. Kebutuhan dapat terjadi sebagai hasil perkembangan organisasi. Volume kebutuhan itu meningkat melebihi kapasita dari sistem yang ada. Semua kebutuhan ini harus dapat didefinisikan dengan jelas. Tanpa adanya kejelasan mengenai kebutuhan yang ada, pembangunan sistem akan kehilangan arah dan efektivitasnya.
11
b.
Pembangunan sistem Suatu proses atau seperangkat prosedur yang harus diikuti guna menganalisis kebutuhan yang timbul dan membangun suatu sistem untuk memenuhi kebutuhan tersebut.
c.
Pemasangan sistem Setelah tahap pembangunan sistem selesai, kemudia sistem akan dioperasikan pemasangan sistem merupakan tahap yang penting dalam daur hidup sistem, dimana peralihan dari tahap pembangunan menuju tahap operasional adalah pemasangan sistem yang merupakan langkah akhir dari suatu pembangunan sistem.
d.
Pengoperasian sistem Program- program computer dan prosedur-prosedur pengoperasian yang membentuk suatu sistem informasi semuanya bersifat statis, sedangkan organisasi yang ditunjang oleh sistem informasi selalu mengalami
perubahan
karena
pertumbuhan
kegiatan,
perubahan
peraturan dan kebijaksanaan, ataupun kemajuan teknologi. Untuk mengatasi perubahan perubahan tersebut, sistem harus diperbaiki atau diperbaharui. e.
Sistem menjadi usang Kadang-kadang perubahan yang terjadi begitu drastic sehingga tidak dapat diatasi hanya dengan melakukan perbaikan pada sistem yang sedang berjalan. Tiba saat dimana secara ekonomis dan teknis, sistem yang ada sudah tidak layak lagi untuk dioperasikan dan sistem yang baru perlu dibangun untuk menggantikannya.(Tata Sutabri, 2012:20) Sistem informasi kemudian akan melanjutkan daur hidupnya. Sistem dibangun untuk memenuhi kebutuhan. Sistem beradaptasi tergadap aneka perubahan lingkungannya yang dinamis hingga kemudia sampai pada kondisi dimana sistem tidak dapat lagi beradaptasi. Sistem baru kemudian dibangun untuk menggantikannya. Daur hidup sistem ini dapat dilihat pada gambar.(Tata Sutabri, 2012:21)
12
Mengenali Adanya Kebutuhan
Sistem Menjadi Usang
Pengoperasian Sistem
Pembangunan Sistem
Pemasangan Sistem
Gambar 2. 1 Daur Hidup Sistem
2.3. Sisem Informasi Sistem informasi adalah suatu sistem di dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian yang mendukung fungsi operasi organisasi yang bersifat manajerial dengan kegiatan strategi dari suatu organisasi untuk dapat menyediakan laporan-laporan yang diperlukan oleh pihak tertentu.(Tata Sutabri, 2012:38)
2.3.1. Komponen Dan Tipe Sistem Informasi Sistem informasi yang terdiri dari komponen-komponen yang disebut dengan istilah blok bangunan (building block), yang terdiri dari blok masukan, blok keluaran, blok tekhnologi, blok basis data, dan blok kendali. Sebagai suatu sistem, keenam blog tersebut saling berinteraksi satu dengan yang lain membentuk satu kesatuan untuk mencapai sasaran.(Tata Sutabri, 2012:39) 1.
Blok masukan (input block)
13
Input mewakili data yang masuk ke dalam sistem informasi. Yang dimaksud dengan input disini termasuk metode dan media untuk menangkap data yang akan dimasukan, yang dapat berupa dokumendokumen dasar. 2.
Blok model (model block) Blok ini terdiri dari kombinasi prosedur, logika, dan model matematik yang akan memanipulasi data input dan data yang tersimpan di basis data dengan cara yang sudah tertentu untuk menghasilkan keluaran yang diinginkan.
3.
Blok keluaran(output block) Produk dari sistem informasi adalah keluaran yang merupakan informasi yang berkualitas dan dokumentasi yang berguna untuk semua tingkatan manajemen serta semua pemakai sistem.
4.
Blok teknologi (technology block) Teknologi merupakan tool box dalam sistem informasi. Teknologi digunakan untuk menerima input, menjalankan mmodl, menyimpan dan mengakses data, menghasilkan dan mengirimkan keluaran dan membantu pengendalian sistem secara keseluruhan. Teknologi terdiri dari 3 (tiga) bagian utama, yaitu teknisi (brainware), perangkat lunak (software), dan perangkat keras (hardware).
5.
Blok basis data (database) Basis data (database) merupakan kumpulan data yang saling berkaitan dan berhubungan satu dengan yang lainnya, tersimpan di perangkat keraskomputer dan perangkat lunak digunakan untuk memanipulasinya. Data perlu disimpan dalam basis data untuk keperluan penyediaan informasi lebih lanjut.Data didalam basis data perlu diorganisasikan sedemikian rupasupaya informasi yang dihasilkan berkualitas. Organisasi basis data yang baik juga dengan menggunakan
14
perangkat lunak paket yang disebut dengaan DBMS (database management system). (Tata Sutabri, 2012:39) 6.
Blok kendali(control block) Banyak hal dapat merusak sistem informasi, seperti bencana alam, api, temperature, air, debu, kecurangan-kecurangan, kegagalan paada sistem itu sendiri, ketidak-efisienan, sabotase, dan lain sebagainya. Beberapa
pengendalian
perlu
dirancang
dan
diterapkan
untuk
meyakinkan bahwa hal-hal yang dapat merusak sistem dicegah dan bila terlanjur terjadi maka kesalahan-kesalahan dapat dengan cepat diatasi. Tata Sutabri (2012:40) 2.3.2. Perencenaan Sistem Informasi Perenceanaan sistem informasi , terjemahan dari Information System
Planning
(ISP),
menjelaskan
bagaimana
menerapkan
pengetahuan tentang sistem informasi ke dalam organisasi agar dapat terus maju dan eksis bila organisasi berkembang sesuai dengan tekhnologi dan teori modern. Namun, hal ini tidak berarti bahwa sistem informasi dan tekhnologi informasi merupakan suatu hal yang kaku. Sistem
informasi
dapat
dibentuk
sesuai
dengan
kebutuhan
organisasi.(Tata Sutabri, 2012:41)
2.4. Pengembangan Sistem Informasi Pengembangan sistem dapat berarti menyusun suatu sistem yang baru untuk menggantikan sistem yang lama secara keseluruhan atau memperbaiki sistem yang telah ada. (Tata Sutabri, 2012:21).
2.4.1. Prinsip pengembangan sistem Sewaktu akan membangun atau mengembangkan suatu sistem informasi, ada beberapa prinsip yang tidak boleh dilupakan. Prinsip itu adalah sebagai berikut:
15
a)
Sistem yang dikembangkan adalah untuk manajemen Sistem ini selesai dikembangkan, maka akan menggunakan informasi dari sistem ini adalah manajemen, sehingga sistem harus dapat memenuhi kebutuhan manajemen.
b)
Sistem yang dikembangkan adalah investasi modal yang besar Untuk pemngembangan sistem membutuhkan dana yang tidak sedikit, apalagi menggunakan tekhnologi yang mutakhir.
c)
Sistem yang dikembangkan memerlukan orang yang teridik Manusialah yang berperan atas keberhasilan suatu sistem, baik dalam proses pengembagan, penerapan, maupun operasinya. Penggunaan sistem harus merupakan orang terdidik dan menguasai segala permasalahan yang ada dan mempunyai solusi akan apa yang dilakukan.
d)
Tahapan kerja dan tugas yang harus dilakukan dalam pengembangan sistem Proses pengembangan sistem umumnya melibatkan beberapa tahapan kerja dan melibatkan beberapa personel dalam bentuk suatu tim untuk mengerjakannya.
e)
Proses pengembangan sistem tidak harus urut Tahapan kerja pengembangan sistem merupakan langkah-langkah yang harus dilakukan. Langkah ini dapat saja tidak berurutan, tetapi dapat dilakukan secara bersama-sama.
f)
Takut membtalkan proyek Kepurusan untuk meneruskan atau membatalkan proyek memang harus didasarkan evaluasi yang cermat. Untuk kasus tertentu di mana proyek terpaksa harus dihentikan atau dibatalkan atau dibatalkan karena sudah tidak layak lagi, maka pembatalan itu harus dilakukan dengan tegas.
g)
Dokumentasi harus ada untuk pedoman dalam pengembangan sistem Kegagalan untuk membuat suatu dokumentasi kerja merupakan salah satu hal yang sering terjadi dan merupakan kesalahan kritis yang dibuat oleh analis sistem.(Tata Sutabri, 2012:54-55)
16
2.4.2. Siklus hidup pengembangan sistem Pengembangan sistem informasi berbasis komputer merupakan tugas yang kompleks yang membutuhkan banyak sumber daya dan dapat memakan
waktu
berbualan-bulan
bahkan
bertahun-tahun
untuk
menyelesaikannya. Jika setelah sistem dioperasikan masih timbul berbagai masalah yang kritis yang tidak dapat diatasi, maka perlu dikembangkan lagi suatu sistem untuk mengatasinya. Artinya kita harus kembali ke proses pertama, yaitu perencanaan sistem.(Tata Sutabri, 2012:56) Siklus hidup pengembangan sistem merupakan suatu bentuk yang digunakan untuk menggambarkan tahapan utama da langkah-langkah pada tahapan tersebut dalam proses pengembangan sistem. Siklus hidup pengembangan sistem informasi menyajian metodologi atau proses yang diorgansasikan guna membangun suatu sistem informasi. Dengan demikan dalam membangun suatu sistem informasi maka sejumlah tugas harus dapat diselesaikan. Beberapa tugas harus dilaksanakan dalam suatu uutan tertentu. Sejumlah personel terlibat. Usaha0usaha mereka harus dikoordinasikan untuk mencapai suatu efektivitas dan efisiensi yang tinggi.(Tata Sutabri, 2012:56)
2.5. Metodologi Berorientasi Objek Metodologi berorientasi objek adalah usatu strategi pembangunan perangkat lunak yang mengorganisasikan perangkat lunak sebagai kumpulan objek yang berisi data dan operasi yang diberlakukan terhadapnya. Metodologi berorientasi objek s merupakan suatu cara bagaimana sistem perangkat lunak dibangun melalui pendekatan objek secara sistematis. Metode berorientasi objek diddasarkan pada penerapan prinsip-prinsip secara komplekivitas.
Metode
berorientasi objek meliputi rangkaian aktivitas analisis berorientasi objek, perancangan berorientasi objek, dan pengujian berorientasi objek. (Rosa A.S dan M. Salahudin, 2010:1)
17
Pada saat ini, metode berorientasi objek banyak dipilih karena metodologi lama banyak menimblkan masalah seperti adanya kesulitan pada saat mentransformasi hasil dari satu tahappengembangan ke tahap berikutnya, misalnya pada metode pendekatan terstruktur, jenis aplikasi yang dikembangkan saat ini berbeda dengan masa lalu. Aplikasi yang dikembangkan pada saat ini sangat beragam (aplikasi bisnis, real-time, utility, dan sebagainya) dengan platform yang berbeda-beda, sehingga menimbulkan tuntutan kebutuhan metodologi pengembangan yag dapat mengakomodasi ke semua aplikasi tersebut. (Rosa A.S dan M. Salahudin, 2010:1)
2.5.1. Keuntungan menggunakan metodologi berorientasi objek 1.
Meningkatkan produktivitas Karena kelas dan objek yang ditemukan dalam suatu masalah masih dapat dipakai ulang untuk masalah lainnya yang melibatkan objek terlibat (reusable).
2.
Kecepatan pengembangan Karena sistem yang dibangun dengan baik dan benarr pada saat analisis dan perancangan akan menyebabkan berkurangnya kesalahan pada saat pengodean.
3.
Kemudahan pemeliharaan Karena dengan model objek, pola-pola yang cenderung tetap dan stabil dapat dipisahkan dan pola-pola yang mungkin sering berubahubah.
4.
Adanya konsistensi Karena sifat pewarisan dan penggunaan notasi yang sama pada saat analisis, perancangn maupun pengodean.
5.
Meningkatkan kualitas perangkat lunak
18
Karena pendekatan pengembangan lebih dekat dengan dunia nyata dan adanya konsistensi pada saat pengembangannya, perangkat lunak yang dihasilkan akan mampu memenuhi kebutuhan pemakai serta mempunyai sedikit kesalahan.
2.5.2. Waterfall Model Waterfall model sebagi salah satu teori dasar dan seakan wajib di pelajari dalam konteks siklus hidup perangkat lunak, merupakan sebuah siklus yang terdiri dari mulai fase hidup perangkat lunak sebelum terjadi sampai pasca produksi. Beberapa buku menyebutkan model ini sebagai model linear, tetapi beberapa referensi lain masih tetap menggunakan istilah waterfall model. Langkah – langkah yang terdapat dalam waterfall model juga berbeda antara satu referensi dengan referensi yang lain. Terdapat referensi yang lain yang mengatakan bahwa dalam waetrfall model haya etrdiri dari empat langkah, sedangkan Sommervile menyatakan bahwa waterfall model memiliki enam tahapan. Bahkan terdapat referns ain yang menyatakan bahwa waterfall model sesungguhnya memiliki delapan tahapan. Waterfall sendiri memiliki definisi bahwa sebuah proses hidup perangkat lunak memiliki sebah proses yang linear dan sekunsial . meski demikian dalam perkebangannya tahpaan yang telah ada dapat dimodifikasi dari bentuk aslinyya dengan melakukan adapasi pada kebutuhan sistem yang ada. 2.5.3. Tahapan Waterfall Model Dalam buku ini menganut paham bahwa waerfall model memiliki enam tahapan yaitu : 1.
Definisi kebutuhan (requirement definition).
2.
Desain suatu sistem dan perangkat lunak (sofware design and system)
3.
Implementasi dan testing unit (implementation and Unit testing.
19
4.
Integrasi dan testing sistem (integration and system testing).
5.
Uji coba (testing).
6.
Operasional dan pemeliharaan (operation and maintence). Definisi kebutuhan (requrement definition)
Desain dan perangkat lunak (software design and system)
Implementasi (implementation)
Integrasi (Integration)
Uji coba (testing)
Pemeliharaan (maintence)
Gambar 2. 2 Waterfall Model
2.6. Analisa Dan Perancangan Sistem Analisis dan perancangan sistem didefinisikan sebagai bagaimana memahami dan mensesifikasi dengan detail apa yang harus dilakukan sistem. Sementara sistem desain diartikan sebagai menjelaskan dengan detail bagaimana bagian – bagian dari sistem informasi diimpleentaskan. Dengan demian analisis dan sistem informasi (ANSI) bisa didefinisikan sebagi: proses organisasional kompleks di mana sistem informasi berbasis komputer diimplementasikan. Atau bisa diringkas sebagai berikut : Analysis : mendefinisikan masalah
From requirement to spesification
Dengan : memecahkan masalah
From spesification to implementation
20
Ada pertanyaan kunci, mengapa urutan tahapan-tahapan dalam ANSI menjadi sangat penting. Adda beberapa alasan spesifik. Pertama kesukaan suatu sistem informasi tergantung pada analisis dan perancangan yang baik. Tahapan analisis akann menetukan masalah apa yang harus diselesaikan pada organisai atau perusahaa. Kesalahan dalam tahpap ini akan mengakibatkan masalah tetap ada walaupun sistem nformasu telahh diimplementasikan. Sementara tahapan desain akan sangat menentukan seperti apa sistem akan berfungasi. Walaupun pada tahapan analisis masalah utama susdah terpetakandengan benar, kesalahan desain akan mengakibakan kegagalan penyelesaian masalah oleh sistem komputer. Dengan demikian, dua langkah ini adalah langkah yang sangat menetukan untuk pengembangan sisetem. Kedua, metode ANSI merupakan metode yng cukup lama dipakai untuk membangun perangkat lunak konvensional. Dengan demikian, kesahihan langkahlangkah baku yang ada sudah teruji. Metode ini juga telah digunakan secara luas di berbagai industri (tekhnologi yang sudah teruji). Ketiga, ANSI menawarkan profesi baru sebagai seorang analis. Di bagian sebelumnya, telah kita bahas bahwa stakeholder yang bertanggung jawab ada pelaksanaan seluruh tahapan ANSI adalah seorang analis. Dengan perkembangan industri sistem informasi sistem informasi maka sistem analisi merupakan bagian dati karir dalam dunia IT, menawarkan banyak kesenangan dan tantangan, serta gaji yang tidak rendah. Dan permintaan akan keahlian seperti keahliian, tekhnis, interpersonal, dan manajerial. Hal ini bisa dilihat dari tanggung jawab seorang analis berdasarkan pendekatan ANSI, yang meliputi: a.
Bagaimana membangun sistem informasi.
b.
Bagaimana menganalisis kebutuhan dari sistem informasi.
c.
Bagaimana merancang sebuar sistem informasi berbasis komputer.
d.
Bagaimana memecangkan masalah dalam organisasi melalui sistem informasi.(Hanif Al Fatta, 2007, p:24-25 )
21
2.6.1. UML Unified Model Language (UML), muncul karena adanya kebutujan pemodelan
visual
untuk
menspesifikasikan
,
menggambarkan,
menmbangun dan dokumentasi dari sistem perangkat lunak. UML merupakan bahasa visual untuk pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks-teks pendukung. UML hanya berfungsi untuk melakukan pemodelan. Jadi penggunaan UML tidak terbatas pada metodologi tertentu, eskipun pada kenyataanya
Use Case Diagram Use case diagram merupakan pemodelan untuk kelakukan
(behavior) sistem informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Secara kasar, use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi itu. Syarat penamaan pada use case adalah nama didefinisikan sesimpel mungkin dan dapat dipahami. Ada dua hal utamapada use case yaitu pendefinisian apa yang disebut aktor dan use case.
Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat itu sendiri, jad walaupun simbol dari aktor adalah gambar dan orang tetapi aktor belum tentu merupakan orang.
Use case merupakan fungsionalitas yang disediaan sistem sebagai unitunit yang saling bertukar pesan antara unit atau faktor.(Rosa A.S-M. Shalahuddin, 2011, p: 130-131)
22
Tabel 2. 1 Model Use Case Diagram
Simbol
Nama Simbol Aktor
Keterangan Seseorang atau sesuatu yang berinteraksi dengan sistem.
Use Case
Menggambarkan bagaimana seseorang akan menggunakan sistem.
Aliran Event
Untuk
mendokumentasikan
aliran-aliran
logika dalam setiap Use Case. Include dan
Include memungkinkan Use Case untuk
Extends
menggunakan fungsional yang di sediakan oleh Use Case lainnya. Extends memungkinkan suatu Use Case memiliki
kemungkinan
memperluas
fungsionalitas yang di sediakan oleh Use Case lainnya. Generalisasi
Digunakan untuk memperlihatkan bahwa beberapa aktor atau usecase memiliki sesuatu yang bersifat umum.
23
Gambar 2. 3 Contoh Use Case Diagram
2.6.1.2.
Activity Diagram Diaram aktifitas atau activuty diagram mengagambarkan workflow
(aliran kerja) atau aktifitas dari sebuah sistem atau proses bisnis. Yang perlu diperhatikan disini adalah bahwa diagram menggambarkan aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dialakukan oleh sistem. Diagram aktivitas juga banyak digunakan untuk mendefinisikan hal-hal berikut:
Rancangan proses bisnis di mana setiap urutan aktivitas yang digambarkan merupakan proses bisnis sistem yang didefinisikan.
Urutan atau pengelompokan tampian dari sistem /user interface di mana setiap
aktivitas dianggap memiliki sebuah rancangan antarmuka
tampilan.
Rancangan pengujian yang perlu didefinisikan kasus ujianya.(Rosa A.SM. Shalahuddin,2011, p: 134-135)
24
Tabel 2. 2 Model Activity Diagram
Simbol
Keterangan Start (titik awal), merupakan tanda awal dari sebuah aktivitas. End, (titik akhir), merupakan tanda berakhirnya sebuah aktivitas. Activity
(aktifitas),merupakan
sebuah
gambaran
aktivitas yang terjadi. Branch
(cabang),
pilihan
untuk
pengambilan
keputusan fork (garpu), digunakan untuk menggambarkan sebuah kegiatan yang dilakukan secara bersamaan atau untuk meggabungkan Atau
Nama swimlane
dua
kegiatan
yang
dilakukan
bersamaan menjadi satu.
Swimlane,
memisahkan
organisasi
bisnis
yang
bertanggung jawab terhadap aktifitas yang terjadi.
25
Pasien
Sistem Mulai
Menu Utama
Tampilkan menu utama
Pilih menu utama
Home
Sejarah
Layanan
Kontak
Login
Menampilkan menu yang dipilih
Selesai
Gambar 2. 4 Contoh Activity Diagram
2.6.1.3.
Sequence Diagram Diagram sekuen menggambarkan kelakuan objek pada use case
dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antarobjek. Oleh karena itu menggambar diagram sekuen maka harus diketahui objek – objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansi menjadi objek itu. Banyaknya diagram sekuen yang harus digambar adalah sebanyak pendefinisian use case yang memiliki proses sendiri atau yang paling penting semua use case yang telah didefinisikan interaksi jalannya pesan sudah dicakup pada diagram sekuen sehingga semakin banyak use case
26
yang didefinisikan maka diagram sekuen yang harus dibuat juga semakin banyak.(Rosa A.S-M. Shalahuddin, 2011, p: 137-138) Tabel 2. 3 Model Sequence Diagram
Simbol
Nama Simbol
Object LifeLine
Activation
Message
Message (Call)
Keterangan
Partisipan Form
Menyatakan objek dalam keadaan aktif dan berinteraksi pesan. Pesan yang mengambarkan komunikasi yang terjadi antar objek. Menyatakan bahwa suatu objek memanggil operasi/metode yang ada pada objek lain atau dirinya sendiri.
Message (Call)
Menyatakan bahwa suatu objek memanggiloperasi/metode yang ada pada objek lain atau dirinya sendiri.
Message (return)
Pesan yang dikirim untuk diri sendiri.
Lifeline
Menyatakan kehidupan suatu objek.
Message
Pesan yang dikirim untuk diri sendiri.
(return)
27
Gambar 2. 5 Contoh Sequence Diagram
2.7. Basis Data Basis data (database) terdiri atas 2 kata, yaitu basis dan data. Basis kurang lebih dapat diartikan sebagai markas atau gudang, tempat bersarang/berkumpul. Sedangkan data adalah representasi faktur dunia nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa, konsep keadaan, dan sebagainya, yang direkam dalam bentuk, angka, huruf , simbol, teks, gambar, bunyi, atau kombinasinya. (Fathansyah 2007:2) Basis data sendiri dapat didefinnisikan dalam sejumlah sudut pandang seperti :
Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan dengan cepat dan mudah
Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redundasi) yang tidak perlu, untuk memenuhi berbagai kebutuhan.
Kumpulan file/tabel/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis.
28
Basis data dan lemari arsip sesungguhnya memiliki prinsip kerja dan tujuan yang sama. Prinsip utamanya adalah pengaturan data/arsip. Dari tujuan utamanya adalah kemudahan dan kecepatan dalam pengambilan kembali data/arsip. Perbedaanya hanya terletak pada media penyimpanan yang digunakan. Jika lemari arsip menggunakan lemari besi dan kayu sebagai media penyimpanan, maka basis data menggunakan media penyimpanan elektronis seperti disk (disket atau harddisk). Hal ini merupakan konsekuensi yang logis karena lemari arsip langsung dikelola/ditangani oleh manusia, sementara basis data dikelola melalui perantaraan alat/mesin pintar elektronis (yang kita kenal sebagai komputer). Perbedaan media ini yang selanjutnya melahirkan perbedaa-perbedaan lain yang menyangkut jumlah dan jenis metode/cara yang dapat digunakan dalam upaya penyimpanan.
2.8. Pemrograman Program komputer adalah serangkaian instruksi yang ditulis dengan menggunakan suatu bahasa program yang dipilih untuk memberi perintah kepada komputer tentang apa yang harus dikerjakannya. Kita semua sudah mengerti bahwa komputer tidak lain dari perangkat elektronik yang bekerja karena adanya arus listrik yang dialirkan ke berbagai komponennya. Pertanyaanya adalah bagaimana komputer mengerti program yang diberikan kepadanya? Sebenarnya komputer tidak mengerti program yang diberikan paddanya kecuali program ini telah diterjemahkan ke dalam bahasa mesin (machine language). Bahasa mesin ini berupa pulsa biner yang memicu rangkaian elektronik untuk bekerja, yang dengan demikian komputer bekerja. Karena manusia sulit untuk mengerti bahasa mesin maka diciptakanlah bahasa program komputer, di mana setiap bahasa program ini diperlengkapi dengan interpreter dan atau kompiler. Interpreter adalah progrram yang menerjemahkan inputnya menjadi bahasa mesin sehingga bisa dijalankan leh komputer. Kompiler adalah program yang menerjemahkan suatu program dalam bahasa tertentu menjadi suatu kode yang dekat dengan bahasa mesin seperti kode assembly atau ke kode bytecode. Hasil dari kompiler kemudian dijadian bahasa
29
mesin oleh interpreter, baik interpreter yang harus diaktifkan lebih dulu ataupun interpreter yang secara otomatis dijalankan setelah proses kompilasi selesai. (Suarga p:14,15) 2.8.1. Siklus program komputer Penulisan program komputer melewati siklus:
Analisis : melakukan analisis terhadap masalah yang akan diselesaikan dengan program.
Desain : melakukan desain penyesuaian, biasanya melalui alat bantu seperti flowchart atau algoritma yang tidak lain merupakan susunan langkah strategi dan logika penyelesaian.
Pengodean : hasil desain diterjemahkan ke dalam bahasa program yang dipilih dan diketik ke dalam file komputer yang disebut file source.
Kompilasi : proses penerjemahan program (source) ke dalam kode objek yang sesuai, biasanya disertai pemeriksaan sinteksis dari program. Bila ditemukan kesalahan ketik atau kesalahan perintah maka kompiler akan melaporkan kesalahan tesebut.
Pengujian : Apabila proses kompilasi sukses maka program bisa diuji coba dengan memberikan data sesuai keperluan dan kemuf=dian hasilnya diamati. Apabila output yang diharapkan tidak sesuai berarti ada kesalahan logika atau strategi dalam desain sehingga perlu ditinjau kembali, bahkan kadangkala harus kembali ke langkah analisis.
Implementasi : Setelah lolos uji coba maka program dapat digunakan sesuai tujuan pembuatan.
2.9. Alat Bantu 2.9.1. XAMPP Xampp adalah salah satu paket software yang erdiri dari apache, my sql, php, dan my sql dan my admin. Mengapa menggunakan xampp?, karena xampp sangat mdah penggunaanya, terutama jika anda seorang pemula. Proses instalaasi xampp sangatlah mudah karena tidak perlu
30
melakukan konfigurasi apache, php, dan my sql secara manual, xampp melakukn instalasi dan konfigurasi secara otomatis. Asal kata dari XAMPP adalah singkatan yang masing-masing hurufnya adalah: 1.
X (simbol angka 4 romawi), Program ini dapat dijalankan dibanyak sistem operasi, seperti Windows, Linux, Mac OS, dan Solaris.
2.
A (Apache), merupakan aplikasi web server. Tugas utama apache adalah menghasilkan halaman web yang benar kepada user berdasarkan kode PHP yang dituliskan oleh pembuat halaman web.
3.
M (MySQL), merupakan aplikasi database server.
4.
P (PHP), bahasa pemrograman web. Bahasa pemrograman PHP merupakan bahasa pemrograman untuk membuat web yang bersifat server-side scripting.
5.
P (PERL), bahasa pemrograman. Mengenal bagian XAMPP yang biasa digunakan pada umumnya :
1.
Htdoc, adalah folder tempat meletakkan berkas-berkas yang akan dijalankan, seperti berkas PHP, HTML dan skrip lain.
2.
PhpMyAdmin, merupakan bagian untuk mengelola basis data MySQL yang ada dikomputer. Untuk membukanya, buka browser lalu ketikkan alamat http://localhost/phpMyAdmin, maka akan muncul halaman phpMyAdmin.
3.
Kontrol Panel yang berfungsi untuk mengelola layanan (service) XAMPP. Seperti menghentikan (stop) layanan, ataupun memulai (start).
31
Gambar 2. 6 Tampilan XAMPP
2.9.2. Dreamweaver Dreamweaver merupakan perangat lunak yang ditunjukan untuk membuat suatu situs web. Versi terbaru dari dreamweaver adalah dreamweaver cs4. Versi ini memiliki peforma lebih baik dan memiliki tampilan yang memudahkan anda untuk meembuat dan mengelola halaman web, termasuk diantaranya dalam hubungannya dengan bahasa pemrograman PHP dan MySQL.
32
Gambar 2. 7 Tampilan Dreamweaver
2.9.3. PHP PHP diambil dari PHP: Hypertext Preprocessor namun banyak juga yang menyebutkan bahwa PHP itu adalah Personal Home Page. PHP berada di bawah lisensi GNU yang berarti dapat digunakan secara bebas tanpa harus membayar lisensi apapun. PHP dibuat pertama kali oleh seorang rekayasa perangkat lunak (software engineering) yang bernama Rasmus Lerdoff. Rasmus Lerdoff membuat halaman web PHP pertamanya tahun 1994. PHP merupakan skrip yang diangkat dari skrip PERL (skrip cikal bakal PHP)., skrip yang lebih dulu ada sebelum PHP. PHP merupakan skrip sisi server (server side script) di mana kode program PHP hanya dapat dilihat pada sisi server. Di sisi klien yang tampil hanyalah kode HTML-nya saja. PHP dijalankan dengan menggunakan perangkat lunak yang berperan sebagai php server. Perangkat lunak php server yang sering digunakan saat ini antara lain xampp, appserv, dan phptriad. Ketiga perangkat lunak tersebut sudah dipaket dengan DBMS mysql di dalamnya.(Rosa A.S-M. Shalahuddin, 2010, p:244-245) 2.9.4. My Sql
33
My sql adalah program
database yang mampu mengirim dan
menerima data dengan sangat cepat dan multi user. My sql memiiki dua bentuk lisensi, yaiitu free software dan shareware. Penuis sediri dalam menggunakan buku ini menggunakan my sql yang free software karena bebas menggunakan database ini untuk keperluan pribadi atau usaha tanpa harus mebeli atau membayar lisensi, yang berada di bawah lisensi GPU/GPL (gengeral public license), yang dapat anda download pada alamat resminya http://www.mysql.com. (Sudarma S., Jakarta, 2010, p:5) Jika anda ingin membuat website yang interaktif dan dinamis, perlu adanya media penyimpanan data yang fleksibel dan mudah untuk diakses. Dalam bahasa pemograman sering ada istilah database. Database adalah kumpulan data-data yang saling terkait, tersimpan, dan mudah diakses. (Heni A. Puspitosari, 2011, p:19) Salah satu program yang dapat digunakan sebagai database adalah my sql. My sql merupakan salah satu software untuk database serveryang banyak digunakan. My sql bersifat open source dan menggunakan sql. Y sql bisa dijalankan di berbagai platform misalnya windows, linux, dan lain sebagainya.(Heni A. Puspitosari, 2011, p:19) My sql memiliki beberapa kelebihan antara lain: 1.
Multiuser. My sql dapat digunakan oleh beberapa user dalam waaktu yang beersamaan tanpa mengalami masalah.
2.
Peformance tuning. My sql memiliki kecepatan yang bagus dalam menagani query sederhana, yaitu dapat memproses lebih banyak sql per satuan waktu.
3.
Jenis kolom . my sql memiliki tipe kolom yang sangat kompleks, seperti signed/unsigned integer, float, double, char, text, date, dan timestamp, dan masih banyak lagi.
4.
Perintah dan fungsi . mysql memiliki operator dan fungsi secara penuh dan mendukung perintah select dan where dalam perintah query.
5.
Keamanan. Mysql memilki keamanan yang bagus karena beberapa lapisan keamanan seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang lengkap serta sandi tersenkripsi.
34
6.
Skalabilitas dan pembatasan. My sql mampu menangani basis data dalam skala besar, dengan jumlah rekaman (record) lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu, batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
7.
Konektivitas.
Mysql
dapat
melakukan
koneksi
dengan
klien
menggunakan protokol tcp/ip, unix soket (UNIX), atau named pipes (NT). 8.
Lokalisasi. My sql dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa.
9.
Antar muka. Mysql memiliki interface (antar muka) terhadap aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Aplication Programming Interface).
10. Probabilitas. My sql dapat berjalan stabil pada berbagai sistem operasi seperti windows, linux, freeBSD, mac OS X server, solaris, amiga, dan masih banyak lagi. 11. Open source. My sql didistribusikan secara open sorce, di bawah lisensi GPL sehingga dapat digunakan secara gratis. 12. Klien dan peralatan. My sql dilengkapi dengan berbagai peralatan yang dapat digunakan unuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petujuk online. 13. Struk tur dan tabel. My sql memliki struktur tabel yang lebih fleksibel dalam menangani ALTER ABLE, dibandingkan basis data lainnya, misalnya oracle.(Heni A. Puspitosari, 2011, p:20)
2.9.5. Photoshop Photoshop
adalah
software
yang
digunakan
untuk
memodifikasikan gambar atau foto secara profesional baik meliputi modifikasi
obyek
yang
sederhana
maupun
yang
sulit
sekalipun.Photoshop merupakan salah satu software yang berguna untuk mengolah gambar berbasis bitmap, yang mempunyai tool dan efek yang
35
lengkap sehingga dapat menghasilkan gambar atau foto yang berkwalitas tinggi.
Gambar 2. 8 Tampilan Photoshop
2.9.6. JQuery JQuery adalah salah satu library javascript. Dengan JQuery, kita dapat melakukan banyak hal yang tidak bisa dilakukan oleh HTML maupun CSS.Misalnya, menampilkan artikel tanpa mereload halaman, memunculkan pop-up di tengah tengah halaman, menyembunyikan artikel jika di klik, dan sebagainya.Contohnya yang menarik dan bisa kita lihat adalah pada facebook.Facebook banyak menggunakan JQuery maupun AJAX dalam penggunaanya. (Kun 2010:1,2). Lihat gambar dibawah ini:
36
Gambar 2. 9 Contoh Jquery 1
Yang di beri tanda kotak adalah
atau
yang menggunakan JQuery. Saat tombola tau gambar tertentu diklik,
atau
tersebut akan muncul. Misalnya, pada pemberitahuan. Pada saat di klik gambar bola dunia, akan muncul pemberitahuan tersebut.(Kun 2010:1,2). Tidak hanya itu, kita juga dapat mengatur agar muncul pop-up di tengah halaman layaknya facebook seperti gambar di bawah ini:
Gambar 2. 10 Contoh JQuery 2
37
2.10. Metode Pengujian “Testing adalah sebuah proses yang dijelaskan sebagai siklus hidup dan merupakan bagian dari proses rekayasa perangkat lunak secara terintegrasi demi memastikan kualitas dari perangkat lunak serta memenuhi kebutuhan teknis yang telah disepakati dari awal. (Soetam Rizky 2011:237). 2.10.1. Metode Black Box “Black Box Testing adalah tipe testing yang memperlakukan perangkat lunak yang tidak diketahui kinerja internalnya. Sehingga para tester memandang perangkat lunak seperti layaknya sebuah “kotak hitam” yang tidak penting dilihat isinya, tapi cukup dikenai proses testing di bagian luar. (Soetam Rizky 2011:264) Beberapa keuntungan yang diperoleh dari jenis testing ini antara lain: Anggota tim tester tidak harus dari seseorang yang memiliki kemampuan teknis di bidang pemrograman. Kesalahan dari perangkat lunak ataupun bug seringkali ditemukan oleh komponen tester yang berasal dari pengguna. Hasil dari black box testing dapat memperjelas kontradiksi ataupun keracunan yang mungkin timbul dari eksekusi sebuah perangkat lunak. Proses testing dapat dilakukan lebih cepat dibandingkan white box testing. Beberapa teknik testing yang tergolong dalam tipe ini antara lain : Equivalence Partitioning Pada teknik ini, tia inputan data dikelompokan ke dalam grup tertentu, yang kemudian dibandingkan outputnya. Boundary Value Analysis Merupakan teknik yang sangat umun digunakan pada saat awal sebuah perangkat lunak selesai dikerjakan.Pada teknik ini, dilakukan inputan yang melebihi dari batasan sebuah data, jika perangkat lunak berhasil mengatasi inputan yang salah, maka dapat dikatakan teknik ini telah selesai dilakukan. Cause Effect Graph
38
Dalam teknik ini, dilakukan proses testing yang menghubungkan sebab dari sebuah inputan dan akibatnya pada output yang dihasilkan. Random Data Selection Teknik berusaha melakukan proses inputan data yang menggunakan nilai acak. Dari hasil inputan tersebut kemudian dibuat sebuah tabel yang menyatakan validitas dari output yang dihasilkan. Feature Test Pada teknik ini dilakukan proses testing terhadap spesifikasi dari perangkat lunak yang telah selesai dikerjakan.
2.10.2. Metode White Box White Box Testing adalah jenis testing yang lebih berkonsentrasi terhadap isi dari perangkat lunak itu sendiri. (Soetam Rizky 2011:264) Prinsip dari keluaran tipe testing ini adalah : Menjamin bahwa semua alur program yang indenpenden (dalam bentuk modeul, form, prosedur, class dan lainnya) telah dites minimal datu kali. Telah melakukan testing terhadap semua jenis percabangan dengan nilai true dan false. Telah melakukan testing terhadap semua jenis perulangan dengan kondisi normal dan kondisi yang dianggap melampaui batas perulangan (umumnya kondisi yang melampaui batas harus diatasi oleh prosedur tertentu). Telah melakukan testing terhadap struktur data internal (seperti variabel) agar terjaga validitasnya. Beberapa teknik yang terdapat dalam jenis white box testingadalah : Decision (branch) coverage
39
Testing ini terfokus pada hasil dari setiap skenario yang dijalankan terhadap bagian perangkat lunak yang mengandung percabangan (if..then..else). Condition Coverage Teknik ini mirip dengan teknik yang pertama, tetapi dijalankan terhadap percabangan yang dianggap kompleks atau percabangan majemuk. Hal ini biasanya dilakukan jika dalam sebuah perangkat lunak memiliki banyak kondisi yang dijalankan dalam satu proses sekaligus. Path Analysis Merupakan teknik testing yang berusaha menjalankan kondisi yang ada dalam perangkat lunak serta berusaha mengoreksi apakah kondisi yang dijalankan telah sesuai dengan alur diagram yang terdapat dalam proses perancangan.
Execution Time Pada teknik ini, perangkat lunak berusaha dijalankan kemudian dilakukan pengukuran waktu pada input masukan hingga output dikeluarkan. Waktu eksekusi yang dihasilkan kemudian dijadikan bahan evaluasi dan analisa lebih lanjut untuk melihat apakah perangkat lunak telah berjalan sesuai dengan kondisi yang dimaksudkan oleh tester. Algorithm Analysis Teknik ini jarang dilakukan jika perangkat lunak yang dibuat berjenis sistem informasi.Sebab teknik ini membutuhkan kemampuan matematis yang cukup tinggi dari para tester, karena di dalamnya berusaha melakukan analisa terhadap algoritma yang diimplementasikan pada perangkat lunak tersebut.