(PEMODELAN PERANGKAT LUNAK) MATERI PPL KELAS XI
1. Konsep Dasar Pemodelan Perangkat Lunak
1. Apa itu perangkat lunak?
Perangkat lunak merupakan program
komputer yang berfungsi menghubungkan antara pengguna dan komputer yang
digunakan.
dapat dibilang perangkat lunak merupakan sebagai media
penerjemah perintah yang diberikan oleh pengguna kepada komputer untuk
selanjutnya diproses melalui perangkat keras komputer tersebut.Perangkat
lunak umumnya digunakan untuk mengontrol perangkat keras yang biasa
disebut sebagai device driver, melakukan proses penghitungan,
berinteraksi dengan perangkat lunak yang lebih mendasar lainnya, seperti
sistem operasi dan bahasa pemrograman.
Secara umum ada tiga jenis perangkat
lunak yang diketahui hingga saat ini yaitu sistem operasi yang merupakan
sebuah penghubung antara pengguna dari komputer dengan perangkat keras
komputer. Kedua yaitu perangkat lunak bahasa pemrograman seperti java.
Dan yang ketiga yaitu perangkat lunak aplikasi yang merupakan penrangkat
yang digunakan untuk membantu dan memudahkan pekerjaan seseorang
misalnya saja Microsoft Excel, Word, dan Power Point
2. Apa itu Rekayasa Perangkat Lunak?
Rekayasa atau teknik merupakan
penerapan ilmu dan teknologi untuk menyelesaikan permasalahan manusia.
Hal ni diselesaikan lewat pengetahuan, matematika, dan pengalaman
praktis yang diterapkan untuk mendesain objek atau proses yang berguna.
Para praktisi teknik professional disebut perekayasa.
Rekayasa perangkat lunak atau Software
engineering dalam bahasa inggris merupakan bidang ilmu yang mempelajari
tentang segala aspek perangkat lunak, seperti cara-cara pengembangan,
pemeliharaan , pembuatan, serta manajemen kualitas perangkat lunak.
Rekayasa perangkat lunak jugamerupakan
disiplin rekayasa dengan perangkat lunak yang dikembangkan. Biasanya
proses melibatkan penemuan pada keinginan klien, menyusunnya didalam
daftar kebutuhan, merangcang arsitektur yang mampu mendukung semua
kebutuhan, perancangan, pengodean, pengujian, dan pengintegrasian bagian
yang terpisah, menguju keseluruhan, penyebaran, dan pemeliharaan
perangkat lunak.
3. Apa perbedaan Rekayasa Perangkat Lunak dengan Ilmu Komputer?
Perbedaan antara rekayasa perangkat
lunak dengan ilmu koputer sudah terlihat dari Bahasa Inggrisnya rekayasa
perangkat lunak dalam Bahasa Inggris disebut sebagai software
engineering , sedangkan ilmu komputer dalam bahasa inggris disebut
science. Dari segi ilmu yang dipelajari rekayasa perangkat lunak
merupakan bidang ilmu yang mempelajari tentang perangkat lunak,
sedangkan ilmu komputer mempelajari tentang komputasi, perangkat keras,
serta beragam topic yang berkaitan dengan komputer.serta ilmu komputer
lebih menekankan pada pemrograman komputer sedangkan rekayasa perangkat
lunak tidak. Selain itu rekayasa perangkat lunak lebih mengedepankan
prakteknya, sedangkan ilmu komputer lebih mengedepankan teori.
4. Apa perbedaan rekayasa perangkat lunak dengan rekayasa sistem?
Perbedaan antara rekayasa perangkat
lunak dengan rekayasa sistem adalah apabila rekayasa sistem itu
merupakan sebuah kumpulan komponen, konsep, serta alat bantu untuk
merancang dan menginstalasi sebuah sistem perangkat lunak, sedangkan
rekayasa perangkat lunak itu merupakan ilmu yang mempelajari tentang
segala aspek perangkat lunak, seperti cara-cara pengembangan,
pemeliharaan , pembuatan, serta manajemen kualitas perangkat lunak. Jadi
dapat disimpulkan bahwa rekayasa perangkat lunak merupakan bagian dari
rekayasa sistem karena RPL ilmu yang mempelajari tentang pembuatan
perangkat lunak sedangkan rekayasa sistem merupakan kumpulan komponen,
konsep, serta alat bantu untuk merancang dan menginstalasi perangkat
lunak.
5. Apa yang dimaksud dengan proses perangkat lunak?
Proses perangkat lunak merupakan proses
bagaimana sebuah perangkat lunak itu dapat terbentuk yang dilakukan
oleh perekayasa perangkat lunak, proses proses tersebut diantaranya
adalah :
A. Proses spesifikasi perangkat lunak.
Pada proses ini fungsi,kemampuan operasi perangkat lunak yang akan
dibuat harus diketahui terlebih dahulu.
B.Proses pengembangan perangkat lunak.
Setelah diketahui fungsi serta kemampuan perangkat lunak yang akan
dibuat selanjutnya perangkat lunak yang telah memenuhi spesifikasi
diproduksi.
C. Proses validasi perangkat lunak.
Pada proses validasi ini perangkat lunak yang telah diproduksi akan
divalidasi sebagai bukti perangkat lunak yang diproduksi berguna sesuai
kebutuhan yang diperlukan.
D. Evolusi perangkat lunak. Dengan
berkembangnya jaman perangkat lunak yang sudah diproduksipun haruslah
berevolusi agar tetap dapat berguna untuk memenuhi kebutuhan pelanggan.
6. Apakah model proses perangkat lunak?
Model proses perangkat lunak merupakan
cara untuk memproses sebuah perangkat lunak dari nol menjadi sebuah
perangkat lunak yang siap untuk digunakan. Berikut merupakan beberapa
contoh model proses perangkat lunak yang biasa digunakan
A. Waterfall Model atau Model Air Terjun
Model air terjun ini merupakan model
klasik yang bersifat sistematis dalam membuat suatu perangkat lunak dan
juga paling sering digunakan.
Pada fase analisis fungsi,kemampuan
operasi perangkat lunak yang akan dibuat harus diketahui terlebih
dahulu. Kemudian apabila analisi telah selesai dilakukan maka
didesainlah perangkat lunak yang akan dibuat. Setelah desain selesai
lalu desain tersebut diterjemahkan kedalam kode-kode dengan bahasa
pemrograman yang diinginkan, misalnya saja C++. Setelah kode selesai
dibuat diadakanlah proses pengetesan terhadap perangkat lunak yang baru
dibuat agar diketahui apakah perangkat yang dibuat bisa berjalan dengan
benar atau tidak.
B. Model Spiral
Model spiral ini dikembangkan oleh
Boehm pada tahun 1988 berdasarkan pada pengalamannya dengan berbagai
perbaikan atas model air terjun yang diaplikasikan pada proyek
pemerintah, khususnya perangkat lunak yang besar. Model ini
dititikberatkan pada pembuatan prototype dan manajemen resiko yang
sangat fleksibel jika dibandingkan dengan model air terjun. Kebanyakan
aplikasi komprehensif dari model ini ada pada pengembangan TRW-Software
Productivity System yang dijabarkan oleh Boehm. Konsep spiral dan focus
manajemen risiko telah memperolah pengakuan di industry rekayasa
perangkat lunak dan manajemen proyek pada tahun-tahun terakhir.
Keuntungan apabila menggunakan model spiral diantaranya :
A. Jangkauan atas pilihan mengakomodasi fitur yang baik untuk proses model perangkat lunak yang sudah ada.
B. Fokus awalnya ada pada pilihan yang
melibatkan penggunaan ulang perangkat lunak yang ada. Pilihan ini
mendukung karena identifikasi awa; dengan evaluasi dari
alternative-alternatif adalah kunci di setiap siklus spiral.
C. Model spiral juga menyediakan
mekanisme untuk tujuan kualtias dan perangkat lunak gabungan
kepengembangan produk perangkat lunak.
D. Model spiral mempunyai focus untuk mengeliminasi kesalahan
E. Model spiral menyediakan pendekatan terpisah untuk pengembangan dan pemasangan perangkat lunak.
F. Model spiral menyediakan kerangka
kerja aktif untuk pengembangan sistem perangkat keras dan perangkat
lunak yagn terintegrasi.
Sedangkan kerugian apabila menggunakan model spiral diantaranya :
A. Kebanyakan perangkat lunak yang
menggunakan model spiral menitikberatkan pada control, titik periksa,
yang merupakan keunggulan dari model air terjun.
B. Karena model spiral ini bersifat
fleksibel serta dinamis maka langkah spiral ini harus diteliti lebih
lanjut untuk mendapatkan konsistensi, penjajakan, dan control yang
diinginkan. Penelitian dan control sangat penting , khususnya untuk area
analisis resiko dan manajemen.
7. Berapa biaya Rekayasa Perangkat Lunak?
Biaya untuk rekayasa perangkat lunak
bervariasi tergantung pada jenis sistem yang akan dibuat ,atribut
perangkat serta kinerja dan kehandalan perangkat yang akan dibuat,
contohnya saja sistem yang berskala internasional tentunya memerlukan
biaya yang lebih mahal apabila dibandingkan dengan sistem yang berskala
nasional. Tabel dibawah ini menjelaskan perkiraan pengeluaran rekayasa
perangkat lunak
Akurasi Manajemen Proyek (dari PMBOK edisi
3, PMI, 2004)
|
Akurasi pengembangan perangkat lunak(dari
rapid development, McConnell, 1996)
|
||
Konseptual
|
30% kebawah sampai 50% keatas
|
75% kebawah hingga 300% keatas
|
Konsep Produk Awal
|
Persiapan
|
20% kebawah hingga 30% keatas
|
50% kebawah hingga 100% keatas
|
Definisi produk yang disetujui
|
Kepastian
|
15% kebawah hingga 20% keatas
|
33% kebawah hingga 50% keatas
|
Spesifikasi Kebutuhan
|
Kontrol
|
10% kebawah hingga 15% keatas
|
20% kebawah hingga 25% keatas
|
Spesifikasi rancangan proyek
|
8. Apa saja metode-metode RPL?
Metode-metode dalam rekayasa perangkat
lunak merupakan cara yang dilakukan untuk mengembangkan perangkat lunak
yang meliputi deskripsi model sistem, aturan, rekomendasi, panduan
proses, dan bimbingan. Deskripsi model sistem merupakan model sistem
yang akan digunakan contohnya model waterfall. Aturan merupakan batasan
yang diberikan kepada model sistem yang telah ditentukan, misalnya
setiap entitas pada model sistem diharuskan memiliki nama entitas yang
berbeda antara satu entitas dengan entitas lainnya. Rekomendasi berupa
saran yang diberikan agar dapat membentuk perancangan yang baik dan
sesuai fungsinya. Panduan proses merupakan aktifitas yang bisa diikuti
untuk mengembangkan model sistem. Proses bimbingan yaitu serangkaian
kegiatan yang akan diikutin untuk mengembangkan model sistem.
9. Apa yang dimaksud dengan CASE(Computer Aided Software Engineering)?
Yang dimaksud dengan CASE(Computer
Aided Software Engineering) adalah serangkaian aplikasi dan metode untuk
perangkat lunak yang otomatis dapat memberikan dukungan untuk kegiatan
proses perangkat lunak. Ada dua jenis CASE yaitu upper-CASE yaitu alat
untuk mendukung kegiatan proses awal persyaratan dan lower-CASE yaitu
alat yang mendukung kegiatan yang selanjutnya seperti pemrograman,
pengujian , debugging.
10. Apakah atribut perangkat lunak yang baik?
Atribut perangkat lunak yang baik diantaranya :
A. Maintainability yaitu perangkat
lunak harus bisa di pelihara demi memenuhi kebutuhan pelanggan yang
semakin lama menginginkan kemudahan.
B. Dependability, yaitu perangkat lunak harus dapat diandalkan dan dipercaya dan tidak mengecewakan penggunanya.
C. Acceptability, yaitu perangkat lunak
yang sudah diproduksi harus diterima sepenuhnya oleh pengguna yang
memesannya. Ini berarti perangkat harus dapat dapat digunakan dengan
mudah oleh pengguna.
D. Usability , perangkat lunak yang harus dapat digunakan sesuai dengan fungsi awal yang telah ditentukan oleh penggunanya.
E. Efisien, yaitu perangkat lunak haruslah efisien baik dalam penggungannya maupun sumber daya yang digunakan.
11. Apa tantangan kunci yang dihadapi Rekayasa Perangkat Lunak?
Tantangan kunci yang dihadapi rekayasa perangkat lunak diantaranya :
A. Tantangan pengiriman, yaitu tantangan untuk mempercepat waktu pengiriman perangkat lunak tanpa mengurangi kualitas sistemnya.
B. Tantangan pemeliharaan, yaitu
tantangan dalam melakukan pemeliharaan dan peng-updatean perangkat lunak
agar biaya yang digunakan dapat di minimalisir sesedikit mungkin.
C. Tantangan heterogenitas , yaitu
tantangan dalam pengembangan untuk membangun perangkat lunak yang dapat
diandalkan dan flexible untuk menghadapi heterogenitas yang ada.
D. Adanya killer application yang bisa lebih dikostumisasi, interaktif, dinamis, dan penuh gaya
E. User power an authority, dimana
pengguna bisnis dan pengguna individu adalah pihak yang lebih kuat,
berpengalaman dan selektif.
F. Adanya market share dimana pesaing menjadi lebih agresif, dan inovatif.
2. MODEL PROSES PERANGKAT LUNAK
1. Model Waterfall
3. Model Incremental
Proyek SITINA dimulai dengan kebutuhan terhadap suatu sistem EDM utilitas yang harus melalukan pemantauan dengan mudah, benar-benar otomatis,pada pembangkit listrik tenaga air . Tujuan utama adalah untuk mengembangkan aplikasi dengan biaya rendah yang memungkinkan dewan direksi untuk memonitor pembangkit listrik tersebut dan mengambil data statistik pada produksi mereka.
Hal ini tidak dalam melingkupi penjelasan rinci tentang SITINA . Namun, seperti yang dapat kita lihat dari akhir arsitektur umum pada Gambar 1, kita berhadapan dengan sistem yang kompleks dengan SCADA/EMS2 yang terbentuk dari penggunaan banyak teknologi dari beberapa produk-produk perangkat lunak yang berbeda.
5. Model Prototype
7. Model Rapid Application Development (RAD)
Rapid Aplication Development (RAD) adalah sebuah model proses perkembanganperangkat lunak sekuensial linier yang menekankan siklus perkembangan yang sangat pendek (kira-kira 60 sampai 90 hari). Model RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model sekuensial linier dimana perkembangan cepat dicapai dengan menggunakan pendekatan konstruksi berbasis komponen.
Kelebihan Model RAD :
Referensi: http://id.wikipedia.org/wiki/Proses_pengembangan_perangkat_lunak
Model
Waterfall merupakan salah satu model untuk perencanaan dari sebuah Perangkat
Lunak. Model Waterfall adalah salah satu model klasik yang bersifat sistematis.
Mengapa disebut sistematis ? Karena model ini dikerjakan secara berurutan.
Penggunaan model ini dalam penerapan di kehidupan sehari-hari sangatlah memakan
waktu dan sangat sedikit dipakai membuat software. Namun model ini cocok untuk
bisnis kecil.
contoh model waretfall |
Kelebihan Model Waterfall :
- Merupakan model pengembangan paling handal dan paling lama digunakan.
- Cocok untuk sistem software yang bersifat generik.
- Pengerjaan projek sistem akan terjadwal dengan baik dan mudah dikontrol.
Kekurangan Model Waterfall :
- Persyaratan sistem harus digambarkan dengan jelas.
- Rincian proses harus benar-benar jelas dan tidak boleh berubah ubah
- Sulit untuk mengadaptasi jika terjadi perubahan spesifikasi pada suatu tahapan pengembangan
Contoh Studi
Kasus :
Perkembangan ilmu pengetahuan dan
teknologi saat ini, telah mempengaruhi aktivitas perpustakaan dalam pengolahan
informasi. Perpustakaan dapat diibaratkan sebagai satu kesatuan. Dalam artian,
sebuah perpustakaan merupakan satu kesatuan sistem yang saling mempengaruhi
satu sama lain untuk mencapai tujuan tertentu. Tetapi dengan pertumbuhan sebuah
perpustakaan, ada kalanya suatu sistem pada sebuah perpustakaan menjadi tidak
efektif dan efisien dalam menangani permasalahan yang muncul. Seperti misalnya,
kebutuhan pengolahan data yang semakin meningkat, aturan pengolahan data yang
semakin bervariasi, aturan dari dalam atau luar perpustakaan, dapat digunakan
sebagai indikator adanya permasalahan. Untuk mengatasi permasalahan tersebut,
diperlukan suatu sistem yang dapat mendukung operasi yang bersifat manajerial
dan kegiatan strategi dari suatu perpustakaan demi tercapainya tujuan, sebuah
sistem yang dinamakan sistem informasi.
2. Model Spiral
Model spiral (spiral model) adalah model
pengembangan software dimana proses digambarkan sebagai spiral. Setiap loop
akan mewakili satu fase dari proses pembuatan/perancangan software. Loop paling
dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi
dari kebutuhan, loop berikutnya berkaitan dengan desain sistem dan seterusnya,
seperti gambar berikut: contoh model spiral |
Kelebihan Model Spiral :
- Setiap tahap pengerjaan dibuat prototyping sehingga kekurangan dan apa yang diharapkan oleh client dapat diperjelas dan juga dapat menjadi acuan untuk client dalam mencari kekurangan kebutuhan.
- Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar.
- Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak komputer.
- Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses.
- Menggunakan prototipe sebagai mekanisme pengurangan resiko dan pada setiap keadaan di dalam evolusi produk.
- Tetap mengikuti langkah-langkah dalam siklus kehidupan klasik dan memasukkannya ke dalam kerangka kerja iteratif.
- Membutuhkan pertimbangan langsung terhadap resiko teknis sehingga mengurangi resiko sebelum menjadi permaslahan yang serius.
Kekurangan
Model Spiral :
- Banyak konsumen (Client) tidak percaya bahwa pendekatan secara evolusioner dapat dikontrol oleh kedua pihak.
- Model spiral mempunyai resiko yang harus dipertimbangkan ulang oleh konsumen dan developer.
- Memerlukan tenaga ahli untuk memperkirakan resiko, dan harus mengandalkannya supaya sukses.
- Belum terbukti apakah metode ini cukup efisien karena usianya yang relatif baru.
- Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika resiko mayor tidak ditemukan dan diatur.
- Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolute.
Contoh Studi
Kasus :
Sidik jari (bahasa Inggris:
fingerprint) adalah hasil reproduksi tapak jari baik yang sengaja diambil,
dicapkan dengan tinta, maupun bekas yang ditinggalkan pada benda karena pernah
tersentuh kulit telapak tangan atau kaki. Kulit telapak adalah kulit pada
bagian telapak tangan mulai dari pangkal pergelangan sampai kesemua ujung jari,
dan kulit bagian dari telapak kaki mulai dari tumit sampai ke ujung jari yang
mana pada daerah tersebut terdapat garis halus menonjol yang keluar satu sama
lain yang dipisahkan oleh celah atau alur yang membentuk struktur tertentu.
Identifikasi sidik jari, dikenal dengan daktiloskopi adalah ilmu yang
mempelajari sidik jari untuk keperluan pengenalan kembali identitas orang
dengan cara mengamati garis yang terdapat pada guratan garis jari tangan dan
telapak kaki. Daktiloskopi berasal dari bahasa Yunani yaitu dact ylos yang
berarti jari jemari atau garis jari, dan scopein yang artinya mengamati atau
meneliti. Kemudian dari pengertian itu timbul istilah dalam bahasa Inggris,
dactyloscopy yang kita kenal menjadi ilmu sidik jari. Fleksibilitas dari
gelombang pada kulit berarti tidak ada dua sidik jari atau telapak tangan yang
sama persis pada setiap detailnya. Pengenalan sidik jari melibatkan seorang
pakar, atau sebuah sistem pakar komputer, yang menentukan apakah dua sidik jari
berasal dari jari.
Identifikasi berdasarkan sidik
jari adalah daerah aktif penelitian di biometrik menerapkan berbagai umum dan
teknik kode domain-spesifik optimasi untuk secara efisien melaksanakan tahap
pendaftaran, yang mengambil sebagai masukan serangkaian gambar sidik jari dan
menghasilkan diadaptasi packet pohon dan template wavelet domain yang terkait.
Itu kode untuk identifikasi sebenarnya kemudian dihasilkan automati-Cally dari
deskripsi matematika. Algoritma identifikasi sidik jari kembali quires
perhitungan matematika yang berat, sehinggasatu al-gorithm bisa memiliki
runtimes berbeda tergantung pada Implementasi algoritma. Algoritma ini terdiri
dari 2 tahap, tahap pelatihan dan tahap verifikasi. Namun penting untuk
memiliki efisien pelaksanaan tahap pelatihan untuk memungkinkan pengembang
algoritma untuk dengan cepat menjalankan dan menguji uji beda kasus. Tahap
verifikasi dilakukan secara on-line sehingga itu perlu secepat mungkin. Kualitas
sidik jari sistemidentifikasi tidak hanya tergantung pada keakuratan.
3. Model Incremental
Dalam model Incremental ini
proses pengerjaan perangkat lunak akan dilakukan perbagian sehingga bagian
selanjutnya akan dikerjakan setelah bagian awal telah selesai dan selanjutnya
sampai menghasilkan perangkat lunak yang lengkap dengan semua fungsi yang
diperlukan dan pengerjaan perangkat lunak berakhir. Sebelum pengerjaan
perangkat lunak akan dilakukan perancangan arsitektur software sebagai kerangka
dalam pengerjaan perbagian.
contoh model incremental |
Kelebihan Model Incremental :
- Resiko yang rendah pada pengembangan sistem.
- Mengutamakan fungsi-fungsi pada sistem perangkat lunak sehingga kemudahan pemakaian sistem yang paling di utamakan.
- Tahap awal adalan dasar dari pembuatan tahap berikutnya (dikerjakan secara terurut).
- Cocok digunakan bila pembuat software tidak banyak/kekurangan pembuat
- Mampu mengakomodasi perubahan kebutuhan customer.
- Mengurangi trauma karena perubahan sistem. Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian.
- Memaksimalkan pengembalian modal investasi konsumen.
Kekurangan
Model Incremental :
- Hanya akan berhasil jika tidak ada staffing untuk penerapan secara menyeluruh.
- Penambahan staf dilakukan jika hasil incremental akan dikembangkan lebih lanjut.
- Hanya cocok untuk proyek dengan skala kecil.
- kemungkinan tiap bagian tidak dapat diintegrasikan.
Contoh Studi
Kasus:
Dalam sebuah software, adanya
sebuah Graphical User Interface akan jauh lebih memudahkan pengguna software
untuk berinteraksi dengan software, dikarenakan tampilan GUI akan jauh lebih
meminimalkan kesalahan penggunaan dari user daripada pada aplikasi yang
berbasis console. Selain itu, aplikasi yang menggunakan GUI akan jauh lebih
menarik dan user-friendly daripada aplikasi yang berbasis console
Aplikasi yang akan dibuat adalah
aplikasi yang akan dijalankan pada perangkat mobile (handphone), karena memang
aplikasi mobile banking lebih ditujukan untuk mengimbangi mobilitas seseorang
dengan tetap dapat melaksanakan aktifitas perbankan. aplikasi disini bukanlah
aplikasi besar yang berlevel enterprise, sehingga baris kodennya juga tidak
terlalu banyak.
Software yang nantinya
dikembangkan haruslah memenuhi beberapa kriteria diantaranya : aplikasinya
tidak membutuhkan resource yang besar, dapat berjalan di perangkat mobile,
kecepatan proses transaksi haruslah cepat, aplikasi nantinya bisa dikembangkan
lebih lanjut untuk mengimbangi kebutuhan pengguna software.
4. Model Evolusi
Model evolusi adalah sebuah model
yang berulang-ulang. Model ini memiliki karakteristik yang memungkinkan para
programmer mengembangkan perangkat lunaknya menjadi semakin lengkap di tiap
versinya. Model ini diterapkan karena persyaratan (requierement) sering
berubah sehingga hasil akhir dari sebuah produk tidak akan realistis, dimana
edisi komplit dari produk tersebut mustahil dikeluarkan dikarenakan deadline
market yang begitu ketat. Oleh karena itu lebih baik mengeluarkan
versi limited untuk memperkenalkannya terlebih dahulu dan programmer dapat membuat
model dari sebuah design untuk mengakomodasikan produk, yang secara bertahap
akan diselesaikan dari waktu ke waktu.
contoh model evolusi |
Kelebihan Model Evolusi :
- Meningkatkan kemampuan memimpin dan mengatur sesuatu dengan pengembangan diri.
- Menciptakan suasana yang sadar akan kualitas suatu produk.
- Fungsi inti dari quality control dalam perusahaan besar pada tingkat lokakarya.
- Meningkatkan kebersamaan untuk mencapai suatu hasil dan semangat kerja karyawan.
- Meningkatkan kualitas dengan biaya efektif.
- Membebaskan manajemen.
- pekerja Shop Floor adalah lokasi terbaik untuk mengidentifikasi masalah.
Kekurangan Model Evolusi :
- Intensitas pekerjaan meningkat karena masalah akan lebih banyak dari pada yang diperkirakan.
- Manajemen perlu berkomitmen untuk sistem yang berkualitas, jika sebuah solusi dari sebuah masalah tidak dapat diterapkan maka itu bisa membuat frustasi para pekerja.
- Dapat memiliki efek negatif pada hubungan industrial.
- Dapat fokus pada masalah duniawi.
Proyek SITINA dimulai dengan kebutuhan terhadap suatu sistem EDM utilitas yang harus melalukan pemantauan dengan mudah, benar-benar otomatis,pada pembangkit listrik tenaga air . Tujuan utama adalah untuk mengembangkan aplikasi dengan biaya rendah yang memungkinkan dewan direksi untuk memonitor pembangkit listrik tersebut dan mengambil data statistik pada produksi mereka.
Hal ini tidak dalam melingkupi penjelasan rinci tentang SITINA . Namun, seperti yang dapat kita lihat dari akhir arsitektur umum pada Gambar 1, kita berhadapan dengan sistem yang kompleks dengan SCADA/EMS2 yang terbentuk dari penggunaan banyak teknologi dari beberapa produk-produk perangkat lunak yang berbeda.
5. Model Prototype
Prototype merupakan salah satu metode pengembangan perangat
lunak yang banyak digunakan. Dengan metode prototyping ini pengembang dan
pelanggan dapat saling berinteraksi selama proses pembuatan sistem.
Prototyping, dimulai dengan pengumpulan kebutuhan, mendefinisikan objektif
keseluruhan dari software, mengidentifikasikan segala kebutuhan, kemudian
dilakukan “perangcangan kilat” yang difokuskan pada penyajian aspek yang
diperlukan.
contoh model prototyping |
Kelebihan :
- Prototype melibatkan user dalam analisa dan desain.
- Punya kemampuan menangkap requirement secara konkret daripada secara abstrak.
- Untuk digunakan secara standalone.
- Digunakan untuk memperluas SDLC.
- Mempersingkat waktu pengembangan Sistem Informasi
Kekurangan :
- Proses analisis dan perancangan terlalu singkat.
- Mengesampingkan alternatif pemecahan masalah.
- Bisanya kurang fleksible dalam mengahdapi perubahan.
- Prototype yang dihasilkan tidak selamanya mudah dirubah
Contoh Studi Kasus :
Dalam pelaksanaannya, system akademik yang berjalan di Sekolah
Menengah Pertama Negeri 20 Bandung dirasa belum optimal, hal ini dikarenakan
sistem yang digunakan masih bersifat manual. Dengan permasalahan tersebutmaka
muncul berbagai permasalahan terutama pada proses pendaftaran,registrasi,
pembagian kelas, pembagian wali kelas, proses penilaian serta informasimengenai
perkembangan siswa kepada orang tua. Untuk itu, diperlukan suatu sistem
informasi yang mampu mendukung pengambilan keputusan dalammemperoleh informasi
kegiatan akademik. Pembuatan Sistem Informasi Akademik Sekolah Menengah Pertama
Negeri 20 Bandung menggunakan pendekatan terstruktur, sedangkan metode
pengembangan menggunakan prototype dengan teknik pengumpulan data observasidan
wawancara, sedangkan alat yang digunakan dalam merancang sistem berupa Flow
Map, Diagram Konteks, DFD dan pengembangan aplikasi berbasis desktop.Sistem
yang dibangun disajikan secara client server sehingga dapat diaksesbeberapa
komputer. Sistem yang dibangun diharapkan dapat mengatasi sebagianbesar
permasalahan yang ada seperti melakukan validasi kerangkapan dataregistrasi dan
nilai siswa, pembagian kelas dan penilaian.
6. Model V / V-Model.
Bisa dikatakan model ini merupakan
perluasan dari model waterfall. Disebut sebagai perluasan karena tahap-tahapnya
mirip dengan yang terdapat dalam model waterfall. Jika dalam model waterfall
proses dijalankan secara linear, maka dalam model V proses dilakukan bercabang.
Dalam model V ini digambarkan hubungan antara tahap pengembangan software
dengan tahap pengujiannya.
contoh model v-model |
Kelebihan v model :
- V Model sangat fleksibel. V Model mendukung project tailoring dan penambahan dan pengurangan method dantool secara dinamik. Akibatnya sangat mudah untuk melakukan tailoring pada V Model agar sesuai dengan suatu proyek tertentu dan sangat mudah untuk menambahkan method dan tool baru atau menghilangkan method dan tool yang dianggap sudah obsolete.
- V Model dikembangkan dan di-maintain oleh publik. Userdari V Model berpartisipasi dalam change control boardyang memproses semua change request terhadap V Model.
Kekurangan v model :
- V Model adalah model yang project oriented sehingga hanya bisa digunakan sekali dalam suatu proyek.
- V Model terlalu fleksibel dalam arti ada beberapa activitydalam V Model yang digambarkan terlalu abstrak sehingga tidak bisa diketahui dengan jelas apa yang termasuk dalamactivity tersebut dan apa yang tidak.
7. Model Rapid Application Development (RAD)
Rapid Aplication Development (RAD) adalah sebuah model proses perkembanganperangkat lunak sekuensial linier yang menekankan siklus perkembangan yang sangat pendek (kira-kira 60 sampai 90 hari). Model RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model sekuensial linier dimana perkembangan cepat dicapai dengan menggunakan pendekatan konstruksi berbasis komponen.
contoh model RAD |
Kelebihan Model RAD :
- Lebih efektif dari Pengembangan Model waterfall/sequential linear dalam menghasilkan sistem yang memenuhi kebutuhan langsung dari pelanggan.
- Cocok untuk proyek yang memerlukan waktu yang singkat.
- Model RAD mengikuti tahap pengembangan sistem seperti pada umumnya, tetapi mempunyai kemampuan untuk menggunakan kembali komponen yang ada sehingga pengembang tidak perlu membuatnya dari awal lagi sehingga waktu pengembangan menjadi lebih singkat dan efisien.
- Model RAD menuntut pengembangan dan pelanggan memiliki komitmen di dalam aktivitas rapid-fire yang diperlukan untuk melengkapi sebuah sistem, di dalam kerangka waktu yang sangat diperpendek. Jika komitmen tersebut tidak ada, proyek RAD akan gagal.
- Tidak semua aplikasi sesuai untuk RAD, bila system tidak dapat dimodulkan dengan teratur, pembangunan komponen penting pada RAD akan menjadi sangat bermasalah.
- RAD tidak cocok digunakan untuk sistem yang mempunyai resiko teknik yang tinggi.
- Membutuhkan Tenaga kerja yang banyak untuk menyelesaikan sebuah proyek dalam skala besar.
- Jika ada perubahan di tengah-tengah pengerjaan maka harus membuat kontrak baru antara pengembang dan pelanggan.
Referensi: http://id.wikipedia.org/wiki/Proses_pengembangan_perangkat_lunak
Comments
Post a Comment