Metode Object Oriented Analysis and Design

Dalam pencarian teori, peneliti akan mengumpulkan informasi sebanyak-banyaknya dari kepustakaan yang berhubungan. Sumber-sumber kepustakaan dapat diperoleh dari : buku, jurnal, majalah, hasil-hasil penelitian tesis dan disertasi, dan sumber-sumber lainnya yang sesuai internet, koran dll”.

2.3.2 Metode Object Oriented Analysis and Design

2.3.2.1 Konsep Object Oriented Analysis and Design OOAD

Metodologi Booch’s Object Oriented Analysis Design, selanjutnya disingkat OOAD, merupakan penggabungan 3 tiga pendekatan, yaitu: Object Oriented Design OOD, Object Oriented Analysis OOA dan Object Oriented Programming OOP. OOA merupakan metode analisis yang memeriksa kebutuhan requirement berdasarkan prespektif pengumpulan obyek-obyek dan kelas-kelas dalam sebuah domain problem, sedangkan OOD merupakan sebuah metode mendesain yang mencakup proses pendekompoisisan obyek dan digambarkan dalam notasi sehingga bisa menggambarkan static dan dynamic model sistem baik secara logical danatau physical Booch, et al, 2007: 42. Berdasarkan pengertian ini, ada 2 dua hal penting yang harus ditekankan dalam OOD, yaitu: 1. OOD menggunakan teknik object oriented decomposition 2. Menggunakan notasi yang berbeda untuk menggambarkan model logical struktur obyek dan kelas, dan model physical dari arsitektur modul dan proses dalam sebuah aspek sistem baik statis maupun dinamis. OOP merupakan sebuah metode untuk mengimplementasikan program yang diorganisasikan sebagai kumpulan obyek dimana tiap-tiap obyek merupakan instan dari sebuah kelas dan kelas merupakan salah satu dari kumpulan kelas yang saling berhubungan secara hirarki menggunakan inheritance relationship Booch, et al, 2007: 41. Berdasarkan pengertian ini, ada 3 tiga hal penting yang harus ditekankan dalam OOP, yaitu: 1. OOP menggunakan obyek sebagai dasar dalam membangun program, bukan algoritma. 2. Obyek merupakan instan dari sebuah kelas 3. Setiap kelas dihubungkan menggunakan inheritance relationship atau yang kita kenal dengan istilah pewarisan, sehingga bahasa pemograman yang tidak mendukung inheritance tidak bisa mengimplementasikan OOP. Hubungan antara OOA, OOD dan OOP adalah: hasil pemodelan atau pengumpulan obyek dari OOA akan digunakan oleh OOD dan hasil dari OOD akan digunakan sebagai blueprint untuk membangun sistem dengan menggunakan OOP..

2.3.2.2 Proses Dalam OOAD

1. Macro Process

Proses makro merupakan penjelasan keseluruhan proses dari siklus hidup pengembangan sistem yang menyediakan sebuah kerangka kerja untuk proses mikro, proses mikro itu sendiri terdapat pada tahap analisis dan desain. Tahapan dalam proses makro adalah sebagai berikut: a. Requirement Pada tahap requirement menjelaskan tentang bagaimana membuat dan menjaga sebuah perjanjian kerjasama dengan customer dan stakeholder mengenai apa yang harus dilakukan pada pembuatan sistem, misalnya kebutuhan-kebutuhan dari suatu sistem seperti fungsi-fungsi apa saja yang akan digunakan oleh sistem, fitur-fitur apa saja yang akan dipakai dalam pembuatan sistem, siapa saja user yang terlibat atau yang memakai sistem tersebut dan lain sebagainya. Selain itu, tahapan ini juga mendefinisikan batasan-batasan dari suatu sistem yang akan dibuat. b. Analysis and Design Tahapan ini menjelaskan bagaimana mengkonversi kebutuhan- kebutuhan sistem yang telah dibuat sebelumnya menjadi sebuah bentuk rancangan sistem. Yang mana rancangan tersebut disajikan sebagai spesifikasi dari implementasi sistem dalam memilih lingkungan penerapannya. Selain itu, tahapan analisis dan desain juga mencakup dalam mengembangkan sebuah arsitekturbentuk rancangan yang kokoh untuk sebuah sistem dan menetapkan mekanisme umum yang harus digunakan oleh elemen-elemen yang berbeda dari sistem. c. Implementation Setelah membuat suatu kebutuhan sistem, menganalisis dan merancang sistem yang akan dibuat. Kemudian pada tahap ini dilakukan implementasi unit sistem dan menggabungkan rancangan dengan sistem, maksudnya adalah mengimplementasikan rancangan tersebut dalam sebuah sistem atau program dalam bentuk coding program. Selain itu juga menghasilkan sebuah sistem yang sudah dapat dijalankan. d. Test Tespengujian dilakukan untuk meyakinkan bahwa sistem telah sesuai dengan kebutuhan-kebutuhan yang telah dibuat sebelumnya kebutuhan-kebutuhan tersebut adalah menerapkan yang sewajarnya. Memvalidasi fungsi sistem yang telah konkrit kemudian didemonstrasikan bahwa produk software tersebut sesuai dengan kebutuhan dan rancangan yang telah dibuat sebelumnya. e. Deployment Meyakinkan bahwa produk software tersebut termasuk implementasi dan pengujian telah tersedia untuk end user atau sudah dapat digunakan oleh pengguna akhir. Proses makro memiliki aktivitas-aktivitas pendukung di dalam pembuatan software-nya yang mencakup Project Management, Configuration and Change Management dan Environment. Penjelasan mengenai aktivitas pendukung tersebut adalah sebagai berikut: 1. Project Managemment Project Manajement dilakukan untuk mengelola proyek pengembangan software, meliputi perencanaan, staffing dan monitoring proyek serta mengatur resiko yang mungkin terjadi. 2. Configuration and Change Management Mengidentifikasi konfigurasi setiap item, mengontrol perubahan pada setiap item dan mengatur konfigurasi pada setiap item. 3. Environment Menyediakan sebuah lingkungan pengembangan software, meliputi proses keduanya project management, configuration dan change management dan alat-alat yang mendukung tim pengembang software. Jadi pada environment, perusahaan menyediakan sebuah lingkungan untuk pengembangan sebuah software serta menyediakan alat-alat apa saja yang dibutuhkan oleh pengembang software dalam mengerjakan proyeknya. Gambar 2.2 adalah Gambaran dari setiap tahapan dalam proses makro Gambar 2.2 Tahapan dan Aktivitas Proses Makro Booch, et al: 2007: 263

