Anda di halaman 1dari 30

REKAYASA PERANGKAT LUNAK

PROGRAM WARUNG DIET


Dosen Pengampu : Ida Bagus Made Mahendra, S.Kom., M.Kom.

KELOMPOK SKYDRIVE
I MADE ADI SUSILAYASA

(1408605016)

I GUSTI NGURAH AGUNG WISNU ARIMURTI

(1408605019)

KADEK DIMAS ANGGARAJAYA

(1408605020)

I MADE ANGGUN DWIGUNA

(1408605022)

KADEK ELISKARINI

(1408605035)

PROGRAM STUDI TEKNIK INFORMATIKA


JURUSAN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS UDAYANA
2016

KATA PENGANTAR
Puji syukur kami panjatkan kepada Tuhan Yang Maha Esa karena berkat
rahmat dan hidayah-Nya dan melalui kerja keras serta diskusi panjang, akhirnya
penulis dapat menyusun laporan praktikum ini tepat pada waktunya. Dalam laporan
praktikum ini penulis membahas mengenai System Backup.
Dalam penyusunan laporan praktikum ini, penulis menyadari bahwa masih
banyak kekurangan, oleh karena itu saran dan kritik yang sifatnya membangaun
sangat penulis harapakan demi kesempurnaan laporan praktikum ini. Laporan
pratikum ini dibuat dengan berbagai observasi yang ada dan bertujuan untuk
menyelesaikan tugas yang diberikan.
Dalam penyusunan laporan praktikum ini, tidak sedikit hambatan yang kami
hadapi. Sehubungan dengan telah terselesaikannya laporan praktikum ini, maka
diucapkan terima kasih dan penghargaan kepada berbagai pihak yang telah
membantu, antara lain :
1. Bapak Ida Bagus Made Mahendra, S.Kom., M.Kom. sebagai dosen pengampu
mata kuliah rekayasa perangkat lunak yang telah banyak membantu
memberikan materi dan pencerahan kepada kami.
2. Kawan kawan di Jurusan Ilmu Komputer yang telah memberikan dukungan
moral dalam penyelesaian laporan ini.
Demikian pengantar dari penulis, apabila terdapat kata-kata yang kurang
berkenan maupun tidak disengaja, penulis mohon maaf. Atas perhatian pembaca,
penulis ucapakan terima kasih. Jimbaran,

5 Juni 2016

Penulis

DAFTAR ISI
KATA PENGANTAR ............................................................................................. i
DAFTAR ISI ........................................................................................................... ii
DAFTAR GAMBAR ............................................................................................. iv
DAFTAR TABEL ................................................................................................... v
BAB I PENDAHULUAN ....................................................................................... 1
1.1 Latar Belakang .............................................................................................. 1
1.2 Rumusan Masalah ......................................................................................... 2
1.3 Tujuan ........................................................................................................... 2
1.4 Manfaat ......................................................................................................... 2
BAB II LANDASAN TEORI ................................................................................. 3
2.1 Aplikasi Desktop ........................................................................................... 3
2.1.1 Pengertian Aplikasi Berbasis Desktop ................................................... 3
2.1.2 Tahapan Pembuatan Aplikasi................................................................. 3
2.1.3 Kelebihan Menggunakan Aplikasi Berbasis Dekstop ............................ 4
2.1.4 Kekurangan Menggunakan Aplikasi Berbasis Dekstop ......................... 4
2.2 Entity Relationship Diagram (ERD) ............................................................. 4
2.3 Metodelogi Model Waterfall ......................................................................... 6
2.3.1 Pengertian Model Waterfall ................................................................... 6
2.3.2 Tahapan Waterfall .................................................................................. 6
2.3.3 Karakteristik Waterfall ........................................................................... 8
2.3.4 Kelebihan Waterfall ............................................................................... 8
2.3.5 Kekurangan Waterfall ............................................................................ 8
2.4 JAVA ............................................................................................................ 9
2.4.1 Pengertian JAVA ................................................................................... 9

ii

2.4.2 Kegunaan JAVA .................................................................................... 9


2.4.3 Cara Kerja JAVA ................................................................................. 10
2.4.4 Software software yang digunakan ................................................... 10
2.4.5 Kelebihan JAVA .................................................................................. 10
2.4.6 Kekurangan JAVA ............................................................................... 11
2.5 MySQL........................................................................................................ 12
2.5.1 Pengertian MySQL .............................................................................. 12
2.5.2 Kelebihan MySQL ............................................................................... 13
2.5.3 Kekurangan MySQL ............................................................................ 14
BAB III PEMBAHASAN ..................................................................................... 16
3.1 Analisis Sistem ............................................................................................ 16
3.1.1 Identifikasi Masalah ............................................................................. 16
3.1.2 Analisis Kebutuhan .............................................................................. 16
3.1.3 Tahap Pengembangan Sistem .............................................................. 17
3.2 Perancangan database.................................................................................. 21
BAB IV PENUTUP .............................................................................................. 23
4.1 Kesimpulan ................................................................................................. 23
4.2 Saran ............................................................................................................ 23
DAFTAR PUSTAKA ........................................................................................... 24

iii

DAFTAR GAMBAR

Gambar 2.3.1 Tahapan Waterfall ............................................................................ 6


Gambar 2.4.1 Contoh Cara Kerja Java.................................................................. 10
Gambar 3.1.1 Identitas Konsumen ........................................................................ 19
Gambar 3.1.2 Kebutuhan Kalori Konsumen ......................................................... 19

