Lompat ke kandungan utama
7 minit bacaan

Projek web terbengkalai? Sambung tanpa mula sifar

Projek terbengkalai jarang perlu dimulakan semula. Langkah pertama ialah audit: apa yang berfungsi, apa yang patah, dan apa yang boleh dipercayai. Selepas itu baharu dipilih antara menyelamatkan, menaik taraf, atau membina semula, dengan kos setiap laluan dinyatakan secara jujur.

Perkhidmatan Projek TerbengkalaiAudit KodPenyerahan
Meja projek terbiar: komputer riba berdebu, timbunan kertas dan lampu meja mati dalam bilik malap
Imej dijana AI.

Pembekal sebelum ini hilang, projek tersekat separuh jalan, kod ada tetapi tiada dokumentasi. Ini keadaan biasa, dan ia tidak bermakna kerja sebelum ini membazir. Bahagian yang sudah berfungsi boleh dikekalkan, tetapi hanya selepas kita tahu bahagian mana yang boleh dipercayai.

Audit pertama, apa yang saya semak

  • Adakah ia boleh dijalankan sekarang, dan dengan versi perisian apa? Sistem yang hanya berjalan pada pelayan lama ialah risiko.
  • Akses: kod, pangkalan data, hosting, DNS, repositori, dan akaun pihak ketiga. Tanpa ini, apa-apa kerja bermula dengan membina semula kata laluan, bukan membina ciri.
  • Sandaran: adakah ada, bila kali terakhir dibuat, dan pernahkah dipulihkan?
  • Pangkalan data: struktur, rekod menganggur, dan sama ada data sebenar masih masuk.
  • Keselamatan asas: kata laluan disimpan sebagai hash atau teks biasa, borang tanpa perlindungan, atau penggunaan versi perisian yang sudah tidak disokong.
  • Isu yang dilaporkan pengguna: senarai keluhan sebenar ialah senarai keutamaan terbaik.

Tiga laluan, dan bila setiap satu patut dipilih

  • Selamatkan: kod boleh dijalankan, struktur data munasabah, dan masalahnya terhad. Kerja tertumpu kepada pepijat dan ciri yang hilang.
  • Naik taraf: asasnya baik tetapi versi perisian sudah lama, prestasi menurun, atau keselamatan perlu diperkukuh. Kerja berlaku pada infrastruktur dan lapisan tertentu sahaja.
  • Bina semula: struktur data menghalang setiap ciri baharu, tiada sesiapa yang boleh menyelenggara, atau kos mengekalkan melebihi kos membina. Bahagian yang baik masih boleh digunakan semula sebagai rujukan.

Penyerahan yang betul

  • Semua akses diserahkan kepada pemilik, bukan disimpan oleh pembangun.
  • Sandaran berjadual yang diuji, di luar pelayan yang sama.
  • Dokumentasi ringkas: cara menjalankan sistem, di mana fail penting, apa yang perlu dilakukan pada waktu tertentu.
  • Sejarah perubahan kod yang jelas, supaya perubahan boleh dijejaki.
  • Satu senarai apa yang belum selesai, supaya tidak berulang masalah yang sama.
Saya menyambung kerja yang terbengkalai sebagai kerja biasa. Yang penting ialah audit dibuat dahulu, supaya awak tahu apa yang awak bayar sebelum kerja bermula.

Kes biasa: projek tempahan yang tersekat lebih setahun

Gambaran kes yang paling kerap sampai kepada saya. Sistem tempahan salun atau bengkel. Pembangun pertama berhenti selepas fasa satu, akaun hosting masih atas namanya, dan pelanggan hanya menyimpan satu nama pengguna lama yang tidak lagi berfungsi. Halaman awam masih hidup. Tempahan masih masuk melalui e-mel. Tetapi tiada sesiapa boleh mengubah harga, menambah perkhidmatan atau menutup tarikh yang sudah penuh.

Hari pertama bukan hari menulis kod. Hari pertama ialah menyelamatkan barang. Eksport pangkalan data, salinan penuh folder laman, senarai semua akaun yang terlibat, dan satu salinan sistem yang boleh dijalankan pada pelayan ujian sendiri. Selagi salinan itu belum wujud, apa-apa percubaan membaiki kod asal ialah pertaruhan.

Dalam kes seperti ini, masa tersekat biasanya antara 6 bulan dan 18 bulan. Saiz pangkalan data kecil sahaja, lazimnya di bawah 300 MB. Yang besar ialah folder gambar, kerana gambar yang dimuat naik sejak sistem mula berjalan tidak pernah dibersihkan. Folder sedemikian boleh mencecah 2 GB.

Kata laluan yang perlu ditetapkan semula selalunya lebih daripada sepuluh. Itu termasuk panel hosting, DNS, akaun e-mel, pangkalan data, dan kadang-kadang satu akaun gerbang pembayaran. Setiap satu perlu melalui pemilik sebenar, bukan melalui pembangun lama. Ini kerja membosankan yang tidak boleh dilangkau.

