Sabtu, 27 Februari 2016

Tutorial Membuat Program Sederhana pada Aplikasi Android Studio

08.47 Posted by Kadek Meliantari No comments
Nama/NIM: Kadek Meliantari/1404505081
Jurusan/Fakultas/Perguruan Tinggi: Teknologi Informasi/Teknik/Universitas Udayana

Mata Kuliah: Pemrograman Mobile

Dosen: I Putu Agus Eka Pratama, S.T., M.T.

1.    Pastikan terlebih dahulu komponen-komponen yang di butuhkan sudah terinstall. Kemudian jalankan Android Studio. Ada yang perlu anda ketahui, Project pada Android Studio itu sama seperti Workspace pada Eclipse. Sedangkan Module pada Android Studio itu sama seperti Project pada Eclipse. Yang berarti satu project pada Android Studio bisa berisi banyak module, seperti satu workspace pada Eclipse bisa berisi banyak project.
2.    Jika kita di Welcome to Android Studio bisa memlih Start new Android Studio project
3.    Namun jika kita sedang membuka project Android yang lain kita bisa pilih File lalu  kita pilih New Project.

4.    Setelah itu isikan nama project, dan nama domain yang nantinya akan diconvert menjadi nama package. Kalian juga bisa memilih folder lokasi untuk menyimpan project ini. Setelah itu klik Next.

5.    Di halaman selanjutnya, anda akan diminta untuk memilih minimum SDK yang akan digunakan, saya menyarankan untuk memilih SDK Ice Cream Sandwich (Android 4.0.3). Kesediaan jenis SDK yang muncul di list sesuai dengan SDK apa saja yang telah anda download. Pada Android Studio juga akan otomatis ditampilkan persentase devices yang support dengan SDK yang kalian pilih, contoh di bawah SDK ICS support hampir 88% devices Android yang ada. Klik Next.

6.    Langkah berikutnya, anda akan memilih jenis Activity yang akan ditampilkan pada aplikasi Android buatan anda. Android Studio menyediakan banyak jenis template untuk tiap-tiap Activity, seperti MapActivity, FragmentActivity, FullScreen, dan lain sebagainya. Untuk keperluan tutorial ini kita pilih saja Empty Activity. Kemudian klik Next.

7.    Tahap ke tujuh adalah memberi nama untuk Activity Android anda, anda hanya perlu mengisi kolom “Activity Name”, dari situ otomatis Android Studio akan meng-generate nama untuk layout dan lain sebagainya. Jika sudah klik Finish.

Setelah tahap-tahap di atas selesai dijalankan, maka kalian akan masuk ke halaman utama Android Studio.

Pada gambar di atas akan terlihat layout dari aplikasi yang sedang anda buat langsung muncul di bagian tengah. Sedangkan pada bagian kiri adalah struktur project dari aplikasi Android yang sedang sedang buat. Pada Android Studio, struktur aplikasi akan dibagi menjadi beberapa elemen seperti di bawah :

Pada gambar itu, bisa dilihat struktur aplikasi Android tersebut mempunyai root di folder app, app itu adalah nama module dari aplikasi HelloWorld yang kita buat.

Bisa dilihat juga aplikasi Android di Android Studio mempunyai 3 folder utama, yaitu manifest, java, dan res. Tidak jauh berbeda dengan struktur pada Eclipse. Untuk penjelasannya sebagai berikut :
1.    Manifest : berisi file AndroidManifest.xml
2.    Java : berisi source code aplikasi Android yang kita buat dalam bentuk file .java. Perlu diketahui ada dua folder androidTest dan main, source code yang kita pakai berada pada folder main, bukan di androidTest.
3.    Res : kemudian folder res berisi file-file resource, seperti layout, drawable, dan sebagainya. Untuk file layout dan kebanyakan resource lain, Android menggunakan file .xml. Untuk resource drawable bisa berupa gambar (PNG/JPEG) bisa juga berupa file xml.
Untuk mengubah kata Hello World kita dapat mengubahnya dengan cara klik text pada properties yang berada di pojok kanan. Lalu ubah kata Hello World dengan apa yang anda inginkan.

Jika sudah, maka anda bisa menjalankan aplikasi yang telah anda buat. Untuk menjalankan aplikasi cukup dengan menekan Shift + F10, atau dengan mengklik tombol panah hijau pada toolbar bagian atas Android Studio.