iv

DAFTAR TABEL

Tabel 2.2.1 Tabel ERD............................................................................................ 6


Tabel 3.2.1 Tabel Admin ...................................................................................... 21
Tabel 3.2.2 Tabel Konsumen ................................................................................ 21
Tabel 3.2.3 Tabel Makanan ................................................................................... 21
Tabel 3.2.4 Tabel Pemesanan................................................................................ 22
Tabel 3.2.5 Tabel Pembayaran .............................................................................. 22

BAB I
PENDAHULUAN

1.1 Latar Belakang


Dizaman sekarang banyak berbagai dagangan , warung , restaurant , dan tokotoko yang menjual makanan yang menurut mereka yang bergizi dan baik menurut
mereka. Kita misalkan sebagai pembeli akan kebingungan memilih makanan untuk
dimakanan maka dari itu Kebutuhan akan asupan nutrisi merupakan salah satu
kebutuhan mendasar bagi manusia untuk bertahan hidup. Nutrisi tersebut juga harus
memiliki persyaratan kelengkapan gizi untuk pemenuhan secara sempurna bagi
seseorang dalam melengkapi kebutuhan nutrisi. Namun terkadang kebutuhan akan
nutrisi tersebut terhambat manakala terjadi gangguan pada sistem pencernaan.
Gangguan tersebut utamanya adalah gangguan pada saluran cerna. Jika seseorang
mengalami gangguan saluran cerna, maka harus ada langkah rehabilitasi, salah satu
caranya yaitu dengan melakukan diet sehat. Banyak masyarakat yang meinginkan
makanan sehat atau ingin melakukan diet akan tetapi kebanyakan masayrakat yang
awam masih kurang mengerti bagimana komposisi asupan nutrisi tersebut atau cara
pembagian makanan seperti empat sehat lima sempurna.
Maka dari itu dengan perkembangan teknologi sekarang maka dari kelompok
kami ingin mempermudahkan masyarakat untuk cara mendapatkan asumsi
makanan sehat terutama makanan empat sehat lima sempurna, maka program
tersebut adalah Warung Diet. Warung Diet tersebut pengguna akan dituntun
bagaimana cara proses Diet atau ingin melakukan hidup makan Sehat yang sesuai
kebutuhan pengguna. Dimana Warung Diet salah satunya ada kategori berdasarkan
umur yang tidak menyukai sayur dapat diurutkan secara membesar sebagai berikut
yaitu remaja, anak-anak, dewasa dan orang tua. Berdasarkan kategori tersebut tiga
peringkat teratas adalah remaja, anak-anak dan dewasa. Sedangkan pada tiga
peringkat teratas tersebut adalah usia-usia produktif dan calon-calon tunas bangsa
berikutnya yang perlu diberikan nutrisi yang bergizi tinggi dan sehat untuk
mendukung pertumbuhan dan perkembangan tubuh dan otak.

1.2 Rumusan Masalah


1. Apa saja yang dapat dilakukan oleh aplikasi ini?
2. Apa saja manfaat dari penerapan aplikasi ini?
3. Apa saja kelebihan dari aplikasi ini?
4. Bagaimana dasar aplikasi ini menampilkan rekomendasi menu bagi
pelanggan?

1.3 Tujuan
1. Membantu masyarakat untuk mendapatkan makanan dengan takaran gizi
yang sesuai dengan kondisi tubuh mereka
2. Menciptakan budaya hidup sehat dengan makan makanan dengan takaran gizi
yang tepat

1.4 Manfaat
1. Membuat kita melek terhadap pentingnya gizi
2. Mendapatkan kesehatan dari asupan gizi yang tepat dan sudah diatur
berdasarkan kondisi tubuh
3. Memudahkan masyarakat untuk memilih makanannya apabila mereka ingin
berdiet

BAB II
LANDASAN TEORI
2.1 Aplikasi Desktop
2.1.1 Pengertian Aplikasi Berbasis Desktop
Aplikasi

merupakan suatu

subkelas dari perangkat

lunak

yang

memanfaatkan kemampuan computer dalam melakukan suatu tugas tertentu.


Contoh aplikasi adalah pengolah data, lembar kerja, dan pemutar media. (IT update,
2012).
Aplikasi desktop adalah aplikasi yang dapat berjalan secara sendiri atau
independen dalam sistem desktop komputer atau laptop dan dapat menjalankan
serangkaian aktivitas dengan diatur oleh pengguna. (Neobytesolutions, 2012).
Pemilihan aplikasi berbasis desktop biasanya ditujukan kepada mereka
yang memiliki koneksi internet yang kurang baik dan sangat peduli dengan
keamanan system. (Joy, 2011).

2.1.2 Tahapan Pembuatan Aplikasi


a. Perencanaan, proses perencanaan ini adalah proses pemilihan design yang
akan dibuat dan arsitektur database. Hal-hal yang perlu dilakukan mencakup
pekerjaan pengumpulan data yang akan ditampilkan pada aplikasi yang
akan direncanakan. Data-data yang diperoleh kemudian dianalisa
berdasarkan karakteristik data dan kebutuhan (cepat tidaknya perubahan
data, tingkat kerumitan penampilan, dan bagaimana data akan ditampilkan).
b. Pembuatan, proses pembuatan aplikasi adalah proses pembuatan design
dan module yang berisi data-data yang diperoleh dari proses sebelumnya.
Hal-hal yang harus dilakukan terutama adalah pengaturan tata letak dan
struktur sistematika dan navigasi penyajian informasi.
c. Penempatan, implementasi dilakukan dengan melakukan penginstalan
aplikasi ke komputer yang bersangkutan. Dalam komputer server dilakukan
penginstalan database Server. Selain itu dilakukan juga testing (uji coba)
terhadap kelayakan aplikasi tersebut.

