تحليل الأنظمة وتصميمها
قبل ما نبرمج أي نظام، لازم نفهم شغل الشركة كويس: كيف بتمشي العمليات، مين المستخدمين، وشو اللي بدنا النظام يحققه. هون بنستخدم أفكار تحليل الأنظمة وتصميمها عشان نرسم صورة واضحة للنظام.
تحليل النظام
فهم الوضع الحالي: أنواع العمليات، طريقة تسجيل الفواتير والديون، والتقارير اللي الإدارة تحتاجها من النظام.
تصميم النظام
تحويل المتطلبات إلى شاشات، أدوار Roles، وصلاحيات،
وتحديد كيف بتمشي البيانات بين أجزاء النظام.
هدف الصفحة
عرض مثال حقيقي مبسّط لتحليل وتصميم نظام محاسبي سحابي مثل WaveFlow، بطريقة مفهومة لطلاب المساق وأصحاب المشاريع.
ملخّص خطوات تحليل نظام زي WaveFlow
- توصيف الوضع الحالي: توثيق طبيعة النشاط، أنواع العمليات اليومية، وطريقة تسجيل الفواتير والديون.
- تحديد المشاكل: مثل ضياع فواتير، ديون غير واضحة، أو نقص في التقارير.
- تحديد الأهداف: مثلاً: تسريع عملية البيع، كشف حساب واضح، وتقارير دورية مرتبة.
-
رسم شكل النظام:
توزيع الشاشات، الأدوار
(Roles)، والصلاحيات لكل مستخدم. - نسخة أولية للتجربة: بناء نموذج أولي وتجربته، ثم التعديل حسب ملاحظات المستخدمين.
أنواع أنظمة مشابهة يمكن تطبيق نفس التحليل عليها
- نظام مبيعات وكاشير لمحل سوبرماركت أو مواد غذائية.
- نظام إدارة معرض (سيراميك، حمامات، أثاث، أجهزة كهربائية… إلخ).
- نظام متابعة ديون وعقود لخدمات شهرية أو سنوية.
- نظام بسيط لإدارة طلبات أونلاين وربطها مع مخزن أو فرع معيّن.
تحليل نظام WaveFlow باستخدام UML
في هذا الجزء بنعرض نموذج تحليلي مختصر لنظام WaveFlow باستخدام مخططات UML، عشان نربط بين الوصف الكلامي وبين التمثيل البصري للنظام.
1) نمذجة حالات الاستخدام (Use Case Modeling)
في WaveFlow فيه أكثر من Actor أساسي:
Owner, Admin, Accountant,
Cashier, Viewer. كل واحد منهم
عنده مجموعة Use Cases بتمثّل المهام اللي بعملها داخل النظام.
| Use Case | Actor | الهدف |
|---|---|---|
| Manage Tenants | Owner | إدارة الشركات على منصة WaveFlow. |
| Register POS Sale | Cashier | تسجيل عملية بيع سريعة من شاشة POS. |
| Create Purchase Invoice | Accountant | تسجيل شراء من مورد وتحديث المخزون. |
| View Daily Sales Report | Viewer / Manager | متابعة مبيعات اليوم لكل صندوق أو فرع. |
الشكل التالي يوضّح العلاقة بين الـ Actors الرئيسيين وحالات الاستخدام الأساسية:
2) بنية النظام (Class Diagram)
WaveFlow مبني بطريقة Object-Oriented، وفيه Classes
أساسية مثل: Tenant, User, Customer,
Product, Invoice, InvoiceLine,
مع عزل بيانات كل شركة (Tenant) داخل قاعدة بياناتها.
المخطط التالي يوضّح أهم الأصناف والعلاقات بينها:
3) سلوك النظام – مثال: عملية بيع من شاشة POS
المثال التالي يوضّح تدفّق عملية بيع عادية من شاشة POS: من لحظة فتح الشاشة، إضافة الأصناف، اختيار طريقة الدفع، لحد حفظ الفاتورة.
- فتح شاشة POS والتحقّق من وجود
CashSessionمفتوحة. - إضافة الأصناف إلى السلة (عن طريق الباركود أو البحث).
- اختيار العميل (اختياري) وطريقة الدفع.
- حفظ الفاتورة وتحديث المخزون.
- ربط العملية بجلسة الكاش الحالية وإمكانية طباعة الفاتورة.
Sequence Diagram – POS Sale
Activity Diagram – POS Sale
تم إعداد هذه الصفحة كنموذج تطبيقي لمساق تحليل الأنظمة وتصميمها.
بإشراف الدكتور ماجد حمايل – جامعة القدس المفتوحة