BAB II LANDASAN TEORI 2.1 Database 2.1.1 Membangun Aplikasi Database Oracle dengan VB KONEKSI DATABASE Koneksi database adalah sebuah modul (obyek) yang bekerja untuk menghubungkan aplikasi dengan sebuah DBMS (Database Manajement System). Dengan menggunakan koneksi database ini, maka aplikasi dapat melakukan manipulasi data terhadap database tertentu. Pada umumnya database merupakan suatu sistem yang berdiri sendiri di luar lingkungan aplikasi tertentu. Demikian pula Oracle merupakan suatu database yang lengkap dan mempunyai lingkungan aplikasi sendiri. Bila ingin memanfaatkan database Oracle dalam lingkungan aplikasi Visual Basic diperlukan suatu koneksi database yang dapat menghubungkan aplikasi Visual Basic dengan database Oracle. Obyek koneksi database yang dapat digunakan untuk menghubungkan Oracle dengan aplikasi Visual Basic antara lain: (1) ADODC (ActiveX Data Object Data Control) (2) ORADC (Oracle Data Control) Untuk menggunakan koneksi ORADC ini terlebih dahulu menyiapkan mengaktifkan komponen obyek ini dengan memilih menu Project >> Components pada menu Visual Basic, atau dengan menekan Ctrl-T, lalu pilihlah komponen Oracle Data Control untuk koneksi database dengan
ORADC, Microsoft DataBound Grid untuk tabel grid dengan koneksi dan Microsoft DataBound List untuk obyek list dengan koneksi ORADC. Setelah dipilih maka di bagian toolbox component akan muncul komponen dari obyek ORADC. Selanjutnya untuk menggunakan obyek ini seperti obyek yang lain tinggal menarik icon obyek ini ke dalam form yang dibuat kemudian dilengkapi isi property sesuai dengan kebutuhan. Properti yang harus diisikan dalam obyek koneksi database dengan ORADC ini antara lain: Database, diisi dengan nama hostname dari server database Oracle yang digunakan. Connection, diisi dengan nama user dan password yang dipisahkan dengan tanda garis miring. Record Source, diisi dengan perintah SQL untuk memilih suatu query atau tabel. 2.1.2 Query Language Berikut merupakan beberapa contoh penulisan query SELECT * FROM TbKonsumen Menampilkan semua kolom/field yang ada pada tabel TbKonsumen SELECT * FROM TbKonsumen ORDER BY NamaKonsumen DESC Menampilkan semua kolom/field yang ada pada tabel TbKonsumen dan diurutkan secara menurun(z-a) berdasarkan field Nama Konsumen SELECT NamaKonsumen,NoTELP FROM TbKonsumen Menampilkan kolom/field Nama Konsumen dan No Telpon yang ada
tabel TbKonsumen SELECT * FROM TbKonsumen WHERE KodeKonsumen= K002 Menampilkan semua kolom/field yang ada pada tabel TbKonsumen dengan kriteria hanya konsumen yang mempunyai kode konsumen K002. SELECT * FROM TbMobil WHERE TarifSewa>=300000 Menampilkan semua kolom/field yang ada pada tabel TbMobil dengan kriteria hanya mobil yang mempunyai Tarif Sewa lebih besar sama dengan Rp.300,000. SELECT * FROM TbKonsumen WHERE NamaKonsumen LIKE 'Asep%' Menampilkan semua kolom/field yang ada pada tabel TbKonsumen dengan kriteria hanya konsumen yang mempunyai nama depannya terdapat kata Asep. SELECT KodeKonsumen,SUM(UangMuka) as TOTAL FROM TbTransaksi GROUP BY KodeKonsumen Menampilkan kolom/field kode Konsumen dan TOTAL pada tabel transaksi dengan mentotalkan/menjumlahkan setiap uang muka pada pada tabel transaksi yang sama atau mencari total berdasarkan group kode konsumen. SELECT KodeKonsumen,SUM(UangMuka) as TOTAL, COUNT(KodeKonsumen) as SERING FROM TbTransaksi GROUP BY KodeKonsumen Menampilkan kolom/field kode Konsumen dan TOTAL serta SERING pada tabel transaksi dengan mentotalkan/menjumlahkan setiap uang muka dan menghitung kemunculan data berdasarkan kode konsumen pada pada tabel transaksi yang sama atau mencari total berdasarkan group kode konsumen.
2.2 Rekayasa Perangkat Lunak 2.2.1 Pengertian Rekayasa Perangkat lunak Menurut Bauer (Pressman, 2005, p53) pengertian rekayasa perangkat lunak menurut adalah penetapan dan penggunaan prinsip-prinsip rekayasa untuk menghasilkan perangkat lunak yang terpercaya dan dapat bekerja secara efisien pada mesin. 2.2.2 Elemen Utama Perangkat Lunak Gambar 2.1 Elemen Utama Perangkat Lunak (sumber : Pressman, 2005, p54) Empat elemen rekayasa perangkat lunak menurut Pressman (2005, 1. A p54) Quality : Focus Merupakan landasan dari rekayasa suatu piranti lunak. Semua proses pengembangan perangkat lunak mengacu kepada kualitas yang 2. dihasilkan. Process Merupakan elemen yang menggabungkan elemen tools dan methods dan
memungkinkan pengembangan perangkat lunak komputer secara 3. Methods Metode perangkat lunak menyediakan pedoman teknis dalam membangun piranti lunak. 4. Tools Merupakan pendukung otomotis / semi otomatis untuk proses dan metode, misalnya Computer Aided Software Engineering (CASE) yang mengkombinasikan software, hardware, dan database piranti lunak. 2.3 Pengertian Internet Menurut Chaffey et al. (2000, p12) internet merujuk kepada jaringan yang menghubungkan komputer seluruh dunia. Internet terdiri dari infrastruktur jaringan server dan area komunikasi yang luas yang saling berhubungan, yang digunakan untuk menangani dan menyalurkan sekumpulan Kerangka informasi internet di meliputi internet. tiga level utama, yaitu : 1. Infrastruktur, yakni perangkat keras, perangkat lunak, database, dan telekomunikasi. 2. Servis, yakni servis berbasis perangkat lunak seperti mesin pencari, uang digital dan sistem keamanan. 3. Produk dan servis, yakni website dari perusahaan dan pasar individu. 2.3.1 Pengertian World Wide Web Menurut Chaffey et al. (2000, p68) World Wide Web (WWW) teknik yang paling sering digunakan untuk menyampaikan informasi di
Informasi diakses melalui web browser. Informasi perusahaan biasanya pada web server dan menuju ke suatu web sites. 2.3.2 Pengertian Web Browser dan Web Server Menurut Chaffey et al. (2000, p68) web browser seperti Netscape, Microsoft Internet Explorer menyediakan cara yang mudah untuk mengakses dan melihat informasi yang disimpan sebagai dokumen web pada server yang Web server berbeda. digunakan untuk menyimpan halaman web yang diakses oleh web browser. Web server mengandung sejumlah database dari informasi konsumen atau produk. 2.4 Use Case Diagram Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah apa yang diperbuat sistem, dan bukan bagaimana. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya. Use case diagram dapat sangat membantu bila kita sedang menyusun requirement sebuah sistem, mengkomunikasikan rancangan dengan klien, dan merancang test case untuk semua feature yang ada pada sistem.sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian dari proses dirinya. dalam Secara umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali usecase yang meng-include dieksekusi secara
use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas common. Gambar 2.2 Contoh Use Case Pendaftaran Blog (Budi Susanto, UKDW, 49, 2010) Notasi Use Case : Tabel 2.1 Notasi Use Case Notasi Keterangan Actor Seorang / sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. Case Menggambarkan deskripsi / keterangan yang melibatkan actor
<<extend>> <<include>> Relasi yang digunakan jika use case yang satu mirip dengan use case yang lain Relasi jika terdapat perilaku yang mirip dengan beberapa use case. 2.5 Sequence Diagram Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apaa yang dihasilkan. Notasi Sequence Diagram : Tabel 2.2 Notasi Use Case Notasii Keterangan Menggambarkan sebuah orang atau Actor entitas eksternal yang berinteraksi dengan sistem Object Menggambarkan sebuah objek sebuah sistem atau salah satu
komponennya. Objek merupakan sebuah instansi dari sebuah class. Bagian abc merupakan nama dan ABC merupakan nama class Lifeline Menggambarkan daur hidup sebuah objek Activation bar Menggambarkan durasi/lamanya pengerjaan sebuah pesan (message). Sebuah message sederhana antara elemen header (biasa berupa Message synchronous atau asynchronous). Dan juga mengindikasikan komunikasi antara objek. Menggambarkan message ke elemen Synchronous Message (objek) lain, dimana message ini mengaktifkan sebuah proses dan sampai selesai, baru bisa mengirimkan sebuah message baru. Return Asynchronou s Message Suatu hasil kembalian sebuah operasi (feedback dari sebuah Menggambarkan message ke elemen (objek) lain, dimana message ini
mengaktifkan sebuah proses dan ditengah-tengah proses, pengirim message bisa mengirimkan message baru. Destroy Element Menggambarkan penghancuran sebuah elemen header (objek) setelah selesai sebuah operasi Menggambarkan penghancuran Destroy Message sebuah elemen header (objek) sebagai akibat dari sebuah message dari elemen/objek lain Gambar 2.3 Contoh Sequence Diagram (Mandar Chitnis, 2003)
2.6 Basis Data Menurut Conolly dan Begg (2005, p15) basis data merupakan suatu kumpulan data yang berhubungan secara logis yang dipakai bersama, dan deskripsi dari data tersebut dirancang untuk memenuhi kebutuhan informasi suatu organisasi. 2.6.1 Entity Relational Diagram (ERD) Menururt Conolly dan Begg (2005, p354) ERD adalah penggambaran dari sebuah kebutuhan penyimpanan data dengan cara kerja dari suatu perusahaan atau organisasi tersebut yang bebsa dari ambiguitas. ERD digunakan untuk mengidentifikasikan data yang akan disimpan, diolah dan diubah untuk mendukung aktifitas bisnis suatu organisasi. Ada berbagai jenis relationship yang mungkin terjadi antara suatu entity dengan entity lainnya, antara lain :
1. One-to-One Relationships, contohnya : Gambar 2.4 Contoh One-to-One Relationships (sumber : Conolly and Begg, 2005, p358) 2. One-to-Many Relationships, contohnya : Gambar 2.5 Contoh One-to-Many Relationships (sumber : Conolly and Begg, 2005, p359)
3. Many-to-Many Relationships, contohnya : Gambar 2.6 Contoh Many-to-Many Relationships (sumber : Conolly and Begg, 2005, p360)