6 Aturan Penting untuk Menerapkan AI dalam Proses Pengembangan Perangkat Lunak — dan Risiko Utamanya

Kredit Gambar: fotograzia / Moment / Getty Images

Ikuti ZDNET: Tambahkan kami sebagai sumber pilihan di Google.

Intisari ZDNET:

  • Tekanan meningkat untuk perangkat lunak yang lebih selaras dengan bisnis.
  • Teknik Agile telah mandek selama satu dekade.
  • AI dapat mempercepat output tim Agile.

    Agile sejak awal memiliki niatan terbaik: bekerja sama dengan pihak bisnis untuk membangun perangkat lunak yang benar-benar berfungsi secara kooperatif, alih-alih membatasi pengembangan pada proyek-proyek tersekat yang digerakkan secara teknis.

    Tentu saja, dalam prakteknya, hal-hal tidak selalu berjalan mulus. Sebagai contoh, Agile tidak terlalu baik ketika di-skala-kan ke kelompok atau organisasi besar. Politik organisasi dan inersia seringkali menghalangi penyelarasan bisnis-TI yang diidamkan tersebut.

    Lantas, dapatkah AI membantu membuat Agile menjadi, ya, lebih lincah? Itulah harapannya.

    Harapan ini tercermin dalam Laporan State of Agile ke-18 dari Digital.ai, yang menyatakan bahwa AI dan AI agents mempercepat—dan berpotensi meningkatkan kualitas—pembangunan dan pengiriman perangkat lunak. Dan tidak ada kata terlalu cepat—tim teknologi berada di bawah tekanan yang tak henti-hentinya untuk meningkatkan ROI produk mereka, serta inovasi dalam perangkat lunak tersebut. Para penulis survei mengumpulkan wawasan dari hampir 350 partisipan, utamanya Agile coach dan konsultan dari perusahaan besar dengan lebih dari 20.000 karyawan.

    Dalam hal adopsi, metodologi Agile telah terjebak di dataran tinggi selama hampir satu dekade. Dalam survei Digital.ai sebelumnya, mayoritas konsisten (antara 52% dan 60%) menyatakan organisasi mereka "menggunakan praktik Agile tetapi masih dalam tahap pematangan," dan hanya sekitar satu dari sepuluh yang melaporkan tingkat kompetensi yang tinggi di seluruh organisasi mereka.

    Angka-angka tersebut tidak berubah dalam hampir satu dekade, dan tahun ini pun tidak terkecuali—hanya 13% yang mengatakan Agile tertanam dalam di seluruh bisnis dan teknologi, sementara 42% menggambarkan budaya mereka sebagai "lebih baik daripada tidak sama sekali tetapi bisa lebih efektif." Agile "terkutuk dengan pujian yang biasa-biasa saja pada saat yang tepat ketika organisasi paling membutuhkannya."

    Hal ini dikarenakan lebih dari tiga dari empat manajer teknologi (76%) menyebutkan peningkatan pengawasan terhadap dampak bisnis dan ROI dari Agile. Hanya 49% yang memiliki guardrail yang berlaku seiring adopsi AI yang melaju lebih cepat daripada pengawasannya.

    Harapannya adalah AI bergerak dari sekadar alat pendukung menjadi pengatur full software delivery lifecycle. "Alih-alih hanya membantu tim, sistem ini dapat bernalar, memutuskan, dan bertindak secara otonom untuk meningkatkan flow, kualitas, dan kecepatan dalam skala besar," sebut laporan tersebut.

    Terlalu optimis? Para ahli dan pengamat industri skeptis tentang sejauh mana AI dapat meningkatkan proses pengembangan dan pengiriman perangkat lunak secara bersamaan dengan bisnis.

    "AI bukanlah sesuatu yang dapat Anda keluarkan dari toolbox dan mengharapkan hal-hal ajaib terjadi," peringat Andrew Kum-Seun, Research Director di Info-Tech Research Group. "Setidaknya, tidak untuk saat ini. Manajer TI harus siap untuk menangani implikasi manusia, alur kerja, dan teknis yang secara alami datang bersama AI, sambil bersikap jujur tentang apa yang dapat dilakukan AI saat ini untuk organisasi mereka."

    Dengan kata lain, rapikan implementasi AI Anda sebelum mencoba menerapkannya untuk merapikan pengembangan perangkat lunak Anda.

    "Apakah ini akan menjadi alat produktivitas atau sesuatu yang lebih?" lanjut Kum-Seun. "Kemudian, manajer harus dilengkapi dengan alat dan taktik yang tepat untuk membantu tim mengatasi ketakutan, ketidakpastian, dan keraguan mereka. Pada akhirnya, kita ingin merambah ke air dan bukan menyelam tanpa pelajaran berenang."

    Berikut adalah beberapa panduan untuk membawa AI guna meningkatkan upaya perangkat lunak Agile:

    1. Ingat, ini masih tahap awal

    Kum-Seun melaporkan bahwa perusahaannya belum melihat adopsi luas AI agents yang melakukan aktivitas otonom dalam Software Development Lifecycle (SDLC). "Sebagian besar nilai dan kesuksesan yang kita lihat saat ini berada di tingkat tugas individu, di mana AI melengkapi anggota tim manusia."

    2. Mulai dari yang kecil dan persiapkan

    Mulailah dari yang kecil dengan "menguji proses berisiko rendah seperti pembuatan tes dan dokumentasi sebelum mengekspos kode live atau data pelanggan," saran Zbyněk Sopuch, Chief Technology Officer Safetica.

    "Patokan sebelum menggunakan AI pada proses apa pun adalah mencari, memeriksa, dan kemudian memetakan sumber semua data di seluruh organisasi, termasuk kode, log, ticket, dan pelanggan, dan menentukan mana yang terlarang. Bagian dari strategi harus mencakup ‘atur terlebih dahulu, lalu scale‘: buat kebijakan untuk apa yang diizinkan sebelum menambahkan lebih banyak alat atau pengguna."

    3. Putuskan apa yang dapat ditingkatkan oleh AI

    Area mana dari manajemen SDLC yang dapat ditingkatkan melalui praktik Agile yang digerakkan AI?

    "Ada banyak potensi dengan AI, terutama dalam menangani ticket, termasuk analisis backlog, penyortiran berdasarkan dampak, dan munculnya prioritas, yang berarti pengembang dapat tetap fokus pada area yang mendesak," kata Sopuch. "Selain itu, AI memungkinkan pembuatan tes yang lebih cerdas dengan menulis test case yang terkait langsung dengan persyaratan atau bug sebelumnya, sehingga meningkatkan cakupan dan traceability."

    Dokumentasi juga jauh lebih baik dengan AI "dengan kemampuannya untuk merangkum pull request, catatan pengguna, dan pembaruan rilis secara otomatis dari riwayat versi kode," tambah Sopuch.

    AI juga membantu menunjukkan dengan jelas kemacetan dalam pengiriman perangkat lunak kepada tim, "memberdayakan tim untuk memperbaiki masalah dan pola tersebut lebih cepat," tambahnya. "Selain itu, dashboard dan ringkasan yang digerakkan AI memungkinkan tidak hanya visibilitas lintas tim tetapi juga kemampuan anggota organisasi yang kurang teknis untuk memahami dan terlibat dalam proses ini."

    4. Pertahankan manusia dalam proses (Human in the Loop)

    Karena Agile dimaksudkan untuk mempertahankan sisi kemanusiaan dalam pengembangan perangkat lunak, AI perlu mendukung visi ini. Ini harus menjadi komponen inti dari pengembangan Agile yang digerakkan AI juga. "Jika pemimpin tidak mampu menjembatani niat mereka untuk AI dengan kekhawatiran tim, mereka kemungkinan akan melihat penggunaan AI yang tidak tepat dan, mungkin, sabotase yang disengaja dalam implementasinya," kata Kum-Seun.

    Langkah penting lainnya adalah "menjaga semua AI dapat dijelaskan dengan memastikan penggunaan alat AI yang secara jelas menyebutkan dari mana saran mereka berasal—tidak ada kode black-box yang tidak dapat diverifikasi dengan sederhana," kata Sopuch.

    "Pengawasan manusia adalah langkah yang wajib. AI dapat menulis dan refactor kode, tetapi manusia mutlak harus menyetujui merge, push produk, atau pengecualian apa pun. Segala sesuatu dalam proses harus dicatat, termasuk prompt, output, dan persetujuan sehingga audit dapat dengan mudah dilakukan sesuai permintaan."

    5. Agile yang ditingkatkan AI tetap mengikuti aturan pengembangan perangkat lunak

    "Saya telah melihat banyak silver bullet, seperti Agile dan AI, yang datang dan pergi selama bertahun-tahun," ungkap Laura Zuber, Training and Customer Support Manager untuk Quantitative Software Management Inc. "Beberapa telah meningkatkan produktivitas pengembangan perangkat lunak secara terukur. Namun, fundamental pengembangan perangkat lunak tetap sama. Itu menantang."

    Manajer dan profesional TI "perlu memahami bahwa menerapkan peningkatan proses perangkat lunak apa pun, yang mana AI adalah salah satunya, akan menyebabkan produktivitas menurun pada awalnya," kata Zuber.

    "Peningkatan produktivitas akan direalisasikan setelah para pengembang menjadi mahir dalam prompting dan mengajarkan alat atau agent AI pilihan mereka. Para pengembang harus memiliki cukup pengalaman untuk mengenali kode yang buruk dan tidak relevan dan terus bekerja dengan AI agent sampai ia mempelajari apa yang mereka butuhkan atau cari."

    6. Ketahui risikonya

    Risiko teratas dalam memasukkan AI ke dalam proses pengembangan Agile adalah sama dengan sebagian besar inisiatif AI lainnya—potensi paparan data, kata Sopuch.

    "Pengembang dapat secara tidak sengaja menyertakan data sensitif dalam prompt yang dikirim ke alat AI eksternal, seperti API key, kredensial, dan data pelanggan. Shadow AI juga merupakan risiko, terutama dalam manajemen SDLC. Secara alami, orang akan mencari solusi untuk mempermudah pekerjaan mereka, dan dalam hal ini, karyawan dapat menginstal atau menggunakan alat AI yang tidak disetujui atau belum diperiksa tanpa visibilitas TI, menciptakan risiko kepatuhan dan tata kelola."

    Gelombang Agile yang digerakkan AI ini pada dasarnya berbeda dari semua gelombang sebelumnya—seperti waterfall, DevOps, otomatisasi di cloud, dan revolusi seluler, menurut laporan Digital.ai. "Agentic AI bukanlah alat baru; ini adalah rekan tim baru. Ia membawa kesadaran dan kemampuan beradaptasi ke setiap tahap pengiriman, menciptakan sistem yang belajar dari setiap interaksi dan terus meningkatkan flow, kualitas, dan keamanan."

    Ingin lebih banyak cerita tentang AI? Lihat AI Leaderboard, buletin mingguan kami.

MEMBACA  Lakukan 4 Langkah Penting Ini Sebelum Keputusan Fed Hari Rabu