Ø Model Sekuensial Linier atau
Waterfall Development Model
Model Sekuensial Linier atau sering
disebut Model Pengembangan Air Terjun, merupakan paradigma model pengembangan
perangkat lunak paling tua, dan paling banyak dipakai. Model ini mengusulkan
sebuah pendekatan perkembangan perangkat lunak yang sistematik dan sekunsial
yang dimulai pada tingkat dan kemajuan sistem pada seluruh tahapan analisis,
desain , kode, pengujian, dan pemeliharaan.
·
Karakteristik
Dalam model ini terdapat beberapa
sifat-sifat yang menojol dan cenderung menjadi permasalahan pada model
waterfall.
1) Ketika problem muncul,
maka proses berhenti karena tidak dapat menuju ke tahapan selanjutnya. Apabila
terdapat kemungkinan problem tersebut muncul akibat
kesalahan dari tahapan sebelumnya, maka proses harus membenahi tahapan
sebelumnya agar problem ini tidak muncul.
2) Karena pendekatannya
secara sequential, maka setiap tahap harus menunggu hasil dari
tahap sebelumnya. Hal itu tentu membuang waktu yang cukup lama, artinya bagian
lain tidak dapat mengerjakan hal lain selain hanya menunggu hasil dari tahap
sebelumnya.
·
Berikut Merupakan Tahapan – tahapan Pengembangan Model
Sekuensial Linear / Waterfall Development Model :
o
Rekayasa dan pemodelan
sistem/informasi
Langkah pertama dimulai dengan
membangun keseluruhan elemen sistem dan memilah bagian-bagian mana yang akan
dijadikan bahan pengembangan perangkat lunak, dengan memperhatikan hubungannya
dengan Hardware, User, dan Database.
o
Analisis kebutuhan perangkat
lunak
Pada proses ini, dilakukan
penganalisaan dan pengumpulan kebutuhan sistem yang meliputi Domain informasi,
fungsi yang dibutuhkan unjuk kerja/performansi dan antarmuka. Hasil
penganalisaan dan pengumpulan tersebut didokumentasikan dan diperlihatkan
kembali kepada pelanggan.
o
Desain
Pada proses Desain, dilakukan
penerjemahan syarat kebutuhan sebuah perancangan perangkat lunak yang dapat
diperkirakan sebelum dibuatnya proses pengkodean (coding). Proses ini berfokus
pada struktur data, arsitektur perangkat lunak, representasi interface,
dan detail algoritma prosedural.
o
Pengkodean
Pengkodean merupakan proses
menterjemahkan perancangan desain ke bentuk yang dapat dimengerti oleh mesin,
dengan menggunakan bahasa pemrograman.
o
Pengujian
Setelah
Proses Pengkodean selesai, dilanjutkan dengan proses pengujian pada program
perangkat lunak, baik Pengujian logika internal, maupun Pengujian eksternal
fungsional untuk memeriksa segala kemungkinan terjadinya kesalahan dan
memeriksa apakah hasil dari pengembangan tersebut sesuai dengan hasil yang
diinginkan.
o
Pemeliharaan
Proses
Pemeliharaan erupakan bagian paling akhir dari siklus pengembangan dan
dilakukan setelah perangkat lunak dipergunakan. Kegiatan yang dilakukan pada
proses pemeliharaan antara lain :
·
Corrective
Maintenance : yaitu mengoreksi apabila terdapat kesalahan pada perangkat lunak,
yang baru terdeteksi pada saat perangkat lunak dipergunakan.
·
Adaptive
Maintenance : yaitu dilakukannya penyesuaian/perubahan sesuai dengan lingkungan
yang baru, misalnya hardware, periperal, sistem operasi baru, atau sebagai
tuntutan atas perkembangan sistem komputer, misalnya penambahan driver, dll.
·
Perfektive
Maintenance : Bila perangkat lunak sukses dipergunakan oleh pemakai.
Pemeliharaan ditujukan untuk menambah kemampuannya seperti memberikan fungsi-fungsi
tambahan, peningkatan kinerja dan sebagainya.
·
Contoh
Penerapan dari Pengembangan Model Sekuensial Linear / 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.
·
Kelebihan
Model Sekuensial Linear / Waterfall Development Model :
§ 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 dengan
metode ini biasanya menghasilkan kualitas yang baik.
§ Documen pengembangan sistem sangat
terorganisir, karena setiap fase harus terselesaikan dengan lengkap sebelum
melangkah ke fase berikutnya.
·
Kekurangan
Model Sekuensial Linear / 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.
Ø Model Prototype
Metode 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.
·
Teknik – teknik Prototyping Meliputi
:
§ Perancangan Model
§ Perancangan Dialog
§ Simulasi
· Karakteristik
dalam proses pengembangan pada metode prototype, yaitu :
§ Pemilihan fungsi
§ Penyusunan Sistem Informasi
§ Evaluasi
§ Penggunaan Selanjutnya
Metode ini menyajikan gambaran yang
lengkap dari suatu sistem perangkat lunak, terdiri atas model kertas, model
kerja dan program. Pihak pengembang akan melakukan identifikasi kebutuhan
pemakai, menganalisa sistem dan melakukan studi kelayakan serta studi terhadap
kebutuhan pemakai, meliputi model interface, teknik prosedural dan teknologi
yang akan dimanfaatkan.
·
Berikut adalah Tahapan – tahapan
Proses Pengembangan dalam Model Prototype, yaitu :
o
Pengumpulan
kebutuhan
Pelanggan
dan pengembang bersama-sama mendefinisikan format seluruh perangkat lunak,
mengidentifikasikan semua kebutuhan, dan garis besar sistem yang akan dibuat.
o
Membangun
prototyping
Membangun
prototyping dengan membuat perancangan sementara yang berfokus pada penyajian
kepada pelanggan (misalnya dengan membuat input dan format output).
o
Evaluasi
protoptyping
Evaluasi
ini dilakukan oleh pelanggan, apakah prototyping yang sudah dibangun sudah
sesuai dengan keinginan pelanggan atau belum. Jika sudah sesuai, maka langkah
selanjutnya akan diambil. Namun jika tidak, prototyping direvisi dengan
mengulang langkah-langkah sebelumnya.
o
Mengkodekan
system
Dalam
tahap ini prototyping yang sudah di sepakati diterjemahkan ke dalam bahasa
pemrograman yang sesuai.
o
Menguji
system
Setelah
sistem sudah menjadi suatu perangkat lunak yang siap pakai, kemudian dilakukan
proses Pengujian. Pengujian ini dilakukan dengan White Box, Black Box, Basis
Path, pengujian arsitektur, dll.
o
Evaluasi
Sistem
Pelanggan
mengevaluasi apakah perangkat lunak yang sudah jadi sudah sesuai dengan yang
diharapkan . Jika ya, maka proses akan dilanjutkan ke tahap selanjutnya, namun
jika perangkat lunak yang sudah jadi tidak/belum sesuai dengan apa yang
diharapkan, maka tahapan sebelumnya akan diulang.
o
Menggunakan
system
Perangkat
lunak yang telah diuji dan diterima pelanggan siap untuk digunakan.
Model Prototyping ini sangat sesuai
diterapkan untuk kondisi yang beresiko tinggi di mana masalah-masalah tidak
terstruktur dengan baik, terdapat fluktuasi kebutuhan pemakai yang berubah dari
waktu ke waktu atau yang tidak terduga, bila interaksi dengan pemakai menjadi
syarat mutlak dan waktu yang tersedia sangat terbatas sehingga butuh
penyelesaian yang segera. Model ini juga dapat berjalan dengan maksimal pada
situasi di mana sistem yang diharapkan adalah yang inovatif dan mutakhir
sementara tahap penggunaan sistemnya relatif singkat.
·
Berikut merupakan Jenis – jenis dari
Prototyping :
o
Feasibility
prototyping
Digunakan
untuk menguji kelayakan dari teknologi yang akan digunakan untuk system
informasi yang akan disusun.
o
Requirement
prototyping
Digunakan
untuk mengetahui kebutuhan aktivitas bisnis user.
o
Desain
Prototyping
Digunakan
untuk mendorong perancangan sistem informasi yang akan digunakan.
o
Implementation
prototyping
Merupakan
lanjutan dari rancangan prototype, prototype ini langsung disusun sebagai suatu
sistem informasi yang akan digunakan.
· 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.
· 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.
· 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.
Ø Model Rapid Application
Development (RAD)
Rapid Aplication Development (RAD)
adalah sebuah model proses perkembangan perangkat 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.
·
Berikut adalah Tahapan – tahapan
Proses Pengembangan dalam Model Rapid
Application Development (RAD), yaitu :
o
Bussiness
Modeling
Fase
ini untuk mencari aliran informasi yang dapat menjawab pertanyaan berikut:
·
Informasi
apa yang menegndalikan proses bisnis?
·
Informasi
apa yang dimunculkan?
·
Di
mana informasi digunakan ?
·
Siapa
yang memprosenya ?
o
Data
Modeling
Aliran informasi yang didefinisikan
sebagai bagian dari fase bussiness modeling disaring ke dalam serangkaian objek
data yang dibutuhkan untuk menopang bisnis tersebut. Karakteristik (atribut)
masing-masing objek diidentifikasi dan hubungan antar objek-objek tersebut
didefinisikan.
o Proses Modeling
Aliran informasi yang didefinisikan
di dalam fase data modeling ditransformasikan untuk mencapai aliran informasi
yang perlu bagi implementasi sebuah fungsi bisnis. Gambaran pemrosesan
diciptakan untuk menambah, memodifikasi, menghapus, atau mendapatkan kembali
sebuah objek data.
o Aplication Generation
Selain menggunakan bahasa pemrograman
generasi ketiga, RAD juga memakai komponen program yang telah ada atau
menciptakan komponen yang bisa dipakai lagi. Ala-alat bantu bisa dipakai untuk
memfasilitasi konstruksi perangkat lunak.
o Testing dan Turnover
Karena proses RAD menekankan pada
pemakaian kembali, banyak komponen program telah diuji. Hal ini mengurangi
keseluruhan waktu pengujian. Tetapi komponen baru harus diuji dan semua
interface harus dilatih secara penuh.
· 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.
·
Kekurangan
Model RAD :
·
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.
Ø
Iterative
Development
Merupakan model pengembangan
sistem yang bersifat dinamis dalam artian setiap tahapan proses pengembangan
sistem dapat diulang jika terdapat kekurangan atau kesalahan. Setiap tahapan
pengembangan system dapat dikerjakan berupa ringkasan dan tidak lengkap, namun
pada akhir pengembangan akan didapatkan sistem yang lengkap pada pengembangan
system.
Iterative Development berarti
menciptakan versi yang lebih fungsional dari sebuah system dalam siklus
pembangunan pendek. Setiap versi ditinjau dengan klien untuk menghasilkan
persyaratan untuk membuat versi berikutnya. Proses ini diulang sampai semua
fungsionalitas telah dikembangkan. Panjang ideal iterasi adalah antara satu
hari (yang lebih dekat dengan Metodologi Agile) dan tiga minggu. Setiap siklus
pengembangan memberikan pengguna kesempatan untuk memberikan umpan
balik,memperbaiki persyaratan, dan kemajuan melihat (dalam pertemuan sesi fokus
grup). Hal ini akhirnya pembangunan berulang yang memecahkan masalah yang
melekat dalam metodologi fleksibel dibuat pada 1970an.
·
Spesifikasi
Iterative Model
Seperti model SDLC
lainya, Iterative model memiliki spesifikasi khusus di dalan industri software.
Model ini paling sering digunakan dalam kondisi seperti:
§ Requirement sistem dan design harus
jelas dan mudah di pahami.
§ Persyaratan Utama harus
didefinisikan, namun nantinya akan ada request baru untuk penambahan fungsi
pada saat sistem sedang berjalan.
§ Teknologi yang sedang digunakan
dalam pengembangan software bisa diganti apabila ada teknologi baru yang lebih
bagus.
§ Ada beberapa fitur berisiko tinggi
dan tujuan yang mungkin berubah di masa depan.
·
Keuntungan
dari Iterative model :
§ Beberapa fungsi dapat di kembangkan
dengan cepat di awal pembuatan versi baru.
§ hasil yang di peroleh secara berkala
§ Kemajuan sebuah sistem dapat di ukur
§ Development software mudah di
rencanakan
§ Biaya yang dikeluarkan kecil apabila
ingin merubah requirement
§ Testing dan debugging selama proses
iterasi lebih mudah.
§ Analisis resiko yang lebih baik
§ Mendukung perubahan requirement
§ Waktu operasional yang lebih singkat
§ Cocok untuk project besar
·
Kelemahan
dari Iterative model :
§ Membutuhkan resource yang cukup
banyak
§ Meski biaya perubahan rendah, tetapi
sangat tidak cocok untuk mengubah persayaratan
§ Memerlukan Perhatian manajemen
§ Permasalahan sistem arsitektur dan
desain mungkin akan timbul, karena tidak semua persyaratan di tentukan di awal
pengambangan sistem.
§ tidak cocok untuk project kecil
§ Kompleksitas manajemen
§ Membutuhkan tenaga ahli untuk
analisis resiko yang timbul
Ø
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.
· Tahap-tahap
model ini dapat dijelaskan secara ringkas sebagai berikut :
·
Tahap
Liason
pada tahap ini dibangun komunikasi
yang baik dengan calon pengguna/pemakai.
·
Tahap
Planning (perencanaan)
pada tahap ini ditentukan sumber-sumber
informasi, batas waktu dan informasi-informasi yang dapat menjelaskan proyek.
·
Tahap
Analisis Resiko
mendefinisikan resiko, menentukan
apa saja yang menjadi resiko baik teknis maupun manajemen.
·
Tahap
Rekayasa (engineering)
pembuatan prototipe.
·
Tahap
Konstruksi dan Pelepasan (release)
pada tahap ini dilakukan pembangunan
perangkat lunak yang dimaksud, diuji, diinstal dan diberikan sokongan-sokongan
tambahan untuk keberhasilan proyek.
·
Tahap
Evaluasi
Pelanggan/pemakai/pengguna biasanya memberikan
masukan berdasarkan hasil yang didapat dari tahap engineering dan instalasi.
· Kelebihan model spiral
§ Dapat
disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak
komputer.
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 .
§ 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 .
ke dalam kerangka kerja iteratif .
§ Membutuhkan
pertimbangan langsung terhadp resiko teknis sehingga mengurangi
resiko sebelum menjadi permaslahan yang serius.
resiko sebelum menjadi permaslahan yang serius.
· Kekurangan model spiral
§
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 absolut
Ø
METODOLOGI
PENGEMBANGAN SISTEM “SCRUM METHODOLOGY”
·
PENGERTIAN METODOLOGI
SCRUM
Scrum adalah suatu metodologi yang mengatur (manage) proses
pembuatan software. Scrum merupakan suatu kerangka kerja. Jadi, bukannya
menyediakan deskripsi rinci tentang bagaimana segala sesuatu yang harus
dilakukan pada proyek seperti diserahkan kepada tim pengembangan perangkat
lunak pada umumnya. Hal ini dilakukan supaya tim akan tahu bagaimana cara
terbaik untuk memecahkan masalah yang mereka disajikan. Ada 3 elemen organisasi
utama pada scrum yaitu product owner, Scrum master, dan the Scrum team. Scrum
Master dapat dianggap sebagai pelatih bagi tim, membantu anggota tim
menggunakan kerangka Scrum untuk tampil di tingkat tertinggi. Product Owner
mewakili bisnis, pelanggan atau pengguna dan memandu tim ke arah pegembangan produk
yang tepat. Sedangkan The Scrum Team merupakan grup pengembang kecil biasanya
terdiri dari 5-9 orang. Untuk projek yang sangat besar, pekerjaan biasanya
dibagi dan didelegasikan ke grup-grup kecil. Jika sangat dibutuhkan the scrum
master juga dapat ikut membantu dalam koordinasi team.
Selain itu Scrum juga menarik karena scrum lebih
condong pada cara me-manage proyek secara praktikal (practical process model).
Lebih menuntun tim untuk melakukan hal-hal yang perlu dan menyarankan hal-hal
yang tidak perlu dalam menginspeksi proses dan melakukan adaptasi terus meneus
untuk menyetir arah dari proses. Tidak seperti metodologi manajemen proyek lain
yang cenderung deskriptif dan heavyweight. Scrum juga dikategorikan pada agile
software development methodology.
·
PRINSIP METODOLOGI SCRUM
§ Ukuran
tim yang kecil melancarkan komunikasi, mengurangi biaya, dan memberdayakan satu
sama lainProses dapat beradaptasi terhadap perubahan teknis dan bisnis
§ Proses
menghasilkan beberapa software increment
§ Pembangunan
dan orang yang membangun dibagi dalam tim yang kecil
§ Dokumentasi
dan pengujian terus menerus dilakukan setelah software dibangun
§ Proses
scrum mampu menyatakan bahwa produk selesai kapanpun diperlukan
·
Kelebihan Metodologi
Scrum antara lain:
§ Keperluan
berubah dengan cepat
§ Tim
berukuran kecil sehingga melancarkan komunikasi, mengurangi biaya dan
memberdayakan satu sama lain
§ Pekerjaan
terbagi-bagi sehingga dapat diselesaikan dengan cepat
§ Dokumentasi
dan pengujian terus menerus dilakukan setelah software dibangun
§ Proses
Scrum mampu menyatakan bahwa produk selesai kapanpun diperlukan
§ agile scrum membantu perusahaan
dalam menghemat waktu dan uang.
§ metode scrum membolehkan perusahaan
dimana persyaratan bisnis sulit untuk diukur menjadi mudah dikembangkan.
§ pergerakan pengembangan cutting edge
dapat dengan cepat dikodekan dan diuji menggunakan metode ini. bagaikan
kesalahan yang mudah untuk diperbaiki.
§ scrum merupakan sebuah metode yang
mudah dikontrol yang mana peningkatan pekerjaan dapat terjadi setiap periode
waktu yang ditentukan
§ seperti metodologi agile lainnya,
scrum juga merupakan metode iteratif yang membutuhkan feedback secara kontinu
dari user.
§ karena short sprint dan constant
feedback, scrum dapat dengan mudah mengatasi setiap perubahan
§ daily scrum meeting memungkinan
untuk mengukur produktfitas individu. ini mengarah pada peningkatan
produktifitas dari setiap anggota tim.
§ setiap isu diidentifikasi dengan
baik pada setiap pertemuan harian dan oleh karena itu dapat diselesaikan dengan
cepat.
§ mudah untuk mengirim produk
berkualitas sesuai waktunya.
§ agile scrum dapat bekerja dengan
berbagai teknologi dan bahasa pemrograman namun secara khusus berguna untuk
peningkatan web 2.0 maupun media proyek baru.
§ biaya overhead dari proses dan
manajemen sangat minim sehingga mengarah ke hasil lebih cepat dan lebih murah.
·
Kekurangan Metodologi
Scrum antara lain :
Developer harus selalu siap dengan
perubahan karena perubahan akan selalu diterima.
§ Agile Scrum adalah salah satu
penyebab utama scope creep karena kecuali ada tanggal akhir tertentu,
stakeholder proyek manajemen akan tergoda untuk terus menuntut fungsi baru
disampaikan.
§ Jika tugas tidak didefinisikan
dengan baik, perkirakan biaya proyek dan waktu tidak akan akurat. Dalam kasus
seperti itu, tugas dapat tersebar di beberapa sprint.
§ jika anggota tim tidak berkomitmen,
maka proyek tidak akan selesai atau bahkan gagal
§ proyek yang kecil dapat bergerak
dengan sangat baik karena hanya diselesaikan oleh tim yang kecil
§ metode ini hanya membutuhkan anggota
tim yang berpengalaman, jika tim berisi orang - orang yang masih pemula maka
proyek tidak dapat selesai sesuai waktunya
§ scrum dapat bekerja dengan baik jika
scrum master mempercayai tim yang mereka kelola, jika scrum master terlalu
mengontrol secara ketat setiap anggota tim ini dapat menyebabkan tim menjadi
stress yang mengakibatkan demoralisasi dan kegagalan dari proyek tersebut.
§ jika setiap anggota tim meninggalkan
tim selama pengembangan proyek dapat menyebabkan efek yang kurang baik bagi
perkembangan proyek tersebut
§ project quality management sangat
sulit untuk diimplementasikan dan diukur kecuali team dapat melakukan pengujian
regresi setelah beberapa sprint.
No comments:
Post a Comment