d. Perawatan, untuk menjamin aktualitas informasi yang disajikan, module


aplikasi perlu diawasi, dipromosikan, dikembangkan, dan diperbaharui
secara berkala. Hal ini diperlukan untuk mengatasi kerusakan-kerusakan

2.1.3 Kelebihan Menggunakan Aplikasi Berbasis Dekstop


a. Keamanan sistem lebih baik daripada aplikasi berbasis web dikarenakan
dengan menggunakan basis web, serangan virus atau keamanan password
yang dapat ditembus sehingga menimbulkan keraguan untuk mencoba
aplikasi berbasis web.
b. Fitur lebih lengkap dibanding aplikasi berbasis web.
c. Biaya pengeluaran dalam pembuatan aplikasi berbasis desktop lebih murah.
d. Kehandalan dari performa sistem yang lebih baik daripada aplikasi berbasis
web karena jika server aplikasi berbasis web sedang tidak bagus maka anda
akan mengalami gangguan dalam proses bisnis anda.
e. Akses secara offline sehingga lebih nyaman menggunakan aplikasi tanpa
perlu koneksi dengan internet.

2.1.4 Kekurangan Menggunakan Aplikasi Berbasis Dekstop


a. Apabila akan menjalankan aplikasi, harus diinstal terlebih dahulu di
komputer.
b. Bermasalah dengan lisensi. Hal ini membutuhkan lisensi yang banyak pada
setiap computer
c. Aplikasi tidak dapat dibuka di computer lain, jika belum diinstall
d. Biasanya memerlukan hardware dengan spesifikasi tinggi.

2.2 Entity Relationship Diagram (ERD)


Entity Relationship Diagram (ERD) adalah sekumpulan cara atau peralatan
untuk mendeskripsikan data-data atau objek-objek yang dibuat berdasarkan dan
berasal dari dunia nyata yang disebut entitas (entity) serta hubungan (relationship)
antar entitas-entitas tersebut dengan menggunakan beberapa notasi.
Komponen-komponen pembentuk ERD dapat di lihat pada tabel 1 di bawah
ini.

Notasi

Komponen
Entitas

Keterangan
Individu yang mewakili suatu
objek dan dapat dibedakan
dengan objek yang lain.

Atribut

Properti yang dimiliki oleh suatu


entitas,

dimana

mendeskripsikan

dapat

karakteristik

dari entitas tersebut.


Relasi

Menunjukkan

hubungan

diantara sejumlah entitas yang


berbeda.
Relasi 1 : 1

Relasi

yang

menunjukkan

bahwa

setiap

entitas

himpunan

entitas

berhubungan
banyak

pertama

dengan

satu

pada

entitas

paling
pada

himpunan entitas kedua


Relasi 1 : N

Relasi

yang

menunjukkan

bahwa hubungan antara entitas


pertama dengan entitas kedua
adalah satu banding banyak atau
sebaliknya. Setiap entitas dapat
berelasi dengan banyak entitas
pada himpunan entias yang lain
Relasi N : N

Hubungan
bahwa

ini

setiap

menunjukkan
entitas

pada

himpunan entitas yang pertama


dapat

berhubungan

dengan

banyak entitas pada himpunan

entitas yang kedua, demikian


juga sebaliknya

Tabel 2.2.1 Tabel ERD

2.3 Metodelogi Model Waterfall


2.3.1 Pengertian Model Waterfall
Waterfall atau AIR terjun adalah model yang dikembangkan untuk
pengembangan perangkat lunak, membuat perangkat lunak. model berkembang
secara sistematis dari satu tahap ke tahap lain dalam mode seperti air terjun. Model
ini mengusulkan sebuah pendekatan kepada pengembangan software yang
sistematik dan sekuensial yang mulai dari tingkat kemajuan sistem pada seluruh
analisis, desain, kode, pengujian dan pemeliharaan. Model ini melingkupi aktivitasaktivitas sebgai berikut : rekayasa dan pemodelan sistem informasi, analisis
kebutuhan, desain, koding, mengujian dan pemeliharaan. Model pengembangan ini
bersifat linear dari tahap awal pengembangan system yaitu tahap perencanaan
sampai tahap akhir pengembangan system yaitu tahap pemeliharaan. Tahapan
berikutnya tidak akan dilaksanakan sebelum tahapan sebelumnya selesai
dilaksanakan dan tidak bisa kembali atau mengulang ke tahap sebelumnya.

2.3.2 Tahapan Waterfall

Gambar 2.3.1 Tahapan Waterfall


Roger S. Pressman memecah model ini menjadi 6 tahapan meskipun secara
garis besar sama dengan tahapan-tahapan model waterfall pada umumnya. Berikut

adalah Gambar dan penjelasan dari tahap-tahap yang dilakukan di dalam model ini
menurut Pressman:
a. System / Information Engineering and Modeling. Permodelan ini diawali
dengan mencari kebutuhan dari keseluruhan sistem yang akan diaplikasikan ke
dalam bentuk software. Hal ini sangat penting, mengingat software harus dapat
berinteraksi dengan elemen-elemen yang lain seperti hardware, database, dsb.
Tahap ini sering disebut dengan Project Definition.
b. Software Requirements Analysis. Proses pencarian kebutuhan diintensifkan
dan difokuskan pada software. Untuk mengetahui sifat dari program yang akan
dibuat, maka para software engineer harus mengerti tentang domain informasi
dari software, misalnya fungsi yang dibutuhkan, user interface, dsb. Dari 2
aktivitas tersebut

