## Pengembangan Sistem Point of Sale Menggunakan Framework Codeignetier Berbasis Web
Sukirno 1 , Heri Suhendar 2
Institut Teknologi Garut Jl. Mayor Syamsu No. 1 Jayaraga Garut 44151 Indonesia Email : jurnal@itg.ac.id
1 Sukirno@itg.ac.id
2 Herisuhendar@itg.ac.id
Abstrak – Sistem manajemen perniagaan Point of Sale (POS) merupakan program aplikasi yang dapat memfasilitasi semua proses niaga, namun sistem tersebut hanya dapat dipasangkan pada komputer  berspesifikasi  rendah  dengan  proses  pemasangannya  yang  cukup  rumit. Permasalahanya bagaimana cara untuk mengembangkan program aplikasi POS ke pemrograman web sehingga dapat di install pada semua produk sistem operasi mainstream . Sistem POS yang telah  dikembangkan  merupakan  sistem  manajemen  yang  dapat  mengelola  beberapa  fungsi penting  dalam  manajemen  perniagaan,  seperti  pengelolaan  barang,  distributor,  transaksi pembelian,  transaksi  penjualan,  retur  pembelian,  retur  penjualan,  penghasilan,  administrasi operasional,  hingga  laporan  –  laporan.  Sistem  POS  merupakan  sistem  manajemen  perniagaan berbasis web dengan menggunakan bahasa pemrograman PHP dengan framework codeigniter 3, web  server apache  dan  basis  data  MySQL . Metode  penelitian  dengan  menggunakan  action research, dan metode pengumpulan data berupa wawancara. Sistem POS dikembangkan dengan model  pengembangan  waterfall  dan  dirancang  dengan  metode  perancangan  UML,  serta  diuji dengan teknik pengujian black box . Dengan melalui proses pengembangan maka program aplikasi POS  berbasis  desktop  berhasil  dikembangkan  ke  pemrograman  web  menggunakan  bahasa pemrograman  PHP  dengan framework  Codeigniter 3  dan  berhasil  dikembangkan  untuk  dapat di install pada produk sistem operasi mainstream seperti windows, linux, dan macintosh.
Kata Kunci – Framework; Mainstream; POS; Sistem; Web.

