LUNAK
Agile Unified Process
Veronica
220310646
Agile Unified Process (AUP) adalah versi sederhana dari Rational Unified
Process (RUP) yang dikembangkan oleh Scott Ambler. Sama seperti Rational Unified
Process, pengembangan perangkat lunak tangkas mendukung perencanaan adaptif. Hal ini
juga mendorong pengembangan konstan dan perbaikan terus-menerus, pada gilirannya
mendorong respon langsung dan fleksibel terhadap perubahan.
Disebut demikian karena pendekatannya cukup gesit sehubungan dengan proyek
yang berbeda dan semua yang diperlukan; kebutuhan yang berbeda, parameter yang berbeda,
kemungkinan yang berbeda, risiko yang berbeda. Sebagian besar pengembangan perangkat
lunak tangkas dan AUP bersifat fleksibel dan dapat dengan mudah mengakomodasi
perubahan dan variasi.
Singkatnya AUP adalah pendekatan di mana upaya kolaboratif tim pengembangan
perangkat lunak dan pengguna akhir (konsumen) menentukan cara persyaratan dan solusi dari
pendekatan berkembang.
Pendekatan ini menerapkan teknik agile, termasuk Test-driven Development
(TDD), Agile Model Driven Development (AMDD), agile change management, dan
refactoring database untuk meningkatkan produktivitas. AUP menggunakan metode dan
pendekatan pengembangan perangkat lunak yang gesit yang secara fundamental berbeda dari
teknik RUP, tetapi entah bagaimana masih tetap setia pada fleksibilitas dan kemampuan
beradaptasi RUP.
AUP juga memiliki 6 filosofi dasar. Namun, itu bukan 'praktik terbaik' yang sama
dengan yang dilanggan RUP. Sebaliknya, 6 filosofi tersebut adalah:
Staf Anda Tahu Apa yang Mereka Lakukan. Cukup jelas; AUP mengharuskan orang
yang menggunakannya benar-benar mengetahui dan memahami cara
menggunakannya. Dokumentasi proses terperinci tersedia untuk referensi, tetapi tidak
boleh digunakan sebagai panduan langkah demi langkah secara literal.
Kesederhanaan. AUP menghargai ikhtisar yang ringkas dan ringkas daripada laporan
yang terlalu mendetail dan berulang yang tidak perlu
Kelincahan. Proses Terpadu Agile menganut nilai dan prinsip pengembangan
perangkat lunak tangkas (yang akan kita bahas sebentar lagi) dan Aliansi Agile
Fokus pada Aktivitas Bernilai Tinggi. Pengembang yang menggunakan metode AUP
hanya berkonsentrasi pada kegiatan yang benar-benar akan mendapatkan hasil,
daripada membagi fokus mereka di antara kegiatan, kontinjensi, dan kemungkinan.
Kemandirian Alat. AUP tidak menentukan perangkat apa pun untuk penyelesaian
proyek, yang berarti pengembang bebas menggunakan apa pun yang mereka inginkan.
Sangat disarankan agar Anda menggunakan alat yang paling cocok untuk kebutuhan
spesifik pekerjaan. Dengan kata lain, di bawah AUP, alat dapat bervariasi dari satu
proyek ke proyek lainnya.
Sesuaikan AUP untuk Memenuhi Kebutuhan Anda. Sama seperti RUP, AUP adalah
tentang mengadaptasi metode ke proyek – bukan sebaliknya. Apa pun kebutuhan
pengembangan perangkat lunak Anda, model AUP harus (idealnya) disesuaikan agar
sesuai dengan mereka.
lunak yang berfungsi yang memenuhi kebutuhan pemangku kepentingan mereka. Disiplin
Model (Modeling) tujuan dari disiplin ini adalah untuk memahami bisnis organisasi,
domain masalah yang ditangani oleh proyek, dan untuk mengidentifikasi solusi yang
Penerapan (Implementation) tujuan dari disiplin ini adalah untuk mengubah model
Anda menjadi kode yang dapat dieksekusi dan untuk melakukan pengujian tingkat
Uji (Testing) tujuan dari disiplin ini adalah untuk melakukan evaluasi yang objektif
terpenuhi.
pengiriman sistem dan melaksanakan rencana untuk membuat sistem tersedia bagi
pengguna akhir.
untuk mengelola akses ke artefak Anda. Ini tidak hanya mencakup pelacakan versi
artefak dari waktu ke waktu, tetapi juga mengontrol dan mengelola perubahannya.
Manajemen proyek (Project Management) tujuan dari disiplin ini adalah untuk
mengarahkan kegiatan yang terjadi pada proyek. Ini termasuk mengelola risiko,
mendukung upaya lainnya dengan memastikan bahwa proses, panduan (standar dan
pedoman), dan alat (perangkat keras, perangkat lunak, dll.) yang tepat tersedia untuk
Kelebeihan :
Perencanaan sumber daya yang buruk karena AUP didasarkan pada gagasan bahwa
tim tidak akan tahu seperti apa hasil akhir mereka (atau bahkan beberapa siklus
pengiriman) sejak hari pertama, sulit untuk memprediksi upaya seperti biaya, waktu,
dan sumber daya yang dibutuhkan di awal dari sebuah proyek (dan tantangan ini
menjadi lebih jelas ketika proyek menjadi lebih besar dan lebih kompleks).
Dokumentasi terbatas. Di AUP, dokumentasi terjadi di seluruh proyek, dan seringkali
"tepat pada waktunya" untuk membangun output, bukan di awal. Akibatnya menjadi
kurang detail dan sering jatuh ke bagian belakang burner.
Keluaran terfragmentasi dikarenakan pengiriman tambahan dapat membantu
membawa produk ke pasar lebih cepat, tetapi ini juga merupakan kerugian besar dari
metodologi AUP. Itu karena ketika tim bekerja pada setiap komponen dalam siklus
yang berbeda, hasil yang lengkap seringkali menjadi sangat terfragmentasi daripada
satu unit yang kohesif.
Fakta bahwa AUP membutuhkan perencanaan minimal di awal membuatnya mudah
teralihkan dengan menghadirkan fungsionalitas baru yang tidak terduga. Selain itu, ini
berarti bahwa proyek tidak memiliki akhir yang terbatas, karena tidak pernah ada visi
yang jelas tentang seperti apa "produk akhir".
Pengukuran yang sulit karena AUP memberikan secara bertahap, pelacakan kemajuan
mengharuskan Anda untuk melihat seluruh siklus. Dan sifat "see-as-you-go" berarti
Anda tidak dapat menetapkan banyak KPI di awal proyek.
Agile Unified Process (AUP) telah dikenal sebagai metodologi yang cocok untuk
proyek pengembangan perangkat lunak kecil-menengah. Metodologi ini berfokus pada iterasi
yang cepat, rilis kecil dan sering, mampu menangani perubahan kebutuhan dari pengguna,
dan melibatkan pengguna dalam proses pengembangan perangkat lunak. Namun, sedikit yang
diketahui bahwa AUP dapat digunakan secara efektif untuk persyaratan sistem yang tidak
jelas dan tidak lengkap.