Scrum Dan Model Agile Method Lainnya

Scrum Dan Model Agile Method Lainnya

Pada ulasan sebelumnya telah dibahas mengenai Agile Software Development. Untuk melanjuti penjelasan mengenai hal tersebut, pada kesempatan kali ini akan dibahas mengenai beberapa model Agile Method. Scrum juga merupakan salah satu dari model Agile Method, tetapi model ini adalah salah satu model yang paling sering digunakan, kok bisa ? Semuanya ada disini, tetap di kafetech.blogspot.co.id ya.

Extreme Programming (XP)

Yang pertama ada Extreme Programming, Extreme Programming sendiri adalah suatu bentuk pembangunan perangkat lunak yang berbasis nilai kemudahan, komunikasi, umpan balik, dan keberanian. Model ini bekerjadalam whole team bersama-sama dengan praktek yang mudah.

Dalam Extreme Programming terdapat 12 practices utama, yaitu :
  1. Planning Game
  2. Small, frequent realeses
  3. System metaphors
  4. Simple design
  5. Testing (unit testing dan TDD)
  6. Frequent refactoring
  7. Pair programming
  8. Collective code ownership
  9. Continuous integration
  10. 40-hour weak
  11. On-site customer
  12. Coding standards
Keuntungan Extreme Programming
  • Menjalin komunikasi yag baik dengan client
  • Meningkatkan komuniasi dan sifat saling menghargai antar developer
Kerugian Extreme Programming
  • Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima
  • Tidak bisa membuat kode yang detail diawal (prinsip simplicity dan juga anjuran untuk melakukan apa yang diperlukan hari itu juga)

Adaptive Software Development (ASD)


Selanjutnya ada Adaptive Software Development atau bisa disingkat ASD adalah model Agile Method yang menerapkan sistem kerja Collaboration and Learning Adaptive Cycle Planning. Maksudnya yakni menggunakan informasi awal seperti misi dari klien, batasan proyek dan kebutuhan dasar untuk mendefinisikan rangkaian software increment (produk software yang secara berkala diserahkan)

Collaboration, maksudnya orang-orang yang bermotivasi tinggi bekerja sama, saling melengkapi, rela membantu, kerja keras, trampil dibidangnya, dan komunikasikan masalah untuk menghasilkan penyelesaian yang efektif. Sedangkan Learning terdapat 3 point didalam nya, yang pertama ada focus group yang berarti klien dan pengguna memberi masukan terhadap software.  Selanjutnya ada formal technique reviews yang berarti tim ASD lengkap melakukan review. Dan yang terakhit ada postmortems, yaitu tim ASD melakukan instropeksi pada kinerja dan proses.

Scrum Methodology

Nah ini dia yang ditunggu-tunggu, Scrum Metodology. Pada dasarnya Scrum merupakan salah satu komponen dari metodology Agile mengenai pertemuan harian untuk membahas kemajuan. Scrum merupakan kerangka kerja. Jadi, bukannya menyediakan deskripsi rinci tentang bagaimana segala sesuatu yang harus dilakukan pada proyek seperti diserahkan kepada tim pengembang perangkat lunak pada umumnya.

Prinsip Scrum Methodology, yaitu :
  • Ukuran tim yang kecil, melancarkan komunikasi, mengurangi biaya, dan memberdayakan satu sama lain
  • Proses dapat beradaptasi dengan perubahan teknis dan bisnis
  • Proses menghasilkan beberapa software increment
  • Pembangunan dan orang yang membangun dibagi dalam tim yang  lebih kecil
  • Dokumentasi dan pengujian terus menerus dilakukan setelah software dibangun
  • Proses Scrum mampu menyatakan bahwa produk dapat selesai kapanpun diperlukan

Scrum memiliki aktifitas yang meliputi Backlog, Sprints, Scrum Meetings, dan Demo. Aktifitas Backlog adalah daftar kebutuhan yang jadi prioritas klien dan daftar yang dibuat dapat bertambah. Sedangkan Sprints merupakan unit pekerjaan yang diperlukan untuk memenuhi kebutuhan yang ditetapkan dalam bidang backlog sesuai dengan waktu yang ditetapkan dalam time-box (biasanya 30 hari). Selama proses itu berlangsung, backlog tidak ada penambahan. Kemudian Scrum Meeting merupakan pertemuan rutin dilakukan perhari untuk evaluasi apa yang dikerjakan, hambatan yang ada, dan target penyelesaian untuk bahan meeting selanjutnya. Dan yang terakhir ada Demo, yaitu penyerahan software increment ke klien dan didemonstrasikan serta dievaluasi oleh klien.

Kelebihan Scrum Methodology
  • Keperluan berubah sangat 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 dapat selesai kapanpun diperlukan
Kekurangan Scrum Methodology
  • Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima

Agile Modelling

Agile Modeling adalah suatu metodologi yang praktis untuk dokumentasi dan pemodelan system software. Agile Modeling adalah kumpulan nilai-nilai, prinsip dan praktek-praktek untuk memodelkan software agar dapat diaplikasian pada software development proyek secara efektif. 

Prinsip dalam Agile Modelling, yaitu :
  1. Membuat model dengan tujuan
  2. Mengunakan multiple models
  3. Travel light
  4. Isi lebih penting dari pada penampilan
  5. Memahami model dan alat yang yang digunakan untuk membuat software
  6. Adaptasi secara lokal
Kelebihan dari Agile Modelling
  • Meningkatkan kepuasan kepada klien
  • Dapat melakukan review pelanggan mengenai software yang dibuat lebh awal
  • Pembangunan system dibuat lebih cepat
  • Mengurangi resiko kegagalan implementasi software dari segi non-teknis
  • Jika pada saat pembangunan system terjadi kegagalan,kerugian dar segi materi relative kecil
Kekurangan dari Agile Modelling
  • Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima
  • Agile tidak akan berjalan baik jika komitmen tim kurang baik
  • Tidak cocok dalam skala tim yang besar (>20 orang)
  • Perkiraan waktu release dan harga perangkat lunak sulit di tentukan

Comments

Popular posts from this blog

Reuse Oriented atau Component Based Software Engineering (CBSE)

Cara Import SQL PowerDesigner Ke Database SQL

Mengenal Perbedaan Telnet Dan SSH Pada Jaringan Komputer