GXP adalah pengembangan dari
suatu metode rekayasa perangkat lunak eXtreme Programming besutan Beck dan
kawan-kawan. XP didefinisikan sebagai metode ringan yang menekankan pada
komunikasi yang intens antara klien dan tim, pengembangan yang effisien melalui
model pengujian yang intens hingga model pengerjaan yang iterative dan
incremental. GXP mengembangkan XP menjadi suatu frame work yang kebih
komrehensif
Ada 3 kompenen utama GXP yaitu
(1) Global Software Development Process adalah siklus hidup proses pengembangan
perangkat lunak yang mendukung pola pengembangan terdistribusi. Suatu pola yang
menekankan pada dukungan pengembangan jarak jauh. Bagaimana tim dapat
berkolaborasi baik dengan batasan geografis, zona waktu, dan kultur berbeda.
GSD adalah pondasi dasar dari GXP. (2) eXtreme Programming, bagaimana suatu tim
teknis mengembangkan perangkat lunak secara effisien melalui berbagai prinsip
dan teknik praktis pengembangan software. (3) Perangkat bantu, menjadi hal yang
bersifat esensial sebagai peningkat produktifitas tim. Perangkat bantu yang
tepat dapat meningkatkan produktifitas tim.
GXP memiliki suatu teknik untuk
menunjukkan apakah GXP cocok dengan kebutuhan organisasi. Yaitu dengan cara (1)
proyek yang dikembangkan memungkinkan komunikasi intens baik ruang atau tepisah
secara geografis. (2) Proyek pengembangan kecil hingga menengah dengan ukuran
tim tidak lebih 12 orang (3) Klien yang mempercayai tim untuk bekerja secara
bebas dan fleksibel. (4) Komunikasi yang rutin dan intens bisa mendukung GXP
secara optimal (5) Klien dapat memahami tim pengembangan software yang
berkualitas dengan dokumen yang secukupnya.
Terdapat 3 model GXP yaitu
Remote Execution Model, Virtual Execution Model, dan Global Execution Model.
REM adalah kondisi dimana tim pengembang dan klien terpisah secara geografis. Pada
implementasinya memiliki ciri (1) tim pengembang menjadi satu kesatuan baik
berada di tempat klien untuk sementara waktu (2) Anggota tim tidak terlalu
banyak dan model urgensi software tidak terlalu tinggi dari klien (3) Jangka
waktu proyek pada umumnya 1 hingga 3 bulan.
VEM adalah model eksekusi
pengembangan software yang dikarakteristikkan dengan adanya anggota tim yang
onsite ditempat klien. Pada implementasinya memiliki ciri (1) Proyek yang
dikerjakan memiliki skala menengah dan memiliki nilai bisnis yang mencukupi.
Jumlah tim di atas enam orang dan aplikasi yang dikembangkan memiliki kaitan
dengan proses bisnis organisasi (2) Jangka waktu proyek pada umumnya berkisar
tiga hingga dua belas bulan.
GEM adalah model eksekusi yang
menekankan pada kondisi terdistribusi yang terjadi didalam tim. Tim dapat
terpisah secara ruang, waktu, Negara, dan bahkan manajemen yang terpisah.
Implementasinya memiliki ciri (1) Manajemen bersifat terpisah namun memiliki
komunikasi antara satu manajemen dengan manajemen lainnya (2) Pada umumnya
system yang dikembangkan adalah system berbasis produk dan ditargetkan untuk
bahasa dan kultur berbeda (3) Panjang proyek pada umumnya satu tahun atau lebih
dari satu tahun.
Pada langkah – langkah eksekusi
GXP terbagi menjadi empat fase utama, yakni feasibility, configuration,
preparation, dan execution. Fase kelayakan adalah melakukan pertimbangan apakah
proyek yang akan dikembangkan cocok dengan GXP dan hasilnya adalah keputusan
apakah menggunakan GXP atau tidak. Fase konfigurasi adalah fase memilih
menggunakan model implementasi REM, VEM, atau GEM. Fase persiapan adalah fase
mempersiapkan komposisi tim, mempelajari prinsip, nilai, teknis praktis, dan
mempersiapkan infrastruktur yang dibutuhkan. Fase eksekusi diawali dengan
melakukan estimasi proyek. Selanjutnya, melakukan eksekusi GXP dengan
mengadopsi SDLC.