Mengidentifikasi masalah Menganalisa dan memahami masalah Mengidentifikasi persyaratan dan harapan solusi Mengidentifikasi solusi alternatif dan memilih tindakan yang terbaik Mendesain solusi yang dipilih Mengimplementasikan solusi yang dipilih

menghadapi sejumlah besar audiens, tidak ada teknik penemuan fakta lain yang dapat mentabulasikan fakta–fakta yang sama secara efisien Jeffery, 2004.

2.2.2 Metodologi Pengembangan Sistem Sederhana

Proses pengembangan sistem adalah satu set aktivitas, metode, praktek terbaik, siap dikirimkan, dan peralatan terotomasi yang digunakan staholder untuk mengembangkan dan memelihara sistem informasi dan perangkat lunak. Jeffery, 2004. Kebanyakan organisasi memiliki system development processproses pengembangan sistem resmi yang terdiri dari satu set standar proses-proses atau langkah-langkah yang mereka harapkan akan diikuti oleh semua proyek pengembangan sistem. Sementara proses ini bervariasi untuk organisasi yang berbeda, ada karakteristik umum yang ditemukan : proses pengembangan sistem di kebanyakan organisasi mengikuti pendekatan pemecahan masalah. Pendekatan tersebut biasanya terdiri dari beberapa langkah pemecahan masalah yang umum Jeffery, 2004:

1. Mengidentifikasi masalah

2. Menganalisa dan memahami masalah

3. Mengidentifikasi persyaratan dan harapan solusi

4. Mengidentifikasi solusi alternatif dan memilih tindakan yang terbaik

5. Mendesain solusi yang dipilih

6. Mengimplementasikan solusi yang dipilih

7. Mengevaluasi hasilnya. Jika masalah tidak terpecahkan, kembalilah ke langkah 1 atau 2 seperlunya. Tabel 2.1 korelasi antara langkah-langkah pemecahan masalah yang umum dengan proses pengambangan sistem Jeffery, .2004. Proses Pengambangan Sistem yang disederhanakan Langkah-langkah pemecahan masalah yang umum Permulaan Sistem 1. Mengidentifikasi masalah Juga merencanakan solusi untuk masalah Analisis Sistem 2. Menganalisa dan memahami masalah. 3. Mengidentifikasi Persyaratan dan harapan solusi. Desain Sistem 4. Mengidentifikasi solusi alternative dan memilih tindakan terbaik. 5. Mendesain solusi yang dipilih. Implementasi Sistem 6. Mengimplementasikan solusi yang dipilih 7. Mengevaluasi hasilnya. Jika masalah tidak terpecahkan, kembalilah ke langkah 1 atau 2 seperlunya.

2.2.2.1 The sequential or Waterfall Strategy

Pengembangan sistem secara alamiah adalah proses berurutan sequential. Strategi ini mengisyaratkan “penyelesaian” tiap proses- satu per satu. Penyelesaian “berurutan” menghasilkan pengembangan sistem informasi yang seluruhnya baru. Karena penampilan pendekatan ini seperti air terjun waterfall, maka pendekatan ini disebut proses “pengembangan air terjun” waterfall development Jeffery, 2004. Gambar 2.1 The sequential or Waterfall Strategy Sumber: Jeffery, 2004 Berikut penjelasan Gambar 2.1 : 1. Permulaan Sistem System Initiation Permulaan Sistem System Initiation adalah perencanaan awal untuk sebuah proyek untuk mendefinisikan lingkup, tujuan, jadwal, dan anggaran bisnis awal. Pada permulaan sistem ini untuk menentukan lingkup proyek dan rencana pemecahan masalah. 2. Analisis Sistem System Analysis Analisis Sistem System Analysis adalah studi domain masalah bisnis untuk merekomendasikan perbaikan dan menspesifikasikan persyaratan dan prioritas bisnis untuk solusi. 3. Desain Sistem System Design Desain Sistem System Design adalah spesifikasi atau konstruksi solusi yang teknis dan berbasis komputer untuk persyaratan bisnis yang diidentifikasikan dalam analisis sistem. Desain tersebut dalam bentuk prototipe yang bekerja. 4. Implementasi Sistem System Implementation Implementasi Sistem System Implementation adalah konstruksi, instalasi, pengujian, dan pengiriman sistem ke dalam produksi artinya operasi sehari-hari.

2.2.2.2 Strategi Pengembangan Model-Driven

