BAB II
LANDASAN TEORI
2.1. Konsep Dasar Pemograman 2.1.1. Defenisi Pemograman
Sebelum kita memasuki pengertian pemograman (programming), ada baiknya kita mengartikan dulu apa itu program, dalam hal ini program komputer.
Program: sekumpulan instruksi-instruksi yang “dikodekan” oleh programmer (orang yang membuat program) yang dapat dimengerti oleh komputer yang nantinya akan dieksekusi oleh komputer.
Oleh sebab itu pemograman (programming) bisa dikatakan suatu kegiatan dalam membuat program komputer, atau membuat suatu kumpulan-kumpulan instruksi atau perintah ke komputer, atau istilahnya membuat sekumpulan “kode-kode” yang dimengerti oleh komputer. Agar komputer dapat mengerti instruksi-instruksi tersebut, maka dibutuhkan sebuah bahasa tersendiri, yaitu “kode-kode”, yang lebih dikenal dengan istilah “bahasa pemograman”.
2.1.2. Teknik Pemograman
Pemograman Prosedural.
Pada pemograman procedural, program dibedakan atas bagian data dengan bagian instruksi. Bagian instruksi terdiri atas runtutan/urutan (sequence) instruksi yang dilaksanakan satu per satu secara berurutan oleh pemroses. Alur pelaksanaan instruksi dapat berubah karena adanya pencabangan kondisional. Data yang disimpan di dalam memori dimanipulasi oleh instruksi secara beruntun atau procedural. Paradigma pemrograman seperti ini dinamakan pemrograman procedural. Contoh bahasa pemograman yang mendukung pemograman procedural adalah Basic, Pascal, C, dan lain-lain.
Pemograman Functional.
Pada pemograman functional lebih dtekankan pembangunan fungsi-fungsi, seperti fungsi-fungsi di dalam perhitungan matematika. Fungsi merupakan pembangun utama program sehingga fungsi-fungsi ini dapat dilewatkan parameternya dan mengembalikan nilai yang sudah diproses, yang lebih dikenal dengan istilah return.
Pemograman Terstruktur.
Pemograman Declarative.
Pada pemograman declarative, suatu permasalahan dideskripsikan dengan pernyataan (declarative) daripada penggunaan implementasi algoritma. Pemograman declarative ini sering disebut juga dengan pemograman logika. PROLOG dan CLIPS merupakan bahasa pemograman yang bersifat deklaratif.
Pemograman berbasis modul.
Teknik pemograman berbasis modul ini adalah dengan menciptakan banyak modul, masing-masing modul merupakan suatu grup atau kelompok dari entitas variabel, procedure, maupun fungsi, modul dapat juga diartikan dengan sebuah program kecil yang mandiri. Bahasa pemograman ADA mendukung pemograman modul ini.
Pemograman berorientasi objek (OOP).
2.1.3 Pengertian Program Aplikasi
Program sering juga digabungkan dengan kata aplikasi, yang melengkapi perbendaharaan kata teknologi informasi dewasa ini. Program aplikasi tersebut dapat diartikan sebagai program yang langsung bisa diimplementasikan dan digunakan sesuai kebutuhan user tanpa harus menuliskan ekspresi program sesuai bahasa pemrograman. Biasanya program aplikasi ini siap pakai dan merupakan program pesanan baik individu maupun lembaga. User tidak perlu mempelajari bahasa pemrograman, jika dia setingkat user saja. Akan tetapi biasanya disertakan buku panduan penggunaan atau user manual, atau malah dalam program aplikasi tersebut disediakan menu help yang akan memudahkan penggunaan.
2.1.4 Pengertian Bahasa Pemrograman
Bahasa pemrograman adalah suatu prosedur atau cara penulisan program. Bahasa pemrograman menurut tingkatannya terbagi menjadi tiga macam, yaitu:
1. Low Level Language atau sering disebut sebagai bahasa mesin. 2. Middle Language.
3. High Level Language, yaitu tingkat yang langsung bisa dipahami oleh user atau pemakai.
Merupakan sebuah "bahasa" yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. Unified Modeling Language (UML) adalah alat bantu analisis serta perancangan perangkat lunak berbasis objek (Adi Nugroho : 2005). UML menawarkan sebuah standar untuk merancang model sebuah sistem. Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD (Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering).
2.2.1. Sejarah Perkembangan UML
yang berlainan. Dimulai pada bulan Oktober 1994 Booch, Rumbaugh dan Jacobson, yang merupakan tiga yang metodologinya banyak digunakan mempelopori usaha untuk penyatuan metodologi pendesainan berorientasi objek. Pada tahun 1995 dirilis draft pertama dari UML (versi 0.8). Sejak tahun 1996 pengembangan tersebut dikoordinasikan oleh Object Management Group (OMG – http://www.omg.org). Tahun 1997 UML versi 1.1 muncul, versi 1.5 yang dirilis bulan Maret 2003. Booch, Rumbaugh dan Jacobson menyusun tiga buku serial tentang UML pada tahun 1999 [7] [8] [9]. Sejak saat itulah UML telah menjelma menjadi standar bahasa pemodelan untuk aplikasi berorientasi objek
Gambar 2.1 Gabungan pemodelan pembentuk UML
2.2.2. Bangun dasar Metodologi Unified Modeling Language (UML)
Bangunan dasar metodologi Unified Modeling Language (uml) menggunakan tiga bangunan dasar untuk mendeskripsikan sistem/perangkat lunak yang akan dikembangkan yaitu :
1. Sesuatu (things)
Ada 4 (empat) things dalam unified modeling language (uml), yaitu: Rambaug
Odell
Gamma
Meyer Shlaer and Mellor
a. Structural things
Merupakan bagian yang relatif statis dalam model unified modeling language (uml). Bagian yang relatif statis dapat berupa elemen-elemen yang bersifat fisik maupun konseptual.
b. Behavioral things
Merupakan bagian yang dinamis pada model unified modeling language (uml), biasanya merupakan kata kerja dari model unified modeling language (uml), yang mencerminkan perilaku sepanjang ruang dan waktu.
c. Grouping things
Merupakan bagian pengorganisasi dalam unified modeling language (uml). Dalam penggambaran model yang rumit kadang diperlukan penggambaran paket yang menyederhanakan model. Paket-paket ini kemudian dapat didekomposisi lebih lanjut. Paket berguna bagi pengelompokkan sesuatu, misalnya model-model dan subsistem-subsistem.
d. Annotational things
Merupakan bagian yang memperjelas model unified modeling language (uml) dan dapat berupa komentar-komentar yang menjelaskan fungsi serta ciri-ciri setiap elemen dalam model unified modeling language (uml).
Ada 4 (empat) macam relationship dalam unified modeling language (uml), yaitu :
a. Kebergantungan
Merupakan hubungan dimana perubahan yang terjadi pada suatu elemen mandiri (independent) akan mempengaruhi elemen yang bergantung padanya elemen yang tidak mandiri (independent). b. Asosiasi
Merupakan apa yang menghubungkan antara objek satu dengan objek lainnya, bagaimana hubungan suatu objek dengan objek lainnya. Suatu bentuk asosiasi adalah agregasi yang menampilkan hubungan suatu objek dengan bagian-bagiannya.
c. Generalisasi
Merupakan hubungan dimana objek anak (descendent) berbagi perilaku dan struktur data dari objek yang ada diatasnya objek induk (ancestor). Arah dari atas kebawah dari objek induk ke objek anak dinamakan spesialisasi, sedangkan arah berlawanan sebaliknya dari arah bawah keatas dinamakan generalisasi.
d. Realisasi
Merupakan operasi yang benar-benar dilakukan oleh suatu objek. 3. Diagram
Ada 5 (empat) macam diagram dalam unified modeling language (uml), yaitu :
Diagram ini memperihatkan himpunan use case dan aktor-aktor (suatu jenis khusus dari kelas). Diagram ini terutama sangat penting untuk mengorganisasi dan memodelkan perilaku dari suatu sistem yang dibutuhkan serta diharapkan pengguna.
b. Class Diagram
Diagram ini memperlihatkan himpunan kelas-kelas, antarmuka-antarmuka, kolaborasi-kolaborasi dan relasi-relasi antar objek.
c. Sequence Diagram
Diagram ini memperlihatkan interaksi yang menekankan pada pengiriman pesan (message) dalam suatu waktu tertentu.
d. State Chart Diagram
Diagram ini memperlihatkan state-state pada sistem, memuat state, transisi, event, dan aktifitas. Diagram ini terutama penting untuk memperlihatkan sifat dinamis dari antarmuka, kelas, kolaborasi dan terutama penting pada pemodelan sistem-sistem yang reaktif.
e. Activity Diagram
Diagram ini memperlihatkan aliaran dari suatu aktifitas ke aktifitas lainnya dalam suatu sistem. Diagram ini terutama penting dalam pemodelan fungsi-fungsi dalam suatu sistem dan memberi tekanan pada aliran kendali antar objek
2.3. Perancangan Database 2.3.1. Konsep Dasar Database
pengelolaannya disebut Database Management System. Menurut Bunafit Nugroho (2004:75) Database adalah suatu bentuk media yang di gunakan untuk menyimpan sebuah data.
2.3.2. Tabel
Tabel sering disebut dengan entitas atau entity dan juga digunakan untuk menyimpan sekelompok data yang sifatnya khusus (Bunafit Nugroho, 2004:75). Tabel merupakan urutan kedua setelah database.
2.3.3. Permasalahan Database
Kesalahan dalam membuat sebuah skema database dapat menimbulkan permasalahan dikemudian hari. Untuk itu sebaiknya dalam membangun sebuah database kita memperhatikan beberapa hal diantaranya: 1. Redudansi
Redudansi adalah sebuah data yang diulang beberapa kali (Rahmat Priyanto, 2007:7). Langkah yang baik adalah dengan memperkecil data-data yang disimpan berulang kali tanpa membuat kita kehilangan data-data yang diperlukan.
2. Anomali
Anomali adalah kesalahan-kesalahan dalam memanipulasi sebuah data yang disebabkan oleh desain database yang kurang baik (Rahmat Priyanto, 2007:7). Untuk menghindari anomali desain database haruslah dirancang dengan baik.
Menurut Rahmat Priyanto (2007:7) Anomali terbagi kedalam tiga jenis :
Anomali pemasukan data adalah kesalahan-kesalahan yang terjadi pada saat pemasukan data yang disebabkan oleh desain database yang buruk.
Delete Anomali (Anomali Penghapusan Data)
Anomali ini adalah kesalahan-kesalahan dalam melakukan operasi penghapusan sebuah data yang disebabkan oleh desain database yang buruk.
Update Anomali (Anomali Pengubahan Data)
Desain database yang buruk juga dapat memicu terjadinya kesalahan-kesalahan pada saat dilakukannya operasi perubahan data
2.3.4. Definisi Relasi
Yang dimaksud dengan relasi adalah sebuah bentuk pernyataan data secara grafis 2 dimensi, yang terdiri dari kolom dan baris. Tiap perpotongan antara kolom dan baris akan mempunyai nilai isi (atom)
2.3.5. Definisi Normalisasi
Normalisasi menurut Chris Gan dan Trish Sarson menyatakan yaitu “Proses untuk mengorganisasikan file untuk menghilangkan grup element yang berulang-ulang”
Proses normalisasi merupakan suatu proses pengelompokan data element menjadi tabel, tabel yang menunjukan entitas atau relasi sehingga pada proses normalisasi ini selalu di uji pada beberapa kondisi.
inkonsistensi data yang terjadi pada saat dilakukan proses menambah, mengubah, membaca pada suatu database (basis data)
Pada proses normalisasi terdapat beberapa tahapan atau langkah-langkah dalam pembentukan yaitu sebagai berikut :
1. Bentuk tidak normal (Unnormalized form)
Merupakan kumpulan data yang akan direkam, tidak ada keharusan mengikuti format tertentu, dapat saja data tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya sesuai dengan pada saat mengimput.
2. Bentuk normal ke satu (1 NF )
Merupakan bentuk normal ke satu yang mempunyai ciri-ciri yaitu setiap data dibentuk dalam flat file (file datar / rata), data dibentuk dalam satu record dan nilai dari field-field berupa automatic valur. Tidak ada set atribut yang berulang-ulang atau atribut yang memiliki nilai ganda (multi value). Setiap file hanya memiliki satu pengertian, bukan merupakan kumpulan data yang mempunyai arti mendua, hanya memiliki satu arti saja. Dan bukan pecahan kata-kata sehingga pengertiannya lain.
3. Bentuk normal ke dua (2 NF)
field kunci haruslah unik dan dapat mewakili atribut lain yang menjadi anggotanya.
1. Bentuk normal ke tiga (3 N )
Untuk menjadi bentuk normal ke tiga maka relasinya harus bentuk normal kedua dan semua atribut bukanlah primer tidak mempunyai hubungan yang transif, dengan kata lain bahwa setiap atribut bukan kunci dan haruslah bergantung pada primary key secara menyeluruh. 2. Boyce-Code Normal Form (BCNF)
Menghilangkan beberapa keganjilan dari hasil bentuk normal ke dua atau apabila setiap determinan adalah kandidat key.
3. Bentuk normal ke empat
Jika relasi R merupakan bentuk 4 NF dan jika BCNF, yang mana rinci data yang ada didalamnya tidak mengalami ketergantungan pada banyak nilai atau semua rinci data yang mengalami ketergantungan pada banyak nilai adalah juga mengalami ketergantungan.
2.3.6. SQL SERVER 2000
2.3.6.1. Mengenal SQL Server 2000
yang dapat disesuaikan dengan kebutuhan sistem yang akan dibangun. Selama beroperasi di mana SQL Server ini mengelolah database, SQL Server di dalam berhubungan dengan user akan dikelolah oleh seorang yang disebut Database Administrator.
Microsoft SQL Server 2000 merupakan sebuah program RDBMS (Relational Database Management System) yang menyediakan dukungan untuk mengorganisasi data dengan cara menyimpannya ke dalam tabel database. Hubungan antar data dapat dikelompokkan ke dalam tabel, dan keterhubungan dapat didefenisikan antar tabel-tabel yang disebut dengan Relational Dataase. SQL Server merupakan database server. User dapat berhubungan dengan database yang ada pada server melalui sebuah aplikasi, sedangkan Administrator dapat mengakses data secara langsung untuk mengelolanya.
SQL Server diluncurkan pada tahun 1989 dan berkembang sangat pesat sejak saat itu, baik dalam skalabilitas, integritas, kemudahan dalam administrasi, performance dan fitur.
2.4. Konsep Dasar Visual Basic 6.0. 2.4.1 Definisi Visual Basic
“ Visual Basic pada dasarnya adalah sebuah bahasa pemrograman komputer, bahasa pemrograman adalah perintah-perintah atau instruksi yang dimengerti oleh komputer untuk melakukan tugas-tugas tertentu. “1
Visual Basic dapat juga didefinsikan sebagai :
“ Kata “Basic” merupakan bagian bahasa basic (Beginners All Purpose Symbolic Instruction Code), yaitu sebuah bahasa pemrograman yang dalam sejarahnya sudah banyak digunakan oleh para programer untuk menyusun aplikasi. “2
Visual Basic dikembangkan dari bahasa pemrograman dan sekarang berisi banyak statemen, fungsi, dan keyword, dan beberapa diantaranya terhubung ke windows GUI, visual basic kini seakan-akan menjadi kiblat bagi para software developer, dan menjadi salah satu bahasa yang wajib dipelajari oleh berbagai kalangan, jika mereka ingin sukses di dunia komputer.
Visual Basic (yang sering juga disebut dengan VB) selain disebut sebagai sebuah bahasa pemrograman, juga sering disebut sebagai sarana (tool) untuk menghasilkan program-program aplikasi berbasis windows. Beberapa kemampuan atau manfaat dari Visual Basic di antaranya seperti : a. Untuk membuat program aplikasi berbasis Windows.
b. Untuk membuat objek-objek pembantu program, misalnya kontrol Activex, file Help, aplikasi Internet, dan sebagainya.
1 Andi Kurniadi, Pemrograman Microsoft Visual Basic 6, Elex Media Komputindo, halaman 3,
1999
c. Menguji program (debugging) dan menghasilkan program akhir berakhiran EXE yang bersifat executable, atau dapat langsung dijalankan.
2.4.2. Keistimewaan Visual Basic
Sejak dikembangkan pada tahun 80-an, Visual Basic kini telah mencapai versinya yang ke-6. Beberapa keistimewaan utama dari Visual Basic 6 ini di antaranya seperti :
1. Menggunakan platfom pembuatan program yang diberi nama Developer Studio, yang memiliki tampilan dan sarana yang sama dengan Visual C+ + dan Visual J++. Dengan begitu anda dapat bermigrasi atau belajar bahasa pemrograman lainnya dengan mudah dan cepat, tanpa harus belajar dari nol lagi.
2. Memiliki compiler andal yang dapat menghasilkan file executable yang lebih cepat dan lebih efisien dari sebelumnya.
3. Memiliki beberapa tambahan sarana Wizard yang baru. Wizard adalah sarana yang mempermudah di dalam pembuatan aplikasi dengan mengotomatisasi tugas-tugas tertentu.
4. Tambahan kontrol-kontrol baru yang lebih canggih serta peningkatan kaidah struktur bahasa Visual Basic.
5. Kemampuan membuat ActiveX dan fasilitas Internet yang lebih banyak. 6. Sarana akses data yang lebih cepat dan andal untuk membuat aplikasi