BAB IV PERANCANGAN SISTEM 4.1 Analisis Sistem Analisis sistem dapat didefinisikan sebagai uraian dari sistem informasi yang utuh ke dalam bagian bagian komponennya dengan maksud untuk mengidentifikasi dan mengevaluasi permasalahan permasalahan, kesempatan kesempatan, hambatan hambatan yang terjadi dan kebutuhan kebutuhan yang diharapkan sehingga dapat sesuai dengan kebutuhan. 4.1.1 Analisis Masalah Masalah seperti kekurangan ataupun kelebihan berat badan sering dialami oleh masyarakat. Bahkan kondisi seperti ini sering menimbulkan penyakit kronis yang malah dapat membahayakan kesehatan. Contohnya penyakit kronis yang mengikuti orang dengan kondisi badan kegemukan cukup beragam, di antaranya yang dominan adalah, hipertensi, serangan jantung, diabetes, dan beberapa jenis kanker. Untuk menghindari penyakit penyakit tersebut tidak sedikit dari mereka yang ingin mendapatkan berat badan yang ideal. Karena dengan berat badan yang ideal mereka akan mendapatkan banyak manfaat diantaranya mereka akan selalu menjaga pola hidup sehat yang akan menghindarkan dari resiko penyakit, 36
37 meningkatkan percaya diri, penampilan akan lebih manarik dan masih banyak lagi manfaat lainnya. Tapi masalahnya kebanyakan dari masyarakat tidak tahu apakah berat badan mereka sudah dalam keadaan normal atau ideal. Dan kebanyakan pula dari masyarakat yang kesulitan dalam mendapatkan informasi untuk mengetahui bagaimana cara yang baik untuk mendapatkan berat badan yang ideal, baik dari informasi pembatasan asupan kalori makanan maupun olah raga. Oleh karena itu untuk mempermudah masyarakat mendapatkan kebutuhan infromasi tersebut diperlukan sebuah sistem yang efektif, cepat dan mudah dalam mendapatkan informasi tersebut yaitu dengan aplikasi mobile. Karena dengan perangkat mobile, aplikasi ini dapat digunakan kapan saja dan dimana saja. 4.2 Perancangan Sistem Perancangan adalah suatu bagian dari metodologi pengembangan pembangunan suatu perangkat lunak yang dilakukan setelah tahapan untuk memberikan gambaran secara terperinci. Berdasarkan uraian diatas perancangan sistem merupakan tahapan dari siklus pengembangan sistem yang didefinisikan dari kebutuhan-kebutuhan fungsional dan persiapan untuk rancang bangun implementasi yang menggambarkan bagaimana suatu sistem dibentuk, yang dapat berupa penggambaran, perancangan, dan pembuatan sketsa atau pengaturan dari beberapa elemen yang terpisah kedalam satu kesatuan yang utuh dan berfungsi, juga menyangkut konfigurasi dari komponenkomponen perangkat keras dan perangkat lunak dari suatu sistem.
38 4.2.1 Tujuan Perancangan Sistem Tujuan dari pembuatan perancangan sistem Aplikasi Berat Badan Ideal adalah untuk menghasilkan suatu perangkat lunak berbasis mobile aplikasi android yang mampu : 1. Melahirkan konten aplikasi berat badan ideal pada operasi sistem android. 2. Memberikan kemudahan dalam menentukan kriteria berat badan, kebutuhan kalori, dan memberikan info kesehatan. 4.2.2 Gambaran Umum Sistem yang Diusulkan Pembuatan Aplikasi Berat Badan Ideal yang akan dibuat diharapkan mampu menentukan kriteria berat badan, kebutuhan kalori, dan memberikan info kesehatan secara umum yang akan diterapkan pada smartphone android. 4.2.3 Perancangan Sistem Yang Diusulkan Proses perancangan ini merupakan tahap awal dari perancangan aplikasi berat badan ideal yang dilakukan sebagai pemecahan masalah yang ada pada proses aplikasi berat badan ideal ketika digunakan.
39 4.2.3.1 Use Case Diagram System Menghitung Mengelola data User Info Kesehatan Gambar 4.1 Use Case Diagram Definisi Aktor Bisa dibuat dalam bentuk table berikut: Tabel 4.1 Definisi Aktor No Aktor Deskripsi 1 User Actor dapat menjalankan menu Hitung, Kelola data dan Info kesehatan.
40 Definisi Use case Bisa dibuat dalam bentuk table berikut: Tabel 4.2 Definisi Use Case No Use case Deskripsi Sistem menampilkan menu Hitung, kemudian sistem dapat menentukan 1 Menghitung kriteria berat badan, menghitung 2 Mengelola data kalori, dan memberikan info kesehatan setelah mendapat inputan dari user. Sistem menampilkan menu Kelola data, didalam menu ini terdapat history data user dari menu Hitung, yang dapat di kelola. Sistem menampilkan menu Info 3 Info Kesehatan Kesehatan yang dialamnya terdapat info kesehatan. Skenario Use Case No Use Case : 01 Nama Use Case : Menghitung Skenario :
41 Tabel 4.3 Skenario Use Case Menghitung Aksi Aktor Reaksi Sistem 1. Memilih menu hitung 2. Menampilkan layar hitung 3. Menginputkan data sesuai ketentuan dan memilih tombol Hitung 4. Mengecek valid tidak nya inputan data 5. Memproses data dari inputan user 6. Menampilkan output kelayar 7. Menerima output dan menyimpan data pada tombol Simpan 8. Menyimpan data user ke Data base 9. Menampilkan pesan data sukses di simpan 10. Memilih link untuk menerima output selanjutnya 11. Menampilkan output selanjutnya
42 Aksi Aktor Reaksi Sistem 12. Menerima output No Use Case : 02 Nama Use Case : Mengelola data (update data) Skenario : Tabel 4.4 Skenario Use Case Mengelola data (update data) Aksi Aktor Reaksi Sistem 1. Memilih menu Kelola data 2. Menampilkan layar Kelola data 3. Memilih menu Update 4. Menampilkan list record data user 5. Memilih/ klik record data yang akan di update. 6. Menampilkan detail history data 7. Mengupdate data dan memilih tombol simpan. 8. Menyimpan data ke Data base
43 Aksi Aktor Reaksi Sistem 9. Menampilkan pesan data sukses di simpan 10. Menampilkan record data yang telah di update. 11. Menerima output record data baru Nama Use Case : Mengelola data (delete data) Skenario : Tabel 4.5 Skenario Use Case Mengelola data (delete data) Aksi Aktor Reaksi Sistem 1. Memilih menu Kelola data 2. Menampilkan layar Kelola data 3. Memilih menu Delete 4. Menampilkan list record data user 5. Memilih/ klik record data yang akan di delete 6. Menampilkan detail history data 7. Delete data dan memilih tombol hapus.
44 Aksi Aktor Reaksi Sistem 8. Memproses data ke Data base 9. Menampilkan pesan data sukses di hapus 10. Menampilkan record data yang masih tersedia 11. Menerima output record data No Use Case : 03 Nama Use Case : Info Kesehatan Skenario : Tabel 4.6 Skenario Use Case Info Kesehatan Aksi Aktor Reaksi Sistem 1. Memilih menu Info kesehatan 2. Menampilkan layar Info Kesehatan 3. Memilih link info kesehatan 4. Menampilkan info kesehatan sesuai permintaan 5. Menerima info kesehatan
45 4.2.3.2 Activity Diagram User Sistem Pilih menu Hitung Menampilkan layar hitung Input data & pilih tombol hitung Validasi data invalid valid Memproses data Menampilkan output Menerima output & pilih tombol simpan Menyimpan data Menampilkan pesan data sukses di simpan Pilih link output selanjutnya Menampilkan output Menerima output Gambar 4.2 Activity Diagram Menghitung
46 User Sistem Pilih menu Kelola data Menampilkan layar Kelola data Memilih menu Update Menampilkan record data Memilih/ klik record data yang akan di update. Menampilkan detail history data update data dan memilih tombol simpan Menyimpan data ke Data base Menampilkan pesan data sukses di simpan Menampilkan record data yang telah di update. Menerima output Gambar 4.3 Activity Diagram Mengelola data (update data)
47 User Sistem Pilih menu Kelola data Menampilkan layar Kelola data Memilih menu Delete Menampilkan record data Memilih/ klik record data yang akan di Delete. Menampilkan detail history data Delete data dan memilih tombol hapus Memproses data ke Data base Menampilkan pesan data sukses di hapus Menampilkan record data Menerima output Gambar 4.4 Activity Diagram Mengelola data (delete data)
48 User Sistem Pilih menu Info kesehatan Menampilkan layar Info kesehatan Memilih link info kesehatan Menampilkan info kesehatan Menerima info kesehatan Gambar 4.5 Activity Diagram Info Kesehatan
49 4.2.3.3 Sequence Diagram - Sequence Diagram Menghitung User menu : AndroidDashboardDesign hitung : FormInputActivity db : AlmagHelper User 1 : Pilih Menu Hitung() 2 : Panggil Menu Hitung() 3 : Menampilkan Menu Hitung() 4 : Input Data dan Hitung() 5 : Validasi() 6 : Proses Data() 7 : Output1() 8 : Simpan Data() 10 : Pesan Data sukses disimpan() 9 : Data Sukses Disimpan() 12 : Output2() 11 : Pilih link Output 2() Gambar 4.6 Sequence Diagram Menghitung
50 - Sequence Diagram Mengelola data (update data) User menu : AndroidDashboardDesign kd : KelolaDataActivity data : Data hitung : FormInputActivity db : AlmagHelper User 1 : Pilih Menu Kelola Data() 2 : Panggil Kelola Data activity() 3 : Menampilkan Kelola Data activity() 4 : Memilih Menu Update() 5 : Panggil Record Data() 6 : Panggil Data() 8 : Menampilkan Record Data() 7 : Record Data() 9 : Pilih Record Data() 10 : Panggil Form() 11 : Panggil Data() 12 : Detail Data() 13 : Menampilkan Detail History Data() 14 : Update data dan Simpan() 15 : Simpan Data() 17 : Menampilkan Record Data Update() 16 : Data Sukses Disimpan() Gambar 4.7 Sequence Diagram Mengelola data (update data)
51 - Sequence Diagram Mengelola data (delete data) User menu: AndroidDashboardDesign kd: KelolaDataActivity data : Data del : FormDeleteActivity db : AlmagHelper User 1 : Pilih Menu Kelola Data() 2 : Panggil Kelola Data activty() 3 : Menampilkan Kelola Data activity() 4 : Memilih Menu Delete() 5 : Panggil Record Data() 6 : Panggil Data() 7 : Record Data() 8 : Menampilkan Record Data() 9 : Pilih Record Data() 10 : Panggil Form() 11 : Panggil Data() 13 : Menampilkan Detail History Data() 12 : Detail Data() 14 : Delete Data() 15 : Proses Data() 17 : Menampilkan Record Data() 16 : Data Sukses Dihapus() Gambar 4.8 Sequence Diagram Mengelola data (delete data)
52 - Sequence Diagram Info Kesehatan User menu: AndroidDashboardDesign kes : InfoKesehatanActivity User 1 : Pilih Menu Info Kesehatan() 2 : Panggil Info Kesehatan activity() 3 : Menampilkan Info Kesehatan activity() 4 : Pilih Link Info Kesehatan() 5 : Info Kesehatan() Gambar 4.9 Sequence Diagram Info Kesehatan
53 4.2.3.4 Class Diagram Class Diagram dibawah ini menggambarkan hubungan antar Class yang terdapat dalam suatu package com.androidhive.dashboard pada Aplikasi Berat Badan Ideal. DashboardLayout +int UNEVEN_GRID_PENALTY_MULTIPLIER +int mmaxchildheight +int mmaxchildwidth +DashboardLayout() +DashboardLayout() +DashboardLayout() +void onlayout() +void onmeasure() FormInputActivity +EditText tgl +EditText nama +EditText umur +EditText berat +EditText tinggi +EditText nilai +EditText kriteria +RadioButton pria +RadioButton wanita +Button hitung +Button ulang +TextView jkesimpulan +TextView kesimpulan +TextView jsolusi +TextView kalori +TextView infokal +RadioGroup jekel +AlmagHelper helper +String almagid +OnClickListener onsave +void load() +void oncreate() +void ondestroy() InfoDietActivity +void oncreate() 1 InfoIdealActivity +void oncreate() 1 1 InfoNaikActivity +void oncreate() AndroidDashboardDesign +void close() +void oncreate() KelolaDataActivity +Button update +Button delete +void oncreate() Data +String ID_EXTRA +DataUpdate.AlmagAdapter adapter +EditText berat +AlmagHelper helper +RadioGroup jekel +TextView jkesimpulan +TextView jsolusi +TextView kalori +TextView kesimpulan +EditText kriteria +Cursor model +EditText nama +EditText nilai +OnClickListener onsave +EditText tgl +EditText tinggi +EditText umur +void oncreate() +void ondestroy() +void onlistitemclick() AlmagAdapter +AlmagAdapter() +void bindview() +View newview() AlmagHolder +ImageView icon +TextView nama +View row +TextView tgl +AlmagHolder() +void populatefrom() InfoKaloriActivity +void oncreate() 1 n 1 LawalActivity +oncreate() AlmagHelper +String DATABASE_NAME +int SCHEMA_VERSION +AlmagHelper() +boolean delete() +Cursor getall() +String getberat() +Cursor getbyid() +String getjekel() +String getjkesimpulan() +String getjsolusi() +String getkalori() +String getkesimpulan() +String getkriteria() +String getnama() +String getnilai() +String gettgl() +String gettinggi() +String getumur() +void insert() +void oncreate() +void onupgrade() +void update() InfoKesehatanActivity +void oncreate() 1 1 PetunjukActivity +TextView text1 +TextView menu1 +TextView isimenu1 +TextView sumbermenu1 +TextView menu2 +TextView isimenu2 +TextView menu3 +TextView isimenu3 +TextView menu4 +TextView isimenu4 +TextView menu5 +TextView isimenu5 +void oncreate() FormDeleteActivity +String almagid +EditText berat +AlmagHelper helper +TextView infokal +RadioGroup jekel +TextView jkesimpulan +TextView jsolusi +TextView kalori +TextView kesimpulan +EditText kriteria +EditText nama +EditText nilai +OnClickListener onsave +RadioButton pria +EditText tgl +EditText tinggi +EditText umur +RadioButton wanita +void load() +void oncreate() +void ondestroy() Gambar 4.10 Class Diagram
54 4.2.3.5 Object Diagram cmenu : DashboardLayout la : LawalActivity int UNEVEN_GRID_PENALTY_MULTIPLIER = 10 int mmaxchildheight = 0 int mmaxchildwidth = 0 menu : AndroidDashboardDesign hitung : FormInputActivity EditText tgl= Sun Jun 03" EditText nama= edu EditText umur= 22" EditText berat= 66" EditText tinggi= 170" EditText nilai= 22.837370242214536" EditText kriteria= Normal RadioButton pria=1 RadioButton wanita=0 Button hitung Button ulang TextView jkesimpulan= KESIMPULAN TextView kesimpulan= "-Nilai BMI anda 22.837370242214536 -Artinya anda termasuk kriteria Normal -Dan berat badan anda sudah Ideal" TextView jsolusi= SOLUSI TextView kalori="untuk menjaga tubuh ideal diperlukan pembatasan asupan kalori. Dan kebutuhan kalori harian anda sebanyak 1670.6" TextView infokal= Klik disini untuk melihat rekomendasi asupan makanan dan olahraga sebagai panduan menjaga berat badan ideal" RadioGroup jekel=pria AlmagHelper helper=new AlmagHelper String almagid= getintent().getstringextra(data.id_extra) OnClickListener onsave diet : InfoDietActivity naik : InfoNaikActivity ideal : InfoIdealActivity kd : KelolaDataActivity Button update Button delete data : Data kal : InfoKaloriActivity String ID_EXTRA="com.androidhive.dashboard._ID" AlmagAdapter adapter=new AlmagAdapter EditText berat= 66" AlmagHelper helper=new AlmagHelper RadioGroup jekel=pria TextView jkesimpulan= KESIMPULAN TextView jsolusi= SOLUSI TextView kalori="untuk menjaga tubuh ideal diperlukan pembatasan asupan kalori. Dan kebutuhan kalori harian anda sebanyak 1670.6" TextView kesimpulan= "-Nilai BMI anda 22.837370242214536 -Artinya anda termasuk kriteria Normal -Dan berat badan anda sudah Ideal" EditText kriteria= Normal Cursor model=helper.getall() EditText nama= edu EditText nilai= 22.837370242214536" OnClickListener onsave EditText tgl= Sun Jun 03" EditText tinggi= 170" EditText umur= 22" aa :AlmagAdapter ah :AlmagHolder ImageView icon=pria TextView nama= edu" View row=row TextView tgl= Sun Jun 03" db : AlmagHelper kes : InfoKesehatanActivity String DATABASE_NAME="coba.db" int SCHEMA_VERSION=1 ptjk : PetunjukActivity TextView text1 TextView menu1 TextView isimenu1 TextView sumbermenu1 TextView menu2 TextView isimenu2 TextView menu3 TextView isimenu3 TextView menu4 TextView isimenu4 TextView menu5 TextView isimenu5 del : FormDeleteActivity String almagid= getintent().getstringextra(data.id_extra) EditText berat= 66" AlmagHelper helper=new AlmagHelper TextView infokal RadioGroup jekel=pria TextView jkesimpulan= KESIMPULAN TextView jsolusi= SOLUSI TextView kalori="untuk menjaga tubuh ideal diperlukan pembatasan asupan kalori. Dan kebutuhan kalori harian anda sebanyak 1670.6" TextView kesimpulan= "-Nilai BMI anda 22.837370242214536 -Artinya anda termasuk kriteria Normal -Dan berat badan anda sudah Ideal" EditText kriteria= Normal EditText nama= edu EditText nilai= 22.837370242214536" OnClickListener onsave RadioButton pria=1 RadioButton wanita=0 EditText tgl= Sun Jun 03" EditText tinggi= 170" EditText umur= 22" Gambar 4.11 Object Diagram
55 4.2.3.6 Component Diagram Component Diagram dibawah ini menggambarkan struktur dan hubungan antar komponen piranti lunak Aplikasi Berat Badan Ideal dalam suatu package. AndroIdeal.apk IDE Eclipse XML GUI com.androidhive.dashboard Java Development Kit (JDK) SQLite Android SDK Gambar 4.12 Component Diagram 4.2.3.7 Deployment Diagram Deployment Diagram dibawah ini menggambarkan komponen pada deploy dalam suatu infrastruktur sistem Aplikasi Berat Badan Ideal beserta hubungannya. Smartphone AndroIdeal.apk PC/ Laptop AndroIdeal Project IDE Eclipse OS Android Gambar 4.13 Deployment Diagram
56 4.2.4 Perancangan Antar Muka Perancangan dilakukan untuk menggambarkan, merencanakan, dan membuat sketsa atau pengaturan dari beberapa elemen yang terpisah ke dalam satu kesatuan yang utuh dan berfungsi. Perancangan ini merupakan hasil transformasi dari analisa ke dalam perancangan yang nantinya akan di implementasikan. Hal penting yang menjadi perhatian pada perancangan adalah bahwa rancangan yang dibuat diharapkan dapat digunakan dengan mudah oleh semua pengguna smartphone android. Tidak hanya seorang ahli dalam memainkan aplikasi android saja yang dapat menggunakan aplikasi ini, namun orang awam pun dengan mudah dapat memainkannya. Selain itu beberapa hal yang harus diperhatikan antara lain adalah kinerja program yang baik dalam mengoperasikan aplikasi yang dibuat. 4.2.4.1 Struktur Menu Pada perancangan struktur menu Aplikasi Berat Badan Ideal memiliki 5 menu utama diantaranya menu Hitung, Kelola data, Info kalori, Info kesehatan, dan Petunjuk.
57 androideal X Hitung Kelola Data Info Kalori Info Kesehatan Petunjuk Gambar 4.14 Rancangan Struktur Menu Aplikasi Berat Badan Ideal - Menu Kelola Data Pada menu kelola data terdapat 2 pilihan sub menu yaitu Update data dan Delete data. Menu Update data digunakan untuk menghubungkan ke laman data yang akan di ubah, sedangkan Menu Delete data digunakan untuk menghubungkan ke laman data yang akan di hapus.
58 androideal UPDATE DATA DELETE DATA Gambar 4.15 Rancangan Menu Kelola Data - Menu Info Kalori Pada menu Info kalori terdapat text dan gambar yang berisikan informasi mengenai kalori makanan dan olah raga. androideal Text Gambar Gambar 4.16 Rancangan Menu Info Kalori
59 - Menu Info Kesehatan Pada menu Info kesehatan terdapat pilihan text berlink mengenai informasi kesehatan secara umum. androideal Text 1 Text 2 Text... Gambar 4.17 Rancangan Menu Info Kesehatan - Menu Petunjuk Pada menu Petunjuk terdapat text mengenai petunjuk aplikasi. androideal Gambar Text Gambar 4.18 Rancangan Menu Petunjuk
60 4.2.4.2 Perancangan Input Perancangan input merupakan rancangan yang menggambarkan konversi data mentah menjadi output contoh Kegiatan input yang dilakukan dalam sistem ini adalah - Rancangan Input dalam menu Hitung oleh user androideal INPUT Tgl Nama Jenis Kelamin Pria Wanita Umur Berat (kg) Tinggi (cm) Hitung Ulang Gambar 4.19 Rancangan Input Pada Menu Hitung 4.2.4.3 Perancangan Output Perancangan output atau keluaran merupakan hal yang tidak dapat diabaikan, karena keluaran yang dihasilkan harus memudahkan bagi setiap unsur manusia yang membutuhkannya. - Rancangan Output dalam menu Hitung
61 OUTPUT Nilai BMI Kriteria Simpan KESIMPULAN SOLUSI Gambar 4.20 Rancangan Output Pada Menu Hitung