Audit berbayar, dan apa yang awak dapat

Audit saya jalankan sebagai kerja berbayar yang berasingan, biasanya antara RM300 dan RM800 bergantung kepada saiz sistem. Awak bayar untuk dokumen, bukan untuk janji. Selepas itu awak bebas membawa dokumen itu kepada sesiapa sahaja, termasuk pembangun lain.

Laporan itu menjawab lima soalan. Boleh kod ini dijalankan sekarang. Versi perisian apa yang digunakan dan adakah ia masih disokong. Di mana data disimpan dan adakah ia boleh dieksport. Apa yang betul-betul rosak dan apa yang hanya nampak rosak. Dan akhirnya, anggaran kerja untuk setiap laluan, sama ada selamatkan, naik taraf atau bina semula.

Kalau pembangun berkata dia boleh menganggarkan kos tanpa melihat kod dan pangkalan data, itu bukan anggaran. Itu tekaan. Saya pernah melihat sebut harga RM12 000 diberi selepas melihat tangkapan skrin sahaja.

Angka yang biasa saya gunakan untuk menganggarkan kerja

Angka di bawah untuk kerja yang saya ambil di Malaysia, dan ia berubah mengikut keadaan. Awak boleh guna sebagai titik rujukan semasa berbincang dengan mana-mana pembangun.

Selamatkan sistem kecil, iaitu pembaikan pepijat, dua atau tiga ciri baharu, dan pengukuhan keselamatan asas, biasanya 20 hingga 40 jam kerja. Naik taraf versi bahasa pengaturcaraan dan pemindahan pelayan biasanya 10 hingga 20 jam, bukan kerana kerjanya banyak, tetapi kerana setiap ujian perlu dijalankan semula.

Bina semula bahagian hadapan sementara pangkalan data lama dikekalkan biasanya yang paling mahal. Untuk satu sistem tempahan bersaiz sederhana, kerja ini boleh mencecah 120 jam. Kos naik bukan kerana kod baharu, tetapi kerana memastikan data lama masuk dengan betul.

Kalau pembangun memberi satu angka tunggal tanpa menyatakan andaian, minta andaian itu ditulis. Contoh andaian yang munasabah ialah kod asal boleh dijalankan dalam 3 jam pertama, tiada perubahan struktur pangkalan data diperlukan, dan akses DNS boleh diberikan dalam 5 hari.

Soalan yang pelanggan selalu tanya

Pembangun lama masih boleh dihubungi tetapi enggan menjawab. Apa yang perlu saya buat. Hantar permintaan rasmi melalui e-mel dan simpan salinannya. Jika akaun hosting atas nama dia, awak mungkin perlu membeli hosting baharu dan memindahkan laman. Ini menjengkelkan, tetapi ia lebih cepat daripada menunggu tanpa had. Proses pemindahan itu ada catatan berasingan pada halaman pindah pelayan tanpa waktu henti.

Boleh saya sambung kerja ini dengan pembangun lain. Boleh. Syaratnya satu, dokumen audit dan akses mesti lengkap sebelum dia bermula. Tanpa itu, pembangun baharu akan mengulang kerja yang sama dan awak membayar dua kali.

Adakah sistem lama perlu ditulis semula sepenuhnya. Tidak selalunya. Saya hanya mencadangkan bina semula apabila setiap ciri baharu mengambil masa lebih lama daripada ciri sebelumnya, atau apabila tiada seorang pun yang masih faham struktur datanya. Dua tanda itu lebih berguna daripada usia kod itu sendiri.

Berapa lama sebelum sistem baharu boleh digunakan. Untuk satu sistem tempahan, kira 6 hingga 12 minggu termasuk ujian. Rangka masa yang lebih pendek daripada 4 minggu untuk pembinaan semula penuh biasanya bermakna ujian dilangkau.

Bila TIDAK patut sambung projek lama

Ada ketika menyambung kerja lama ialah pilihan yang salah, dan lebih jujur untuk mengatakan begitu pada awal perbincangan. Kalau kod asal dibina dengan kunci lesen pihak ketiga yang tidak boleh dipindahkan, kos pindahan itu selalunya lebih tinggi daripada membina semula.

Begitu juga jika sistem bergantung pada satu perkhidmatan yang sudah ditamatkan, contohnya satu gerbang pembayaran yang tidak lagi menerima peniaga kecil di Malaysia. Menampal kod pada perkhidmatan yang mati hanya menangguhkan masalah itu beberapa bulan.

Kes ketiga ialah apabila pemilik tidak lagi mahu meneruskan perniagaan itu. Menyelamatkan sistem untuk perniagaan yang akan ditutup ialah pembaziran. Kerja yang betul dalam kes itu ialah eksport data dan simpan dalam bentuk yang boleh dibaca, bukan membina ciri baharu.

Apa yang belum diketahui

