RE Lecture 21

RE Lecture 21

مقدمة حول استنباط المتطلبات

التعريف بالموضوع

  • السلام عليكم ورحمة الله وبركاته، اليوم سنبدأ في موضوع مختلف عن السابق. سنتحدث عن كيفية استنباط واستكشاف المتطلبات من خلال مجموعة من الموارد.
  • تم تناول مفهوم تطوير المتطلبات وكيفية جمعها وتوثيقها بشكل فعال.

مثال على نظام إدارة الفنادق

  • تم تقديم مثال يتعلق بنظام إدارة الفنادق، حيث تم تحديد متطلبات وظيفية وغير وظيفية تتعلق بعمليات الحجز.
  • تمت الإشارة إلى أن هناك طرق متعددة لعملية الحجز، وكل طريقة تعتبر متطلبًا مختلفًا.

منهجيات تطوير البرمجيات

المنهج التقليدي

  • تم توضيح أن المنهج التقليدي (Waterfall) يتضمن مراحل محددة: تحليل المتطلبات، التصميم، التنفيذ، الاختبار والنشر.
  • يتم تسليم وثائق المتطلبات (SRS) إلى مرحلة التصميم بعد الانتهاء من تحليل المتطلبات.

اختلاف المناهج

  • ليس كل البرمجيات تتبع نفس الطريقة؛ هناك منهجيات أخرى مثل Agile وScrum وXP التي تؤثر على صياغة المتطلبات.
  • في Agile، لا تكون جميع المتطلبات واضحة منذ البداية وقد تتغير مع تقدم المشروع.

أهمية المرونة في Agile

التكيف مع التغييرات

  • في حالات معينة، قد نحتاج لتطوير النظام باستخدام Agile بسبب عدم وضوح جميع المتطلبات في الوقت الحالي.
  • يتم تحديد نطاق العمل بشكل مرن ويشمل مجموعة من المتطلبات التي يمكن تعديلها حسب الحاجة أثناء عملية التطوير.

الأولويات والتسليمات

  • عند استخدام Agile، يتم أخذ أولويات معينة من قائمة طويلة من المتطلبات وإدخالها في عملية التطوير لإصدار النسخة الأولى للبرنامج بسرعة أكبر.

التعامل مع متطلبات جديدة

ظهور متطلبات جديدة

  • ميزة Agile هي القدرة على إضافة متطلبات جديدة لم تكن موجودة عند بدء المشروع دون التأثير الكبير على الجدول الزمني للتطوير.
  • إذا ظهرت ميزات جديدة لدى المنافسين، يمكن إعادة ترتيب أولويات العمل لإدخال هذه الميزات الجديدة بسرعة أكبر ضمن عملية التطوير القادمة.

دور المستخدمين في تطوير البرمجيات

مشاركة المستخدمين

  • يعتبر تفاعل المستخدمين جزءًا أساسيًا لتحقيق النجاح في المشاريع البرمجية؛ يجب أن يكون لديهم دور فعال ومؤثر خلال عملية تطوير المنتج النهائي.

تقنيات الاستطلاع والمشاركة

  • تشمل تقنيات الاستطلاع الفعالة مثل المقابلات والملاحظة المباشرة للمستخدمين لفهم احتياجاتهم ومتطلباتهم بشكل أفضل مما يسهل عملية التحليل والتطوير لاحقاً.

صياغة وتوثيق المتطلبات

كتابة قصص المستخدمين

  • تعتمد منهجية Agile على كتابة "قصص المستخدم" كوسيلة لتوثيق وتحليل متطلبات النظام بطريقة مرنة وسهلة الفهم لجميع الأطراف المعنية بالمشروع.(ت 1692س).
  • يتم تقسيم القصص إلى ميزات أصغر يمكن إدارتها بسهولة وتسهيل التواصل بين أعضاء الفريق.(ت 1625س).