Setelah di run maka tab baru yang mengharuskan anda untuk memilih emulator untuk aplikasi yang telah anda buat akan muncul. Maka pilih emulator yang akan di gunakan. Saya menggunakan emulator BlueStack karena menurut saya emulator ini tidak terlalu memakan banyak memori. Anda juga dapat memilih emulator bawaan dari Android Studio dengan memilih Launch Emulator beserta API yang akan di gunakan untuk menjalankan aplikasi anda.

Apabila pesan sukses telah muncul maka aplikasi yang telah anda buat akan berjalan dengan lancar.

Selamat mencoba!


Tutorial Melakukan Instalasi pada Aplikasi Android Studio

08.13 Posted by Kadek Meliantari No comments

Nama/NIM: Kadek Meliantari/1404505081

Jurusan/Fakultas/Perguruan Tinggi: Teknologi Informasi/Teknik/Universitas Udayana

Mata Kuliah: Pemrograman Mobile

Dosen: I Putu Agus Eka Pratama, S.T., M.T.

Android Studio merupakan lingkungan pengembangan Android baru berdasarkan IntelliJ IDEA. Mirip dengan Eclipse dengan ADT Plugin, Android Studio menyediakan alat pengembang terintegrasi untuk pengembangan dan debugging.

Android Studio menawarkan:
1.   Berbasis Gradle. 
2.    Android-spesifik refactoring dan perbaikan yang cepat. 
3.    Alat Lint untuk menangkap kinerja, kegunaan, versi kompatibilitas dan masalah lainnya. 
4.    ProGuard dan app-signature. 
5.    Wizard untuk design dan membuat komponen-komponen umum Sebuah layout editor yang memungkinkan untuk drag-and-drop komponen UI, pratinjau layout pada beberapa konfigurasi layar, dan banyak lagi.
6.    Built-in dukungan untuk Google Cloud platform , sehingga mudah untuk mengintegrasikan Google Cloud Messaging dan App Engine sebagai komponen server-side. 

Untuk menginstall Android Studio, ada beberapa file yang harus dipersiapkan terlebih dahulu, diantaranya adalah sebagai berikut,


1.    Java Depelopment Kit (JDK)
2.    Android Studio

Download JDK sesuaikan dengan windows yang digunakan. Misalnya windows 64-bit, download JDK-64 bit begitu pun untuk Windows 32-bit, download JDK-32 bit. Lalu install JDK tersebut seperti menginstall software pada umumnya.

Setelah JDK terinstall, selanjutnya adalah menginstall software Android Studio yang sudah didownload terlebih dahulu.

1.    Cara dengan klik 2x atau Run As Adimistrator kemudian Next.
2.    Pada opsi ini, anda dapat memilih untuk tidak memiliki perangkat virtual jika Anda berniat untuk menempatkan apk ke perangkat uji untuk pengujian, tapi saya sangat menyarankan menggunakan perangkat virtual untuk menguji terlebih dahulu.


3.    Klik I Agree pada License Agreement.

4.    Pilih lokasi dimana akan menyimpan file dari software ini, saran saya tidak perlu merubah apapun, klik next.
5.    Tahap ini anda dapat mengubah seberapa besar software ini membutuhkan RAM. Semakin besar RAM yang anda gunakan semakin cepat juga kinerja dari software ini. Apabila anda sudah menentukan seberapa besar alokasi RAM untuk software ini maka klik Next dan klik Install.

6.    Tunggu hingga proses instalasi selesai. Biasanya ini memakan waktu kurang lebih 20 menit.
7.    Jika sudah selesai maka klik Next lalu Finish.

8.    Sampai disini proses installasi sudah hampir selesai, sekarang hanya perlu menunggu proses download Android SDK. Pada tahap ini anda diwajibkan untuk memiliki koneksi internet. Mungkin proses ini akan memakan waktu 30 Menit sampai 1 Jam tergantung dari kecepatan koneksi internet anda.
9.    Setelah proses Download android SDK tadi telah selesai, maka software Android Studio sudah siap untuk digunakan.

10.  Selamat Ngoding!


Sabtu, 20 Februari 2016

Object Oriented Programming

