8 pertanyaan untuk dijawab sebelum startup Anda menghadapi uji tuntas teknis

Aktivitas investasi menurun sekarang, tetapi kemungkinan akan meningkat pada tahun 2023. Dan ketika investasi meningkat, begitu pula M&A. Akankah organisasi Anda dan kode Anda lulus uji tuntas teknis saat giliran Anda tiba?

Mari kita mulai dengan hal-hal positif: Jika seorang investor melanjutkan uji tuntas teknis (TDD), kemungkinan besar Anda akan lulus. Anda telah lulus ujian untuk kecocokan pasar-produk, keuangan, dan diferensiasi kompetitif dengan cukup baik sehingga mereka sekarang ingin melihat ke bawah terpal.

Inilah kabar buruknya: Perusahaan dapat lulus ujian bisnis, tetapi gagal TDD. Khusus untuk eksekutif non-teknis, proses pemeriksaan kode bisa terasa seperti … audit … dilakukan dalam bahasa lain … dengan jam yang keras terus berdetak tanpa henti. Tidak menyenangkan.

Perusahaan kami telah menganalisis kode kesepakatan senilai ratusan miliar dolar, dari perusahaan perangkat lunak tiga orang hingga perusahaan dengan ribuan pengembang. Kami telah melihat kontribusi lebih dari 200.000 pengembang yang secara kolektif menulis 4 miliar baris kode.

Kesehatan basis kode yang buruk lebih sering “disebabkan” oleh tim lain daripada oleh teknik.

Dari kumpulan data tersebut, kami telah menyaring delapan pertanyaan yang dapat Anda tanyakan pada diri sendiri sekarang. Bahkan jika TDD tidak ada di depan mata, memiliki jawaban yang baik untuk pertanyaan-pertanyaan ini akan memastikan basis kode Anda sehat.

Primer cepat tentang TDD

Sebelum kita melangkah lebih jauh, berikut sedikit konteks tentang uji tuntas teknis untuk perangkat lunak:

  • TDD berlaku untuk perusahaan perangkat lunak tradisional dan perusahaan non-perangkat lunak yang diaktifkan oleh perangkat lunak yang dibuat khusus.
  • Ini melibatkan pemeriksaan kode yang ditulis oleh karyawan atau kontraktor.
  • TDD dilakukan oleh ahli internal atau oleh konsultan spesialis.
  • Investor dan pengakuisisi, terutama yang lebih besar dan elit, dapat meminta untuk melakukan pemindaian kode kuantitatif untuk melengkapi wawancara kualitatif. Pemindaian kode semacam itu secara efektif wajib dilakukan jika investor mencari perwakilan dan asuransi jaminan (RWI) untuk transaksi tersebut.

Tujuan dari TDD adalah untuk:

  1. Kurangi risiko kesepakatan dengan menentukan apakah basis kode cukup aman untuk investasi.
  2. Mengidentifikasi peluang untuk perbaikan jika transaksi berhasil.

Kami mengatakan “basis kode” karena ini lebih dari sekadar kode sumber yang ada di bawah kaca pembesar. Dokumentasi, proses, dan yang terpenting, pengembang perangkat lunak juga akan diperiksa. Lingkup fungsional TDD mencakup kualitas kode, keamanan kode, kekayaan intelektual, DevOps, TI, dan terkadang, manajemen produk.

Karena ini lebih dari sekedar kualitas kode yang kita bicarakan kesehatan basis kode untuk mencakup semua bidang ini.

Pertanyaan 1: Apa yang telah Anda kerjakan?

Memastikan bahwa organisasi sedang mengerjakan produk perangkat lunak yang paling penting adalah bagian penting untuk mengurangi risiko kesepakatan.

Ini mungkin terdengar jelas, tetapi kadang-kadang, sebuah perusahaan mengklaim sedang mengerjakan produk baru, tetapi sebenarnya akan menghabiskan sebagian besar waktunya untuk pengembangan kustom untuk klien besar atau tidak mengerjakan apa pun sama sekali.

Pertimbangkan contoh pengembangan perangkat lunak perusahaan ini selama dua tahun. Tidak hanya ada siklus dalam pekerjaan (lebih tinggi di musim panas), tetapi juga menurun secara signifikan dari waktu ke waktu, terutama di tahun 2022.

Aktivitas pengembangan dari waktu ke waktu (melakukan), berdasarkan bulan

Kredit Gambar: Sem

Poin penting: Di sini, dan untuk semua pertanyaan di TDD, jawaban apa pun mungkin cukup untuk menyelesaikan ujian.

Ini membawa kita ke Tema TDD #1: Bagian terpenting dari TDD adalah memastikan status basis kode selaras dengan tujuan bisnis organisasi. Misalnya, perusahaan perangkat lunak pendidikan AS biasanya melihat siklus pengembangan perangkat lunak — lebih tinggi di musim panas dan lebih rendah di musim gugur — untuk meminimalkan gangguan bagi pelanggan saat sekolah dimulai.

Pertanyaan 2: Berapa banyak pengujian unit yang dimiliki basis kode Anda?

Kami ingin membedakan antara mendasari kualitas kode untuk memasukkan langkah-langkah seperti pemeliharaan atau kemampuan untuk diperpanjang, dan fungsional kualitas kode — cara produk bekerja untuk pengguna.

“Hutang teknis” adalah cara lain untuk menggambarkan kekurangan kesempurnaan dalam kode yang mendasarinya.

Related Posts