SISTEM INFORMASI MANAJEMEN


A.    Waterfall Development ( Pembangunan Sistem Air terjun)

1.      Penjelasan
Pendekatan suatu pengembangan sistem yang sederhana, lebih dikenal sebagai model air terjun (waterfall model).Model air terjun ini mendeskripsikan alur prosespengembangan sistem informasi.
Pekerjaan pengembangan sistem dengan model air terjun dimulai dengan pembuatan spesifikasi kebutuhan suatu sistem. Pekerjaan ini biasanya dilakukan oleh orang yang memesan sistem atau pengembang yang bekerja sama dengan pemesannya. Setelah spesifikasi kebutuhan ini selesai, lantas dilakukanlah suatu analisis dan deskripsi logika sistem. Atau, analisis dan deskripsi logika sistem dibuat secara bersama-sama dengan spesifikasi kebutuhan. Rancangan sistem kemudian diselesaikan dan diikuti dengan implementasi modul yang lebih kecil. Modul-modul ini pertama-tama diuji secara sendiri-sendiri dan kemudian secara hersama-sama. Ketika pengujian integrasi terakhir telah diselesaikan, keseluruhan sistem dapat diserahkan ke pemakai serta dimulailah tahap pemeliharaan. Model air terjun ini memberi penekanan bahwa seseorang harus menyelesaikan suatu tahap sebelum masuk ke tahap berikutnya. Model air terjun ini telah memberikan pengaruh besar pada metode rekayasa perangkat lunak.
Model ini sebenarnya tidak pernah dimaksudkan untuk dilaksanakan secara kaku pada saat pertama kali diperkenalkan. Akan tetapi, belakangan disadari bahwa model air terjun ini harus direvisi agar benar-benar menggambarkan siklus pengembangan sistem.

2.      Kelebihan Model Waterfall Development Model :

·         dengan metode ini biasanya menghasilkan kualitas yang baik.
·         Documen pengembangan Tahapan proses pengembangannya tetap (pasti), mudah diaplikasikan, dan prosesnya teratur.
·         Cocok digunakan untuk produk software/program yang sudah jelas kebutuhannya di awal, sehingga minim kesalahannya.
·         Software yang dikembangkan sistem sangat terorganisir, karena setiap fase harus terselesaikan dengan lengkap sebelum melangkah ke fase berikutnya.


3.      Kekurangan Model Waterfall Development Model :

·         Proyek yang sebenarnya jarang mengikuti alur sekuensial seperti diusulkan, sehingga perubahan yang terjadi dapat menyebabkan hasil yang sudah didapatkan tim pengembang harus diubah kembali/iterasi sering menyebabkan masalah baru.
·         Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus dilakukan pada tahap awal proses.
·         Sulit untuk mengalami perubahan kebutuhan yang diinginkan oleh customer/pelanggan.
·         Pelanggan harus sabar untuk menanti produk selesai, karena dikerjakan tahap per tahap, dan proses pengerjaanya akan berlanjut ke setiap tahapan bila tahap sebelumnya sudah benar-benar selesai.
·         Perubahan ditengah-tengah pengerjaan produk akan membuat bingung tim pengembang yang sedang membuat produk.
·         Adanya waktu kosong (menganggur) bagi pengembang, karena harus menunggu anggota tim proyek lainnya menuntaskan pekerjaannya.


4.      Contoh Penerapan dari Pengembangan Model Waterfall Development Model
Contoh dari penerapan model pengembangan ini adalah pembuatan program pendaftaran online ke suatu Instansi Pendidikan. Program ini akan sangat membantu dalam proses pendaftaran, karena dapat meng-efektifkan waktu serta pendaftar tidak perlu repot-repot langsung mendatangi Instansi Pendidikan. Teknisnya adalah sebagai berikut :
·            Sistem program untuk pendaftaran dibuat menggunakan bahasa pemrograman PHP, dengan Sistem Database yang dibuat menggunakan MySQL, dan diterapkan (diaplikasikan) pada PC (personal computer) dengan sistem operasi berbasis Microsoft Windows, Linux, dan sebagainya.
·       Setelah program selesai dibuat dan kemudian dipergunakan oleh user, programmer akan memelihara serta menambah atau menyesuaikan program dengan kebutuhan serta kondisi user.