07.33 Posted by Kadek Meliantari No comments

Nama/NIM: Kadek Meliantari/1404505081

Jurusan/Fakultas/Perguruan Tinggi: Teknologi Informasi/Teknik/Universitas Udayana

Mata Kuliah: Pemrograman Mobile

Dosen: I Putu Agus Eka Pratama, S.T., M.T.

1.1         Konsep Dasar Berorientasi Obyek


Sebelumnya mari kita definisikan dulu pengertian obyek. Obyek adalah “benda” secara fisik atau konseptual, yang dapat kita temui di sekeliling kita. Obyek adalah riil. Contoh obyek adalah orang, hardware, software, dokumen dan lain-lain.
Setiap obyek mempunyai dua ciri, yaitu atribut (property atau data) yang menjadi ciri khas dari suatu obyek (what they have) dan method (behavior/function), yaitu apa yang dapat dilakukan oleh obyek (what they do).
Berorientasi Obyek (object oriented) berarti permasalahan didefinisikan melalui istilah dari obyek yang mengkapsulasi data (atribut) dan perilaku (behavior), yaitu melalui paradigma/pendekatan obyek.
Selain object, ada beberapa istilah yang akan membantu untuk memahami pengertian kita dalam skripsi ini:
a.       Class, yaitu kumpulan obyek yang sejenis. Secara lebih lugas obyek adalah instant dari sebuah class, atau dengan pengertian lain dengan class kita menggambarkan property dan behavior dari tipe obyek.
b.      Inheritance, adalah penurunan atribut atau method dari suatu obyek class ke obyek class lainnya.
c.       Polymorphisme, berasal dari bahasa Yunani yang berarti banyak bentuk.
Dalam konsep ini memungkinkan digunakannya suatu interface yang sama untuk memerintah suatu obyek untuk melakukan suatu aksi  atau tindakan yang mungkin secara prinsip sama tetapi secara proses berbeda. Secara sederhana bisa juga disebut : satu interface, banyak aksi.

      Metodologi adalah cara sistematis untuk mengerjakan pekerjaan analisis dan desain. Metodologi berorientasi obyek adalah metode penyelesaian masalah dengan menggunakan pendekatan berorientasi obyek.
      Metodologi berorientasi obyek pertama kali muncul pada pertengahan tahun 1970 dan terus berkelanjutan dikembangkan sampai saat ini. Pada tahun 1994 ada 72 lebih metode object oriented. Dengan berkembang pesatnya metode ini maka masyarakat object oriented menyadari perlunya standarisasi.

1.2         Unified Modelling Language (UML)

      Pada Oktober 1994 Dr. James Rumbaugh yang mengembangkan Object Modelling Technique (OMT) bergabung dengan perusahaan Rational Software. Sebelumnya juga bergabung Grady Booch yang mengembangkan Object Modelling Design (OOD). Duet mereka pada Oktober 1995 menghasilkan Unified Method versi 0.8, yang menjadi cikal bakal dari UML (Unified Modelling language) sebagai bahasa pemodelan standar untuk aplikasi object oriented.
      Pada tahun 2002 lahir UML versi 2.0 dengan penambahan dan penggantian diagram menjadi 13 buah diagram. Diagram-diagram ini terbagi menjadi 3 kategori :
a.       Structural diagrams : menggambarkan elemen dari spesifikasi yang mengabaikan waktu. Terdiri dari : Class Diagram, Object Diagram, Component Diagram, Deployment Diagram, Composite Structure Diagram dan Package Diagram.
b.      Behavior diagram : menggambarkan ciri-ciri behavior/method/function dari sebuah system atau business process. Terdiri dari : Use Case Diagram, Activity Diagram dan State Machine Diagram.
c.       Interaction diagram : bagian dari behavior diagram yang menggambarkan object interactions. Terdiri dari : Communication Diagram, Interaction Overview Diagram, Sequence Diagram dan Timing Diagram.
      Karena UML sangat fleksibel, ada juga cara melihat diagram UML berdasar kategori berikut :
a.       Static Diagram : menunjukkan segi static dari system. Kategori ini sama dengan structural diagram.
b.      Dynamic Diagram : menunjukkan bagaimana system berkembang setiap waktu. Meliputi state-machine diagram dan timing diagram.
c.       Functional Diagram : menunjukkan detail dari perilaku (behavior) dan algoritma bagaimana system memenuhi perilaku yang diinginkannya. Kategori ini termasuk use case, interaction dan activity diagram.     