## I. PENDAHULUAN
Perkembangan  ilmu  teknologi  pada  industri  retail  kini  meningkat  sangat  pesat,  hal  ini  dibuktikan  dengan pembangunan  toko  waralaba  seperti  minimarket  yang  menerapkan  teknologi informasi.  Sistem manajemen perniagaan disebut sistem Point Of Sale (POS) , cash register yang lebih maju. Operasional harian pengelolaan toko dapat memanfaatkan aplikasi ini.
Program  POS  dapat  mengelola  beberapa  fungsi  penting  dalam  manajemen  perniagaan  seperti  pengelolaan barang, distributor, transasksi pembelian, transaksi penjualan, retur pembelian, retur penjualan, penghasilan, administrasi  operasional  hingga  laporan  perniagaan.  Aplikasi  ini  dikembangkan  menggunakan  bahasa pemrograman  PHP  menggunakan  framework  Codeigniter  berbasis  web.  Modern,  fleksibel  dan  dapat dioperasikan pada media lain.
Permasalahannya  adalah  bagaimana  mengembangkan  sistem  manajemen  perniagaan Point  Of  Sale menggunakan framework  Codeigniter berbasis  web  dan  apakah  pengembangan Point  Of  Sale mampu mempengaruhi administrasi penjualan retail dan menjadikan pengelolaan lebih efektif.
Vol. 19; No. 2; 2022; Hal 660-668
Penelitain  ini  dilakukan  dengan  tujuan  mengembangkan  sistem  manajemen  perniagaan Point  ff  Sale menggunakan framework Codeigniter berbasis web dan mengembangkan Point of Sale untuk meningkatkan penjualan  retail  dengan  pengelolaan  yang  efektif.  Sistem  Infomasi  Manajemen  (SIM)  adalah  sistem perencanaan bagian dari pengendalian internal suatu bisnis. Masalah bisa dipecahkan dengan  pemanfaatan manusia, dokumen, teknologi dan prosedur atau akutansi manajemen [1].
Komputer dengan adanya perangkat keras dan perangkat lunak disebut Web Server [2].Sedangkan menurut [3] web server adalah komputer yang digunakan untuk menyimpan dokumen-dokumen web. Saat ini framework sudah menjadi bagian wajib bagi programer dalam mengembangkan aplikasi. Menurut [4] menjelaskan bahwa framework adalah  koleksi  atau  kumpulan  potongan-potongan  program  yang  disusun  atau  diorganisasikan sedemikian  rupa,  sehingga  dapat  digunakan  untuk membantu membuat aplikasi  utuh tanpa  harus membuat semua kodenya dari awal. Sedangkan menurut [5] adalah sekumpulan kode pustaka dan alat yang dipadukan menjadi satu kerangka kerja. Penggunaan framework ke business process yang dihadapi tanpa harus berfikir banyak masalah struktur aplikasi, standar coding [6] .
Web  yang  besifat  dinamis  dirancang  menggunakan  bahasa  pemrograman  PHP.  Pengunaannya    untuk menterjemahkan baris kode program menjadi kode mesin yang dapat dimengerti oleh  komputer yang berbasis server side yang dapat ditambahkan ke dalam HTML[7] Sedangkan menurut[8] mengemukakan bahwa PHP merupakan salah satu bahasa pemrograman berbasis web.
CodeIgniter merupakan kerangka pengembangan aplikasi berbasis web menggunakan PHP[9]. Tujuan untuk mengembangkan  proyek  lebih  cepat  dan  rapih  dengan  menyediakan  kumpulan  libraries  yang  kaya  untuk fungsi-fungsi umum yang dibutuhkan UML[10].
Tool yang digunakan dalam UML ini adalah sebagai berikut.
1. Use Case Diagram merupakan rangkaian tindakan yang dilakukan oleh sistem, aktor mewakili user atau sistem lain yang berinteraksi dengan sistem yang dimodelkan [11].
2. Sequence Diagram menjelaskan interaksi objek yang disusun dalam suatu urutan waktu dengan tahapan yang harus dilakukan.
3. Class  Diagram menggambarkan  struktur  sistem  dari  segi  pendefinisian  kelas-kelas  yang  akan  dibuat untuk membangun sistem.

## II. METODOLOGI PENELITIAN

## A.   Metode Pengembangan Sistem
Waterfall yang  akan  dikembangkan  terdiri  dari  analisa  kebutuhan,  desain  sistem,  penulisan  kode  program, pengujian program, dan penerapan program.
Analisa kebutuhan merupakan tahap pengumpulan informasi untuk dianalisa dan diolah sehngga didapatkan informasi  yang  lengkap  mengenai  spesifikasi  kebutuhan  pengguna  akan  perangkat  lunak  yang  akan dikembangkan. Setelah dilakukan analisa tahap implementasi selanjutnya pada tahap desain pengembangan, penulisan kode program, pengujian program dan penerapan program.

## B.   Pemodelan Perangkat Lunak
Tahapan-tahapan menggunakan waterfall [12] adalah sebagai berikut : 1. Analisis Kebutuhan
Pengumpulan informasi yang dilakukan pada tahap ini dianalisis dengan spesifikasi kebutuhan yang lengkap  mengenai  kebutuhan  pengguna  terkait software yang  akan  dikembangkan.  Pengumpulan informasi diperoleh dengan cara diskusi, observasi, survey, dan wawancara.
2. Desain Sistem dan Perangkat Lunak Melanjutkan tahap pertama kemudian mempersiapkan pembuatan arasitektur sistem perangkat lunak dan kebutuhan perangkat kerasnya.
3. Implementasi dan Pengujian Unit Kesesuiaan modul yang telah dibuat dengan kriteria baik dari tahapan pemrograman serta pengujian dan pengecekan fungsionalitas.
4. Verifikasi, Integrasi, dan Pengujian Sistem Setelah  semua  unit  dikembangkan  dan  diuji  pada  tahap  implementasi,  kemudian  diintegrasikan  ke dalam sistem secara keseluruhan. Setelah proses integrasi selesai, sistem secara keseluruhan diperiksa dan diuji untuk mengetahui kegagalan atau kesalahan sistem.
5. Pemeliharaan Tahap akhir yang dilakukan dengan mengoperasikan perangkat lunak untuk melakukan  pemeliharaan. Pengembang  melakukan  perbaikan  terhadap  beberapa  kesalahan  yang  tidak  terdeteksi  pada  tahap sebelumnya. Cakupan pemeliharaan diantaranya koreksi kesalahan, perbaikan unit sistem peningkatan dan kesesuian sistem dengan kebutuhan pengguna.

