Apa Itu Extreme Programming?
Extreme Programming atau sering disingkat XP merupakan metode pengembangan perangkat lunak yang berbasis Agile. Artinya extreme programming merupakan salah satu dari beberapa metode yang dapat digunakan untuk menerapkan prinsip pengembangan perangkat lunak berbasis Agile. Agile sendiri merupakan prinsip pengembangan perangkat lunak yang mengutamakan adaptasi terhadap perubahan, mengutamakan fungsionalitas aplikasi dibandingkan dokumentasi dan prinsip agile lainnya.
Ada banyak metode atau kerangka kerja yang dapat digunakan untuk pengembangan perangkat lunak. Namun saat ini sebagian besar metode pengembangan perangkat lunak yang digunakan adalah metode berbasis Agile, seperti Scrum, Kanban, dan extreme programming. Memang benar, Agile dianggap sebagai prinsip pengembangan inovatif yang berhasil menggantikan metode yang sudah ada sebelumnya seperti metode air terjun.
Menurut Prabowo dalam (Supriyatna, 2018) Extreme Programming (XP) adalah suatu proses rekayasa perangkat lunak yang cenderung menggunakan pendekatan berorientasi objek dan sasaran dari metode ini adalah tim-tim yang dibentuk dalam skala menengah dan besar, kecil, dan pendekatan ini juga cocok jika tim dihadapkan pada persyaratan yang spesifik dan tidak jelas atau persyaratan yang berkembang sangat cepat. Sedangkan menurut Ferdiana dalam (Lubis, 2016), Extreme Programming (XP) dikenal sebagai metode atau "cara teknis dalam melakukan sesuatu" bagi tim teknis untuk mengembangkan perangkat lunak secara efektif melalui berbagai prinsip dan teknik pengembangan perangkat lunak yang praktis. XP menjadi fondasi untuk operasi tim sehari-hari.
Tahapan Extreme Programming
Terdapat empat tahapan yang harus dikerjakan pada metode extreme programmin atau XP yaitu:
1. Perencanaan
Tahap ini merupakan tahap pertama dari proses pengembangan sistem, yang didalamnya dilakukan beberapa kegiatan perencanaan yaitu identifikasi masalah, analisis kebutuhan, dan penentuan jadwal pelaksanaan pengembangan sistem.
2. Desain
Tahap selanjutnya adalah desain, pada tahap ini dilakukan kegiatan pemodelan, mulai dari pemodelan sistem, pemodelan arsitektur hingga pemodelan database. Pemodelan sistem dan arsitektur menggunakan diagram Unified Modeling Language (UML), sedangkan pemodelan database menggunakan diagram hubungan entitas (ERD).
3. Pengkodean
Langkah ini merupakan kegiatan penerapan model yang telah diubah menjadi user interface dengan menggunakan bahasa pemrograman. Bahasa pemrograman yang digunakan adalah PHP dengan metode terstruktur. Untuk sistem pengelolaan database menggunakan software MySQL.