Scroll untuk baca artikel
Networking

Perangkat Lunak Kini Ditulis dengan Kecepatan Pemikiran. Keamanan Tidak.

1
×

Perangkat Lunak Kini Ditulis dengan Kecepatan Pemikiran. Keamanan Tidak.

Share this article
perangkat-lunak-kini-ditulis-dengan-kecepatan-pemikiran-keamanan-tidak.
Perangkat Lunak Kini Ditulis dengan Kecepatan Pemikiran. Keamanan Tidak.

Kunci dunia maya

Penulis: Morey J. Haber, Kepala Penasihat Keamanan, BeyondTrust

Example 300x600

Setiap evolusi besar dalam pengembangan perangkat lunak telah mengurangi perselisihan antara ide dan solusi yang dapat diterapkan. Eksekusi yang dioptimalkan air terjun terhadap rencana. Adaptasi yang dioptimalkan secara tangkas terhadap perubahan. DevOps mengoptimalkan pengiriman berkelanjutan. Saat ini, kecerdasan buatan generatif dan Vibe Coding mengoptimalkan kreasi untuk siapa pun, di mana pun.

Namun seiring dengan semakin cepatnya pembuatan perangkat lunak, organisasi menghadapi tantangan baru: bagaimana mengamankan apa yang telah dibangun.

Pengembangan perangkat lunak selalu menjadi cerminan teknologi yang tersedia pada saat tertentu dalam sejarah. Ketika daya komputasi meningkat, jaringan menghubungkan dunia. Ketika kecerdasan buatan muncul sebagai kolaborator yang mumpuni, siklus hidup pengembangan perangkat lunak pun ikut berevolusi.

Apa yang dimulai sebagai disiplin teknik buku teks yang diatur oleh dokumentasi dan tahapan pencapaian yang berurutan telah berubah menjadi proses yang semakin dinamis di mana ide-ide dapat menjadi aplikasi yang berfungsi secara real-time.

Perjalanan dari Waterfall ke Agile dan sekarang ke Vibe Coding mewakili lebih dari sekedar perubahan metodologi. Hal ini mencerminkan perubahan mendasar dalam cara manusia berinteraksi dengan teknologi itu sendiri dan mengembangkan perangkat lunak baru.

Era Terstruktur

Bertahun-tahun yang lalu, Model Air Terjun muncul ketika sumber daya komputasi terbatas, proyek perangkat lunak mahal, dan perubahan dianggap sebagai kegagalan dalam perencanaan yang tepat dan bukan merupakan bagian alami dari pengembangan.

Metodologi ini mengikuti perkembangan linier dengan pencapaian berbeda yang memerlukan waktu bertahun-tahun untuk diselesaikan, termasuk persyaratan bisnis, arsitektur dan desain, pengkodean, pengujian, penerapan, dan pemeliharaan.

Sama seperti membangun gedung pencakar langit, setiap cetak biru harus disetujui sebelum satu baris kode ditulis. Dokumen persyaratan berusaha menangkap setiap kemungkinan fitur dan kebutuhan bisnis sebelum pengembang menyentuh keyboardnya.

Keuntungannya sudah jelas. Siklus hidup yang dikembangkan perangkat lunak air terjun (SDLC) menciptakan prediktabilitas dan penyampaian standar. Perusahaan besar, pemerintah, dan vendor perangkat lunak independen (ISV) menggunakan model ini karena selaras dengan persyaratan pengadaan, penganggaran, dan kepatuhan.

Tantangannya, bagaimanapun, bukanlah menciptakan perangkat lunak namun mempertahankan relevansinya. Pada saat perangkat lunak mencapai produksi, pasar, ekspektasi pelanggan, dan teknologi sering kali berubah.

Tim pengembangan sering kali menyadari bahwa mereka telah membangun apa yang diminta, namun belum tentu sesuai dengan kebutuhan. Praktik pengkodean air terjun dioptimalkan untuk kepastian di dunia yang semakin tidak pasti.

Era Adaptif

Ketika perangkat lunak menjadi sangat penting bagi operasional bisnis, organisasi menyadari bahwa perencanaan yang kaku tidak dapat mengimbangi inovasi. Gerakan Agile muncul sebagai respon langsung terhadap keterbatasan Waterfall. Alih-alih menganggap perubahan sebagai sebuah gangguan, Agile justru menganggapnya sebagai kenyataan yang tak terelakkan.

Organisasi pengembangan beralih ke sprint yang singkat dan berulang di mana tim yang lebih kecil memberikan fungsionalitas tambahan, mengumpulkan umpan balik, dan menyesuaikan arah secara terus menerus. Kolaborasi lintas fungsi menggantikan silo, dan pelanggan menjadi peserta aktif, bukan penerima pasif.