(pencarian kebutuhan sistem dan software) harus

didokumentasikan dan ditunjukkan kepada pelanggan.


c. Design. Proses ini digunakan untuk mengubah kebutuhan-kebutuhan diatas
menjadi representasi ke dalam bentuk blueprint software sebelum coding
dimulai. Desain harus dapat mengimplementasikan kebutuhan yang telah
disebutkan pada tahap sebelumnya. Seperti 2 aktivitas sebelumnya, maka proses
ini juga harus didokumentasikan sebagai konfigurasi dari software.
d. Coding. Untuk dapat dimengerti oleh mesin, dalam hal ini adalah komputer,
maka desain tadi harus diubah bentuknya menjadi bentuk yang dapat dimengerti
oleh mesin, yaitu ke dalam bahasa pemrograman melalui proses coding.
Tahapan inilah yang merupakan tahapan secara nyata dalam mengerjakan suatu
sistem.Dalam artian penggunaan computer akan dimaksimalkan dalam tahapan
ini. Setelah pengkodean selesai maka akan dilakukan testing terhadap sistem
yang telah dibuat tadi. Tujuan testing adalah menemukan kesalahan-kesalahan
terhadap system tersebut dan kemudian bisa diperbaiki.
e. Testing / Verification. Sesuatu yang dibuat haruslah diujicobakan. Demikian
juga dengan software. Semua fungsi-fungsi software harus diujicobakan, agar
software bebas dari error, dan hasilnya harus benar-benar sesuai dengan
kebutuhan yang sudah didefinisikan sebelumnya.
f. Maintenance. Pemeliharaan suatu software diperlukan, termasuk di dalamnya
adalah pengembangan, karena software yang dibuat tidak selamanya hanya

seperti itu. Ketika dijalankan mungkin saja masih ada errors kecil yang tidak
ditemukan sebelumnya, atau ada penambahan fitur-fitur yang belum ada pada
software tersebut. Pengembangan diperlukan ketika adanya perubahan dari
eksternal perusahaan seperti ketika ada pergantian sistem operasi, atau perangkat
lainnya.

2.3.3 Karakteristik Waterfall


Dalam model ini terdapat beberapa sifat-sifat yang menojol dan cenderung
menjadi permasalahan pada model waterfall.
a. Ketika problem muncul, maka proses berhenti karena tidak dapat menuju ke
tahapan selanjutnya. Apabila terdapat kemungkinan problem tersebut
muncul akibat kesalahan dari tahapan sebelumnya, maka proses harus
membenahi tahapan sebelumnya agar problem ini tidak muncul.
b. Karena pendekatannya secara sequential, maka setiap tahap harus menunggu
hasil dari tahap sebelumnya. Hal itu tentu membuang waktu yang cukup
lama, artinya bagian lain tidak dapat mengerjakan hal lain selain hanya
menunggu hasil dari tahap sebelumnya.

2.3.4 Kelebihan Waterfall


a. Merupakan model pengembangan paling handal dan paling lama digunakan.
b. Dokumen pengembangan sistem sangat terorganisir, karena setiap fase
harus terselesaikan dengan lengkap sebelum melangkah ke fase berikutnya.
Jadi setiap fase atau tahapan akan mempunyai dokumen tertentu.
c. Cocok untuk system software yang bersifat generic.
d. Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol

2.3.5 Kekurangan Waterfall


a. Waktu pengembangan lama. hal ini dikarenakan input tahap berikutnya
adalah output dari tahap sebelumnya. Jika satu tahap waktunya molor, maka
waktu keseluruhan pengembangan juga ikut molor.

b. Karena tahap-tahapan pada waterfall tidak dapat berulang, maka model ini
tidak cocok untuk pemodelan pengembangan sebuah proyek yang memiliki
kompleksitas tinggi.
c. Diperlukan majemen yang baik, karena proses pengembangan tidak dapat
dilakukan secara berulang sebelum terjadinya suatu produk..
d. Kesalahan kecil akan menjadi masalah besar jika tidak diketahui sejak awal
pengembangan.
e. Pelanggan sulit menyatakan kebutuhan secara eksplisit sehingga tidak dapat
mengakomodasi ketidakpastian pada saat awal pengembangan.

2.4 JAVA
2.4.1 Pengertian JAVA
Java adalah bahasa pemrograman tingkat tinggi yang berorientasi objek dan
program java tersusun dari bagian yang disebut kelas. Kelas terdiri atas metodemetode yang melakukan pekerjaan dan mengembalikan informasi setelah
melakukan tugasnya. Para pemrogram Java banyak mengambil keuntungan dari
kumpulan kelas di pustaka kelas Java, yang disebut dengan Java Application
Programming
sekelompok

Interface (API).
yang

disebut

Kelas-kelas

ini

paket(package). Java

diorganisasikan
API telah

menjadi

menyediakan