1.3         Analisa dan perancangan berorientasi obyek

      Analisa dan desain berorientasi obyek berarti merumuskan dan menyelesaikan masalah serta menghasilkan suatu hipotesa dan diagnosa (solusi), memodelkannya dengan pendekatan/paradigma obyek (obyek adalah riil punya atribut/data dan perilaku).

      Dalam melakukan analisa dan perancangan sistem berorientasi obyek penulis menggunakan UML (Unified Modelling Language) untuk memodelkannya. Sedangkan alat (tool) visual modelling yang digunakan untuk menggambarkan model analisa dan perancangan adalah Microsoft Visio 2007. Implementasi perangkat lunak menggunakan bahasa pemrograman PHP.

1.3.1        Analisa Berorientasi Obyek (Object Oriented Analysis)

      Object oriented analysis adalah metode analisis yang memeriksa requirements (syarat atau keperluan yang harus dipenuhi suatu sistem)
(Suhendar dan Hariman, 2002:11)
      Dalam tahap ini kegiatan-kegiatan yang dilakukan dalam menganalisa sistem sebagai berikut :
·         Menganalisa sistem yang ada dan mempelajari apa yang dikerjakan oleh sistem yang ada.
·         Menspesifikasikan sistem yaitu spesifikasi masukan yang digunakan database yang ada, proses yang dilakukan dan keluaran yang dihasilkan.

      Tujuan dari analisa berorientasi obyek yaitu untuk menentukan kebutuhan pemakai secara akurat.
      Pendekatan-pendekatan yang dipakai dalam analisa berorientasi obyek antara lain :
·         Pendekatan top down, yaitu memecahkan masalah ke dalam bagian-bagian terkecil atau per level sehingga mudah untuk diselesaikan.
·         Pendekatan modul, yaitu membagi sistem ke dalam modul-modul yang dapat beroperasi tanpa ketergantungan.
·         Penggunaan alat-alat bantu dalam bentuk grafik dan teks sehingga mudah untuk dimengerti serta dikoreksi apabila terjadi perubahan.
      Pendekatan dalam analisa berorientasi obyek dilengkapi dengan alat-alat dan teknik-teknik yang dibutuhkan dalam pengembangan sistem, sehingga hasil akhir dari sistem yang dikembangkan akan didapatkan sistem yang terdefinisi dengan baik dan jelas.

1.3.2        Use Case Diagram

Use case diagram menggambarkan kebutuhan sistem dari sudut pandang user. Digunakan untuk menggambarkan hubungan antara internal sistem dan eksternal sistem atau hubungan antara use case dan aktor.

1.3.2.1       Actor

Actor adalah sesuatu (entitas) yang berhubungan dengan sistem dan berpartisipasi dalam use case. Actor menggambarkan orang, sistem atau entitas eksternal yang secara khusus membangkitkan sistem dengan input atau masukan kejadian-kejadian, atau menerima sesuatu dari sistem. Actor dilukiskan dengan peran yang mereka mainkan dalam use case, seperti Staff, Kurir dan lain-lain.
Gambar 1.1. Bentuk Actor dalam UML

Dalam use case diagram terdapat satu aktor pemulai atau initiator actor yang membangkitkan rangsangan awal terhadap sistem, dan mungkin sejumlah aktor lain yang berpartisipasi atau participating actor. Akan sangat berguna untuk mengetahui siapa aktor pemulai tersebut.

1.3.2.2       Use Case

Use case yang dibuat berdasar keperluan aktor merupakan gambaran dari “apa” yang dikerjakan oleh sistem, bukan “bagaimana” sistem mengerjakannya. Use case diberi nama yang menyatakan apa hal yang dicapai dari interaksinya dengan aktor.
Dalam UML use case dinotasikan dengan gambar :

Gambar 1.2. Bentuk Use Case dalam UML

1.3.2.3       Relationship

