BAB II LANDASAN TEORI
2.1 Rekayasa Perangkat Lunak 2.1.1 Pengertian RPL (Rekayasa Perangkat Lunak) Menurut Pressman (2015), piranti lunak (software) adalah a) Instruksi (program-program komputer) yang ketika dieksekusi akan memberikan fitur, fungsi dan performa sesuai yang diharapkan. b) Kumpulan struktur data yang memungkinkan program untuk memanipulasi informasi dan c) Informasi yang bersifat deskriptif dalam bentuk hard copy ataupun bentuk virtual yang mendeskripsikan aplikasi dan penggunaan program. 2.1.2 Karakteristik RPL (Rekayasa Perangkat Lunak) Secara garis besar, karakteristik perangkat lunak berbeda dengan perangkat keras. Menurut Pressman (2015), karakteristik dari perangkat lunak adalah sebagai berikut: 1) Perangkat lunak dikembangkan atau direkayasa, tidak diproduksi dalam pengertian klasik. 2) Perangkat lunak tidak “usang”. 3) Meskipun industri bergerak menuju konstruksi berbasis komponen, sebagian besar perangkat lunak terus dibangun secara khusus. 2.1.3 Lapisan RPL (Rekayasa Perangkat Lunak) Pressman (2015) mendefinisikan rekayasa perangkat lunak merupakan teknologi yang bertingkat atau berlapis. Lapisan/tingkatan tersebut terbagi atas empat lapisan, yaitu: 1. Quality focus Quality focus merupakan batu landasan yang menopang tools, methods, dan process dalam RPL.
6 http://digilib.mercubuana.ac.id/
7
2. Process Model Process Model merupakan fondasi dari RPL yang mendefinisikan sebuah framework untuk sekumpulan key process area yang harus dibangun demi keefektifan penyampaian teknologi pengembangan RPL. 3. Methods Methods menerangkan secara teknis tentang bagaimana membangun suatuperangkat lunak. Lapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model desain (design modeling), pembuatan program (program construction), pengujian (testing) dan pendukung (support). 4. Tools Tools menyediakan dukungan otomatis dan semi otomatis untuk process model dan methods.
Gambar 2.0.1 Contoh Software Engineering Layers Sumber: Software Engineering, Pressman dan Maxim (2015) 2.1.4 Pengertian SDLC (Software Development Life Cycle) System Development Life Cycle atau Siklus Hidup Pengembangan Sistem adalah proses sistem serta metodologi yang digunakan untuk mengembangkan sistem-sistem tersebut (Pressman dan maxim, 2015). Prototyping Model sebuah perancangan yang secara berurutan dan sering digunakan dalam proses pengembangan perangkat lunak.
http://digilib.mercubuana.ac.id/
8
2.1.5 Metode Prototyping Menurut Roger Pressman dan Bruce Maxim (2015:45-46), seringkali pelanggan mendefinisikan satu set tujuan umum untuk perangkat lunak, tetapi tidak mengidentifikasi persyaratan rinci untuk fungsi dan fitur. Di lain kasus, pengembang mungkin tidak yakin dari efisiensi dari sebuah algoritma, adaptasi dari sistem operasi, atau bentuk yang interaksi manusia-mesin harus ambil. Dalam hal ini, dan situasi lain, paradigma prototipe mungkin menawarkan pendekatan yang terbaik.
Gambar 2.0.2 Model Prototype Sumber: Software Engineering, Pressman Pressman dan Maxim (2015) Tahapan-tahapan dalam Prototyping menurut Roger S. Pressman, Ph.D. dan Bruce R. Maxim, Ph.D. adalah sebagai berikut: 1. Communication Langkah ini merupakan analisis terhadap kebutuhan software, dan tahap untuk mengadakan pengumpulan data dengan melakukan pertemuan dengan customer, maupun mengumpulkan data-data tambahan baik yang ada di jurnal, artikel, maupun dari internet.
http://digilib.mercubuana.ac.id/
9
2. Quick plan Proses quick plan merupakan lanjutan dari proses communication(analysis requirement). Tahap ini akan menghasilkan dokumen user requirement atau bisa dikatakan sebagai data yang berhubungan dengan keinginan user dalam pembuatan software, termasuk rencana yang akan dilakukan.
3. Modeling Quick design Proses modeling quick design ini akan menerjemahkan syarat kebutuhan ke sebuah perancangan software yang dapat diperkirakan sebelum dibuat coding. Proses ini berfokus pada rancangan struktur data, arsitektur software, representasi interface, dan detail (algoritma) prosedural. Tahapan ini akan menghasilkan dokumen yang disebut software requirement. 4. Construction of prototype Contraction of prototype merupakan proses membuat kode. Coding atau pengkodean merupakan penerjemahan desain dalam bahasa yang bisa dikenali oleh komputer. Programmer akan menerjemahkan transaksi yang diminta oleh user. Tahapan inilah yang merupakan tahapan secara nyata dalam mengerjakan suatu software, artinya penggunaan komputer akan dimaksimalkan dalam tahapan ini. Setelah pengkodean selesai maka akan dilakukan testing terhadap sistem yang telah dibuat tadi. Tujuan testing adalah menemukan kesalahan-kesalahan terhadap system tersebut untuk kemudian bisa diperbaiki. Black Box Testing berfokus pada persyaratan fungsional perangkat lunak yang memungkinkan engineers untuk memperoleh kondisi input yang sepenuhnya akan melaksanakan persyaratan fungsional untuk sebuah program. (Pressman, 2015). Black Box Testing berusaha untuk menemukan kesalahan dalam kategori berikut: a) Fungsi yang tidak benar atau fungsi yang hilang b) Kesalahan antarmuka c) Kesalahan dalam struktur data atau akses database eksternal
http://digilib.mercubuana.ac.id/
10
d) Kesalahan perilaku (behavior) atau kesalahan kinerja e) Inisialisasi dan pemutusan kesalahan Tes ini dirancang untuk menjawab beberapa pertanyaan – pertanyaan berikut ini: a) Bagaimana validitas fungsional diuji? b) Bagaimana perilaku dan kinerja sistem diuji? c) Apa kelas input akan membuat kasus uji yang baik? d) Apakah sistem sensitive terhadap nilai input tertentu? e) Bagaimana batas – batas kelas data yang terisolasi? f) Kecepatan dan volume data seperti apa yang dapat ditolelir sistem? Efek apakah yang akan menspesifikasi kombinasi data dalam sistem operasi? 5. Deployment Delivery & Feedback Tahapan ini bisa dikatakan final dalam pembuatan sebuah software atau sistem. Setelah melakukan analisis, desain dan pengkodean maka sistem yang sudah jadi akan digunakan oleh user. Kemudian software yang telah dibuat harus dilakukan pemeliharaan secara berkala. 2.2 UML (Unified Modeling Language) Unified Modeling Language (UML) adalah bahasa standar untuk menuliskan cetak biru (blueprints) perangkat lunak. UML dapat digunakan untuk memvisualisasikan, menentukan, membangun, dan mendokumentasikan artefak dari sistem perangkat lunak-intensif. Dengan kata lain, seperti arsitek bangunan yang membuat cetak biru (blueprints) yang akan digunakan oleh perusahaan konstruksi, arsitektur software membuat diagram UML untuk membantu pengembang dalam membangun perangkat lunak.(Pressman, 2015). 2.2.1 Use Case Diagram Sebuah use case menggambarkan bagaimana user berinteraksi dengan sistem dengan mendefinisikan langkah-langkah yang diperlukan untuk mencapai tujuan tertentu. Diagram use case adalah gambaran dari semua use case dan bagaimana use case berhubungan. Ini memberikan gambaran luas dari fungsi sistem.(Pressman, 2015).
http://digilib.mercubuana.ac.id/
11
Gambar 2.0.3 Contoh Use Case Diagram Sumber: Software Engineering, Pressman dan Maxim (2015) Pada diagram ini, gambar stick figure merepresentasikan sebuah aktor yang terkait dengan satu kategori pengguna (atau elemen interaksi lainnya). Biasanya sistem yang kompleks memiliki lebih dari satu aktor. Berikut adalah simbol-simbol yang digunakan pada use case diagram: Table 2.1 Simbol use case diagram Sumber: Software Engineering, Pressman (2015) No. 1
Simbol Aktor
Keterangan Merupakan kesatuan eksternal yang berinteraksi dengan sistem.
http://digilib.mercubuana.ac.id/
12
No. 2
Simbol Use Case
Keterangan Rangkaian/uraian sekelompok yang saling terkait dan membentuk sistem.
3
Generelation
Menggambarkan
hubungan
khusus
atau
interaksi dalam objek.
2.2.2 Sequence Diagram Sebuah sequence diagram digunakan untuk menunjukkan komunikasi yang dinamis antara objek selama pelaksanaan tugas, berbeda dengan diagram kelas, yang menunjukkan struktur statis dari komponen software. (Pressman, 2015). Pada gambar 2.4, sebuah sequence diagram menunjukkan langkah-langkah yang terlibat dalam menyoroti sosok dalam sebuah gambar ketika telah diklik. Setiap kotak pada baris di bagian atas diagram biasanya berhubungan dengan suatu objek, meskipun ada kemungkinan untuk memiliki kotak model yang lain, seperti kelas. Di bawah setiap kotak ada garis putusputus yang disebut lifeline dari objek. Sumbu vertikal dalam sequence diagram sesuai dengan waktu, dengan waktu semakin meningkat ke bawah. Sequence diagram menunjukkan pemanggilan metode menggunakan panah horizontal dari caller (pemanggil) kecallee, diberi label dengan nama metode dan parameter (opsional), type, dan return type. Pada saat objek mengeksekusi metode, kita (secara opsional) dapat menampilkan bar putih yang disebut activationbar secara menurun pada objek lifeline. Diagram sequence juga secara opsional menampilkan return dari method yang dipanggil dengan garis putus-putus berpanah dan labelnya.
http://digilib.mercubuana.ac.id/
13
Contoh gambar di bawah menampilkan kasus yang mudah dan tidak menunjukan ada kondisi lain atau pun loop. Jika kontrol struktur logical diperlukan, cara terbaiknya dengan menggambarkan diagram sequence yang berbeda untuk setiap kasusnya. Ini berarti, jika alur pesan dapat mengambil dua kondisi yang berbeda, kita menggambar dua gambar diagram sequence, masing-masing untuk setiap kemungkinan.
Gambar 2.0.4 Contoh Sequence Diagram Sumber: Software Engineering, Pressman dan Maxim (2015) Berikut adalah simbol-simbol yang digunakan pada sequence diagram: Table 2.2 Simbol Sequence diagram Sumber: Software Engineering, Pressman dan Maxim (2015) No. 1
Simbol LifeLine
Nama Antarmuka yang saling berinteraksi.
http://digilib.mercubuana.ac.id/
14
No. 3
Simbol
Nama
Activation
Menggambarkan hubungan antara object dengan message.
4
Message(call)
Menggambarkan alur message yang merupakan kejadian objek pengirim lifeline ke objek penerima lifeline.
5
Message(return)
Menggambarkan alur pengambilan message ke objek pemanggil dan tanda bahwa objek penerima telah menyelesaikan prosesnya.
2.2.3 Activity Diagram Diagram aktivitas atau activity diagram menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis atau menu yang ada pada perangkat lunak. Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem. [Rosa A.S, M. Shalahuddin, 2016].
http://digilib.mercubuana.ac.id/
15
Gambar 2.0.5 Contoh Activity Diagram dengan Swimlane Sumber: Software Engineering, Pressman dan Maxim (2015) Diagram aktivitas juga banyak digunakan untuk mendefinisikan hal-hal berikut : 1. Rancangan proses bisnis dimana setiap urutan aktivitas yang digambarkan merupakan proses bisnis sistem yang didefinisikan. 2. Urutan atau pengelompokan tampilan dari sistem atau user interface dimana setiap aktivitas dianggap memiliki sebuah rancangan antarmuka tampilan. 3. Rancangan pengujian dimana setiap aktivitas dianggap memerlukan sebuah pengujian yang perlu didefinisikan kasus ujinya. 4. Rancangan menu yang ditampilkan pada perangkat lunak.
http://digilib.mercubuana.ac.id/
16
Berikut adalah simbol-simbol yang digunakan pada Activity diagram: Table 2.3 Simbol Activity diagram Sumber: Software Engineering, Pressman dan Maxim (2015) No.
Simbol
Nama
1
Initial Node
Menunjukkan titik awal kegiatan
2
Final Node
Menunjukkan akhir kegiatan
3
State/Activities
Mewakili tugas yang dilakukan oleh perangkat lunak sistem.
4
Fork (Pertaxiangan)
Mewakili pemisahan aktivitas yang bersamaan menjadi 2 atau lebih
5
Join (Penggabungan)
Simbol untuk menyinkronkan alur kontrol yang ada pada tingkatan yang sama.
6
Decision
Simbol untuk alur kontrol bertaxiang yang dikarenakan adanya kondisi.
http://digilib.mercubuana.ac.id/
17
Berikut merupakan contoh gambar untuk aktifity diagram :
Gambar 2.0.6 Contoh Activity Diagram dengan Swimlane Sumber:Rekayasa Perangkat Lunak Terstruktur dan Berorientasi Objek, Rosa A.S, M. Shalahuddin(2016) 2.2.4 Class Diagram Sebuah class diagram menyediakanpandangan statis atau struktural dari sebuah sistem. Hal ini tidak menunjukkan sifat dinamis dari komunikasi antara objek dari kelas dalam diagram. (Pressman, 2015). Berikut adalah simbol-simbol yang digunakan pada Class diagram:
http://digilib.mercubuana.ac.id/
18
Table 2.4 Simbol Class diagram Sumber: Software Engineering, Pressman dan Maxim (2015) No. 1
Simbol
Nama
Class
Ikon yang digunakan untuk mewakili kelas dan interface.
Class
1 2 3
Class terdiri dari: 1. Class Name 2. Attributes 3. Behaviours
2
Association
Relasi antar class dengan makna umum
3
Generalization
Relasi
antar
class
dengan
makna
generalisasi-spesialisasi (umum-khusus) 4
Realization
Menunjukkan implementasi antarmuka
5
Dependency
Relasi
anatar
class
dengan
makna
kebergantungan antar class
Unsur-unsur utama dari class diagram adalah kotak, yang merupakan ikon yang digunakan untuk mewakili kelas dan interface. Setiap kotak dibagi menjadi bagian-bagian horizontal. Bagian atas berisi nama kelas, bagian tengah berisi daftar atribut dari kelas, dan bagian bawah berisi fungsi operasi atau perilaku kelas. Operasi mengacu pada apa yang dapat dilakukan oleh objek kelas. Hal ini biasanya diimplementasikan sebagai metode kelas.
http://digilib.mercubuana.ac.id/
19
Setiap atribut dapat memiliki nama, jenis, dan tingkat visibilitas. Jenis dan visibilitas adalah opsional. Jenis ini mengikuti nama dan dipisahkan dari nama dengan titik dua. Visibilitas ditunjukkan dengan- (private), # (protected), ~(package), atau + (public).
Gambar 2.0.7 Contoh Class diagram Sumber:Software Engineering, Pressman dan Maxim (2015) Diagram kelas juga dapat menunjukkan hubungan antara kelas. Sebuah kelas yang merupakan subclass dari kelas lain terhubung dengan panah dengan garis yang solid dengan panah segitiga berongga. Arah panah menunjukan dari subclass ke superclass. Dalam UML, hubungan tersebut disebut generalisasi.
Gambar 2.0.8 Contoh State diagram notation Sumber:Software Engineering, Pressman dan Maxim (2015)
http://digilib.mercubuana.ac.id/
20
2.3 Manajemen 2.3.1 Pengertian Manajemen Menurut Prof. Dr. Parjudi Atmosudirjo, S.H. pengertian manajemen itu dapat dipandang sebagai: 1. Orang-orang : Semua orang yang mempunyai fungsi/kegiatan pokok sebagai pemimpin-pemimpin kerja 2. Proses : Adanya kegiatan-kegiatan yang berarah ke bawah, jadi berupa kerja-kerja untuk mencapai tujuan tertentu 3. Sistem Kekuasaan : Atau system kewenangan/wewenang seseorang agar orang-orang menjalankan pekerjaan. Menurut George R. Terry. Ph. D, manajemen adalah suatu proses tertentu yang terdiri atas perencanaan, pengorganisasian, penggerakan, dan pengawasan yang dilakukan untuk menentukan dan mencapai tujuan yang telah ditetapkan dengan menggunakan manusia dan sumber-sumber lainnya[Hutahaean, 2014]. 2.3.2 Tingkatan Manajemen 1. Manajemen Puncak (Top Management) Bertanggung jawab atas pengaruh yang ditimbulkan dari keputusan-keputusan manajemen keseluruhan dari organisasi. Misal: direktur, wakil direktur, direktur Utama. Keahlian yang dimiliki manajemen tingkat puncak adalah konseptual, artinya keahlian untuk membuat dan merumuskan konsep untuk dilaksanakan oleh tingkatan manajer di bawahnya.
http://digilib.mercubuana.ac.id/
21
2. Manajemen Menengah (Middle Management) Memiliki keahlian interpersonal/manusiawi, artinya keahlian untuk berkomunikasi, bekrjasama dan memotivasi orang lain. Bertanggung jawab melaksanakan rencana dan memastikan tercapainya suatu tujuan. Misal: manajer wilayah, kepala divisi, Manajer Produk. 3. Manajemen Bawah/Lini (Low Management) Bertanggung jawab menyelesaikan rencana-rencana yang telah ditetapkan oleh para manajer yang lebih tinggi. Pada tingkatan ini juga memiliki keahlian yaitu keahlian teknis, artinya kehalian yang mencakup prosedur, teknik, pengetahuan dan keahlian dalam bidang khusus. Misalnya supervisor/pengawas produksi, mandor.
Gambar 2.0.9 Contoh Piramida Manajemen Sumber:Konsep Sistem Informasi, Hutahaean (2014)
http://digilib.mercubuana.ac.id/
22
2.4 Pengertian Klinik Klinik adalah (bagian) rumah sakit atau lembaga kesehatan tempat orang berobat dan memperoleh advis medis serta tempat mahasiswa kedokteran melakukan pengamatan terhadap kasus penyakit yang diderita para pasien, balai pengobatan khusus, organisasi kesehatan yang bergerak dalam penyediaan pelayanan kesehatan kuratif (diagnosis dan pengobatan), biasanya terhadap satu macam gangguan kesehatan[KBBI, 2016]. Menurut
Peraturan
Menteri
Kesehatan
Republik
Indonesia
Nomor
028/MENKES/PER/I/2011, pengertian klinik adalah sebagai berikut: 1) Klinik adalah fasilitas pelayanan kesehatan yang menyelenggarakan pelayanan kesehatan perorangan yang menyediakan pelayanan medis
dasar dan atau spesialistik,
diselenggarakan oleh lebih dari satu jenis tenaga kesehatan dan dipimpin oleh seorang tenaga medis. 2) Tenaga medis adalah dokter, dokter spesialis, dokter gigi atau dokter gigi spesialis. 3) Tenaga kesehatan adalah setiap orang yang mengabdikan diri dalam bidang kesehatan serta memiliki pengetahuan dan/atau keterampilan melalui pendidikan di bidang kesehatan yang untuk jenis tertentu memerlukan kewenangan untuk melakukan upaya kesehatan. 2.4.1 Jenis Klinik Berdasarkan jenis pelayanannya, klinik dibagi menjadi Klinik Pratama dan Klinik Utama menurut Peraturan Menteri Kesehatan Republik Indonesia Nomor 028/MENKES/PER/I/2011. a. Klinik Pratama merupakan klinik yang menyelenggarakan pelayanan medis dasar. b. Klinik Utama merupakan klinik yang menyelenggarakan pelayanan medis spesialistik atau pelayanan medik dasar dan spesialistik. Klinik Pratama atau Klinik Utama dapat mengkhususkan pelayanan pada satu bidang tertentu berdasarkan disiplin ilmu, golongan umur, organ atau jenis penyakit tertentu. 2.4.2 Standar Penyelenggaraan Klinik Klinik dalam penyelenggaraan pelayanan kesehatannya bersifat promotif, preventif (pencegahan), kuratif (penyembuhan), dan rehabilitative (pemulihan). Bentuk pelayanan
http://digilib.mercubuana.ac.id/
23
kesehatan sebagaimana dimaksud Peraturan Menteri Kesehatan Republik Indonesia Nomor 028/MENKES/PER/I/2011 dilaksanakan dalam bentuk rawat jalan, one day care, rawat inap dan/atau home care. Klinik yang menyelenggarakan pelayanan kesehatan 24 (dua puluh empat) jam harus menyediakan dokter serta tenaga kesehatan lain sesuai kebutuhan yang setiap saat berada di tempat. 2.4.3 Standar Fasilitas Klinik Persyaratan bangunan dan ruang sebuah Klinik menurut Peraturan Menteri Kesehatan Republik Indonesia Nomor 028/MENKES/PER/I/2011 yang harus dipenuhi, meliputi : 1) Merupakan bangunan yang permanen dan tidak bergabung dengan tempat tinggal atau unit kerja lainnya. 2) Bangunan klinik harus memenuhi persyaratan lingkungan sehat sesuai ketentuan peraturan perundang-undangan. 3) Bangunan klinik harus memperhatikan fungsi, keamanan, kenyamanan dan kemudahan dalam pemberian pelayanan serta perlindungan dan keselamatan bagi semua orang termasuk penyandang cacat, anak-anak dan orang usia lanjut. 2.5 Pengertian Khitanan Menurut Irdlon Sahil (2011:39) secara etimologis, khitan berasal dari bahasa Arab khatana yang berarti "memotong".1 kata khatana berarti memotong atau "mengerat".2 Menurut Ibnu Hajar bahwa al-khitan adalah isi m masdar dari kata khatana yang berarti "memotong", khatn yang berarti "memotong sebagian benda yang khusus dari anggota badan yang khusus pula".Kata "memotong" dalam hal ini mempunyai makna dan batasan-batasan khusus. Maksudnya, bahwa makna dasar kata khitan adalah bagian kemaluan yang harus dipotong.4 Secara terminologis khitan adalah membuka atau memotong kulit (quluf) yang menutupi ujung kemaluan dengan tujuan agar bersih dari najis.5 Dalam pelaksanaan khitan biasanya digunakan untuk laki-laki atauistilah orang jawa disebut sunatan, dalam ilmu kedokteran disebut circumcisio, yaitu pemotongan kulit yang menutupi kepala penis (praeputium glandis).11
http://digilib.mercubuana.ac.id/
24
Qulfah atau qhurlah adalah bagian kulit yang dipotong saat dikhitan (disebut pula kuluf). Yang dikhitan dari seorang laki-laki adalah bagian kulit yang melingkar dibawah ujung kemaluan. Itulah kulit kemaluan yang diperintahkan untuk dipotong.12Berdasarkan pengertian di atas, dapat dipahami bahwa khitan adalah perbuatan memotong bagian kemaluan laki-laki yang harus dipotong, yakni memotong kulup atau kulit yang menutupi bagian ujungnya sehingga seutuhnya terbuka. Pemotongan kulit ini dimaksudkan agar ketika buang air kecil mudah dibersihkan, karena syarat dalam ibadah adalah kesucian. 2.5.1 Hukum Khitanan Menurut Irdlon Sahil (2011:41) Para ulama berbeda pendapat tentang hukum khitan. Akan tetapi, mereka sepakat bahwa khitan telah disyariatkan agama. Mereka mengatakan hukum khitan wajib sedang yang lain mengatakan sunnah. Sehubungan dengan hal itu, maka perlu dipelajari masing-masing pendapat tersebut baik yang mengatakan wajib maupun yang sunnah. 1. Hukum wajib Al-Shafi'i mengatakan bahwasanya khitan hukumnya wajib,dengan alasan: a. Nabi diperintahkan mengikuti shariat Nabi Ibrahim (al-Qur'an. al-Nahl ayat 123) dan salah satu shariatnya adalah khitan. b. Sekiranya khitan tidak wajib, mengapa orang yang dikhitan membuka aurat yang diharamkan.13 Al-Nawawi berpendapat ini adalah pendapat shahih dan mashur yang ditetapkan oleh alShafi'i dan disepakati oleh sebagian besar ulama. Dalil dari pendapat ini adalah firman Allah swt. Artinya: Kemudian kami wahyukan kepadamu (Muhammad): "Ikutilah gama Ibrahim seorang yang hanif. (al-Qur'an. al-Nahl : 123). 2. Hukum Sunnah
http://digilib.mercubuana.ac.id/
25
Apabila diamati kebiasaan masyarakat, ada yang mengistilahkankhitan ini dengan istilah "sunnat". Hal ini menunjukkan bahwa hokum khitan adalah sunnah.20 Pendapat ini merupakan pengikut Abi Hanifah. Alasan bahwa hukum khitan itu sunnah adalah sebagai berikut : a. Adanya Hadist riwayat al-Baihaqi Artinya : Dari Ibnu Abbas dari Nabi saw., bersabda : "Khitan itu sunnah untuk laki-laki dan mukarramah bagi kaum perempuan "(HR. al-Baihaqi). b. Adanya Hadist masalah fitrah yang diriwayatkan oleh Ibn Majah Artinya : Dari Abu Hurairah ra. berkata: "Rasulullah saw. bersabda: "fitrah itu adalima macam: atau lima macam dari fitrah : yaitu berkhitan, mencukur bulu kemaluan, memotong kuku, mencabut bulu ketiak dan memotong kumis. (HR. Ibn Majah). c. Khitan termasuk salah satu bentuk shiar Islam dan tidak semua shiarIslam itu wajib 2.6 Web Aplikasi (WebApps) Web aplikasi-disebut "webapps," jaringan-centric ini kategori perangkat lunak yang mencakup beragam aplikasi. Dalam bentuk yang paling sederhana, webapps bisa sedikit lebih dari satu set file hypertext terkait yang menyajikan informasi menggunakan teks dan grafis yang terbatas. Namun, seperti Web 2.0 muncul, webapps berkembang dalam lingkungan komputasi canggih yang tidak hanya menyediakan fitur yang berdiri sendiri, fungsi komputasi, dan konten untuk pengguna akhir, tetapi juga terintegrasi dengan database perusahaan dan aplikasi bisnis (Pressman, 2015).
http://digilib.mercubuana.ac.id/
26
2.7 Pengertian XAMPP XAMPP merupakan bundel paket instan yang terdiri dari Apache (server), MySql (database) dan PHP. Paket instan ini banyak digunakan oleh para programmer web karena kemudahannya sehingga programmer tidak perluu mengonfigurasi dari awal melainkan tinggal pakai [Utomo, 2013]. Kata XAMPP merupakan singkatan dari : X:
Berarti program ini dapat dijalankan di banyak sistem operasi, misalnya (Windows, Linux, Mac OS, dan solaris).
A:
Apache, merupakan aplikasi web server, dan bertugas untuk menghasilkan halaman web yang benar kepada user berdasarkan kode PHP yang dituliskan oleh pembuat halaman web. Jika diperlukan juga berdasarkan kode PHP yang dituliskan, maka dapat saja suatu database diakses terlebih dahulu (misalnya dalam MySQL) untuk mendukung halaman web yang dihasilkan.
M:
MySQL, merupakan aplikasi database server. Perkembangannya disebut sql yang merupakan kepanjangan dari Structured Query Language. Sql merupakan bahasa terstruktur yang digunakan untuk mengolah database. MySQL dapat digunakan untuk membuat dan mengelola database beserta isinya. Kita dapat memanfaatkan MySQL untuk menambahkan, mengubah, dan menghapus data yang berada dalam database.
P:
PHP, bahasa pemrograman web. Bahasa pemrograman PHP merupakan bahasa pemrograman untuk membuat web yang bersifat server-side scripting. PHP memungkinkan kita untuk membuat halaman web yang bersifat dinamis. Sistem manajemen basis data yang sering digunakan bersama PHP adalah MySql. namun PHP juga mendukung system manajement database Mssql, Oracle, Microsoft Access, Interbase, d-base, PostgreSQL, dan sebagainya.
P:
Perl, bahasa pemrograman.
http://digilib.mercubuana.ac.id/
27
2.7.1 MySQL MySQL (My Structure Query Language) adalah sistem manajemen database relasional yang menggunakan Query Terstruktur Language (SQL) untuk menyimpan, bekerja dengan, dan mengambil informasi melalui Internet[Matthews, 2015]. MySQL disebut "paling populer database open source di dunia," dengan jutaan website menggunakannya sebagai sumber daya web yang berjalan pada server web, seperti halnya PHP. Dan MySQL juga dapat dijalankan pada server yang berdiri sendiri tidak terhubung ke Web. MySQL dibangun untuk menangani volume besar, akses database multiuser. mysql.com mengatakan "Banyak organisasi yang tumbuh paling cepat terbesar dan dunia termasuk Facebook, Google, Alcatel Lucent, dan Zappos mengandalkan MySQL. "MySQL rendah atau tidak ada biaya, kemudahan penggunaan, kecepatan, kehandalan, dan kegunaan untuk kecil untuk situs besar membuatnya mudah untuk melihat mengapa ia memiliki digunakan secara luas. 2.7.2 PHP PHP atau memiliki kepanjangan PHP Hypertext Preprocessor, merupakan “suatu bahasa pemrograman yang difungsikan untuk membangun suatu website dinamis”. PHPmenyatu dengan kode HTML, maksudnya adalah beda kondisi, HTML digunakan sebagai pembangun atau pondasi dari kerangka layoutweb, sedangkan PHP difungsikan sebagai prosesnya, sehingga dengan adanya PHP tersebut, sebuah web akan sangat mudah di-maintenance [Saputra, 2012]. PHP berjalan pada sisi server, sehingga PHP disebut juga sebagai bahasa Server Side Scripting, artinya bahwa dalam setiap/untuk menjalankan PHP, wajib membutuhkan web server dalam menjalankannya. PHP bersifat Open Source , dan mampu lintas Platform, yaitu dapat berjalan pada sistem operasi Windows maupun Linux. Contoh sintaxnya :
http://digilib.mercubuana.ac.id/
28
Gambar 2.0.10 Struktur PHP Sumber: Sistem Informasi Nilai Akademik untuk Panduan Skripsi, Saputra (2012) 2.8 CSS (Cascade Style Sheet) CSS (Cascade Style Sheet) merupakan salah satu bahasa pemrograman web yang bertujuan untuk membuat web menjadi lebih menarik dan terstruktur”. Pada CSS kita bisa merubah warna tabel, besar font, atau tata letak menu yang terkendali dari CSS sehingga semua jendela web yang berkaitan dengan perubahan tersebut secara otomatis dapat berubah, dengan CSS kita tidak perlu membuat style pada setiap file PHP, karena cukup dengan satu file CSS kita telah bisa mengontrol semua style yang kita inginkan pada setiap file PHP yang akan ditampilkan nanti di webbrowser.[Aditama, 2013]. 2.9 jQuery jQuery adalah Javacript Library kumpulan kode/fungsi Javascript siap pakai, sehingga mempermudah dan mempercepat kita dalam membuat kode Javasrcipt”. Secara standar, apabila kita membuat kode Javascript, maka akan di perlukan kode yang cukup panjang, bahkan terkadang sangat sulit dipahami, misalnya fungsi Javascript untuk membuat stripe warna selang-seling pada baris suatu table adalah sebagai berikut:
http://digilib.mercubuana.ac.id/
29
Gambar 2.0.11 Tampilan Script Javascript Sumber: Proyek Website Super Wow!, Lukmanul Hakim (2013) Di sinilah peran jQuery sebagai Javasrcipt Library, dimana kita bisa langsung memanggil fungsi yang terdapat didalam Library tersebut, menariknya kita hanya memerlukan satu/dua baris untuk membuat warna selang-seling pada suatu tabel, yaitu:
Gambar 2.0.12 Tampilan Script jQuery Sumber: Proyek Website Super Wow!, Lukmanul Hakim (2013) Kesimpulannya, jQuery menyederhanakan kode Javascript. Hal ini sesuai dengan slogannya ‘Write less, do more’ cukup tulis sedikit, tapi bisa melakukan banyak hal (Hakim, 2013).
Gambar 2.0.13 Tampilan Logo jQuery Dan Slogannya Sumber: Proyek Website Super Wow!, Lukmanul Hakim (2013)
http://digilib.mercubuana.ac.id/
30
Kemampuan yang dimiliki jQuery, diantaranya: a. Mempermudah akses dan manipulasi elemen tertentu pada dokumen. Biasanya diperlukan baris program yang cukup panjang untuk mengakses suatu elemen dokumen. Namun, jQuery dapat melakukannya hanya dalam beberapa baris program saja, karena jQuery mempunyai Selector yang sangat efisien untuk mengakses suatu elemen tertentu pada dokumen yang selanjutnya bisa dimanipulasi sesuai dengan keinginan kita. b. Mempermudah modifikasi/perubahan tampilan web. Biasanya,
untuk
memodifikasi
tampilan
halaman
web
digunakan
CSS.
Permasalahannya, CSS sangat dipengaruhi oleh web browser yang digunakan, sehingga sering terjadi halaman web yang dibuat sudah rapi dan bagus tampilan di browser Mozilla, namun ketika ditampilkan di Opera menjadi berantakan. Namun, jQuery dapat menyesuaikan style CSS pada suatu browser, sehingga permasalahan tersebut dapat dihindari. c. Mempersingkat Ajax (Asynchronous Javascript and XML). Kemampuan favorit dari Ajax adalah mampu mengambil informasi dari server tanpa melakukan refresh pada halaman web, artinya halaman web terlihat berganti secara otomatis. Apabila kita menuliskan kode Ajax secara manual, biasanya diperlukan baris yang cukup panjang, namun jQuery dapat mempersingkatnya menggunakan Ajax call, perbandingannya 25 baris kode Ajax dapat dipersingkat menjadi 5 baris kode saja menggunakan jQuery. d. Memiliki API (Application Programming Interface). Dengan API, jQuery dapat memanipulasi content pada suatu halaman web, seperti perubahan teks, manipulasi gambar (resize, rotate, crop), penyusunan daftar (list), pengurutan list, paging, dan lain-lain. e. Mampu merespon interaksi antara user dengan halaman web dengan lebih cepat. f.
Menyediakan fasilitas untuk membuat animasi sekelas flash dengan mudah.
http://digilib.mercubuana.ac.id/
31
2.10 EditPlus EditPlus 4.1 merupakan versi terbaru dari EditPlus yang sebelumnya adalah EditPlus 4.0”. Aplikasi EditPlus 4.1 memberikan tampilan lebih baik dan tentu saja semakin mudah dalam penggunaannya. Aplikasi ini mengintegrasikan beragam fitur untuk memenuhi kebutuhan pengembangan website, termasuk pembuatan halaman web dan pengelolaannya. EditPlus adalah editor teks, editor HTML, PHP Editor, editor Java dan Hex Viewer untuk Windows. Sementara itu dapat berfungsi sebagai pengganti Notepad yang baik, ia juga menawarkan banyak fitur canggih untuk penulis halaman Web dan programmer. Sintaks untuk HTML, PHP, Java, C / C ++, CSS, ASP, Perl, JavaScript, VBScript, Python dan Ruby on Rails. Selain itu, dapat diperpanjang untuk bahasa pemrograman lain berdasarkan file sintaks kustom. Web Browser mulus untuk melihat pratinjau halaman HTML , dan FTP ( juga SFTP dan FTPS ) fitur untuk meng-upload file lokal ke server FTP. Fitur lain termasuk Hex Viewer, toolbar HTML, pengguna alat-alat, nomor baris, penggaris, URL highlight, auto completion, cliptext, pilihan kolom, pencarian yang kuat dan mengganti, beberapa undo/redo, spell checker, shortcut keyboard disesuaikan, dan banyak lagi.
Gambar 2.0.14 Tampilan EditPlus 4.1 Sumber: www.editplus.com (diakses 19 November 2016)
http://digilib.mercubuana.ac.id/