fungsionalitas yang memadai untuk menciptakan applet dan aplikasi canggih. Jadi
ada dua hal yang harus dipelajari dalam Java, yaitu mempelajari bahasa Java dan
bagaimana mempergunakan kelas pada Java API. Kelas merupakan satu-satunya
cara menyatakan bagian eksekusi program, tidak ada cara lain. Pada Java program
javac untuk mengkompilasi file kode sumber Java menjadi kelas-kelas bytecode.
File kode sumber mempunyai ekstensi *.java. Kompilator javac menghasilkan
file bytecode kelas dengan ekstensi *.class. Interpreter merupakan modul utama
sistem Java yang digunakan aplikasi Java dan menjalankan program bytecode Java.

2.4.2 Kegunaan JAVA


Bahasa Pemrograman JAVA digunakan untuk membuat seluruh bentuk
aplikasi, dekstop, web dan lainnya, sebagai mana dibuat dengan menggunakan
bahasa pemrograman konvensional lainnya.

10

2.4.3 Cara Kerja JAVA


Kode pada bahasa pemograman Java ditulis dalam file teks dan disimpan
dengan nama file yang sama persis dengan nama.classnya serta diberikan ekstensi
(*.java). File tersebut dikompile dengan compiler java (javac) sehingga akan
menghasilkan 1 file dengan ekstensi class (*.class). file berekstensi class (*.class)
yang akan dijalankan diatas Java Mechanic Virtual (JVM) dengan menggunakan
java menggunakan java louncher tool (java)

Gambar 2.4.1 Contoh Cara Kerja Java


2.4.4 Software software yang digunakan
Software-software yang digunakan dalam menjalakan JAVA ini yaitu
Netbeans, JCreator, Eclipse, Geany, IntelliJ Idea.

2.4.5 Kelebihan JAVA


a. Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di
beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis
sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup
menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang
dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya
dapat dijalankan di atas beberapa platform tanpa perubahan.
b.

OOP (Object Oriented Programming - Pemrogram Berorientasi Objek)

c.

Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan


library/perpustakaan (kumpulan program program yang disertakan dalam
pemrograman java) yang sangat memudahkan dalam penggunaan oleh para
pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini
ditambah dengan keberadaan komunitas Java yang besar yang terus

11

menerus membuat perpustakaan-perpustakaan baru untuk melingkupi


seluruh kebutuhan pembangunan aplikasi..
d.

Dalam Bergaya C++, memiliki sintaks seperti bahasa pemrograman C++


sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini
pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang
pindah ke Java. Universitas-universitas di Amerika Serikat juga mulai
berpindah dengan mengajarkan Java kepada murid-murid yang baru karena
lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang
bukan mengambil jurusan komputer.

2.4.6 Kekurangan JAVA


a.

Tulis sekali, jalankan di mana saja - Masih ada beberapa hal yang
tidak kompatibel antara platform satu dengan platform lain. Untuk
J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak
berfungsi pada Mac OS X.

b. Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari


kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi
Java merupakan bytecode yang menyimpan banyak atribut bahasa
tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang
sama juga terjadi pada Microsoft .NET Platform. Dengan demikian,
algoritma yang digunakan program akan lebih sulit disembunyikan dan
mudah dibajak/direverse-engineer.
c.

Penggunaan memori yang banyak. Penggunaan memori untuk


program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi
generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi,
Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi
pihak yang menggunakan teknologi terbaru (karena trend memori
terpasang makin murah), tetapi menjadi masalah bagi mereka yang
masih harus berkutat dengan mesin komputer berumur lebih dari 4
tahun.

12