## III. HASIL DAN DISKUSI

## A.   Hasil Penelitian
Pemanfaatan  database  MySQL  digunakan  dalam  pengembangan  aplikasi  ini.  Analisis  terhadap    spesifikasi kebutuhan  dimulai  tahap  analisis  kebutuhan  dan  diimplementasikan  dalam  desain  pengembangan. Pengembanga dengan  mempersiapkan perangkat keras untuk membuat arsitektur sistem perangkat lunak yang akan dibuat. Aplikasi yang siap pakai dan terintegrasi dengan perangkat keras.
Tahapan  dalam  POS  terdiri  dari  dua  tahapan  identifikasi  masalah  dan  analisis  dokumen.Sistem  POS  versi sebelumnya tidak dapat dipasangkan secara sempurna pada komputer dengan sistem operasi windows 10 64 bit, sedangkan rata – rata komputer yang digunakan oleh masyarakat sekarang adalah windows 10 64-bit. 1. Sistem Point  of  sale yang  dikembangkan  berfokus  pada  pengelolaan  data  inventaris  barang,  transaksi pembelian, transaksi penjualan, transaksi retur pembelian dan penjualan, laporan stok barang, pengelolaan administrasi keuangan, serta pengelolaan laba rugi perusahaan.
2. Sistem Point  of  sale yang  dibangun  merupakan  pengembangan  dari  sistem point  of  sale sebelumnya sehingga sistem tersebut harus memiliki kemudahan penggunaan yang sama bahkan lebih dibandingkan sistem sebelumnya.
Berikut merupakan hasil analisis dokumen sistem informasi manajemen point of sale : 1. Dokumen Input
Berdasarkan hasil observasi yang penulis lakukan selama penelitian, maka penulis simpulkan bahwa Sistem Point  of  sale akan  dirancang  untuk  keperluan  transaksi  dan  administrasi transaksi,  seperti:  1)  mencatat transaksi  pembelian  dan  penjualan;  2) merekap  dan menghitung  transaksi;  3) mencatat  pemasukan  dan pengeluaran; dan 4) menghitung laba dan rugi operasional.
2. Dokumen Output
Vol. 19; No. 2; 2022; Hal 660-668
Dokumen Output yang  terdapat  pada  Sistem  POS  terdiri  dari  laporan  data  barang,  data  distributor, pembelian,  penjualan,  retur  pembelian,  retur  penjualan,  hutang,  absensi,  bukti  penjualan  dan  bukti pembelian, cetak kartu stok, pengeluaran, dan cetak laporan laba rugi.
Sistem POS dirancang dengan menggunakan pemodelan yang terdiri dari usecase diagram , skenario usecase , class diagram , activity diagram , serta sequence diagram . Berikut merupakan perancangan sistem POS.
<<include>> <<include>> <<include>> <<include>> <<include>> <<include>> <<include>> Admin Distributor Barang Satuan Barang Jenis Barang Hutang Transaksi Keuangan Stok Opname Kartu Stok Transaksi Kepegawian Rekapitulasi Login Kasir Register <<extend>> Laporan Master Laporan Kepegawaian Laporan Administrasi Laporan Transaksi Toko Import Backup dan Restore <<include>> <<include>> <<include>> <<include>> <<include>> <<include>> <<include>> <<include>> <<include>> <<include>> <<include>>
Gambar 3: Usecase POS
Usecase seperti gambaran diatas, melakukan hal-hal sebagai berikut :
1. Transaksi: Mencatat pembelian, penjualan, retur pembelian, dan retur penjualan.
2. Kepegawaian: Mengelola profil pengguna, absensi, dan akun pengguna.
3. Rekapitulasi: Mengelola data pembelian, penjualan, retur pembelian, dan retur penjualan.
4. Distributor: Mengelola data distributor.
5. Barang: Mengelola data barang.
6. Satuan Barang: Mengelola data satuan barang.
7. Jenis Barang: Mengelola data jenis barang.
8. Transaksi Keuangan: Mengelola data akun transaksi, dan transaksi keuangan.
9. Stok Opname: Mengelola opname data stok.
10. Hutang: Mengelola data hutang.
11. Laporan Master: Mencetak laporan data barang, dan data distributor.
12. Kartu Stok: Mencetak kartu stok barang.
13. Laporan Kepegawaian: Mencetak laporan data pegawai, data akun pegawai, dan data kehadiran.
14. Laporan Administrasi: Mencetak laporan stok opname, data hutang, data pengeluaran, dan laba rugi.
15. Laporan Transaksi: Mencetak laporan pembelian, penjualan, retur pembelian, dan retur penjualan.
16. Toko: Mengelola profil toko
17. Import: Mengelola import data barang dan distributor.
18. Backup dan Restore : Mengelola proses Backup dan Restore basis data.
Skenario Pengelolaan Data Inventaris Barang
Tabel 1: Skenario Use Case Tambah Data Barang
Nama Use Case : Tambah data barang Aktor yang berperan : Admin
Aktor Sistem Skenario Normal 1.  Memilih tombol tambah data 2. Menampilkan form tambah data barang 3. memasukan rincian data barang dan menekan tombol tambah
4. Menyimpan data ke tabel barang dan menampilkan pesan sukses
Rancangan activity diagram ditunjukan oleh Gambar 4.
Lihat Data Barang Pengguna Sistem
Basis Data
A kt ivi ta s Membuka halaman barang pada menu master Mengambil data barang Menampilkan halaman barang dan menampilkan data barang dalam tabel
Gambar 4: Activity Pengelolaan Data Inventaris Barang
Sequence pengelolaan  data  Inventaris  barang  terdapat  pada  gambar  5  pengelolaan  inventaris .
Aktor Sistem Basis Data
1: Akses halaman barang() 2: Mengirim permintaan akses data() 3: Mengambil data barang()
4: Menampilkan data barang()
Gambar 5: Sequence Lihat Data Barang
Perancangan antarmuka dalam  inventaris data barang dapat diliaht pada gambar 6.
C_ADMIN > Master > Barang