Pengembangan perangkat lunak menjadi proses berulang di mana fitur dapat divalidasi sebelum upaya berbulan-bulan dilakukan, sehingga pengembang dapat merespons umpan balik pelanggan daripada hanya mengandalkan asumsi yang dibuat pada awal proyek.

Keberhasilan Agile pada akhirnya mengarah pada DevOps, yang memperluas konsep tersebut melampaui pengembangan. Model integrasi berkelanjutan dan penerapan berkelanjutan memungkinkan organisasi memindahkan kode dari pengembangan ke produksi dengan kecepatan yang belum pernah terjadi sebelumnya, menggunakan otomatisasi untuk pengujian, penyediaan infrastruktur, dan manajemen rilis.

Sederhananya, Agile dan DevOps mempercepat pengiriman perangkat lunak dari tahun ke bulan, bulan ke minggu, dan akhirnya minggu ke jam. Namun, bahkan Agile masih memiliki kendala yang signifikan: pengembang yang terampil masih berperan sebagai mekanisme utama untuk menerjemahkan ide ke dalam kode.

Era Percakapan

Pengenalan kecerdasan buatan generatif telah mengantarkan Revolusi Industri dalam rekayasa perangkat lunak.

Awalnya, AI bertindak sebagai asisten pengkodean yang cerdas, menghasilkan fungsi dan kasus pengujian, menjelaskan kode, dan mempercepat pemecahan masalah. Tugas pemrograman rutin yang dulunya membutuhkan waktu berjam-jam seringkali dapat diselesaikan dalam hitungan menit.

Ini mengubah hubungan antara pengembang, perangkat lunak, dan mesin. Daripada menulis setiap baris secara manual, pengembang semakin banyak mendeskripsikan maksud melalui teks atau grafis, sementara AI menghasilkan detail implementasi. Insinyur perangkat lunak berevolusi dari pembuat menjadi perancang, arsitek, pengulas, dan orkestra.

Pergeseran ini meletakkan dasar bagi apa yang sekarang disebut Vibe Coding.

Sejujurnya, Vibe Coding mewakili perubahan dramatis dari metodologi pengembangan tradisional. Daripada memulai dengan dokumen persyaratan atau sesi perencanaan sprint, pengembangan sering kali dimulai dengan perintah bahasa alami yang sederhana:

  • Seorang pengguna (tidak harus pengembang) menjelaskan apa yang mereka inginkan dalam bahasa Inggris yang sederhana.
  • AI menghasilkan dasar untuk aplikasi.
  • Pengguna menyempurnakan keluaran melalui percakapan.
  • Siklus ini berulang terus menerus hingga hasil yang diinginkan tercapai.

Prototipe yang berfungsi kini dapat muncul dalam hitungan menit, bukan minggu. Aplikasi yang dulunya membutuhkan tim pengembang berdedikasi kini dapat dirakit melalui interaksi berulang antara kreativitas manusia dan kecerdasan mesin.

Karakteristik yang menentukan dari Vibe Coding adalah niat menjadi bahasa pemrograman. AI menafsirkan kreativitas pengguna ke dalam aplikasi yang berfungsi, dan pengembang yang terampil kini diperlukan untuk mengelola langkah terakhir pembuatan perangkat lunak: debugging dan keamanan siber.

Pengembangan perangkat lunak benar-benar dapat diakses oleh semua pengguna. Selama beberapa dekade, membangun perangkat lunak memerlukan pengalaman bertahun-tahun dalam mempelajari bahasa pemrograman, arsitektur perangkat lunak, metodologi pengujian, proses penerapan, dan disiplin ilmu teknik yang menghasilkan aplikasi yang andal.

Kini, masyarakat tidak lagi membutuhkan keahlian mendalam pada setiap framework, bahasa pemrograman, atau platform untuk membuat aplikasi. Sebaliknya, mereka mengkomunikasikan tujuan, kendala, dan hasil yang diinginkan dan AI menerjemahkan tujuan tersebut ke dalam kode yang dapat dieksekusi.

Bagi wirausahawan dan startup, kemampuan ini merupakan hal yang revolusioner. Ide dapat divalidasi hampir secara instan, dan konsep eksperimental dapat diuji sebelum investasi yang signifikan dilakukan. Namun mendemokratisasi pembuatan perangkat lunak tidak secara otomatis mendemokratisasi perangkat lunak penilaian rekayasa yang mendasari perangkat lunak yang aman, andal, dan dapat dipercaya.

Ketika Perangkat Lunak Melampaui Keamanan