2.5 MySQL
2.5.1 Pengertian MySQL
MySQL adalah sebuah server database open source yang terkenal yang
digunakan berbagai aplikasi terutama untuk server atau membuat WEB. MySQL
berfungsi sebagai SQL (Structured Query Language) yang dimiliki sendiri dan
sudah diperluas oleh Mysql umumnya digunakan bersamaan dengan PHP untuk
membuat aplikasi server yang dinamis dan powerfull. Tidak sama dengan proyekproyek seperti Apache, dimana perangkat lunak dikembangkan oleh komunitas
umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing,
MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia MySQL
AB, dimana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang
Swedia dan satu orang Finlandia yang mendirikan MySQL AB tersebut adalah:
David Axmark, Allan Larsson, dan Michael Monty Widenius.
MySQL adalah sebuah implementasi dari sistem manajemen basisdata
relasional (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL
(General Public License). Setiap pengguna dapat secara bebas menggunakan
MySQL, namun dengan batasan perangkat lunak tersebut tidak boleh dijadikan
produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan
salah satu konsep utama dalam basisdata yang telah ada sebelumnya;
SQL(Structured Query Language). SQL adalah sebuah konsep pengoperasian
basisdata, terutama untuk pemilihan atau seleksi dan pemasukan data, yang
memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.
Kehandalan suatu sistem basisdata (DBMS) dapat diketahui dari cara kerja
pengoptimasi-nya dalam melakukan proses perintah-perintah SQL yang dibuat oleh
pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai
peladen basis data, MySQL mendukung operasi basisdata transaksional maupun
operasi basisdata non-transaksional. Pada modus operasi non-transaksional,
MySQL dapat dikatakan unggul dalam hal unjuk kerja dibandingkan perangkat
lunak peladen basisdata kompetitor lainnya. Namun demikian pada modus nontransaksional tidak ada jaminan atas reliabilitas terhadap data yang tersimpan,
karenanya modus non-transaksional hanya cocok untuk jenis aplikasi yang tidak
membutuhkan reliabilitas data seperti aplikasi blogging berbasis web (wordpress),

13

CMS, dan sejenisnya. Untuk kebutuhan sistem yang ditujukan untuk bisnis sangat
disarankan untuk menggunakan modus basisdata transaksional, hanya saja sebagai
konsekuensinya unjuk kerja MySQL pada modus transaksional tidak secepat unjuk
kerja pada modus non-transaksional.

2.5.2 Kelebihan MySQL


1. Portabilitas
MySQL dapat berjalan stabil pada berbagai sistem operasi seperti
Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih
banyak lagi.
2. Perangkat Lunak Sumber Terbuka
MySQL didistribusikan sebagai perangkat lunak sumber terbuka,
dibawah lisensi GPL sehingga dapat digunakan secara gratis.
3. Multi-user
MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang
bersamaan tanpa mengalami masalah atau konflik.
4. Performance tuning
MySQL memiliki kecepatan yang menakjubkan dalam menangani
query sederhana, dengan kata lain dapat memproses lebih banyak SQL per
satuan waktu.
5. Ragam Tipe Data
MySQL memiliki ragam tipe data yang sangat kaya, seperti signed /
unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
6. Perintah dan Fungsi
MySQL memiliki operator dan fungsi secara penuh yang mendukung
perintah Select dan Where dalam perintah (query).
7. Keamanan
MySQL memiliki beberapa lapisan keamanan seperti level subnetmask,
nama host, dan izin akses user dengan sistem perizinan yang mendetail serta
sandi terenkripsi.
8. Skalabilitas dan Pembatasan

14

MySQL mampu menangani basis data dalam skala besar, dengan jumlah
rekaman (records) lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris.
Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap
tabelnya.
9. Konektivitas
MySQL dapat melakukan koneksi dengan klien menggunakan
protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT).
10. Lokalisasi
MySQL dapat mendeteksi pesan kesalahan pada klien dengan
menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa
Indonesia belum termasuk di dalamnya.
11. Antar Muka
MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan
bahasa pemrograman dengan menggunakan fungsi API (Application
Programming Interface).
12. Klien dan Peralatan
MySQL dilengkapi dengan berbagai peralatan (tool)yang dapat
digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada
disertakan petunjuk online.
13. Struktur Tabel
MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani
ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL
ataupun Oracle.

2.5.3 Kekurangan MySQL


1. Untuk koneksi ke bahasa pemrograman visual seperti vb, delphi, dan
foxpro, mysql kurang support, karena koneksi ini menyebabkan field yang
dibaca harus sesuai dengan koneksi dari program visual tersebut, dan ini
yang menyebabkan mysql jarang dipakai dalam program visual.
2. Data yang ditangani belum begitu besar

15

3. Dari sisi security , atau keamanan, yang agak terlalu sederhana bagi sebuah
SQL Engine , meskipun tidak sesederhana SQLite yang juga datang dari
dunia Open Source dan cukup digemari para Web Developer .

BAB III
PEMBAHASAN
3.1 Analisis Sistem
3.1.1 Identifikasi Masalah
Identifikasi masalah merupakan langkah awal yang dilakukan dalam tahap
analisis sistem. Dari hasil penelitian yang dilakukan mengenai sistem penjualan
buku pada PT. Permata Batam, penulis menemukan beberapa masalah antara lain:
1. Seiring perkembangan zaman, manusia mulai mengabaikan kesehatan
terutama masalah makanan
2. Kurangnya kepedulian terhadap asupan kalori yang masuk ke tubuh melalui
makanan yang dikonsumsi sehari-hari
3. Banyak tempat makan yang kurang memperhatikan nilai gizi dan asupan
kalori bagi konsumen
4. Manusia tidak tahu jumlah kalori yang dibutuhkan sesuai dengan kondisi
fisik.

3.1.2 Analisis Kebutuhan


a. Kebutuhan Antar Muka
Kebutuhan-kebutuhan untuk pengembangan perangkat lunak Warung
Diet ini sebagai berikut:
1. Perangkat lunak harus mampu membaca data kunci pada saat proses
pemasukan data, penghitungan data, dan penampilan data.
2. Perangkat lunak yang akan dibangun harus mempunyai tampilan dengan
fungsi yang jelas bagi pemakai.
3. Perangkat lunak harus mampu menyimpan data yang dimasukan oleh
konsumen ke dalam storage.
4. Ada proses dalam perangkat lunak yang mampu membaharui semua
data yang disimpan dalam storage.
5. Perangkat lunak harus dapat menghitung dan menampilkan data yang
sesuai dengan kebutuhan kalori konsumen.

16

17

b. Kebutuhan Data
Data yang diolah oleh perangkat lunak ini adalah:
1. Data berat badan dan tinggi badan konsumen yang akan dihitung untuk
dapat menentukan berat ideal dan asupan kalori yang dibutuhkan oleh
konsumen untuk setiap makanan.
2. Data transaksi warung oleh semua fungsi perangkat lunak yaitu tabel
menu makanan dan tabel data konsumen.
3. Data ideal merupakan informasi yang akan memproses menu makanan
ideal, dari tabel berat badan dan tabel tinggi badan.