B.     Prototype

1.      Penjelasan
Prototype merupakan suatu paradigma baru dalam metode pengembangan perangkat lunak dimana metode ini tidak hanya sekedar evolusi dalam dunia pengembangan perangkat lunak, tetapi juga merevolusi metode pengembangan perangkat lunak yang lama yaitu sistem sekuensial yang biasa dikenal dengan nama SDLC atau waterfall development model.
Dalam Model Prototype, prototype dari perangkat lunak yang dihasilkan kemudian dipresentasikan kepada pelanggan, dan pelanggan tersebut diberikan kesempatan untuk memberikan masukan sehingga perangkat lunak yang dihasilkan nantinya betul-betul sesuai dengan keinginan dan kebutuhan pelanggan. Perubahan dan presentasi prototype dapat dilakukan berkali-kali sampai dicapai kesepakatan bentuk dari perangkat lunak yang akan dikembangkan.

2.      Kelebihan Model Prototype :
  • Pelanggan berpartisipasi aktif dalam pengembangan sistem, sehingga hasil produk pengembangan akan semakin mudah disesuaikan dengan keinginan dan kebutuhan pelanggan.
  • Penentuan kebutuhan lebih mudah diwujudkan.
  • Mempersingkat waktu pengembangan produk perangkat lunak.
  • Adanya komunikasi yang baik antara pengembang dan pelanggan.
  • Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan.
  • Lebih menghemat waktu dalam pengembangan sistem.
  • Penerapan menjadi lebih mudah karena pelanggan mengetahui apa yang diharapkannya.

3.      Kekurangan Model Prototype :

·         Proses analisis dan perancangan terlalu singkat.
·         Biasanya kurang fleksibel dalam mengahadapi perubahan.
·         Walaupun pemakai melihat berbagai perbaikan dari setiap versi prototype, tetapi pemakai mungkin tidak menyadari bahwa versi tersebut dibuat tanpa memperhatikan kualitas dan pemeliharaan jangka panjang.
·         Pengembang kadang-kadang membuat kompromi implementasi dengan menggunakan sistem operasi yang tidak relevan dan algoritma yang tidak efisien.


4.      Contoh Penerapan Metode Prototype.
Sebuah rumah sakit ingin membuat aplikasi sistem database untuk pendataan pasiennya. Seorang atau sekelompok programmer akan melakukan identifikasi mengenai apa saja yang dibutuhkan oleh pelanggan, dan bagaimana model kerja program tersebut. Kemudian dilakukan rancangan program yang diujikan kepada pelanggan. Hasil/penilaian dari pelanggan dievaluasi, dan analisis kebutuhan pemakai kembali di lakukan.

C.    Rapid Aplication Development

1.      Penjelasan
Rapid Application Development adalah metodologi pengembangan perangkat lunak (SDLC) yang menggunakan pengabungan antara Prototype Model dengan Iterative Model. Prototype adalah model kerja yang secara fungsional setara dengan komponen produk.

           Dalam model RAD (Rapid Application Development), modul fungsional dikembangkan secara paralel sebagai prototype dan terintegrasi untuk membuat produk yang lengkap untuk pengiriman produk yang lebih cepat. Dikarenakan tidak ada rincian planning yang detail, maka memudahkan untuk melakukan perubahan pada saat development berjalan.

RAD Model Design

Model RAD mendistribusikan tahap analisis, perancangan, pembuatan dan pengujian ke dalam rangkaian siklus pengembangan jangka pendek yang singkat.

Berikut adalah fase-fase dari RAD:


fase-fase-rad

Business Modeling (Bisnis Model)

Fase ini untuk perancangan dasar dari pengembangan produk berdasarkan informasi dan distribusi informasi antar saluran bisnis. Analisis bisnis yang lengkap dilakukan untuk menemukan informasi penting untuk bisnis, bagaimana hal itu dapat diperoleh, bagaimana dan kapan informasi diproses dan faktor apa yang mendorong arus informasi yang berhasil

