DENGAN FRAMEWORK CODE IGNITER DAN MYSQL
Laporan Kerja Praktek
Diajukan Untuk Memenuhi Syarat Mata Kuliah Kerja Praktek Jenjang Strata I Program Studi Manajemen Informatika
Oleh:
Vincensius Agustinust G. NIM. 10108406
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA BANDUNG
Name : Vincensius Agustinust Gultom
Date of Birth : August 01st, 1990.
Place of Birth : Bandung
Gender : Male
Religion : Catholic
Citizenship : Indonesia
Marital Status : Single
Address : Komplek Margahurip Indah No. 9 Banjaran 40377.
Hobby/Interest : Reading book, Listening music, Drawing and Painting.
2005 – 2008 Senior high school; SMA 1 Handayani , Bandung.
2002 – 2005 Junior high school; SMP N 2, Bandung
1996 – 2002 Elementary school; SDN 01 Nugraha, Bandung.
1995 – 1996 Kinder Garden; TK Patal Banjaran.
2008 – 2009 Member of Keluarga Mahasiswa Katolik Unikom.
2011 – 2012 Member of Alumnae of Student Leadership Camp.
2011 – 2012 Kepala Biro BRT of Kelompok Pelayanan Gema.
2012 – 2013 Member of Biro Komunikasi, Kelompok Pelayanan Gema.
Education
2009 Logistic’s Staff of St. Fransiskus Christmast 09.
2011 Kadiv Divisi Publikasi of MAGEMA 2012.
2012 Secretary of Ziarah Batin GEMA 2012.
2012 Chief of Comitee at Student Leadership Camp V 2012.
2012 Member of Divisi Dana Usaha at MAM 2012.
2007 Catholic Student Camp, Bandung.
2009 Seminar Benchmarking dengan Majalah Chip, Unikom.
2009 Seminar “How to Protect Your Computer from Virus”,
Unpad.
2010 Student Leadership Camp IV, Bandung.
Operating System : WINDOWS 95/98/2000/XP/7
Office Applicaton : Ms Offices (Word, Excell, Power Point, Visio)
Programming : Delphi, Java, and Javascript.
Web Development : PHP, HTML, CSS
Database : Microsoft Access, MySQL.
Grapics Design : Flash, Corel Draw, Adobe Illustrator, Adobe In Design
Adobe Photoshop and SketchBook Pro.
Research and Training
iii
DAFTAR TABEL……….. viii
DAFTAR LAMPIRAN……….. ix
iv
2.3.3 MySQL……….……….……… 27
2.3.4 Cascading Style Sheet……….……….. 28
2.3.5 Framework Code Igniter……….……… 29
BAB III PEMBAHASAN 3.1. Analisis Sistem……….……… 34
3.1.1 Analisis Sistem yang Berjalan……….. 34
3.1.2 Evaluasi Sistem yang Sedang Berjalan……….………… 37
3.1.3 Sistem yang Akan Dibangun……….………… 37
3.1.4 Analisis Pengguna Sistem…...……….………. 38
3.1.5 Analisis Kebutuhan Non Fungsional…….……… 39
3.1.5.1Kebutuhan Perangkat Keras………...……….….. 39
3.1.5.2Kebutuhan Perangkat Lunak……….….……… 40
3.2 Analisis Sistem Aplikasi Absensi Online………...………..…... 40
3.2.1 Use Case Diagram ………...……….. 40 BAB IV KESIMPULAN DAN SARAN 4.1 Kesimpulan ………....………. 84
4.2 Saran……….……… 84
i
Puji syukur dan terima kasih kepada Tuhan Yang Maha Esa atas berkat dan rahmat yang diberikan sehingga laporan kerja praktek ini dapat diselesaikan, terima kasih pula penulis ucapkan kepada pembimbing kerja praktek di perusahaan dan dosen pembimbing kerja praktek di universitas juga seluruh pihak yang telah membantu sehingga laporan kerja praktek yang
berjudul “Pembangunan Aplikasi Pendataan Absensi Online Siswa Home-Schooling Science Group Indonesia Berbasis Web Dengan Framework Code Igniter dan MySQL” dapat diselesaikan tepat pada waktunya.
Laporan kerja praktek ini menjelaskan secara detail tentang pelaksanaan kerja praktek yang di lakukan di perusahaan, dimulai dari latar belakang masalah yang di teliti, tujuan penelitian, profil perusahaan, pembahasan penelitian, perancangan aplikasi hingga kesimpulan dan saran.
Pelaksanaan kerja praktek dilakukan di perusahaan telekomunikasi yaitu Science Group Indonesia, kerja praktek dilakukan setiap hari sesuai dengan hari kerja perusahaan. Pekerjaan yang dikerjakan dalam kerja praktek adalah kebutuhan perusahaan yang diberikan melalui pembimbing kerja praktek di perusahaan. Pekerjaan yang diberikan adalah pembangunan aplikasi berbasis web dan proses pembangunan aplikasi tersebut dilakukan selama masa kerja praktek.
ii pembangunan.
Bandung, Januari 2013
85
David M. Kroenke, 2005. Database Processing Jilid 1 edisi 9. Erlangga. Jakarta.
Ian Sommerville. (2003), Software Engineering (Rekayasa Perangkat Lunak)/Ian Sommerville; alih bahasa, Dra.Yuhilza Hanum M.Eng, ; Hilarius Wibi Hardani. Ed.6, Erlangga, Jakarta.
Agus Yudiana, Wayan. 2005. Implementasi Web Service Untuk Menambah dan Mengurangi Service pada Web Service lain. STT Telkom. Bandung.
Baduki, A.P. 2010. Membangun Web Berbasis PHP dengan Framework Codeigniter. Lokomedia. Yogyakarta.
1
BAB I
PENDAHULUAN
1.1 Latar Belakang Masalah
Science Group Indonesia (SG) adalah lembaga pendidikan yang berfokus dan berkomitmen untuk membangun kualitas sumber daya manusia (SDM) Indonesia yang unggul. SDM yang unggul dapat dibentuk melalui sebuah rangkaian proses pendidikan berkualitas yang terstruktur, sejak dari tingkat dasar, menengah, hingga pendidikan tinggi.
Berdiri dan dikembangkan sejak 1 Januari 2004 di Bandung-Indonesia. Science Group berkomitmen untuk menjadi lembaga pendidikan terbaik di tingkat nasional, sehingga Science Group mengadakan HOME-Schooling serta bimbingan belajar atau pelatihan robotika secara reguler maupun private.
HOME-Schooling adalah wujud komitmen Science Group Indonesia untuk
memenuhi kesempatan bagi setiap anak agar berhak mendapatkan pendidikan sesuai dengan kemampuan dan minat mereka. Kurikulum diarahkan agar sesuai kemampuan dan minat anak, dapat menyebabkan mereka memiliki semangat dan minat yang tinggi dalam menjalani proses/kegiatan belajarnya.
Kurikulum yang dipakai dalam program Home-Schooling mengacu kepada kurikulum nasional, namun aktifitas pembelajaran siswanya dilaksanakan di kantor pusat ataupun kantor cabang Science Group Indonesia, dengan jumlah siswa yang terbatas serta peminatan khusus yang disesuaikan kepada kemampuan siswa.
Kegiatan absensi siswa Home-Schooling Science Group Indonesia pada umumnya dilakukan setiap hari dengan tujuan untuk mengetahui apakah siswa hadir atau tidak hadir (sakit, ijin, atau tanpa keterangan). Namun pengolahan data absensi yang dilakukan di Science Group Indonesia masih berjalan secara manual. Kelas Home-Schooling yang terbagi dalam beberapa kantor cabang menyebabkan setiap kantor cabang menyimpan dokumen absensinya masing-masing, sebab belum adanya pusat data absensi di Science Group Indonesia.
pusat data (database) yang terpadu, data absensi mengalami duplikasi data yang tersimpan di kantor cabang dengan kantor pusat. Sehingga petugas harus mengecek data absensi setiap kantor cabang.
Maka dari uraian permasalahan diatas maka diperlukan suatu sistem informasi absensi siswa Home-Schooling yang diimplementasikan dalam bentuk perangkat lunak yang sudah terkomputerisasi. Oleh sebab itu laporan kerja praktek ini berjudul “Pembangunan Aplikasi Pendataan Absensi Online Siswa HOME-Schooling Science Group Indonesia Berbasis Web dengan Framework Code Igniter dan MySQL“.
1.2 Perumusan Masalah
Berdasarkan latar belakang diatas dapat diambil sebuah rumusan masalah yaitu ” Bagaimana membangun suatu aplikasi pengelolaan data absensi harian siswa HOME-Schooling berbasis database?”
1.3 Identifikasi Masalah
Berdasarkan latar belakang yang telah dijelaskan maka terdapat beberapa masalah yang harus dipertimbangkan dalam membangun Sistem Informasi pendataan absensi siswa HOME-Schooling :
1. Bagaimana cara membangun sebuah aplikasi yang dapat mengumpulkan data absensi dari berbagai kantor cabang Science Group Indonesia?
2. Bagaimana mengoptimalkan pengumpulan data absensi, sehingga dapat meminimalisir duplikasi data.
3. Bagaimana agar aplikasi yang dibuat dapat mempermudah proses pengolahan serta perekapan data secara efisien serta aman?
1.4 Maksud dan Tujuan 1.4.1 Maksud
Maksud dari penelitian yang dilakukan adalah membangun aplikasi pendataan absensi siswa online Home-Schooling pada Science Group Indonesia berbasis web.
1.4.2 Tujuan
Tujuan pembangunan aplikasi absensi online Home-Schooling Science Group Indonesia ini adalah :
1. Dapat mengumpulkan seluruh data absensi siswa dalam sebuah aplikasi berbasis database.
2. Meminimalisir duplikasi data absensi siswa Home-Schooling.
3. Dapat mempermudah Manajer Cabang Science Group Indonesia untuk mengelola informasi serta rekap data informasi absensi siswa HOME-Schooling.
4. Memudahkan dalam pengumpulan data absensi HOME-Schooling yang tersebar dalam beberapa kantor Science Group Indonesia.
1.5 Batasan Masalah
Berdasarkan latar belakang yang telah diuraikan sebelumnya, maka dibuat batasan masalah agar ruang lingkup laporan ini jelas batasannya. Adapun batasan masalah yang dibuat adalah sebagai berikut:
1. Aplikasi ini dibangun berdasarkan studi kasus di Science Group Indonesia, kantor cabang Jalan Buton.
2. Aplikasi ini dikelola oleh seorang administrator yaitu Manajer Cabang yang mengisi data absensi siswa.
3. Aplikasi ini membantu menghitung indeks kehadiran siswa.
4. Proses masukan dari aplikasi ini adalah berupa absensi siswa, pendaftaran siswa, dan pendaftaran kelas bimbingan.
dalam setiap kategori yaitu : Hadir, Sakit, Ijin, atau Alpa (Tidak ada Keterangan) dalam format excel spreadsheet (.xls).
6. Bahasa pemrograman yang digunakan adalah PHP, melalui framework Code-Igniter versi 2.0. Penggunaan framework digunakan untuk memudahkan dalam pengembangan aplikasi, dikarenakan perubahan fitur serta alur kerja program dapat dilakukan dengan mudah, tanpa melakukan pemrograman dari awal.
7. Database yang digunakan dalam pembangunan aplikasi ini adalah MySQL.
8. Aplikasi ini dibangun dengan studi kasus di kantor pusat Science Group Indonesia, Jalan Buton No. 1, Bandung 40117.
1.6 Lokasi dan Waktu Kerja Praktek
Kerja Praktek dilaksanakan di Kantor Pusat Science-Group Indonesia. Jalan Buton No. 1 Pav –Bandung 40112. Waktu Kerja Praktek dilaksanakan dari tanggal 9 Juli 2012 hingga 10 Agustus 2012.
Jadwal kegiatan Kerja Praktek dapat dilihat dalam tabel berikut. (Tabel 1.1) Tabel 1. 1 Jadwal kegiatan Kerja Praktek
No Aktifitas Waktu (Minggu)
1 2 3 4 5
Metodologi yang digunakan dalam penulisan tugas akhir ini adalah sebagai metode penelitian deskriptif , yang terbagi dalam beberapa tahap sebagai berikut:
Metode pengumpulan data yang digunakan dalam penelitian ini adalah sebagai berikut :
a. Observasi
Teknik pengumpulan data dengan mengadakan penelitian di Kantor Pusat Science-Group Indonesia serta peninjauan langsung terhadap permasalahan yang diambil.
b. Interview
Teknik pengumpulan data dengan mengadakan tanya jawab secara langsung dengan user yaitu Manajer Cabang di Kantor Pusat Science-Group Indonesia yang ada kaitannya dengan topik yang diambil.
2. Tahap pembangunan perangkat lunak.
Teknik analisis data dalam pembangunan perangkat lunak menggunakan paradigma perangkat lunak secara waterfall (Gambar 1.1).
Menurut Sommerville (2011, p29) Waterfall model mengambil kegiatan proses dasar spesifikasi, pengembangan, validasi dan evolusi yang mewakili kegiatan tersebut sebagai fase proses yang terpisah. Waterfall model meliputi proses sebagai berikut:
a. Requirements analysis and definition
Proses dimulai dengan menetapkan berbagai kebutuhan dari semua elemen yang diperlukan sistem dan mengalokasikannya kedalam pembentukan perangkat lunak, serta dilakukan analisis terhadap hal-hal yang diperlukan dalam pembangunan perangkat lunak.
b. System and software design.
Tahap desain sistem yang mengidentifikasi dan menggambarkan abstraksi sistem perangkat lunak yang akan dibangun.
c. Implementation and unit testing.
Tahap penerjemahan data atau pemecahan masalah yang telah dirancang kedalam bahasa pemrograman tertentu. Unit testing memperivikasi bahwa setiap unit sesuai dengan spesifikasi perangkat lunak yang diinginkan.
d. Integration and system testing.
e. Operation and Maintenance.
Sistem diimplementasikan dalam penggunaan praktis, serta dilakukan maintenance atau pemeliharaan untuk pengoreksian kesalahan yang tidak
ditermukan di awal pengembangan.
Dibawah ini adalah gambar model dari model waterfall menurut Ian Sommerville.
Gambar 1.1 Model Waterfall
1.8 Sistematika Penulisan
Adapun sistematika penulisan laporan kerja praktek ini adalah sebagai berikut: BAB I PENDAHULUAN
BAB I Pendahuluan berisi tentang pembahasan masalah umum yang berhubungan dengan penyusunan laporan kerja praktek, yang meliputi latar belakang, perumusan masalah, identifikasi masalah, maksud dan tujuan kerja praktek, batasan masalah, metode penelitian dan sitematika penulisan.
BAB II TINJAUAN PUSTAKA
Bab ini membahas tentang profil perusahaan berupa sejarah, logo dan struktur organisasi, serta landasan teori yang digunakan.
BAB III PEMBAHASAN
BAB IV KESIMPULAN DAN SARAN
8
BAB II
TINJAUAN PUSTAKA
2.1 Profil Tempat Kerja Praktek 2.1.1 Sejarah Instansi
Science Group (SG) adalah lembaga pendidikan yang fokus dan komitmen untuk membangun kualitas sumber daya manusia (SDM) Indonesia yang unggul. SDM yang unggul harus dibentuk melalui sebuah rangkaian proses pendidikan berkualitas yang terstruktur, sejak dari tingkat dasar, menengah, hingga pendidikan tinggi.
Science Group Indonesia Berdiri dan dikembangkan sejak 1 Januari 2004 di Bandung-Indonesia, bermula dari sebuah kantor di jalan Buton No. 1 Pav Bandung 40112. Hingga saat ini (2012) SG telah mengoperasikan 1 kantor pusat, 2 gerai cabang dan 1 gerai kemitraan di Bandung, yaitu :
1. Kantor Pusat Science Group Indonesia. Jalan Buton No. 1 Pav - Bandung 40112. 2. Kantor Cabang Batu Nunggal.
Jalan Batu Nunggal 2 Bandung. 3. Kantor Cabang Laurentius.
Komplek SMA St. Aloysius III. Jalan Sukajadi 487, Bandung. 4. Gerai kemitraan GEMA.
Komplek SMA St. Aloysius I. Jalan Sultan Agung No. 2, Bandung.
Sistem kemitraan bisnis (Business Partner) Science Group dimulai sejak Januari 2011, untuk memberikan peluang bisnis kepada masyarakat dan menjadikan Science Group sebagai lembaga pendidikan terbaik di tingkat nasional. Berikut dibawah ini adalah program belajar yang diselenggarakan oleh Science-Group Indonesia.
1. Bimbingan Belajar.
2. HOME-Schooling.
HOME-Schooling adalah program khusus yang dimiliki oleh Science-Group Indonesia. Kegiatan belajar-mengajar yang dilaksanakan secara kolektif dengan jumlah siswa maksimal 10 orang. Kurikulum yang digunakan mengacu kepada kurikulum nasional yang dikeluarkan oleh pemerintah, dengan peminatan khusus. Program ini teraffiliasi dengan Yayasan St. Aloysius Bandung. Siswa SMP HOME-Schooling akan menjadi siswa yang terdaftar di SMP St. Aloysius I Bandung, sehingga jika lulus SMP akan mendapatkan Ijazah SMA yang dikeluarkan oleh pemerintah.
3. Language Center.
Program bimbingan belajar bahasa inggris secara reguler ataupun prifat. 4. Science Club.
Program bimbingan belajar khusus yang dimiliki oleh Science-Group Indonesia yang mengajarkan mata-pelajaran Fisika dan Kimia melalui praktek eksperimen kepada siswa.
5. Science Robotic
Program belajar khusus siswa SMP yang dimiliki oleh Science-Group Indonesia, yang mengajarkan proses perakitan serta perancangan robot sederhana untuk siswa SMP.
2.1.2 Visi dan Misi 1. Visi
i. Membangun sumber daya manusia Indonesia yang berkualitas dan memiliki kompetensi.
ii. Menjadi merek nasional dan pemimpin bisnis bidang pendidikan di Indonesia.
2. Misi
1. Mengembangkan kurikulum dan menyelenggarakan Program-program Pendidikan:
i.Setara Formal.
ii.Ilmu Pengetahuan Alam (IPA/Science). iii.Teknologi (Technology).
v.Bahasa (Language).
2. Mengembangkan kurikulum pembelajaran berstandar nasional dan internasional.
3. Menyelenggarakan program-program pendidikan unggulan.
4. Mengembangkan jaringan nasional bisnis pendidikan dengan sistem kemitraan dan waralaba.
5. Pendukung percepatan belajar bagi siswa-siswa berbakat.
6. Membuka kantor wilayah dan gerai-gerai mitra usaha di Ibukota Propinsi dan kota-kota besar di seluruh Indonesia.
2.1.3 Logo Instansi.
Gambar 2.1 Logo Perusahaan
1. Logo perusahaan Science-Group Indonesia terdiri dari 2 (dua) kalimat, atau 4 (empat) kata, yaitu kalimat Science Group dengan simbol pensil yang menggantikan huruf (i) dalam kalimat tersebut, serta kalimat Edu – Center.
2. Jenis huruf yang digunakan untuk kalimat Science Group adalah Tahoma dengan warna gradasi oranye tua – oranye muda. Hal ini menggambarkan komitmen yang tegas dan mendalam yang dimiliki oleh Science Group Indonesia untuk berperan aktif dalam kemajuan pendidikan di Indonesia.
3. Simbol pensil berwarna oranye yang menghadap keatas dengan mata pensil berwarna merah serta penghapus berwarna abu-abu, menggambarkan perkembangan kualitas pendidikan di Indonesia yang selalu meningkat.
4. Kalimat Edu-center menggambarkan visi perusahaan untuk menjadi salah satu pusat pendidikan terbesar di Indonesia.
2.1.4 Badan Hukum Instansi
Sebagai salah satu penyelenggara pendidikan di Kota Bandung yang diawasi oleh Dinas Pendidikan Pemerintah Kota Bandung, Science-Group Indonesia memiliki surat hukum sebagai berikut:
1. Surat Keputusan Nomor: 421.10/2184-PNFI/2010.
Perihal Izin Menyelenggarakan Pendidikan Non Formal dan Informal yang Diselenggarakan Masyarakat.
2. Surat Keterangan Terdaftar Nomor: 421.10/234-PNFI/2011 Perihal Ijin Operasional Pusat Kegiatan Belajar Masyarakat (PKBM). 2.1.5 Struktur Organisasi
Dalam mewujudkan visi dan misi perusahaan, Science-Group Indonesia didukung oleh sumber daya manusia yang berkompetensi di bidangnya. Berikut adalah struktur organisasi di dalam Science Group Indonesia.
Berikut adalah struktur perusahaan Science Group Indonesia.
Setiap komponen perusahaan memiliki tanggung-jawab sebagai berikut: a) Direktur
Bertanggung jawab untuk mengawasi dan mengembangkan kegiatan operasional perusahaan, sehingga dapat mencapai visi dan misi perusahan. b) Manajer Cabang (Branch Manager)
Bertanggung-jawab untuk mengawasi dan mengembangkan kegiatan operasional kantor cabang, sehingga dapat memberikan kontribusi yang baik bagi perusahaan.
c) Manajer Sekretaris (Manager Secretary)
Mengkoordinasikan kegiatan operasional masing-masing komponen perusahaan. Selain itu Manajer Sekretaris bertugas untuk memberi laporan perusahaan secara periodik kepada Direktur.
d) Manajer Keuangan (Finance Manager)
Mengatur dan mengolah keuangan perusahaan secara efisien, serta melaporkan keuangan perusahaan secara periodik kepada Direktur.
e) Manajer Operasional (Operation Manager)
Manajer Operasional bertanggung-jawab dalam ketersediaan alat tulis kantor (ATK) berupa spidol, pulpen, kertas, serta melakukan duplikasi surat atau dokumen mata pelajaran di Science-Group Indonesia.
f) Manajer Unit (Unit Manager)
Manajer Unit bertanggung-jawab dalam pemeliharaan perangkat mekanis dan elektronik di Science-Group Indonesia, seperti perangkat komputer, printer, serta perangkat praktikum mata pelajaran fisika dan kimia.
g) Executive Officer
Executive Officer bertugas mengatur para Guru mata pelajaran dan bertanggung-jawab dalam pelaksanaan kegiatan belajar-mengajar di Science Group Indonesia.
h) Guru (Teacher)
2.2 LANDASAN TEORI 2.2.1 Konsep Dasar Sistem
Sistem merupakan kumpulan dari user/elemen-elemen yang saling
berinteraksi dan saling mempengaruhi dalam melakukan kegiatan bersama untuk mencapai suatu tujuan.
Contoh :
1. Sistem komputer terdiri dari : Software,Hardware,Brainware. 2. Sistem akuntansi, perbankan, kesehatan, dll
a) Menurut Jerry FithGerald
“Sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling
berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau
melakukan suatu sasaran tertentu. “
b) Menurut Ludwig Von Bartalanfy
“Sistem merupakan seperangkat unsur yang saling terkait dalam suatu antar
relasi diantara unsur-unsur tersebut dengan lingkungan.”
c) Menurut Anatol Raporot
“Sistem adalah suatu kumpulan kesatuan dan perangkat hubungan satu sama
lain.”
d) Menurut L. Ackof
“Sistem adalah setiap kesatuan secara konseptual atau fisik yang terdiri dari
bagian-bagian dalam keadaan saling tergantung satu sama lainnya.”
A. Syarat Sistem
a. Sistem harus dibentuk untuk menyelesaikan tujuan.
b. Elemen sistem harus mempunyai rencana yang ditetapkan. c. Adanya hubungan diantara elemen sistem.
d. Unsur dasar dari proses (arus informasi, energi dan materal) lebih penting dari pada elemen sistem.
B. Karakteristik Sistem a. Komponen
Suatu sistem terdiri dari sejumlah komponen yang berinteraksi, bekerja sama membentuk suatu kesatuan. Komponen-komponen sistem dapat berupa suatu subsistem atau bagian-bagian sistem. Setiap sistem selalu mengandung komponen-komponen atau subsistem-subsistem. Setiap subsistem mempunyai sifat-sifat dari sistem untuk menjalankan suatu fungsi tertentu dan mempengaruhi proses sistem secara keseluruhan.
Suatu sistem dapat mempunyai suatu sistem yang lebih besar yang disebut Supra Sistem, misalnya suatu perusahaan dapat disebut dengan suatu sistem dan indusri yang merupakan sistem lebih besar dapat disebut dengan supra sistem. Kalau dipandang industri sebagai suatu sistem, maka perusahaan dapat disebut sebagai subsistem. Demikian juga bila perusahaan dipandang sebagai suatu sistem, maka sistem akutansi adalah subsistemnya.
b. Batas
Batas sistem merupakan daerah yang membatasi antara suatu sistem dengan sistem yang lainnya atau dengan lingkungan luarnya. Batas sistem ini memungkinkan suatu sistem dipandang sebagai suatu kesatuan, karena dengan batas sistem ini fungsi dan tugas dari subsistem yang satu dengan lainnya berbeda tetapi tetap saling berinteraksi. Batas suatu sistem menunjukkan ruang lingkup
(scope) dari sistem tersebut.
c. Lingkungan Luar
Segala sesuatu diluar dari batas sistem yang mempengaruhi operasi dari suatu sistem. Lingkungan luar sistem ini dapat bersifat menguntungkan atau merugikan. Lingkungan luar yang menguntungkan harus dipelihara dan dijaga agar tidak hilang pengaruhnya, sedangkan lingkungan luar yang merugikan harus dimusnahkan dikendalikan agar tidak mengganggu operasi sistem.
d. Penghubung (Interface)
e. Input
Merupakan energi yang dimasukan kedalam sistem. Masukan dapat berupa Maintenance Input, yaitu energi yang dimasukan supaya sistem tersebut dapat
beroperasi. Signal Input adalah energi yang diproses untuk didapatkan keluaran. Sebagai contoh didalam sistem komputer, program adalah maintenance input yang digunakan untuk mengoperasikan komputernya dan data adalah signal
input untuk diolah menjadi informasi.
f. Output
Merupakan hasil dari energy yang diolah oleh sistem. Meliputi : keluaran yang berguna, contohnya Informasi yang dikeluarkan oleh komputer. Dan keluaran yang tidak berguna yang dikenal sebagai sisa pembuangan, contohnya panas yang dikeluarkan komputer.
g. Process
Merupakan bagian yang memproses masukan untuk menjadi keluaran yang diinginkan. Contoh CPU pada Komputer, Bagian Produksi yang mengubah bahan baku menjadi barang jadi, Bagian akuntansi yang mengolah data transaksi menjadi laporan keuangan.
h. Goal
Setiap sistem pasti mempunyai tujuan ataupun sasaran yang mempengaruhi input yang dibutuhkan dan output yang dihasilkan. Dengan kata lain suatu sistem akan dikatakan berhasil kalau pengoperasian sistem itu mengenai sasaran atau tujuannya. Sistem yang tidak mempunyai sasaran, maka operasi sistem tidak akan berjalan dengan baik.
2.2.2 Konsep Dasar Informasi
a) Informasi : Data yang telah diproses menjadi bentuk yang memiliki arti bagi penerima dan berupa fakta, suatu nilai yang bermanfaat. Jadi ada suatu proses
transfirmasi data menjadi suatu informasi → input-proses-output.
b) Data : Merupakan raw material untuk suatu informasi. Perbedaan informasi dan data sangat relative tergantung pada nilai gunanya bagi manajemen yang memerlukan. Suatu informasi bagi level manajemen tertentu bisa menjadi data bagi manajemen diatasnya, atau sebaliknya.
c) Representasi Informasi : Pelambangan informasi, misalnya: Representasi biner.
d) Kuantitas Informasi : Suatu ukuran informasi. Tergantung representasi. Untuk representasi biner satuannya: bit, byte, word dll.
e) Kualitas Informasi : bias terhadap error, karena: kesalahan cara pengukuran dan pengumpulan, kegagalan mengikuti prosedur pemrosesan, kehilangan atau data tidak terproses, kesalahan perekaman atau koreksi data, kesalahan file histori/master, kesalahan prosedur pemrosesan ketidak berfungsian sistem.
f) Umur Informasi : kapan atau sampai kapan sebuah informasi memiliki nilai/arti bagi penggunanya. Ada condition information (mengacu pada titik waktu tertentu) dan operating information (menyatakan suatu perubahan pada suatu range waktu).
g) Kualitas Informasi, tergantung dari 3 hal, yaitu informasi harus :
1. Akurat, berarti informasi harus bebas dari kesalahan-kesalahan dan tidak bias atau menyesatkan. Akurat berarti juga harus jelas mencerminkan maksudnya. 2. Tetap pada waktunya, berarti informasi yang datang pada penerima tidak
boleh terlambat.
3. Relevan, berarti informasi tersebut mempunyai manfaat untuk pemakainya. Relevansi informasi untuk tiap-tiap orang satu dengan yang lainnya berbeda. h) Nilai Informasi : ditentukan dari dua hal, yaitu manfaat dan biaya
2.2.3 Unified Modeling Language
Unified Modeling Language (UML) adalah bahasa standar untuk melakukan spesifikasi, visualisasi, konstruksi, dan dokumentasi dari komponen-komponen perangkat lunak, dan digunakan untuk pemodelan bisnis dan sistem perangkat lunak lainnya.
Dengan menggunakan UML dapat memodelkan aplikasi piranti lunak yang dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Namun, UML lebih cocok digunakan untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NE, sebab UML menggunakan konsep class dan operation. Walaupun demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C.
Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan.
Tipe diagram UML dibagi menjadi 2, yaitu: a. Structural diagrams
b. Behavior diagrams. I. Structural Diagrams
Structural diagrams digunakan untuk mendeskripsikan relasi antar kelas,
sedangkan behavior diagrams digunakan untuk mendeskripsikan interaksi antara aktor dan sebuah use case (bagaimana seorang aktor menggunakan sistem).
Structural diagram memiliki 4 diagram, yaitu: 1. Class Diagram
Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan
beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. Class memiliki tiga area pokok:
1. Nama(dan stereotype) 2. Atribut
3. Metoda
Atribut dan metoda dapat memiliki salah satu sifat berikut :
1. Private , tidak dapat dipanggil dari luar class yang bersangkutan.
2. Protected , hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya.
3. Public , dapat dipanggil oleh siapa saja.
Gambar 2.4 Struktur Class Diagram
Class dapat merupakan implementasi dari sebuah interface , yaitu class abstrak yang hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface mendukung resolusi metoda pada saat run-time.
Sesuai dengan perkembangan class model, class dapat dikelompokkan menjadi package . Kita juga dapat membuat diagram yang terdiri atas package.
Gambar 2.5 Contoh Class Package Diagram
2. Object Diagram
representasi dari diagram kelas dalam sistem. Selain itu, Diagram obyek menggambarkan gambaran keadaan sistem dalam waktu tertentu.
Pada diagram objek, hanya terdapat satu relasi antar kelas, yaitu asosiasi. Tidak hanya itu, pada diagram objek yang didefinisikan hanya terdapat nama objek suatu kelas beserta atributnya saja, tanpa operasi yang dilakukan oleh objek tersebut.
Contoh penulisan diagram objek :
Gambar 2.6 Struktur Diagram Objek
Penulisan nama pada object diagram, bisa kita tulis nama kelasnya saja, tanpa diikut nama obyeknya. Dengan penulisan nama kelas awalnya harus ditulis dengan huruf kapital.
3. 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
Gambar 2.7 Contoh Component Diagram
II. 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 yang digunakan). Hubungan antar node (misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam diagram ini.
Contoh deployment diagram adalah sebagai berikut:
Gambar 2.8 Contoh Deployment Diagram Behavior Diagram memiliki 5 diagram, yaitu:
1. Use Case Diagram
Use case diagram menggambarkan fungsionalitas yang diharapkan dari
dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, membuat (create) sebuah daftar belanja, dan sebagainya.
Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang
berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. Use
case diagram dapat sangat membantu bila kita sedang menyusun requirement
sebuah sistem, mengkomunikasikan rancangan dengan klien, dan merancang test case untuk semua feature yang ada pada sistem. Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian dari proses dalam dirinya.
Secara umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use case yang meng-include dieksekusi secara normal. Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang common. Sebuah use case juga dapat meng-extend use case lain dengan behaviour-nya sendiri. Sementara hubungan generalisasi antar use case
menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang lain. Contoh use case diagram :
Gambar 2.9 Contoh Use-Case Diagram 2. Activity Diagram
Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang
adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya (internal processing).
Contoh activity diagram :
Gambar 2.10 Contoh Activity Diagram 3. State Chart 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 ).
Contoh statechart diagram:
:
4. 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.
5. Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di
sekitar sistem (termasuk pengguna, display , dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu.
Untuk objek-objek yang memiliki sifat khusus, standar UML mendefinisikan ikon khusus untuk objek boundary, controller dan persistent entity.
Contoh sequence diagram :
2.2.4 Basis Data
Basis data adalah suatu kumpulan data yang saling berhubungan antara satu dengan yang lainnya, yang tersimpan dalam perangkat keras komputer (hardware) dan digunakan perangkat lunak (software) untuk memanipulasinya. Penerapan database didalam sistem informasi disebut database sistem.
Sistem data adalah suatu sistem informasi yang mengintegrasikan kumpulan dari data yang saling berhubungan satu dengan yang lainnya dan membuat tersedia untuk beberapa aplikasi yang bermacam-macam didalam suatu organisasi. Oleh sebab itu basis data dapat didefinisikan menjadi :
“Basis data merupakan data tertentu yang secara bersama-sama dapat
digunakan untuk aplikasi-aplikasi yang berbeda.” Sebelum membentuk suatu
database, data melalui tingkatan dalam struktur data yaitu, mulai dari
karakter-karakter, data item (field), records dan kemudian database. 1.Karakter
Karakter merupakan bagian data yang terkecil, karakter dapat berupa angka, huruf, abjad atau symbol-simbol khusus yang membentuk suatu data item.
2.Field
Sebuah field menggambarkan satu atribut dari record yang menunjukan suatu item dari data tertentu.
3.Records
Records merupakan kumpulan dari field dan record menggambarkan suatu unit dan individu yang tertentu.
4.File
File terdiri dari record-record yang menggambarkan satu kesatuan data
yang sejenis. 5.Database
Database terdiri dari kumpulan file. Tujuan dari penggunaan database diantaranya :
4. Ketersediaan (availability) 5. Kelengkapan (completeness) 6. Keamanan (security)
7. Kebersamaan Pemakaian (sharability)
2.3 Software Pendukung
2.3.1
Web Server ApacheWeb server merupakan server internet yang mampu melayani koneksi transfer data dalam protocol HTTP. Web server merupakan hal yang terpenting dari server di internet dibandingkan server lainnya seperti e-mail server, ftp server ataupun news server. Hal ini disebabkan web server telah dirancang untuk dapat melayani beragam jenis data, dari text sampai grafis 3 dimensi. Kemampuan ini telah menyebabkan berbagai institusi seperti universitas maupun perusahaan dapat menerima kehadirannya dan juga sekaligus menggunakannya sebagai sarana di internet.
Salah satu software yang biasa digunakan oleh banyak web master di dunia adalah Apache. Software tersebut dapat didownload secara gratis dari web resmi apache, yaitu http://www.apache.org. Web server ini fleksibel terhadap berbagai sistem operasi seperti Windows 9x/NT ataupun Unix/Linux. Apache merupakan turunan dari webserver yang dikeluarkan oleh NCSA yaitu NCSA HTTPd pada sekitar tahun 1995.
Kelebihan web server Apache : a. Freeware (software gratisan) b. Mudah diinstal.
c. Mampu beroperasi pada berbagai platform sistem operasi . d. Mudah mengkonfigurasinya.
2.3.2 Sejarah PHP
Kelahiran PHP bermula saat Rasmus Lerdorf membuat sejumlah skrip Perl yang dapat mengamati siapa saja yang melihat-lihat daftar riwayat hidupnya yakni pada tahun 1994. Skrip-skrip ini selanjutnya dikemas menjadi tool yang disebut dengan “Personal Home Page”. Sedangkan menurut dokumen resmi PHP, PHP merupakan singkatan dari PHP Hypertext Prepocessor. Ia merupakan bahasa berbentuk skrip yang ditempatkan dalam server dan diproses diserver. Hasilnyalah yang dikirimkan ke klien, tempat pemakai menggunakan browser .
Pada saat ini PHP sudah cukup popular sebagai peranti pemrograman web. PHP bersifat bebas dipakai, sehingga tidak perlu membayar apapun untuk menggunakan perangkat lunak ini. Jika ingin mencoba tidak perlu menggunakan komputer berkelas server. Hanya dengan sebuah komputer biasa, kita bisa mempelajari dan mempraktekan PHP. Konsep kerja PHP diawali dengan permintaan suatu halaman web oleh browse.
Berdasarkan URL (Uniform Resource Locator) atau dikenal dengan sebutan alamat Internet. Browser mendapatkan alamat dari web server, mengidentifikasi halaman yang dikehendaki dan menyampaikan segala informasi yang dibutuhkan oleh web server. Selanjutnya web server akan mencarikan file yang diminta dam memberikan isinya ke web browser. Kemudian diterjemahkan kedalam kode HTML dan menampilkannya ke layar pengguna. Adapun kelebihan-kelebihan dari PHP adalah:
1. PHP mudah dibuat dan memiliki kecepatan akses tinggi.
2. PHP dapat berjalan dalam web server yang berbeda dan dalam sistem operasi yang berbeda pula.
3. PHP diterbitkan secara gratis.
4. PHP adalah termasuk bahasa yang embedded (bisa ditempel atau diletakkan dalam tag HTML).
2.3.3 MySQL
MySQL adalah sebuah perangkat lunak suatu sistem manajemen database yang multithread dan multi-user. MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia MySQL AB, dimana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah David Axmark, Allan Larsson, dan Michael "Monty" Widenius.
MySQL merupakan susunan salah satu konsep utama dalam database sejak lama, yaitu SQL (Structured Query Language). Kendala dari suatu DBMS dapat diketahui dari cara kerja optimalisasinya dalam melakukan perintah-perintah SQL yang dibuat user ataupun program-program aplikasinya. Sebagai database server, MySQL dapat dikatakan lebih unggul dibanding database server lainnya dalam query data.
Suatu database relasional menyimpan data dalam tabel-tabel terpisah. Hal ini memungkinkan kecepatan dan fleksibilitas. Tabel-tabel yang dihubungkan dengan relasi yang ditentukan membuatnya bisa mengkombinasikan data dari beberapa tabel pada suatu permintaan. Untuk menambahkan, mengakses, dan memproses data yang tersimpan pada suatu database komputer maka diperlukan sistem manajemen database seperti MySQL. Karena komputer sangat unggul dalam menangani sejumlah besar data, sistem manajemen database memainkan suatu peranan yang penting dalam komputasi, baik sebagai utility stand-alone maupun bagian dari aplikasi lainnya.
Beberapa perintah dasar SQL yang sering dipergunakan pada MySQL adalah sebagai berikut :
a. Create Database
Yaitu perintah yang digunakan untuk membuat database baru. Sintaks : Create database database_nama database
b. Drop Database
Yaitu perintah yang digunakan untuk menghapus database. Sintaks : Drop Tabel Tabel_name
c. Create Tabel
Sintaks : Create Tabel tabel_name (create_definition) d. Describe
Yaitu perintah yang digunakan untuk mendeskripsikan tabel Sintaks Describe (Desc) tabel [colum]
e. Alter Tabel
Yaitu perintah yang digunakan untuk memodifikasi tabel Sintaks: Alter [Ignore] Tabel table_name
f. Drop Tabel
Yaitu perintah yang digunakan untuk menghapus tabel Sintaks Drop Tabel tabel_name [tabel_name..]
g. Delete
Yaitu perintah yang digunakan untuk menghapus record dri tabel Sintaks : Delete From tabel_name Where Where_definiition h. Select
Yaitu perintah yang digunakan untuk query ke database Sintaks : Select * from tabel_name
2.3.4 Cascading Style Sheet (CSS)
Cascading Style Sheet (CSS) merupakan salah satu bahasa pemrograman web untuk mengendalikan beberapa komponen dalam sebuah web sehingga akan lebih terstruktur dan seragam. Sama halnya style dalam aplikasi pengolahan kata pada Microsoft Word yang dapat mengatur beberapa style, misalnya heading, bodytext, footer, dan lainnya untuk dapat digunakan bersama-sama dalam beberapa berkas.
Pada umumnya CSS dipakai untuk memformat tampilan halaman web yang dibuat dengan bahasa HTML dan XHTML. CSS dapat mengendalikan ukuran gambar, warna bagian tubuh pada text, warna, ukuran, paragraf, dan parameter lainnya. CSS juga bahasa style sheet yang digunakan untuk mengatur tampilan halaman web dengan format yang berbeda.
kembali dalam mendesain web sehingga tidak perlu mengulang perintah dari awal. Pada panel CSS kita bisa membuat, mengedit, atau menampung seluruh perintah dari CSS.
2.3.5 Framework Code Igniter
Dalam dunia pemrograman website ada banyak sekali bahasa pemrograman yang bisa digunakan. Salah satu bahasa pemrograman yang sangat terkenal dan banyak sekali digunakan oleh para pembuat website adalah PHP. PHP merupakan bahasa pemograman yang mudah dipelajari dan andal untuk digunakan. Banyaknya komunitas PHP – dikenal dengan nama PHP User Group (PHPUG) – membuat banyak class maupun fungsi yang dishare ke publik, sehingga membuat pembangunan sebuah website semakin mudah.
Dalam perkembangannya, semakin banyak bermunculan CMS (Content Management System) berbasis PHP. Dengan adanya CMS, seorang pengguna
awam pun bisa membuat sebuah website tanpa harus menguasai PHP terlebih dahulu. Walaupun demikian, CMS tentu saja tidak bisa mengakomodir setiap kebutuhan pengguna, dikarenakan selalu ada kebutuhan spesifik dari pengguna yang tidak bisa dilakukan oleh CMS secara default.
Selain CMS, saat ini juga bermunculan berbagai macam framework. Framework merupakan alat yang digunakan untuk membantu pekerjaan. Karena untuk pembuatan website maka framework disini dapat diartikan sebagai alat yang dapat digunakan untuk mempermudah pembuatan website. Sebuah framework sudah menyediakan berbagai macam fungsi/class yang dibutuhkan dalam pembuatan website. Framework juga menyediakan lingkungan pengembangan yang harus diikuti dalam pembuatan website menggunakan framework tersebut.
Jika dengan CMS maka user hanya menjalankan saja tidak perlu lagi memikirkan untuk menulis kode program sendiri, tetapi tidak demikian dengan framework. Menggunakan framework user masih harus menulis kode, bedanya
Sebuah framework selain menyediakan lingkungan pengembangan sendiri-sendiri juga menyediakan berbagai macam fungsi siap pakai yang bisa digunakan dalam pembuatan website. Sehingga tidak perlu kaget jika akan banyak kode atau fungsi yang terlihat tidak seperti biasanya, karena fungsi-fungsi tersebut merupakan fungsi bawaan framework dan bukan fungsi asli dari PHP. Fungsi tersebut terkadang merupakan pengembangan atau penyesuaian fungsi asli PHP agar lebih mudah digunakan atau agar lebih sesuai dengan kebutuhan pengguna.
CodeIgniter adalah suatu Application Development Framework untuk pembangunan suatu website berbasis PHP. Tujuannya adalah agar pembangunan projek bisa lebih cepat dibandingkan dengan membangunnya dari awal, dengan menyediakan library yang kaya yang umum digunakan untuk pembangunan suatu website, dengan interface dan struktur logika yang sederhana untuk
mengaksesnya. CodeIgniter akan membuat developer semakin kreatif.
Tujuan dari pembuatan framework CodeIgniter adalah untuk menghasilkan framework yang akan dapat digunakan untuk pengembangan proyek pembuatan website secara lebih cepat dibandingkan dengan pembuatan website dengan cara koding secara manual, dengan menyediakan banyak sekali pustaka yang dibutuhkan dalam pembuatan website, dengan antarmuka yang sederhana dan struktur logika untuk mengakses pustaka yang dibutuhkan. CodeIgniter membiarkan user untuk memfokuskan diri pada pembuatan website dengan meminimalkan pembuatan kode untuk berbagai tujuan pembuatan website.
Kelebihan CodeIgniter diantaranya adalah : a. Gratis
CodeIgniter dilisensikan dibawah lisensi Apache/BSD style open source license, ini berarti user dapat menggunakannya sesuai dengan keinginan.
b. 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 sebab itu CodeIgniter dikembangkan agar tetap kompatibel dengan PHP versi 4 dan dapat dijalankan pada PHP versi 5.
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.
d. 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. Ada bagian yang khusus membuat tampilan dan bagian yang membuat core programnya.
e. Dokumentasi
Salah satu hal yang bisa dijadikan barometer apakah sebuah aplikasi benar-benar dikembangkan atau tidak bisa dilihat dari dokumentasinya. Dalam hal ini CodeIgniter sangat luar biasa, terdapat dokumentasi yang sangat lengkap tentang semua hal yang ada dalam CodeIgniter. Mulai dari langkah instalasi sampai dokumentasi fungsi-fungsi nya tersedia. Adanya dokumentasi sangat memudahkan bagi pemula dalam mempelajari lingkungan pengembangan website dengan CodeIgniter.
f. Pustaka 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.
Berikut fitur-fitur yang didukung oleh CodeIgniter : 1. Sistem berbasis Model View Controller
2. Kompatibel dengan PHP versi 4. 3. Ringan dan Cepat.
4. Terdapat dukungan untuk berbagai basis data.
5. Mendukung Active Record Database, form dan validasi data masukan, pencatatan error yang terjadi, lokalisasi bahasa.
6. Tersedia pengaturan session, pustaka untuk bekerja dengan XMP-RPC. 7. Tersedia class untuk upload file, transfer via FTP, pagination (membuat
(cropping, resizing, rotate dan lain-lain), mengirim email, template website, trackback.
8. Mendukung enkripsi data, benchmarking, caching, hooks, ekstensi class dan plugin, XSS filtering.
9. Menghasilkan clean URL, URI routing yang felksibel. 10. Memiliki helper yang sangat banyak jumlahnya
Berikut ini merupakan diagram dari aplikasi yang menggunakan CodeIgniter sebagai frameworknya.
Gambar 2.13. Diagram Aplikasi Menggunakan CodeIgniter
a. index.php berfungsi sebagai controller depan, mnginisialisasi basic resource yang dibutuhkah untuk menjalankan CI.
b. Route menganalisa HTTP request untuk menentukan apa yang harus dilakukan dengan HTTP request itu.
c. Jika file cache masih ada, maka akan dikirim langsung ke browser, tanpa melewati eksekusi normal sistem.
d. Keamanan, sebelum controller aplikasi di panggil, HTTP request dan data yang dikirim user, di filter untuk alasan keamanan.
e. Controller memanggil model, library inti, plugin, helper, dan resource lainnya yang di butuhkan untuk memroses request tertentu.
f. View yang sudah diproses, dikirim ke browser sebagai hasil yang terlihat. Jika status caching ON, view akan disimpan di cache, jadi jika ada request yang sama, view itu bisa ditampilkan lagi.
a. Model, merepresentasikan struktur data. Umumnya class model mengandung fungsi untuk menampilkan, menambah, mengubah informasi pada database
b. View, merupakan informasi yang dipresentasikan kepada user. View biasanya merupakan sebuah halaman web, tapi pada CodeIgniter ini juga bisa merupakan fragment, seperti header atau footer. Atau bisa juga merupakan sebuah rss page ataupun jenis halaman lainnya.
c. Controller berfungsi sebagai penghubung antara Model dan View dan resource lainnya yang dibutuhkan untuk memproses HTTP request dan menghasillkan sebuah halaman web.
34
BAB III
PEMBAHASAN
3.1 Analisis Sistem
Analisis sistem (system analysis) dapat didefinisikan sebagai penguraian dari suatu sistem yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk mengidentifikasikan dan mengevaluasikan permasalah-permasalahan, kesempatan-kesempatan, hambatan-hambatan yang terjadi dan kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan-perbaikan. Analisis dapat memahami sistem pemikiran yang kompleks dengan memecahnya ke dalam unsur-unsur yang lebih sederhana sehingga hubungan antar unsur-unsur itu menjadi jelas. Dalam menganalisis sistem secara Object Oriented yang nantinya di bangun aplikasi berorientasi objek, sehingga hubungan
antar unsur-unsur itu menjadi jelas.
Berikut adalah hasil analisis dari sistem manual yang ada dengan menggunakan metode UML (Unified Modeling Language).
3.1.1. Analisis Sistem yang Berjalan
Dalam menangani data absensi siswa, Science Group Indonesia menggunakan proses sebagai berikut:
1. Guru melakukan absensi terhadap siswa kelas, serta memberikan laporan data kepada manajer cabang.
2. Manajer cabang menerima laporan absensi siswa, dan melakukan pemeriksaan data absensi.
3. Jika laporan sesuai dengan data yang tersimpan di absensi.xls maka Laporan tersebut akan diinputkan kedalam komputer dan disimpan dalam file absensi(.xls), dan dokumennya akan disimpan sebagai arsip (A1)
5. Setelah data laporan yang valid telah disimpan, maka data harian tersebut akan diakumulasi sampai sebanyak 6 hari dari hari senin-sabtu (data laporan mingguan) .
6. Data tersebut akan dicetak sebanyak 2(dua) rangkap untuk dibawa ke kantor pusat untuk menjadi laporan mingguan, sedangkan laporan yang lain disimpan menjadi arsip di kantor cabang.
7. Manajer cabang akan membawa dokumen laporan absensi mingguan ke kantor pusat.
8. Manajer sekretaris (Kantor pusat) akan menerima dokumen laporan mingguan tersebut.
9. Manajer sekretaris akan melakukan pemeriksaan dokumen laporan tersebut dengan data yang terdapat dalam rekap absensi.xls.
10.Jika data yang diperiksa tidak sesuai dengan data yang tersimpan di kantor pusat, maka dokumen akan disimpan dikembalikan ke manajer cabang untuk diperiksa kembali.
11.Jika data yang diperiksa sesuai dengan data yang tersimpan, maka data yang terdapat dalam dokumen akan diinputkan melalui komputer kedalam file rekap absensi.xls.
12. Manajer sekretaris (Kantor Pusat) akan mencetak data rekap laporan absensi persemester sebanyak 2 (dua) rangkap, yaitu: 1 rangkap untuk kantor cabang dan 1 rangkap untuk kantor pusat yang akan disimpan sebagai arsip.
Gambar 3.1 Flowmap diagram Keterangan:
1. A1 : Arsip laporan absensi harian kantor cabang. 2. A2 : Arsip laporan absensi mingguan kantor pusat
3.1.2. Evaluasi Sistem Yang Sedang Berjalan.
Berdasarkan analisis serta pengumpulan data penelitian (Observasi dan wawancara) maka dapat dievaluasi beberapa hal seperti berikut:
Tabel 3.1 Tabel Evaluasi Sistem yang berjalan. No. Permasalahan
1 Duplikasi data absensi membuat proses rekap data menjadi lebih lama, karena harus menyesuaikan data rekap yang ada di kantor pusat dengan kantor cabang.
2 Proses pemutakhiran data serta pengolahan data menjadi lebih lama dikarenakan petugas dapat memastikan data yang tersimpan di kantor pusat itu sesuai dengan kantor cabang.
3 Setiap kantor cabang tidak memiliki data absensi kelas yang sama, dikarenakan kelas bimbingan yang tersebar di kantor cabang berbeda.
4 Pelaporan serta rekap jumlah kehadiran siswa kepada orang tua siswa menjadi lebih lama, dikarenakan harus menunggu data dari kantor pusat.
3.1.3. Sistem yang Akan Dibangun.
Berikut adalah fitur-fitur yang diharapkan dimiliki oleh Aplikasi Absensi Online Home-Schooling.
Tabel 3.2 Tabel fitur sistem absensi online
No. Nama Fitur Penjelasan
1. View Absen. Menampilkan daftar absensi perkelas secara terurut
3. Pengolahan data Kelas. Dapat menampilkan data kelas serta melakukan penambahan,
penghapusan serta pengubahan data kelas.
3. Pengolahan data Murid Dapat menampilkan data murid serta melakukan operasi tambah, hapus, edit data murid tersebut. 4. Pemilihan semester. Dapat memilih semester yang aktif. 5. Perekapan data. Dapat menghasilkan data absensi
perkelas persemester dalam format .xls
6. Login. Sistem dapat melakukan proteksi terhadap data yang disimpan, dengan hanya mengijinkan user tertentu saja yang dapat amsuk kedalam sistem.
3.1.4. Analisis Pengguna Sistem
Berikut adalah hak akses yang dimiliki oleh user, yaitu admin. Tabel 3.3 Tabel Analisis Pengguna Sistem.
Pengguna Hak Akses Tingkat Keterampilan
Admin Dapat melakukan login kedalam sistem
Dapat mengoperasikan aplikasi berbasis web pada OS Windows.
Menampilkan data Absensi, Murid, Kelas serta Pilihan semester.
Dapat melakukan Tambah, Hapus serta Edit data Absensi, Murid, Kelas dan Pilihan semester.
Dapat memilih data semester (ganjil atau genap) yang aktif.
3.1.5. Analisis Kebutuhan Non Fungsional
Analisis kebutuhan non fungsional merupakan analisis yang dibutuhkan untuk menentukan spesifikasi kebutuhan sistem. Spesifikasi ini juga meliputi elemen atau komponen-komponen apa saja yang dibutuhkan untuk sistem yang akan dibangun sampai dengan sistem tersebut diimplementasikan. Analisis kebutuhan ini juga menentukan spesifikasi masukan yang di perlukan sistem, keluaran yang akan dihasilkan sistem dan proses yang dibutuhkan untuk mengolah masukan sehingga menghasilkan suatu keluaran yang diinginkan.
3.1.5.1. Kebutuhan Perangkat Keras
Perangkat keras yang digunakan pada suatu instansi atau perusahaan yang digunakan sebagai media untuk menerapkan sistem sangat berpengaruh pada efisiensi dan efektivitas kinerja suatu sistem tersebut, adapun pada sistem yang berjalan, hardware yang digunakan dengan spesifikasi sebagai berikut :
1. Processor Pentium Dual Core 2.66 GHz 2. Memory (RAM) 1 GB
Perangkat keras komputer yang dibutuhkan untuk menjalankan aplikasi Pendataan Absensi Online Siswa Berbasis Web dengan menggunakan framework Codeigniter yang akan dibangun minimal memiliki :
1. Processor Pentium IV IGHz. 2. Memory (RAM) 64 MB 3. Harddisk 10 GB
6. Mouse 7. Keyboard 8. Printer
Perangkat Keras komputer yang ada saat ini sudah memenuhi kebutuhan dalam menjalankan aplikasi pendataan absensi online siswa berbasis web dengan menggunakan framework codeigniter yang dibangun.
3.1.5.2. Kebutuhan Perangkat Lunak
Perangkat lunak yang digunakan oleh suatu sistem informasi belum dapat digunakan secara optimal, apabila software itu tidak mampu secara khusus melayani kebutuhan sistem. Sistem operasi yang digunakan pada tempat tersebut yaitu: Microsoft Windows XP Professional sehingga sudah sangat mencukupi untuk dapat menjalankan perangkat lunak yang akan dibangun. Perangkat lunak yang dibutuhkan dalam pembangunan aplikasi ini adalah :
1. WampServer sebagai Web Server. 2. PHP dan framework CodeIgniter.
3. Adobe Dreamweaver CS (Creative Suite) 6 sebagai editor PHP. 4. MySQL sebagai DBMS.
5. Tool antarmuka design Microsoft Visio 2007. 6. Mozila Firefox sebagai browser.
3.2. Analisis Sistem Aplikasi Absensi Online
Pada tahap ini dilakukan analisis terhadap sistem aplikasi yang di bangun berdasarkan pada hasil analisis tersebut maka di tuangkan dalam bentuk pemodelan aplikasi berbasis objek yang di gambarkan dalam UML.
3.2.1. Use Case Diagram
hubungan antara aktor yang di wakili oleh Admin dan Sistem yang terdiri dari beberapa proses-proses yang saling berhubungan.
3.2.1.1Definisi Use Case
Definisi Use Case berfungsi untuk menjelaskan proses yang terdapat pada setiap Use Case. Definisinya dapat dilihat pada tabel berikut.
Tabel 3.4 Definisi Use Case
No Use Case Deskripsi
1. Login
Proses verifikasi Username dan Password sebelum masuk kedalam
sistem.
2. Penambahan Absensi
Proses untuk melakukan penambahan data absen dan menampilkannya dalam bentuk tabel.
3. Update Absensi
Proses yang dilakukan untuk mengubah data absensi yang terdapat dalam database.
4.
Delete Absensi
Proses yang dilakukan untuk
menghapus data absensi yang terdapat dalam database.
5. Perekapan Data Proses pengumpulan data absensi per kelas dalam satu semester.
6. Download Rekap
Proses yang dilakukan untuk
mengunduh file rekap dalam format .xls.
7. Pemilihan Semester
Proses untuk mengaktifkan semester yang diinginkan (semester ganjil [1] atau genap [2])
8. Penambahan Siswa
Proses untuk melakukan penambahan data siswa dan menampilkannya dalam bentuk tabel.
9. Update Siswa
Proses yang dilakukan untuk mengubah data siswa yang terdapat dalam
10. Delete Siswa
Proses yang dilakukan untuk menghapus data siswa yang diinginkan.
11. Penambahan Kelas
Proses untuk menambahkan data kelas, sertaa menampilkannya dalam bentuk tabel.
12. Update Kelas
Proses yang dilakukan untuk mengubah data kelas yang terdapat dalam
database.
13. Delete Kelas
Proses yang dilakukan untuk
menghapus data kelas yang terdapat dalam database.
3.2.1.2 Skenario Use Case
Skenario setiap bagian pada use case menunjukkan proses apa yang terjadi pada setiap bagian didalam use case tersebut, dimana user memberikan perintah pada setiap bagian dan respon apa yang diberikan oleh sistem kepada user setelah user memberikan perintah pada setiap bagian – bagian use case.
1. Skenario Use Case Login
Tabel 3.5 Skenario Use Case Login Identifikasi
Nama Login
Tujuan Melakukan Login ke dalam aplikasi.
Deskripsi Proses verifikasi username dan password sebelum masuk kedalam sistem.
Aktor Admin
Skenario Utama
Kondisi awal : Admin telah masuk ke halaman login aplikasi
Aksi Aktor Reaksi Sistem
1. Memasukkan username dan password kedalam form login
2. Menerima permintaan login
3. Memeriksa dalam database dan melakukan verifikasi username dan password.
utama aplikasi
5. Menerima tampilan utama aplikasi.
Kondisi akhir : Admin telah masuk kedalam halaman utama aplikasi. Skenario Alternatif
Aksi Aktor Reaksi Sistem
1. Menampilkan pesan username dan password tidak benar.
2. Mengisi kembali username dan password
3. Mengautentifikasi data username dan password maka sistem akan menampilkan menu utama aplikasi Kondisi akhir : Admin telah masuk kedalam halaman utama aplikasi.
2. Skenario Use Case Penambahan Absensi.
Tabel 3.6 Skenario Use Case Penambahan Absensi Identifikasi
Nama Penambahan Absensi
Tujuan Menambahkan data absensi kedalam database
Deskripsi Menambahkan data absensi ke dalam database dan menampilkan data absensi terbaru kedalam tabel.
Aktor Admin
Skenario Utama
Kondisi awal : Admin telah masuk kedalam menu absen.
Aksi Aktor Reaksi Sistem
1. Memasukkan NIS,Tanggal dan memilih Absen [Ijin, Sakit, Alpha, hadir].
2. Menerima permintaan
penambahan data.
3. Memeriksa data dalam database. 4. Menyimpan data dalam database.
format tabel.
6. Memberikan pesan data telah tersimpan dan tabel data absen yang terbaru.
7. Menerima pesan penyimpanan dan tabel data absensi yang terbaru.
Kondisi akhir : Admin berhasil menyimpan data , menerima pesan penyimpanan dan tabel data absensi yang terbaru.
3. Skenario Use Case Update Absensi.
Tabel 3.7 Skenario Use Case Update Absensi Identifikasi
Nama Update Absensi.
Tujuan Mengubah data absensi yang ada di dalam database
Deskripsi Proses untuk mengubah data absensi yang ada dalam database dan menampilkan data absensi terbaru dalam bentuk tabel.
Aktor Admin
Skenario Utama
Kondisi awal : Admin telah masuk kedalam menu siswa.
Aksi Aktor Reaksi Sistem
1. Memilih data yang akan diubah 2. Menerima permintaan update data. 3. Menyiapkan form update.
4. Mengisi form update. 5. Meng-update data dalam database. 6. Menyusun data absensi dalam
bentuk tabel 7. Menampilkan data absensi yang
telah disimpan dalam bentuk tabel
4. Skenario Use Case Delete Absensi.
Tabel 3.8 Use Case Delete Absensi. Identifikasi
Nama Delete Absensi.
Tujuan Menghapus data absensi yang ada di dalam database.
Deskripsi Proses untuk menghapus data absensi yang ada dalam database dan menampilkan data absensi terbaru dalam bentuk tabel.
Aktor Admin
Skenario Utama
Kondisi awal : Admin telah masuk kedalam menu siswa.
Aksi Aktor Reaksi Sistem
1. Memilih data yang akan dihapus.
2. Menerima permintaan delete data.
3. Menyiapkan form konfirmasi delete.
4. Mengonfirmasi perintah delete dalam form .
5. Menghapus data dalam database.
6. Menyusun data kelas dalam bentuk tabel
7. Menampilkan data absensi yang telah disimpan dalam bentuk tabel
5. Skenario Use Case Perekapan Data.
Tabel 3.9 Skenario Use Case Perekapan Data Identifikasi
Nama Perekapan Data
Tujuan Menampilkan rekap data absensi berdasarkan kelas dan semester dalam bentuk tabel.
Deskripsi Proses untuk menampilkan rekap data absensi per kelas terbaru yang terdapat dalam database
Aktor Admin
Skenario Utama
Kondisi awal : Admin telah masuk kedalam menu rekap dan memilih kelas yang akan direkap datanya.
Aksi Aktor Reaksi Sistem
1. Memilih kelas yang diinginkan dan melakukan permintaan rekap.
2. Menerima permintaan rekap data.
3. Memeriksa data dalam database berdasarkan id_kelas dan id_semester.
4. Menyusun rekap data tersebut dalam bentuk tabel
5. Menerima rekap data absensi dan menampilkan data tersebut dalam bentuk tabel.
6. Skenario Use Case Download Rekap.
Tabel 3.10 Skenario Use Case Download Rekap. Identifikasi
Nama Download Rekap.
Tujuan Mengunduh rekap data absen dari database.
Deskripsi Proses untuk mengunduh rekap data absen per kelas dalam satu semester kedalam file format .xls.
Aktor Admin
Skenario Utama
Kondisi awal : Admin telah masuk kedalam menu rekap.
Aksi Aktor Reaksi Sistem
1. Mengirim permintaan download 2. Menerima permintaan download data.
3. Menyiapkan data yang akan di download dari database
4. Menyusun data yang telah dikumpulkan kedalam file berformat .xls.
5. Mengunduh file rekap.
Kondisi akhir : Admin berhasil mengunduh rekap data absensi dalam file berformat .xls
7. Skenario Use Case Pemilihan Semester
Tabel 3.11 Skenario Use Case Pemilihan Semester Identifikasi
Nama Pemilihan Semester
Tujuan Mengubah status semester yang aktif dalam database, sehingga pengolahan data hanya dapat dilakukan untuk semester tersebut. Deskripsi Proses untuk mengubah status semester yang aktif dalam
database.
Aktor Admin
Kondisi awal : Admin telah masuk kedalam menu semester.
Aksi Aktor Reaksi Sistem
1. Memilih semester yang akan diaktifkan.
2. Menerima permintaan pengaktifan semester.
3. Mengaktifkan semester tersebut, dan menonaktifkan semester yang lain. 4. Menyimpan status semester yang aktif
kedalam database.
5. Mengubah tampilan status semester yang aktif dalam antar muka aplikasi 6. Menerima konfirmasi status
semester yang aktif melalui tampilan antar muka menu semester dalam aplikasi
Kondisi akhir : Admin berhasil mengubah status semester yang aktif.
8. Skenario Use Case Penambahan Siswa.
Tabel 3.12 Skenario Use Case Penambahan Siswa. Identifikasi
Nama Penambahan Siswa
Tujuan Menambahkan data siswa dalam database.
Deskripsi Proses untuk menambahkan data siswa dan menampilkan data tersebut dari database dalam bentuk tabel.
Aktor Admin
Skenario Utama
Kondisi awal : Admin telah masuk kedalam menu siswa.
Aksi Aktor Reaksi Sistem
1. Input NIS, Nama dan memilih Kelas 2. Menerima permintaan input data. 3. Melakukan pengujian terhadap
dalam database.
4. Mengecek ketersediaan data kelas.
5. Jika NIS belum disimpan, dan Kelas tersedia. Sistem menyimpan data NIS, Nama dan Kelas kedalam database.
6. Menyiapkan data siswa yang telah disimpan, serta pesan konfirmasi penyimpanan
7. Menerima konfirmasi penyimpanan data dan menampilkan data siswa dalam bentuk tabel.
Kondisi akhir : Admin berhasil menyimpan data siswa dan menampilkan data siswa yang disimpan dalam bentuk tabel.
9. Skenario Use Case Update Siswa.
Tabel 3.13 Skenario Use Case Update Siswa. Identifikasi
Nama Update Siswa
Tujuan Mengubah data siswa yang ada di dalam database
Deskripsi Proses untuk mengubah data siswa yang ada dalam database dan menampilkan data siswa terbaru dalam bentuk tabel.
Aktor Admin
Skenario Utama
Kondisi awal : Admin telah masuk kedalam menu siswa.
Aksi Aktor Reaksi Sistem
1. Memilih data yang akan diubah 2. Menerima permintaan update data.
3. Menyiapkan form update.
6. Menyusun data siswa dalam bentuk tabel
7. Menampilkan data siswa yang telah disimpan dalam bentuk tabel
Kondisi akhir : Admin berhasil mengubah data siswa dan menampilkan data siswa yang terbaru dalam bentuk tabel.
10.Skenario Use Case Delete Siswa.
Tabel 3.14 Skenario Use Case Delete Siswa. Identifikasi
Nama Delete Siswa
Tujuan Menghapus data siswa yang ada di dalam database
Deskripsi
Proses untuk menghapus data siswa yang ada dalam database dan menampilkan data siswa terbaru dalam bentuk tabel.
Aktor Admin
Skenario Utama
Kondisi awal : Admin telah masuk kedalam menu siswa.
Aksi Aktor Reaksi Sistem
1. Memilih data yang akan dihapus. 2. Menerima permintaan delete data. 3. Menyiapkan form konfirmasi
delete.
4. Mengonfirmasi perintah delete
dalam form . 5. Menghapus data dalam database. 6. Menyusun data siswa dalam bentuk
tabel 7. Menampilkan data siswa yang telah
disimpan dalam bentuk tabel