c. Kebutuhan Fungsional
Penjelasan proses fungsi adalah suatu bagian yang menyesiakan
informasi berupa penjelasan secara terinci setiap fungsi yang digunakan
untuk menyeselesaikan masalah. Fungsi-fungsi yang dimiliki oleh
perangkat lunak ini adalah:
1. Mengelola otoritas menu makanan, yaitu data menu makanan yang
dimasukkan oleh admin lengkap dengan jumlah kalori per porsi yang
selanjutnya disimpan untuk ditampilkan sesuai kebutuhan konsumen.
2. Mengelola konsumen, yaitu mengelola pesanan makanan oleh
konsumen
3. Mengelola data berat badan ideal dan asupan kalori yang dibutuhkan,
data ini dihitung berdasarkan pemasukan berat badan dan tinggi badan
konsumen yang telah diinput yang selanjutkan akan ditampilkan menu
makanan dengan jumlah kalori yang sesuai.

3.1.3 Tahap Pengembangan Sistem


Aplikasi Warung Diet merupakan aplikasi yang berfungsi untuk membantu
masyarakat memulai pola hidup sehat dengan mengonsumsi makanan yang
memiliki asupan kalori yang cukup sesuai kondisi tubuh. Aplikasi ini menggunakan
metode waterfall untuk pengembangan sistem yang akan dibuat. Model/metode
waterfall sebenarnya adalah Linear Sequential Mode. Dalam model waterfall

18

terdapat beberapa tahapan dalam pengembangan perangkat lunak. Adapun tahapan


dalam model ini meliputi :
1.

System / Information Engineering and Modeling.


Pada tahap ini merupakan tahap pertama dan merupakan penentu tahap
tahap berikutnya. Pendefinisian projek pada tahap ini dilakukan bersama
sama dengan client bertujuan untuk merancang gambaran tentang sistem yang
akan dikerjakan nanti. Pendefinisian ini meliputi perangkat yang akan
digunakan adalah perangkat desktop, sehingga bahasa pemrograman yang
optimal digunakan adalah java. Kemudian menyusun Entity Relationship
Diagram-nya sehingga ada gambaran jelas untuk basis data yang akan
dirancang berelasi dengan aplikasi yang dibuat. Pada tahap ini juga segala
kebutuhan diaplikasikan ke dalam bentuk software seperti kebutuhan antar
muka, kebutuhan data, dan kebutuhan fungsional seperti yang sudah
dijelaskan sebelumnya. Pengambilan keputusan sudah mulai bisa dilakukan
karena data yang diperlukan sudah terpusat.

2.

Software Requirements Analysis.


Pada tahap ini, pembuatan aplikasi akan lebih diintensifkan dan difokuskan
pada software dimana akan dibuat gambaran mengenai aplikasi ini berupa hal
yang dibutuhkan dan rencana tampilan awal aplikasi yaitu menu makanan,
jumlah kalori makanan, penghitung berat badan ideal konsumen dan kalori
yang dibutuhkan. Tampilan yang akan dibuat berupa kolom id konsumen
dimana kolom itu akan terisi secara otomatis sesuai urutan kedatangan
konsumen. Selanjutnya akan ada kolom kosong bagi konsumen untuk
menginputkan berat badan dan tinggi badan untuk dapat menentukan berat
badan ideal dan kalori yang dibutuhkan. Setelah konsumen selesai menginput,
makan aplikasi akan memproses data yang selanjutkan dapat menampilkan
menu makanan yang sesuai.

3.

Design.
Pada tahap ini, proses perancangan desain antarmuka sudah mulai dilakukan.
Seperti yang sudah dijelaskan di tahap sebelumnya, aplikasi Warung Diet
memiliki 2 tampilan antarmuka, desain pertama merupakan tampilan saat
konsumen akan menginput kebutuhan dan desain kedua menampilkan hasil

19

inputan konsumen berupa menu makanan yang dapat dipilih oleh konsumen.
Desain-desain tersebut dapat dilihat pada gambar di bawah:

Gambar 3.1.1 Identitas Konsumen

Gambar 3.1.2 Kebutuhan Kalori Konsumen


Pada gambar 1 yaitu antarmuka awal yang dibuat untuk konsumen. Id
konsumen merupakan id yang dibuat secara otomatis oleh sistem secara urut.
Konsumen akan menginputkan nama, berat badan, tinggi badan dan umur.
Konsumen diharapkan memasukkan nilai berat badan, tinggi badan serta
umur secara benar adanya, karena nilai-nilai tersebut akan diproses sehingga

20

mendapatkan sebuah nilai yaitu nilai kalori yang dibutuhkan oleh konsumen
tersebut.
Pada gambar 2 yaitu antarmuka setelah gambar 1 yang akan muncul
ketika konsumen sudah menekan tombol enter pada gambar 1. Didalam
gambar 2 kalori yang dibutuhkan oleh konsumen akan ditampilkan oleh
sistem. Tabel makanan dengan kalori konsumen memiliki arti yaitu makananmakanan yang sesuai dengan kalori konsumen akan ditampilkan oleh sistem
beserta id dan harga makanan tersebut. Sehingga konsumen mengetahui
makanan-makanan apa saja yang tepat dikonsumsinya. Setelah konsumen
menentukan makanan yang ingin dibeli, konsumen akan mengetikkan id
makanan pada kolom ketik id makanan, serta secara otomatis sistem akan
menampilkan biaya yang dikeluarkan konsumen apabila ingin membeli
makanan tersebut.
4.

Coding.
Pada tahap ini, proses implementasi dari tahan design sudah mulai dikerjakan.
Aplikasi ini akan dibuat dengan bahasa pemrograman berbasis java oleh
programmer.

5.

Testing / Verification.
Pada tahap ini lebih memfokuskan pengujian fitur dan fungsional pada
aplikasi untuk memastikan apakah aplikasi sudah dapat bekerja secara
optimal atau tidak.