Relasi (relationship) digambarkan sebagai bentuk garis antara dua simbol dalam use case diagram. Relasi antara actor dan use case disebut juga dengan asosiasi (association). Asosiasi  ini digunakan untuk menggambarkan bagaimana hubungan antara keduanya.
Relasi-relasi yang terjadi pada use case diagram bisa antara actor dengan use case atau use case dengan use case.   
                                     

Gambar 1.3. Bentuk Relationship dalam UML

Relasi antara use case dengan use case :
a.             Include, pemanggilan use case oleh use case lain atau untuk menggambarkan suatu use case termasuk di dalam use case lain (diharuskan). Contohnya adalah pemanggilan sebuah fungsi program. Digambarkan dengan garis lurus berpanah dengan tulisan <<include>>.
b.            Extend, digunakan ketika hendak menggambarkan variasi pada kondisi perilaku normal dan menggunakan lebih banyak kontrol form dan mendeklarasikan ekstension pada use case utama. Atau dengan kata lain adalah perluasan dari use case lain jika syarat atau kondisi terpenuhi. Digambarkan dengan garis berpanah dengan tulisan <<extend>>.
c.             Generalization/Inheritance, dibuat ketika ada sebuah kejadian yang lain sendiri atau perlakuan khusus dan merupakan pola berhubungan base-parent use case. Digambarkan dengan garis berpanah tertutup dari base use case ke parent use case.

1.3.3        Activity Diagram

      Diagram aktivitas menggambarkan proses bisnis dan urutan aktivitas-aktivitas yang mendukung penggambaran tindakan sistem baik yang bersifat kondisional maupun paralel. Tindakan kondisional dilukiskan dengan cabang (branch) dan penyatuan (merge).
      Sebuah branch memiliki sebuah transition masuk atau yang disebut dengan incoming transition dan beberapa transition keluar atau yang disebut dengan outgoing transition dari branch yang berupa keputusan-keputusan. Hanya satu dari outgoing transition yang dapat diambil, maka keputusan-keputusan tersebut harus bersifat mutually exclusive. [else] digunakan sebagai keterangan singkat yang menunjukkan bahwa transition “else” tersebut harus digunakan jika semua keputusan yang ada pada branch salah.
      Sebuah merge memiliki banyak input transition dan sebuah output. Merge menandakan akhir dari suatu kondisi yang diawali dengan sebuah branch. Selain branch dan merge, di dalam diagram aktivitas terdapat pula fork dan join. Fork memiliki satu incoming transition dan beberapa outgoing transition. Sedangkan pada join, outgoing transition diambil atau digunakan hanya ketika semua state pada incoming transition telah menyelesaikan aktivitasnya.

1.3.4        Sequence Diagram

      Diagram yang menggambarkan bagaimana obyek berinteraksi dengan obyek lainnya melalui pesan (message) yang disampaikan, disusun dalam urutan kejadian atau waktu dan secara khusus berasosiasi dengan use case.

1.3.5        Class Diagram

      Class diagram merupakan bagian yang paling penting dalm analisa dan perancangan berorientasi obyek. Dalam UML diagram kelas digunakan untuk memodelkan static structure dari sistem informasi.
      Kelas merupakan himpunan dari obyek yang sejenis yang mempunyai atribut (attribute) dan perilaku (behaviors/method) yang sama. Atribut adalah sebuah nilai data karakteristik yang dimiliki oleh obyek sebuah kelas sedangkan method adalah perilaku atau operasi yang dikenakan oleh suatu kelas. Pada gambar kelas terdapat tiga bagiannya.
Gambar 1.4. Bentuk Class dalam UML

      Diagram kelas menggambarkan struktur obyek sistem, dimana diperlihatkan hubungan amtar mereka. Diagram kelas merupakan fondasi untuk component diagram dan deployment diagram.
      Secara garis besar terdapat 3 jenis class. Ketiga jenis class tersebut dikelompokkan berdasarkan fungsi dan karakternya masing-masing, yaitu :
a.       Entity Class Diagram
Merupakan paket utama dari sistem yang berisi kumpulan kelas berupa entitas-entitas yang membentuk sistem dan menjadi landasan untuk menyusun basis data pada model data konseptual.

Gambar 1.5. Bentuk Entity Class dalam UML

b.      Control Class Diagram
Berisi kumpulan kelas yang menjadi kontrol program termasuk koneksi dengan basis data dan merupakan kelas perantara atau penghubung antara entity class dengan kelas antar muka pemakai (interface).
Gambar 1.6. Bentuk Control Class dalam UML

