Bahagian kedua meninggalkan anda dengan senarai satu halaman: fail kritikal, pemiliknya, perkara yang bergantung kepadanya dan sama ada ia mempunyai sandaran. Senarai itu memberitahu anda apa yang perlu dipindahkan. Bahagian ini memberitahu anda apa yang tidak boleh dipindahkan seadanya.

Andaian biasa ialah migrasi merupakan satu langkah teknikal: eksport fail, import ke dalam sistem baharu, selesai. Secara teknikal itu benar, dan secara praktikal itulah cara terpantas untuk mengubah masalah kecil menjadi masalah yang mahal. Hamparan elektronik memang bertolak ansur secara reka bentuk: ia menerima apa sahaja yang anda taip dalam mana-mana sel dan menyerahkan tugas mentafsirnya kepada anda. Sistem tidak begitu: ia menjangkakan tarikh ialah tarikh, nombor ialah nombor, dan pelanggan ialah satu entiti dengan satu rekod. Jadi apabila data yang tidak bersih dipindahkan, kekusutan itu tidak hilang; ia timbul sebagai laporan yang tidak seimbang, invois yang tidak terpaut kepada pelanggannya dan baki yang tidak sepadan. Kemudian tibalah ayat yang menamatkan banyak projek: sistem baharu tidak berfungsi.

Mengapa pembersihan mesti dibuat sebelum migrasi, bukan selepasnya

Menangguhkannya memang menggoda atas sebab yang munasabah: pembersihan ialah kerja membosankan yang tidak muncul dalam mana-mana pembentangan, sedangkan skrin sistem baharu muncul. Maka keputusan dibuat untuk memindahkan sekarang dan membersihkan kemudian. Tetapi sebaik sahaja data masuk, ia mula bergerak: invois dikeluarkan kepada pelanggan berganda, pesanan dipautkan kepada item berganda dan laporan dibina atas angka yang tidak lengkap. Setiap urus niaga baharu menambah satu lapisan di atas kesilapan itu yang menjadikan pembetulannya lebih sukar dan berisiko, kerana menyunting rekod yang telah dilalui urus niaga kewangan langsung tidak sama dengan menyunting sel dalam fail.

Data yang tidak bersih ialah punca berulang projek sistem yang tergendala secara umum, dan kami menghuraikannya bersama punca lain dalam mengapa projek ERP gagal dan cara menjayakan projek anda. Kesimpulan praktikalnya, pembersihan paling murah ketika data masih berada dalam fail statik, dan paling mahal sebaik sahaja ia hidup dalam sistem yang sedang beroperasi.

Lima kecacatan yang terdapat dalam hampir setiap helaian