## Manajemen Data Barang

## Data Barang
Rekap Total Aset Export
Tambah Data
Link Ke Form Pembelian Pagination cari Tabel Data Barang
Gambar 6: Antarmuka Halaman Barang
Hasil implementasi pengelolaan data inventaris POS bisa dilihat pada gambar 7.
Gambar 7: Implementasi Halaman Barang
Hasil pengujian dari fungsi utama sistem point of sale adalah sebagai berikut:
Tabel 2. Pengujian Black Bock Testing
NO Nama Fungsi Aktor Penguji Bentuk pengujian Hasil yang diharapkan Hasil pengujian 1 Tambah Data Barang Admin Admin menambah  data barang Data barang disimpan dalam basis data. Data  barang  yang  telah ditambahkan  oleh  admin berhasil  disimpan  ke basis data. 2 Ubah Data Barang Admin Admin mengubah  data barang Data barang diperbaharui  pada basis data. Data  barang  yang  telah diubah oleh admin berhasil  disimpan  ke basis data. 3 Hapus Data Barang Admin Admin menghapus  data barang Data barang dihapus dan menghilang pada basis data. Data  barang  yang  telah dihapus oleh admin berhasil hilang pada basis data. 4 Tambah Data Barang Transaksi Pembelian Semua Jenis Pengguna Pengguna menambah  data barang pembelian Data barang disimpan dalam tabel sementara pada basis data. Data  barang  yang  telah ditambahkan oleh pengguna berhasil disimpan ke tabel sementara  pada  basis data. 5 Ubah Data Barang Transaksi Pembelian Semua Jenis Pengguna Pengguna mengubah  data barang pembelian Perubahan data barang disimpan dalam tabel sementara pada basis data. Data  barang  yang  telah diubah  oleh  pengguna berhasil  disimpan  ke tabel  sementara  pada basis data. 6 Hapus Data Barang Transaksi Pembelian Semua Jenis Pengguna Pengguna menghapus  data barang pembelian Data barang dihapus dalam tabel sementara pada basis data. Pengguna berhasil menghapus  data  barang dari tabel sementara.
Vol. 19; No. 2; 2022; Hal 660-668
NO Nama Fungsi Aktor Penguji Bentuk pengujian Hasil yang diharapkan Hasil pengujian 1 7 Simpan Transaksi Pembelian Semua Jenis Pengguna Pengguna mengisi  data pembelian, menyimpan data pembelian, dan  mencetak bukti pembelian. Data pembelian dan  data  detail pembelian disimpan  kedalam basis  data,  dan sistem mengunduh  bukti pembelian. Data  pembelian  dan  detail pembelian berhasil disimpan  kedalam  basis data,  kemudian  pengguna dapat  mengunduh  bukti pembelian. 8 Tambah Data Barang Transaksi Penjualan Semua Jenis Pengguna Pengguna menambah data barang penjualan Data barang disimpan  dalam tabel sementara pada basis data. Data  barang  yang  telah ditambahkan oleh pengguna berhasil disimpan ke tabel sementara pada basis data. 9 Hapus Data Barang Transaksi Penjualan Semua Jenis Pengguna Pengguna menghapus data barang penjualan Data barang dihapus dalam tabel sementara pada basis data. Pengguna berhasil menghapus  data  barang dari tabel sementara. 1 10 Simpan Transaksi Penjualan Semua Jenis Pengguna Pengguna mengisi  data penjualan, menyimpan data penjualan, dan  mencetak bukti penjualan. Data penjualan dan  data  detail penjualan disimpan  kedalam basis  data,  dan sistem mengunduh  bukti penjualan. Data  penjualan  dan  detail penjualan berhasil disimpan  kedalam  basis data,  kemudian  pengguna dapat mencetak bukti penjualan. 11 Tambah Data Barang Transaksi Retur Pembelian Semua Jenis Pengguna Pengguna menambah data barang retur pembelian Data barang disimpan  dalam tabel sementara pada basis data. Data  barang  yang  telah ditambahkan oleh pengguna berhasil disimpan ke tabel sementara pada basis data. 12 Simpan Transaksi Retur Pembelian Semua Jenis Pengguna Pengguna mengisi  data retur pembelian, menyimpan data pembelian, dan  mencetak bukti pembelian. Data retur pembelian dan data  detail  retur pembelian disimpan  kedalam basis  data,  dan sistem mengunduh  bukti retur pembelian.
Data  retur  pembelian  dan detail  retur  pembelian berhasil  disimpan  kedalam basis data, kemudian pengguna dapat mengunduh bukti retur pem belian.

