Extreme Programming ( XP) merupakan model dari pengembangan perangkat lunak dan mencoba untuk menyederhanakan berbagai tahapan dalam proses pengembangan perangkat lunak tersebut, sehingga menjadi lebih adaptif dan fleksibel. XP tidak hanya berfokus pada coding tetapi meliputi seluruh area pengembangan perangkat lunak. XP mengambil pendekatan ‘ekstrim’ dalam iterative development.

XP adalah suatu model yang termasuk dalam pendekatan agile yang diperkenalkan oleh Kent Back pada tahun 1996. Asal mula XP digunakan karena pada saat itu permintaan dari customer yang sering berubah dengan cepat sehingga mengakibatkan putaran kehidupan metode pengembangan perangkat lunak tradisional menjadi lebih pendek dan tidak selaras dengan metode tradisional karena pada umumnya memerlukan desain yang luas dan itu mengakibatkan perubahan desain yang terjadi dan tentu saja memerlukan biaya yang lebih tinggi.

Aspek Dasar XP Terdiri dari Berbagai Metode yang diterapkan Beck dAN Jeffries Pada C3 Project

extreme programming

Whole Team

extreme programming

Seluruh kontributor dalam proyek yang menggunakan pendekatan XP duduk bersama sebagai suatu tim. Tim ini berisi beberapa orang seperti Programmer, penguji,orang yang mengerti bisnis, analis, manajer, dan lain-lain. Setiap peran yang ada tidak mutlak menjadi peran dari satu orang saja. Tim yang terbaik dalam XP tidak harus memiliki pakar, hanya kontributor umum dengan keterampilan khusus saja. Semua orang di tim XP akan memberikan kontribusi dengan cara apapun yang bisa mereka lakukan.

Planning game

Perencanaan dalam XP mengemukakan dua pertanyaan kunci dalam pengembangan perangkat lunak, yaitu  memprediksi apa yang akan dicapai pada waktu tertentu, dan menentukan apa yang harus dilakukan setelah itu. Ada dua langkah kunci dalam perencanaan XP, yang menangani dua pertanyaan tersebut:

  • Release Planning yaitu praktek dimana Customer mengutarakan fitur yang diinginkannya ke programer, dan programer memperkirakan tingkat kesulitannya.
  • Iteration Planning yaitu praktek di mana tim ini diberikan petunjuk atau arahan setiap beberapa minggu sekali.

Customer Tests

extreme programming

Sebagai bagian dari presentasi masing-masing fitur yang diinginkan, Customer XP mendefinisikan satu atau lebih tes penerimaan otomatis untuk menunjukkan bahwa fitur tersebut bekerja dengan baik. Tim membangun tes ini dan menggunakannya untuk membuktikan pada kepada Customer bahwa fitur ini telah diimplementasikan dengan benar. Tes secara otomatis ini penting karena dalam XP hanya diberikan waktu yang singkat sehingga tes manual tidak akan digunakan karena memakan waktu yang lama.

Small Release

Pada setiap Iterasi, tim mengerjakan sebuah unit atau bagian dari perangkat lunak, melakukan tes terhadap unit perangkat lunak yang dibangun, kemudian di akhir iterasi perangkat lunak yang dibangun diberikan kepada Customer. Oleh customer, perangkat lunak ini bisa dijadikan bahan evaluasi maupun langsung dirilis kepada end user. Bisa juga tim XP yang langsung merilis ke end user secara rutin.

Simple Design

Tim XP membangun perangkat lunak dengan desain yang lebih sederhana. Dimulai dengan desain yang sederhana, kemudian melalui pengujian program dan perbaikan desain. Desain yang telah dibuat harus berfungsi dari sistem saat ini, sehingga tidak ada yang sia-sia dan perangkat lunak siap dikembangkan lagi selanjutnya. Namun, pembuatan desain dalam XP tidak dilakukan hanya sekali saja. Tahapan desain dalam Extreme Programming harus bisa menghasilkan desain yang bagus dan ini akan menjadi hal penting yang perlu diperhatikan, sehingga selama proses development banyak difokuskan ke tahapan desain.


Klik dibawah ini untuk informasi tentang IT Training dan Info Loker seputar IT


Pair Programming

extreme programming

