METODOLOGI PENGEMBANGAN SISTEM
1. Pengertian Metodologi Pengembangan Sistem
Metodologi pengembangan system adalah suatu proses pengembangan system yang formal dan presisi yang mendefinisikan serangkaian aktivitas, metode, best practices dan tools yang terotomasi bagi para pengembang dan manager proyek dalam rangka mengembangkan dan merawat sebagai keseluruhan system informasi atau software.
Metodologi pengembangan system adalah suatu proses pengembangan system yang formal dan presisi yang mendefinisikan serangkaian aktivitas, metode, best practices dan tools yang terotomasi bagi para pengembang dan manager proyek dalam rangka mengembangkan dan merawat sebagai keseluruhan system informasi atau software.
2. Alasan perlunya Metodologi Pengembangan System adalah:
1) Menjamin adanya konsistensi proses.
2) Dapat diterapkan dalam berbagai jenis proyek.
3) Mengurangi resiko kesalahan dan pengambilan jalan pintas.
4) Menuntut adanya dokumentasi yang konsisten yang bermanfaat bagi personal baru dalam timproyek.
Macam-Macam Metodologi Pengembangan System
1. Metode
System Development Life Cycle (SLDC)
Metode ini adalah metode pengembangan sistem informasi yang pertama kali
digunakan makanyabut dengan metode tradisional. Metode ini prototype Adalah
tahap-tahapan pekerjaan yang dilakukan oleh analis sistem dan programer dalam
membangun sistem informasi.
a. Tahap-tahap SLDC yaitu:
1.
Melakukan survey dan menilai kelayakan proyek pengembangan sistem
informasi.
2.
Mempelajari dan menganalisis sistem informasi yang sedang berjalan.
3.
Menentukan permintaan pemakai sistem informasi.
5.
Menentukan perangkat keras dan perangkat lunak computer.
6.
Merancang sistem informasi baru.
7.
Mengkomunikasikan dan mengimplementasikan sistem informasi baru.
8.
Memelihara dan melakukan perbaikan/peningkatan sistem informasi baru.
b. Kelebihan dan Kekurangan
ü Kelebihan
a.
Mudah diaplikasikan.
b.
Memberikan
template tentang metode analisis, desain, pengkodean, pengujian, dan
pemeliharaan.
ü Kekurangan
a.
Jarang sekali proyek riil mengikuti aliran
sekuensial yang dianjurkan model karena model ini bisa melakukan itersi tidak
langsung.
b.
Pelanggan sulit
untuk menyatakan kebutuhan secara eksplisit sehingga sulit untuk megakomodasi
ketidakpastian pada saat awal proyek.
c.
Pelanggan harus
bersikap sabar karena harus menunggu sampai akhir proyek
dilalui. Sebuah kesalahan jika tidak diketahui dari awal akan menjadi masalah
besar karena harus mengulang dari awal.
d.
Pengembang
sering malakukan penundaan yang tidak perlu karena anggota tim proyek harus
menunggu tim lain untuk melengkapi tugas karena memiliki ketergantungan hal ini
menyebabkan penggunaan waktu tidak efesien.
2. Model
WATERFALL
Sering juga disebut model
Sequential Linier. Metode pengembangan sistem yang paling tua dan paling
sederhana. Cocok untuk pengembangan perangkat lunak dengan spesifikasi
yang tidak berubah-ubah. Model ini menyediakan pendekatan alur hidup
perangkat lunak secara sequential atau terurut dimulai dari analisa, desain,
pengkodean, pengujian dan tahap pendukung
a. Tahap-Tahap
Metode WATERFALL:
1.
Analisis Kebutuhan Perangkat Lunak
2.
Desain
3.
Pembuatan Kode Program
4.
Pengujian
5.
Pendukung atau Pemeliharaan
b. Kelebihan dan Kekurangan Metode Waterfall
· Kelebihan
a.
Kualitas dari sistem yang dihasilkan akan baik. Ini dikarenakan oleh
pelaksanaannya secara bertahap. Sehingga tidak terfokus pada tahapan tertentu.
b.
Dokumen pengembangan sistem sangat terorganisir, karena setiap fase harus
terselesaikan dengan lengkap sebelum melangkah ke fase berikutnya. Jadi setiap
fase atau tahapan akan mempunyai dokumen tertentu.
i.
Kekurangan
c.
Diperlukan majemen yang baik, karena proses pengembangan tidak dapat
dilakukan secara berulang sebelum terjadinya suatu produk.
d.
Kesalahan kecil akan menjadi masalah besar jika tidak diketahui sejak awal
pengembangan.
e.
Pelanggan sulit menyatakan kebutuhan secara eksplisit sehingga tidak dapat
mengakomodasi ketidakpastian pada saat awal pengembangan.
3. Model
Prototyping
Prototyping adalah proses iterative dalam pengembangan sistem dimana
requirement diubah ke dalam sistem yang bekerja (working system) yang secara
terus menerus diperbaiki melalui kerjasama antara user dan analis. Prototype
juga bisa dibangun melalui beberapa tool pengembangan untuk menyederhanakan
proses.
a. Tahapan-tahapan Model Prototyping
1.
Pengumpulan Kebutuhan
2.
Membangun Prototyping
3.
Menggunakan Sistem
4.
Mengkodekan Sistem
5.
Menguji Sistem
6.
Evaluasi Sistem
7.
Evaluasi Protoptyping
b. Kelebihan dan Kekurangan
ü Kelebihan
a.
Prototype
melibatkan user dalam analisa dan desain.
b.
Punya kemampuan
menangkap requirement secara konkret.
c.
Digunakan untuk
memperluas SDLC.
ü Kekurangan
a.
Proses analisis dan perancangan terlalu singkat.
b.
Mengesampingkan
alternatif pemecahan masalah.
c.
Bisanya kurang
fleksible dalam mengahdapi perubahan.
d.
Protitype yang dihasilkan tidak selamanya mudah
dirubah dan cepat
selesai.
4. Model RAD (Rapid Application Development)
RAD adalah penggabungan beberapa
metode atau teknik terstruktur. RAD menggunakan metode prototyping dan teknik
terstruktur lainnya untuk menentukan kebutuhan user dan perancangan sistem
informasiselain itu RAD menekankan siklus perkembangan
dalam waktu yang singkat (60 sampai 90 hari) dengan pendekatan konstruksi
berbasis komponen.
a. Tahapan-tahapan Model RAD
1. Bussiness Modelling
2. Testing and Turnover
3. Aplication Generation
4. Process Modelling
5. Data Modelling
b. Kelebihan dan
Kekurangan
ü Kelebihan
a. RAD mengikuti tahapan pengembangan sistem
sepeti umumnya, tetapi mempunyai kemampuan untuk menggunakan kembali komponen
yang ada (reusable object).
b. Setiap fungsi dapat dimodulkan dalam waktu
tertentu dan dapat dibicarakan oleh tim RAD yang terpisah dan kemudian
diintegrasikan sehingga waktunya lebih efesien.
ü Kekurangan
a. Tidak cocok untuk proyek skala besar
b. Proyek bisa gagal karena waktu yang disepakati
tidak dipenuhi.
c. Sistem yang tidak bisa dimodularisasi tidak
cocok untuk model ini.
d. Resiko teknis yang tinggi juga kurang cocok
untuk model ini
5. Model Spiral
Model spiral pada awalnya diusulkan oleh Boehm, adalah model proses
perangkat lunak evolusioner yang merangkai sifat iteratif dari prototype dengan
cara kontrol dan aspek sistematis model sequensial linier. Model iteratif
ditandai dengan tingkah laku yang memungkinkan pengembang mengembangkan versi
perangkat lunak yang lebih lengkap secara bertahap.
a. Tahapan-tahapan Model Spiral
1.
Komunikasi Pelanggan
2.
Perencanaan
3.
Analisis Resiko
4.
Perekayasaan
5.
Konstruksi
dan Peluncuran
6.
Evaluasi
Pelanggan
b. Kelebihan dan Kekurangan
ü Kelebihan
a.
Dapat
disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak
komputer.
b.
Lebih cocok
untuk pengembangan sistem dan perangkat lunak skala besar
c.
Pengembang dan
pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat
evolusi karena perangkat lunak terus bekerja selama proses
d.
Menggunakan
prototipe sebagai mekanisme pengurangan resiko dan pada setiap keadaan di dalam
evolusi produk.
e.
Tetap mengikuti
langkah-langkah dalam siklus kehidupan klasik dan memasukkannya ke dalam
kerangka kerja iterative.
f.
Membutuhkan
pertimbangan langsung terhadp resiko teknis sehingga mengurangi resiko sebelum
menjadi permaslahan yang serius.
ü Kekurangan
a.
Sulit untuk
menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol.
b.
Memerlukan
penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika
resiko mayor tidak ditemukan dan diatur.
c.
Butuh waktu lama
untuk menerapkan paradigma ini menuju kepastian yang absolute
6. Object
Oriented Technology
Object Oriented Technology merupakan cara pengembangan perangkat lunak
berdasarkan abstraksi objek-objek yang ada di dunia nyata. Dasar pembuatan
adalah Objek, yang merupakan kombinasi antara struktur data dan perilaku dalam
satu entitas. Filosofi Object Oriented sangat luar biasa sepanjang siklus
pengenbangan perangkat lunak (perencanaan, analisis, perancangan dan
implementasi) sehingga dapat diterapkan pada perancangan sistem secara umum:
menyangkut perangkat lunak, perangkat keras dan system secara keseluruhan. Object
Oriented Technology merupakan cara pengembangan perangkat lunak berdasarkan
abstraksi objek-objek yang ada di dunia nyata. Dasar pembuatan adalah Objek,
yang merupakan kombinasi antara struktur data dan perilaku dalam satu entitas.
Filosofi Object Oriented sangat luar biasa sepanjang siklus pengenbangan
perangkat lunak (perencanaan, analisis, perancangan dan implementasi) sehingga
dapat diterapkan pada perancangan sistem secara uum: menyangkut perangkat
lunak, perangkat keras dan system secara keseluruhan.
a. Tahapan-Tahapan
Object Oriented Technology
1.
Model objek
2.
Model Dinamis
3.
Model Fungsional
b. Kelebihan dan Kekurangan Object Oriented Technology
· Kelebihan
a.
Uniformity, OMT memungkinkan merancangn user interface secara terintegrasi bersama
dengan perancangan perangkat lunak sekaligus dengan perancangan basis data.
b.
Understandability, Kode-kode yang dihasilkan dapat
diorganisasi ke dalam kelas-kels yang berhubungan dengan masalah sesungguhnya
sehingga lebih mudah dipahami.
c.
Stability, Kode program yang dihasilkan relatif stabil sebab mendekati permasalahn
sesungguhnya dilapangan.
d.
Reusability, Dimungkinkan penggunaan kembali kode-kode sehingga akan mempercepat waktu
pengembangan perangkat lunak.
· Kelemahan
MeMetode
berorientasi objek merupakan konsep yang relatif baru sehingga belum ada
standar yang diterima semua pihak dalam menentukan tool apa yang digunakan
sebagai dasar analisis serta perancangan perangkat lunak.tode berorientasi objek merupakan
konsep yang relatif baru sehingga belum ada standar yang diterima semua pihak
dalam menentukan tool apa yang digunakan sebagai dasar analisi serat
perancangan perangkat lunak.
7. Metode
End-user Development
Disini pengembangan
dilakukan langsung oleh end-user. Keterlibatan langsung end-user sangat
menguntungkan, karena memahami benar bagaimana sistem bekerja. Artinya tahap
analisis sistem dapat dilakukan lebih cepat. Kelemahan adalah pada pengendalian
mutu dan kecenderungan tumbuhnya “private”sistem informasi.
Integrasi dengan sistem yang lain menjadi sulit.
a. Tahapan-tahapan EUD
1.
Tahap inisasi (initiation), Yaitu tahap dimana
organisasi(perusahaan) mulai pertama kali mngenal teknologi informasi.
2.
Tahap ketularan (contagion)
3.
Tahap kendali (control)
4.
Tahap matang (mature)
b. Kelebihan dan Kekurangan
ü Kelebihan
a. Dapat menghindari permasalahan kemacetan di
departemen sistem informasi.
b. Kebutuhan pemakai sistem dapat lebih terpenuhi
karena dapat dikembangkan sendiri oleh pemakai.
c. Menambah atau meningkatkan partisifasi aktif
pemakai dalam proses pengembangan sistemnya sehingga akan ada kepuasan
sendiri dari pemakai sistem.
d. Dapat menambah kualitas pemahaman pemakai
terhadap aplikasi yang dikembangkan serta teknollogi yang digunakan dalam
sistem.
ü Kekurangan
a. Karena pemakai sistem harus mengembangkan
aplikasinya sendiri, maka dalam hal ini pemakai sekaligus pengembang
sistem dituntut untuk memiliki pemahaman mengenai teknologi informasi(computer
literacy) serta pemahaman tentang pengembangan sistem infomasi.
b. End user computing memiliki resiko dapat
menggangu bahkan merusak system informasi di luar yang dikembangkan oleh
pemakai sistem.
c. End user computing pasti akan berhadapan dengan
maslah kemampuan teknis pemakai sekaligus pengembang sistem.