Prinsip-prinsip Extreme Programming Aktivitas dalam Extreme Programming

20 sebaliknya. Manajemen menghargai hak untuk menerima tanggung jawab dan menerima kewenangan pekerjaan masing-masing. 5 Courage Tim dalam Extreme Programming akan menyampaikan kebenaran perkembangan dan perkiraan pelaksanaan proyek. Tim dalam Extreme Programming tidak menyampaikan alasan kegagalan karena Extreme Programming berencana untuk berhasil. Tim dalam Extreme Programming tidak merasa takut pada apapun karena di dalam tim tidak ada yang bekerja sendiri. Tim akan menyesuaikan pada perubahan-perubahan kapan pun itu akan terjadi.

e. Prinsip-prinsip Extreme Programming

Berdasarkan pada nilai-nilai pokok di atas, Extreme Programming memiliki lima prinsip utama dalam pengembangan perangkat lunak, yaitu Baird, 2002 : 1 Rapid Feedback, yang berarti pengembang menggunakan umpan balik singkat yang berulang-ulang untuk dapat mengetahui sedini mungkin apakah perangkat lunak yang dikembangkan sudah sesuai dengan yang diinginkan klienpelanggan. 2 Assume Simplicity, yaitu menganggap seolah-olah setiap masalah dapat diselesaikan dengan mudah, hanya mengerjakan permasalahan yang sedang dihadapi tanpa memandang apa yang akan dibutuhkan ke depannya. 3 Incremental Change, yaitu menyelesaikan masalah dengan rangkaian perubahan kecil. 21 4 Embrace Change, yaitu mengambil sebuah strategi yang mempertahankan pilihankehendak awal dari perubahan selama penyelesaian masalah yang mendesak. 5 Quality Work, yaitu kualitas pekerjaan yang tidak dapat dikompromikan karena Extreme Programming menjunjung pentingnya pengkodean dan pengujian dengan test-first programming.

f. Aktivitas dalam Extreme Programming

Beberapa aktivitas yang berjalan dalam daur hidup Extreme Programming berdasarkan nilai-nilai pokok dan prinsip-prinsipnya adalah Baird, 2002 : 1 Listening Extreme Programming didasarkan pada komunikasi. Komunikasi verbal yang berkualitas lebih banyak dilakukan daripada dokumentasi formal secara tertulis. Extreme Programming memiliki praktik-praktik yang mengarahkan dan membimbing menuju komunikasi yang lebih baik. 2 Testing Pengujian merupakan tahap integral dalam proses Extreme Programming dan bukan merupakan tahap yang dilakukan setelah proses selesai. Pengembang membuat atau menuliskan pengujian sebelum melakukan pengkodean. Pengujian yang integral dalam proses pengembangan ini lebih baik daripada pengujian di akhir proses pengembangan. 3 Coding Extreme Programming, bagaimanapun juga, adalah tentang pemrograman dan menuliskan kode adalah sebuah keahlian yang dapat diasah melalui praktik- 22 praktik seperti refactoring, pair programming, dan code review. Pengembang dalam Extreme Programming dapat memahami logika, algoritma, dan alur dalam kode hanya dengan membaca kode tersebut. 4 Designing Salah satu ide dasar Extreme Programming adalah bahwa perancangan itu berkembang dan disusun sepanjang proyek. Perancangan tidak ditentukan pada satu peranan tetapi dilakukan secara dinamis. Extreme Programming mengabaikan fakta yang ada bahwa perangkat lunak selalu dalam keadaan dirancang. Hal ini dilakukan dengan cara membatasi aktivitas perancangan sehingga Extreme Programming menerima perubahan sistem secara alami.

g. Praktik-praktik Extreme Programming