2. Micro Process

Pada proses mikro ini, meliputi proses analysis and design proses mikro dengan melihat aktivitas apa yang dilaksanakan dan mengerjakan produk apa yang dihasilkan. Proses mikro merupakan bagian dari proses makro seperti yang terdapat pada Gambar 2.3. Gambar 2.3 Proses Mikro pada Proses Makro Booch, et al, 2007: 273 Pada analisis terfokus pada behavior perilaku bukan form bentuk. Dalam analisis mencari model dunia dengan mengidentifikasi unsur-unsur yang membentuk kosa kata yang berasal dari problem domain dan mendeskripsikan roles, responsibilities dan collaborations. Sedangkan pada desain diciptakan unsur- unsur yang menyediakan behavior dari unsur analisis yang diperlukan Booch, et al, 2007: 272 – 276. Produk utama dari proses mikro ialah: 1. Architecture description, menjelaskan arsitektur sistem, termasuk deskripsi mekanisme umum. Uraian tersebut meliputi arsitektural aspek penting dari analisisdesain model. 2. Analysisdesign model, mencakup analisis dan elemen desain solusi perangkat lunak dan organisasi mereka, serta realisasi yang menjelaskan bagaimana kebutuhan perilaku sistem yang diwujudkan dalam hal elemen-elemen. Di dalam proses mikro terdiri dari 4 aktivitas seperti yang tergambar pada Gambar 2.4, aktivitas-aktivitas yang terdapat pada proses mikro ialah: a. Identify the elements Menemukan elemen-elemen yang akan dikerjakan. b. Define the collaborations between the elements Mendeskripsikan bagaimana mengidentifikasi kerjasama antara elemen untuk menyediakan kebutuhan tingkah laku sistem. c. Define the relationships between the element Mendefinisikan hubungan antar elemen untuk mendukung kerjasama antar elemen. d. Define the semantics of the elements Membangun behavior dan attributes dari pengidentifikasian elemen. Menyiapkan elemen untuk level abstraksi selanjutnya. Gambar 2.4 Aktivitas Proses Mikro Booch, et al, 2007: 283

2.3.2.3 Aktivitas Utama dalam Object Oriented Analysis and Design OOAD

Pada metodologi OOAD dalam pengembangan sistem Booch et al, 2007: 281-301, Metodologi OOAD memiliki 4 aktivitas utama yaitu Inception, Elaboration, Construction, dan Transition. Aktifitas OOAD secara keseluruhan digambarkan pada Gambar 2.5.

1. Inception

Tahapan Inception awal pada pengembangan sistem dengan metode OOAD ini ialah tahap membangun arsitektur sistem yang benar- benar memprioritaskan system requirements, tanpa melihat sisi secara teknis pemrograman, database, dsb.. Pada tahap membangun arsitektur Sistem ini, difokuskan pada perancangan elemen-elemen dan subsistem dan mengalokasikan fungsi-fungsi untuk elemen dan subsistem supaya memenuhi sistem requirements.

2. Elaboration

Secara singkat tahap elaboration adalah tahap perincian sistem. Pada tahap ini, adalah merincikan setiap tahapan yang sudah dibuat pada tahap inception sebagai bentuk peralihan dari pendekatan sistem arsitektur yang berfokus hanya pada system requirement dan bagaimana sistem itu beroperasi ke pendekatan sistem arsitektur secara teknis.

3. Construction

Tahap Construction adalah tahapan paling bawah low-level dari penggambaran sistem. Pada tahap ini, sistem yang akan dibuat dideskripsikan secara lebih rinci dengan pendekatan ke sisi teknis pemrogramannya. Perancangan database, fitur-fitur sistem, interface dan seluruh deskripsi teknis mengenai sistem dijelaskan pada fase ini.

4. Transition

Pada tahap akhir adalah tahap dimana sistem sudah siap untuk digunakan oleh user. Tahap ini menampilkan hasil dari uji coba sistem. Gambar 2.5 Tahapan keseluruhan OOAD Booch, et al. 2007: 263

2.3.3 Pengujian Sistem