المواصفة الوظيفية (مستند المواصفات الوظيفية FSD) أو مواصفة المتطلبات الوظيفية أو مواصفة البرنامج في هندسة النظم وتطوير البرمجيات هي مستند تصف السلوك المطلوب من النظام الهندسي. يصف المستند ما الذي يحتاجه مستخدم النظام وخصائص المدخلات والمخرجات (مثلاُ نظام برمجية). المواصفة الوظيفية تطابق متطلبات النظام مع الوصف التقي. فيدخل في تكوينها نتائج مرحلة تحليل المتطلبات. في النظم المعقدة، ثمة مراحل متعددة من توثيق المواصفات الوظيفية تكمل بعضها بعضاً، مثلاً مواصفات على مستوى النظام، مواصفات على مستوى التطلبق، مواصفات تقنية، وهكذا.
عملية تطوير البرمجيات | |
---|---|
نشاطات وخطوات | |
المتطلبات · مواصفة وظيفية البنيان · تصميم البرمجيات التنفيذ · الفحص نشر البرمجيات · صيانة البرمجيات | |
منهجيات | |
أجيل · هندسة برمجيات الغرفة النظيفة · Iterative RAD · RUP · Spiral Waterfall · XP · Lean سكرم · V-Model · TDD | |
اختصاصات داعمة | |
إدارة تكوين البرمجيات توثيق البرمجيات ضمان الجودة Project management تصميم تجربة المستخدم | |
أدوات | |
المصرف · المصحح · Profiler GUI designer · ب ت م | |
مواضيع المواصفات الوظيفية
الهدف
ثمة أهداف كثيرة للمواصفات الوظيفية.من الأهداف الرئيسية في المشاريع تحقيق نوع من التوافق لدى الفريق حول البرنامج المطلوب إنجازه قبل بذل الوقت في كتابة الكود المصدري واختبار البرمجية، تتبعها فترة تنقيح برمجي. يتم التوصل لهذا التوافق في الآراء بعد إجراء مراجعة من قبل أصحاب المصلحة للمشروع بعد التفاوض على طرق تحقيق كفاءة من حيث التكاليف لإنجاز متطلبات البرمجية المطلوبة.
- لتوجيه المبرمج عن كيفية بناء (برمجة) النظام أو البرمجية.
- لتوجية فاحصي النظام حول الاختبار التي ينبغي إجراؤها
- لإعلام أصحات المصلحة (المهتمين) بالمخرجات التي سيحصلون عليها
العملية
في دورة حياة البرمجية في نموذج الشلال، تصف المواصفة الوظيفية "ماذا" يتوجب تنفيده. يتلو ذلك مستند معمارية النظام التي تصف "كيف" يتم فهم الوظائف باستخدام بيئة برمجية مختارة. في حالات البرمجيات غير الصناعية، يتم كتابة المواصفات الوظيفية كجزء من عملية تحليل المتطلبات. عندما يوافق الفريق على أنه تم التوصل إلى توافق حول المواصفات الوظيفية، يتم الإعلان عن قبول المواصفات. بعد ذلك يقوم المبرمجون بكتابة الشيفرة المصدرية وكتابة سيناريوهات الفحص باستخدام المواصفات الوظيفية كمرجع. أثناء تنفيذ الفحص، يتم مقارنة سلوك البرمجية مع ما تم وصفه في المواصفة.