Semua perangkat lunak yang dibangun dengan pendekatan XP dibangun oleh dua orang Programmer. Keduanya duduk berdampingan di satu komputer yang sama. Seorang Programmer akan membuat code untuk sebuah program nantinya Programmer yang lain akan mengoreksinya. Praktik seperti ini mungkin kelihatan tidak efisien. Namun untuk segi hasil dari pair programming, desain akan lebih baik, pengujian lebih baik, dan code yang dihasilkan pun akan lebih baik.

Test-Driven Development

XP sangat terobsesi dengan umpan balik, dan dalam pengembangan perangkat lunak, umpan balik yang baik mensyaratkan pengujian yang baik pula. Test-Driven Development bergantung pada pengulangan siklus development yang sangat pendek. Pertama tim XP akan menuliskan automated test case yang akan mendefinisikan perbaikan yang diinginkan atau menghasilkan fungsi baru. Kemudian dari test case tersebut dapat menghasilkan jumlah minimal code yang harus dituliskan untuk lulus tes tersebut. Setelah itu harus melakukan refactoring code baru agar memenuhi standar baru.

Design Improvement

XP berfokus pada memberikan nilai bisnis dalam setiap perulangan. Agar dapat mencapai tujuan tersebut selama proyek berlangsung, perangkat lunak harus dirancang dengan baik. XP menggunakan proses perbaikan desain secara terus menerus dengan Refactoring. Proses refactoring berfokus pada penghapusan duplikasi dari code yang telah dibuat. Disamping itu, proses refactoring akan didukung dengan sebuah pengujian yang komprehensif yang bertujuan untuk memastikan bahwa desain yang dibuat berkembang dan tidak ada yang rusak.

Continuous Integration

Tim XP akan menggabungkan seluruh salinan pekerjaan tim menjadi satu dalam jaringan utama yang dilakukan beberapa kali dalam sehari. Sehingga tim XP harus menjaga tim agar saling terintegrasi setiap saat.

Collective Code Ownership

Pada proyek XP, setiap pasang Programmer dapat meningkatkan code apapun setiap saat. Semua code yang ada dimiliki secara kolektif oleh tim. Manfaatnya setiap code akan mendapat perhatian dari banyak orang, sehingga dapat meningkatkan kualitas code dan mengurangi cacat.

Coding Standard

Setiap anggota tim XP harus mengikuti standar coding yang umum, sehingga semua code dalam sistem seolah-olah tampak dibuat oleh satu orang yang sangat kompeten. Dan hal ini sangat mendukung Collective Code Ownership.

Metaphor

Tim XP nantinya akan membuat suatu deskripsi umum bagaimana program yang mereka kembangkan dapat bekerja dengan benar.

Sustainable Pace

Tim XP akan bekerjasama dalam jangka waktu lama. Mereka bekerja keras dengan kecepatan tertentu tanpa batas waktu. Tim XP akan memaksimalkan produktivitas setiap minggunya.  Hal ini perlu diperhatikan dengan baik, karena akan mengurangi produktivitas atau sebaliknya menghasilkan perangkat lunak yang berkualitas.


TOG Indonesia can provide IT professionals for temporary, fixed-period placement in your company for project-based assignments:  IT Developer, Software Tester, Project Manager, Business Analyst, System Analyst, Security Engineer, etc.

Please FOLLOW our Social Media: —> Facebook, Twitter, Instagram, and Linkedin

We provide competent trainers in the field of Information and Technology with a certified and proven track record for developing human resources from leading multinational and national companies in Indonesia. To formalize the training program while creating a strong foundation for educational programs, Triple One Global Indonesia develops by combining high quality IT education and IT Training to add broad insights into the latest developments.tog indonesia


Programming memang memiliki banyak tingkatan level, dari yang Novice Programmer hingga Extreme Programmer seperti yang telah di bahas diatas. Dan Extreme Programming merupakan tingkatan paling tinggi dalam dunia Programmer. Jika Anda seorang Programmer dan sedang mencari pekerjaan menjadi Programmer, Karena ada ribuan lowongan pekerjaan di bidang IT yang menunggu untuk Anda lamar. silakan klik link di bawah ini.

Contact

Phone: 021-21192578, WhatsApp: 0816999735
Email: recruitment@tog.co.id