Satu perkara yang tidak dapat saya pastikan pada awal kerja ialah kelakuan kod yang tidak pernah saya jalankan. Kod yang kelihatan kemas dalam editor boleh gagal pada pelayan sebenar kerana tetapan versi atau sambungan pangkalan data. Sebab itu saya sentiasa menjalankannya dahulu sebelum memberi anggaran akhir.

Perkara kedua ialah reaksi pembangun lama. Sebahagian akan menyerahkan akses dengan tenang. Sebahagian hilang terus. Saya tidak boleh menjanjikan yang mana akan berlaku, dan awak juga tidak boleh. Sebab itu salinan data sendiri ialah langkah pertama, bukan langkah terakhir.

Perkara ketiga ialah kos sebenar pemindahan data. Bilangan rekod boleh dikira, tetapi rekod yang rosak tidak kelihatan sehingga sistem baharu sudah berjalan. Saya pernah menemui tarikh yang salah format pada lebih 3 000 rekod, dan kerja pembersihan itu mengambil masa 12 jam.

Kesilapan yang saya lihat berulang

Kesilapan pertama ialah membayar pendahuluan besar sebelum kod dilihat. Jangan. Bayar audit dahulu, lihat hasilnya, kemudian baharui kerja sambungan.

Kesilapan kedua ialah membenarkan semua akses disimpan atas nama pembangun. Akaun hosting, DNS dan e-mel perlu berada atas nama pemilik perniagaan atau syarikat sejak hari pertama. Ini bukan soal ketidakpercayaan. Ia soal apa yang berlaku apabila seseorang berhenti bekerja.

Kesilapan ketiga ialah tidak pernah menguji sandaran. Sandaran yang tidak pernah dipulihkan bukan sandaran. Ujian yang munasabah ialah memulihkan satu salinan ke pelayan lain dan membuka halaman utama. Kalau ia gagal, awak tahu sekarang, bukan pada hari laman asal rosak.

Jaga sistem itu sendiri selepas sambungan selesai

Sambungan selesai bukan penamat. Sistem yang hidup perlu penyelenggaraan kecil. Periksa sandaran setiap bulan, kemas kini versi perisian setiap suku tahun, dan baca log ralat dengan kerap. Untuk laman yang berjalan atas ColdFusion, keselamatan CFML dan log masuk yang selamat ialah dua perkara pertama yang patut disemak.

Kalau awak tiada masa untuk semua itu, kerja penyelenggaraan boleh diambil sebagai kerja berasingan setiap bulan. Yang penting ialah sistem itu tidak menjadi projek terbengkalai yang seterusnya.

Baca juga di laman ini

Dapat tulisan baharu terus ke e-mel

Sekali sekala sahaja: panduan web, berita AI, dan tempat menarik di Kelantan. Tiada iklan, dan e-mel encik tidak dikongsi dengan sesiapa.

Berhenti langgan bila-bila masa, satu klik.

Komen pembaca

Belum ada komen pada artikel ini. Jadilah yang pertama.

Tinggalkan komen

Emel tidak akan dipaparkan.

Komen disemak dahulu sebelum dipaparkan.

Kongsi WhatsApp Facebook

Berkaitan halaman ini

Pautan afiliasi Shopee - saya mungkin menerima komisen, harga awak tetap sama.

Senarai penuh ada di kedai afiliasi.

Rujukan yang mungkin berguna

Pautan rujukan - anda dapat ganjaran pendaftaran, saya juga dapat ganjaran. Tiada kos tambahan untuk anda.

Bank

Ryt Bank - Bank digital berlesen di Malaysia

Ryt Bank ialah bank digital berlesen di Malaysia, disokong YTL Digital Capital dan Sea Limited (kumpulan di sebalik Shopee). Semua urusan melalui aplikasi, buka akaun, simpanan dan pembayaran tanpa cawangan.

Ganjaran: RM5 dijamin selepas mendaftar; sehingga RM100 jika anda mencuba Ryt AI atau Ryt Groups (kempen ulang tahun pertama Ryt Bank, tertakluk syarat)

Kod: EL5QB

Daftar di Ryt Bank

Kripto

Crypto.com - Crypto.com: ratusan kripto, ganjaran ikut volum dagangan

Bursa kripto antarabangsa yang boleh digunakan dari Malaysia. Pilihan aset lebih luas daripada bursa tempatan, tetapi ia tidak tersenarai sebagai pengendali pasaran berdaftar Suruhanjaya Sekuriti Malaysia.

Ganjaran: Ganjaran AS$1 hingga AS$50 mengikut volum dagangan dalam 30 hari selepas KYC (Tier 4). Bonus alu-aluan berasingan tidak boleh digabungkan.

Kod: uk5gdpqhmx

Daftar di Crypto.com

Senarai penuh (bank digital, minyak, penghantaran) ada di halaman rujukan. Maklumat di atas ialah ringkasan terma penyedia - sila semak terma penuh di laman rasmi mereka.