Otomatisasi Rote sudah ketinggalan zaman: Kecerdasan Buatan mendorong lebih banyak kecerdasan ke dalam pengembangan perangkat lunak

Bisakah kecerdasan buatan (AI) membantu memindahkan upaya DevOps dari yang rapuh menjadi agile? Ada spekulasi di seluruh industri bahwa AI dapat sangat mempercepat bukan hanya pembangkitan kode untuk perangkat lunak, tetapi juga semua detail yang mengikuti – termasuk spesifikasi, dokumentasi, pengujian, implementasi, dan lainnya.

AI telah digunakan selama beberapa tahun dalam bentuk operasional dan prediktifnya, bekerja di belakang layar untuk mengotomatisasi alur kerja dan penjadwalan. Sekarang, manajer TI dan profesional mulai merangkul potensi AI generatif.

Dalam tiga tahun mendatang, jumlah tim teknik platform yang menggunakan AI untuk meningkatkan siklus pengembangan perangkat lunak kemungkinan akan meningkat dari 5% menjadi 40%, menurut analisis yang diterbitkan oleh tim analis Gartner yang dipimpin oleh Manjunath Bhat.

Di seluruh industri TI, ada optimisme yang mencolok tentang dorongan potensial yang diberikan AI kepada DevOps dan praktik Agile yang terkait. “Menggabungkan domain DevOps dan AI dapat saling melengkapi dengan meningkatkan semua tahap siklus pengembangan perangkat lunak dan memungkinkan perangkat lunak untuk diluncurkan ke pasar dengan lebih cepat, andal, dan efisien,” kata Billy Dickerson, insinyur perangkat lunak utama dengan SAS, kepada ZDNet.

Ada banyak aktivitas yang terjadi di sekitar AI generatif dan proses DevOps. Hampir semua (97%) dari 408 manajer teknologi dalam survei yang dirilis oleh spesialis otomatisasi Stonebranch mengindikasikan bahwa mereka “tertarik untuk menggabungkan AI generatif ke dalam program otomatisasi mereka.” Para profesional ini “melihat genAI sebagai alat penting untuk menghubungkan serangkaian alat yang lebih beragam dan memberdayakan berbagai pengguna,” menunjukkan penulis survei tersebut.

AI meningkatkan DevOps, tetapi DevOps juga meningkatkan pengembangan aplikasi AI, menunjukkan survei Stonebranch. Paling tidak 72% dari responden telah merangkul jalur pembelajaran mesin untuk menggerakkan inisiatif AI generatif mereka.

MEMBACA  Dikta Santuy Tidak Terbebani Opini Publik dalam Remake Lagu Legendaris "Setia" Milik Chrisye

Meskipun telah banyak perhatian pada penggunaan AI generatif untuk membuat atau memodifikasi kode perangkat lunak, ini hanya sebagian kecil dari proses pengembangan. Saatnya untuk melihat bagaimana AI dapat membantu para profesional TI dan manajer dalam cara lain.

“Para pengembang rata-rata menghabiskan antara 10% dan 25% waktunya menulis kode,” tulis Bhat dari Gartner dan sesama penulisnya. “Sisa waktunya digunakan untuk membaca spesifikasi, menulis dokumentasi, melakukan tinjauan kode, menghadiri pertemuan, membantu rekan kerja, debugging kode yang sudah ada, berkolaborasi dengan tim lain, memberikan lingkungan, menangani insiden produksi, dan mempelajari konsep teknis dan bisnis – hanya beberapa di antaranya.”

Mengintegrasikan AI dengan “semua tahapan loop umpan balik DevOps – merencanakan, meninjau kode dan pengembangan, membangun, menguji, menerapkan pemantauan, mengukur – meningkatkan kolaborasi dalam tim dan meningkatkan hasilnya secara positif,” poin Dickerson dari SAS. Dengan perencanaan, “AI dapat membuat proses manajemen proyek lebih efisien dengan menghasilkan persyaratan dari permintaan pengguna, mendeteksi timeline yang tidak sejalan, dan bahkan mengidentifikasi persyaratan yang belum lengkap.”

Dickerson mengatakan AI juga dapat menangani proses pembangunan dan tinjauan kode: “Tidak hanya AI dapat menawarkan saran kepada pengembang untuk menghasilkan kode boilerplate secara otomatis, tetapi juga dapat berkontribusi pada proses tinjauan kode. Pendekatan ini meningkatkan kolaborasi antar tim dan dapat menyebabkan lebih banyak inovasi, waktu peluncuran yang lebih cepat, dan lebih baik penyesuaian dengan tujuan bisnis.”

