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
i
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
ii
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
iii
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
iv
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
v
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
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Dizaman sekarang banyak berbagai dagangan , warung , restaurant , dan toko-toko 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.
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
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.
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.
5
Notasi Komponen Keterangan
Entitas Individu yang mewakili suatu objek dan dapat dibedakan dengan objek yang lain.
Atribut Properti yang dimiliki oleh suatu
entitas, dimana dapat mendeskripsikan karakteristik dari entitas tersebut.
Relasi Menunjukkan hubungan diantara sejumlah entitas yang berbeda.
Relasi 1 : 1 Relasi yang menunjukkan
bahwa setiap entitas pada himpunan entitas pertama berhubungan dengan paling banyak satu entitas 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
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 aktivitas-aktivitas 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
7
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.
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
9
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
metode-metode 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 Interface (API). Kelas-kelas ini diorganisasikan menjadi
sekelompok yang disebut paket(package). Java API telah 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
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
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 demiki an,
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
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 proyek-proyek 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.
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.
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.
15
16
BAB III
PEMBAHASAN
3.1 Analisis Sistem3.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.
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
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.
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
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 makanan-makanan 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.
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
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
23
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.
24
DAFTAR PUSTAKA
Universitas Sumatera Utara, _________________
http://library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00176-IF%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, ______________