Saya dikirim untuk membahas sistem yang saat ini digunakan oleh perusahaan tertentu dan apa yang harus dilakukan dengannya.
Perusahaan memproduksi berbagai tampilan karton. Sistem ini dikembangkan untuk melacak klien, pesanan, dan harga. Banyak yang telah terjadi sejak sistem dibuat dan sistem sekarang, seperti yang dijelaskan oleh manajer, " terkunci " dan " bermasalah ", yang saya terjemahkan sebagai "tidak dinamis" dan "tidak stabil".
Beberapa info tentang sistem
- Ini dikembangkan sekitar tahun 2000
- Sistem yang cukup kecil, 2-5 pengguna, 6 formulir, ~ 8 tabel dengan jumlah data rata-rata
- Dibangun pada Visual Basic awal, formulir dibuat dengan desain drag and drop Antarmuka pada dasarnya hanyalah sebuah jendela dengan menu dan beberapa bentuk
- Menggunakan database MSSQL (SQL2005 server) untuk menyimpan data dan driver ODBC ke kueri, data dimigrasikan dari excel sebelum sistem ini, dan sebelum excel ditangani, dihitung dan ditulis dengan tangan dan kertas
- Pengguna bekerja di lingkungan Microsoft XP (dan lebih tinggi)
Masalah utama mereka adalah mereka tidak dapat menyesuaikan dan menghitung harga, tidak dapat menambahkan jenis karton baru dll, dengan benar lagi karena mereka tidak dapat (atau lebih tepatnya, mereka tidak tahu bagaimana caranya) menyentuh data di server.
Saya menyarankan 3 solusi yang mungkin
- Mencoba menambal sistem saat ini
- Buat antarmuka baru yang segar (lebih disukai lingkungan yang serupa, berbasis VB.net atau VB)
- Bawa kembali ke solusi Excel, mengingat itu adalah sistem yang sangat kecil
Mungkin ada lebih banyak pilihan, tetapi ini adalah yang bisa saya pikirkan.
Pertanyaan saya adalah
- Apa yang harus saya rekomendasikan dan mengapa?
- Apa pro atau kontra dari alternatif ini?
- Apakah ada alternatif lain (mungkin lebih baik)?
sumber
Jawaban:
Sesuatu dengan hanya 6 bentuk dan semacamnya harus mudah dibangun kembali pada kerangka kerja yang lebih modern. Saya telah bekerja dengan memigrasi proyek VB6 yang memiliki sekitar 200 formulir bersama dengan puluhan kelas dan tabel database. Kedengarannya tidak seperti Anda melihat sesuatu yang berantakan tetapi penampilan bisa menipu.
Saya harus menganalisis kode, database, dan persyaratan bisnis untuk mengatakan apakah menulis ulang atau refactoring basis kode yang ada adalah yang terbaik. Mengingat apa yang Anda katakan, saya akan condong ke arah penulisan ulang. Tapi, mungkin ada kesulitan tersembunyi yang tidak Anda lihat saat ini.
sumber
Sejauh ini saya punya saran yang sedikit berbeda.
Setidaknya saya akan mempelajari sistem saat ini dengan cukup baik untuk menjelaskan kepada klien bagaimana cara menggunakannya. Saya akan mengambil waktu ini untuk menjelaskan kekurangan dalam sistem mereka saat ini, menghindari kata-kata negatif, katakan saja kepada mereka apa yang tidak dapat dilakukan bahkan jika semua bug yang diketahui diperbaiki.
Setelah Anda mempelajari semua yang Anda bisa dengan pengaturan mereka saat ini. Berikan mereka opsi, jika Anda dapat mengatasi masalah mereka dengan sistem mereka saat ini, sebenarnya tidak ada yang salah dengan sistem mereka saat ini. Satu-satunya perhatian tentu saja adalah bahwa dukungan Visual Basic 6 mungkin tidak ada dalam 5 tahun.
Kekhawatiran lain adalah cara berkomunikasi dengan database. Microsoft perlahan-lahan menyingkirkan beberapa cara lama untuk berkomunikasi dengan produk basis datanya (Access, MSSQL) sehingga cara Anda berinteraksi dengan produk-produk itu akan menentukan apakah solusi tersebut dapat digunakan pada Windows 9, dan Windows 10 di masa depan.
Jawaban ini sepenuhnya tergantung pada fakta bahwa mereka memiliki sumber ke aplikasi itu sendiri. Jika mereka tidak memiliki sumbernya maka akan sulit untuk mengatasi masalah mereka, memperbaiki bug utama saat ini, atau bahkan menjadikannya alat yang benar-benar dapat mereka gunakan.
Saya tidak merasa ada yang "salah" dengan aplikasi Visual Basic 6, di samping itu, dukungannya untuk versi mendatang tidak diketahui. Bahkan hari ini dengan sistem operasi Windows 7 dan 64-bit semakin sulit untuk didukung. Ini adalah alasan utama menulis ulang ke dalam bahasa modern dengan dukungan 64-bit yang tepat mungkin ide yang bagus.
Jika mereka tidak memiliki sumber pada saat itu menulis ulang adalah satu-satunya solusi mereka.
sumber
Microsoft is slowly getting rid of some of the older ways to communicate...
"? Ingin membaca lebih lanjut tentang ini.Menulis ulang antarmuka adalah pilihan yang bagus, mengingat sistemnya relatif kecil. Keuntungannya adalah -
Kerugian utama adalah bahwa itu mungkin masih sedikit lebih mahal daripada meretas kode yang ada.
sumber
Saya juga cenderung menulis ulang, tetapi Anda harus 100% yakin Anda memahami fungsi saat ini sepenuhnya serta semua fungsi yang rusak, hilang atau tidak memadai. Dua yang terakhir penting karena Anda menyebutkan menyesuaikan dan menghitung harga. Apakah Anda sepenuhnya memahami konsekuensi dari penambahan fitur ini?
Saya pernah bekerja pada apa yang seharusnya menjadi "situs web", tetapi pada kenyataannya mengambil alih alat gaya CRM berbasis akses kustom dari akhir 1990-an dan membawanya ke dunia modern, berbasis web. Pengembang asli sudah lama hilang, Database telah dimodifikasi beberapa kali, dokumentasi asli sudah ketinggalan zaman dan tidak ada yang benar-benar mengerti bagaimana sistem bekerja. Tapi mereka tahu bagaimana menggunakannya, adil. Mungkin 80% dari anggaran untuk proyek ini mencakup tiga hal:
Proyek itu, secara finansial, tidak berhasil!
sumber
All right, let's do this. LEEEEEEEROOOOOOOY...
! : POpsi lain bisa berupa kompromi antara menulis ulang semuanya dan meretas aplikasi yang ada.
Beri mereka fungsionalitas baru dalam aplikasi baru yang dibangun dari awal.
Ini berpotensi lebih mudah dilakukan, dan tidak memerlukan biaya sebanyak penulisan ulang penuh.
Setelah ini dilakukan dan mereka senang mereka dapat menambah / memperbarui data, itu membuka doot fase dua bisa menggantikan fungsi yang ada di aplikasi baru.
Ini mungkin pendekatan yang lebih enak.
sumber
Penulisan ulang sering memiliki kecenderungan untuk kehabisan anggaran ... Buruk.
Tetapi memiliki kerangka modern untuk aplikasi tersebut, mungkin merupakan investasi yang baik, terutama jika tidak ada yang tahu bagaimana sistem lama bekerja, dan jika ada yang rusak segera setelah Anda mulai menyentuhnya.
Juga, VB6 buruk untuk dukungan. Ketika Anda perlu menemukan spesialis dalam 10 tahun, itu akan sangat bermasalah.
sumber