i
SISTEM INFORMASI MANAJEMEN WARNET BERBASIS WEB PADA WARNET DIGIMIX SURAKARTA
TUGAS AKHIR
Diajukan untuk memenuhi salah satu syarat mencapai gelar Ahli Madya Program Diploma III Ilmu Komputer Fakultas Matematika dan Ilmu
Pengetahuan Alam Universitas Sebelas Maret
Disusun oleh : ANDI SETIAWAN
NIM. M3108020
PROGRAM DIPLOMA III ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SEBELAS MARET
ii Disusun Oleh
ANDI SETIAWAN NIM. M3108020
Tugas Akhir ini telah disetujui untuk dipertahankan di hadapan dewan penguji
pada tanggal 14 Juli 2011
Pembimbing Utama
iii
HALAMAN PENGESAHAN
SISTEM INFORMASI MANAJEMEN WARNET BERBASIS WEB PADA WARNET DIGIMIX SURAKARTA
Disusun Oleh ANDI SETIAWAN
NIM. M3108020
Dibimbing oleh : Pembimbing Utama
RISTU SAPTONO, S.Si., M.T. NIP 19790210 200212 1 001
Tugas Akhir ini telah diterima dan disahkan oleh dewan penguji Tugas Akhir Program Diploma III Ilmu Komputer pada hari kamis tanggal 14 Juli 2011 Dewan Penguji
Fakultas MIPA UNS
Ir. Ari Handono Ramelan, Msc., PhD. NIP. 19610223 198601 1 001
Ketua
Program Diploma III Ilmu Komputer FMIPA UNS
iv
Computer Science, Mathematics and Science Faculty, Sebelas Maret University of Surakarta.
Digimix internet cafe is one of the internet cafe business in Surakarta. In this case the owner lives outside Surakarta, and has problems to manage the business remotely. So it is necessary to build internet cafe information management system web-based in Digimix Internet Cafe Surakarta as the Final product.
Observation, documentation and literature were used as data collection methods. Development of software engineering system was based on Object Oriented (OO) approach using UML as a modeling method, so the analysis and design of systems included use case diagrams, class diagrams and sequence diagrams. As implementation, CodeIgniter was used as a framework builders
This system is a web application easily accessible. Some of the facilities provided include profiles manage, messages manage, presence manage, stock manage, earning reports manage, files manage, and users manage.
Key words: internet, Digimix, presence, manajements
v ABSTRAK
ANDI SETIAWAN 2011, SISTEM INFORMASI MANAJEMEN WARNET BERBASIS WEB PADA WARNET DIGIMIX SURAKARTA. Diploma III Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Sebelas Maret Surakarta.
Digimix internet cafe adalah salah satu usaha warnet yang ada di Surakarta. Dalam hal ini pemilik usaha ini bertempat tinggal di luar kota Surakarta, dan kesulitan untuk manajemen usahanya. Untuk itu perlu dibangun sistem informasi manajemen warnet berbasis web pada Warnet Digimix Surakarta sebagai produk Tugas Akhir.
Metode pengumpulan data yang digunakan adalah observasi, dokumentasi dan studi pustaka. Pembangunan sistem rekayasa perangkat lunak ini sendiri berbasis Object Oriented (OO) yang menggunakan UML sebagai metode pemodelannya, sehingga analisis dan perancangan sistem yang digunakan meliputi use case diagram, class diagram, dan sequence diagram. Sedangkan dari segi implementasinya digunakan CodeIgniter sebagai framework pembangunnya. Sistem ini bersifat web application sehingga mudah diakses. Beberapa fasilitas yang disediakan diantaranya mengelola profil, mengelola pesan, mengelola presensi, mengelola stok, mengelola laporan pendapatan, mengelola berkas, dan mengelola user.
vi ini”
“Buatlah sejarah baru, tapi jangan melupakan sejarah yang sudah ada”
“Takut akan Tuhan adalah permulaan pengetahuan (Amsal 1 : 7 a)”
“Gunakanlah waktu sebaik mungkin, karena waktu tidak dapat diputar kembali”
vii
HALAMAN PERSEMBAHAN
Karya ini kupersembahkan untuk :
Tuhan Yesus Kristus yang sudah menyertaiku selama ini. Kedua orang tua yang sudah memberikan kasih sayang kepadaku.
Kakak-kakakku yang sudah memberikan dukungan terhadapku.
Orang tua murid les yang sudah menyemangatiku. Murid-murid les yang sudah mendukung dalam doa maupun semangat.
Teman-teman satu angkatan yang sudah bersama-sama selama perkuliahan.
Pemilik warnet Digimix yang sudah memberikan masukan. Rekan kerja yang memberiku dorongan semangat,
viii
melimpahkan berkat dan kasih-Nya untuk menuntun dan menyertai penulis dalam menyelesaikan penyusunan Laporan Tugas Akhir ini dengan baik.
Tugas Akhir ini disusun sebagai salah satu syarat untuk memenuhi persyaratan guna memperoleh derajat Ahli Madya Ilmu Komputer Jurusan Teknik Informatika Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Sebelas Maret Surakarta.
Dalam pembuatan laporan ini, penulis mengucapkan terima kasih kepada semua pihak yang telah membantu dalam penyelesaian laporan Tugas Akhir ini, antara lain :
1. Drs. YS. Palgunadi, M.Sc, selaku Ketua Jurusan D3 Ilmu Komputer FMIPA UNS.
2. Ristu Saptono, S.Si, M.T selaku dosen pembmbing yang telah memberikan pengarahan dan masukan.
3. Semua keluarga yang telah memberikan dukungan.
4. Sahabat dan teman – teman yang telah membantu dan mendukung penyelsaian Tugas Akhir ini.
Kiranya Tuhan Yesus Kristus senantiasa mencurahkan damai dan penyertaan-Nya kepada kita semua, Amin.
Surakrta, 14 Juli 2011
x
A. Deskripsi Kebutuhan ... 15
1. Functional Requirement ... 15
2. Non Functional Requirement ... 18
B. UML Diagram ... 19
1. Use Case Diagram ... 19
2. Deskripsi Use Case ... 23
3. Use Case Naratif dan Skenario ... 25
4. Class Diagram Tahap Analisis ... 51
5. Sequence Diagram ... 55
6. Class Element Diagram ... 75
C. ERD (Entity Relationship Diagram) ... 80
D. Rancangan Tabel ... 81
E. Skema Database ... 88
F. Perancangan Antarmuka (Interface) ... 88
BAB IV IMPLEMENTASI DAN ANALISA ... 94
A. Implementasi ... 94
1. Implementasi Database ... 94
2. Implementasi Sistem ... 94
B. Evaluasi Program ... 100
xi
BAB V KESIMPULAN DAN SARAN ... 105
A. Kesimpulan ... 105
B. Saran ... 105
xii
Tabel 3.1 Hak dan Kewajiban Aktor ... 23
Tabel 3.2 Use Case Glossary ... 24
Tabel 3.3 Use Case Naratif Login ... 25
Tabel 3.4 Use Case Naratif Manage Profil ... 26
Tabel 3.5 Use Case Naratif Manage Pesan ... 28
Tabel 3.6 Use Case Naratif Manage Presensi ... 30
Tabel 3.7 Use Case Naratif Manage Presensi Karyawan ... 32
Tabel 3.8 Use Case Naratif View Presensi Karyawan ... 33
Tabel 3.9 Use Case Naratif Manage Laporan Pendapatan ... 34
Tabel 3.10 Use Case Naratif View Laporan Pendapatan ... 39
Tabel 3.11 Use Case Naratif Add Laporan Pendapatan ... 41
Tabel 3.12 Use Case Naratif Manage Stok ... 42
Tabel 3.13 Use Case Naratif View Stok ... 44
Tabel 3.14 Use Case Naratif Add Stok ... 45
Tabel 3.15 Use Case Naratif Manage Berkas ... 46
Tabel 3.16 Use Case Naratif Manage User ... 48
Tabel 3.17 Use Case Naratif View User ... 50
Tabel 3.18 Tabel Barang ... 81
Tabel 3.19 Tabel Berkas ... 81
Tabel 3.20 Tabel Jabatan ... 82
Tabel 3.21 Tabel Jabatanuser ... 82
xiii
Tabel 3.23 Tabel Pendapatan ... 82
Tabel 3.24 Tabel Pesan ... 84
Tabel 3.25 Tabel Posisi ... 84
Tabel 3.26 Tabel Presensi ... 85
Tabel 3.27 Tabel Riwayatgaji ... 85
Tabel 3.28 Tabel Stok ... 86
Tabel 3.29 Tabel User ... 87
xiv
Gambar 3.1 Use Case Login ... 19
Gambar 3.2 Use Case Kelola Profil ... 19
Gambar 3.3 Use Case Kelola Pesan ... 20
Gambar 3.4 Use Case Kelola Presensi ... 20
Gambar 3.5 Use Case Kelola Stok ... 21
Gambar 3.6 Use Case Kelola Laporan Pendapatan ... 21
Gambar 3.7 Use Case Kelola Berkas ... 22
Gambar 3.8 Use Case Kelola User ... 22
Gambar 3.9 Use Case Kelola Presensi Karyawan ... 23
Gambar 3.10 Class Diagram Tahap Analisis Login ... 51
Gambar 3.11 Class Diagram Tahap Analisis Kelola Profil ... 52
Gambar 3.12 Class Diagram Tahap Analisis Kelola Pesan ... 52
Gambar 3.13 Class Diagram Tahap Analisis Kelola Presensi ... 52
Gambar 3.14 Class Diagram Tahap Analisis Kelola Stok ... 53
Gambar 3.15 Class Diagram Tahap Analisis Kelola Laporan Pendapatan ... 53
Gambar 3.16 Class Diagram Tahap Analisis Kelola Berkas ... 53
Gambar 3.17 Class Diagram Tahap Analisis Kelola User ... 54
Gambar 3.18 Class Diagram Tahap Analisis Kelola Presensi Karyawan ... 54
Gambar 3.19 Sequence Diagram Login ... 55
Gambar 3.20 Sequence Diagram Lihat Profil ... 55
Gambar 3.21 Sequence Diagram Edit Profil ... 55
xv
Gambar 3.23 Sequence Diagram Tulis Pesan ... 56
Gambar 3.24 Sequence Diagram Lihat Kotak Masuk ... 57
Gambar 3.25 Sequence Diagram Lihat Pesan Sampah ... 57
Gambar 3.26 Sequence Diagram Lihat Presensi ... 57
Gambar 3.27 Sequence Diagram Lihat Riwayat Gaji ... 58
Gambar 3.28 Sequence Diagram Tambah Presensi ... 58
Gambar 3.29 Sequence Diagram Edit Stok ... 59
Gambar 3.30 Sequence Diagram Lihat Stok ... 59
Gambar 3.31 Sequence Diagram Tambah Stok ... 60
Gambar 3.32 Sequence Diagram Lihat Laporan Pendapatan Shift Lantai 2 ... 61
Gambar 3.33 Sequence Diagram Lihat Laporan Pendapatan Shift Lantai 3 ... 61
Gambar 3.34 Sequence Diagram Lihat Laporan Pendapatan Harian Lantai 2 ... 61
Gambar 3.35 Sequence Diagram Lihat Laporan Pendapatan Harian Lantai 3 ... 62
Gambar 3.36 Sequence Diagram Tambah Laporan Pendapatan Shift Lantai 2 ... 62
Gambar 3.37 Sequence Diagram Tambah Laporan Pendapatan Shift Lantai 3 ... 63
Gambar 3.38 Sequence Diagram Tambah Laporan Pendapatan Harian Lantai 2 ... 64
xvi
Gambar 3.43 Sequence Diagram Edit Pendapatan Harian Lantai 3 ... 68
Gambar 3.44 Sequence Diagram Hapus Pendapatan Shift ... 68
Gambar 3.45 Sequence Diagram Hapus Pendapatan Harian ... 69
Gambar 3.46 Sequence Diagram Lihat Berkas ... 69
Gambar 3.47 Sequence Diagram Download Berkas ... 69
Gambar 3.48 Sequence Diagram Upload Berkas ... 70
Gambar 3.49 Sequence Diagram Hapus Berkas ... 70
Gambar 3.50 Sequence Diagram Lihat User ... 71
Gambar 3.51 Sequence Diagram Tambah User ... 71
Gambar 3.52 Sequence Diagram Edit User ... 72
Gambar 3.53 Sequence Diagram Hapus User ... 73
Gambar 3.54 Sequence Diagram Lihat Presensi Karyawan ... 73
Gambar 3.55 Sequence Diagram Hapus Presensi Karyawan ... 73
Gambar 3.56 Sequence Diagram Bayar Gaji Karyawan ... 74
Gambar 3.57 Sequence Diagram Edit Presensi Karyawan ... 74
Gambar 3.58 Sequence Diagram Tambah Barang Baru ... 74
Gambar 3.59 Class Element Diagram Login ... 75
Gambar 3.60 Class Element Diagram Kelola Profil ... 75
Gambar 3.61 Class Element Diagram Kelola Pesan ... 76
Gambar 3.62 Class Element Diagram Kelola Presensi ... 76
Gambar 3.63 Class Element Diagram Kelola Stok ... 77
xvii
Gambar 3.65 Class Element Diagram Kelola Berkas ... 78
Gambar 3.66 Class Element Diagram Kelola User ... 78
Gambar 3.67 Class Element Diagram Kelola Presensi Karyawan ... 79
Gambar 3.68 ERD (Entity Relationship Diagram) ... 80
Gambar 3.69 Skema Database ... 88
Gambar 3.77 Rancangan Form Stok Barang ... 92
Gambar 3.78 Rancangan Form Laporan Pendapatan ... 92
Gambar 3.79 Rancangan Form Berkas ... 92
Gambar 3.80 Rancangan Form View User ... 93
Gambar 3.81 Rancangan Form Manage Presensi Karyawan ... 93
xviii
1 BAB I PENDAHULUAN
A.Latar Belakang Masalah
Digimix Internet Café adalah salah satu usaha warnet yang ada di kota Solo. Tahun 2007 menjadi tahun pertama untuk memulai usaha. Pada tahun itu sistem presensi dan monitoring warnet seperti stok barang, pendapatan masih menggunakan cara manual yaitu dengan cara mencatat semua di dalam suatu buku yang disediakan, dan penggunaan sms untuk pelaporan pendapatan harian warnet yang ditujukan kepada pemilik warnet.
Tahun berikutnya, sistem presensi masih menggunakan cara manual, dan sistem monitoring sudah menggunakan excel untuk pelaporannya. Untuk tahun ini sistem pelaporan ditambah dengan pengiriman laporan pendapatan harian yang ditujukan kepada pemilik warnet dan juga supervisor warnet via email.
Tahun berikutnya sistem yang diperbaharui adalah sistem presensi karyawan warnet, sehingga dengan adanya sistem itu, kehadiran karyawan untuk melaksanakan pekerjaannya lebih terkontrol, sehingga pemilik warnet mengetahui siapa saja yang sering terlambat.
Pertengahan tahun 2010, pemilik warnet pindah ke Jakarta. Sehingga semua pelaksanaan operasional warnet dipegang oleh supervisor dan teknisi warnet. Dalam hal ini pemilik warnet mendapatkan kesulitan dalam memonitoring usahanya yang ada di luar kota.
B.Perumusan Masalah
Berdasarkan latar belakang masalah dapat disimpulkan perumusan masalah yang dibahas adalah “Bagaimana caranya pemilik warnet dapat mengontrol usahanya yang berada jauh dengan tempat tinggal?”
C.Batasan Masalah
Masalah dibatasi hanya pada pembuatan Sistem Informasi Manajemen Warnet Berbasis Web yang menampilkan Presensi, Stok, Laporan Pendapatan yang berkaitan dengan operasional warnet.
D.Tujuan Dan Manfaat 1. Tujuan
Tujuan tugas akhir ini adalah perancangan dan pembuatan Sistem Informasi Manajemen Warnet Berbasis Web yang memuat Presensi, Stok, Laporan Pendapatan, sehingga bermanfaat untuk mempermudah karyawan dalam bekerja dan pemilik warnet dalam mengakses informasi tentang operasional warnet.
2. Manfaat
Penyusunan tugas akhir ini diharapkan dapat memberikan manfaat sebagai berikut :
a. Bagi Akademik
1. Meningkatkan mutu pendidikan sehingga mahasiswa lebih siap dalam menghadapi persaingan kerja.
2. Menjadikan mahasiswa D3 Teknik Informatika Fakultas MIPA UNS berpengalaman dan profesional dalam bidangnya.
3
b. Bagi Penulis
1. Mengembangkan dan menerapkan teori dan praktikum yang telah didapat selama mengikuti pendidikan di jurusan Teknik Informatika D3 Teknik Informatika Fakultas MIPA UNS.
2. Meningkatkan pengetahuan dan pengalaman tentang teknik perancangan dan pembuatan sistem informasi.
3. Memahami cara kerja, fungsi, dan aktifitas instansi atau organisasi melalui sistem yang digunakan.
E.Metodologi Penelitian
Dalam pembuatan Sistem Informasi Manajemen Warnet Berbasis Web Menggunakan Framework Codeigniter penulis melakukan hal – hal sebagai berikut :
a. Observasi Lapangan
Obervasi lapangan merupakan tahap awal, untuk megetahui data yang diperlukan secara langsung
b. Pengumpulan Data
Dalam mengumpulkan data-data yang diperlukan terdapat dua metode yaitu :
1. Metode observasi adalah metode pengumpulan data dengan cara melakukan pengamatan dan pencatatan data-data serta berbagai hal yang akan dibutuhkan dalam proses penelitian.
c. Analisis Kebutuhan Perangkat Lunak
Pada tahapan ini penulis sudah mendapatkan data – data yang dibutuhkan, sehingga penulis mulai membuat perancangan sistem yang meliputi : Bisnis proses yang terjadi di warnet, Requirement, Diagram UML.
d. Perancangan Perangkat Lunak
Pada tahap ini penulis mulai merancang perangkat lunak, langkah dimulai dengan membuat database.
e. Implementasi Perangkat Lunak
Pada tahap ini penulis membuat script program dan desain untuk perangkat lunak, setelah merancangnya
f. Pengujian Perangkat Lunak
Setelah aplikasi selesai dibuat, maka waktunya penulis menguji aplikasi, apakah sudah seperti yang diinginkan user atau pemilik.
F. Sistematika Penulisan
Untuk memberikan gambaran tentang pembahasan tugas akhir ini, maka secara garis besar pembahasan studi akhir ini adalah sebagai berikut: BAB I :Pendahuluan meliputi latar belakang masalah, perumusan masalah,
batasan masalah, tujuan dan manfaat, metodologi penelitian, dan sistematika penulisan.
BAB II : Landasan teori, meliputi dasar-dasar teoritis yang menjadi landasan pemecahan masalah yang meliputi Sistem Informasi Manajemen, Basis Data, WWW, Client / Server, DNS, UML, Framework.
BAB III : Analisis Kebutuhan dan Perancangan, memuat tentang desain sistem dan data-data yang diperlukan dalam perancangan suatu sistem seperti UML, Perancangan Database, dan Perancangan layout.
BAB IV : Implementasi dan Hasil Pengujian, memuat tentang langkah dan hasil pengujian dari pembangunan Sistem Manajemen Warnet.
5
6
Sistem informasi manajemen menurut Gordon B. Davis adalah sebuah sistem manusia/mesin yang terpadu (integreted) untuk menyajikan informasi guna mendukung fungsi operasi manajemen, dan pengambilan keputusan dalam sebuah organisasi (Davis, 1995).
Sistem informasi Manajemen (SIM) adalah serangkaian sub sistem informasi yang menyeluruh dan terkoordinasi dan secara rasional terpadu yang mampu mentransformasi data sehingga menjadi informasi lewat serangkaian cara guna meningkatkan produktivitas yang sesuai dengan gaya dan sifat manajer atas dasar kriteria mutu yang telah ditetapkan.
Proses komunikasi dimana input dan output yang direkam, disimpan dan diproses untuk pengambialn keputusan, mengenai perancangan, pengoperasian dan pengendalian (Robert G. Murdick & Joel E Ross).
Sistem manusia dan mesin yang terpadu untuk menghasilkan informasi guna mendukung operasi manajemen dan fungsi pengambilan keputusan dalam suatu organisasi (Gordon B Davis).
Dari definisi diatas dapat diuraikan lebih lanjut bahwa:
1. Sistem Informasi Manajemen memiliki sub-sitem informasi. Sistem Informasi Manajemen adalah serangkaian sub-sistem, dimana sub-sistem tersebut mendukung tercapainya sasaran Sistem Informasi Manajemen dan organisasi sebagian dari sub-sistem berperan hanya dalam satu kegiatan atau lapisan manajemen, sementara yang lainya berperan ganda.
7
3. Sistem Informasi Manajemen mentransformasikan data kedalam informasi. Apabila data diolah dan berguna bagi manajer untuk tujuan tertentu, maka ia akan menjadi informasi.
4. Sistem Informasi Manajemen sesuai dengan gaya manajer Sistem Informasi Manajemen dikembangkan lewat pengenalan atas sifat dan gaya manajerial dari personil yang akan menggunakannya. Para perancang sistem apabila akan mengembangkan Sistem Informasi Manajemen hendaknya mempertimbangkan faktor manusiawi dengan cermat. Apabila tidak demikian, maka sistem yang dihasilkan tidak efektif.
Berikut ini merupakan karakteristik dari SIM :
1. Merupakan salah satu dari 5 sub sistem dalam CBIS (Computer Based Information System/Sistem Informasi Berbasis Komputer).
2. Merupakan tujuan untuk mempertemukan seluruh informasi yang diperlukan oleh manajer pada semua tingkat organisasi.
3. Merupakan seluruh fungsi sistem informasi didalam suatu sub sistem input, database dan sub sistem output.
4. Memberikan gambaran terhadap atitude eksekutif dengan penyediaan komputer untuk membantu pemecahan masalah organisasi.
B.Basis Data
Basis data adalah suatu kumpulan data terhubung (interrelated data) yang disimpan secara bersama-sama pada suatu media, tanpa mengatap satu sama lain atau tidak perlu suatu kerangkapan data, data disimpan dengan cara-cara tertentu sehingga mudah untuk digunakan atau ditampilkan kembali (Susanta, 2004).
Sedangkan menurut George Tsu-der Chou basis data merupakan kumpulan informasi bermanfaat yang diorganisasikan ke dalam aturan yang khusus. Informasi ini adalah data yang telah diorganisasikan ke dalam bentuk yang sesuai dengan kebutuhan seseorang (Abdul, 1999).
Menurut Encyclopedia of Computer Science and Engineer, para ilmuwan di bidang informasi menerima definisi standar informasi yaitu data yang digunakan dalam pengambilan keputusan.
Definisi lain dari basis data menurut Fabbri dan Schwab adalah sistem berkas terpadu yang dirancang terutama untuk meminimalkan duplikasi data.
Menurut Ramez Elmasri mendefinisikan basis data lebih dibatasi pada arti implisit yang khusus, yaitu:
a. Basis data merupakan penyajian suatu aspek dari dunia nyata
b. Basis data merupakan kumpulan data dari berbagai sumber yang secara logika mempunyai arti implisit. Sehingga data yang terkumpul secara acak dan tanpa mempunyai arti, tidak dapat disebut basis data.
c. Basis data perlu dirancang, dibangun dan data dikumpulkan untuk suatu tujuan. Basis data dapat digunakan oleh beberapa user dan beberapa aplikasi yang sesuai dengan kepentingan user.
SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinakan pengoperasian data dikerjakan dengan mudah secara otomatis (Riyanto, 2003).
SQL adalah bahasa standar yang digunakan untuk mengakses database server yang telah diadopsi dan digunakan sebagai standar industri (Sunarfrihantono, 2002).
C.WWW (World Wide Web)
9
mengirim email, mencari data, bermain game, akses bank atau bahkan melakukan belanja pada toko online antar negara.
Untuk dapat menghubungkan beebrapa komputer sehingga menjadi sebuah kelompok jaringan, kita membutuhkan suatu media penghubung yang bernama TCP yaitu sebuah protokol yang mengidentifikasi sebuah komputer yang terhubung di dalam jaringan. IP memiliki teknik mengidentifikasi dengan menggunakan penomoran yang dinamakan nomor IP address (Internet Protocol Address). Dengan menggunakan nomor ini sebuah komputer dapat terhubung dengan komputer lain dalam sebuah jaringan atau dalam jaringan global yang disebut internet.
D.UML (Unified Modelling Language)
UML merupakan sebuah bahasa untuk menguraikan spesifikasi yang sudah distandarisasikan untuk tujuan pemodelan suatu objek. Berikut ini adalah salah satu diagram yang digunakan di dalam UML.
Beberapa diagram diantaranya : a. Use Case Diagram
Use Case Diagram (UCD) menjelaskan apa yang akan dilakukan oleh sistem yang akan dibangun dan siapa yang berinteraksi dengan sistem. UCD menjadi dokumen kesepakatan antara Customer, User dan Developer. User menggunakan dokumen UCD ini untuk memahami sistem dan mengevaluasi bahwa benar yang dilakukan sistem adalah untuk memecahkan masalah yang user ajukan atau sedang dihadapi. Developer menggunakan dokumen UCD ini sebagai rujukan yang benar dalam pengembangan sistem (Julius,H. 2004).
b. Class Diagram
Class diagram merupakan diagram yang selaluada di pemodelan sistem berorientasi obyek. Class diagram menunjukkan hubungan antar class dalam sistem yang sedang dibangun dan bagaimana mereka saling berkolaborasi untuk mencapai suatu tujuan. Class diagram umumnya tersusun dari elemen Class, Interface, Dependency, Generalization dan Association.
Relasi dependency menunjukkan bagaimana ketergantungan terjadi antar class yang ada. Relasi generalization menunjukkan bagaimana suatu class menjadi subclass dari class tersebut. Relasi association menggambarkan navigasi antar class, berapa banyak obyek lain bisa berhubungan dengan satu obyek (multiplicityantarclass), dan apakah suatu class menjadi bagian dari class lainnya (aggregation). Class diagram digunakan untuk menggambarkan desain statis dari sistem yang sedangdibangun.
c. Sequence Diagram
Sequence diagram menjelaskan secara detail urutan proses yang dilakukan dalam sistem untuk mencapai tujuan dari use case. Interaksi yang terjadi antar class, operasi apa saja yang terlibat, urutan antar operasi, dan informasi yang diperlukan oleh masing-masing operasi. Pembuatan sequence diagram merupakan aktivitas yang paling kritikal dari proses desain karena arti inilah yang menjadi pedoman dalam proses pemrograman nantinya dan berisi aliran kontrol dari program. Oleh karena itu berharga untuk meluangkan waktu lebih lama di pembuatan sequence diagram ini untuk menghasilkan sequence diagram yang terdesain dengan baik (Julius,H. 2004).
11
Cara mudah yang bisa diikuti untuk memulai pembuatan sequence diagram adalah sebagai berikut :
a. Gambarkan aktor dan kelas yang terlibat ke dalam sequence diagram. b. Urutkan sebagai berikut :Actor – obyek dari boundary class – obyek dari control class – obyek entity class.
c. Ubah dari tipe analysis class menjadi design class.
d. Ikuti urutan seperti dalam usecase spesification dan mulai identifikasi operasi yang diperlukan untuk mengeksekusi suatu baris aktivitas dalam usecases pecification. Operasi ini akan bergerak bertahap, dari actor ke boundary class, dari boundary class ke control class, dari control class ke satu atau beberapa entity class.
e. Dari masing-masing operasi tersebut, identifikasi informasi apa saja yang perlu dipindahkan dari actor ke bounday class ke control class hingga ke entity class dan informasi apa yang harus dikembalikan dari entity class ke boundary class (Julius,H. 2004).
d. Activity Diagram
Activity diagram menggambarkan berbagai aliran aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkinterjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. 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 ) (Harmi, P. 2006).
Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar sub sistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum. Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih.
menggambarkan behaviour pada kondisi tertentu. Untuk mengilustrasikan proses-proses paralel ( fork dan join ) digunakan titik sinkronisasi yang dapat berupa titik, garis horizontal atau vertikal. Activity diagram dapat dibagi menjadi beberapa object untuk menggambarkan objek mana yang bertanggung jawab untuk aktivitas tertentu (Harmi, P. 2006).
E. Framework
Framework adalah kerangka kerja. Framework juga dapat diartikan sebagai kumpulan script (terutama class dan function) yang dapat membantu developer/programmer dalam menangani berbagai masalah-masalah dalam pemrograman seperti koneksi ke database, pemanggilan variabel, file, dll sehingga developer lebih fokus dan lebih cepat membangun aplikasi. Bisa juga dikatakan Framework adalah komponen pemrorgaman yang siap re-use kapan saja, sehingga programmer tidak harus membuat skrip yang sama untuk tugas yang sama.
Misalkan saat anda membuat aplikasi web berbasis ajax yang setiap kali harus melakukan XML Http Request, maka ajax telah mempermudahnya untuk anda dengan menciptakan sebuah objek khusus yang siap digunakan untuk operasi Ajax berbasis PHP. Itu adalah salah satu contoh kecil, selebihnya Framework jauh lebih luas dari itu. Secara sederhana bisa dijelaskan bahwa framework adalah kumpulan fungsi (libraries), maka seorang programmer tidak perlu lagi membuat fungsi-fungsi (biasanya disebut kumpulan library) dari awal, programmer tinggal memanggil kumpulan library atau fungsi yang sudah ada didalam framerwork, tentunya cara menggunakan fungsi-fungsi itu sudah ditentukan oleh framework.
13
Manfaatnya dapat membantu kerja developer dalam membangun aplikasi sehingga aplikasi bisa selesai dalam waktu yang singkat. Penerapan Design Patterns memudahkan dalam rancangan, pengembangan dan pemeliharaan sistem Stability dan Reliability, aplikasi yang kita bangun lebih stabil dan handal karena berbasispada framework yang sudah teruji stabilitas dan kehandalannya. Coding Style konsisten, memudahkan dalam membaca kode dan dalam menemukan bugs. Security Concern, framework mengantisipasi dan memasang perisai terhadap adanya berbagaimasalah keamanan yang mungkin timbul dokumentasi, framework dapat mendisiplinkan kita untuk menulis dokumentasi untuk apa yang kita tulis.
Salah satu framework yang dikenal adalah Codeigniter. Apa itu Codeigniter, CodeIgniter adalah aplikasi open source yang berupa framework dengan model MVC (Model, View, Controller) untuk membangun website dinamis dengan menggunakan PHP. CodeIgniter memudahkan developer untuk membuat aplikasi web dengan cepat dan mudah dibandingkan dengan membuatnya dari awal. CodeIgniter dirilis pertama kali pada 28 Februari 2006.
Bagaimana CodeIgniter Bekerja, Codeigniter terdiri dari tiga bagian jika kita ingin membuat website, yaitu Model, View dan Controller. Dan dari ketiga tersebut memiliki tugasnya masing-masing. Dengan tugas sebagai berikut:
Model merepresentasikan struktur data yang dibangun. Umumnya kelas model berisi fungsi-fungsi yang membantu developer untuk mengelola, memasukkan, dan mengupdate informasi dalam database.
View adalah informasi yang disajikan untuk user, berupa tampilan atau user interface. View umumnya adalah tampilan sebuah halaman web itu sendiri, tetapi dalam CodeIgniter, view dapat juga menjadi bagian-bagian atau penggalan-penggalan halaman seperti header atau footer. Dapat juga sebagai halaman RSS, atau tipe-tipe halaman lainnya.
15 BAB III
ANALISIS KEBUTUHAN DAN PERANCANGAN A. Deskripsi Kebutuhan
1. Functional Requirement 1.1Sistem bersifat :
- Lokal Hosting - Web Hosting 1.2Pengguna Sistem :
- Read / Write : Admin, Owner, Operator, Non Operator
1.3Setelah user login sesuai sessionnya, maka akan diberikan fungsi : 1.3.1 Admin
- Kelola stok barang yang meliputi : - Tambah barang baru
- Lihat data stok barang - Edit data stok barang - Hapus data stok barang
- Kelola presensi karyawan yang meliputi : - Lihat data presensi karyawan
- Edit data presensi karyawan - Hapus data presensi karyawan
- Kelola laporan pendapatan per shift dan harian yang meliputi : - Lihat data laporan pendapatan per shift
- Kelola user yang meliputi :
- Lihat data user yang masih aktif dan yang tidak aktif - Tambah user
- Non aktifkan user - Aktifkan user
- Kelola Berkas yang meliputi : - Lihat berkas
- Hapus Berkas
1.3.2 Owner
- Kelola stok barang yang meliputi : - Lihat data stok barang
- Lihat data laporan stok barang - Lihat data laporan pendapatan - Lihat data user
- Lihat data presensi karyawan - Kelola pesan yang meliputi :
- Lihat data pesan masuk - Hapus data pesan masuk - Balas data pesan masuk
- Pindah data pesan masuk ke sampah - Hapus permanen pesan masuk dari sampah - Kelola berkas yang meliputi
- Upload berkas - Download berkas - Hapus berkas
- Kelola profil yang meliputi : - Edit profil
17
1.3.3 Operator
- Kelola profil yang meliputi : - Edit profil
- Ganti password
- Kelola pesan yang meliputi : - Lihat data pesan masuk - Hapus data pesan masuk - Balas data pesan masuk
- Pindah data pesan masuk ke sampah - Hapus permanen pesan masuk dari sampah - Kelola presensi yang meliptui :
- Lihat data presensi - Tambah presensi
- Input data laporan stok barang
- Input data laporan pendapatan per shift dan harian - Kelola berkas
- Upload berkas - Download berkas - Hapus berkas - Lihat data user
1.3.4 Non Operator
- Kelola profil yang meliputi : - Edit profil
- Ganti password
- Pindah data pesan masuk ke sampah - Hapus permanen pesan masuk dari sampah - Kelola presensi yang meliptui :
- Lihat data presensi - Tambah presensi - Lihat data user
2. Non Functional Requirement
- Sistem mudah dipelajari dan digunakan - Mengurangi sistem manual
- Dapat dibuka menggunakan browser standar
19
B. UML Diagram 1.Use Case Diagram 1)Login
Gambar 3.1 Use Case Login
2)Kelola Profil
3)Kelola Pesan
Gambar 3.3 Use Case Kelola Pesan
4)Kelola Presensi
21
5)Kelola Stok
Gambar 3.5 Use Case Kelola Stok
6)Kelola Laporan Pendapatan
7)Kelola Berkas
Gambar 3.7 Use Case Kelola Berkas
8)Kelola User
23
9)Kelola Presensi Karyawan
Gambar 3.9 Use Case Kelola Presensi Karyawan
2.Deskripsi Use Case
2.1Hak dan Kewajiban Aktor
Tabel 3.1 Hak dan Kewajiban Aktor
Nama Hak dan Kewajiban
Admin - Manage stok barang
- Manage presensi
- Manage laporan pendapatan - Manage user
- Manage berkas
Owner - Manage stok barang
- Lihat data laporan pendapatan - Lihat data user
- Lihat data presensi karyawan - Manage pesan
- Input data laporan stok barang - Input data laporan pendapatan per
Non Operator - Manage profil - Manage pesan - Manage presensi - Lihat data user 2.2Use Case Glossary
Tabel 3.2 Use Case Glossary
ID Usecase Deskripsi
1 Login Digunakan supaya user
dapat mengakses sistem lebih dalam sesuai dengan hak akses yang dimiliki oleh masing – masing user
2 ManageProfil Untuk melakukan
pengelolaan terhadap profil yang meliputi edit profil dan ganti password
3 ManagePesan Untuk melakukan
pengelolaan terhadap pesan, meliputi lihat pesan ,add pesan dan update pesan
4 ManagePresensi Untuk melakukan
pengelolaan terhadap presensi, meliputi lihat presensi dan add presensi
5 ManagePresensiKaryawan Untuk melakukan pengelolaan terhadap presensi karyawan meiluti lihat presensi, edit presensi, dan hapus presensi
6 ViewPresensiKaryawan Untuk menampilkan
data presensi karyawan 7 ManageLaporanPendapatan Untuk melakukan
25
pendapatan
8 ViewLaporanPendapatan Untuk menampilkan
data laporan pendapatan
9 AddLaporanPendapatan Untuk menambah
laporan pendapatan
10 ManageStok Untuk melakukan
pengelolaan terhadap stok barang meliputi lihat data stok barang ,add stok barang dan update stok barang
11 ViewStok Untuk menampilkan
data stok barang
12 AddStok Untuk menambah data
stok barang
13 ManageBerkas Untuk melakukan
pengelolaan berkas yang meliputi lihat berkas, upload berkas, dan download berkas
14 ManageUser Untuk melakukan
pengelolaan terhadap karyawan meliputi lihat, add karyawan, dan update data karyawan
15 ViewUser Untuk menampilkan
data karyawan 3.Use Case Naratif dan Skenario
Tabel 3.3 Use Case Naratif Login Use Case
Admin, Owner, Operator, Non Operator
and interest melakukan akses terhadap system Brief
Description
Use case ini berfungsi untuk login agar user dapat dikenali oleh sistem sehingga dapat mengakses sestem sesuai dengan hak yang diberikan kepadanya
Trigger Admin, Owner, Operator, Non Operator ingin menggunakan sistem lebih lanjut
Type Internal Relationship Assosiation :
Include : Admin, Owner, Operator, Non Operator
1. Memasukan Username dan Password
2. Mencocokan username dan password yang dimasukan dengan database
3. Jika data ada, login sukses 4. Mengambil level user yang
login dari database
5. Menuju ke menu utama sesuai level user
Sub flow Alternate/ Exceptional flow
4.Data tidak ada, login gagal 5.Kembali ke langkah 1
Tabel 3.4 Use Case Naratif Manage Profil Use Case
Name
27
Owner, Operator, Non Operator
Stakeholders and interest
Owner, Operator, Non Operator, : mengupdate profil , mengganti password, melihat profil
Brief Description
Use case untuk melakukan pengelolaan profil seperti mengupdate profil , mengganti password, melihat profil
Trigger Owner, Operator, Non Operator memiliki profil baru Type Internal
Relationship Assosiation : Owner, Operator,Non Operator Include : Login, ViewProfil
Extend : UpdateProfil Generalitation : Normal flow
event
Aksi Reaksi Owner,Operator,Non Operator
1. Memilih Manage Profil
2. Sistem menampilkan profil 3. Manage profil
4. Sistem menampilkan penambahan dan perubahan data
Sub flow 4.1Melihat profil
4.1.1 Sistem menampilkan profil 4.1.2 Kembali ke halaman manage
profil 4.2Update profil
4.2.1 Sistem menampilkan profil lama
4.2.2 Memilih edit profil
4.2.3 Mengupdate data profil ke database
profil 4.3 Memilih ganti Password
4.3.1 Menampilkan form ganti password
4.3.2 Memasukkan password baru
4.3.3 Mengupdate data password ke database
4.3.4 Keluar dari sistem secara otomatis
Alternate/ Exceptional flow
4.2.3 Jika data profil yang diupdate tidak lengkap akan muncul peringatan dengan menandai data tidak lengkap 4.2.4 Memperbarui data
4.2.5 Kembali ke langkah 4.2.3 4.3.3 Jika password lama tidak
sama dengan password lama dan password baru tidak sama dengan password baru akan muncul peringatan password tidak lengkap 4.3.4 Mengganti password
4.3.5 Kembali ke langkah 4.3.1
Tabel 3.5 Use Case Naaratif Manage Pesan Use Case
Owner, Operator, Non Operator
29
and interest Brief
Description
Use case untuk melakukan pengelolaan pesan seperti add pesan, delete pesan , melihat pesan
Trigger Owner, Operator, Non Operator memiliki data pesan yang baru Type Internal
Relationship Assosiation : Owner, Operator,Non Operator Include : Login, ViewPesan
Extend : UpdatePesan, AddPesan Generalitation :
Normal flow event
Aksi Reaksi Owner,Operator,Non Operator
1. Memilih Manage Pesan
2. Sistem menampilkan pesan 3. Manage pesan
4. Sistem menampilkan penambahan dan perubahan data pesan
Sub flow 4.1Melihat pesan masuk
4.1.1.1Sistem menampilkan seluruh pesan masuk
4.1.1.2Kembali ke manage pesan pesan
4.2Tulis pesan
4.2.1.1Menampilkan form pesan baru
4.2.1.2Menulis pesan dan ditujukan ke siapa
4.2.1.3Pesan disimpan kedalam database
4.2.1.4Kembali ke halaman lihat pesan
4.3Memindahkan pesan masuk ke sampah
4.3.1.1Menampilkan pesan masuk 4.3.1.2Hapus pesan
4.3.1.3Status pesan akan diubah dari aktif menjadi tidak aktif pada database
4.4Memindahhkan pesan dari sampah ke kotak masuk
4.4.1.1Menampilkan pesan sampah 4.4.1.2Undo delete
4.4.1.3Status pesan akan diubah dari tidak aktif menjadi aktif pada database
4.4.1.4Menuju ke halaman pesan masuk
4.5Melihat pesan sampah
4.5.1.1Sistem menampilkan seluruh pesan sampah
4.5.1.2Kembali ke manage pesan pesan
4.6Hapus permanen pesan
4.6.1.1Menampilkan pesan sampah 4.6.1.2Delete pesan
4.6.1.3Pesan akan dihapus dari database
4.6.1.4Menuju ke halaman pesan masuk
Alternate/ Exceptional flow
4.2.2.3 Jika data pesan masih kosong akan muncul
peringatan dengan menandai data masih kosong
4.2.2.4 Memperbarui data
4..22.5 Kembali ke langkah 4.2.2.1
Tabel 3.6 Use Case Naratif Manage Presensi Use Case
31
Stakeholders and interest
Operator, Non Operator, : add presensi , melihat presensi
Brief Description
Use case untuk melakukan pengelolaan presensi seperti add presensi , melihat presensi
Trigger Operator, Non Operator memiliki data presensi yang baru Type Internal
Relationship Assosiation : Operator,Non Operator Include : Login, ViewPresensi Extend : Add Presensi
Generalitation : Normal flow
event
Aksi Reaksi Operator,Non Operator
1. Memilih Manage Presensi
2. Sistem menampilkan presensi untuk periode dan tahun sekarang
3. Manage presensi
4. Sistem menampilkan penambahan dan perubahan data
Sub flow 4.1Melihat riwayat gaji
4.1.1 Sistem menampilkan riwayat gaji
4.1.2 Kembali ke halaman manage presensi
4.2Add Presensi
4.2.1 Menampilkan form presensi 4.2.2 Input data presensi
4.2.3 Insert data presensi ke database
4.2.4 Kembali ke halaman manage presensi
Alternate/ Exceptional flow
lengkap
4.2.4 Kembali ke langkah 4.2.2
Tabel 3.7 Use Case Naratif Manage Presensi Karyawan Use Case
Admin mengupdate presensi
Brief Description
Use case untuk melakukan update presensi
Trigger Sistem memiliki data presensi yang baru Type Internal
Relationship Assosiation : Admin Include : Login Extend :
Generalitation : Normal flow
event
Aksi Reaksi Admin,Operator,Non Operator
1. Memilih Manage Presensi Karyawan
2. Sistem menampilkan presensi 3. Update Presensi
33
Sub flow 4.1Lihat presensi karyawan
4.1.1 Sistem menampilkan pilihan tahun dan periode
4.1.2 Memilih tahun dan periode
4.1.3 Sistem menampilkan pilihan user
4.1.4 Memilih user
4.1.5 Sistem menampilkan detail presensi
4.2 Edit presensi
4.2.1 Kembali ke langkah 4.1 4.2.2 Edit presensi
4.2.3 Menampilkan form edit presensi
4.2.4 Mengedit data
4.2.5 Mengupdate data presensi ke database
4.2.6 Kembali ke manage pesan 4.3 Hapus presensi
4.3.1 Kembali ke langkah 4.1 4.3.2 Memilih data presensi yang akan dihapus
4.3.3 Sistem menampilkan detail presensi yang sudah dipilih 4.3.4 Konfirmasi setuju
4.3.5 Delete data presensi ke database
4.3.6 Kembali ke manage presensi Alternate/
Exceptional flow
4.3.4.1Konfirmasi tidak setuju
4.3.4.1.1 Kembali ke halaman manage presensi
Stakeholders and interest
Owner : melihat presensi karyawan
Brief Description
Use case untuk melihat presensi karaywan
Trigger Owner melihat data presensi yang baru Type Internal
Relationship Assosiation : Owner Include : Login Extend :
Generalitation : Normal flow
event
Aksi Owner Reaksi 1. Memilih lihat presensi karyawan
2. Sistem menampilkan pilihan periode dan tahun
3. Memilih periode dan tahun
4. Sistem menampilkan pilihan karyawan
5. Memilih karyawan
6. Sistem menampilkan detail presensi dari karyawan yang dipilih
7. Kembali ke View Presensi Karyawan
Sub flow Alternate/ Exceptional flow
Tabel 3.9 Use Case Naratif Manage Laporan Pendapatan Use Case
Name
Manage Laporan Pendapatan
35
Admin : melihat laporan pendapatan, dan mengupdate laporan pendapatan
Brief Description
Use case untuk melakukan pengelolaan laporan pendapatan seperti melihat laporan pendapatan, dan mengupdate laporan pendapatan Trigger Sistem mempunyai data laporan pendapatan yang baru
Type Internal
Relationship Assosiation : Admin
Include : Login, ViewLaporanPendapatan Extend : Update Laporan Pendapatan Generalitation :
Normal flow event
1. Memilih Manage Laporan Pendapatan
2. Sistem menampilkan Laporan pendapatan
3. Manage laporan pendapatan
4. Sistem menampilkan penambahan dan perubahan data
Sub flow 4.1 Melihat laporan pendapatan
4.1.1 Sistem menampilkan pilihan lantai
4.1.2 Memilih lantai
4.1.3 Sistem menampilkan pilihan per shift atau harian
4.1.4 Memilih per shift
tanggal, bulan, dan tahun 4.1.4.2Melihat history laporan pendapatan per shift
4.1.4.2.1 Kembali ke langkah 4.1.4 4.1.4.2.2 Meimilih tanggal, bulan, dan tahun
4.1.4.2.3 Sistem menampilkan detail laporan
4.1.4.3Edit laporan pendapatan per shift hari ini
4.1.4.3.1 Kembali ke langkah 4.1.4 4.1.4.3.2 Edit laporan
4.1.4.3.3 Sistem menampilkan form edit
4.1.4.3.4 Edit data
4.1.4.3.5 Update data laporan pendapatan per shift ke database
4.1.4.3.6 Kembali ke halaman manage laporan pendapatan
4.1.4.4Edit history laporan pendapatan per shift
4.1.4.4.1 Kembali ke langkah 4.1.4.2 4.1.4.4.2 Edit laporan
4.1.4.4.3 Sistem menampilkan form edit
4.1.4.4.4 Edit data
4.1.4.4.5 Update data laporan pendapatan per shift ke database
37
4.1.4.5Hapus laporan pendapatan per shift hari ini
4.1.4.5.1 Kembali ke langkah 4.1.4 4.1.4.5.2 Hapus laporan
4.1.4.5.3 Delete data laporan pendapatan per shift dari database
4.1.4.5.4 Kembali ke halaman manage laporan pendapatan
4.1.4.6Hapus history laporan pendapatan per shift
4.1.4.6.1 Kembali ke langkah 4.1.4.2 4.1.4.6.2 Hapus laporan
4.1.4.6.3 Delete laporan pendapatan per shift dari database
4.1.4.6.4 Kembali ke manage laporan pendapatan
4.1.5 Memilih harian
4.1.5.1Sistem menampilkan detail pendapatan harian bulan ini dan menampilkan pilihan bulan, dan tahun
4.1.5.2Melihat history laporan pendapatan harian
4.1.5.2.1 Kembali ke langkah 4.1.5 4.1.5.2.2 Meimilih tanggal, bulan, dan tahun
4.1.5.2.3 Sistem menampilkan detail laporan
4.1.5.3Edit laporan pendapatan harian bulan ini
4.1.5.3.3 Sistem menampilkan form edit
4.1.5.3.4 Edit data
4.1.5.3.5 Update data laporan
pendapatan harian ke database 4.1.5.3.6 Kembali ke halaman manage
laporan pendapatan 4.1.5.4Edit history laporan pendapatan harian
4.1.5.4.1 Kembali ke langkah 4.1.5.2 4.1.5.4.2 Edit laporan
4.1.5.4.3 Sistem menampilkan form edit
4.1.5.4.4 Edit data
4.1.5.4.5 Update data laporan
pendapatan harian ke database 4.1.5.4.6 Kembali ke halaman manage
laporan pendapatan 4.1.5.5Hapus laporan pendapatan bulan ini
4.1.5.5.1 Kembali ke langkah 4.1.5 4.1.5.5.2 Hapus laporan
4.1.5.5.3 Delete data laporan pendapatan harian dari database
4.1.5.5.4 Kembali ke halaman manage laporan pendapatan
4.1.5.6Hapus history laporan pendapatan harian
39
4.1.5.6.3 Delete laporan pendapatan harian dari database
4.1.5.6.4 Kembali ke manage laporan pendapatan
Alternate/ Exceptional flow
4.1.4.3.4 Batal
4.1.4.3.5 Kembali ke manage laporan pendapatan
4.1.4.4.4 Batal
4.1.4.4.5 Kembali ke manage laporan pendapatan
4.1.5.3.4 Batal
4.1.5.3.5 Kembali ke manage laporan pendapatan
4.1.5.4.4 Batal
4.1.5.4.5 Kembali ke manage laporan pendapatan
Tabel 3..10 Use Case Naratif View Laporan Pendapatan Use Case
Name
View Laporan Pendapatan
ID 8
Brief Description
Use case untuk melihat laporan pendapatan
Trigger Owner melihat data laporan pendapatan yang baru Type Internal
Relationship Assosiation : Owner Include : Login Extend :
Generalitation : Normal flow
event
Aksi Owner Reaksi 1. Melihat laporan pendapatan
2. Sistem menampilkan pilihan lantai
3. Memilih lantai
4. Sistem menampilkan pilihan per shift atau harian
Sub flow 4.1Memilih per shift
4.1.1 Sistem menampilkan detail laporan pendapatan per shift hari ini dan pilihan tanggal, bulan, dan tahun
4.1.2 Melihat laporan per shift hari ini
4.1.2.1Kembali ke langkah 4.1 4.1.3 Melihat history laporan per shift
4.1.3.1Kembali ke langkah 4.1 4.1.3.2Memilih tanggal, bulan dan tahun
4.1.3.3Sistem menampilkan detail laporan pendapatan per shift 4.2Memilih harian
4.2.1 Sistem menampilkan detail laporan harian untuk bulan ini dan pilihan bulan dan tahun 4.2.2 Melihat laporan harian bulan ini
4.2.2.1Kembali ke langkah 4.2 4.2.3 Melihat history laporan harian
4.2.3.1Kembali ke langkah 4.2 4.2.3.2Memilih bulan dan tahun
41
Alternate/ Exceptional flow
Tabel 3.11 Use Case Naratif Add Laporan Pendapatan Use Case
Name
Add Laporan Pendapatan
ID 9
Operator menambahkan laporan pendapatan
Brief Description
Use case untuk menambahkan laporan pendapatan per shift ataupun harian
Trigger Sistem mempunyai data laporan pendapatan yang baru Type Internal
Relationship Assosiation : Operator Include : Login Extend :
Generalitation : Normal flow
event
Aksi Operator Reaksi 1. Add laporan pendapatan
2. Menampilkan pilihan lantai 3. Memilih lantai
4. Menampilan pilihan per shift atau laporan
5. Mengisi data
Sub flow Alternate/ Exceptional flow
6. Jika data tidak lengkap maka akan muncul peringatan 7. Kembali ke langkah 1
Tabel 3.12 Use Case Naratif Manage Stok Use Case
Admin : melihat barang, melihat laporan stok barang, tambah barang, update laporan stok barang
Brief Description
Use case untuk melakukan pengelolaan stok barang seperti melihat barang, melihat laporan stok barang, tambah barang, update laporan stok barang
Trigger Sistem mempunyai data laporan dan stok barang yang baru Type Internal
Relationship Assosiation : Admin
Include : Login, ViewBarang Extend : Update Stok, ViewStok Generalitation :
Normal flow event
1. Memilih Manage Stok
2. Sistem menampilkan stok barang
3. Manage stok barang
43
data Sub flow 4.1Melihat laporan stok barang
4.1.1 Sistem menampilkan detail laporan stok barang barang hari ini
4.2Melihat history laporan stok barang
4.2.1 Kembali ke langkah 4.1 4.2.2 Memilih tanggal, bulan dan tahun
4.2.3 Sistem menampilkan detail laporan stok barang
4.2.4 Memilih bulan
4.2.5 Sistem menampilkan pilihan tanggal
4.3Mengupdate laporan stok barang hari ini
4.3.1 Kembali ke langkah 4.1 4.3.2 Edit laporan hari ini
4.3.3 Sistem menampilkan form edit 4.3.4 Edit data
4.3.5 Sistem mengupdate database 4.3.6 Kembali ke langkah 4.1 4.4Mengupdate history laporan stok barang
4.4.1 Kembali ke langkah 4.1 4.4.2 Edit history laporan
4.4.3 Sistem menampilkan form edit
4.4.4 Edit data
4.4.6 Kembali ke langkah 4.1 4.5Tambah barang baru
4.5.1 Sistem menampilkan form 4.5.2 Input data
4.5.3 Insert data ke database 4.5.4 Kembali ke langkah 4.1 Alternate/
Exceptional flow
Tabel 3.13 Use Case Naratif View Stok Use Case
Owner : melihat stok barang dan laporan stok barang
Brief Description
Use case untuk melihat stok barang dan laporan stok barang
Trigger Owner melihat data laporan dan stok barang Type Internal
45
Generalitation : Normal flow
event
Aksi Owner Reaksi 1. Melihat stok barang
2. Sistem menampilkan detail stok barang
Sub flow 2.1Melihat stok barang
2.1.1 Sistem menampilkan detail stok barang
2.2Melihat laporan stok barang hari ini
2.2.1 Sistem menampilkan detail laporan stok barang hari ini 2.3Melihat history laporan stok barang
2.3.1 Kembali ke langkah 2.2 2.3.2 Memilih tanggal, bulan dan tahun
2.3.3 Sistem menampilkan detail laporan stok
Alternate/ Exceptional flow
Tabel 3.14 Use Case Naratif Add Stok Use Case
Operator menambahkan laporan dan stok barang
Brief Description
Use case untuk menambah laporan dan stok barang
Type Internal
Relationship Assosiation : Operator Include : Login Extend :
Generalitation : Normal flow
event
Aksi Operator Reaksi 1. Memilih stok barang
2. Sistem menampilkan pilihan lantai dan belanja barang Sub flow 3.1Memilih lantai 2
3.1.1 Sistem menampilkan form 3.1.2 Input data
3.1.3 Insert data ke database
3.1.4 Kembali ke halaman add stok 3.2Memilih lantai 3
3.2.1 Sistem menampilkan form 3.2.2 Input data
3.2.3 Insert dan update data ke database
3.2.4 Kembali ke halaman add stok 3.3Memilih belanja barang
3.3.1 Sistem menampilkan form 3.3.2 Input data
3.3.3 Insert dan update data ke database
3.3.4 Kembali ke halaman add stok Alternate/
Exceptional flow
4
47
Primary Actor
Admin, Operator, Owner
Stakeholders and interest
Admin, Operator, Owner : lihat berkas, download berkas, upload berkas, delete berkas
Brief Description
Use case untuk melakukan pengelolaan berkas seperti lihat berkas, download berkas, upload berkas, delete berkas
Trigger Sistem mempunyai berkas yang baru Type Internal
Relationship Assosiation : Admin, Operator, Owner Include : Login,View Berkas
Extend : Upload Berkas, Download Berkas Generalitation :
Normal flow event
1. Memilih Manage Berkas
2. Sistem menampilkan berkas 3. Manage berkas
4. Sistem menampilkan penambahan dan perubahan data
Sub flow 4.1Melihat berkas
4.1.1 Sistem menampilkan detail berkas
4.2Upload berkas
4.2.1 Sistem menampilkan form 4.2.2 Memilih berkas
4.2.4 Kembali ke manage berkas 4.3Hapus berkas
4.3.1 Sistem menampilkan detail berkas yang ingin dihapus 4.3.2 Konfirmasi setuju
4.3.3 Delete data dari database 4.3.4 Kembali ke halaman manage
berkas Alternate/
Exceptional flow
4.2.3 Jika data tidak lengkap, maka akan muncul pesan data tidak lengkap
4.2.4 Kembali ke langkah 4.2.2 4.3.2 Konfirmasi tidak setuju
4.3.3 Kembali ke halaman manage berkas
Tabel 3.16 Use Case Naratif Manage User Use Case
49
and interest Brief
Description
Use case untuk melakukan pengelolaan data karyawan seperti lihat karyawan, update karyawan
Trigger Sistem mempunyai data karyawan yang baru Type Internal
Relationship Assosiation : Admin Include : Login,View User Extend : Update User Generalitation : Normal flow
event
1. Memilih Manage User
2. Sistem menampilkan detail seluruh user
3. Manage user
4. Sistem menampilkan penambahan dan perubahan data
Sub flow 4.1Melihat user
4.1.1 Sistem menampilkan detail user
4.2Melihat eks user
4.2.1 Sistem menampilkan detail eks user
4.3Add user
4.3.3 Insert data ke database 4.3.4 Kembali ke manage user 4.4Update user
4.4.1 Sistem menampilkan detail seluruh user
4.4.2 Memilih edit user
4.4.2.1Sistem menampilkan form 4.4.2.2Konfirmasi setuju
4.4.2.3Update data ke database 4.4.2.4Kembali ke halaman manage
karyawan 4.4.3 Memilih nonaktifkan user
4.4.3.1Update database
4.4.3.2Menuju ke halaman lihat eks user
Alternate/ Exceptional flow
4.3.3 Jika data tidak lengkap, maka akan muncul pesan data tidak lengkap
4.3.4 Kembali ke langkah 4.3.2 4.4.2.3Konfirmasi tidak setuju
4.4.2.4Kembali ke halaman manage user
Tabel 3.17 Use Case Naratif View User Use Case
Name
51
Owner, Operator, Non Operator
Stakeholders and interest
Owner : melihat karyawan
Brief Description
Use case untuk melihat detail user
Trigger Owner melihat detail data seluruh user Type Internal
Relationship Assosiation : Owner, Operator, Non Operator Include : Login
Extend :
Generalitation : Normal flow
event
Aksi Owner Reaksi 1. Melihat user
2. Sistem menampilkan detail seluruh user
Sub flow Alternate/ Exceptional flow
4.Class Diagram Tahap Analisis
1) Login
Gambar 3.10 Class Diagram Tahap Analisis Login
2) Kelola Profil
Gambar 3.11 Class Diagram Tahap Analisis Kelola Profil
53
Gambar 3.12 Class Diagram Tahap Analisis Kelola Pesan
4) Kelola Presensi
Gambar 3.13 Class Diagram Tahap Analisis Kelola Presensi
5) Kelola Stok
6) Kelola Laporan Pendapatan
Gambar 3.15 Class Diagram Tahap Analisis Kelola Laporan Pendapatan
7) Kelola Berkas
Gambar 3.16 Class Diagram Tahap Analisis Kelola Berkas 8) Kelola User
55
9) Kelola Presensi Karyawan
Gambar 3.18 Class Diagram Tahap Analisis Kelola Presensi Karyawan
5. Sequence Dagram 1) Login
2) Lihat Profil
Gambar 3.20 Sequence Diagram Lihat Profil
3) Edit Profil
Gambar 3.21 Sequence Diagram Edit Profil 4) Ganti Password
57
5) Tulis Pesan
Gambar 3.23 Sequence Diagram Tulis Pesan 6) Lihat Kotak Masuk
7) Lihat Pesan Sampah
Gambar 3.25 Sequence Diagram Lihat Pesan Sampah
8) Lihat Presensi
Gambar 3.26 Sequence Diagram Lihat Presensi
9) Lihat Riwayat Gaji
59
10)Tambah Presensi
Gambar 3.28 Sequence Diagram Tambah Presensi 11)Edit Stok
Gambar 3.29 Sequence Diagram Edit Stok
Gambar 3.30 Sequence Diagram Lihat Stok
61
Gambar 3.31 Sequence Diagram Tambah Stok
Gambar 3.32 Sequence Diagram Lihat Laporan Pendapatan Shift Lantai 2
15)Lihat Laporan Pendapatan Shift Lantai 3
Gambar 3.33 Sequence Diagram Lihat Laporan Pendapatan Shift Lantai 3
16)Lihat Laporan Pendapatan Harian Lantai 2
Gambar 3.34 Sequence Diagram Lihat Laporan Pendapatan Harian Lantai 2
63
Gambar 3.35 Sequence Diagram Lihat Laporan Pendapatan Harian Lantai 3
18)Tambah Laporan Pendapatan Shift Lantai 2
Gambar 3.37 Sequence Diagram Tambah Laporan Pendapatan Shift Lantai 3
65
Gambar 3.39 Sequence Diagram Tambah Laporan Pendapatan Harian Lantai 3
67
Gambar 3.40 Sequence Diagram Edit Pendapatan Shift Lantai 2
23)Edit Pendapatan Shift Lantai 3
Gambar 3.41 Sequence Diagram Edit Pendapatan Shift Lantai 3
Gambar 3.42 Sequence Diagram Edit Pendapatan Harian Lantai 2
69
Gambar 3.43 Sequence Diagram Edit Pendapatan Harian Lantai 3
26)Hapus Pendapatan Shift
Gambar 3.44 Sequence Diagram Hapus Pendapatan Shift
Gambar 3.45 Sequence Diagram Hapus Pendapatan Harian
28)Lihat Berkas
Gambar 3.46 Sequence Diagram Lihat Berkas
29)Download Berkas
Gambar 3.47 Sequence Diagram Download Berkas
71
Gambar 3.48 Sequence Diagram Upload Berkas
31)Hapus Berkas
Gambar 3.49 Sequence Diagram Hapus Berkas
Gambar 3.50 Sequence Diagram Lihat User
33)Tambah User
73
Gambar 3.52 Sequence Diagram Edit User
Gambar 3.53 Sequence Diagram Hapus User
36)Lihat Presensi Karyawan
Gambar 3.54 Sequence Diagram Lihat Presensi Karyawan
37)Hapus Presensi Karyawan
Gambar 3.55 Sequence Diagram Hapus Presensi Karyawan
75
Gambar 3.56 Sequence Diagram Bayar Gaji Karyawan
39)Edit Presensi Karyawan
Gambar 3.57 Sequence Diagram Edit Presensi Karyawan
40)Tambah Barang Baru
1) Login
Gambar 3.59 Class Element Diagram Login
2) Kelola Profil
Gambar 3.60 Class Element Diagram Kelola Profil
77
Gambar 3.61 Class Element Diagram Kelola Pesan
4) Kelola Presensi
Gambar 3.62 Class Element Diagram Kelola Presensi
Gambar 3.63 Class Element Diagram Kelola Stok
6) Kelola Laporan Pendapatan
79
Gambar 3.65 Class Element Diagram Kelola Berkas
8) Kelola User
Gambar 3.67 Class Element Diagram Kelola Presensi Karyawan
81
Gambar 3.68 ERD (Entity Relationship Diagram)
1. Tabel Barang
Tabel 3.18 Tabel Barang
Field Type Length Null Constraint Reference
NamaBaran
2. Tabel Berkas
Tabel 3.19 Tabel Berkas
Field Type Length Null Constraint Reference
IdBerkas Bigint 14 Not Null Primary Key Username Varchar 12 Not Null Foreign
Key
user.Username
NamaBerkas Text Not Null
Tanggal Date Not Null
Waktu Time Not Null
Sifat enum ‘umum’,
‘khusus’
83
3. Tabel Jabatan
Tabel 3.20 Tabel Jabatan
Field Type Length Null Constraint Reference
IdJabatan Integer 1 Not Null Primary Key
NamaJabatan Varchar 8 Not Null Foreign Key
4. Tabel Jabatanuser
Tabel 3.21 Tabel Jabatanuser
Field Type Length Null Constraint Reference
IdJabatan Integer 1 Not Null Primary Key jabatan.IdJabatan
Username Varchar 12 Not Null Primary Key user.Username
5. Tabel Lantai
Tabel 3.22 Tabel Lantai
Field Type Length Null Constraint Reference
IdLantai Integer 1 Not Null Primary Key
NamaLantai Integer 1 Not Null
6. Tabel Pendapatan
Tabel 3.23 Tabel Pendapatan
Field Type Length Null Constraint Reference
IdPendapatan Bigint 14 Not Null Primary Key
Username Varchar 12 Not Null Foreign Key user.Username
Waktu Time Not Null
Periode Integer 2 Not Null
Tahun Integer 4 Not Null
IdLantai Integer 1 Not Null Foreign Key lantai.IdLantai
Posisi Enum ‘Shift 1’,
‘Shift 2’,
‘Shift 3’,
‘Shift 4’
Not Null
UserPersonal Integer 3 Not Null
UserPaket Integer 3 Not Null
Paket Integer 7 Not Null
Personal Integer 7 Not Null
PrePaid Integer 7 Null
Print Integer 7 Null
Scan Integer 7 Null
Dagang Integer 7 Null