c.       Boundary Class Diagram
Berisi kumpulan kelas yang menjadi interface antara pemakai (user) dengan sistem, seperti tampilan form untuk pencetakan.
Gambar 1.7. Bentuk Boundary Class dalam UML

1.3.6        Package Diagram

      Package (paket) adalah mekanisme pengelompokan yang digunakan untuk menandakan pengelompokan elemen-elemen model. Sebuah package dapat mengandung beberapa paket lain di dalamnya. Package digunakan untuk memudahkan pengorganisasian elemen-elemen model.

1.3.7        Perancangan Berorientasi Obyek (Object Oriented Design)

      Object oriented design adalah metode untuk mengarahkan arsitektur software yang didasarkan pada manipulasi obyek-obyek sistem atau subsistem (Suhendar dan hariman, 2001:11).
      Perancangan berorientasi obyek merupakan proses spesifikasi yang terperinci atau pendefinisian dari kebutuhan-kebutuhan fungsional dan persiapan untuk rancang bangun implementasi yang menggambarkan bagaimana suatu sistem dibentuk. Untuk mengembangkan suatu sistem baru digunakan dengan menguraikan hubungan proses-proses dalam bentuk diagram-diagram.
Perancangan berorientasi obyek bertujuan untuk :
a.       Sistematika proses pendesainan
b.      Menghasilkan pendesainan model program
c.       Memberikan gambaran pemecahan masukan dengan efektif
Tahap-tahap yang dilakukan dalam perancangan berorientasi obyek adalah sebagai berikut :

1.3.7.1       Perancangan Basis Data

Merupakan tahap merancang basis data yang akan diterapkan oleh sistem. Berbeda dengan langkah-langkah yang dilakukan dalam perancangan sistem terstruktur, secara garis besar tahap dalam merancang basis data pada perancangan berorientasi obyek sebagai berikut :
Entity Relationship Diagram (ERD), digunakan untuk menggambarkan dan menjelaskan tentang hubungan antara penyimpanan data (data store) yang ada di dalam diagram aliran data. Komponen-komponen yang digunakan antara lain sebagai berikut :
a.       Entity Set
Pada Entity Relationship Diagram (ERD) digambarkan dengan sebuah bentuk persegi panjang. Entity set merupakan simbol utama dari ERD.  Entity adalah suatu obyek yang ada dalam suatu sistem nyata maupun abstrak dimana data terseimpan dan diberi nama dengan kata benda. Entity set adalah kumpulan entity yang sejenis. Secara umum entity set dapat dikelompokkan dalam beberapa kelas, yaitu : obyek, agen dan kejadian-kejadian yang ada di dalam sistem.
b.      Relationship Set
Pada Entity Relationship Diagram (ERD) setiap relationship set digambarkan dengan sebuah bentuk belah ketupat, dengan garis yang menghubungkan satu entity dengan entity lain yang terkait. Relationship set menunjukkan hubungan alamiah yang terjadi pada entity. Relationship set adalah kumpulan relationship yang sejenis. Pada umumnya relationship set diberi nama dengan kata kerja.
c.       Attribute
Secara umum attribute adalah sifat atau karakteristik dari setiap entity maupun relationship yang menyediakan penjelasan detail tentang entity atau relationship tersebut, sehingga sering dikatakan adalah elemen data dari entity dan relationship.
d.      Cardinality
Cardinality adalah tingkat hubungan antara entitas dan dilihat dari segi kejadian atau banyak tidaknya hubungan yang terjadi antara entity pada ERD. Ada tiga kemungkinan tingkat hubungan yang ada, yaitu :
a.             One To One (1:1)
Terjadi bila suatu entitas hanya memiliki sebuah hubungan dengan entitas lainnya dan hubungan dinyatakan satu pada satu kejadian.
b.            One To Many atau Many To One (1:M, M;1)
Terjadi apabila sebuah entitas memiliki banyak hubungan dengan entitas lain atau sebaliknya.
c.             Many To Many (M:N)
Terjadi apabila dua buah entitas memiliki banyak hubungan.

1.3.7.2       Normalisasi

