Anda di halaman 1dari 7

1.

Model Model Proses Perangkat Lunak


A. Model Waterfall
Model Waterfall jiga disebut sebagai Model Sekuensial Linier atau Model Air Terjun merupakan
paradigma rekayasa perangkat lunak yang paling tua dan paling banyak dipakai karana mudah aplikasikan
dan memberikan template tentang metode analisis, desain, gkodean, pengujian, dan pemeliharaan. Model
ini mengusulkan sebuah pendekatan perkembangan perangkat lunak yang sistematik dan sekunsial yang
dimulai pada tingkat dan kemajuan sistem pada seluruh analisis, desain , kode, pengujian, dan
pemeliharaan.
Tahapan-tahapan Model Waterfall
1. Rekayasa dan Pemodelan Sistem/Informasi
Karena perangkat lunak merupakan bagian dari suatu sistem maka langkah pertama dimulai
dengan membangun syarat semua elemen sistem dan mengalokasikan ke perangkat lunak dengan
memeperhatiakn hubungannya dengan manusia, perangkat keras dan database.
2. Analisis Kebutuhan Perangkat Lunak
Proses menganalisis dan pengumpulan kebutuhan sistem yang sesuai dengan domain informasi
tingkah laku, unjuk kerja, dan antar muka (interface) yang diperlukan. Kebutuhan-kebutuhan
tersebut didokumentasikan dan dilihat lagi dengan pelanggan.
3. Desain
Proses desain akan menerjemahkan syarat kebutuhan ke sebuah perancangan perangkat lunak
yang dapat diperkirakan sebelum dibuat coding. Proses ini berfokus pada struktur data, arsitektur
perangkat lunak, representasi interface, dan detail (algoritma) prosedural.
4. Pengkodeaan (Coding)
Pengkodean merupakan proses menerjemahkan desain ke dalam suatu bahasa yang bisa
dimengerti oleh komputer.
5. Pengujian
Proses pengujian dilakukan pada logika internal untuk memastikan semua pernyataan sudah
diuji. Pengujian eksternal fungsional untuk menemukan kesalahan-kesalahan dan memastikan
bahwa input akan memberikan hasil yang aktual sesuai yang dibutuhkan.
6. Pemeliharaan
Perangkat lunak yang sudah disampaikan kepada pelanggan pasti akan mengalami perubahan.
Perubahan tersebut bisa karena mengalami kesalahan karena perangkat lunak harus menyesuaikan
dengan lingkungan (periperal atau sistem operasi baru) baru, atau karena pelanggan
membutuhkan perkembangan fungsional atau unjuk kerja.
Kekurangan Model Waterfall:
Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus
dilakukan pada tahap awal proses.
Hal ini mengakibatkan sulitnya untuk merespon perubahan kebutuhan pengguna (user).
Model air terjun harus digunakan hanya ketika persyaratan dipahami dengan baik.
Kelebihan Model Waterfall:

Bisa digunakan jika suatu persyaratan untuk membuat suatu software sudah dipahami dengan
baik dan sudah lengkap semua persyaratan yang ada.

B. RAD
Rapid Aplication Model (RAD) adalah sebuah proses perkembangan perangkat lunak sekuensial linier
yang menekankan siklus perkembangan yang sangat pendek. RAD merupakan sebuah adaptasi
kecepatan tinggi dari model sekuensial linier dimana perkembangan cepat dicapai dengan
menggunakan pendekatan konstruksi berbasis komponen. Jika kebutuhan dipahami dengan baik, proses
RAD memungkinkan tim pengembangan menciptakan sistem fungsional yang utuh dalam periode
waktu yang sangat pendek (kira-kira 60 sampai 90 hari).
Kelebihan Penggunaan RAD
Dimungkinkan dalam proses pembuatan membutuhkan waktu yang sangat singkat (60-90 hari).
Menghemat biaya, karena penekannya adalah penggunaan komponen-komponen yang sudah ada.
RAD menggunakan kembali komponen-komponen yang sudah ada, maka beberapa komponen
program sudah diuji sehingga kita dapat melakukan penghematan waktu dalam uji coba
Kekurangan Penggunaan RAD
Bagi proyek yang besar tetapi berskala, RAD memerlukan sumber daya manusia yang memadai
untuk menciptakan jumlah tim RAD yang baik.
RAD menuntut pengembangan dan pelanggan yang memiliki komitmen di dalam aktifitas rapidfire yang diperlukan untuk melengkapi sebuah sistem, di dalam kerangka waktu yang sangat
diperpendek. Jika komitmen tersebut tidak ada, proyek RAD akan gagal. RAD menekankan
perkembangan komponen program yang bisa dipakai kembali. Reusable menjadi batu pertama
teknologi objek dan ditemui di dalam proses rakitan komponen
Tidak semua aplikasi sesuai untuk RAD. Bila sistem tidak dapat dimodulkan dengan teratur,
pembangunan komponen penting pada RAD akan menjadi sangat problematis.
RAD menjadi tidak sesuai jika risiko teknisnya tingggi. Hal ini terjadi bila sebuah aplikasi baru
memforsir teknologi baru atau bila perangkat lunak baru membutuhkan tingkat interoperabilitas
yang tinggi dengan program komputer yang ada.
C. Model Prototype
Metode prototyping adalah sistem informasi yang menggambarkan hal-hal penting dari sistem informasi
yang akan datang. Prototipe sistem informasi bukanlah merupakan sesuatu yang lengkap, tetapi sesuatu
yang harus dimodifikasi kembali, dikembangkan, ditambahkan atau digabungkan dengan sistem
informasi yang lain bila perlu.
Jenis-Jenis Prototyping
1. Feasibility prototyping digunakan untuk menguji kelayakan dari teknologi yang akan digunakan
untuk system informasi yang akan disusun.
2. Requirement prototyping digunakan untuk mengetahui kebutuhan aktivitas bisnis user.
3. Desain Prototyping digunakan untuk mendorong perancangan system informasi yang akan
digunakan.
2