## B. Pembahasan Hasil
Pada penelitian ini menggunakan metode pengembangan sistem Waterfall yang terdiri dari analisa kebutuhan, desain  sistem,  penulisan  kode  program, pengujian  program,  dan  penerapan  program.  Menggunakan bahasa pemrograman  PHP  dengan framework  Codeigniter berbasis  web.    Fitur  yang  terdapat  pada  aplikasi  ini diantaranya tambah data barang, hapus data barang, simpan transaksi pembelian, simpan transaksi penjualan, simpan transaksi retur penjualan. Adapun manfaat dari aplikasi ini untuk mengembangkan program aplikasi point of sale ke pemrograman web sehingga dapat di install pada semua produk sistem operasi mainstream . Aplikasi  yang  dikembangkan  merupakan  pengembangan  aplikasi  sebelumnya  yang  lebih  memudahkan penggunaanya.  Sedangkan  fokus  pengembangan  sistem  POS  ini  pada  pengelolaan  data  inventaris  barang, transaksi  pembelian,  transaksi  penjualan,  transaksi  retur  pembelian  dan  penjualan,  laporan  stok  barang, pengelolaan administrasi keuangan, serta pengelolaan laba rugi perusahaan.

## IV. KESIMPULAN
Kesimpulan dari hasil pembahasan yang telah disampaikan adalah sebagai berikut:
1. Program  aplikasi point  of  sale berbasis  desktop  berhasil  dikembangkan  ke  pemrograman  web menggunakan bahasa pemrograman PHP dengan framework Codeigniter 3.
2. Program aplikasi point of sale berhasil dikembangkan untuk dapat di install pada produk sistem operasi mainstream seperti windows, linux, dan macintosh.
Adapun saran untuk pengembangan aplikasi untuk penelitian kedepannya adalah sebagai berikut:
1. Program aplikasi point of sale masih bergantung pada program apilkasi Xampp.
2. Proses instalasi program masih harus dilakukan oleh pengembang.
3. Semakin banyak data yang terdapat pada basis data pada program, maka proses export data ke format excel akan semakin lama.
4. Program aplikasi point of sale masih memerlukan akses internet untuk menyesuaikan jenis font yang digunakan oleh program.
5. Program point of sale diprioritaskan untuk digunakan secara standalone pada jaringan LAN sehingga perlu pengkajian ulang pada bagian keamanan data dan sistem jika program tersebut ingin digunakan secara global menggunakan akses internet.