Normalisasi adalah kegiatan mengelompokkan atribut-atribut sehingga terbentuk relasi berorientasi obyek dengan baik. Normalisasi juga merupakan proses untuk mengorganisasi file dengan menghilangkan group elemen atau proses menyederhanakan relationship antar elemen data di dalam tuple (record). Normalisasi banyak dilakukan dalam mengubah bentuk database dari suatu struktur jaringan menjadi struktur hubungan.
Konsep dan teknik normalisasi pertaman kali diperkenalkan oleh Dr. E. F. Codd dalam bentuk struktur hubungan. Istilah data hubungan menunjukkan suatu obyek data yang mempunyai hubungan dengan elemen-elemen data lainnya, baik dalam suatu file atau dalam file yang lain.
Tahapan-tahapan dalam normalisasi :
a.       Normalisasi bentuk pertama (First Normal Form / 1NF)
Yaitu menghilangkan beberapa group elemen berulang (repeating group) agar menjadi satu harga tunggal yang berinteraksi di antara setiap baris dan kolom pada suatu tabel dikatakan sudah berada pada 1 NF jika dan hanya jika semua nilai atributnya adalah atomic (tunggal).
b.      Normalisasi bentuk kedua (Second Normal Form / 2NF)
Yaitu menghilangkan beberapa bagian ketergantungan fungsional (functional dependency) atau dengan kata lain apabila sudah berada pada 1 NF dan setiap atribut yang bukan key, full functional dependency terhadap primary key.
c.       Normalisasi bentuk ketiga (Third Normal Form / 3NF)
Yaitu menghilangkan beberapa bentuk ketergantungan transitive (transitive dependency) atau dengan kata lain apabila sudah berada pada 2NF dan setiap atribut yang bukan key tidak tergantung pada atribut lain (tidak transitif) kecuali terhadap primary key (non transitively dependent terhadap primary key). Pada umumnya dalam tahap ini sudah memenuhi syarat untuk sebagian besar aplikasi database.
d.      Boyce-Codd Normal Form (BCNF)
Yaitu menghilangkan terdapatnya anomaly pada relasi yang disebabkan oleh overlapping candidate key atau apabila setiap determinan adalah merupakan candidate key.
e.       Normalisasi bentuk keempat (Fourth Normal Form / 4NF)
Yaitu menghilangkan beberapa ketergantungan pada banyak harga (multivalue dependency).
f.       Normalisasi bentuk kelima (Fifth Normal Form / 5NF)
Yaitu join dependency anomaly yang terjadi akibat dekomposisi relasi tidak dapat dipakai kembali untuk membentuk kembali relasi semula.

1.3.7.3       Spesifikasi Basis Data

Basis data merupakan kumpulan dari data yang saling berhubungan satu dengan yang lain dan tersimpan di luar komputer serta digunakan perangkat lunak (software) tertentu untuk memanipulasinya.
Sedangkan sistem basis data adalah suatu sistem penyusunan dan pengelolaan record-record dengan menggunakan komputer dengan tujuan untuk menyimpan atau merekam serta melihat data operasional lengkap pada sebuah organisasi atau perusahaan, sehingga mampu menyediakan informasi optimal yang diperlukan untuk kepentingan proses pengambilan keputusan.

1.4         Pengertian Sistem Informasi

Sistem Informasi menerima masukan data, instruksi dan mengolah data tersebut sesuai dengan perintah untuk mengeluarkan hasilnya. Ini merupakan sebagian dari peristiwa yang terjadi pada sistem informasi. Sistem informasi itu sendiri mempunyai sub-sub yaitu sistem dan informasi.
Informasi merupakan hal yang sangat penting bagi manajemen di dalam mengambil keputusan. Menurut Robert A. Leitch dan K. Roscoe Davis :
“Sistem informasi adalah suatu sistem di dalam suatu organisasi yang mempertmukan kebutuhan pengolahan transaksi harian, mendukung operasi, bersifat manajerial dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan”. (Jogianto, 1997 : 36)
Definisi ini pada dasarnya menekankan bahwa informasi merupakan alat untuk mengurangi ketidakpastian yang akan senantiasa dihadapi oleh seorang manager yang memimpin organisasi atau perusahaan.

1.4.1        Pengertian Sistem

