CRUD hanyalah Buat, Baca, Perbarui, Hapus bahwa aplikasi tidak.
Sampai batas tertentu, pelacak bug juga merupakan aplikasi CRUD. Buat bug, Baca (tampilkan) bug, Perbarui bug, dan mungkin, hapus bug.
Namun, ada lebih banyak pelacak bug dari sekadar CRUD.
- Pengembang tidak diizinkan menandai bug yang diverifikasi atau ditutup - itu bagian dari pekerjaan QA. Dan ada beberapa kode di sana untuk memastikan bahwa seseorang yang tidak memiliki peran QA tidak dapat menandai bug sebagai ditutup atau diverifikasi.
- Tidak seorang pun kecuali manajer proyek yang benar-benar dapat menghapus bug.
- Agar bug ditandai sebagai "tes saya", harus ada setidaknya satu komit kode terhadap bug.
- Hanya bug yang dalam status 'tertutup' yang dapat dipindahkan ke status 'buka kembali'
- Pengembang yang ditugaskan untuk bug tidak dapat memindahkannya dari 'review kode' ke 'review kode selesai'
- QA dan Pengembang hanya dapat melihat bug pada proyek tempat mereka ditugaskan.
Kode yang mengimplementasikan di atas adalah logika bisnis aplikasi.
Pembatasan alur kerja, atau siapa yang dapat melakukan berbagai operasi di CRUD. Inilah yang memisahkan satu aplikasi CRUD dari yang lain. Mereka adalah bagian di mana Anda perlu mendapatkan bisnis untuk benar-benar mengatakan cara kerja aplikasi. Betapa logisnya ... well, sebaiknya didiskusikan sambil minum bir di luar jangkauan manajer proyek. Tapi itulah logika bisnis.
Tentu, mungkin untuk menulis aplikasi CRUD 'murni' di mana tidak ada peran, semuanya dapat dimodifikasi dan dilihat - tetapi ini adalah pengecualian daripada aturan.
Logika bisnis adalah logika yang Anda tulis ke dalam program Anda untuk menangani aturan bisnis yang Anda berikan.
Ketika Anda mulai masuk ke aturan bisnis, ini cenderung berada pada tingkat yang lebih tinggi daripada kasar itu sendiri atau logika bisnis. Ini cenderung menjadi hal yang Anda dapatkan dari analis bisnis yang bekerja dengan bisnis tersebut.
Pertimbangkan dalam contoh ini, program yang menentukan bagaimana menangani pengembalian suatu barang di meja pengembalian di toko.
- Jika tanda terima sama dengan atau lebih dari 90 hari, hanya kredit toko yang dapat diberikan
- Jika kwitansi kurang dari 90 hari, kreditkan kwitansi yang digunakan kwitansi pembelian (kredit dikembalikan pada kartu kredit, uang tunai kembali ke uang tunai, kredit toko masuk ke kredit toko) ... kecuali adalah cek, dalam hal ini menggunakan uang tunai.
Itulah beberapa aturan bisnis. Mereka tidak berbicara dengan bagian CRUD dari aplikasi.
Saat bekerja dengan aturan bisnis, Anda mungkin sering menemukan ini ditulis dalam mesin aturan (misalnya, Windows Workflow Foundation Rules Engine ) alih-alih menulis kode mentah di sistem Anda.
Sadarilah bahwa perbedaan logika / aturan adalah salah satu terminologi dan dapat diperdebatkan sepanjang malam (lebih dari satu gelas bir lagi). Meskipun ini bukan perbedaan yang tidak biasa, meskipun keduanya dapat berbaur satu sama lain.