Data Modeling (Data Model)

Fase ini untuk menganalisa informasi yang sudah dikumpulan dari fase Business Modeling. semua kumpulan data diidentifikasi dan didefinisikan  secara rinci untuk mencari model bisnis yang tepat.

Process Modeling (Proses Pemodelan)

Fase ini untuk untuk menetapkan arus informasi bisnis yang diperlukan untuk mencapai tujuan bisnis yang spesifik sesuai model bisnis. perubahan atau penyempurnaan pada kumpulan objek data didefinisikan dalam fase ini. Deskripsi proses untuk menambahkan, menghapus, mengambil atau memodifikasi objek data diberikan.

Application Generation (Generasi Aplikasi)

Fase ini untuk Sistem yang sebenarnya dibangun dan pengkodean dilakukan dengan menggunakan automatic tools i untuk mengubah model proses dan data menjadi prototype yang aktual

Testing and Turnover

fase ini untuk pengujian keseluruhan sistem yang dibangun semua komponen perlu diuji secara menyeluruh dengan cakupan uji yang lengkap. Dengan pengujian yang lengkap dapat mengurangi risiko cacat sistem.

1.      Kelebihan Rapid Application Development

  • Mudah mengakomodasi peruabahan sistem
  • Progress development bisa di ukur
  • Waktu iterasi bisa di perpendek menggunakan RAD Tools
  • Mengurangi waktu development
  • Mudah dalam menentukan dasar sistem
  • Mempermudah feedback customer
  • Cocok untuk proyek yang membutuhkan waktu pengembangan yang lebih pendek.
  • Cocok untuk sistem yang berbasis komponen dan terukur.


2.  Kekurangan Rapid Application Development

§  Ketergantungan pada anggota bisnis tim untuk mengidentifikasi persyaratan bisnis
§  Hanya sistem yang bisa di modularized yang bisa dibangun menggunakan RAD
§  Membutuhkan developer / designer yang berpengalaman
§  Ketergantungan pada keterampilan model
§  Kompleksitas manajemen 
§  Tidak dapat diterapkan pada proyek yang kecil / murah

3.  Contoh penerapan Rappid Application Development

Pembuatan website m­commerce (mobile commerce) untuk mempermudah proses penyewaan kendaraan mobil pada suatu badan usaha. Pengembangan sistem mcommerce ini menggunakan metode Rapid Application Development (RAD), dengan demikian siklus pembangunan perangkat lunak menjadi lebih pendek atau singkat. Penerapan sistem m­ commerce ini menggunakan arsitektur yang berbasis Wireless Application Protocol (WAP) sehingga website dapat diakses dari telepon seluler (ponsel) melalui browser.


D.    Model Evolutionary Development / Evolutionary Software Process Models

1.      Penjelasan

Model Evolutionary Development bersifat iteratif (mengandung perulangan). Hasil prosesnya berupa produk yang makin lama makin lengkap sampai versi terlengkap dihasilkan sebagai produk akhir dari proses. Model Evolutionary Development / Evolutionary Software Process terbagi menjadi 2, yaitu :
a.       Model Incremental
Model Incremental merupakan hasil kombinasi elemen-elemen dari model waterfall yang diaplikasikan secara berulang, atau bisa disebut gabungan dari Model linear sekuensial (waterfall) dengan Model Prototype. Elemen-elemen tersebut dikerjakan hingga menghasilkan produk dengan spesifikasi tertentu kemudian proses dimulai dari awal kembali hingga muncul hasil yang spesifikasinya lebih lengkap dari sebelumnya dan tentunya memenuhi kebutuhan pemakai.

6

Model ini berfokus pada penyampaian produk operasional dalam Setiap pertambahanya. Pertambahan awal ada di versi stripped down dari produk akhir, tetapi memberikan kemampuan untuk melayani pemakai dan juga menyediakan platform untuk evaluasi oleh pemakai. Model ini cocok dipakai untuk proyek kecil dengan anggota tim yang sedikit dan ketersediaan waktu yang terbatas.
Pada proses Pengembangan dengan Model Incremental, perangkat lunak dibagi menjadi serangkaian increment yang dikembangkan secara bergantian.

