BAB II LANDASAN TEORI 1. Model Model Proses Perangkat Lunak Model proses untuk RPL di pilih berdasarkan sifat aplikasi dan proyeknya, metode dan alat-alat Bantu yang akan dipakai, control serta penyampaian yang dibutuhkan. Perkembangan P/L biasa dianggap sebagai lingkaran pemecahan masalah dimana terdapat 4 keadaan berbeda, yaitu status quo, definisi masalah, perkembangan teknis memecahkan masalah dikeseluruhan aplikasi dari banyak teknologi, dan integrasi pemecahan menyampaikan hasil kepada siapa yang membutuhkan pertama kali. Lingkaran pemecahan masalah ini berlaku untuk kerja RPL pada tingkat resolusi yang berbeda. Dipakai pada tingkat mekro ketika bagian dalam aplikasi dipakai, pada tingkat tengah jika komponen program direkayasa, dan bahkan pada garis tingkat kode sekalipun. 1. Model Sekuensial Linier Penulisan Desain kode pengujian Gambar 2 5
Sekuensial linier mengusulkan sebuah pendekatan kepada perkembangan P/L yang sistematik dan sekuensial mulai pada tingkat dan kemajuan system pada seluruh analisis, desain, kode, pengujian, dan pemeliharaan. Dimodelkan setelah siklus rekayasa konvensional, model sekuensial linier melingkupi aktivitas-aktivitas sbb : - Rekayasa dan permodelan system/informasi - Aalisis kebutuhan perangkat lunak - Desain - Genersai kode - Pengujian - Pemeliharaan Model ini adalah paradigma RPL yang paling luas dipakai dan paling tua. Masalah-masalah yang kadang-kadang terjadi ketika model sekuensial linier diaplikasikan adalah : a. Jarang sekali proyek nyata mengikuti aliran sekuensial yang dianjurkan oleh model. b. Kadang-kadang sulit bagi pelanggan untuk menyatakan semua kebutuhannya secara ekplisit. c. Pelanggan harus bersikap sabar. d. Pengembang sering melakukan penundaan yang tidak perlu. 6
2. MODEL PROTOTIPE Mendengarka n Pelanggan Membangun Memperbaiki Market Uji Pelanggan Mengendalikan Market Gambar 3 Prototyping paradigma dimulai dengan mengumpulkan kebutuhan. Pengembangan dan pelanggan bertemu dan mendefinisikan segala kebutuhan yang diketahui, dan area garis besar di mana definisi lebih jauh merupakan keharusan, kemudian dilakukan perancangan kilat. Perancangan kilat berfokus pada penyajian dari aspek-aspek P/L tersebut yang akan nampak bagi pelanggan / pemakai. Perancangan kilat membawa kepada konstruksi sebuah prototype. Prototype tersebut di evaluasi oleh pelanggan / pemakai dan dipakai untuk menyaring kebutuhan pengembangan P/L. iterasi terjadi pada protipe disetel untuk memenuhi kebutuhan pelanggan, dan pada saat yang sama memungkinkan pengembang untuk secara lebih baik memahami apa yang harus dilakukannya. 7
3. MODEL RAD (Rapid Aplication Development) Pemodelan Bisnis Pemodelan Data Pemodelan Proses Pembentukan aplikasi Penguji dan turnover 60-90 hari Gambar 4 RAD adalah sebuah model proses perkembangan P/L sekuensial linier yang menekankan siklus pengembangan yang sangat pendek. Karena dipakai terutama pada aplikasi system konstruksi, pendekatan RAD melingkupi fase-fase sbb: - Bussiness modeling - Data Modeling - Process Modeling - Aplication generation - Testing and turnover 4. Model Proses Perangkat Lunak Evolusioner a. Model Pertambahan Pada saat model pertambahan dipergunakan, pertambahan pertama sering merupakan produk inti yaitu sebuah model pertambahan yang dipergunakan, tetapi 8
beberapa muka tambahan tetap tidak disampaikan. Proses di ulangi mengikuti penyampaian setiap pertambahan sampai bisa menghasilkan produk yang lengkap. b. Model Spiral Model proses P/l yang evolusioner yang memakai sifat iterative dari prototype dengan cara control dan aspek sistematis dari model sekuensial linier. Model ini berpotensi untuk mengembangkan versi pertambahan P/L secara cepat. Model spiral berisi enam wilayah tugas - Komunikasi pelanggan - Perencanaan - Analisis risiko - Perekayasaan - Konstruksi dan pelincuran - Evaluasi pelanggan Gambar 5 C. Model Rakitan Komponen - Menggabungkan beberapa karakteristik model spiral - Model ini bersifat evolusioner, sehingga mmbutuhkan pendekatan iterative untuk menciptakan P.L 9
- Merangkai aplikasi dari komponen P.L sebelum dipaketkan Mengidentifikasi Komponen Kandidat Melihat Komponen Dalam Pustaka Mengekstrak Komponen Jika tersedia Membangun Komponen Jika tersedia Menyusun Iterasi System ke-n Menaruh Komponen Baru dalam pustaka Gambar 6 2. Sistem Pengolahan Data dengan Pemrosesan Berkas Pada awal pemrosesan data berbasis computer, tidak dikenali apa yang dinamakan basis data. Computer belum berdaya guna seperti saat ini dan digunakan secara eksklusif untuk perhitungan saintifik dan rekayasa. Secara perlahan, lewat kemampuannya yang semakin tinggi, computer memasuki dunia bisnis. Agar supaya bermanfaat untuk aplikasi bisnis, computer harus dapat menyimpan,memanipulasi, serta memnaggil berkas (file) data berukuran sangat besar. System pemrosesan berkas (file) berbasis computer dikembangkan untuk kebutuhan ini. Meski secara perlahan system pemrosesan berkas (file) berevolusi, struktur dan kegunaannya hanya berubah sedikit dalam beberapa dekade ini. Menunjuk pada aplikasi bisnis yang beranjak menjadi lebih kompleks, dapat kita lihat dibawah bahwa system pemrosesan berkas memiliki kekurangankekurangan serta keterbatasan-keterbatasan, akhirnya, system pemrosesan berkas digantikan dengan system pemrosesan basis data pada bisnis masa kini. Meskipun 10
begitu, kita seharusnya memiliki sedikit pengetahuan tentang system pemrosesan untuk alas an-alasan dibawah ini: Sistem pemrosesan file masih digunakan saat ini, terutama untuk system penyalinan (backup) dan pemulihan (recovery) basis data. Pemahaman permasalahan dan keterbatasan pada system pemrosesan berkas dapat membantu kita untuk menyelesaikan masalah-masalah yang sama (atau mirip) yang mungkin akan kita jumpai saat perancangan system basis data. Program A Program B Program C Program A Program B Program A Sistem Pemesanan Sistem Faktur Sistem Gaji File Master Pelanggan File Master Pelanggan File Master Pelanggan File Master Pelanggan File Master Pelanggan File Master Pelanggan Gambar 7 Sistem Pemrosesan Berkas Di Perushaan X 2.1. Karakteristik Pemrosesan Berkas (file) Jika kita perhatikan gambar 1.1 yang merupakan system pemrosesan berkas pada perusahaan X (perusahaan fiktif) kita dapat melihat bahwa pendekaran system berfokus pada pemrosesan data yang diperlukan untuk setiap departemen secara individual (setiap departemen diperlukan sedemikian rupa seolah-olah mereka merupakan unit-unit bisnis yang mandiri tanpa keterkaitan satu terhadap lainnya), alih-alih mengevaluasi kebutuhan data dan informasi bagi keseluruhan unit-unit 11
organisasi. Setiap program aplikasi atau system dikembangkan untuk memenuhi kebutuhan sebagian departemen yang membutuhkannya. Dapat kita lihat juga pada gambar 1.1 bahwa berkas yang sama (katakanlah file master pelanggan) perlu digandakan untuk memenuhi kebutuhan pemrosesan data di 2 sistem yang berbeda (sistim pemesanan dan sistim faktur). Akibatnya, jika ada perusahaan disatu berkas pada suatu system, perubahan itu mungkin tidak tercermin pada berkas yang sama yang digunakan disistem lainnya, sehingga data-data dan informasi-informasi yang sama mungkin nilainya tidak konsisten disuatu berkas dan di berkas yang lainnya. 2.2. Kekurangan dari sistim pemrosesan data. Jika kita tengok kembali sistim pemrosesan berkas seperti yang terlihat pada gambar 1.1 kita dapat menyimpulkan kelemahan-kelemahan serta kurangankekurangan sistim ini, kelemahan serta kekurangan itu dapat kita deskripsikan di bawah ini : - Kebergantungan program dan data. deskripsi berkas disimpan dalam setiap aplikasi yang mengakses berkas yang bersangkutan. - Duplikasi data. Karena pada system pemrosesan berkas aplikasi-aplikasi sering dikembangkan secara mandiri. Duplikat-Duplikat file yang berulang (redundan) akan sering dijumpai. - Keterbatasan berbagi data. Dengan system pemrosesan file, setiap aplikasi memiliki file pribadinya sendiri dan para pengguna memiliki sedikit kesempatan untuk berbagi data di luar aplikasinya. Departemen-departemen yang berbeda-beda akan sulit menggunakan data-data yang sama yang terletak di suatu departemen yang lain. Ini bukan masalah jarak samata, melainkan untuk mengakses file tertentu seseorang harus tahu struktur file yang bersangkutan serta mengembangkan aplikasi khusus untuk mengaksesnya. 12
- Proses pengembangan membutuhkan Waktu Yang Lama. Dalam system pemrosesan file, setiap departemen mungkin harus melakukan segalanya dari awal. Mulai dari perancangan struktur data pada file kemudian mengembangkan aplikasi pengakses file tersebut. - Kesulitan Dalam Pemeliharaan, Faktor-faktor yang telah disebutkan sebelumnya akan berinteraksi untuk menciptakan kondisi dimana pemeliharaan program akan sangat membebani organisasi. 3. Karakteristik Pendekatan Basis Data Pendekatan basis data memberi tekenan pada integrasi dan berbagi data dalam organisasi (atau paling sedikit dalam bagian terbesar pada organisasi). Pendekatan ini mebutuhkan reorientasi yang mendasar atau pergeseran pada proses pemikiran (perubahan pradigma) di mulai dari managar peringkat paling atas hingga karyawan di peringkat paling rendah. Meskipun pergeseran ini mungkin awalnya terasa sulit pada beberapa organisasi, tetapi informasi yang didapatkannya mungkin dapat digunakan sebagai sebuah senjata yang sangat kompetitif. A. Model Data Model data yaitu sekumpulan cara / peralatan untuk mendeskripsikan datadata, hubungannya satu sama lain, semantiknya serta batasan konsistensi.dua model data yaitu ERD (entity relationship Diagram) dan model relasional. Keduanya menyediakan cara untuk mendeskripsikan perencanaan basis data pada peringkat logika. Karena kedua jenis meodel permodelan berhubungan dengan cara yang mirip. Perbedaan utamanya hanyalah ERD berguna untuk mengorganisasi data-data (hanya data) dalam hubungannya dengan data-data yang lain sedangkan model objek bertindak lebih jauh selain mengorganisasi data-data model objek juga 13
mengorganisasi prosedur-prosedur dan fungsi-fungsi yang berguna untuk memanipulasi data yang terorganisasi tadi. 1. Model Entity_Relationship Model data Diagram Hubungan Entitas (ERD/ Entity Relationship Diagram) dibuat berdasarkan anggapan bahwa dunia nyata terdiri dari koleksi objek-objek dasar yang dinamakan entitas (entity) serta hubungan (relationship) antara entitas-entitas itu. Entitas adalah sesuatu atau objek pada dunia nyata yang dapat dibedakan satu terhadap yang lainnya. Entitas dalam basis data dideskripsikan berdasarkan atributnya. Relationship adalah hubungan antara beberapa entitas. Himpunan semua entitas dengan tipe yang sama dan himpunan semua hubungan antar entitas dirujuk sebagai himpunan entitas (entity set) dan himpunan relasi (relationship set). Secara skematis, basis data dapat dideskripsikan secara grafis dengan ERD yang memiliki komponen-komponen utama sebagai berikut : - Empat persegi panjang, yang menggambarkan himpunan entitas. - Elips, yang menggambarkan atribut. - Jajaran Genjang, yang menggambarkan relasi / hubungan antar entitas. - Garis, yang menyatukan atribut-atribut pada entitas tertentu serta menyatukan entitas-entitas dalam suatu relasi tertentu. 2. Model Relasional Model relasional adalah model yang menggunakan sejumlah table untuk menggambarkan data serta hubungan antara data-data tersebut. Setiap tabel memiliki sejumlah kolom dimana setiap kolom meiliki nama yang unik. Model relasional adalah contoh model berbasis record. Ia dinamakan seperti itu sebab basis data memiliki struktur record berformat tertentu dimana masing-masing isinya memiliki 14
tipe-tipe yang berbeda. Model relasional adalah abstraksi pada peringkat yang lebih rendah dari ERD. Perancang basis data umumnya pertama kali menggunakan ERD kemudian menterjemahkannya kedalam model relasional untuk kemudian di implementasikan di sistim basis data yang digunakan. 3. Model Data Lain Model data berorientasi objek adalah model data lain yang saat ini mulai popular. Model berorientasi objek memperluas ERD dengan penekanan pada pembungkusan (encapsulation). Model data objek relasional mengkombinasikan keunggulan-keunggulan model data berorientasi objek dan ketersediaan model model data relasional. Sesungguhnya ada model-model data yang lainnya yaitu model data jaringan (network data model) serta model data hierarki (hierarchical data model). Kedua model data ini cukup popular namun karena keunggulan model data relasional dalam hal kesederhanaanya serta efektifitasnya perlahan kedua model data ini mulai ditinggalkan. B. Bahasa Basis Data Sistem basis data menyediakan bahasa untuk mendefinisikan basis data (data definition language) untuk serta bahasa memanipulasi basis data (data manipulation language). Untuk melakukan operasi-operasi tertentu pada basis data. Dalam prakteknya, kedua jenis bahasa basis data itu tidak benar-benar dapat dipisahkan secara tegas. Saat ini keduanya merupakan bagian dari bahasa basis data tunggal yang disebut SQL (Struktured Query Language) yang merupakan bahasa basis data standart untuk basis data bertipe relasional. 1. Data Definition Language Skema basis data dengan sekumpulan definisi yang diekspresikan dengan bahasa khusus yang dinamakan Data Definition Language (DDL). Kamus data adalah 15
suatu himpunan dari meta data : suatu data yang menerangkan data yang lainnya, skema table adalah suatu contoh dari meta data. Sistim basis data akan membaca kamus data sebelum membaca atau memodifikasi data yang sesbenarnya. 2. Data Manipulation Language Manipulasi data pada basis data pada umumnya meliputi hal-hal dibawah ini: a. Pemanggilan informasi yang tersimpan pada basis data (query) b. Penambahan informasi baru pada basis data c. Penghapusan informasi yang t idak diperlukan lagi pada basis data d. Modifikasi informasi yang ada pada basis data. Data Manipulation Language (DML) adalah bahasa yang memungkinkan pengguna untuk mengakses atau memanipulasi data dalam sistim basis data yang bertipe relasional. Ada 2 jenis DML - DML Prosedural - DML Deklaratif (DML Non Prosedural Query adalah pernyataan yang meminta pemanggilan informasi tertentu dari basis data.sebagian dari DML dinamakan Query Language. 3. Akses Basis Data Dari Program Aplikasi Program aplikasi yaitu program yang digunakan untuk berinteraksi dengan basis data. Untuk dapat mengakses basis data, pernyataan-pernyataan DML dengan dieksekusi dari bahasa-bahasa tersebut diatas. Ada 2 cara utama untuk melakukannya yaitu : - dengan menyediakan antar muka program aplikasi (himpunan prosedur) yang digunakan untuk mengirim DDL dan DML ke bahasa basis data dan menerima hasilnya. - Dengan menambahkan sintak DML. 16
4. Pengguna Basis Data dan Administrator Sasaran utama dari sistim basis data adalah memanggil informasi tertentu dari basis data dan menyimpan informasi baru kebasis data. Orang-orang yang bekerja dengan basis data dapat dikategorikan sebagai pengguna basis data dan administrator. a. Pengguna basis data dan antar muka pengguna. Ada 4 tipe yang berbeda dari pengguna basis data : - Naïve user yaitu pengguna yang paling tidak mahir - Pemrogram Aplikasi yaitu Profesional Di bidang computer yang menulis program aplikasi - Pengguna Canggih berinteraksi dengan sistim tanpa menulis program - Pengguna Terspesialiasi adalah pengguna canggih / mahir yang menulis aplikasi basis data khusus yang tidak termasuk pada pemrosesan data tradisional. b. Administrator Basis Data Orang yang memiliki tanggung jawab penuh pada sistim basis data sering dinamakan administrator basis data (DBA/Database Administrator) yang bertugas antara lain: - Definisi skema - Mendefinisikan struktur tempat penyimpanan dan metode aksesnya yang paling efisien. - Memodifikasi skema dan organisasi secara fisik - Memberi hak akses tertentu pada pengguna basis data. - Melakukan pemeliharaan rutin. 17