Namun, manajer teknologi dan profesional perlu berhati-hati dalam hal terlalu jauh dengan DevOps yang didorong AI dan praktik Agile lainnya. “Ketergantungan berlebihan membawa risiko,” kata Ian Ferguson, direktur senior SiFive, dan sebelumnya wakil presiden pemasaran di Lynx Software Technologies, kepada ZDNet.

MEMBACA  Angkatan Laut NATO dapat memanfaatkan ketakutan Rusia dan mencegah Putin untuk menginvasi lebih banyak tetangga.

Ferguson mendorong memupuk “dinamika kolaboratif antara manusia dan AI dalam DevOps. AI dapat menangani penulisan kode rutin sementara manusia harus memiliki definisi yang komprehensif dari sejumlah persyaratan sistem dan perilaku,” jelasnya.

Dickerson juga menyarankan berhati-hati saat melanjutkan dengan DevOps yang didorong AI: “Karena AI dapat mengotomatisasi banyak tugas dalam loop umpan balik DevOps, idealnya adalah memiliki pengawasan manusia untuk memastikan AI membuat keputusan otomatis yang benar. Praktik terbaik adalah memastikan persetujuan manusia atas setiap keputusan bisnis penting.”

Dalam laporannya untuk Gartner, Bhat dan sesama penulisnya mengatakan bahwa menerapkan AI ke salah satu bagian dari siklus pengembangan perangkat lunak “dapat menghasilkan pergeseran daripada penghematan usaha, menciptakan rasa hemat waktu yang salah. Misalnya, waktu yang dihemat selama penulisan kode dapat dikompensasi oleh peningkatan waktu untuk tinjauan kode dan debugging.”

Namun, ada alasan untuk bersemangat tentang dampak AI pada DevOps. Bukti menunjukkan bahwa AI dapat diterapkan untuk membantu atau mempercepat tahap-tahap akhir proses DevOps. Ketika sampai pada tahap membangun dan menguji perangkat lunak, misalnya, “AI dapat mengevaluasi input dan output dari proses pembangunan dan mencari pola kegagalan untuk membantu dalam mengoptimalkan waktu pemulihan,” kata Dickerson.

Selain itu, “dengan kemampuannya untuk menganalisis sejumlah data yang besar dan membuat prediksi, AI juga dapat membantu menganalisis hasil pengujian. Hal ini dapat membantu mengidentifikasi pola dari pengujian yang paling berdampak dan tidak dapat diandalkan untuk membantu dalam mengoptimalkan proses pengujian.”

Pada tahap implementasi, “AI dapat mengotomatisasi penyediaan, konfigurasi, dan pengelolaan sumber daya infrastruktur umum. Sebagai gantinya, ini dapat memicu implementasi yang menggunakan artefak yang dihasilkan secara otomatis ini, yang kemudian memungkinkan insinyur untuk menghabiskan lebih banyak waktu pada implementasi yang kompleks,” kata Dickerson.

MEMBACA  Pemerintah mendorong pengobatan TB yang tahan obat yang lebih sederhana untuk mencegah krisis: Resmi

Untuk pemantauan dan pengukuran, “karena implementasi perusahaan dapat menghasilkan sejumlah besar data, tim DevOps dapat kesulitan mencerna informasi yang diperlukan untuk menyelesaikan masalah yang muncul,” kata Dickerson. “Untuk membantu upaya ini, AI dapat menganalisis metrik dan log secara real-time untuk mendeteksi masalah jauh lebih awal dan memungkinkan resolusi yang lebih cepat. Dengan menganalisis data dan pola yang berkesinambungan, AI dapat memprediksi kemungkinan bottleneck, mengidentifikasi area perbaikan, dan membantu dalam mengoptimalkan semua tahapan siklus DevOps.”

Ferguson dari SiFive mengatakan bahwa dengan pengawasan manusia, “AI dapat memperkuat pendekatan seperti DevOps dan Agile.” Dia mengatakan kombinasi efektif AI dan manusia di seluruh siklus perangkat lunak dapat meningkatkan produktivitas dan inovasi: “Kita harus secara proaktif membentuk masa depan ini, meskipun, melalui transparansi, membangun kepercayaan, rekayasa ulang alur kerja, dan pelatihan keterampilan.”