Ini bukan ralat yang luar biasa; ia hasil semula jadi alat yang membenarkan segala-galanya. Anda akan menemui kebanyakannya dalam fail anda sendiri:

  • Satu pihak dengan beberapa nama. Pelanggan yang sama muncul tiga kali: sekali dengan nama perniagaan, sekali dengan nama pemilik dan sekali sebagai singkatan yang ditaip oleh seseorang yang tergesa-gesa. Dalam fail, ia baris bersebelahan yang difahami oleh mana-mana pembaca. Dalam sistem, ia menjadi tiga pelanggan berasingan, masing-masing dengan baki dan sejarah sendiri, jadi rekod hubungan itu berpecah dan tiada satu pun daripada ketiga-tiganya memberi anda gambaran penuh. Kecacatan yang sama menimpa item dan pembekal.
  • Format tarikh bercampur. Satu lajur yang menyimpan satu tarikh sebagai hari/bulan, satu lagi sebagai bulan/hari, dan yang ketiga ditulis sebagai teks seperti selepas cuti atau hujung bulan. Selagi hanya manusia yang membacanya, ia lepas, tetapi sebarang isihan, pengiraan tempoh atau laporan berasaskan masa yang dibina atas lajur itu akan memberikan jawapan yang salah dengan yakin, dan itu lebih berbahaya daripada memaparkan ralat yang kelihatan.
  • Nombor disimpan sebagai teks. Amaun yang ditaip dengan simbol mata wang di dalam sel, kuantiti dengan unit ukurannya dalam petak yang sama, atau angka yang bermula dengan ruang tersasar. Pada mata ia kelihatan seperti nombor, bagi mesin ia bukan, jadi ia tidak boleh dijumlahkan, dibandingkan atau dimigrasikan; dan biasanya anda menyedarinya dalam laporan kewangan pertama selepas migrasi.
  • Lajur yang tiada siapa dapat takrifkan. Lajur bernama catatan, status atau temp, yang ditambah bertahun-tahun lalu untuk tujuan yang sudah tamat, kadang-kadang diisi dan kadang-kadang kosong. Ia biasanya ikut dipindahkan kerana tiada siapa berani memadamnya, jadi ia masuk ke dalam sistem sebagai medan tanpa takrif dan tanpa pemilik, dan terus muncul di skrin untuk mengelirukan sesiapa yang datang selepas anda.
  • Sel berwarna yang membawa makna. Yang paling berbahaya dalam senarai ini. Kuning bermaksud tertunggak, merah bermaksud ditangguhkan, hijau bermaksud sudah dikutip. Itu bukan pemformatan, itu data; tetapi data yang disimpan dalam warna dan dalam ingatan orang yang mewarnakannya. Apabila fail dieksport, teks dipindahkan dan warna tercicir, jadi anda kehilangan maklumat yang anda gunakan untuk menjalankan perniagaan setiap hari, tanpa sebarang amaran.

Satu peraturan: setiap makna di luar sel mesti menjadi medan

Jika anda hanya mengingati satu ayat daripada bahagian ini, biarlah ayat ini: sebarang makna yang dipegang dalam warna, dalam kedudukan baris atau dalam kepala seseorang mesti menjadi lajur bertulis sebelum ia dipindahkan. Ujiannya mudah dan tidak berkompromi: eksport fail kepada teks biasa tanpa sebarang pemformatan dan tanya maklumat apakah yang hilang. Segala yang lenyap dalam ujian itu ialah tepat apa yang kini mesti menjadi medan.

Penukaran itu sendiri bukan kerja teknikal; ia ialah latihan mentakrif. Tidak cukup sekadar mencipta lajur status: anda perlu menetapkan nilai yang dibenarkan dan menyelesaikan nilai yang bertindih. Adakah ditangguhkan dan dibatalkan satu keadaan atau dua? Pada titik tepat manakah sesuatu rekod menjadi tertunggak? Ini soalan tentang cara syarikat beroperasi, bukan tentang pengaturcaraan, dan inilah perkara paling bernilai yang diperoleh pemilik daripada fasa pembersihan, kerana menjawabnya dengan jelas sekali sahaja menamatkan pertikaian yang dahulunya diselesaikan secara lisan setiap kali.

Pandangan Origami

Kami ialah syarikat teknologi yang membina sistem untuk perniagaan Saudi, dan kami menganggap fasa pembersihan sebagai sebahagian daripada reka bentuk sistem, bukan kerja pentadbiran yang mendahuluinya. Sebabnya, setiap kecacatan dalam data mendedahkan peraturan perniagaan yang tidak bertulis: pelanggan berganda mendedahkan bahawa tiada pengecam yang dipersetujui untuk sesuatu pihak, dan sel berwarna mendedahkan keadaan operasi sebenar yang tidak pernah diiktiraf secara rasmi oleh sesiapa. Penemuan itu ialah bahan mentah reka bentuk yang betul, sebab itu kami menelitinya bersama pelanggan dan bukannya menyalurkannya ke dalam alat import.