Dalam sebuah sistem terdapat dua pendekatan di dalam pendefinisian sistem, yaitu yang menekankan pada prosedur dan pada komponen (elemen). Yang dimaksud pendekatan sistem dengan menekankan pada prosedur yaitu :
Sistem adalah suatu jaringan dari kerja prosedur-prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan tertentu. Pendekatan sistem yang merupakan jaringan kerja dari prosedur yang lebih menekankan pada urutan-uturan operasi.
Prosedur yaitu suatu urutan-urutan operasi klerikan atau tulis menulis yang melibatkan beberapa orang di dalam satu atau lebih departemen, yang diterapkan untuk menjamin penanganan yang seragam dari transaksi-transaksi bisnis yang ada. Sedangkan pendekatan sistem yang menekankan pada elemen yaitu elemen-elemen atau komponen-komponen atau bagian-bagian dari suatu sistem dapat berupa subsistem. Dapat disimpulkan bahwa sistem adalah himpunan atau group dari elemen atau komponen yang berhubungan atau saling bergantung satu sama lain untuk mencapai tujuan tertentu.
Sebuah sistem terdiri dari bagian-bagian saling terkait yang beroperasi untuk mencapai sasaran dan maksud. Berarti, sebuah sistem bukanlah seperangkat unsur yang tersusun secara tak teratur, tetapi terdiri dari unsur-unsur yang dapat dikenal sebagai saling melengkapi karena mempunyai satu maksud dan tujuan atau sasaran.

1.4.2        Pengertian Informasi

Informasi adalah data yang telah diolah menjadi bentuuk yang lebih berguna dan lebih berarti bagi penerimanya. Menggambarkan seuatu kejadian-kejadian atau event dan kesatuan kenyataan (fact dan entity) serta digunakan untuk pengambilan keputusan.
Sistem informasi menerima masukan data dan instruksi, mengolah data tersebut sesuai instruksi dan mengeluarkan hasilnya. Model data sistem yaitu masukan, pengolahan dan keluaran adalah cocok bagi kasus pengolahan sistem informasi yang paling sederhana dimana semua masukan tiba pada saat yang bersamaan.

1.5         Konsep Dasar Sistem Inventori

Sistem inventori adalah sistem yang mengelola suatu kegiatan transaksi-transaksi keluar masuknya barang. Manfaat dari sistem inventori adalah :
a.       Menjaga agar persediaan di gudang selalu mencukupi
b.      Meminimumkan biaya pemesanan dan biaya pengadaan persediaan barang
Pada dasarnya laporan inventori dimaksudkan untuk mengajukan informasi mengenai keadaan atau kondisi stock yang ada pada saat itu, yang akan digunakan oleh pihak yang berkepentingan sebagai pertimbangan di dalam pengambilan keputusan.
Selain itu laporan inventori bertujuan untuk mendapatkan kualitas suatu informasi antara lain :
a.       Relevan
Relevansi suatu informasi harus dihubungkan dengan maksud penggunaannya. Bila suatu informasi tidak relevan untuk keperluan para pengambil keputusan, informasi demikian tidak ada gunanya betapa kualitas terpenuhi. Dalam pertimbangan relevansi suatu informasi, perhatian akan difokuskan pada kebutuhan pemakai dan bukan kebutuhan pihak tertentu.
b.      Dapat dimengerti
Informasi harus dapat dimengerti oleh pemakainya dan dinyatakan dalam bentuk atau istilah yang disesuaikan dengan batas pengertian para pemakainya.
c.       Netral
Informasi diarahkan pada kebutuhan umum pemakai dan tidak tergantung pada kebutuhan dari pihak tertentu.
d.      Tepat waktu
Informasi harus disampaikan sedini mungkin untuk dapat digunakan sebagai bahan pertimbangan dalam pengambilan keputusan ekonomi dan untuk menghindari tertundanya keputusan tersebut.
e.       Akurat
Informasi harus akurat, harus bebas dari kesalahan-kesalahan dan jelas maksudnya. Informasi harus akurat dari banyaknya kemungkinan terjadi gangguan dan penyimpangan dan dapat merubah bahkan merusak informasi tersebut.


Daftar Pustaka 

http://elib.unikom.ac.id/download.php?id=12969
http://library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00100-IF%20Bab%202.pdf