كيف تكتب متطلبات النظام بطريقة لا يسيء المزوّد فهمها
تبدأ خلافات كثيرة حول الأنظمة بجملة يقرؤها كل طرف بطريقة مختلفة. إليك كيف تكتب متطلبات محددة وقابلة للاختبار ويصعب تأويلها.

«يجب أن يدعم النظام إدارة المخزون في عدة فروع». كل مزوّد يقرأ هذه الجملة سيجيب بنعم، وكل واحد منهم سيقصد شيئاً مختلفاً. وبعد ستة أشهر يكتشف العميل أن «يدعم» كانت تعني رصيداً منفصلاً للمخزون في كل فرع، لكنها لم تكن تعني التحويل بين الفروع، ولا أسعاراً خاصة بكل فرع، ولا عرضاً موحداً للإدارة العامة.
تبدأ خلافات كثيرة بين الشركات ومزوّدي البرمجيات بمتطلبات كُتبت بصياغة فضفاضة تسمح لكل طرف بأن يقرأها على هواه. وكتابة متطلبات لا تحتمل التأويل مهارة يستطيع أي مدير أن يتعلمها.
لماذا تشيع المتطلبات الغامضة
يكتب المتطلبات في العادة مديرون مشغولون يعرفون عملهم جيداً إلى درجة أنهم يتجاوزون التفاصيل. فعبارة «مخزون متعدد الفروع» واضحة في نظرهم لأنهم يعيشونها كل يوم. أما المزوّد الذي لم يرَ مستودعك قط، فيملأ الفراغات بما يقدمه منتجه أصلاً.
وهناك أيضاً إغراء وصف الحل بدلاً من وصف الحاجة. عبارة «نحتاج إلى لوحة مؤشرات» لا تقول الكثير. أما عبارة «يحتاج مدير المبيعات إلى أن يرى كل صباح العملاء الذين تجاوزت أرصدتهم المتأخرة حدودهم الائتمانية» فتخبر المزوّد بالمشكلة المطلوب حلها، وتترك له أن يقترح أفضل طريقة لحلها.
مكونات المتطلب الواضح
المتطلب القوي يجيب عن خمسة أسئلة، وإذا غاب أي منها صار قابلاً للتأويل.
- من يؤدي هذا العمل أو يحتاج إليه؟ سمِّ الدور الوظيفي لا «المستخدم». فأمين مستودع في فرع ومراقب مالي في الإدارة العامة يحتاجان من الشاشة نفسها أموراً مختلفة جداً.
- ماذا يحتاج أن يفعل أو يرى؟ استخدم فعلاً واضحاً: يُنشئ، يعتمد، يحوّل، يعرض، يصدّر.
- متى يحدث ذلك، وكم مرة؟ يومياً، أو مع كل طلب، أو في نهاية الشهر، أو عند الحاجة.
- وفق أي قواعد؟ الحدود والاعتمادات والاستثناءات وشروط التحقق من صحة البيانات. هنا يكمن معظم التعقيد الحقيقي.
- كيف ستعرف أنه يعمل؟ اختبار قبول قصير يستطيع أي شخص تنفيذه في مرحلة الاختبار.
قبل وبعد: إعادة صياغة أمثلة من الواقع
لنأخذ مجموعة مدارس خاصة لها أربعة فروع في عمّان والزرقاء، وتختار نظاماً جديداً لشؤون الطلاب والرسوم المدرسية. هكذا يمكن إعادة كتابة بعض المتطلبات من مسودتها الأولى.
| الصيغة الغامضة | صيغة لا يستطيع المزوّد أن يسيء فهمها |
|---|---|
| يجب أن يتعامل النظام مع خصم الإخوة. | حين يكون لعائلة طفلان أو أكثر مسجلون في أي فرع، يطبّق النظام خصماً لكل طفل حسب ترتيب ولادته بين إخوته، وفق جدول خصومات تديره الإدارة العامة. ويظهر الخصم سطراً مستقلاً في كل فاتورة. الاختبار: سجّل ثلاثة إخوة في فرعين، وتأكد أن كل فاتورة تُظهر السطر الصحيح. |
| يجب أن يتمكن أولياء الأمور من الدفع إلكترونياً. | يدفع ولي الأمر القسط كاملاً أو جزءاً منه عبر رابط دفع يصله برسالة نصية قصيرة أو بالبريد الإلكتروني. وتُسجَّل الدفعة تلقائياً على الفاتورة الصحيحة خلال ساعة، ويراها محاسب الفرع. الاختبار: نفّذ دفعة جزئية، وتأكد أن الرصيد تحدّث في كشف حساب ولي الأمر. |
| يجب أن تتوفر تقارير. | يستطيع المدير المالي في أي وقت أن يعرض الرسوم غير المسددة حسب الفرع والصف وعمر الدين (من 0 إلى 30 يوماً، ومن 31 إلى 60 يوماً، وأكثر من 60 يوماً)، وأن يصدّر القائمة إلى Excel. |
| يجب أن يكون النظام ثنائي اللغة. | جميع المستندات الموجهة إلى أولياء الأمور (الفواتير وكشوف الحساب والإيصالات والرسائل النصية) متوفرة بالعربية والإنجليزية، مع حفظ اللغة المفضلة لكل ولي أمر في سجله. وتُعرض المستندات العربية من اليمين إلى اليسار، مع ترتيب صحيح للأرقام والتواريخ. |
الصيغ الجديدة أطول، لكن كل واحدة منها يمكن تسعيرها وبناؤها واختبارها. والمزوّد الذي يوافق عليها يكون قد التزم بشيء محدد.
ما يجب أن تشمله المتطلبات إلى جانب الشاشات
تحظى المتطلبات الوظيفية بمعظم الاهتمام، لكن مشاريع كثيرة تفشل بسبب البنود المحيطة بها. ويجب أن تغطي وثيقة المتطلبات الكاملة أيضاً ما يلي:
- البيانات وترحيلها. ما البيانات التاريخية التي يجب نقلها إلى النظام الجديد، وكم سنة منها، ومن سيتولى تنظيفها. واذكر الأحجام: عدد العملاء والمنتجات والمعاملات الشهرية.
- التكامل مع الأنظمة الأخرى. كل نظام يجب أن يتبادل معه النظام الجديد البيانات، واتجاه تدفقها، وعدد مرات التبادل. ومن الأمثلة البنك، ونظامك المحاسبي، ومتجرك الإلكتروني، ونظام الفوترة الإلكترونية الوطني إن كان ينطبق عليك، مثل JoFotara في الأردن.
- المستخدمون والصلاحيات. عدد المستخدمين في كل دور، وما يحق لكل دور أن يراه أو يعدّله، والإجراءات التي تحتاج إلى اعتماد شخص ثانٍ.
- التقارير. القرارات التي يدعمها كل تقرير، بدلاً من قائمة بأسماء التقارير.
- المتطلبات غير الوظيفية. سرعة الاستجابة المتوقعة، وساعات توفر النظام، وتوقعات النسخ الاحتياطي والاستعادة، وتفضيلات الاستضافة، وطريقة حماية البيانات الشخصية. اجعلها واقعية ومحددة بما يناسب عملك.
- الدعم والتسليم. التدريب والتوثيق وساعات الدعم التي تحتاجها، وما يحدث إذا انتهت العلاقة مع المزوّد.
الأولويات والعملية التي تقف وراءها
صنّف كل متطلب في واحدة من ثلاث فئات: أساسي، أو مهم، أو إضافة مرغوبة. وكن صارماً في ذلك. فإذا صنّفت معظم البنود أساسية، فلن يعرف المزوّد ما الذي يمكن تأجيله. أما الأولويات الصادقة فتجعل عروض الأسعار والخطط أكثر واقعية، وتمنحك أساساً واضحاً للمفاضلة حين يضيق الوقت أو الميزانية.
اكتب المتطلبات بعد أن تفهم العملية لا قبل ذلك. فإذا لم تتفق مجموعة المدارس على طريقة اعتماد الخصومات في فروعها، فلن تحسم أي وثيقة متطلبات هذه المسألة. فإما أن يبني المزوّد في النظام الطريقة التي اعتادها فرع واحد، وإما أن يطلب منك القرار في منتصف المشروع، وهو أغلى توقيت لاتخاذه. ورسم العملية الحالية أولاً، كما في مرحلتي «اعرف» و«ارسم» من منهجية KEMLAT، يحوّل المتطلبات من تخمينات إلى وصف لطريقة العمل الفعلية.
المتطلبات اتفاق مشترك بين الطرفين
من التمارين الأولى المفيدة أن تأخذ أهم عشرة متطلبات لديك، وتعيد كتابة كل منها وفق الأسئلة الخمسة أعلاه مع اختبار قبول. وإذا استعصى أحدها على إعادة الكتابة، فهذا يعني عادة أن العملية التي يقوم عليها لم يُتفق عليها بعد، وهذا هو النقاش الذي يجب أن يسبق أي اجتماع مع مزوّد.
تحليل المتطلبات وتصميم الأنظمة في صميم خدمة الأنظمة المؤسسية لدينا. نساعدك على فهم العملية، وكتابة متطلبات لا يسيء المزوّدون فهمها، واختيار نظام أو بنائه بما يناسب طريقة عملك الفعلية.