Susunan yang kami syorkan ialah menyeragamkan takrif terlebih dahulu: siapa yang dikira sebagai satu pelanggan, apa yang dikira sebagai satu item dan nilai apa yang dibenarkan dalam setiap medan keputusan. Selepas itu, migrasi menjadi operasi bersih yang boleh diulang dan disemak. Di situlah perkhidmatan kami dalam membina sistem bermula, dan itulah logik yang sama yang kami lihat dalam kes sebenar yang kami bincangkan dalam daripada kedai kepada sistem: yang membezakan operasi yang tersusun daripada operasi yang serba spontan bukanlah antara muka, tetapi disiplin data di bawahnya.

Susunan praktikal untuk pembersihan

Membersihkan setiap fail sepenuhnya ialah projek tanpa penghujung. Bekerjalah mengikut susunan yang memberi anda sesuatu yang boleh dipindahkan dalam beberapa hari:

  • Mulakan dengan data induk, bukan urus niaga. Pelanggan, item dan pembekal ialah senarai pendek yang digunakan berulang kali, dan membersihkannya secara automatik membetulkan beribu-ribu baris yang akan dipautkan kepadanya kemudian. Invois dan pesanan datang selepas itu.
  • Gunakan satu pengecam bagi setiap entiti. Kod atau nombor tetap yang tidak pernah berubah dan tidak pernah digunakan semula, kemudian petakan setiap nama lama dan singkatan kepadanya. Bagi pelanggan khususnya, butiran pembeli berkanun yang tepat bukan sekadar hiasan, kerana keperluan e-invois Pihak Berkuasa Zakat, Cukai dan Kastam (ZATCA) menetapkan apa yang mesti terkandung dalam invois cukai; dan kami menghuraikan kaitan antara sesuatu pergerakan dengan invoisnya dalam e-invois di kilang dan gudang.
  • Pecahkan setiap sel majmuk. Kuantiti dalam satu lajur dan unit ukuran dalam lajur lain, amaun dalam satu dan mata wang dalam yang lain, nama dalam satu dan nombor telefon bimbit dalam yang lain. Peraturannya: satu petak untuk satu maklumat.
  • Seragamkan format sebelum sebarang import. Satu format tarikh di seluruh fail, nombor tanpa simbol di dalam sel dan satu format untuk nombor telefon bimbit. Kerjanya berulang dan membosankan, tetapi dibuat sekali sahaja.
  • Rekodkan keputusan pembersihan anda dalam helaian berasingan. Apa yang digabungkan ke dalam apa, apa yang dipadam dan apa yang masih diragui. Apabila seseorang bertanya dua bulan kemudian ke mana perginya pelanggan tertentu, helaian itulah jawapannya; tanpanya, pasukan hilang keyakinan terhadap keseluruhan migrasi.
  • Jangan padam fail asal. Simpan fail sebelum pembersihan sebagai salinan tertutup baca sahaja. Pembersihan melibatkan pertimbangan, dan pertimbangan memerlukan rujukan untuk kembali kepadanya.

Dan jangan tunggu data yang sempurna sebelum memindahkan, kerana ia tidak akan pernah tiba. Kebersihan yang anda perlukan ialah medan kritikal yang betul, konsisten dan ditakrifkan, dan apa sahaja yang masih tidak lengkap sudah diketahui dan direkodkan, bukannya ditemui kemudian sebagai kejutan.

Dalam bahagian akan datang

Data kini layak untuk dipindahkan, dan yang tinggal ialah soalan yang menentukan sama ada perniagaan terus berjalan sepanjang peralihan atau terhenti: apa yang dipindahkan dahulu? Bahagian seterusnya membincangkan susunan migrasi, mengapa data induk sentiasa mendahului urus niaga, dan bagaimana operasi selari berjalan dengan tarikh tamat yang diisytiharkan, bukan terbuka. Kemudian kami beralih kepada kebenaran akses dan siapa melihat apa, seterusnya kepada laporan yang dahulunya anda sediakan secara manual, dan kami menutup siri ini dengan tiga puluh hari pertama selepas migrasi.

Sumber