Terlepas dari kelebihannya, Vibe Coding memang menimbulkan risiko yang tidak pernah diantisipasi oleh metodologi sebelumnya. Kode yang dihasilkan dalam hitungan detik masih dapat mengandung kerentanan, kelemahan arsitektur, masalah perizinan, kerentanan eskalasi istimewa, dan masalah kepatuhan.

Model AI dapat menghasilkan aplikasi yang berfungsi dengan baik dan menyembunyikan kelemahan keamanan yang tidak kentara.

Hal ini menciptakan paradoks yang menarik. Semakin cepat perangkat lunak dapat dibuat, semakin cepat pula organisasi dapat secara tidak sengaja meningkatkan permukaan risikonya.

Disiplin rekayasa perangkat lunak aman tradisional (pemodelan ancaman, tinjauan kode, pengujian kerentanan, keamanan identitas, hak istimewa paling sedikitdan pengendalian tata kelola) tetap penting.

Organisasi juga harus memastikan bahwa kode yang dihasilkan AI mematuhi industri dan industri Praktik terbaik keamanan AI sebelum penerapan produksi apa pun.

Jika tidak, Vibe Coding berisiko menjadi setara dengan IT bayangan modern: sangat produktif, sangat inovatif, dan berpotensi berbahaya di berbagai vektor serangan.

Evolusi Berikutnya

Menurut pendapat saya, kita masih berada di awal Revolusi Industri Perangkat Lunak Vibe Code. Fase berikutnya mungkin melibatkan ekosistem pengembangan yang sepenuhnya otonom di mana agen AI mengumpulkan persyaratan, menghasilkan arsitektur, menulis kode, menguji aplikasi, memulihkan kerentanan, menerapkan pembaruan, dan memantau lingkungan produksi dengan lebih sedikit campur tangan manusia.

Manusia akan tetap memberikan visi, tata kelola, etika, dan akuntabilitas. Namun, mekanisme pembuatan perangkat lunak mungkin semakin terotomatisasi dan menjadi komoditas yang tersedia bagi semua orang.

Sejarah pengembangan perangkat lunak pada akhirnya adalah sejarah abstraksi. Setiap evolusi telah menghilangkan lapisan lain antara niat manusia dan perangkat lunak yang dapat dieksekusi. Air terjun mengurangi kompleksitas melalui struktur. Agile menguranginya melalui iterasi. DevOps menguranginya melalui otomatisasi.

Saat ini, dengan Vibe Coding, kita mungkin menyaksikan abstraksi yang paling signifikan: mengurangi kompleksitas melalui percakapan dan perluasan tenaga kerja yang mampu menghasilkan kode kerja.

Kami telah menghabiskan waktu lima puluh tahun untuk membuat perangkat lunak lebih mudah dibuat. Tantangan berikutnya adalah memastikan praktik terbaik keamanan siber berkembang dengan cepat. Jika perangkat lunak dapat dibuat dengan kecepatan pemikiran, kepercayaan juga harus dibangun dalam penerjemahan pemikiran kita.

Bio Penulis:

Morey J. Haber, Kepala Penasihat Keamanan, BeyondTrust

Morey Haber

Morey J. Haber adalah Kepala Penasihat Keamanan di BeyondTrust. Sebagai Kepala Penasihat Keamanan, Morey adalah penginjil identitas dan teknis utama di BeyondTrust. Ia memiliki lebih dari 25 tahun pengalaman di industri TI dan telah menulis lima buku: Attack Vectors: The History of Cybersecurity, Privileged Attack Vectors, Asset Attack Vectors, Identity Attack Vectors, dan Cloud Attack Vectors. Morey sebelumnya menjabat sebagai Chief Security Officer, Chief Technology Officer, dan Wakil Presiden Manajemen Produk BeyondTrust selama hampir 13 tahun masa jabatannya. Pada tahun 2020, Morey terpilih menjadi anggota Dewan Penasihat Eksekutif Identity Defined Security Alliance (IDSA) untuk membantu komunitas korporat dengan praktik terbaik keamanan identitas. Dia awalnya bergabung dengan BeyondTrust pada tahun 2012 sebagai bagian dari akuisisi eEye Digital Security di mana dia menjabat sebagai Pemilik Produk dan Insinyur Solusi sejak tahun 2004. Sebelum eEye, dia adalah Manajer Pengembangan Beta untuk Computer Associates, Inc. Dia memulai karirnya sebagai Insinyur Keandalan dan Pemeliharaan untuk kontraktor pemerintah yang membangun simulator penerbangan dan pelatihan. Morey memperoleh gelar Bachelor of Science di bidang Teknik Elektro dari State University of New York di Stony Brook.

Disponsori dan ditulis oleh Melampaui Kepercayaan.