·         Contoh Penerapan Model Incremental
Perangkat lunak pengolah kata yang dikembangkan dengan menggunakan paradigma pertambahan akan menyampaikan manajemen file, editing, serta fungsi penghasilan dokumen pada pertambahan pertama, dan selanjutnya. Pertambahan pertama dapat disebut sebagai produk inti (core product).  Dan pada pertambahan selanjutnya, produk inti akan dikembangkan terus hingga menghasilkan produk jadi yang siap untuk digunakan/dipasarkan.


·         Kelebihan Model Incremental :
Ø  Personil bekerja optimal.
Ø  mampu mengakomodasi perubahan secara fleksibel, dengan waktu yang relatif singkat dan tidak dibutuhkan anggota/tim kerja yang banyak untuk menjalankannya.
Ø  Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai dibangun. Contohnya pemasukan data karyawan.
Ø  Mengurangi trauma karena perubahan sistem. Klien dibiasakan perlahan-lahan menggunakan produknya setiap bagian demi bagian.
Ø  Memaksimalkan pengembalian modal investasi konsumen.

·         Kekurangan Model Incremental :
Ø Tidak cocok untuk proyek berukuran besar (lebih dari 200.000 baris coding).
Ø Sulit untuk memetakan kebutuhan pemakai ke dalam rencana spesifikasi tiap-tiap hasil dari increament.

b.      Model Spiral / Model Boehm
Model ini mengadaptasi dua model perangkat lunak yang ada yaitu model prototyping dengan pengulangannya dan model waterfall dengan pengendalian dan sistematikanya.  Model ini dikenal dengan sebutan Spiral Boehm. Pengembang dalam model ini memadupadankan beberapa model umum tersebut untuk menghasilkan produk khusus atau untuk menjawab persoalan-persoalan tertentu selama proses pengerjaan proyek.

7

Tahap-tahap model ini dapat dijelaskan secara ringkas sebagai berikut :
1.       Tahap Liason : pada tahap ini dibangun komunikasi yang baik dengan calon pengguna/pemakai.
2.       Tahap Planning (perencanaan) : pada tahap ini ditentukan sumber-sumber informasi, batas waktu dan informasi-informasi yang dapat menjelaskan proyek.
3.       Tahap Analisis Resiko : mendefinisikan resiko, menentukan apa saja yang menjadi resiko baik teknis maupun manajemen.
4.       Tahap Rekayasa (engineering) : pembuatan prototipe.
5.       Tahap Konstruksi dan Pelepasan (release) : pada tahap ini dilakukan pembangunan perangkat lunak yang dimaksud, diuji, diinstal dan diberikan sokongan-sokongan tambahan untuk keberhasilan proyek.
6.       Tahap Evaluasi : Pelanggan/pemakai/pengguna biasanya memberikan masukan berdasarkan hasil yang didapat dari tahap engineering dan instalasi.

Ø Kelebihan model ini adalah sangat mempertimbangkan resiko kemungkinan munculnya kesalahan sehingga sangat dapat diandalkan untuk pengembangan perangkat lunak skala besar. Pendekatan model ini dilakukan melalui tahapan-tahapan yang sangat baik dengan menggabungkan model waterfall ditambah dengan pengulangan-pengulangan sehingga lebih realistis untuk mencerminkan keadaan sebenarnya. Baik pengembang maupun pemakai dapat cepat mengetahui letak kekurangan dan kesalahan dari sistem karena proses-prosesnya dapat diamati dengan baik.

Ø Kekurangan model ini adalah waktu yang dibutuhkan untuk mengembangkan perangkat lunak cukup panjang demikian juga biaya yang besar. Selain itu, sangat tergantung kepada tenaga ahli yang dapat memperkirakan resiko. Terdapat pula kesulitan untuk mengontrol proses. Sampai saat ini, karena masih relatif baru, belum ada bukti apakah metode ini cukup handal untuk diterapkan.

Komentar