6.

Maintenance.
Pemeliharaan suatu software diperlukan, termasuk di dalamnya adalah
pengembangan, karena software yang dibuat tidak selamanya hanya seperti
itu. Ketika dijalankan mungkin saja masih ada errors kecil yang tidak
ditemukan sebelumnya, atau ada penambahan fitur-fitur yang belum ada pada
software tersebut. Pengembangan diperlukan ketika adanya perubahan dari
eksternal perusahaan seperti ketika ada pergantian sistem operasi, atau
perangkat lainnya.

21

3.2 Perancangan database


Perancangan database yang digunakan sebagai basis data pada aplikasi
Warung Diet yang divisualisasikan dalam bentuk tabel untuk diimplementasikan
ke dalam program. Rancangan basis data dapat dilihat pada tabel-tabel di bawah
ini.
Tabel Admin
Nama Field

Tipe Data

Keterangan

id_admin

int(10)

id dari setiap record

nama_admin

varchar(30)

nama dari setiap record

password_admin

varchar(30)

password admin

Tabel 3.2.1 Tabel Admin


Tabel Konsumen
Nama Field

Tipe Data

Keterangan

id_konsumen

int(10)

id dari setiap record

nama_konsumen

varchar(30)

nama konsumen

tinggi_konsumen

int(5)

tinggi konsumen

berat_konsumen

int(5)

berat konsumen

umur_konsumen

int(5)

umur konsumen

kalori_konsumen

float(12,2)

kalori

yang

dibutuhkan

konsumen
Tabel 3.2.2 Tabel Konsumen
Tabel Makanan
Nama Field

Tipe Data

Keterangan

id_makanan

int(10)

id dari setiap record

nama_makanan

varchar(30)

nama dari setiap record

kalori_makanan

float(12,2)

jumlah kalori makanan

harga_makanan

float(12,2)

harga satuan makanan

Tabel 3.2.3 Tabel Makanan


Tabel Pemesanan
Nama Field

Tipe Data

Keterangan

22

id_pesanan

int(10)

id dari setiap record

id_konsumen

int(10)

id konsumen

id_makanan

int(10)

id makanan

total

float(12,2)

total harga

Tabel 3.2.4 Tabel Pemesanan


Tabel Pembayaran
Nama Field

Tipe Data

Keterangan

id_pembayaran

int(10)

id dari setiap record

id_konsumen

int(10)

id konsumen

id_makanan

int(10)

id makanan

id_pesanan

int(10)

id pesanan

Tabel 3.2.5 Tabel Pembayaran

BAB IV
PENUTUP
4.1 Kesimpulan
Aplikasi Warung Diet merupakan aplikasi yang berfungsi untuk membantu
masyarakat memulai pola hidup sehat dengan mengonsumsi makanan yang
memiliki asupan kalori yang cukup sesuai kondisi tubuh. Tujuan utama dari
dibangunnya aplikasi ini adalah membantu masyarakat untuk mendapatkan
makanan dengan takaran gizi yang sesuai dengan kondisi tubuh mereka.
Dalam

pengembangannya,

digunakan

metode

waterfall

untuk

mengembangkan sistem yang digagas. Dalam pendefinisian sistem ini meliputi


perangkat desktop, sehingga bahasa pemrograman yang optimal digunakan adalah
java.
Aplikasi Warung Diet memiliki 2 tampilan antarmuka, desain pertama
merupakan tampilan saat konsumen akan menginput kebutuhan dan desain kedua
menampilkan output untuk konsumen berupa menu makanan yang dapat dipilih
oleh konsumen. Dengan aplikasi ini akan dirasakan manfaat kemudahan
masyarakat untuk memilih makanannya yang sesuai asupan gizi yang dianjurkan.

4.2 Saran
Kami menyarankan agar laporan ini dipergunakan sebagaimana mestinya bagi
kalangan ranah ilmu komputer maupun teknik informatika pada khususnya, dan
bagi pembaca pada umumnya. Kami berharap dengan laporan ini, pembaca dapat
memahami tentang gagasan aplikasi serta sistem yang digagas. Kami juga sangat
mengharapkan adanya saran dan kritik dari semua pihak, yang sifatnya membangun
guna lebih menyempurnakan laporan rancangan aplikasi ini.
Selain itu di dalam dunia teknologi segala sesuatu dapat terjadi karena jaman
sudah semakin berkembang membawa perubahan suatu teknologi ke arah positif
dan bahkan ke arah negatif. Kita seharusnya mampu mengendalikan diri agar tidak
memanfaatkan perubahan teknologi ke arah negatif yang merugikan orang lain.
Maka dari itu kita sebagai mahasiswa seharusnya mampu mengawal dan berperan
dalam perubahan teknologi ke arah positif untuk kemajuan generasi bangsa.

23

DAFTAR PUSTAKA
Universitas Sumatera Utara, _________________
http://library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00176IF%20Bab2001.pdf, diakses 25 Mei 2016, pada pukul 20.20 WITA
Noviyanto,ST, ________________
http://merlindriati.staff.gunadarma.ac.id/Downloads/files/34028/1_
Pengenalan_Java.pdf, diakses 25 Mei 2016, pada pukul 20.20 WITA
Universitas Sumatera Utara, ______________
http://repository.usu.ac.id/bitstream/123456789/27871/4/Chapter%
20II.pdf, diakses 25 Mei 2016, pada pukul 20.20 WITA

24

Anda mungkin juga menyukai