Agile Software Development - Membangun Aplikasi dengan Cara yang Sehat
Agile Software Development
Membangun Software dengan Cara yang Sehat
Agile, pernah dengar kata-kata ini ? Agile sendiri adalah salah satu metodologi dalam pengembangan sebuah software. "Membangun software dengan cara yang sehat", maksud dari judul ini adalah dengan menggunakan Agile Software Development kita dapat mengembangkan aplikasi tanpa harus membuat tim developer merasa tertekan dengan permintaan user yang berkelanjutan dan user merasa puas dengan apa yang dikerjakan oleh developer. Bagaimana sistem kerjanya ? semuanya ada disini di kafetech.blogspot.co.id.
Apa itu Agile Software Development ?
Agile Software development adalah salah satu metodologi dalam pengembangan sebuah software (perangkat lunak). Kata Agile berarti bersifat cepat, ringan, bebas bergerak, waspada. Konsep Agile software development dicetuskan oleh Kent Beck dan 16 rekannya dengan menyatakan bahwa “Agile Software Development adalah cara membangun software dengan melakukan dan membantu orang lain sekaligus”.
"Agile Software Development adalah cara membangun software dengan melakukan dan membantu orang lain sekaligus" - Kent Beck dan 16 rekannya
Nilai-nilai Agile Software Development
Agile Development methods terdefinisi dalam empat nilai, biasa disebut dengan Agile Alliance's Manifesto, yakni antara lain :
- Interaksi dan personel lebih penting daripada proses dan alat
- Perangkat lunak yang berfungsi lebih penting daripada dokumentasi yang lengkap
- Kolaborasi dengan klien lebih penting daripada negosiasi kontrak
- Respon terhadap perubahan lebig penting daripada mengikuti rencana
Salah satu ciri Agile Software Development adalah tim yang tanggap terhadap perubahan. Karena perubahan adalah hal yang utama dalam membangun software. Perubahan-perubahan yang sering terjadi dalam masa pembangunan software antara lain :
- Perubahan kebutuhan
- Perubahan anggota tim
- Perubahan teknologi, dll
Selain itu Agile Software Development juga melihat pentingnya komunikasi antara anggota tim dan orang-orang teknis dan businessmen serta tim developer dan managernya. Dan juga Agile sendiri mempunyai ciri lain, yakni klien (user) menjadi bagian dari tim pembangun software.
12 Prinsip yang diterapkan oleh Agile Alliance
- Kepuasan klien adalah prioritas utama dengan menghasilkan produk lebih awal dan terus menerus
- Menerima perubahan kenutuhan, sekalipun diakhir pengembangan
- Penyerahan hasil/software dalam hitungan waktu dua minggu sampai dua bulan
- Bagian bisnis dan pembangun berkerja sama setiap hari selama proyek berlangsung
- Membangun proyek di lingkungan orang-orang yang bermotivasi tinggi yang bekerja dalam lingkungan yang mendukung dan yang diercaya untuk dapat menyelesaikan proyek
- Komunikasi dengan berhadapan langsung adalah komunikasi yang efektif dan efisien
- Software yang berfungsi adalah ukuran utama dari kemajuan proyek
- Dukungan yang stabil dari sponsor, pembangun, dan pengguna diperlukan untuk menjaga perkembangan yang berkesinambuangan
- Perhatian kepada kehebatan teknis dan desain yang bagus meningkatkan sifat Agile
- Keserhanaan penting
- Arsitek, kebutuhan, dan desain yang bagus muncul dari tim yang mengatur dirinya sendiri
- Secara periodik tim evaluasi diri dan mencari cara untuk lebih efektif dan segera melakukannya
Metode kerja Agile
Dalam proses pengembangan Agile kita mengenal dengan iterasi atau perulangan. Singkatnya jika suatu proyek pengembangan software dikerjakan dengan menggunakan metode Agile, maka seama waktu pengerjaannya akan selalu dijumpai proses pengembangan yang dilakukan berulang.
Setiap perulangan (iterasi) meliputi berbagai kegiatan yang wajib dilakukan dalam proyek pengembangan software itu sendiri, yaitu :
- Perencanaan
- Requirements analysis
- Pengumpulan data
- Penelitian wawancara
- User requirement
- Desain
- Struktur data
- Arsitektur perangkat lunak
- Representasi interface
- Detail (algoritma) prosedural
- Coding
- Testing
Model-model Agile Method
Terdapat pula beberapa model Agile Method, untuk deskripsi jelasnya bisa kalian lihat di Scrum dan Agile Method lainnya. Sedangkan secara garis besar Agile Method, yaitu :
- Extreme Programming (XP)
- Adaptive Software Development (ASD)
- Dynamic Systems Development Method (DSDM)
- Scrum Methodology
- Crystal
- Feature Driven Development (FDD)
- Agile Modeling (AM)
- Rational Unified Process
Comments
Post a Comment