4. Implementation prototyping merupakan lanjytan dari rancangan protipe, prototype ini langsung
disusun sebagai suatu system informasi yang akan digunakan.
Keunggulan Prototyping:
User dapat berpartisipasi aktif
Penentuan kebutuhan lebih mudah diwujudkan
Mempersingkat waktu pengembangan SI
Kelemahan Prototyping :
Proses analisis dan perancangan terlalu singkat
Mengesampingkan alternatif pemecahan masalah
Bisanya kurang fleksible dalam mengahadapi perubahan
Prototype yang dihasilkan tidak selamanya mudah dirubah
Prototype terlalu cepat selesai
D. Model Spiral
Model ini cukup baru ditemukan,yaitu tahun 1988 oleh Barry Boehm. Spiral adalah salah satu bentuk
evolusi yang menggunakan metode iterasi natural yang dimiliki oleh model prototyping dan digabungkan
dengan aspek sistematis yang dikembangkan model waterfall.
Spiral model dibagi menjadi beberapa framework aktivitas, yang disebut dengan task regions.
Kebanyakan aktivitas-aktivitas tersebut dibagi antara 3 sampai 6 aktivitas. Berikut adalah aktivitasaktivitas yang dilakukan dalam spiral model :
1. Customer communication. Aktivitas yang dibutuhkan untuk membangun komunikasi yang
efektif antara developer dengan user/customer terutama mengenai kebutuhan dari customer.
2. Planning. Aktivitas perencanaan ini dibutuhkan untuk menentukan sumberdaya, perkiraan waktu
pengerjaan, dan informasi lainnya yang dibutuhkan untuk pengembangan software.
3. Analysis risk. Aktivitas analisis resiko ini dijalankan untuk menganalisis baik resiko secara
teknikal maupun secara manajerial. Tahap inilah yang mungkin tidak ada pada model proses yang
juga menggunakan metode iterasi, tetapi hanya dilakukan pada spiral model.
4. Engineering. Aktivitas yang dibutuhkan untuk membangun 1 atau lebih representasi dari aplikasi
secara teknikal.
5. Construction & Release. Aktivitas yang dibutuhkan untuk develop software, testing, instalasi
dan penyediaan user/costumer support seperti training penggunaan software serta dokumentasi
seperti buku manual penggunaan software.
6. Customer evaluation. Aktivitas yang dibutuhkan untuk mendapatkan feedback dari user/
customer berdasarkan evaluasi mereka selama representasi software pada tahap engineering
maupun pada implementasi selama instalasi software pada tahap construction and release.
Kelebihan model Spiral :
Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak komputer.
Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar
Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap
tingkat evolusi karena perangkat lunak terus bekerja selama proses
Kelemahan model Spiral:
3

Sulit untuk menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol.
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

E. Model incremental
Model Incremental dalam rekayasa perangkat lunak, menerapkan rekayasa perangkat lunak perbagian,
hingga menghasilkan perangkat lunak yang lengkap. Proses membangun berhenti jika produk telah
mencapai seluruh fungsi yang diharapkan.
Adapun beberapa tahapan yang ada pada model incremental dimana tahapan-tahapan tersebut dilakukan
secara berurutan. Setiap bagian yang sudah selesai dilakukan testing, dikirim ke pemakai untuk langsung
dapat digunakan.
Tahapan Incremental Model adalah :
1. Requirement
2. Specification
3. Architecture Design
Incremental Model merupakan gabungan antara model linear sekuensial dan prototyping. Setiap linear
sekuen menghasilkan produk yang deliveriables. Increment pertama merupakan produk inti yang
mengandung persyaratan/kebutuhan dasar. Penambahan dilakukan pada increment-incremet berikutnya.
Keunggulan dari Incremental Model :
Personil bekerja optimal
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 bagian per bagian
Memaksimalkan pengembalian modal investasi konsumen
Kekurangan dari Incremental Model :
Cocok untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding)
Mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana spesifikasi
masing-masing hasil increment
Dapat menjadi build and Fix Model, karena kemampuannya untuk selalu mendapat perubahan
selama proses rekayasa berlangsung
F. Component-based Development Model
Component-based development sangat berkaitan dengan teknologi berorientasi objek. Pada pemrograman
berorientasi objek, banyak class yang dibangun dan menjadi komponen dalam suatu software. Class-class
tersebut bersifat reusable artinya bisa digunakan kembali. Model ini bersifat iteratif atau berulang-ulang
prosesnya.
Secara umum proses yang terjadi dalam model ini adalah:
4

