PCSeputar Tekno

Apa Itu Extreme Programming ?

Pernah dengar istilah Extreme Programming? Terkadang orang menyingkatnya sebagai XP, jadi jangan sampai Anda salah mengira XP disini sebagai Windows XP.  Extreme Programming (XP) adalah suatu metodologi pengembangan software yang ditujukan untuk meningkatkan kualitas dan responsivitas software sesuai dengan kebutuhan pelanggan yang selalu berubah.

Apa Itu Extreme Programming

Dalam siklus pengembangannya yang terbilang pendek, XP memiliki ciri khas menghadirkan rilis pembaruan secara sering dan berkala, dengan tujuan meningkatkan produktivitas, serta memiliki checkpoint-checkpoint dimana kebutuhan baru pelanggan dapat segera diterima.

XP diciptakan oleh Kent Beck dalam proyek Chrysler Comprehensive Compensation (C3) System pada tahun 1996. Beliau memperbaiki metodologi pengembangan yang digunakan dalam proyek tersebut, dan kemudian menulis buku mengenai metodologi yang ia gunakan pada tahun 1999. Namun, proyek C3 System dibatalkan pada tahun 2000 ketika perusahaan itu dibeli oleh Daimler-Benz.

Konsep dasar Extreme Programming ialah melakukan dalam level ekstrem apa yang dianggap sebagai praktik-praktik terbaik. Untuk meminimalisir kebutuhan waktu, berbagai hal dikerjakan secara bersamaan dan paralel. Sebagai contoh, rancangan prosedur pengujian akan dilakukan berdasarkan logika kebutuhan, meskipun software yang didesain masih dalam tahap penanaman ke dalam hardware. Tim Extreme Programming mendesain software untuk fungsionalitas yang secara spesifik diminta oleh pelanggan, tanpa menambahkan fungsionalitas yang tidak diminta, sehingga membuat keseluruhan proses tetap sederhana, sistematis, dan berjalan cepat.

Apa Itu Extreme Programming 1

Extreme Programming memiliki 12 prinsip dasar :

1. Proses perencanaan
Fitur-fitur yang diinginkan dari software dikomunikasikan oleh pelanggan, dan dikombinasikan dengan perkiraan biaya, guna menentukan faktor-faktor apa saja yang paling penting dalam software tersebut. Tahap ini sering pula disebut sebagai Planning Game.

2. Perilisan
Software dikembangkan dalam tahap-tahap pendek dan diperbarui secara berkala, biasanya setiap dua minggu sekali.

Artikel menarik:  Apa itu Sina Weibo?

3. Metafora
Semua anggota dalam tim XP menggunakan nama-nama dan deskripsi-deskripsi yang sama guna memudahkan komunikasi dan pengembangan terhadap suatu objek.

4. Desain sederhana
Software hanya boleh memiliki kode yang memang dibutuhkan untuk mencapai hasil yang diinginkan di setiap akhir siklus pengembangan. Penekanan berada pada apa yang dibutuhkan sekarang, dan bukan pada persiapan versi produk selanjutnya.

5. Pengujian
Dilakukan secara konsisten dalam setiap proses, dimana rancangan pengujian dibuat terlebih dahulu di awal, dan software akan dikembangankan untuk dapat lulus pengujian tersebut.

6. Refactoring
Programmer XP melakukan perbaikan software di setiap tahap pengembangan, alih-alih hanya pada akhir tahap pengembangan.

7. Pair Programming
Semua kode ditulis oleh sepasang programmer yang bekerja di mesin yang sama.

8. Kepemilikan kolektif
Setiap baris kode merupakan milik bersama semua programmer yang bekerja di proyek, sehingga tidak akan ada masalah kepemilikan yang dapat terjadi. Kode dapat diubah kapanpun dibutuhkan tanpa perlu menunggu persetujuan pemilik kode.

9. Integrasi berkelanjutan
Tim XP mengintegrasikan dan melakukan build software setiap hari untuk memastikan semua programmer berada di tahap yang sama setiap waktu.

10. 40 Jam Seminggu
Tim XP tidak bekerja secara berlebihan untuk memastikan semua anggota tetap fit dan efektif dalam bekerja.

11. On-Site Customer
Proyek XP diarahkan oleh pelanggan, yang selalu siap setiap waktu untuk menjawab pertanyaan, menetapkan prioritas, dan menentukan kebutuhan proyek.

12. Standar koding
Semua programmer menuliskan kode dalam format dan penataan yang sama.

Semoga bermanfaat!