Andi Mulya Indrianto-fst

download Andi Mulya Indrianto-fst

of 117

Transcript of Andi Mulya Indrianto-fst

  • SKRIPSI

    PENERAPAN CODEIGNITER FRAMEWORK DALAM PENGEMBANGAN SISTEM INFORMASI SIDANG KELILING

    (Studi Kasus : Badan Peradilan Agama)

    Oleh :

    Andi Mulya Indrianto

    105091002788

    PROGRAM STUDI TEKNIK INFORMATIKA

    FAKULTAS SAINS DAN TEKNOLOGI

    UNIVERSITAS ISLAM NEGERI

    SYARIF HIDAYATULLAH

    JAKARTA

    2010

  • ABSTRAK

    Andi Mulya Indrianto, Penerapan Codeigniter Framework dalam Pengembangan

    Sistem Informasi Sidang Keliling Studi Kasus : Badan Peradilan Agama Jakarta,

    dibimbing oleh Khodijah Hulliyah, M.Si dan Yusuf Durrachman, MSc, M.IT.

    Pengadilan agama di seluruh Indonesia kini terdapat program sidang

    keliling yaitu sidang yang dilakukan tidak di pengadilan namun di tempat yang

    terdekat dari pendaftar sidang. Setiap bulannya pelaksanaan sidang keliling harus

    dilaporkan ke Badan Peradilan Agama Jakarta, pelaporan tersebut dilakukan

    melalui pos ataupun email. Pada proses pelaporan data melalui pos akan memakan

    banyak waktu dan juga pelaporan data melului pos ataupun email akan terjadi

    kesulitan dalam mengorganisir data persidangan keliling tersebut. Untuk

    membantu mengorganisir data sidang keliling tersebut, maka diperlukan suatu

    aplikasi yang dapat menyimpan dan mengorganisir data sehingga mudah untuk

    diakses oleh penggunanya. Aplikasi yang akan dibuat merupakan aplikasi berbasis

    web dengan menggunakan codeigniter framework dan mysql sebagai basis

    datanya. Aplikasi ini akan memudahkan pelaporan data sidang keliling sehingga

    informasi persidangan dapat tersampaikan dengan cepat dibandingkan dengan

    pelaporan data sidang dengan cara manual. Keamanan data dari aplikasi ini akan

    memanfaatkan keamanan standar dari codeigniter yang bisa mencegah XSS attack

    dan SQL injection. Analisis dan perancangan sistem informasi siding keliling

    dilakukan dengan pendekatan OOAD (Object Oriented Analysis and Design).

    Kata Kunci : Codeigniter Framework, Sistem Informasi, Sidang Keliling, OOAD

    (Object Oriented Analysis and Design)

    v

  • DAFTAR ISI

    Halaman judul ............................................................................................. i

    Persetujuan pembimbing ............................................................................. ii

    Halaman pengesahan ................................................................................... iii

    Halaman pernyataan .................................................................................... iv

    Abstrak ........................................................................................................ v

    Kata Pengantar ............................................................................................ vi

    Daftar isi....................................................................................................... viii

    Daftar gambar ............................................................................................. xii

    Daftar tabel ..................................................................................................xv

    Daftar Lampiran ..........................................................................................xvi

    Daftar Istiah .................................................................................................xvii

    BAB I PENDAHULUAN

    1.1. Latar Belakang ................................................................................ 1

    1.2. Perumusan Masalah......................................................................... 3

    1.3. Pembatasan Masalah ....................................................................... 4

    1.4. Tujuan Penelitian............................................................................. 4

    1.5. Manfaat Penelitian .......................................................................... 5

    1.6. Metodologi Penelitian ..................................................................... 5

    1.7. Sistematika Penulisan ..................................................................... 6

    viii

    Halaman

  • BAB II LANDASAN TEORI

    2.1. Penerapan ..................................................................................... 8

    2.2. Framework ................................................................................... 8

    2.2.1. Zend Framework ................................................................ 9

    2.2.2. CakePHP ............................................................................ 9

    2.2.3. Ruby on Rails ..................................................................... 10

    2.2.4.Codeigniter Framework ...................................................... 11

    2.3. Model View Controller (MVC).................................................... 12

    2.4.1. Model.................................................................................. 13

    2.4.2. View.................................................................................... 13

    2.4.2. Controller............................................................................ 13

    2.4. Pengembangan .............................................................................14

    2.5. Konsep Sistem Informasi .............................................................14

    2.6.1. Pengertian Sistem ..............................................................15

    2.6.2. Pengertian Informasi .........................................................15

    2.6.3. Pengertian Sistem Informasi .............................................15

    2.6.4. Komponen Sistem Informasi ............................................16

    2.6. Sidang Keliling ............................................................................ 17

    2.7. Object Oriented Analysis and Design (OOAD)............................ 17

    2.8. Unified Modelling Language (UML) ........................................... 19

    2.9. PHP .............................................................................................. 23

    2.10.1.Definisi PHP ..................................................................... 23

    ix

  • 2.10.2. Kelebihan PHP ................................................................. 24

    2.10.3. Kekurangan PHP .............................................................. 25

    2.10. MySQL ......................................................................................... 25

    2.11. XAMPP Server ............................................................................ 26

    2.12. Studi Sejenis ................................................................................. 26

    BAB III METODOLOGI PENELITIAN

    3.1. Tempat dan Waktu Penelitian....................................................... 29

    3.2. Metode Pengumpulan Data .......................................................... 29

    3.2.1. Observasi .......................................................................... 29

    3.2.2. Wawancara ....................................................................... 30

    3.3. Metode Pengembangan Sistem .................................................... 30

    3.3.1. Pemilihan Motode Object Oriented Analysis and Design 30

    3.4. Pemilihan Codeigniter Framework.............................................. 34

    BAB IV ANALISIS DAN PERANCANGAN

    4.1. Sekilas Tentang Badan Peradilan Agama Jakarta......................... 36

    4.1.1. Sejarah .............................................................................. 36

    4.1.2. Visi dan Misi .................................................................... 39

    4.1.2.1. Visi dan Misi Mahkamah Agung......................... 39

    4.1.2.2Visi dan Misi Direktorat Jendral Peradilan Agama 39

    4.1.2.3.Visi dan Misi Peradilann Agama ......................... 40

    4.1.3. Struktur Organisasi .......................................................... 40

    4.2. Object-Oriented Analysis ............................................................. 42

    x

  • 4.2.1. Alur Kerja Sistem Berjalan............................................... 42

    4.2.2. Identifikasi Masalah ......................................................... 43

    4.2.3. Uraian Singkat Sistem yang Diusulkan ........................... 45

    4.2.4. Perancangan Use-case Diagram........................................47

    4.3. Object-Oriented Design................................................................ 54

    4.3.1. Perancangan Activity Diagram.......................................... 54

    4.3.2. Perancangan Sequence Diagram.......................................64

    4.3.3. Perancangan Class Diagram..............................................71

    4.3.4. Spesifikasi Basis Data.......................................................72

    4.3.5. Kamus Data........................................................................74

    4.3.6. Perancangan User Interface .............................................. 75

    4.4. Implementsi .................................................................................. 77

    4.4.1. Bahasa pemrograman dan Komponen ............................. 77

    4.4.2. Struktur File ..................................................................... 78

    4.4.3. Alur Kerja Codeigniter Framework ................................. 78

    4.5. Pengujian ..................................................................................... 86

    4.5.1. Pengujian Mandiri ............................................................ 86

    4.5.2. Pengujian Lapangan .........................................................88

    BAB V KESIMPULAN DAN SARAN

    5.1. Kesimpulan .................................................................................. 90

    5.2. Saran ............................................................................................. 92

    DAFTAR PUSTAKA ................................................................................ 93

    LAMPIRAN

    xi

  • DAFTAR ISTILAH

    Activity diagram : menggambarkan berbagai alir aktivitas dalam sistem yang

    sedang dirancang, bagaimana masing-masing alir

    berawal, decision yang mungkin terjadi, dan

    bagaimana mereka berakhir.

    Admin : Orang yang memeberikan pertanyaan kepada User Registrar untuk

    menganalisis status pengguna secara individual dan

    permasalahan yang ada, serta untuk membuat

    himpunan statistik.

    Authentication: proses dalam rangka validasi user pada saat memasuki sistem. Nama

    dan password dari user dicek melalui proses yang

    mengecek langsung ke daftar mereka yang

    diberikan hak untuk memasuki sistem tersebut.

    Sifat mengetahui bahwa data yang diterima adalah

    sama dengan data yang dikirim dan bahwa pengirim

    yang mengklaim adalah benar-benar pengirim

    sebenarnya.

    Cache : Memori yang memegang data terbaru yang diakses, yang dirancang untuk

    mempercepat akses berikutnya ke data yang sama

    xvii

  • Class diagram : sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah

    objek dan merupakan inti dari pengembangan dan

    desain berorientasi objek.

    Codeigniter : Sebuah PHP framework yang berbasis MVC.

    Component diagram : menggambarkan struktur dan hubungan antar komponen

    piranti lunak, termasuk ketergantungan

    (dependency) di antaranya.

    Database : Sekumpulan file yang saling terkait dan membentuk suatu bangun

    data. Database minimal terdiri dari satu file yang

    cukup untuk dimanipulasi oleh komputer

    sedemikian rupa.

    Deployment/physical diagram : menggambarkan detail bagaimana komponen di-

    deploy dalam infrastruktur sistem, di mana

    komponen akan terletak (pada mesin, server atau

    piranti keras apa), bagaimana kemampuan jaringan

    pada lokasi tersebut, spesifikasi server, dan hal-hal

    lain yang bersifat fisik.

    Filtering : Dalam konteks Web, merupakan proses pemindahan atau pengeditan

    content secara dinamis untuk tujuan pemeriksaan.

    xviii

  • Flowchart : Diagram yang menunjukan alur data melalui program atau sistem

    penanganan informasi dan operasi-operasi yang

    dikenakan pada data pada titik-titik yang penting di

    sepanjang jalur.

    Form rendering : Fungsi untuk membuat sebuah form.

    Framework : dalam sistem berorientasi objek, merupakan kumpulan class yang

    melambangkan bentuk abstrak untuk pemecahan

    sejumlah masalah yang berhubungan.

    MVC : Model View Controller merupakan suatu konsep yang cukup populer dalam

    pembangunan aplikasi web, berawal pada bahasa

    pemrograman Small Talk.

    Open source : Perintah-perintah program atau bahasa pemrograman yang tersedia

    secara gratis berikut dengan kode-kode dari bahasa

    pemrograman yang digunakan dan untuk digunakan

    oleh kalangan luas. Boleh dimodifikasi dan

    digunakan oleh siapa saja.

    Query : Suatu nama yang diberikan kepada string untuk digunakan oleh bahasa

    pemrograman, yang dimanfaatkan untuk

    pengaksesan database. Pengakses dapat mengases

    data yang diperlukan untuk mendapatkan informasi.

    xix

  • Dengan adanya Query ini, merupakan kemudahan

    bagi suatu bahasa pemrograman terhadap

    kompatibilitas akses terhadap database tersebut.

    Query ini suatu extracting data dari suatu database

    dan menampilkannya untuk {pengolahan} lebih

    lanjut

    Rapid Aplication Development : sebuah model proses perkembangan software

    sekuensial linier yang menekankan siklus

    perkembangan yang sangat cepat.

    Rapid Prototype : Pembentukan model kerja modul perangkat lunak untuk

    menunjukkan kelayakan fungsi. Prototipe yang

    kemudian disempurnakan untuk dimasukkan ke

    dalam produk akhir.

    Reporting engine : fungsi untuk membentuk sebuah laporan berformat file office

    Routing : Jalur dari satu host ke host lainnya sehingga terjadi komunikasi dan

    pertukaran informasi antar komputer.

    Ruby on Rails : framework yang menggunakan bahasa pemrograman ruby yang

    menggunakan pendekatan Model View Controller

    (MVC).

    xx

  • Sequence diagram : menggambarkan interaksi antar objek di dalam dan di sekitar

    sistem (termasuk pengguna, display, dan

    sebagainya) berupa message yang digambarkan

    terhadap waktu

    SQL Injection : sebuah teknik untuk merubah database server melalui aplikasi client.

    Statechart diagram : menggambarkan transisi dan perubahan keadaan (dari satu

    state ke state lainnya) suatu objek pada sistem

    sebagai akibat dari stimuli yang diterima.

    Unified Modelling Language : notasi diagram untuk menggambarkan artefak pada

    Object-Oriented Analysis and Design (OOAD).

    Use Case Diagram : menggambarkan fungsionalitas yang diharapkan dari sebuah

    sistem.

    User : Pengguna. Biasanya ditujukan kepada pengguna suatu sistem yang

    umumnya adalah manusia. Misalnya pengguna

    komputer.

    User Interface : Perantara yang disediakan untuk user, misalnya interaksi dari mesin

    komputer ke layar monitor, sehingga seorang user

    dapat mengetahui apa yang terjadi pada sistem yang

    digunakannya.

    xxi

  • Validasi : Operasi pemeriksaan data untuk untuk memastikan data tersebut

    adalah benar.

    web based : sebuah sistem yang berbasiskan web sehingga bisa di akses mealui

    web browser

    XSS : suatu cara memasukan code/script HTML kedalam suatu web site dan

    dijalankan melalui browser di client.

    xxii

  • DAFTAR GAMBAR

    Halaman

    Gambar 2.1 Interaksi MVC 10............................................................................ 11

    Gambar 2.2 Struktur Direktori Codeigniter........................................................ 12

    Gambar 2.3. Contoh Use-case Diagram.............................................................. 19

    Gambar 2.4. Contoh Class Diagram................................................................... 20

    Gambar 2.5 Contoh Activity diagram................................................................. 21

    Gambar 4.1 Struktur Organisasi Badan Peradilan Agama.................................. 40

    Gambar 4.2. Struktur Organisasi Pengadilan Tinggi Agama.............................. 41

    Gambar 4.3. Struktur Organisasi Pengadilan Agama......................................... 41

    Gambar 4.4. Flowchart Sistem yang sedang berjalan......................................... 43

    Gambar 4.5. Flowchart Sistem yang ditawarkan................................................ 46

    Gambar 4.6. Use Case Sistem yang ditawarkan................................................. 49

    Gambar 4.7. Activity diagram Login................................................................... 55

    Gambar 4.8. Activity diagram input PTA........................................................... 55

    Gambar 4.9. Activity diagram edit PTA.............................................................. 56

    Gambar 4.10. Activity diagram delete PTA........................................................ 57

    Gambar 4.11. Activity diagram view PTA.......................................................... 57

    Gambar 4.12. Activity diagram input PA ........................................................... 58

    Gambar 4.13. Activity diagram edit PA.............................................................. 58

    Gambar 4.14. Activity diagram delete PA.......................................................... 59

    Gambar 4.15. Activity diagram view PA............................................................ 59

    Gambar 4.16. Activity diagram input sidang...................................................... 60

    xii

  • Gambar 4.17. Activity diagram edit sidang......................................................... 60

    Gambar 4.18. Activity diagram delete sidang..................................................... 61

    Gambar 4.19. Activity diagram view sidang....................................................... 62

    Gambar 4.20. Activity diagram search data sidang............................................ 62

    Gambar 4.21. Activity diagram report data sidang............................................. 63

    Gambar 4.22. Activity diagram view system log...................................................63

    Gambar 4.23. Sequence diagram login............................................................... 64

    Gambar 4.24. Sequence diagram input............................................................... 65

    Gambar 4.25. Sequence diagram edit ................................................................ 66

    Gambar 4.26. Sequence diagram delete.............................................................. 67

    Gambar 4.27. Sequence diagram vew PTA........................................................ 68

    Gambar 4.28. Sequence diagram vew PA........................................................... 68

    Gambar 4.29. Sequence diagram vew sidang...................................................... 69

    Gambar 4.30. Sequence diagram search sidang................................................... 69

    Gambar 4.31. Sequence diagram report sidang................................................... 70

    Gambar 4.32. Sequence diagram view system log............................................... 71

    Gambar 4.33. Class diagram................................................................................ 71

    Gambar 4.34. Perancangan halaman login........................................................... 75

    Gambar 4.35. Perancangan halaman input data PTA.......................................... 76

    Gambar 4.36. Perancangan halaman input data PA............................................. 76

    Gambar 4.37. Perancangan halaman input data sidang........................................ 76

    Gambar 4.38. Perancangan halaman view data sidang........................................ 77

    Gambar 4.39. Alur kerja framework codeigniter................................................. 78

    xiii

  • DAFTAR TABEL

    Halaman

    Tabel 4.1. Kamus data sistem informasi sidang keliling.................................... 87

    Tabel 4.2 Hasil Pengujian Mandiri .................................................................... 99

    Tabel 4.3 Pengujian Lapangan.......................................................................... 101

    xii

  • BAB I

    PENDAHULUAN

    1.1. Latar Belakang

    Dunia pemrograman saat ini, baik pemrograman desktop maupun web

    based, sudah semakin marak pengerjaannya dengan menggunakan framework.

    Framework memang dikembangkan untuk mempermudah dalam developing

    suatu aplikasi. Selain itu, dengan framework, waktu yang dihabiskan untuk

    membangun sebuah aplikasi dapat dikurangi secara signifikan (David Upton,

    2007).

    CI (codeigniter) Framework merupakan sebuah framework berbasis

    PHP yang mengorganisasi file menjadi 3 (tiga) kelompok, yaitu model yang

    merupakan kelompok file yang mengatur konfigurasi database, view yang

    merupakan kelompok file yang mengatur tampilan, dan controler yang

    merupakan kelompok file yang menghubungkan file-file model dengan file-

    file view.(Thomas Myer, 2008)

    Dalam suatu institusi pemerintah yang memimpin institusi dibawahnya

    yang tersebar diseluruh Indonesia, sering terjadi kesulitan dalam pengumpulan

    informasi dari institusi yang lebih rendah yang tersebar diseluruh indonesia.

    Kesulitan yang dialami misalnya terjadi perbedaan struktur form laporan

    sehingga institusi pusat yang menerimanya sulit dalam pengorganisasian data

    yang diterima. Semua itu terjadi karena form laporan dibuat dengan cara yang

    berbeda disetiap daerah.

    1

  • Untuk mencegah hal itu terjadi dan memudahkan institusi pemerintah

    yang berada di daerah yang memberikan laporan maupun institusi pemerintah

    yang berada di pemerintahan pusat yang menerima laporan tersebut, maka

    pengembangan sistem dalam hal pengorganisasian laporan dinilai perlu untuk

    dilakukan. Adanya sistem seperti ini otomatis akan membantu setiap institusi

    baik yang mengirim maupun yang menerima laporan, serta memudahkan

    mencari laporan - laporan yang terdahulu. Oleh karena itu, penulis ingin

    mencoba membangun sebuah aplikasi yang dapat mengorganisir data laporan

    dengan menggunakan CI (codeigniter) framework, karena dengan

    menggunakan CI (codeigniter) framework, pengembangan aplikasi ini dapat

    berjalan lebih cepat. Selain itu aplikasi akan menjadi lebih stabil dalam

    mengorganisir data yang banyak dan tampilan sesuai keinginan kita karena

    aplikasi ini berbasis web.

    Objek penelitian yang diambil oleh penulis adalah Badan Peradilan

    Agama, mengingat institusi tersebut memimpin Pengadilan Tinggi Agama

    yang berada di tingkat propinsi dan Pengadilan Agama yang berada ditingkat

    kabupaten diseluruh Indonesia. Pada tahun 2009 ini Badan Peradilan Agama

    sedang mencanangkan program justice for the poor dimana pihak

    pengadilan mendatangi orang yang mendaftar ke pegadlian dan tidak mampu

    datang ke pengadilan karena jauh dari tempat pengadilan, sidang seperti itu

    disebut dengan sidang keliing. Mengingat program ini baru dibuat maka

    belum ada sistem untuk mengumpulan laporan sidang keliling dari berbagai

    daerah ke pemerintah pusat. Hal inilah yang mendorong penulis untuk

    2

  • melakukan penelitian PENERAPAN FRAMEWORK CI (CODEIGNITER)

    DALAM PENGEMBANGAN SISTEM INFORMASI SIDANG

    KELILING dengan studi Kasus pada Badan Peradilan Agama.

    Nantinya, aplikasi ini diharapkan dapat memudahkan pengadilan agama

    diberbagai daerah dalam pelaporan pelaksanaan sidang keliling dan pencarian

    laporan sidang keliling yang telah terdahulu.

    1.2. Perumusan Masalah

    Berdasarkan penjabaran tersebut, penulis mengidentifikasikan masalah

    yang saat ini dihadapi adalah :

    1. Belum adanya format laporan yang valid sehingga setiap daerah

    memberikan format laporan yang berbeda.

    2. Pengiriman laporan melalui pos ataupun e-mail sehingga kurang

    terdistribusi dengan baik.

    3. Pekerjaan pengorganisasian laporan sidang keliling masih dilakukan

    secara manual.

    4. Akan munculnya kesulitan pencarian data laporan apabila data yang

    terkumpul sudah banyak.

    Sehingga penulis merumuskan bahwa permasalahan yang akan diselesaikan

    dengan penelitian ini adalah : Bagaimana menggorganisasikan data laporan

    sidang keliling dengan menggunakan CI (Codeigniter) Framework ?

    3

  • 1.3. Pembatasan Masalah

    Dalam perancangan sistem informasi sidang keliling ini, penulis

    membatasi masalah sebagai berikut :

    1. Aplikasi ini hanya untuk intern Badan Peradilan Agama bukan untuk

    umum.

    2. Analisis dan perancangan aplikasi berbasis web yang dapat mengakses

    informasi dari basis data tersebut kepada user.

    3. Perancangan aplikasi sistem informasi sidang keliling berbasis web yang

    dapat mempermudah pencarian terhadap sidang tertentu.

    4. Dalam melakukan perancangan aplikasi, penulis menggunakan Unified

    Modelling Language (UML) sebagai tools-nya.

    5. Dalam implementasinya, penulis menggunakan CI Framework sebagai

    framework-nya, database yang digunakan adalah mysql, dan aplikasi

    dijalankan di web badilag.net. Sedangkan untuk reporting engine, penulis

    menggunakan dompdf.

    1.4. Tujuan Penelitian

    Tujuan yang ingin dicapai oleh penulis dari penelitian ini adalah :

    1. Merancang sebuah aplikasi sistem informasi sidang keliling untuk

    mendistribusikan dan mengorganisasikan data laporan sidang keliling.

    2. Merancang aplikasi sistem informasi sidang keliling sehingga pemasukan

    data dapat dilakukan secara otomatis ke dalam database melalui media

    web.

    4

  • 3. Merancang aplikasi sistem informasi sidang keliling yang dapat

    memudahkan pencarian serta pengorganisasian data.

    1.5. Manfaat Penelitian

    1.5.1. Bagi Badan Peradilan Agama

    Manfaat yang dapat dipetik oleh Badan Peradilan Agama dari

    penelitian ini antara lain :

    1. Pengorganisasian data sidang keliling dalam bentuk basis data.

    2. Dapat mempermudah pihak badilag dalam mengorganisir data

    sidang keliling.

    3. Dapat mempermudah pihak badilag dalam pencarian maupun

    perubahan data sidang keliling.

    1.5.2. Bagi Pengadilan Agama

    Manfaat yang dapat diambil oleh dosen dari adanya sistem

    informasi sidang keliling ini antara lain :

    1. Dapat mempermudah pihak pengadilan agama dalam memasukkan

    data sidang keliling

    2. Dapat mempermudah pihak pengadilan agama dalam pencarian

    data sidang keliling.

    1.6. Metodologi Penelitian

    1.6.1. Metode Pengumpulan Data

    Pada metode pengumpulan data ini penulis melakukan studi lapangan

    yang terdiri dari observasi dan wawancara.

    5

  • Observasi dan wawancara dilakukan ke Badan Peradilan Agama

    Jakarta untuk mengumpulkan data mengenai proses yang terjadi dan

    sistem yang sedang berjalan di Badan Peradilan Agama Jakarta.

    1.6.2. Metode Pengembangan Sistem

    Proses pengembangan sistem informasi sidang keliling

    menggunakan OOAD (Object Oriented Analysis and Design) yang

    terdiri dari metode analisis dan metode perancangan. (Adi Nugroho,

    2005). Alat bantu pemodelan sistem yang digunakan adalah Unified

    Modelling Language (UML).

    1.7. Sistematika Penulisan

    Dalam skripsi ini, penulis menjabarkan penelitian dalam Perancangan

    Sistem Informasi Sidang Keliling ini dalam 5 (lima) Bab, yaitu :

    BAB I PENDAHULUAN

    Bab ini berisi pengantar berupa latar belakang dilakukannya

    penelitian, perumusan masalah, pembatasan masalah, tujuan,

    serta manfaat yang dapat diambil dari penelitian ini.

    BAB II LANDASAN TEORI

    Bab ini berisi pembahasan teori-teori yang digunakan sebagai

    panduan dasar dalam pengembangan sistem ini.

    6

  • BAB III METODOLOGI PENELITIAN

    Bab ini berisi metodologi penelitian yang digunakan serta

    langkah-langkah yang digunakan terkait dengan penelitian

    yang dilakukan.

    BAB IV ANALISIS DAN PERANCANGAN SISTEM

    Bab ini berisi analisis terhadap kebutuhan sistem, serta

    implementasi pengembangannya secara konkrit.

    BAB V KESIMPULAN DAN SARAN

    Bab ini merupakan bab penutup yang berisi kesimpulan serta

    saran yang dapat membantu pengembangan sistem informasi

    ini di masa yang akan datang.

    7

  • BAB II

    LANDASAN TEORI

    2.1. Penerapan

    Berdasarkan definisi yang diberikan oleh Kamus Besar Bahasa

    Indonesia (KBBI), penerapan, yang berasal dari kata dasar terap, berarti:

    proses, cara, perbuatan menerapkan.

    (Pusat Bahasa Departemen Pendidikan Nasional, 2008).

    Jadi, penerapan adalah sebuah cara untuk melakukan sesuatu

    berdasarkan aturan atau metode tertentu. Dalam konteks ini, aturan yang

    akan dijadikan acuan adalah Codeigniter Framework. Mengenai

    Codeigniter Framework, akan dijelaskan pada bagian berikutnya.

    2.2. Framework

    Framework dalam sistem berorientasi objek, merupakan kumpulan

    class yang melambangkan bentuk abstrak untuk pemecahan sejumlah

    masalah yang berhubungan.(Denis Howe, 1995).

    Framework dalam dunia komputer digunakan sebagai sebuah

    acuan utama berupa kerangka program yang bersifat global, yang dapat

    disesuaikan dengan keinginan penggunanya. Framework yang

    dikembangkan saat ini telah mencakup berbagai macam bahasa

    pemrograman. Pada pemrograman web, framework telah dikembangkan

    untuk bahasa pemrograman antara lain PHP, dan Java. Untuk PHP,

    framework yang banyak digunakan misalnya Zend Framework yang

    8

  • dikembangkan oleh Zend Technologies, CodeIgniter yang dikembangkan

    oleh Ellislab, Inc., dan Seagull Framework yang memiliki lisensi dibawah

    BSD.

    Sebuah framework selain menyediakan lingkungan pengembangan

    sendiri juga menyediakan berbagai macam fungsi siap pakai yang bisa kita

    gunakan dalam pembuatan website.

    2.2.1. Zend Framework

    Zend framework merupakan sebuah open source framework

    yang berorientasi objek. Zend framework berjalan di bawah PHP 5 dan

    memiliki lisensi new BSD. Struktur komponen dari zend framework

    sangat unik, setiap komponennya bisa didesain dengan sedikit

    dependensi dengan komponen lainnya. Arsitektur tersebut

    memungkinkan pengembang untuk memakai komponen itu sendiri-

    sendiri.(Morgan, 2005)

    Komponen zend framework menawarkan implementasi MVC

    dengan performa tinggi, abstraksi basis data yang mudah digunakan,

    dan form komponen seperti HTML form rendering, validasi dan

    filtering.

    2.2.2. CakePHP

    CakePHP merupakan sebuah rapid development framework

    yang gratis dan sumber terbuka untuk PHP. CakePHP merupakan

    struktur pondasi bagi programer untuk membuat aplikasi web. Tujuan

    9

  • utamanya adalah mempermudah programer bekerja secara terstruktur

    dan cepat tanpa kehilangan fleksibilitas.

    CakePHP membuang proses monoton dalam pengembangan

    aplikasi web. CakePHP menyediakan semua alat bantu yang

    diperlukan untuk memulai tugas coding yang perlu diselesaikan: yaitu

    logika aplikasi. Daripada membuat sesuatu yang baru setiap memulai

    proyek baru, Anda bisa meninjau unduhan CakePHP dan mulai fokus

    kepada logik aplikasi yang hendak dibangun. (Rampersad, 2009)

    2.2.3. Ruby on Rails

    Ruby diciptakan oleh Yukihiro matz Matsumoto. Ruby

    merupakan penggabungan dari bahasa-bahasa pemrograman lainnya

    seperti Perl, Smalltalk, Eiffel, dan Lisp.

    Inti dari bahasa pemrograman Ruby yaitu semua objek. Setiap

    informasi dan kode dapat diberi property dan action. Dalam

    pemrograman berorientasi objek setiap pemanggilan property dan

    action dilakukan melalui metode.

    Ruby on Rails merupakan Ruby-based framework yang

    menggunakan pendekatan Model View Controller (MVC). Jika ingin

    membangun suatu website dengan menggunakan Ruby, maka

    dibutuhkan Rails. Rails merupakan salah satu framework Ruby yang

    paling populer sekarang ini. Oleh karena itu dinamakan Ruby on Rails.

    Dilihat dari namanya sering ada salah pengertian bahwa bukan Ruby

    10

  • yang digunakan pada Rails tetapi Rails yang digunakan pada Ruby.(

    Rnn Jensen, 2006)

    2.2.4. CodeIgniter Framework

    Codeigniter adalah aplikasi open source dan juga merupakan

    salah satu PHP framework yang berbasiskan pada metode MVC

    (Model, Controller, dan View) (Thomas Myer, 2008). Maksud dari

    MVC ini sendiri adalah memisahkan 3 hal pokok (basis data, tampilan

    situs web, dan logika aplikasi) di dalam pembuatan suatu situs web ke

    dalam 3 bagian, yaitu bagian model untuk basis data, bagian view

    untuk tampilan situs web, dan bagian controller untuk logika aplikasi.

    Codeigniter dikembangkan oleh Rick Ellis, dengan versi awal

    yang dirilis pertama kali pada tanggal 28 Februari 2006. Dari tahun

    itulah hingga sekarang, telah muncul banyak versi codeigniter yang

    terus berkembang dengan penambahan fitur yang baru dari versi

    sebelumnya. Untuk versi terbaru dari codeigniter adalah versi 1.7.2.

    Gambar 2.1 Interaksi MVC

    11

  • Gambar 2.2 Struktur Direktori Codeigniter

    2.3. Model View Controller (MVC)

    Model View Controller merupakan suatu konsep yang cukup

    populer dalam pembangunan aplikasi web, berawal pada bahasa

    pemrograman Small Talk.

    Secara sederhana konsep MVC terdiri dari tiga bagian yaitu bagian

    Model, bagian View dan bagian Controller. Didalam website dinamis

    setidaknya terdiri dari 3 hal yang paling pokok, yaitu basis data, logika

    aplikasi dan cara menampilkan halaman wesite. 3 hal tersebut

    direpresentasikan dengan MVC yaitu model untuk basis data, view untuk

    cara menampilkan halaman website dan controller untuk logika aplikasi.

    12

  • 2.3.1. Model

    Merepresentasikan struktur data dari website yang bisa berupa

    basis data maupun data lain, misalnya dalam bentuk file teks atau file xml.

    Biasanya didalam model akan berisi class dan fungsi untuk mengambil,

    melakukan update dan menghapus data website. Karena sebuah website

    biasanya memnggunakan basis data dalam menyimpan data maka bagian

    Model biasanya akan berhubungan dengan perintah-perintah query SQL.

    Model khusus digunakan untuk melakukan koneksi ke basis data

    oleh karena itu logika-logika pemrograman yang berada didalam model

    juga harus yang berhubungan dengan basis data.

    2.3.2. View

    Merupakan informasi yang ditampilkan kepada pengunjung

    website Sebisa mungkin didalam View tidak berisi logika-logika kode

    tetapi hanya berisi variabel-variabel yang berisi data yang siap

    ditampilkan. View bisa dibilang adalah halaman website yang dibuat

    menggunakan HTMLdengan bantuan CSS atau JavaScript.

    Didalam view tidak ada kode untuk melakukan koneksi ke

    basisdata. View hanya dikhususkan untuk menampilkan data-data hasil

    dari model dan controller.

    2.3.3. Controller

    Controller merupakan penghubung antara Model dan View. Di

    dalam Controller inilah terdapat class dan fungsi-fungsi yang memproses

    permintaan dari View kedalam struktur data didalam Model.

    13

  • Controller juga tidak berisi kode untuk mengakses basis data.

    Tugas controller adalah menyediakan berbagai variabel yang akan

    ditampilkan di view, memanggil model untuk melakukan akses ke basis

    data, menyediakan penanganan error, mengerjakan proses logika dari

    aplikasi serta melakukan validasi atau cek terhadap input.

    2.4. Pengembangan

    Definisi pengembangan menurut Kamus Besar Bahasa Indonesia

    adalah berasal dari kata dasar kembang, yakni suatu proses, cara,

    perbuatan menjadikan maju (baik, sempurna, dan sebagainya). Jadi,

    pengembangan merupakan sebuah tindakan untuk mengubah sesuatu

    menjadi lebih baik.

    (Pusat Bahasa Departemen Pendidikan Nasional, 2008).

    Dalam hal ini, pengembangan berarti sebuah tindakan, proses, dan

    cara untuk menjadikan distribusi data persidangan menjadi lebih baik,

    yaitu dari sistem yang masih manual menjadi sistem yang telah

    terkomputerisasi.

    2.5. Konsep Sistem Informasi

    Sistem informasi bertujuan untuk menyajikan informasi guna

    mendukung fungsi operasional, manajemen, dan pengambil keputusan

    dalam sebuah organisasi.

    14

  • 2.5.1. Pengertian Sistem

    Sistem adalah sekelompok komponen yang saling berhubungan,

    yang bekerja bersama-sama untuk mencapai tujuan dengan menerima

    input dan menghasilkan output melalui suatu proses transformasi yang

    terorganisir. (OBrien, 2006)

    2.5.2. Pengertian Informasi

    Informasi adalah data yang telah terorganisasi, dengan demikian

    data tersebut memiliki arti dan nilai bagi si penerima. (Turban, 2005)

    2.5.3. Pengertian Sistem Informasi

    Sistem informasi merupakan suatu proses pengumpulan,

    pengolahan, penyimpanan, dan penyebaran informasi untuk tujuan

    tertentu, kebanyakan sistem informasi sudah terkomputerisasi.

    (Turban, 2005)

    Sistem Informasi adalah suatu pengaturan dari orang-orang, data,

    proses, dan teknologi informasi yang saling berinteraksi untuk

    mengumpulkan, memproses, menyimpan, dan menyediakan informasi

    yang dibutuhkan. (Whitten, 2004)

    Sistem informasi adalah komponen-komponen yang saling

    berhubungan dan bekerjasama untuk mengumpulkan, memproses,

    menyimpan, dan mendistribusikan informasi untuk mendukung

    pengambilan keputusan, koordinasi, kontrol, anlisis, dan visualisasi

    dalam suatu organisasi. (Laudon, 2004)

    15

  • Berdasarkan definisi di atas dapat disimpulkan bahwa, sistem

    informasi adalah sekumpulan komponen yang saling berinteraksi

    dimana data dikumpulkan, diproses menjadi informasi dan

    didistribusikan kepada pemakai untuk mendukung pengambilan

    keputusan dan mencapai sasaran.

    2.5.4. Komponen Sistem Informasi

    Dalam suatu sistem informasi terdapat komponen-komponen

    seperti (Abdul Kadir, 2003) :

    1. Perangkat keras (Hardware): mencangkup peranti-peranti fisik

    seperti komputer dan printer.

    2. Perangkat lunak (software) atau program: sekumpulan instruksi

    yang memungkinkan perangkat keras untuk dapat memproses data.

    3. Prosedur (orang): sekumpulan aturan yang dipakai untuk

    mewujudkan pemrosesan data dan pembangkitan keluaran yang

    dikehendaki.

    4. Orang: semua pihak yang bertanggung jawab dalam

    pengembangan sistem informasi, pemrosesan, dan penggunaan

    keluaran sistem informasi.

    5. Basis data (database): sekumpulan tabel, hubungan, dan lain-lain

    yang berkaitan dengan penyimpanan data.

    6. Jaringan kompueter dan komunikasi data: sistem penghubung yang

    memungkinkan sumber (resources) dipakai secara bersama atau

    diakses oleh sejumlah pemakai.

    16

  • 2.6. Sidang Keliling

    Berdasarkan definisi yang diberikan oleh Kamus Besar Bahasa

    Indonesia (KBBI), sidang berarti pertemuan untuk membicarakan sesuatu.

    Sidang pengadilan berarti proses memeriksa dan mengadili perkara pidana

    di dalam ruang sidang pengadilan di bawah pimpinan hakim tunggal atau

    majelis hakim. (Pusat Bahasa Departemen Pendidikan Nasional, 2008).

    Menurut Drs. H. Wahyu Widiana, MA selaku Direktur Jendral

    Badan Peradilan Agama, Sidang Keliling adalah sidang yang dilakukan

    pengadilan agama dimana pelaksanaannya tidak di ruang sidang tetapi di

    tempat terdekat dengan tempat tinggal peserta sidang seperti di kantor desa

    atau kantor kecamatan. Sidang keliling ini diadakan dalam rangka program

    justice for the poor, yaitu program untuk masyarakat yang kurang

    mampu dan tinggal jauh dari pengadilan agama.

    2.7. Object Oriented Analysis and Design (OOAD)

    OOAD adalah metode analisis yang memerikasa requirements dari

    sudut pandang kelas kelas dan objek yang ditemui dalam ruang lingkup

    permasalahan yang mengarahkan arsitektur software yang didasarkan pada

    manipulasi objek-objek sistem atau subsistem. OOAD merupakan cara

    baru dalam memikirkan suatu masalah dengan menggunakan model yang

    dibuat menurut konsep sekitar dunia nyata. Dasar pembuatan adalah objek,

    yang merupakan kombinasi antara struktur data dan perilaku dalam satu

    entitas.

    17

  • OOAD mencakup analisis dan desain sebuah sistem dengan

    pendekatan objek, yaiut analisis berorientasi objek (OOA) dan desain

    berorientasi objek (OOD). OOA adalah metode analisis yang memerika

    requirement (syarat/keperluan) yang harus dipenuhi sebuah sistem) dari

    sudut pandang kelas-kelas dan objek-objek yang ditemui dalam ruang

    lingkup perusahaan. Sedangkan OOD adalah metode untuk mengarahkan

    arsitektur software yang didasarkan pada manipulasi objek-objek sistem

    atau subsistem.

    2.8. Unified modeling Language (UML)

    UML didefinisikan sebagai notasi diagram untuk menggambarkan

    artefak pada Object-Oriented Analysis and Design (OOAD). Dengan

    UML kita bisa memvisuallisasikan, menetapkan, membuat dan

    mendokumentasikan aplikasi software kita. Saat sistem software menjadi

    lebih besar dan lebih kompleks, kita perlu untuk mengatur kekompleksan

    tersebut dan dalam arti menyederhanakannya sehingga kita bisa lebih

    mengertinya. (Sri Dharwiyanti, 2003)

    Dengan menggunakan diagram-diagram UML, developer dapat

    melakukan pemrograman kode yang biasa dikenal dengan sebutan

    forward engineering, yaitu membuat kode dari model-model UML.

    Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan

    syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus

    untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk

    18

  • memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana

    bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama

    diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD

    (Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling

    Technique), dan Ivar Jacobson OOSE (Object-Oriented Software

    Engineering). (Sri Dharwiyanti, 2003)

    Diagram-diagram yang terdapat di dalam pemodelan UML adalah

    sebagai berikut :

    1. Use Case Diagram

    Use case diagram menggambarkan fungsionalitas yang diharapkan

    dari sebuah sistem. Yang ditekankan adalah apa yang diperbuat sistem,

    dan bukan bagaimana. Sebuah use case merepresentasikan sebuah

    interaksi antara aktor dengan sistem.

    Gambar 2.3 Contoh Use-case Diagram

    2. Class Diagram

    Class diagram adalah sebuah spesifikasi yang jika diinstansiasi

    akan menghasilkan sebuah objek dan merupakan inti dari pengembangan

    19

  • dan desain berorientasi objek. Class diagram menggambarkan keadaan

    (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk

    memanipulasi keadaan tersebut (metoda/fungsi). Class diagram

    menggambarkan struktur dan deskripsi class, package dan objek beserta

    hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan

    lain-lain.

    Class diagram memiliki tiga area pokok :

    1. Nama (dan stereotype)

    2. Atribut

    3. Metoda

    Gambar 2.4 Contoh Class Diagram

    3. Statechart Diagram

    Statechart diagram menggambarkan transisi dan perubahan

    keadaan (dari satu state ke state lainnya) suatu objek pada sistem sebagai

    akibat dari stimuli yang diterima. Pada umumnya statechart diagram

    menggambarkan class tertentu (satu class dapat memiliki lebih dari satu

    statechart diagram).

    20

  • 4. Activity Diagram

    Activity diagram menggambarkan berbagai alir aktivitas dalam

    sistem yang sedang dirancang, bagaimana masing-masing alir berawal,

    decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity

    diagram juga dapat menggambarkan proses paralel yang mungkin terjadi

    pada beberapa eksekusi.

    Gambar 2.5 Contoh Activity diagram

    Activity diagram merupakan state diagram khusus, di mana

    sebagian besar state adalah action dan sebagian besar transisi di-trigger

    oleh selesainya state sebelumnya (internal processing). Oleh karena itu

    activity diagram tidak menggambarkan behaviour internal sebuah sistem

    (dan interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan

    proses-proses dan jalur-jalur aktivitas dari level atas secara umum.

    5. Sequence Diagram

    Sequence diagram menggambarkan interaksi antar objek di dalam

    dan di sekitar sistem (termasuk pengguna, display, dan sebagainya)

    21

  • berupa message yang digambarkan terhadap waktu. Sequence diagram

    terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek

    yang terkait).

    Sequence diagram biasa digunakan untuk menggambarkan

    skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons

    dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa

    yang menjadi trigger aktivitas tersebut, proses dan perubahan apa saja

    yang terjadi secara internal dan output apa yang dihasilkan.

    6. Collaboration Diagram

    Collaboration diagram juga menggambarkan interaksi antar objek

    seperti sequence diagram, tetapi lebih menekankan pada peran masing-

    masing objek dan bukan pada waktu penyampaian message.

    Setiap message memiliki sequence number, di mana message dari

    level tertinggi memiliki nomor 1. Messages dari level yang sama memiliki

    prefiks yang sama.

    7. Component Diagram

    Component diagram menggambarkan struktur dan hubungan antar

    komponen piranti lunak, termasuk ketergantungan (dependency) di

    antaranya. Komponen piranti lunak adalah modul berisi code, baik berisi

    source code maupun binary code, baik library maupun executable, baik

    yang muncul pada compile time, link time, maupun run time. Umumnya

    komponen terbentuk dari beberapa class dan/atau package, tapi dapat

    juga dari komponen-komponen yang lebih kecil.

    22

  • 8. Deployment Diagram

    Deployment/physical diagram menggambarkan detail bagaimana

    komponen di-deploy dalam infrastruktur sistem, di mana komponen akan

    terletak (pada mesin, server atau piranti keras apa), bagaimana

    kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal-hal

    lain yang bersifat fisik. Sebuah node adalah server, workstation, atau

    piranti keras lain yang digunakan untuk men-deploy komponen dalam

    lingkungan sebenarnya. Hubungan antar node (misalnya TCP/IP) dan

    requirement dapat juga didefinisikan dalam diagram ini. (Sri

    Dharwiyanti, 2003)

    2.9. PHP

    2.9.1. Definisi PHP

    PHP adalah sebuah bahasa pemrograman yang didesain agar dapat

    disisipkan dengan mudah ke halaman HTML. PHP memberikan solusi

    sangat murah (karena gratis digunakan) dan dapat berjalan di berbagai

    jenis platform. Pada awalnya memang PHP berjalan di sistem UNIX dan

    variannya, namun kini dapat berjalan dengan lancar di lingkungan sistem

    operasi Windows. Suatu nilai tambah yang luar biasa karena proses

    pengembangan program berbasis web dapat dilakukan lintas sistem

    operasi.

    Dengan luasnya cakupan sistem operasi yang mampu menjalankan

    PHP dan ditambah begitu lengkapnya function yang dimilikinya (tersedia

    23

  • lebih dari 400 function di PHP yang sangat berguna) tidak heran jika

    PHP semakin menjadi tren di kalangan programmer web.

    Penemu bahasa pemrograman ini adalah Rasmus Lerdorf, yang

    bermula dari keinginan sederhana Lerdorf untuk mempunyai alat bantu

    dalam memonitor pengunjung yang melihat situs web pribadinya. Inilah

    sebabnya pada awal pengembangannya, PHP merupakan singkatan dari

    Personal Home Page tools, sebelum akhirnya menjadi Hypertext

    Preprocessor.

    2.9.2. Kelebihan PHP

    Di antara maraknya pemrograman server web saat ini, adalah ASP

    yang berkembang menjadi ASP .NET, JSP, CFML, dan PHP. Jika

    dibandingkan di antara 3 terbesar pemrograman server web di atas.

    Terdapat kelebihan dari PHP itu sendiri, yaitu :

    1. PHP merupakan sebuah bahasa script yang tidak melakukan

    sebuah kompilasi dalam penggunaanya. Tidak seperti halnya

    bahasa pemrograman aplikasi seperti Visual Basic dan Sebagainya.

    2. PHP dapat berjalan pada web server yang dirilis oleh Microsoft,

    seperti IIS atau PWS juga pada Apache yang bersifat open source.

    3. Karena sifatnya yang open source, maka perubahan dan

    perkembangan interpreter pada PHP lebih cepat dan mudah,

    karena banyak milis-milis dan developer yang siap membantu

    pengembangannya.

    24

  • 4. Jika dilihat dari segi pemahaman, PHP memiliki referensi yang

    begitu banyak sehingga sangat mudah untuk dipahami.

    5. PHP dapat berjalan pada 3 operating system, yaitu: Linux, Unux,

    dan Windows, dan juga dapat dijalankan secara runtime pada saat

    consule.

    2.9.3. Kekurangan PHP

    Seperti pemrograman aplikasi atau web lainnya, PHP pun memiliki

    beberapa kelemahan, di antaranya :

    1. Tidak ideal untuk pengembangan skala besar.

    2. Tidak memiliki sistem pemrograman berorientasi objek yang

    sesungguhnya (sampai versi 4 ini). Namun pada versi PHP 5 sudah

    dilengkapi OOP yang sesungguhnya.

    2.10. MySQL

    MySQL adalah sistem manajemen database yang bersifat open

    source. MySQL adalah pasangan serasi dari PHP. MySQL dibuat dan

    dikembangkan oleh MySQL AB yang berada di Swedia.

    MySQL merupakan sistem manajemen database yang bersifat

    relasional. Artinya data-data yang dikelola dalam database akan

    diletakkan pada beberapa table yang terpisah sehingga manipulasi data

    akan menjadi lebih cepat.

    25

  • MySQL dapat digunakan untuk mengelola database mulai dari

    yang kecil sampai dengan yang sangat besar. MySQL juga dapat

    menjalankan perintah-perintah Structured Query Language (SQL) untuk

    mengelola database-database relasional yang ada di dalamnya.

    2.11. XAMPP Server

    XAMPP Server adalah perangkat lunak gratis, yang mendukung

    banyak sistem operasi, merupakan kompilasi dari beberapa program

    untuk menjankan fungsinya sebagai server yang berdiri sendiri, yang

    terdiri atas program Apache HTTP Server, MySQL database, dan

    penterjemah bahasa yang ditulis dengan bahasa pemrogramaan PHP dan

    Perl. XAMPP adalah nama yang merupakan singkatan dari X berbagai

    sistem operasi (linux, mac, windows), Apache, MySQL, PHP, PERL.

    Program ini tersedia dalam GNU General Public License dan bebas,

    merupakan web server yang mudah digunakan yang dapat mampu

    melayani halaman dinamis. (Kai Seidler, 2008).

    2.12. Studi Sejenis

    Di bawah ini akan dipaparkan beberapa penelitian yang pernah

    ada yang berkaitan dengan codeigniter framework yang penulis gunakan

    sebagai bahan perbandingan.

    Dhika Rizki Anbiya (2009) dalam tugas akhirnya yang berjudul

    Pengembangan Aplikasi Social Networking Pada Program Studi TI

    UIN menerapkan codeigniter dalam memangun aplikasi social

    26

  • networking seperti yang sudah ada yaitu facebook. Metodologi penelitian

    yang digunakan dalam studi ini adalah Rapid Application Development.

    Dalam tugas akhir I Wayan Agus Suryanegara (2009) yang

    berjudul Analisis Perbandingan Penggunaan Framework Codeigniter

    Dan CakePHP Untuk Aplikasi WEB dilakukan analisis perbandingan

    terhadap framework Codeigniter dan CakePHP yang diimplementasikan

    dalam pembangunan aplikasi web CMS (Content Management System)

    berdasarkan beberapa parameter pengujian, yaitu: arsitektur, ketersediaan

    fitur (authentication, validation, pagination, template system) dan

    performansi framework. Hasil yang didapatkan pada studi ini adalah

    dengan pemanfaatan association data mapping pattern pada arsitektur dan

    penyediaan fitur framework yang lebih baik untuk mendukung

    pembangunan aplikasi web, menjadikan CakePHP lebih mudah untuk

    digunakan oleh web developer daripada Codeigniter. Namun performansi

    aplikasi web yang dihasilkan dengan penggunaan CakePHP tidak lebih

    efisien dibandingkan dengan Codeigniter.

    Dalam tugas akhir Riyan Fardian (2009) yang berjudul

    Perbandingan Pencegahan SQL Injection Menggunakan Regular

    Expression ( Regex) Pada Aplikasi Web Berbasis ASP .NET 2.0 Dan PHP

    5.0 CodeIgniter memberikan salah satu solusi berupa modul aplikasi

    pencegahan SQL Injection dengan nama srex. Srex diintegrasikan pada

    aplikasi web berbasis PHP 5.0 Code Igniter dan ASP .NET 2.0 dengan

    berdasarkan rules yang ada pada regex. Terdapat dua bentuk pengujian

    27

  • yaitu pengujian serangan SQL Injection terhadap kedua aplikasi web

    tanpa disisipkan modul srex dan pengujian serangan SQL Injection

    terhadap kedua aplikasi web dengan disisipkan modul srex. Hasil analisis

    berupa keefektifitasan ditanamkannya modul srex pada aplikasi web yang

    telah memiliki framework serta perbandingan tingkat keamanan PHP 5.0

    CodeIgniter dan ASP .NET 2.0 dalam mempertahankan diri terhadap

    serangan SQL Injection.

    Sedangkan dalam tugas akhir Devin Meidya Fonda (2009) yang

    berjudul Analisis Perbandingan Cross-Site Scripting Pada Framework

    PHP CodeIgniter dan Ruby on Rails Analysis Comparison of Cross-Site

    Scripting on PHP CodeIgniter and Ruby on Rails Frameworks

    mengimplementasikan aplikasi Review Buku Novel yang dibangun

    dengan menggunakan framework dan bahasa pemrograman yang berbeda

    yaitu PHP CodeIgniter dan Ruby on Rails, dimana didalamnya terdapat

    form yang berfungsi sebagai media untuk melakukan pengujian terhadap

    Cross- Site Scripting. Nantinya akan dilakukan pengujian beberapa vektor

    XSS terhadap aplikasi web yang masing-masing dibangun menggunakan

    PHP CodeIgniter dan Ruby on Rails. Sehingga akhirnya dapat diketahui

    perbandingan tingkat keamanan PHP CodeIgniter dan Ruby on Rails

    dalam hal vulnerabilitas terhadap Cross-Site Scripting.

    28

  • BAB III

    METODOLOGI PENELITIAN

    3.1. Tempat dan Waktu Penelitian

    Penelitian yang penulis lakukan bertempat di Badan Peradilan

    Agama Jakarta mulai dari bulan Oktober 2009 sampai bulan Januari 2010

    3.2. Metode Pengumpulan Data

    Pada metode pengumpulan data ini penulis melakukan observasi

    dan wawancara.

    3.2.1. Observasi

    Guna mengumpulkan informasi mengenai kebutuhan

    sistem (system requirements) penulis melakukan pengumpulan data

    dengan cara observasi di tempat penelitian. Penulis terjun langsung

    ke lapangan untuk mengetahui sistem yang sedang berjalan saat

    ini. Hal ini perlu dilakukan agar penulis dapat melakukan analisis

    terhadap sistem yang telah berjalan serta menentukan rancangan

    sistem baru yang akan dibangun agar tetap sinkron dengan sistem

    yang sudah ada.

    Selain system requirements, pada langkah ini penulis juga

    mengumpulkan data-data yang diperlukan untuk pembangunan

    aplikasi. Data yang dimaksud adalah sample data sidang keliling

    yang sudah ada sebelumnya.

    29

  • 30

    3.2.2. Wawancara

    Pada metode wawancara ini, penulis melakukan wawancara

    terhadap Drs. H. Wahyu Widiana, MA selaku Direktur Jendral

    Badan Peradilan Agama dan Bapak Hirpan Hilmi selaku staff IT di

    Badan Peradilan Agama Jakarta unutk memperoleh data-data yang

    diperlukan dalam pembuatan sistem.

    3.3. Metode Pengembangan Sistem

    3.3.1. Pemilihan Motode Object Oriented Analysis and Design (OOAD)

    Metode pengembangan sistem yang penulis gunakan dalam

    penelitian ini adalah metode Object Oriented Analysis and Design

    (OOAD).

    Pemilihan metode penelitian Object Oriented Analysis and Design

    (OOAD) ini dilakukan karena tiga alasan utama (Adi Nugroho, 2005)

    1. Model analisis pada analisis dengan metode terstruktur tidak cukup

    formal untuk diimplementasikan seacra langsung ke bahasa

    pemrograman.

    2. Sistem nyata harus diadaptasi ke lingkungan dimana system kelak

    akan diimplementasi. Dalam hal ini, perlu dilakukan modifikasi-

    modifikasi model anlisis ke beberapa faktor yang berbeda seperti

    kebutuhan kinerja, perangkat keras dan perangakat lunak system,

    DBMS (Database Management System). Dan bahasa pemrograman

    yang akan digunakan.

  • 31

    3. Hasil analisis dapat divalidasi menggunakan perancangan berorientasi

    objek. Pada tahap ini, kita dapat memverifikasi apakah hasil dari

    analisis sesuai untuk membangun sistem dan kemudian, jika tidak

    sesuai, kita kembali secara iteratif ke tahap analisis, serta membuat

    perubahan yang perlu pada model analisis.

    Metode OOAD dapat dibagi ke dalam dua tahapan utama yaitu :

    a. Object-oriented analysis.

    Pada tahap ini dilakukan pengidentifikasian tujuan-tujuan dari

    aplikasi atau sistem dan dilakukan pengidentifikasian syaarat-syarat

    atau kebutuhan informasi bagi sistem yang diperoleh dari

    pengidentifikasian tujuan-tujuan tersebut. Menjelaskan masalah-

    masalah yang terjadi pada peradilan agama khususnya dalam

    pelaporan data sidang keliling, membuat flowchart sistem yang sedang

    berjalan dan sistem yang akan dibuat.

    b. Object-oriented design.

    Pada tahap ini dilakukan perancangan terhadap proses-proses

    yang akan terjadi di dalam sistem, meliputi:

    Perancangan Aplikasi

    Pada tahap perancangan ini, penulis menggunakan Unified

    Modelling Language (UML) sebagai alat bantu (tools).

    Perancangan database

  • 32

    Pada tahap perancangan ini, penulis menggunakan Entity

    Relationship Diagram (ERD) sebagai alat bantu (tools).

    Perancangan Tampilan

    Pada tahap ini, penulis melakukan perancangan terhadap user

    interface dari aplikasi ini. Perancangan yang dilakukan

    meliputi halaman-halaman yang ada di dalam sistem.

    3.3.2.1. Kelebihan dan Kekurangan Object Oriented Analysis and

    Design (OOAD)

    a. Kelebihan

    1. Dibandingkan dengan metode terstruktur, OOAD lebih mudah

    digunakan dalam pembangunan system.

    2. Dibandingkan dengan terstruktur, waktu pengembangan, level

    organisasi, ketangguhan,dan penggunaan kembali (reuse) kode

    program lebih tinggi dibandingkan dengan metode OOAD.

    3. Tidak ada pemisahan antara fase desain dan analisis, sehingga

    meningkatkan komunikasi antara user dan developer dari awal

    hingga akhir pembangunan sistem.

    4. Analis dan programmer tidak dibatasi dengan batasan

    implementasi sistem, jadi desain dapat diformulasikan yang

    dapat dikonfirmasi dengan berbagai lingkungan eksekusi.

    5. Relasi obyek dengan entitas (thing) umumnya dapat di

    mapping dengan baik seperti kondisi pada dunia nyata dan

  • 33

    keterkaitan dalam sistem. Hal ini memudahkan dalam mehami

    desain.

    6. Memungkinkan adanya perubahan dan kepercayaan diri yang

    tinggi terhadap kebernaran software yang membantu untuk

    mengurangi resiko pada pembangunan sistem yang kompleks.

    7. Encapsulation data dan method, memungkinkan penggunaan

    kembali pada proyek lain, hal ini akan memperingan proses

    desain, pemrograman dan reduksi harga.

    8. OOAD memungkinkan adanya standarisasi obyek yang akan

    memudahkan memahami desain dan mengurangi resiko

    pelaksanaan proyek.

    9. Dekomposisi obyek, memungkinkan seorang analis untuk

    memcah masalah menjadi pecahan-pecahan masalah dan

    bagian-bagian yang dimanage secara terpisah. Kode program

    dapat dikerjakan bersama-sama. Metode ini memungkinkan

    pembangunan software dengan cepat, sehingga dapat segera

    masuk ke pasaran dan kompetitif. Sistem yang dihasilkan

    sangat fleksibel dan mudah dalam memelihara.

    b. Kekurangan

    1. Pada awal desain OOAD, system mungkin akan sangat

    simple.

    2. Pada OOAD lebih fockus pada coding dibandingkan dengan

    terstruktur.

  • 34

    3. Pada OOAD tidak menekankan pada kinerja team seperti pada

    terstruktur.

    4. Pada OOAD tidak mudah untuk mendefinisikan class dan

    obyek yang dibutuhkan sistem.

    5. Sering kali pemrogramam berorientasi obyek digunakan untuk

    melakukan anlisisis. (Supriyanto, 2008)

    3.4. Pemilihan Codeigniter Framework

    Framework yang penulis gunakan dalam penelitian ini adalah

    Codeigniter framework..

    Pemilihan codeigniter framework ini dilakukan setelah melihat dari

    studi sejenis yang telah dijelaskan pada bab 2 membuktikan bahwa

    codeigniter framework lebih unggul dibanding framework lain.

    Selain itu codeigniter framework juga memiliki beberapa kelebihan

    dibandingkan dengan framework lain yaitu :

    1. Gratis.

    CodeIgniter dilisensikan dibawah lisensi Apache/BSD style open

    source license, ini berarti kita dapat menggunakannya sesuai

    dengan keinginan kita.

    2. Berjalan di PHP versi 4 dan 5

    Sekarang ini PHP sudah mencapai versi ke 5, meskipun begitu

    masih banyak orang yang tetap menggunakan PHP versi 4, oleh

  • 35

    sebab itu CodeIgniter dikembangkan agar tetap kompatibel dengan

    PHP versi 4 dan dapat dijalankan pada PHP versi 5.

    3. Ringan dan Cepat

    Secara default CodeIgniter hanya berjalan dengan me-load

    beberapa pustaka saja, dengan demikian hanya membutuhkan

    resource yang sedikit sehingga ringan dan cepat dijalankan.

    Pustaka-pustaka lain yang nantinya akan digunakan bisa di load

    sesuai dengan kebutuhan.

    4. Menggunakan MVC

    CodeIgniter menggunakan lingkungan pengembangan dengan

    metode Model View Controller (MVC) yang membedakan antara

    logika dan presentasi/tampilan, sehingga tugas bisa lebih mudah

    dipecah-pecah.

    5. Dokumentasi

    Salah satu hal yang bisa dijadikan barometer apakah sebuah

    aplikasi benar-benar dikembangkan atau tidak bisa dilihat dari

    dokumentasinya. Adanya dokumentasi sangat memudahkan bagi

    pemula dalam mempelajari lingkungan pengembangan website

    dengan CodeIgniter.

    6. Pustaka / library yang lengkap

    CodeIgniter dilengkapi dengan berbagai pustaka siap pakai untuk

    berbagai kebutuhan, misalnya saja koneksi database, email, session

    dan cookies, keamanan, manipulasi gambar dan banyak lagi.

  • BAB IV

    ANALISIS DAN PERANCANGAN SISTEM

    4.1. Sekilas Tentang Badan Peradilan Agama

    4.1.1. Sejarah

    Perjalanan kehidupan pengadilan agama mengalami pasang

    surut. Adakalanya wewenang dan kekuasaan yang dimilikinya

    sesuai dengan nilai-nilai Islam dan kenyataan yang ada dalam

    masyarakat. Pada kesempatan lain kekuasaan dan wewenangnya

    dibatasi dengan berbagai kebijakan dan peraturan perundang-

    undangan, bahkan seringkali mengalami berbagai rekayasa dari

    penguasa dan golongan masyarakat tertentu agar posisi pengadilan

    agama melemah.

    Dengan keluarnya Undang -undang Nomor 14 Tahun 1970

    tentang Ketentuan-ketentuan Pokok Kekuasaan Kehakiman, maka

    kedudukan Peradilan Agama mulai Nampak jelas dalam sistem

    peradilan di Indonesia. Undang-undang ini menegaskan prinsip-

    prinsip sebagai berikut : Pertama, Peradilan dilakukan "Demi

    Keadilan Berdasarkan ketuhanan Yang Maha Esa". Kedua,

    Kekuasaan kehakiman dilakukan oleh pengadilan dalam

    lingkungan Peradilan Umum, Peradilan Agama, Peradilan Militer

    dan Peradilan Tata Usaha Negara. Ketiga, Mahkamah Agung

    adalah Pengadilan Negara Tertinggi. Keempat, Badan-badan yang

    36

  • melaksanakan peradilan secara organisatoris, administratif, dan

    finansial ada di bawah masing-masing departemen yang

    bersangkutan. Kelima, susunan kekuasaan serta acara dari badan

    peradilan itu masing-masing diatur dalam undang-undang

    tersendiri.

    Hal ini dengan sendirinya memberikan landasan yang

    kokoh bagi kemandirian peradilan agama, dan memberikan status

    yang sarna dengan peradilan-peradilan lainnya di Indonesia.

    Lahirnya Undang-undang Nomor 1 Tahun 1974 tentang

    Perkawinan memperkokoh keberadaan pengadilan agama. Di

    dalam undang-undang ini tidak ada ketentuan yang bertentangan

    dengan ajaran Islam. Pasa12 ayat (1) undang-undang ini semakin

    memperteguh pelaksanaan ajaran Islam (Hukum Islam).

    Suasana cerah kembali mewarnai perkembangan peradilan agama

    di Indonesia dengan keluarnya Undang- undang Nomor 7 Tahun

    1989 tentang Peradilan Agama yang telah memberikan landasan

    untuk mewujudkan peradilan agama yang mandiri, sederajat dan

    memantapkan serta mensejajarkan kedudukan peradilan agama

    dengan lingkungan peradilan lainnya.

    Dati uraian singkat tentang sejarah perkembangan peradilan

    agama tersebut di atas dapat disimpulkan bahwa peradilan agama

    bercita-cita untuk dapat memberikan pengayoman dan pelayanan

    hukum kepada masyarakat. Agar pengayoman hukum dan

    37

  • pelayanan hukum tersebut dapat terselenggara dengan baik,

    diperlukan perangkat sebagai berikut :

    Kelembagaan

    Peradilan Agama yang mandiri sebagaimana lingkungan

    peradilan yang lain - yang secara nyata - didukung dengan

    sarana dan prasarana serta tatalaksana yang memadai dan

    memanfaatkan perkembangan ilmu pengetahuan dan

    teknologi.

    Materi hukum

    Hukum Islam sebagai hukum materiil peradilan agama

    yang dituangkan dalam ketentuan perundang-undangan

    yang jelas. Dimulai dengan Kompilasi Hukum Islam, yang

    selanjutnya perlu disempurnakan dan dikembangkan,

    kemudian hukum mengenai shadaqah dan baitul mal segera

    dibentuk. Demikian pula dengan hukum formil peradilan

    agama perlu dikembangkan.

    Personil

    Dalam melaksanakan tugas kedinasan ia sebagai aparat

    penegak hukum yang profesional, netral (tidak memihak)

    dan sebagai anggota masvarakat ia orang yang menguasai

    masalah keislaman, yang menjadi panutan dan pemersatu

    masyarakat sekelilingnya serta punya integritas sebagai

    seorang muslim.

    38

  • 4.1.2. Visi dan Misi

    4.1.2.1. Visi dan Misi Mahkamah agung

    Visi

    Mewujudkan supremasi hukum melalui Kekuasaan Kehakiman yang

    mandiri, efektif, efisien serta mendapat kepercayaan publik, professional

    dalam memberi pelayanan hukum yang berkualitas, etis terjangkau dan

    biaya rendah bagi masyarakat serta mampu menjawab panggilan

    pelayanan publik.

    Misi

    1. Mewujudkan rasa keadilan sesuai dengan undang-undang dan

    peraturanserta keadilan masyarakat.

    2. Mewujudkan peradilan yang mandiri dan independendari campur

    tangan pihak lain.

    3. Memperbaiki akses pelayanan di bidang peradilan kepada

    masyarakat.

    4. Memperbaiki kualitas input internal pada proses peradilan.

    5. Mewujudkan institusi peradilan yang efektif, efisien, martabat dan

    dihormati.

    6. Melaksanakan kekuasaan kehakimanyang mandiri, tidak memihak

    dan transparan.

    4.1.2.2. Visi dan Misi Direktorat Jendral Peradilan Agama

    Visi

    Terwujudnya pelayanan peradilan agama yang prima.

    39

  • Misi

    1. Meningkatkan profesionalisme aparatur peradilan agama.

    2. Mewujudkan manajemen peradilan agama yang modern.

    4.1.2.3. Visi dan Misi Peradilan Agama

    Visi

    Terwujudnya putusan yang adil dan berwibawa sehingga

    kehidupan masyarakat menjadi tenang, tertib dan damai, dibawah

    lindungan Allah SWT.

    Misi

    Menerima, memeriksa, mengadili dan menyelesaikan perkara-

    perkara yang diajukan oleh umat islam Indonesia dibidang perkawinan,

    waris, wasiat, hibah, wakaf, zakat, infaq, sodaqoh dan ekonomi syariah

    secara cepat, sederhana dan biaya ringan.

    4.1.3. Struktur Organisasi

    Gambar 4.1 Struktur Organisasi Badan Peradilan Agama

    40

  • Gambar 4.2 Struktur Organisasi Pengadilan Tinggi Agama

    Gambar 4.3 Struktur Organisasi Pengadilan Agama

    41

    Sub kepaniteraan

    Banding /

    Sub kepaniteraan

    Hukum /

    Sub Bagian Kepegawai

    an

    Sub Bagian Keuangan

    Sub Bagian Umum

    Kelompok Fungsional Kepaniteraan :

    Panitera Pemgganti

    KetuaWakil Ketua

    Majelis Hakim

    Panitera / SekretarisWakil Panitera Wakil Sekretaris

    Sub kepaniteraan

    Banding /

    Sub kepaniteraan

    Hukum /

    Sub Bagian Kepegawai

    Sub Bagian Keuangan

    Sub Bagian Umum

    Kelompok Fungsional Kepaniteraan :

    Panitera PemggantiJuru sita / Juru sita Pengganti

    KetuaWakil KetuaMajelis

    Hakim

    Panitera / SekretarisWakil Panitera Wakil Sekretaris

  • 4.2. Object-Oriented Analysis

    4.2.1. Alur Kerja Sistem Berjalan

    Berdasarkan pengamatan dan observasi yang dilakukan oleh

    penulis, pengorganisasian data sidang keliling yang terjadi di Badan

    Peradilan Agama masih dilakukan secara manual.

    Pada permulaan sistem, pihak Badilag (Badan Peradilan

    Agama) memberikan format baku yang berisi form isian kepada setiap

    Pengadilan Agama di setiap daerah di Indonesia melalui pos ataupun

    email, yang terdiri atas field-field data tentang persidangan keliling

    yang harus diisi. Lalu setiap bulannya, semua pengadilan agama

    diharuskan untuk mengisi dan kemudian mengirimkannya kembali

    melalui pos ataupun email kepada pihak Badilag untuk digunakan

    sebagai arsip.

    Kelemahan yang ada pada sistem yang sedang berjalan ini

    adalah jika melalui pos maka akan memakan banyak waktu sedangkan

    jika melalui email dapat terjadi berbagai kesalahan yang dilakukan

    oleh user (human error). Misalnya:

    1. Terjadi kesalahan saat memasukkan alamat email sehingga data

    tidak tersampaikan ke tujuan.

    2. File yang terkirim tidak sempurna / corrupt.

    3. Terkadang pihak Pengadilan Agama tidak mengisi form sesuai

    format yang diberikan.

    42

  • 4. Memungkinkan terjadinya duplikasi file yang disebabkan tidak

    adanya system log jika adanya updating data.

    Adapun gambaran alur kerja sistem yang sedang berjalan di

    Badan Peradilan Agama adalah sebagai berikut:

    Gambar 4.4 Flowchart Sistem yang sedang berjalan

    4.2.2. Identifikasi Masalah

    Berdasarkan uraian singkat serta flowchart sistem yang sedang

    berjalan di Badan Peradilan Agama, maka dapat diidentifikasikan

    kelemahan-kelemahan dari sistem yang sedang berjalan ini, yaitu :

    43

    Pihak Badilag PihakPengadilan Agama

  • a. Informasi mengenai sidang keliling yang dikirim lewat pos

    memakan banyak waktu dalam pengirimannya.

    b. Informasi mengenai sidang keliling yang diarsipkan sangat

    rentan terhadap resiko kehilangan data yang dapat disebabkan

    oleh print-out yang hilang, rusak, basah, maupun robek.

    c. Dari sisi ke-praktisannya, untuk mencari data sidang keiling

    tertentu, baik pihak pengadilan agama ataupun pihak badan

    peradilan agama harus mencari pada tumpukan data sidang yang

    telah diarsipkan. Hal ini tentu saja dapat menyulitkan.

    d. Dari sisi kerapihan, meskipun pihak peradilan agama telah

    memberikan format yang baku, namun tetap saja bisa terjadi

    perbedaan-perbedaan dalam penulisan laporan data sidang

    tersebut, yang mungkin saja disebabkan oleh perbedaan

    perangkat lunak yang digunakan dalam pembuatan dokumen

    sidang keliling tersebut.

    e. Pihak peradilan agama akan kerepotan dalam mengumpulkan

    serta mengorganisir data sidang keliling tersebut.

    f. Jika ada perubahan data sehingga data sebelumnya harus di

    update, maka akan terjadi duplikasi file disebabkan tidak adanya

    sistem log.

    44

  • 4.2.3. Uraian Singkat Sistem yang Diusulkan

    Untuk menjawab permasalahan-permasalahan yang dihadapi

    dalam pengimplementasian sistem yang masih manual tersebut,

    penulis bermaksud mengusulkan sebuah sistem untuk

    pengorganisasian data sidang keliling yang berbasis komputer. Pada

    pengembangannya, penulis melakukan studi kasus pada Badan

    Peradilan Agama. Usulan sistem yang dimaksud adalah sebagai

    berikut :

    1. Staff IT Badan Peradilan Agama di dalam sistem ini

    berperan sebagai admin yang bertugas mengisi data-data

    semua Pengadilan Tinggi Agama dan Pengadilan Agama,

    sehingga nantinya data sidang keliling dapat diisi sesuai

    dengan Pengadilan Agama yang melaksanakannya. Admin

    juga membuka sistem log untuk mengetahui kapan terakhir

    kali informasi sidang di update / modified.

    2. Setiap Pengadilan Agama memiliki user account yang

    sama dan memiliki kewenangan untuk mengisi dan

    mengubah data sidang keliling.

    3. Data sidang keliing yang telah berada di dalam sistem

    juga dapat dibuat reportnya dalam format PDF, yang dapat

    dilakukan oleh Badan Peradilan Agama maupun Pengadilan

    Agama, sehingga ketika dilakukan pencetakan pada laporan

    sidang keliling, akan didapatkan format yang seragam.

    45

  • Gambar flowchart dari sistem yang penulis usulkan ini adalah sebagai

    berikut :

    Gambar 4.5 Flowchart sistem yang ditawarkan

    46

    AdminBadan Peradilan agama

    UserPengadilan Agama

  • 4.2.4. Perancangan Use Case Diagram

    Use Case Diagram digunakan untuk menjelaskan apa yang akan

    dilakukan oleh sistem serta aktor-aktor yang akan berhubungan dengan

    proses-proses yang ada pada sistem.

    a. Penentuan Aktor

    Pada sistem yang diusulkan ini, penulis memisahkan Aktor

    menjadi 2 (dua) tingkatan, yaitu admin, dan user. Wewenang

    masing-masing aktor tersebut adalah sebagai berikut :

    1. Admin

    Admin merupakan aktor yang menempati tingkatan tertinggi

    pada sistem. Admin memiliki wewenang yaitu :

    1. Memasukkan data Pengadilan Tinggi Agama dan

    Pengadilan Agama.

    2. Melakukan perubahan data Pengadilan Tinggi Agama

    dan Pengadilan Agama.

    3. Melakukan penghapusan data Pengadilan Tinggi

    Agama dan Pengadilan Agama.

    4. Memasukkan data Sidang Keliling pada Pengadilan

    Agama tertentu.

    5. Melakukan perubahan data Sidang Keliling pada

    Pengadilan Agama tertentu.

    6. Melakukan penghapusan data Sidang Keliling pada

    Pengadilan Agama tertentu.

    47

  • 7. Melihat (browsing) data Sidang Keliling pada

    Pengadilan Agama tertentu. yang telah tersimpan.

    8. Melihat sistem log untuk mengetahui kapan terakhir

    kali informasi sidang di update / modified.

    9. Melakukan export atau menyimpan laporan yang

    berisikan informasi sidang keliling pada Pengadilan

    Agama tertentu dalam bentuk PDF.

    2. User

    Tingkatan dosen merupakan tingkatan yang berada di bawah

    admin pada sistem. Dosen memiliki wewenang yaitu :

    1. Memasukkan data Sidang Keliling pada Pengadilan

    Agama tertentu.

    2. Melakukan perubahan data Sidang Keliling pada

    Pengadilan Agama tertentu.

    3. Melihat (browsing) data Sidang Keliling pada

    Pengadilan Agama tertentu. yang telah tersimpan.

    4. Melakukan export atau menyimpan laporan yang

    berisikan informasi sidang keliling pada Pengadilan

    Agama tertentu dalam bentuk PDF.

    48

  • Gambar 4.6 Use Case Sistem yang ditawarkan

    b. Use Case Scenario

    Use case scenario merupakan penjelasan yang lebih terperinci

    mengenai masing-masing use case yang terjadi di dalam sistem.

    a.Input data Pengadilan Tinggi Agama

    Nama Use case Input data Pengadilan Tinggi Agama

    Aktor yang terlibat Admin

    49

  • Trigger Admin ingin menambahkan Pengadilan Tinggi Agama

    Pre condition Login sebagai adminPengadilan Tinggi Agama belum terdaftar

    Action Controller/adminSave data Pengadilan Tinggi Agama

    Post condition Pengadilan Tinggi Agama baru masuk ke dalam database

    b. Edit data Pengadilan Tinggi Agama

    Nama Use case Edit data Pengadilan Tinggi Agama

    Aktor yang terlibat AdminTrigger Dibutuhkan perubahan data

    Pengadilan Tinggi AgamaPre condition Login sebagai admin

    Pengadilan Tinggi Agama telah terdaftar

    Action Controller/adminUpdate data Pengadilan Tinggi Agama

    Post condition Data yang telah diubah tersimpan ke dalam database

    c.Lihat data Pengadilan Tinggi Agama

    Nama Use case Lihat data Pengadilan Tinggi Agama

    Aktor yang terlibat Admin, UserTrigger Aktor membutuhkan data

    Pengadilan Tinggi Agama.Pre condition Pengadilan Tinggi Agama

    telah ada di dalam databaseAction Controller/admin/view_ptaPost condition Data Pengadilan Tinggi

    Agama ditampilkan

    d. Hapus Pengadilan Tinggi Agama

    50

  • Nama Use case Hapus Pengadilan Tinggi Agama

    Aktor yang terlibat AdminTrigger Pengadilan Tinggi Agama

    sudah tidak aktifPre condition Login sebagai admin

    Pengadilan Tinggi Agama telah terdaftar

    Action Controller/adminDelete Pengadilan Tinggi Agama

    Post condition Pengadilan Tinggi Agama terhapus dari database

    e.Input data Pengadilan Agama

    Nama Use case Input data Pengadilan AgamaAktor yang terlibat AdminTrigger Admin ingin menambahkan

    Pengadilan AgamaPre condition Login sebagai admin

    Pengadilan Agama belum terdaftar

    Action Controller/adminSave data Pengadilan Agama

    Post condition Pengadilan Agama baru masuk ke dalam database

    f. Edit data Pengadilan Agama

    Nama Use case Edit data Pengadilan AgamaAktor yang terlibat AdminTrigger Dibutuhkan perubahan data

    Pengadilan AgamaPre condition Login sebagai admin

    Pengadilan Agama telah terdaftar

    Action Controller/adminUpdate data Pengadilan Agama

    Post condition Data yang telah diubah tersimpan ke dalam database

    51

  • g. Lihat data Pengadilan Agama

    Nama Use case Lihat data Pengadilan AgamaAktor yang terlibat Admin, UserTrigger Aktor membutuhkan data

    Pengadilan Agama.Pre condition Pengadilan Agama telah ada

    di dalam databaseAction Controller/admin/view_ptaPost condition Data Pengadilan Agama

    ditampilkan

    h. Hapus Pengadilan Agama

    Nama Use case Hapus Pengadilan AgamaAktor yang terlibat AdminTrigger Pengadilan Agama sudah

    tidak aktifPre condition Login sebagai admin

    Pengadilan Agama telah terdaftar

    Action Controller/adminDelete Pengadilan Agama

    Post condition Pengadilan Agama terhapus dari database

    i. Input data Sidang Keliling

    Nama Use case Input data Sidang KelilingAktor yang terlibat Admin, UserTrigger Admin ingin menambahkan

    Sidang KelilingPre condition Login sebagai admin

    Sidang Keliling belum terdaftar

    Action Controller/adminSave data Sidang Keliling

    Post condition Sidang Keliling baru masuk ke dalam database

    52

  • j. Edit data Sidang Keliling

    Nama Use case Edit data Sidang KelilingAktor yang terlibat Admin, UserTrigger Dibutuhkan perubahan data

    Sidang KelilingPre condition Login sebagai admin

    Sidang Keliling telah terdaftarAction Controller/admin

    Update data Sidang KelilingPost condition Data yang telah diubah

    tersimpan ke dalam database

    k. Lihat data Sidang Keliling

    Nama Use case Lihat data Sidang KelilingAktor yang terlibat Admin, UserTrigger Aktor membutuhkan data

    Sidang Keliling.Pre condition Sidang Keliling telah ada di

    dalam databaseAction Controller/admin/view_ptaPost condition Data Sidang Keliling

    ditampilkan

    l. Hapus Sidang Keliling

    Nama Use case Hapus Sidang KelilingAktor yang terlibat AdminTrigger Sidang Keliling sudah tidak

    aktifPre condition Login sebagai admin

    Sidang Keliling telah terdaftarAction Controller/admin

    Delete Sidang KelilingPost condition Sidang Keliling terhapus dari

    database

    m. Export data

    Nama Use case Export data

    53

  • Aktor yang terlibat Admin, UserTrigger Aktor membutuhkan dokumen

    tersimpanPre condition Sidang Keliling telah ada di

    dalam databaseAction Export dataPost condition File report data tampil

    n. Lihat Sistem log

    Nama Use case Lihat Sistem LogAktor yang terlibat AdminTrigger Aktor ingin mengetahui kapan

    terakhir kali data di update / modified

    Pre condition Login sebagai adminData Sidang Keliling telah di update / modified

    Action Controller/adminView system log

    Post condition Data system log tampil

    4.3. Object-Oriented Design

    4.3.1. Perancangan Activity Diagram

    Activity Diagram merupakan diagram yang menggambarkan

    berbagai aliran aktivitas yang terjadi di dalam sistem, yang meliputi

    bagaimana sebuah proses dapat terjadi, kemungkinan-kemungkinan yang

    bisa terjadi, serta bagaimana akhir dari proses tersebut. Mengingat adanya

    proses-proses yang memiliki kesamaan alur, maka pada sistem ini, penulis

    hanya memaparkan 13 (dua belas) macam Activity diagram yang mungkin

    terjadi yaitu :

    \

    54

  • 1. Activity Diagram untuk Login

    Gambar 4.7 Activity Diagram Login

    Activity diagram ini merupakan rancangan rangkaian proses yang

    akan terjadi ketika aktor memilih untuk melakukan login. Ketika sisem

    dibuka, maka akan langsung menampilkan form login. Aktor lalu dapat

    memasukkan Username dan password yang sesuai. Setelah itu sistem akan

    melakukan pengecekan terhadap Username dan password yang

    dimasukkan oleh aktor meliputi kesesuaian Username dengan password,

    serta mengecek level aktor apakah level admin atau level user. Jika

    Username dan password yang dimasukkan sesuai dengan yang ada di

    database, maka login Username tersebut sukses dan aktor tersebut

    memiliki kewenangan sesuai dengan levelnya di dalam sistem.

    2. Activity Diagram untuk Pemasukan Data PTA

    Gambar 4.8 Activity Diagram input PTA

    55

  • Activity diagram diatas merupakan rancangan proses yang akan

    terjadi ketika admin akan memasukkan data Pengadilan Tinggi Agama

    baru, meliputi nama PTA, alamat, nomer telepon, email dan website.

    Setelah mengisi form dan menekan tombol simpan maka data akan

    tersimpan di dalam database.

    3. Activity Diagram untuk Perubahan Data PTA

    Gambar 4.9 Activity Diagram Edit PTA

    Activity diagram ini merupakan rangkaian proses yang akan

    dilakukan oleh sistem ketika admin akan mengubah data PTA yang telah

    ada di dalam database. Dari list PTA yang ada, jika admin menekan

    tombol edit, maka sistem akan menahan id_pta untuk dijadikan parameter

    dan akan metampilkan form isian untuk mengubah data yang ada. Setelah

    admin mengubah data di form tersebut dan menekan tombol update,

    sistem akan meng-update data PTA tersebut.

    56

  • 4. Activity Diagram untuk Penghapusan Data PTA

    Gambar 4.10 Activity Diagram Delete PTA

    Activity diagram ini merupakan rangkaian proses yang akan

    dilakukan oleh sistem ketika admin akan menghapus data PTA yang telah

    ada di dalam database. Dari list PTA yang ada, jika admin menekan

    tombol hapus, maka sistem akan menahan id_pta untuk dijadikan

    parameter dan akan metampilkan pop-up konfirmasi untuk menghapus

    data yang ada di database.

    5. Activity Diagram untuk Melihat Detail Data

    PTA

    Gambar 4.11 Activity Diagram View PTA

    Activity diagram ini merupakan rangkaian proses yang akan

    dilakukan oleh sistem ketika admin atau user akan melihat detail data PTA

    yang telah ada di dalam database. Dari halaman home setelah login, jika

    admin atau user memilih menu view data PTA, maka akan ditampilkan

    detail data PTA yang ada di database.

    57

  • 6. Activity Diagram untuk Pemasukan Data PA