1. Identifikasi class-class yang akan digunakan kembali dengan menguji class tersebut dengan data
yang akan dimanipulasi dengan aplikasi/software dan algoritma yang baru
2. Class yang dibuat pada proyek sebelumnya disimpan dalam class library, sehingga bisa langsung
diambil dari library yang sudah ada. Jika ternyata ada kebutuhan class baru, maka class baru
dibuat dengan metode berorientasi objek.
3. Bangun software dengan class-class yang sudah ditentukan atau class baru yang dibuat,
integrasikan.
Penggunaan kembali komponen software yang sudah ada menguntungkan dari segi:
Siklus waktu pengembangan software, karena mampu mengurangi waktu 70%
Biaya produksi berkurang sampai 84% arena pembangunan komponen berkurang
Pembangunan software dengan menggunakan komponen yang sudah tersedia dapat menggunakan
komponen COTS (Commercial off-the-shelf) yang bisa didapatkan dengan membeli atau komponen
yang sudah dibangun sebelumnya secara internal. Component-Based Software Engineering (CBSE)
adalah proses yang menekankan perancangan dan pembangunan software dengan menggunakan
komponen software yang sudah ada. CBSE terdiri dari dua bagian yang terjadi secara paralel yaitu
software engineering (component-based development) dan domain engineering.
G. Extreme Programming (XP) Model
Model proses ini diciptakan dan dikembangkan oleh Kent Beck. Model ini adalah model proses yang
terbaru dalam dunia rekayasa perangkat lunak dan mencoba menjawab kesulitan dalam pengembangan
software yang rumit dan sulit dalam implementasi. Menurut Kent Beck XP adalah : A lightweight,
efficient, low-risk, flexible,predictable, scientific and fun way to develop software. Suatu model yang
menekankan pada:
Keterlibatan user secara langsung
Pengujian
Pay-as-you-go design
Adapun empat nilai penting dari XP
1. Communication/Komunikasi : komunikasi antara developer dan klien sering menjadi masalah.
Karena itu komunikasi dalam XP dibangun dengan melakukan pemrograman berpasangan (pair
programming). Developer didampingi oleh pihak klien dalam melakukan coding dan unit testing
sehingga klien bisa terlibat langsung dalam pemrograman sambil berkomunikasi dengan
developer. Selain itu perkiraan beban tugas juga diperhitungkan.
2. Simplicity/ sederhana: Menekankan pada kesederhanaan dalam pengkodean.
3. Feedback / Masukan/Tanggapan: Setiap feed back ditanggapi dengan melakukan tes, unit test
atau system integration dan jangan menunda karena biaya akan membengkak (uang, tenaga,
waktu).
4. Courage / Berani: Banyak ide baru dan berani mencobanya, berani mengerjakan kembali dan
setiap kali kesalahan ditemukan, langsung diperbaiki.

2. Analisis Kebutuhan

A. Proses Rekayasa Kebutuhan

B. Studi Kelayakan
Studi Kelayakan memutuskan apakah sistem software yang akan dibuat sudah mencakup seluruh aspek
permasalahan
Melakukan studi untuk menguji apakah sistem:

sudah sesuai dengan tujuan organisasi


dapat dikembangkan dengan teknologi terkini dan dana yang tersedia
dapat diintegrasikan dengan sistem lain yang sudah digunakan
C. Implementasi Study Kelayakan

Berbasikan pada penilaian informasi (apa yg dibutuhkan), pengumpulan informasi dan penulisan laporan
Pertanyaan ke personal di organisasi:

Apa yang akan terjadi apabila sistem tidak diimplementasikan?


Masalah proses apa yang ada ?
Apa yang dapat dibantu oleh sistem ?
Masalah apa yang akan muncul pada proses Integrasi ?
Adakah teknologi baru yang dibutuhkan? Skill yang dibutuhkan ?
Fasilitas apa yang harus didukung oleh sistem ?

D. Proses Analisisa Kebutuhan

E. Pengujian Pendefenisisan Kebutuhan

Bertujuan untuk meyakinkan bahwa kebutuhan yang sudah didefinisikan sesuai dengan
yang diinginkan pengguna
Menghindari Kesalahan pendefinisian kebutuhan karena akan menyebabkan penambahan
biaya yang besar
a. Memperbaiki definisi kebutuhan stelah software dikirim akan menyebabkan
peningkatan biaya hingga 100 kali.

F. Teknik Validasi Kebutuhan

Validasi. Apakah sudah sesuai dengan yang diinginkan


Konsistensi. Adakah konflik dengan kebutuhan lainnya
Lengkap: Apakah sudah termasuk semua fungsi yang dibutuhkan
Realisasi: Dapatkan kebutuhan diimplementasikan ke dana dan teknologi yang tersedia
Dapat diverifikasi: Dapatkah spesifikasi kebutuhan dicek

Anda mungkin juga menyukai