Pengembangan Perangkat Lunak & Teknologi10 November 20267 menit bacaTika Aurora
Menyiapkan Software untuk Lima Tahun ke Depan: Apa yang Diputuskan Sekarang, Apa yang Dibiarkan Terbuka
Banyak yang dijual sebagai "siap masa depan" hanya tebakan mahal soal beban dan fitur. Yang benar-benar melindungi bisnis Anda diputuskan di minggu pertama.
Bagian dari panduan lengkap kami: Arsitektur Software dan Daya Tahan Lima Tahun: Bagian yang Harus Diputuskan Pemilik, Bukan Developer
Kalau Anda sedang memesan software atau mau menambah sistem yang sudah jalan, ada dua jenis keputusan di depan Anda. Yang pertama murah diubah nanti: jumlah server, bentuk halaman, urutan menu, bahkan fitur yang belum jelas dipakai siapa. Yang kedua mahal diubah, dan beberapa di antaranya tidak bisa diubah tanpa membangun ulang.
Yang mahal itu jumlahnya sedikit dan hampir semuanya diputuskan di minggu pertama, sebelum ada satu baris kode ditulis. Daftarnya ada di bawah. Kalau Anda masih menimbang apakah perlu software custom, mulai dari panduan software custom untuk bisnis.
Apa maksud vendor ketika bilang software Anda siap untuk masa depan
Biasanya maksudnya Anda membayar sekarang untuk beban yang belum datang. Server tambahan, lapisan tambahan, dan sistem yang dipecah jadi banyak bagian supaya "nanti mudah diperbesar". Ditambah pengaturan yang bisa dikonfigurasi untuk kasus yang belum pernah terjadi di bisnis Anda.
Semua itu ada harganya, dan harganya dibayar dua kali. Sekali di tagihan pembangunan, sekali lagi setiap bulan dalam bentuk biaya infrastruktur dan waktu orang untuk mengurusnya. Contoh yang paling sering muncul adalah memecah sistem menjadi banyak layanan terpisah sejak awal, dan untung ruginya kami bandingkan di microservices atau monolit untuk bisnis Anda.
Kalau pilihan ini salah, berapa biaya memperbaikinya setahun dari sekarang? Pertanyaan itu yang memisahkan dua jenis keputusan tadi. Menambah server kalau pengunjung naik itu pekerjaan beberapa hari. Memindahkan kepemilikan kode dari vendor yang tidak mau menyerahkannya bisa berarti membangun ulang dari nol.
Kepemilikan dan akun tidak bisa dibenahi belakangan dengan murah
Atas nama siapa repository kode Anda terdaftar? Siapa yang membayar tagihan server, dan email siapa yang jadi admin akun cloud? Siapa yang memegang domain?
Jawaban dari empat pertanyaan itu menentukan apakah Anda bisa mengganti vendor sama sekali. Kalau semuanya atas nama pihak yang membangun, Anda sudah membayar penuh tapi tidak bisa pindah tanpa izin mereka. Tiga tahun lagi, saat bicara harga perawatan, vendor yang memegang akun Anda yang menentukan angkanya.
Di Arktik, kode, server, domain, dan semua akun terdaftar atas nama klien sejak hari pertama. Tidak ada penyerahan di akhir proyek, karena sejak awal memang bukan milik kami. Tahap handover hanya memastikan ulang apa yang sudah ada atas nama Anda, jadi tidak ada yang bergantung pada kami untuk terus ada.
Kalau sistem Anda sudah jalan dan jawabannya belum jelas, cek sekarang, bukan saat ada masalah. Minta daftar akunnya secara tertulis: domain, hosting atau cloud, repository kode, layanan email, dan layanan pembayaran kalau ada. Memindahkan nama pemilik hari ini biasanya pekerjaan administratif biasa. Kalau hubungannya sudah renggang, prosesnya butuh pengacara dan sering tidak selesai.
Teknologi yang biasa bertahan lebih lama daripada yang pintar
Ada dua pertanyaan yang perlu Anda ajukan soal pilihan teknologi. Apakah developer yang belum Anda kenal bisa membaca kode ini, dan apakah orang seperti itu bisa Anda cari di pasar kerja.
Alat yang sudah lama dipakai banyak orang membuat jumlah kandidatnya besar. Pilihan yang tidak lazim menyusutkan jumlah itu sampai tinggal satu orang, yaitu orang yang memilihnya. Selama ia masih di tempat, semuanya berjalan. Begitu ia pindah kerja, pelamar untuk teknologi itu bisa dihitung dengan jari, bahkan di Jakarta, dan biaya dari pilihan yang menarik itu Anda yang tanggung.
Itu alasan kami memilih alat yang pelamarnya banyak dan dokumentasinya umum. Pembahasan teknis yang lebih dalam soal pilihan arsitektur ada di panduan arsitektur software untuk pemilik bisnis.
Catat alasan di balik keputusannya
Kode menunjukkan keputusan yang diambil. Kode tidak menunjukkan apa yang sudah dicoba dan dibuang, atau batasan apa yang memaksa keputusan itu.
Bedanya terasa saat ada orang baru masuk. Ia melihat cara perhitungan diskon ditulis dengan rumus yang aneh, menyimpulkan itu pekerjaan yang tidak rapi, lalu merapikannya. Beberapa minggu kemudian bagian keuangan menelepon, karena rumus aneh itu mengikuti aturan pajak untuk salah satu jenis pelanggan Anda. Tidak ada yang berniat merusak apa pun, tapi alasannya tidak pernah ditulis, jadi tidak ada yang bisa dibacanya.
Kami mencatat keputusan beserta alasannya di dalam repository, jadi catatan itu ikut berpindah bersama kodenya. Orang berikutnya mewarisi pemikiran di balik sistemnya dan bisa mengubah sesuatu tanpa memperdebatkan ulang semuanya dari awal. Ini juga yang biasanya paling dicari developer internal atau kontraktor Anda sebelum mereka mau memegang sistem buatan pihak lain.
Rencanakan versi kedua
Rencana lima tahun yang ditulis sebelum ada yang memakai software-nya hampir selalu keliru, dan kelirunya tidak di bagian yang Anda duga. Fitur yang paling diperdebatkan di rapat sering hampir tidak dipakai. Bagian yang tidak ada di daftar awal justru jadi yang dibuka admin setiap pagi, misalnya satu layar untuk mengecek pesanan yang belum diproses.
Jadi bangun versi paling kecil yang sudah mengerjakan pekerjaan nyata, lalu biarkan pemakaian yang menentukan apa berikutnya, dengan keluhan orang yang memakainya setiap hari dicatat sebagai bahan tahap selanjutnya. Setelah dua bulan dipakai, Anda punya informasi yang tidak bisa dibeli dengan rapat perencanaan berapa kali pun. Cara memotong ruang lingkup versi pertama tanpa membuatnya jadi mainan kami uraikan di memulai dari MVP dan berkembang dari sana.
Struktur pembayaran perlu mengikuti cara kerja itu. Ruang lingkup dan harga disepakati tertulis sebelum setiap tahap dimulai, jadi Anda bisa berhenti setelah tahap mana pun. Kalau setelah tahap pertama arahnya perlu berubah, Anda mengubah arah. Anda tidak terikat menyelesaikan rencana yang sudah tidak cocok hanya karena harganya dibayar di muka.
Yang perlu disepakati tertulis sebelum pembangunan mulai
Bawa daftar ini ke pertemuan dengan vendor mana pun, termasuk kami. Jawabannya diminta tertulis, bukan lisan.
- Atas nama siapa repository kode, server, domain, dan akun cloud terdaftar, dan sejak kapan.
- Apa yang terjadi kalau kerja sama berhenti di tengah: apa yang Anda pegang, dalam bentuk apa, dan berapa lama prosesnya.
- Siapa dari tim Anda yang akan mencoba sistemnya sebelum dipakai sehari-hari, dan di tahap mana.
- Di mana alasan di balik keputusan teknis dicatat, dan apakah Anda bisa membukanya.
- Berapa biaya tahap pertama, dan apa yang Anda pegang kalau berhenti setelah tahap itu.
Di Arktik, tahap pertama adalah discovery, satu sampai dua minggu, yang menghasilkan rencana tertulis dan harga tetap. Dokumen itu milik Anda, Anda lanjut atau tidak, dan bisa Anda bawa ke pihak lain untuk dibandingkan.
Kami juga perlu jujur soal ini. Software custom mahal, dan kalau masalah Anda bisa diselesaikan alat yang sudah ada di pasar, kami akan bilang begitu dan menyebutkan alatnya, termasuk kalau pilihan terbaiknya adalah tidak membangun apa pun.
Cek keputusan mana yang masih terbuka di sistem Anda
Tidak perlu menyiapkan dokumen teknis. Sebutkan saja kondisi sekarang: siapa yang membangun sistem Anda, atas nama siapa akunnya didaftarkan, dan bagian mana yang Anda rencanakan untuk ditambah tahun depan. Kita telusuri mana dari daftar di atas yang masih bisa dibenahi hari ini dan mana yang sudah terlanjur. Obrolan pertamanya gratis, tanpa deck, langsung dengan engineer.
Kalau yang Anda butuhkan hanya memindahkan beberapa nama akun, kami akan bilang begitu. Kalau pekerjaannya memang ada, discovery memberi rencana tertulis dan harga tetap, dan dokumen itu milik Anda apa pun keputusan Anda setelahnya. Gunakan formulir kontak yang membuka WhatsApp, atau kirim email ke hello@arktik.id.
software customkepemilikan kodearsitekturkeputusan teknisukm