## DAFTAR PUSTAKA
[1] S. Hariyanto and S. I. Manajemen, “Slamet Hariyanto, Sistem Informasi Manajemen,” pp. 80–85.
[2] Sibero, Web Programming Power Pack . Yogyakarta: Mediakom, 2013.
[3] N. S. Lestari, G. D. Ramadi, A. G. Mahardika, Herawati, and Herlina, “Web-Based Online Study Plan Card  Application  Design,” J.  Phys.  Conf.  Ser. ,  vol.  1783,  no.  1,  2021,  doi:  10.1088/1742- 6596/1783/1/012046.
[4] N. S. Lestari, Sukirno, H. Fadriani, A. Sujana, Y. Herdiana, and R. Hidayat, “Design and Application Data-Based Employee Eat Barcode Scanner,” J. Phys. Conf. Ser. , vol. 1764, no. 1, p. 012065, Feb. 2021, doi: 10.1088/1742-6596/1764/1/012065.
[5] N. S. Lestari, Herlina, Sukirno, T. Rahman, A. Wirjawan, and R. Hidayat, “Development of E-Learning Application using Web-Based Tools to Improve Learning Effectiveness (Case Study: STT Mandala bandung),”  in Journal  of  Physics:  Conference  Series , Aug.  2019,  vol.  1179,  no.  1,  p.  012041,  doi: 10.1088/1742-6596/1179/1/012041.
[6] A. Solichin and U. B. Luhur, “Pemrograman Web dengan PHP dan MySQL,” no. June, 2016.
[7] Y. Kustiyahningsih and D. R. Anamisa, Pemrograman basis data berbasis WEB menggunakan PHP & MySQL / Yeni Kustiyahningsih, Devie Rosa Anamisa . Yogyakarta: Graha Ilmu, 2011.
[8] A. P. Basuki, Proyek Membangun WebsiteBerbasis PHPdengan CodeigniterCV. LOKOMEDIAAwan Pribadi Basuki . Yogyakarta: Lokomedia, 2014.
[9] Lukmanl  Hakim, Membangun  Web  Berbasis  PHP  Dgn  Framework  CodeIgniter .  Yogyakarta: Lokomedia, 2010.
[10]  V.  P.  Supono, Pemrograman  web  Dengan  Menggunakan  PHP  dan  Framework  Codeigniter . Yogyakarta: Budi Utomo, 2016.
[11]  Rosa A.S  dan  M.  Shalahuddin, Rekayasa  perangkat  lunak  terstruktur  dan  berorientasi  objek  edisi revisi . Bandung: Informatika, 2018.
[12]  J.  W.  Satzinger,  R.  B.  Jackson,  and  S.  D.  Burd, SIXTH  EDITION  Systems  Analysis  and  Design  I NaCHaNGING WORLD . 2012.