Akhir kata semoga Makalah ini dapat berguna bagi penulis khususnya
dan bagi para pembaca yang berminat pada umumnya.
Penulis
i
DAFTAR ISI
ii
3.3 Analisa Sistem Berjalan ........................................................ 22
iii
BAB I
PENDAHULUAN
1
Dengan adanya permasalahan diatas maka dibutuhkan sebuah
sistem informasi dan perkembangan teknologi informasi salah satunya
adalah diiringi dengan hadirnya internet sebagai media informasi yang
dapat diakses dengan menggunakan komputer yang terkoneksi satu sama
lain ke berbagai belahan dunia. Sebagai perusahaan yang bergerak di
bidang jasa, perusahaan restoran umumnya pada saat ini telah memiliki
website yang di lengkapi dengan fasilitas reservasi on-line. Dengan
demikian perusahaan tersebut telah memiliki suatu alat yang dapat
membantu dalam melakukan promosi, membantu memberikan
kemudahan untuk setiap pelanggan yang ingin melakukan reservasi dan
dalam rangka untuk memenangkan persaingan.
2
Dengan adanya sistem informasi reservasi dan pemesanan
restoran Aroma Pontianak ini diharapkan dapat meningkatkan kepuasan
pengguna dan mempermudah proses pemesanan dan reservasi, sehingga
restoran Aroma Pontianak dapat memberikan pelayanan yang lebih baik
dan efisien kepada pengguna.
Maksud Penelitian
Tujuan Penelitian
3
dalam waterfall model atau SDLC meliputi tahapan analisa,
perancangan, ujicoba, dan implementasi, seperti tahapan analisa telah
diperkaya dengan Requirements Specification dimana kebutuhan
sistem ditemukan dan dibakukan (Rabbani,A.2023)
a. Pengamatan Langsung
b. Wawancara
c. Studi Pustaka
4
Adapun metode penelitian yang digunakan adalah metode
waterfall. Menurut (Yurindra, 2017) Waterfall merupakan sebuah
metode dalam SDLC yang memiliki ciri spesifik pekerjaan yaitu
masing-masing tahapan pada waterfall wajib diselesaikan dahulu
sebelum meneruskan ke tahapan berikutnya. Maksudnya fokus pada
setiap bagian dapat terlaksana secara optimal karena jarang ada
pekerjaan paralel padahal bisa terjadi paralelisme di waterfall.
1. Requipment
Tahap perencanaan menyangkut studi tentang kebutuhan
pengguna dan kelayakan sistem baik secara teknik maupun secara
teknologi. Pada tahap ini dilakukan perencanaan tentang sistem yang
akan dibangun. Dalam hal ini adalah website reservasi dan pemesanan
makanan pada aroma Pontianak.
2. Design
Proses design digunakan untuk mengubah kebutuhan-
kebutuhan di atas menjadi representasi ke dalam bentuk blueprint
software sebelum coding dimulai. Tahap design menyangkut
perancangan sistem dimana kita akan memberikan solusi dari masalah
yang muncul pada tahap analisis.
3. Implemation
Tahap implementasi adalah tahap sistem diimplementasikan ke
situasi nyata dengan pemilihan perangkat keras dan penyusunan desain
(coding). Untuk implementasi sistem yaitu dengan memasukkan desain
yang sudah dibuat ke dalam perangkat yang disediakan.
4. Verification
Sesuatu yang dibuat haruslah diuji. Demikian juga software,
semua fungsi-fungsi software harus diuji secara teliti agar software
bebas dari error, dan hasilnya harus benar-benar sesuai dengan
kebutuhan yang sudah didefinisikan pada tahap sebelumnya. Tahap
pengujian juga merupakan tahap yang menentukan apakah desain yang
5
sudah dibuat sudah sesuai kebutuhan pengguna atau belum. Tujuan dari
pengujian ini adalah untuk meminimalisir cacat desain website
sehingga sistem yang dikembangkan benar-benar dapat berjalan dengan
sebaik mungkin. Pengujian ini akan dilakukan dengan mewawancarai
beberapa orang sebagai penguji untuk menilai apakah sistem yang
dibuat sesuai dengan kebutuhan reservasi dan pemesanan makanan
pada aroma Pontianak.
5. Maintance
6
a. Proses menjadi lebih sistematis, urutan pemerosesan dengan
metode ini akan lebih sistematis dari satu tahap ketahap
berikutnya.
3. Kelemahan Waterfall
7
a. Semua pihak yang ingin memesan paket makanan dan tempat
diwajibkan mengisi data-data tentang dirinya terlebih dahulu
dan selain itu username dan password yang dibuat nantinya akan
digunakan untuk melihat daftar pesanan yang telah dipesan oleh
pelanggan.
8
BAB II
LANDASAN TEORI
1. Component
2. Boundary
3. Subsistem
4. Environment
9
Luaran sekat sistem yang dipengaruhi oleh operasi sistem.
10
Sistem yang dapat diprediksi secara tepat dan sistem yang tidak dapat
diprediksi secara tidak tepat.
Susanto (2002), “Tujuan sistem adalah sasaran atau tujuan akhir yang
ingin dicapai oleh suatu sistem”. Supaya tujuan ini berhasil, kriteria terlebih
dahulu yang perlu diketahui. Kriteria juga dapat dijadikan tolak ukur untuk
menilai ketercapaian sebuah sistem dan menjadi rujukan untuk melakukan
suatu pengendalian. Jadi, kriteria tujuan bersifat absolut (Djahir&Pratita,
2014).
2.2.1. Database
11
saling terhubung yang disimpan bersama pada suatu media tanpa
adanya duplikasi data, sehingga mudah digunakan kembali dan tidak
mengalami ketergantungan pada program yang akan menggunakannya
dan dapat diakses oleh satu atau lebih program aplikasi secara optimal.
2.2.2. PHP
2.2.3. HTML
12
bukanlah bahasa pemograman (bahasa pemograman), melainkan
bahasa markup (markuplanguange), hal ini kedengarannya sedikit aneh,
namun jika Anda sudah terbiasa dengan bahasa pemograman lain,
HTML tidak akan menemukan struktur yang biasa terdapat pada bahasa
pemograman seperti IF, LOOP, atau variabel, HTML hanyalah bahasa
struktural yang fungsinya untuk menandai bagian-bagian dari suatu
halaman (Rerung, 2018).
2.2.4. MySqL
13
5. MySqL dapat diakses melalui protocol ODBC (Open Database
Connectivity) buatan Microsoft. Ini menyebabkan MySqL dapat
diakses oleh banyak software.
6. Semua klien dapat mengakses server dalam satu waktu, tanpa harus
menunggu yang lain untuk mengakses database.
2.2.5. XAMPP
15
BAB III
PEMBAHASAN
3.1. Umum
16
aplikasi, kemudian dilakukan pengujian aplikasi. Tujuannya untuk
mengukur kualitas aplikasi dan memvalidasi. Sementara aturan sistem
digambarkan dengan use case diagram yang mendeskripsikan hubungan
antara satu atau lebih aktor dengan aktifitas-aktifitas yang akan dilakukan
aktor dalam sebuah sistem informasi.
17
1. Pemesanan Online: Sistem ini harus memungkinkan pelanggan
untuk melihat menu, memilih makanan yang diinginkan,
menambahkannya ke keranjang belanja, dan melakukan pembayaran
secara online.
18
3.2.1 Sejarah Perusahaan
Owner
Manager
19
1. Owner
2. Manager
20
3. Koki
4. Staff pelayan
21
5. Admin
22
d. Driver akan menerima pesanan dan tagihan yang akan dikirim
ke alamat pelanggan. Driver akan menyetor pembayaran dari
pelanggan ke petugas
2. Proses Reservasi
a. Pelanggan menghubungi petugas untuk reservasi meja dan
akan datang ke restoran sesuai tanggal dan jam yang
direservasi
b. Petugas akan menanyakan pelayanan dan indentitas
pelanggan, dan menerima reservasi pelanggan dan akan
mengecek dan mencatat rincian reservasi dan akan
menyiapkan meja yang sudah direservasi lalu menunggu
pelanggan yang akan datang.
23
3.3.2 Spesifikasi Dokumen Masukan
Tujuan : Konsumen
Media : Kertas
1. Rekap Penjualan
Sumber : Admin
Media : Kertas
24
bagi pengguna dalam melakukan pemesanan makanan secara online.
Misalnya, antarmuka yang rumit atau proses pemesanan yang
memakan waktu dapat menghambat pengguna dalam melakukan
pemesanan dengan lancar.
25
6. Kebocoran data pelanggan: Jika sistem tidak memiliki keamanan
yang memadai, data pelanggan seperti informasi pribadi atau detail
pembayaran dapat terancam kebocoran atau penyalahgunaan.
Keamanan data pelanggan harus menjadi prioritas untuk menjaga
kepercayaan pelanggan dan menjaga reputasi Aroma Pontianak.
Untuk mengatasi permasalahan ini, penting untuk melakukan evaluasi
menyeluruh terhadap sistem informasi pemesanan dan reservasi
makanan Aroma Pontianak. Perbaikan dapat dilakukan dengan
mengembangkan antarmuka yang lebih intuitif, mengintegrasikan
sistem pembayaran yang lebih baik, menyediakan informasi yang
akurat tentang ketersediaan makanan, mengirimkan konfirmasi atau
notifikasi kepada pelanggan, meningkatkan sistem manajemen
pesanan, dan memperkuat keamanan data pelanggan.
26
akan memudahkan pelanggan dalam menyelesaikan pembayaran
dengan metode yang paling nyaman bagi mereka.
27
lebih efisien, mudah digunakan, akurat, dan aman, yang pada
gilirannya akan meningkatkan pengalaman pelanggan dan
keberhasilan bisnis secara keseluruhan.
A. Kebutuhan Pengguna
a. Admin
28
b. Petugas
B. Kebutuhan Sistem
1. Sistem Administrator
29
Admin dapat login untuk masuk ke halaman administrator website
untuk mengatur data-data dan informasi yang muncul di website,
dan dapat melihat order masuk serta laporan transaksi.
2. Sistem Member
3. Sistem Menu
30
3.5 Desain Sistem
2. Spesifikasi File
1) Spesifikasi File User
Nama File : User
Akronim : user
Fungsi : Menyimpan data user
31
No Elemen Data Akronim Tipe Panjang Keterangan
1 Id user Id_user int 11 Primary
Key
2 Nama nama varchar 255
3 email email varchar 255
4 sandi sandi varchar 60
5 Nohp nohp varchar 15
6 level level Enum
(‘Admin’,
‘Petugas’,
Pelanggan’)
Software : Xampp
32
3) Spesifikasi File Menu
Field Key : id
Software : Xampp
33
Media : Hard Disk
Software : Xampp
Akronim : pesanan
Fungsi : Menyimpan data pesanan
Field Key : id
Software : Xampp
34
2 User id User_id Int 10 Foreign key
3 Tgl pesan Tgl_pesan Date
4 Menu id Menu_id int 10 Foreign key
5 Total total double
6 Alamat Alamat text
7 Status Status int 2
Software : Xampp
35
3. Struktur Kode
1) Kode User
Bentuk:
X X X 9 9 9
S R A 0 0 1
Keterangan:
A: Level Admin
2) Kode Menu
Bentuk:
X X 9 9 9
N G 0 0 1
Keterangan:
36
3) Kode Meja
Bentuk:
X 9 9 9
M 0 0 1
Keterangan:
M: Inisial Meja
4) Kode Pesanan
Bentuk:
X X 9 9 9
M S 0 0 1
Keterangan:
5) Kode Reservasi
Bentuk:
X X 9 9 9
37
D A 0 0 1
Keterangan:
1. Halaman Login
2. Halaman Registrasi
3. Halaman Admin
1). Halaman User
38
2). Halaman Kategori
39
5). Halaman Pesanan
40
3.5.3 Struktur Navigasi
41
3.6 Pembuatan Kode Program
1. View Login
2.
3. <!DOCTYPE html>
4.
5. <!--
=========================================================
6. * Sneat - Bootstrap 5 HTML Admin Template - Pro | v1.0.0
7. =========================================================
=====
8.
9. * Product Page:
https://themeselection.com/products/sneat-bootstrap-html-
admin-template/
10. * Created by: ThemeSelection
11. * License: You must have a valid license purchased in
order to legally use the theme for your project.
12. * Copyright ThemeSelection (https://themeselection.com)
13.
14. =========================================================
15. -->
16. <!-- beautify ignore:start -->
17. <html
18. lang="en"
19. class="light-style customizer-hide"
20. dir="ltr"
21. data-theme="theme-default"
22. data-assets-path="<?=base_url('assets')?>/"
23. data-template="vertical-menu-template-free"
24. >
25. <head>
26. <meta charset="utf-8" />
27. <meta
28. name="viewport"
29. content="width=device-width, initial-scale=1.0,
user-scalable=no, minimum-scale=1.0, maximum-scale=1.0"
30. />
31.
32. <title>Login Basic - Pages | Sneat - Bootstrap 5 HTML
Admin Template - Pro</title>
33.
42
34. <meta name="description" content="" />
35.
36. <!-- Favicon -->
37. <link rel="icon" type="image/x-icon"
href="<?=base_url('assets')?>/img/favicon/favicon.ico" />
38.
39. <!-- Fonts -->
40. <link rel="preconnect"
href="https://fonts.googleapis.com" />
41. <link rel="preconnect"
href="https://fonts.gstatic.com" crossorigin />
42. <link
43. href="https://fonts.googleapis.com/css2?family=Publ
ic+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,4
00;1,500;1,600;1,700&display=swap"
44. rel="stylesheet"
45. />
46.
47. <!-- Icons. Uncomment required icon fonts -->
48. <link rel="stylesheet"
href="<?=base_url('assets')?>/vendor/fonts/boxicons.css"
/>
49.
50. <!-- Core CSS -->
51. <link rel="stylesheet"
href="<?=base_url('assets')?>/vendor/css/core.css"
class="template-customizer-core-css" />
52. <link rel="stylesheet"
href="<?=base_url('assets')?>/vendor/css/theme-
default.css" class="template-customizer-theme-css" />
53. <link rel="stylesheet"
href="<?=base_url('assets')?>/css/demo.css" />
54.
55. <!-- Vendors CSS -->
56. <link rel="stylesheet"
href="<?=base_url('assets')?>/vendor/libs/perfect-
scrollbar/perfect-scrollbar.css" />
57.
58. <!-- Page CSS -->
59. <!-- Page -->
60. <link rel="stylesheet"
href="<?=base_url('assets')?>/vendor/css/pages/page-
auth.css" />
61. <!-- Helpers -->
43
62. <script
src="<?=base_url('assets')?>/vendor/js/helpers.js"></scri
pt>
63.
64. <!--! Template customizer & Theme config files MUST
be included after core stylesheets and helpers.js in the
<head> section -->
65. <!--? Config: Mandatory theme config file contain
global vars & default theme options, Set your preferred
theme option in this file. -->
66. <script
src="<?=base_url('assets')?>/js/config.js"></script>
67. </head>
68.
69. <body>
70. <!-- Content -->
71.
72. <div class="container-xxl">
73. <div class="authentication-wrapper authentication-
basic container-p-y">
74. <div class="authentication-inner">
75. <!-- Register -->
76. <div class="card">
77. <div class="card-body">
78. <!-- Logo -->
79. <div class="app-brand justify-content-
center">
80. <a href="index.html" class="app-brand-
link gap-2">
81. <span class="app-brand-logo demo">
82. <svg
83. width="25"
84. viewBox="0 0 25 42"
85. version="1.1"
86. xmlns="http://www.w3.org/2000/svg"
87. xmlns:xlink="http://www.w3.org/1999
/xlink"
88. >
89. <defs>
90. <path
91. d="M13.7918663,0.358365126
L3.39788168,7.44174259 C0.566865006,9.69408886 -
0.379795268,12.4788597 0.557900856,15.7960551
C0.68998853,16.2305145 1.09562888,17.7872135
3.12357076,19.2293357 C3.8146334,19.7207684
5.32369333,20.3834223 7.65075054,21.2172976
44
L7.59773219,21.2525164 L2.63468769,24.5493413
C0.445452254,26.3002124 0.0884951797,28.5083815
1.56381646,31.1738486 C2.83770406,32.8170431
5.20850219,33.2640127 7.09180128,32.5391577
C8.347334,32.0559211 11.4559176,30.0011079
16.4175519,26.3747182 C18.0338572,24.4997857
18.6973423,22.4544883 18.4080071,20.2388261
C17.963753,17.5346866 16.1776345,15.5799961
13.0496516,14.3747546 L10.9194936,13.4715819
L18.6192054,7.984237 L13.7918663,0.358365126 Z"
92. id="path-1"
93. ></path>
94. <path
95. d="M5.47320593,6.00457225
C4.05321814,8.216144 4.36334763,10.0722806
6.40359441,11.5729822 C8.61520715,12.571656
10.0999176,13.2171421 10.8577257,13.5094407
L15.5088241,14.433041 L18.6192054,7.984237
C15.5364148,3.11535317 13.9273018,0.573395879
13.7918663,0.358365126 C13.5790555,0.511491653
10.8061687,2.3935607 5.47320593,6.00457225 Z"
96. id="path-3"
97. ></path>
98. <path
99. d="M7.50063644,21.2294429
L12.3234468,23.3159332 C14.1688022,24.7579751
14.397098,26.4880487 13.008334,28.506154
C11.6195701,30.5242593 10.3099883,31.790241
9.07958868,32.3040991 C5.78142938,33.4346997
4.13234973,34 4.13234973,34 C4.13234973,34
2.75489982,33.0538207 2.37032616e-14,31.1614621 C-
0.55822714,27.8186216 -0.55822714,26.0572515 -
4.05231404e-15,25.8773518 C0.83734071,25.6075023
2.77988457,22.8248993 3.3049379,22.52991
C3.65497346,22.3332504 5.05353963,21.8997614
7.50063644,21.2294429 Z"
100. id="path-4"
101. ></path>
102. <path
103. d="M20.6,7.13333333
L25.6,13.8 C26.2627417,14.6836556 26.0836556,15.9372583
25.2,16.6 C24.8538077,16.8596443 24.4327404,17 24,17
L14,17 C12.8954305,17 12,16.1045695 12,15 C12,14.5672596
12.1403557,14.1461923 12.4,13.8 L17.4,7.13333333
C18.0627417,6.24967773 19.3163444,6.07059163
45
20.2,6.73333333 C20.3516113,6.84704183
20.4862915,6.981722 20.6,7.13333333 Z"
104. id="path-5"
105. ></path>
106. </defs>
107. <g id="g-app-brand"
stroke="none" stroke-width="1" fill="none" fill-
rule="evenodd">
108. <g id="Brand-Logo"
transform="translate(-27.000000, -15.000000)">
109. <g id="Icon"
transform="translate(27.000000, 15.000000)">
110. <g id="Mask"
transform="translate(0.000000, 8.000000)">
111. <mask id="mask-2"
fill="white">
112. <use
xlink:href="#path-1"></use>
113. </mask>
114. <use fill="#696cff"
xlink:href="#path-1"></use>
115. <g id="Path-3"
mask="url(#mask-2)">
116. <use fill="#696cff"
xlink:href="#path-3"></use>
117. <use fill-
opacity="0.2" fill="#FFFFFF" xlink:href="#path-3"></use>
118. </g>
119. <g id="Path-4"
mask="url(#mask-2)">
120. <use fill="#696cff"
xlink:href="#path-4"></use>
121. <use fill-
opacity="0.2" fill="#FFFFFF" xlink:href="#path-4"></use>
122. </g>
123. </g>
124. <g
125. id="Triangle"
126. transform="translate(
19.000000, 11.000000) rotate(-300.000000) translate(-
19.000000, -11.000000) "
127. >
128. <use fill="#696cff"
xlink:href="#path-5"></use>
129. <use fill-
opacity="0.2" fill="#FFFFFF" xlink:href="#path-5"></use>
46
130. </g>
131. </g>
132. </g>
133. </g>
134. </svg>
135. </span>
136. <span class="app-brand-text demo
text-body fw-bolder">restoran</span>
137. </a>
138. </div>
139. <!-- /Logo -->
140. <h4 class="mb-2">Welcome to Restoran
Aroma Pontianak! 👋</h4>
141. <p class="mb-4">Please sign-in to
your account and start the adventure</p>
142.
143. <form id="form-login" class="mb-3"
action="<?= base_url('/login') ?>" method="POST">
144. <div class="mb-3">
145. <label for="email" class="form-
label">Email </label>
146. <input
147. type="email"
148. class="form-control"
149. id="email"
150. name="email"
151. placeholder="Enter your email "
152. autofocus
153. />
154. </div>
155. <div class="mb-3 form-password-
toggle">
156. <div class="d-flex justify-
content-between">
157. <label class="form-label"
for="sandi">Password</label>
158. <a
href="<?=base_url('/login/lupa') ?>">
159. <small>Forgot
Password?</small>
160. </a>
161. </div>
162. <div class="input-group input-
group-merge">
163. <input
164. type="password"
47
165. id="sandi"
166. class="form-control"
167. name="sandi"
168. placeholder="··
7;·········"
169. aria-describedby="password"
170. />
171. <span class="input-group-text
cursor-pointer"><i class="bx bx-hide"></i></span>
172. </div>
173. </div>
174. <div class="mb-3">
175. <button class="btn btn-primary d-
grid w-100" type="submit">Sign in</button>
176. </div>
177. </form>
178.
179. <p class="text-center">
180. <span>New on our platform?</span>
181. <a href="<?=base_url('/register')
?>">
182. <span>Create an account</span>
183. </a>
184. </p>
185. </div>
186. </div>
187. <!-- /Register -->
188. </div>
189. </div>
190. </div>
191.
192. <!-- / Content -->
193.
194. </body>
195. <link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/c
ss/bootstrap.min.css" rel="stylesheet"
crossorigin="anonymous">
196. <script src="https://code.jquery.com/jquery-
3.6.1.min.js" crossorigin="anonymous"></script>
197. <script
src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.9.2/di
st/umd/popper.min.js" crossorigin="anonymous"></script>
198. <script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js
/bootstrap.min.js" crossorigin="anonymous"></script>
48
199. <script
src="https://cdn.jsdelivr.net/gh/agoenxz2186/submitAjax@d
evelop/submit_ajax.js">
200. </script>
201. <link
href="//cdn.datatables.net/1.12.1/css/jquery.dataTables.m
in.css" rel="stylesheet">
202. <script
src="//cdn.datatables.net/1.12.1/js/jquery.dataTables.min
.js"></script>
203.
204. <script>
205. $(document).ready(function(){
206. $('form#form-login').submitAjax({
207. pre:()=>{
208. $('form#form-login
button[type=submit]').hide();
209. },
210. pasca:()=>{
211. $('form#form-login
button[type=submit]').show();
212. },
213. success:(response, status)=>{
214. var js = $.parseJSON(response);
215. alert(js.message);
216. window.location =
"<?=url_to('dashboard')?>";
217. },
218. error: (xhr, status)=>{
219. var json =
$.parseJSON( xhr.responseText );
220. alert(json.message);
221. }
222. });
223. });
224. </script>
225. </html>
226.
3.7 Pengujian
49
Menurut Sukamto & Shalahuddin (2015:275-276), “Black-box
Testing yaitu menguji perangkat lunak dari segi spesifikasi fungsional tanpa
menguji perangkat lunak dari segi spesifikasi fungsional tanpa menguji
desain dan kode program”.
3.8 Pemeliharaan
50
1. Sistem memiliki kesalahan yang dulunya belum terdeteksi,
sehingga kesalahan-kesalahan sistem perlu diperbaiki.
1. Pemeliharaan Korektif
2. Pemeliharaan Adaptif
3. Pemeliharaan Penyempurnaan
4. Pemeliharaan Preventif
51
1. Spesifikasi Hardware
a. Server
1) CPU
2) Mouse
3) Keyboard
b. Client
1) CPU
2) Mouse
3) Keyboard
2. Spesifikasi Software
1. Server
52
a. Sistem operasi yang umum digunakan seperti: Microsoft
Windows atau Linux (Ubuntu, Fedora, dll).
2. Client
53
BAB IV
PENUTUP
4.1 Kesimpulan
54
4.2 Saran
55
DAFTAR PUSTAKA
56