Metode Pengembangan Perangkat Lunak - Mansur Aziz

14 downloads 32 Views 235KB Size Report
salah satu dari sekian banyaknya metodologi dalam rekayasa perangkat lunak dan juga merupakan bagian dari metodologi pengembangan perangkat.
Metode Pengembangan Perangkat Lunak “Extreme Programming” Extreme Programming yang selanjutnya disingkat dengan XP merupakan salah satu dari sekian banyaknya metodologi dalam rekayasa perangkat lunak dan juga merupakan bagian dari metodologi pengembangan perangkat lunak agile. Secara umum Extreme Programming (XP) dapat dijabarkan sebagai sebuah

pendekatan

pengembangan

perangkat

lunak

yang

mencoba

meningkatkan efisiensi dan fleksibilitas dari sebuah proyek pengembangan perangkat lunak dengan mengkombinasikan berbagai ide simpel/sederhana tanpa mengurangi kualitas software yang akan dibagun. XP dikembangkan oleh Beck, Cunningham,

dan

Jeffries

dan ini merupakan

lightweight

discipline

pengembangan perangkat lunak berdasarkan empat core value.

Core Values pada XP : 1.

Komunikasi (Communication) Kurangnya

komunikasi

merupakan

penyebab

utama

kegagalan

pengembangan software, maka XP mengfokuskan pada hubungan komunikasi yang baik antar tim-klien, anggota tim, dan manajer proyek.Komunikasi dalam XP dibangun dengan melakukan pemrograman berpasangan (pair programming) .Klien harus dilibatkan dalam proses pengembangan perangkat lunaknya dengan tujuannya untuk memberikan pandangan pengembang sesuai dengan pandangan pengguna sistem yang dibangun.

2.

Kesederhanaan (Simplicity) XP melakukan semua dengan sederhana dan praktis tanpa mengurangi

fungsi utamanya. Diusahakan mengunakan method yang pendek dan simpel, jangan terlalu rumit dalam membuat desain, hilangkan fitur yang tidak ada gunanya atau menghapus fungsi yang tidak terpakai. Dengan kata lain lebih baik melakukan hal yang sederhana saat sekarang (sesuai kebutuhan) dan mengembangkannya besok jika diperlukan. 3.

Umpan balik (Feedback) Selalu mengevaluasi perkembangan terhadap perangkat lunak yang

sedang dikerjakan, segala informasi harus dikumpulkan setiap interval waktu yang konsisten dan diskusikan kesalahan-kesalahan yang muncul selama proses pengembangan. Umpan balik tersebut berfungsi sebagai indikator kemajuan proyek dan menginformasikan pemimpin proyek apabila perubahan perlu dibuat. 4.

Keberanian (Courage). Programmer XP didorong untuk berani bereksperimen dan menulis

ulang kode jika mereka tidak puas dengan kode yang sudah ada atau desain. Hal ini

membantu

mempertahankan

moral serrta

intgeritas

para

pengembang proyek dan dapat mendukung lebih lanjut komunikasi dengan anggota proyek lainnya. Berdasarkan 4 core value diatas, Beck dan Tomec menjabarkan 12 praktik inti XP : (1).

Planning game Pada phase ini menggunakan terminologi “game” untuk menggunakan teknikscore card dalam menentukan persyaratan (requirements).

(2).

Small releases Sistem yang sederhana menjadi produksi cepat. Sehingga dapat merilis versi baru dengan siklus sangat pendek (two week).

(3).

Metaphor Mirip dengan arsitektur lebih bersifat naratif dan deskriptif, diharapkan komunikasi antara klien dengan developer akan berlangsung lebih baik dan lancar dengan penggunaan metaphor.

(4).

Simple design

Menerapkan desain yang simpel dan sederhana tanpa menghilangakn fungsi utamanya. (5).

Testing Pengetesan dilakukan pada setiap unit perangkat lunak dalam lingkup sekecil mungkin daripada menunggu sampai seluruh perangkat lunak selesai dibuat.

(6).

Refactoring Melakukan perubahan pada kode program dari perangkat lunak dengan tujuan meningkatkan kualitas dari struktur program tersebut tanpa mengubah cara program tersebut bekerja.

(7).

Pair pemrograming Dua orang programer saling bekerjasama di komputer yang sama untuk menyelesaikan sebuah unit.

(8). Collective Ownership Setiap orang dapatmenukarkan coding apapun dalam sistem setiap saat, karena kesamaan pemahaman. (9).

Continous Integration Dengan melakukan build sesering mungkin berbagai kesalahan pada program dapat dideteksi dan diperbaiki secepat mungkin.

(10). 40-hours Week bekerja tidak lebih dari 40 jam per minggu sebagai aturan. (11). On-Site Customer – klien selalu berada pada tempat programer untuk menjawab pertanyaan. (12). Coding Standards Menekankan kesamaan aturan/pemahamanprogrammer terhadap seluruh kode program.