Pembangunan Framework Sederhana untuk Aplikasi Sistem Informasi Sekolah
LAPORAN TUGAS AKHIR
Disusun sebagai syarat kelulusan tingkat sarjana
oleh : Andresta Ramadhan / 13503030
PROGRAM STUDI TEKNIK INFORMATIKA SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA INSTITUT TEKNOLOGI BANDUNG 2008
Lembar Pengesahan Program Studi Sarjana Informatika
Pembangunan Framework Sederhana untuk Aplikasi Sistem Informasi Sekolah
Tugas Akhir Program Studi Teknik Informatika ITB
oleh: Andresta Ramadhan / 13503030
Telah disetujui dan disahkan sebagai laporan tugas akhir di Bandung, pada tanggal 23 Juni 2008
Pembimbing
Yani Widyani, S.T., M.T. NIP 132164562
ii
ABSTRAKSI
Pada tugas akhir ini dibangun sebuah framework sederhana yang dapat membantu pembangunan aplikasi sistem informasi sekolah pada bidang akademik. Disebut framework sederhana karena hanya memfokuskan pada bidang akademik saja. Framework adalah sebuah aplikasi yang “tidak lengkap” yang dapat diguna ulang untuk membuat bermacam-macam aplikasi. Framework yang dibangun dapat dikategorikan sebagai enterprise application framework yaitu framework yang mendukung pengembangan aplikasi untuk pengguna akhir. Keuntungan membangun aplikasi menggunakan framework adalah peningkatan kualitas perangkat lunak dan mengurangi usaha dalam pengembangan. Proses pengembangan framework berbeda dengan pengembangan aplikasi pada umumnya. Metodologi pengembangan framework menyertakan perancangan hook framework yaitu lokasi pada sebuah framework di mana fitur aplikasi yang dibuat dihubungkan dengan framework. Untuk pemodelan framework digunakan notasi UML-F yaitu perluasan dari UML standar agar dapat digunakan dalam memodelkan framework. Framework pada tugas akhir ini diimplementasikan sebagai aplikasi berbasis web yang dibangun dengan menggunakan bahasa pemrograman PHP. Untuk membantu pembangunan, digunakan Zend Studio sebagai PHP IDE. Hasil dari tugas akhir ini adalah sebuah framework sederhana beserta dokumentasinya yang dapat digunakan untuk membantu pembangunan aplikasi sistem informasi sekolah. Berdasarkan hasil pengujian dengan membangun dua aplikasi yaitu Portal SMU dan Sistem Informasi Sekolah Terpadu, secara umum dapat disimpulkan bahwa framework yang dibangun telah memenuhi spesifikasi kebutuhan dan berjalan sesuai skenario yang telah direncanakan.
Kata Kunci: framework, aplikasi sistem informasi sekolah, guna ulang, UML-F.
iii
KATA PENGANTAR
Puji syukur penulis panjatkan kepada Allah SWT atas segala rahmat dan berkat-Nya sehingga pembuatan tugas akhir ini dapat berjalan dengan lancar. Tugas akhir ini dibuat sebagai syarat kelulusan tingkat sarjana di Program Studi Teknik Informatika, Institut Teknologi Bandung. Pada kesempatan ini, Penulis juga ingin mengucapkan terima kasih kepada pihakpihak yang telah memberikan bantuan dan bimbingan selama pelaksanaan tugas akhir dan penyusunan laporan tugas akhir. Ucapan terima kasih disampaikan kepada: 1. Ibu Yani Widyani, S.T., M.T. selaku pembimbing tugas akhir yang telah memberikan bimbingan dan masukan selama pelaksanaan tugas akhir. 2. Ibu Fazat Nur Azizah, S.T., M.Sc. yang telah memberikan kritik, saran dan masukan sebagai dosen penguji pada seminar, pra-sidang dan sidang tugas akhir. 3. Ibu Dra. Christine Suryadi, M.T. selaku dosen penguji pada sidang tugas akhir. 4. Bapak Dr. Ing. H. M. Sukrisno Mardiyanto selaku dosen wali akademik yang telah memberikan bimbingan dan arahan selama masa perkuliahan. 5. Bapak Ade, Ibu Nurhayati, dan Bapak Rasidi serta pegawai Tata Usaha, Perpustakaan, dan Duktek Program Studi Teknik Informatika ITB. 6. Orang tua dan adik-adik penulis atas dukungan,doa dan kesabarannya menanti penyelesaian tugas akhir ini. 7. Wiwien Nurul Wardhani yang selalu setia dan selalu memberikan semangat. 8. Teman-teman Cikapayang 5, Dewangga, Teguh, Boyke, Pramana, Unggul, Weno, Bram, Ridwan, Def atas dukungan yang diberikan. 9. Keluarga Bolang, Philip ”Panjang” Hutapea, Widya ”Bobo” Saseno, Taufik ”Tangju” Ramadhani, dan Diko ”Beni” Aldillah atas pengalaman yang tak terlupakan. 10. Teman-teman Teknik Informatika ITB 2003 serta teman-teman bermain futsal yang telah memberikan dukungan moril. 11. Teman-teman The Bangke, Dian Purnama, Myrdal Gunarto, Irwan Suyudi, Saptomo, Tito Yusmar dan Yudhi Asmara. 12. Teman-teman penulis di Tim SmartBuilding, Shodaq, Anam, Agfa dan Eeng.
iv
13. Pihak lain yang telah memberikan dukungan yang tidak kalah berarti namun tidak dapat penulis sebutkan satu per satu. Penulis menyadari bahwa dalam penulisan tugas akhir ini masih terdapat kekurangan. Karena itu, Penulis sangat terbuka menerima kritik dan saran berkaitan dengan tugas akhir ini. Semoga dokumen tugas akhir ini dapat dimanfaatkan sebaik-baiknya oleh siapapun yang membacanya.
Bandung, Juni 2008
Penulis
v
DAFTAR ISI
Lembar Pengesahan....................................................................................................... ii ABSTRAKSI................................................................................................................ iii KATA PENGANTAR.................................................................................................. iv DAFTAR ISI ................................................................................................................ vi DAFTAR GAMBAR ................................................................................................. viii DAFTAR TABEL ........................................................................................................ ix BAB I PENDAHULUAN ........................................................................................... I-1 1.1. Latar Belakang.............................................................................................. I-1 1.2. Rumusan Masalah ........................................................................................ I-2 1.3. Tujuan ........................................................................................................... I-3 1.4. Batasan Masalah ........................................................................................... I-3 1.5. Metodologi ................................................................................................... I-3 1.6. Sistematika Pembahasan .............................................................................. I-4 BAB II DASAR TEORI............................................................................................ II-1 2.1. Pengertian Framework ............................................................................... II-1 2.2. Karakteristik Framework............................................................................ II-2 2.2.1. Pemodulan (Modularity) ..................................................................... II-3 2.2.2. Guna ulang (Reuse) ............................................................................. II-3 2.2.3. Perluasan (Extensibility)...................................................................... II-3 2.2.4. Inversion of Control ............................................................................ II-4 2.3. Klasifikasi Framework ............................................................................... II-5 2.3.1. Lingkup ............................................................................................... II-5 2.3.2. Teknik Pengembangan ........................................................................ II-6 2.3.3. Tingkat Generalitas ............................................................................. II-7 2.4. Proses Pengembangan Framework............................................................. II-9 2.4.1. Analisis .............................................................................................. II-10 2.4.2. Perancangan ...................................................................................... II-11 2.4.3. Implementasi ..................................................................................... II-11 2.4.4. Pengujian ........................................................................................... II-11 2.5. UML-F ...................................................................................................... II-12 2.6. Dokumentasi Framework ......................................................................... II-13 2.5.1. Cookbook dan Recipe ........................................................................ II-13 2.5.2. Examples ........................................................................................... II-14 2.5.3. Design Pattern................................................................................... II-14 2.5.4. Framework Overview ........................................................................ II-15 2.5.5. Reference Manual ............................................................................. II-15 2.5.6. Design Notebook ............................................................................... II-15 BAB III ANALISIS ................................................................................................. III-1 3.1. Analisis Domain ........................................................................................ III-1 3.1.1. Eksplorasi Aplikasi Sistem Informasi Sekolah .................................. III-1 3.1.2. Perbandingan Fitur ............................................................................. III-6 3.2. Analisis Kebutuhan Framework ................................................................ III-7 3.3. Pemodelan Framework .............................................................................. III-9 3.3.1. Pemodelan Fungsionalitas ................................................................ III-10 3.3.2. Pemodelan Interaksi Elemen ............................................................ III-14 vi
3.3.3. Pemodelan Paket dan Kelas Analisis ............................................... III-14 3.4. Analisis Hot Spot ..................................................................................... III-17 3.4.1. Hot Spot Card................................................................................... III-17 3.4.2. Kelas-Kelas Hot Spot ....................................................................... III-20 3.5. Analisis Kebutuhan Dokumentasi Framework ....................................... III-22 BAB IV PERANCANGAN ..................................................................................... IV-1 4.1. Arahan Perancangan .................................................................................. IV-1 4.2. Perancangan Hot Spot ................................................................................ IV-2 4.2.1. Hook dan Template Method ............................................................... IV-2 4.2.2. Transformasi Kelas-Kelas Analisis .................................................... IV-3 4.3. Identifikasi Kelas Perancangan ................................................................. IV-6 4.4. Perancangan Dokumentasi ........................................................................ IV-8 BAB V IMPLEMENTASI DAN PENGUJIAN ....................................................... V-1 5.1. Implementasi Framework ........................................................................... V-1 5.1.1. Lingkungan Implementasi ................................................................... V-1 5.1.2. Batasan Implementasi ......................................................................... V-1 5.1.3. Hasil Implementasi .............................................................................. V-2 5.1.4. Pembuatan Dokumentasi Framework ................................................. V-3 5.2. Pengujian Framework ................................................................................ V-3 5.2.1. Rencana Pengujian .............................................................................. V-4 5.2.2. Pelaksanaan Pengujian ........................................................................ V-8 5.2.3. Hasil dan Evaluasi Pengujian .............................................................. V-9 BAB VI KESIMPULAN DAN SARAN ................................................................. VI-1 6.1. Kesimpulan ................................................................................................ VI-1 6.2. Saran .......................................................................................................... VI-2 DAFTAR REFERENSI ................................................................................................ x DAFTAR PUSTAKA .................................................................................................. xi
vii
DAFTAR GAMBAR
Gambar 2.1 – Framework Sebagai Sebuah Mesin [MAR01] ................................... II-2 Gambar 2.2 – Perbedaan Framework dengan Library .............................................. II-5 Gambar 2.3 – White Box Framework [CHE04] ........................................................ II-6 Gambar 2.4 – Black Box Framework [CHE04] ........................................................ II-7 Gambar 2.5 – Horizontal Framework [ROG97] ....................................................... II-8 Gambar 2.6 – Vertikal Framework [ROG97] ........................................................... II-8 Gambar 3.1 – Diagram Use Case Aplikasi Sistem Informasi Sekolah .................. III-10 Gambar 3.2 – Sequence Diagram untuk Use Case Mengedit Nilai ....................... III-15 Gambar 3.3 – Diagram Paket Tahap Analisis ........................................................ III-17 Gambar 3.4 – Layout Hot Spot Card [PRE00]....................................................... III-18 Gambar 3.5 – Kartu Hot Spot Perhitungan Nilai Akhir ......................................... III-19 Gambar 3.6 – Kartu Hot Spot Informasi Tamabahan Silabus ................................ III-19 Gambar 3.7 – Kartu Hot Spot Isi Laporan ............................................................. III-20 Gambar 3.8 – Diagram Kelas Table_Nilai ............................................................. III-21 Gambar 3.9 – Diagram Kelas Silabus_Info ........................................................... III-21 Gambar 3.10 – Diagram Kelas Komponen_Laporan ............................................. III-22 Gambar 4.1 – Template Method Memanggil Hook Method [PRE00]...................... IV-2 Gambar 4.2 – Unification (a) dan Separation (b) [PRE00] ..................................... IV-3 Gambar 4.3 – Transformasi Kelas Komponen_Laporan ......................................... IV-4 Gambar 4.4 – Transformasi Kelas Silabus Info ....................................................... IV-5 Gambar 4.5 – Transformasi Kelas Table_Nilai ....................................................... IV-5 Gambar 5.1 – Diagram Use Case SiTA .................................................................... V-5 Gambar 5.2 – Diagram Use Case Portal SMU.......................................................... V-5
viii
DAFTAR TABEL
Tabel 2.1 – Perbedaan Framework dengan Library .................................................. II-4 Tabel 2.2 – Ekstensi UML-F ................................................................................... II-12 Tabel 3.1 – Fitur Academic School System (ASS) ................................................... III-2 Tabel 3.2 – Fitur Sisfokol......................................................................................... III-4 Tabel 3.3 – Fitur Suteki SI Sekolah ......................................................................... III-5 Tabel 3.4 – Fitur DigiSchool .................................................................................... III-5 Tabel 3.5 – Lingkup Masalah Framework ............................................................... III-6 Tabel 3.6 – Kebutuhan Fungsional Framework ....................................................... III-8 Tabel 3.7 – Kebutuhan Non-Fungsional Framework............................................... III-9 Tabel 3.8 – Definisi Aktor...................................................................................... III-11 Tabel 3.9 – Deskripsi Use Case ............................................................................. III-11 Tabel 3.10 – Keterhubungan Kebutuhan Framework dengan Use Case ............... III-12 Tabel 3.11 – Skenario Normal Use Case Mengedit Nilai ...................................... III-12 Tabel 3.12 – Sub Skenario UC-002-S01 ................................................................ III-13 Tabel 3.13 – Sub Skenario UC-002-S02 ................................................................ III-13 Tabel 3.14 – Sub Skenario UC-002-S03 ................................................................ III-13 Tabel 3.15 – Kelas-Kelas Potensial Tahap Analisis .............................................. III-15 Tabel 3.16 – Keterhubungan Hot Spot dengan Kelas ............................................ III-20 Tabel 4.1 – Kelas Perancangan Framework............................................................. IV-3 Tabel 4.2 – Kelas Perancangan Framework............................................................. IV-6 Tabel 5.1 – Hasil Implementasi Framework ............................................................. V-2 Tabel 5.2 – Modul SiTA dan Portal SMU ................................................................ V-6 Tabel 5.3 – Implemetasi Hot Spot Framework pada SiTA dan Portal SMU ............ V-6 Tabel 5.4 – Rencana Pengujian Aplikasi Portal SMU .............................................. V-7 Tabel 5.5 – Rencana Pengujian Aplikasi SiTA ......................................................... V-7
ix