Strategi Pengembangan Model-Driven adalah sebuah strategi sistem yang menekankan pembuatan gambar model-model sistem untuk membantu visualisasi dan analisis masalah, mendefinisikan persyaratan bisnis, dan mendesain sistem informasi Jeffery, 2004. Dalam Pengembangan Model-Driven terdapat beberapa pemodelan Jeffery, 2004 yaitu: 1. Pemodelan proses process modeling Pemodelan proses process modeling adalah sebuah teknik berpusat pada proses yang dipopulerkan oleh metodologi analisis dan desain terstruktur structured analysis and design yang menggunakan model-model persyaratan-persyaratan proses bisnis untuk memperoleh desain perangkat lunak efektif untuk sebuah sistem. Analisis terstruktur memperkenalkan peralatan pemodelan yang disebut data flow diagram diagram aliran data untuk mengilustrasikan aliran data serangkaian proses bisnis. Desain terstruktur mengkonversi diagram aliran data ke dalam model proses yang disebut structure chart bagan struktur untuk mengilustrasikan perangkat lunak atas-bawah yang memenuhi persyaratan-persyaratan bisnis. 2. Pemodelan Data data modeling Pemodelan Data data modeling adalah sebuah teknik berpusat pada data yang digunakan untuk memodelkan persyaratan-persyaratan data bisnis dan mendesain sistem-sistem database yang memenuhi persyaratn-persyaratan tersebut. Model-model data yang sering ditemui adalah entity relationship diagram diagram hubungan entitas. 3. Pemodelan Objek object modeling Pemodelan Objek object modeling adalah sebuah teknik yang mencoba untuk menyatukan data dan proses ke dalam konsepsi tunggal yang disebut objek. Model-model objek adalah diagram-diagram yang mendokumentasikan sebuah sistem dalam artian objek-objeknya dan interaksi-interaksi mereka. Pemodelan objek adalah basis metodologi- metodologi analisis dan desain berorientasi objek. Adapun keunggulan dari Model-Driven Jeffery, 2004 adalah sebagai berikut: 1. Spesifikasi persyaratan cenderung lebih menyeluruh dan didokumentasikan dengan baik 2. Persyaratan bisnis dan desain sistem lebih mudah divalidasi dengan gambar daripada dengan kata-kata. 3. Lebih mudah diidentifikasi, mengkonseptualkan, dan menganalisis solusi-solusi teknis alternative. 4. Spesifikasi desain cenderung solid, stabil, dapat beradaptasi, dan fleksibel karena mereka berbasis model dan dianalisis lebih menyeluruh sebelum dibangun. 5. Sistem dapat dikonstruksikan dengan lebih tepat pertama kali saat dibangun dari spesifikasi berbasis model yang menyeluruh dan jelas.beberapa berargumen bahwa perangkat lunak code-generating dapat secara otomatis menghasilkan kerangka atau kode hampir lengkap dari model-model sistem. Selain memiliki keunggulan, Model-Driven juga memiliki kelemahan Jeffery, 2004 sebagai berikut: 1. Banyak makan waktu. Dibutuhkan waktu untuk mengumpulkan fakta, menggambar model, dan memvalidasi model tersebut. 2. Model tersebut dapat sebagus pemahaman para pengguna akan persyaratan tersebut. 3. Gambar bukanlah perangkat lunak. Beberapa beragumen bahwa hal ini mengurangi peran para pengguna dalam sebuah proyek menjadi partisipasi pasif. Kebanyakan pengguna tidak tertarik pada gambar, melainkan mereka perangkat lunak yang bekerja dan menilai perkembangan proyek dengan adanya atau tidak adanya perangkat lunak. 4. Pendekatan yang model-driven oleh beberapa orang dianggap tidak fleksibel-para pengguna harus menentukan semua persyaratan sebelum desain, desain harus sepenuhnya mendokumentasikan spesifikasi teknis sebelum konstruksi, dan seterusnya. 2.2.3 Analisis dan Desain Berorientasi Objek Object Oriented Analysis and Design Menggunakan UML Unified Modeling Language Teknik analisis berorientasi objek merupakan alat terbaik yang dapat digunakan untuk sebuah proyek yang akan mengimplementasikan sistem yang menggunakan teknologi objek untuk membangun, mengelola, dan merakit objek- objek itu menjadi aplikasi yang berguna. Teknik pemodelan objek menyajikan penggunaan metodologi dan notasi diagram yang sama sekali berbeda dengan teknik lainnya yang biasa digunakan untuk pemodelan data dan pemodelan proses. Pada akhir tahun 80-an dan awal 90-an, digunakan beberapa metode berorientasi objek yang berbeda-beda. Yang paling terkenal adalah metode Booch dari Grady Booch Object Modeling Technique OMT dari James Rumbaugh OMT, dan Object Oriented Software Engineering OOSE dari Ivar Jacobson. Banyaknya teknik yang digunakan membatasi kemampuan untuk memakai model-model pada proyek lain mengurangi reuse dan tim pengembang. Konsekuesinya, teknik ini menghambat komunikasi antara anggota tim dan pengguna, yang mengakibatkan banyak terjadi error didalam proyek. Masalah ini dan lainnya mendorong dilakukannya usaha untuk mendesain bahasa pemodelan standar Jeffery, 2004. Pada tahun 1994, Grady Booch dan James Rumbaugh sepakat bergabung untuk menggunakan metode pengembangan berorientasi objek dengan tujuan membuat proses standar tunggal untuk mengembangkan sistem berorientasi objek. Ivar Jacobson bergabung pada tahun 1995, dan mereka bertiga fokus membuat sebuah bahasa pemodelan objek standar sebagai ganti dari pendekatan atau metode berorientasi objek standar. Berdasarkan keja mereka dan hasil kerja lainnya pada industri, Unified Modeling Language UML versi 1.0 dirilis pada tahun 1997 Jeffery, 2004. Unified Modeling Language UML adalah satu kumpulan konvensi pemodelan yang digunakan untuk menentukan atau menggambarkan sebuah sistem software yang terkait dengan objek Jeffery, 2004.

2.2.3.1 Konsep Sistem untuk Pemodelan Objek

Analisis sistem berorientasi objek didasarkan beberapa konsep. Sebagian konsep ini membutuhkan cara pemikiran baru untuk sistem dan proses pengembangannya Jeffery, 2004.

1. Object adalah sesuatu yang ada atau dapat dilihat, disentuh, atau