.::. Resume Pert 2 .::.
Nama : Novita rahmawatiNim : 10410110003
.::. Proses Dokumentasi .::.
-
Mencatat
seluruh proses pembangunan, perencanaan dan penjadwalan kualitas.
-
Pendekatan
berdasarkan rencana agar dokumentasi bias dimanage
-
Ada
dokumentasi untuk yang membuat dan yang membeli
-
Ada
user manual
-
Adanya
kontrak
-
Dokumentasi
akan dibutuhkan untuk software dengan jangka waktu yang panjang untuk
maintenance.
-
Dokumentasi
tak perlu detil paling tidak ada logika system serta ada cara kerja sistemnya.
.::. Dokumen .::.
Dokumen dasar dalam pengembangan perangkat
lunak :
1. Requirements document à Terdapat funsional, desain,
operasional, user requirement
2. Architecture documents à Lebih ke grafik
3. Detailed Design à Sisflow, docflow
4. Implementation à program sudah jadi (coding,
debugging)
5. Test Documents à testplan, testcase
6. Project Management Documents à project charter
7. Configuration management documents à semua item yang ada di dalam project
8. Project infrastructure document :
- Lebih ke hal-hal yang sifatnya
perjanjian tidak tertulis
- Tiap-tiap member harus baca referansi
sebelum membuat
- Progress reportnya seperti apa
- Tools yang di pakai
- Template yang di pakai
.::. Agile vs Waterfall .::.
Waterfall
|
Vs
|
Agile
|
-
Linier
-
Sekuensial
-
Setiap langkah terpisah
-
Bias diprediksi
-
Dokumentasi sesuai dengan yang ada
pada urutan karena sudah dijadwalkan
|
-
Lebih cepat menerima proses
-
Bisa mingguan, bulanan
-
Adaptasi
-
Sprint (cepat)
-
Dokumentasi pada metode ini sangat
minimal
-
Untuk organisasi besar kebanyakan
masih terlalu sulit.
|
.::. Agile Method .::.
Agile methods
merupakan salah satu dari beberapa metode yang digunakan dalam pengembangan software.
Agile method adalah jenis pengembangan sistem jangka pendek yang memerlukan
adaptasi cepat dan pengembang terhadap perubahan dalam bentuk apapun.
Dalam Agile
Software Development interaksi dan personel lebih penting dari pada proses dan
alat, software yang berfungsi lebih penting daripada dokumentasi yang lengkap,
kolaborasi dengan klien lebih penting dari pada negosiasi kontrak, dan sikap
tanggap terhadap perubahan lebih penting daripada mengikuti rencana.
Agile Method
juga dapat diartikan sekelompok metodologi pengembangan software yang
didasarkan pada prinsip-prinsip yang sama atau pengembangan system jangka
pendek yang memerlukan adaptasi cepat dari pengembang terhadap perubahan dalam
bentuk apapun.
>> Prinsip Agile Software Development <<
Agile Software Development juga
melihat pentingnya komunikasi antara anggota tim, antara orang-orang teknis dan
businessmen, antara developer dan managernya. Ciri lain adalah klien menjadi
bagian dari tim pembangun software. Ciri-ciri ini didukung oleh 12 prinsip yang
ditetapkan oleh Agile Alliance. Menurut Agile Alliance, 12 prinsip ini adalah
bagi mereka yang ingin berhasil dalam penerapan Agile Software Development:
1.Kepuasan klien adalah prioritas utama dengan menghasilkan produk
lebih awal dan terus menerus.
2.Menerima perubahan kebutuhan, sekalipun diakhir pengembangan.
3.Penyerahan hasil/software dalam hitungan waktu beberapa
minggu sampai beberapa bulan.
4.Pihak bisnis dan pengembang harus bekerja sama setiap hari
selama pengembangan berjalan.
5.Membangun proyek dilingkungan orang-orang yang bermotivasi
tinggi yang bekerja dalam lingkungan yang mendukung dan yang dipercaya untuk
dapat menyelesaikan proyek.
6.Komunikasi dengan berhadapan langsung adalah komunikasi yang
efektif dan efisien
7.Software yang berfungsi adalah ukuran utama dari kemajuan
proyek
8.Dukungan yang stabil dari sponsor, pembangun, dan pengguna
diperlukan untuk menjaga perkembangan yang berkesinambungan.
9.Perhatian kepada kehebatan teknis dan desain yang bagus
meningkatkan sifat agile
10. Kesederhanaan penting.
11. Arsitektur, kebutuhan dan desain yang
bagus muncuk dari tim yang mengatur dirinya sendiri.
12. Secara periodik tim evaluasi diri dan
mencari cara untuk lebih efektif dan segera melakukannya.
Dua belas prinsip tersebut menjadi
suatu dasar bagi model-model proses yang punya sifat agile. Dengan
prinsip-prinsip tersebur Agile Process Model berusaha untuk menyiasati 3 asumsi
penting tentang proyek software pada umumnya:
1. Kebutuhan software sulit diprediksi dari awal dan selalu akan
berubah. Selain itu, prioritas klien juga sering berubah seiring berjalannya
proyek.
2. Desain dan pembangunan sering tumpang tindih. Sulit diperkirakan
seberapa jauh desain yang diperlukan sebelum pembangunan.
3. Analisis, desain, pembangunan dan testing tidak dapat
diperkirakan seperti yang diinginkan.
>> Kelebihan dari Agile Method
<<
1. Meningkatkan kepuasan kepada klien
2. Pembangunan system dibuat lebih cepat
3. Mengurangi resiko kegagalan
implementasi software dari segi non-teknis
4. Jika pada saat pembangunan system
terjadi kegagalan, kerugian dari segi materi relative kecil.
>> Model-model Agile method <<
ð Extreme Programmning (XP)
ð Adaptive Software Development (ASD)
ð Dynamic Systems Development Method
(DSDM)
ð Scrum Methodology
ð Crystal
ð Feature Driven Development (FDD)
ð Agile Modeling (AM)
ð Rational Unified Process
>> Agile Methode <<
1. Interactive and Incremental Modeling
·
Apply
right models
·
Membuat
serangkaian model secara paralalel
·
Pengembangan
secara incremental (sedikit demi sedikit)
2. Teamwork
·
Memunculkan
partisipasi aktif dari stakeholder
·
Mendorong
kepemilikan kolektif
·
Terbuka
dengan orang lain
3. Simplicity
·
Menggunakan
konten yang simple
·
Menggambarkan
model sederhana
·
Menggunakan
tool desain yang simple
4. Validation
·
Memungkinkan Uji kemampuan sistem
·
Membuktikan model yang tepat
.::. Methode Waterfall
.::.
Metode
Waterfall adalah suatu proses pengembangan perangkat lunak berurutan, di mana
kemajuan dipandang sebagai terus mengalir ke bawah (seperti air terjun)
melewati fase-fase perencanaan, pemodelan, implementasi (konstruksi), dan
pengujian. Berikut adalah gambar pengembangan perangkat lunak berurutan/ linear
(Pressman, Roger S. 2001):
>> Tahapan Metode Waterfall
<<
Secara garis besar metode waterfall
mempunyai Tahapan sebagai berikut : Analisa, Desain, Penulisan, Pengujian dan
Penerapan serta Pemeliharaan. (Kadir, 2003)
1. Analisa Kebutuhan
Langkah
ini merupakan analisa terhadap kebutuhan sistem. Pengumpulan data dalam tahap
ini bisa melakukan sebuah penelitian, wawancara atau studi literatur. Tahapan
ini akan menghasilkan dokumen user requirment atau bisa dikatakan sebagai data
yang berhubungan dengan keinginan user dalam pembuatan sistem. Dokumen ini lah
yang akan menjadi acuan sistem analis untuk menerjemahkan ke dalam bahasa
pemrogram.
2. Desain Sistem
Tahapan
dimana dilakukan penuangan pikiran dan perancangan sistem terhadap solusi dari
permasalahan yang ada dengan menggunakan perangkat pemodelan sistem seperti
diagram alir data (data flow diagram), diagram hubungan entitas (entity
relationship diagram) serta struktur dan bahasan data.
3. Penulisan Kode Program
Penulisan
kode program atau coding merupakan penerjemahan design dalam bahasa yang bisa
dikenali oleh komputer. Dilakukan oleh programmer yang akan meterjemahkan
transaksi yang diminta oleh user. Tahapan ini lah yang merupakan tahapan secara
nyata dalam mengerjakan suatu sistem.
4. Pengujian Program
Tahapan akhir dimana sistem yang baru
diuji kemampuan dan keefektifannya sehingga didapatkan kekurangan dan kelemahan
sistem yang kemudian dilakukan pengkajian ulang dan perbaikan terhadap aplikasi
menjadi lebih baik dan sempurna.
5. Penerapan Program dan 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.
>> Manfaat Metode Waterfall <<
Metode pengembangan waterfall
mempunyai keunggulan dalam membangun dan mengembangkan suatu sistem, antara
lain:
1. Kualitas dari sistem yang dihasilkan
akan baik. Ini dikarenakan oleh pelaksanaannya secara bertahap. Sehingga tidak
terfokus pada tahapan tertentu.
2. 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
>> Kelemahan Metode Waterfall <<
Dalam proses membangun dan
mengembangkan suatu sistem, metode waterfall mempunyai beberapa kelemahan,
antara lain:
1. Diperlukan majemen yang baik, karena
proses pengembangan tidak dapat dilakukan secara berulang sebelum terjadinya
suatu produk.
2. Kesalahan kecil akan menjadi masalah
besar jika tidak diketahui sejak awal pengembangan.
3. Pelanggan sulit menyatakan kebutuhan
secara eksplisit sehingga tidak dapat mengakomodasi ketidakpastian pada saat
awal pengembangan.
Referensi :