إمكانية تتبع المتطلبات
تُعدّ إمكانية تتبع المتطلبات فرعًا من فروع إدارة المتطلبات في تطوير البرمجيات وهندسة النظم . ويُعرّف مصطلح إمكانية التتبع، وفقًا لمفردات هندسة النظم والبرمجيات الصادرة عن معهد مهندسي الكهرباء والإلكترونيات [ 1 ]، بأنه: (1) مدى إمكانية إقامة علاقة بين منتجين أو أكثر من منتجات عملية التطوير، لا سيما المنتجات التي تربطها علاقة سلف-خليفة أو علاقة رئيسي-تابع؛ [ 2 ] (2) تحديد وتوثيق مسارات الاشتقاق (التصاعدية) ومسارات التخصيص أو التدفق (التنازلية) لمنتجات العمل في التسلسل الهرمي لمنتجات العمل؛ [ 3 ] (3) مدى تبرير كل عنصر في منتج تطوير البرمجيات لسبب وجوده؛ و(4) وجود ارتباط واضح بين كيانين منطقيين أو أكثر، مثل المتطلبات أو عناصر النظام أو عمليات التحقق أو المهام.
تُعرَّف إمكانية تتبع المتطلبات، على وجه الخصوص، بأنها "القدرة على وصف وتتبع دورة حياة المتطلب في كلا الاتجاهين (أي من منشئه، مرورًا بتطويره وتحديد مواصفاته، وصولًا إلى نشره واستخدامه لاحقًا، وعبر فترات التحسين والتكرار المستمر في أي من هذه المراحل)". [ 4 ] [ 5 ] في مجال هندسة المتطلبات ، يتعلق التتبع بفهم كيفية تحويل المتطلبات عالية المستوى - الأهداف، والغايات، والتطلعات، والتوقعات، واحتياجات العمل - إلى متطلبات منخفضة المستوى جاهزة للتطوير. ولذلك، فهو يهتم في المقام الأول بتعزيز العلاقات بين طبقات المعلومات (المعروفة أيضًا باسم المخرجات). [ 6 ] ومع ذلك، قد يوثق التتبع العلاقات بين أنواع عديدة من مخرجات التطوير، مثل المتطلبات، وبيانات المواصفات، والتصاميم، والاختبارات، والنماذج، والمكونات المطورة. [ 7 ] على سبيل المثال، من الممارسات الشائعة توثيق علاقات التحقق لإثبات أن متطلبًا ما قد تم التحقق منه بواسطة مخرج اختبار معين.
تُعدّ إمكانية التتبع ذات أهمية بالغة عند تطوير الأنظمة الحساسة للسلامة، ولذلك فهي منصوص عليها في إرشادات السلامة ، مثل DO178C و ISO 26262 و IEC61508 . ومن المتطلبات الشائعة لهذه الإرشادات ضرورة التحقق من المتطلبات الحرجة، وإثبات هذا التحقق من خلال إمكانية التتبع. [ 8 ]
التتبع نحو المتطلبات وما يتجاوزها
تتبع المتطلبات المسبقة . [ 4 ] تأتي المتطلبات من مصادر مختلفة، مثل مسؤول الأعمال الذي يطلب المنتج، ومدير التسويق، والمستخدم الفعلي. ولكل منهم متطلباته الخاصة من المنتج. باستخدام تتبع المتطلبات، يمكن تتبع أي ميزة مُطبقة إلى الشخص أو المجموعة التي طلبتها أثناء عملية جمع المتطلبات . ويمكن استخدام ذلك أثناء عملية التطوير لتحديد أولويات المتطلبات، وتحديد مدى أهميتها لمستخدم معين. كما يمكن استخدامه بعد النشر لمعرفة سبب الحاجة إلى بعض الميزات غير المستخدمة التي تم اكتشافها خلال دراسات المستخدمين.
تتبع المتطلبات بعد إتمامها . [ 4 ] لا يقتصر التتبع على المتطلبات نفسها فحسب، بل يشمل أيضًا علاقة المتطلبات بجميع العناصر المرتبطة بها، مثل النماذج، ونتائج التحليل، وحالات الاختبار، وإجراءات الاختبار، ونتائج الاختبار، والوثائق بجميع أنواعها. بل يجب تتبع الأفراد ومجموعات المستخدمين المرتبطين بالمتطلبات. تُحوّل المتطلبات إلى عناصر تصميم، ثم تُنفّذ، وأخيرًا تُتحقق منها. يجب تتبع العناصر المرتبطة بالمراحل الأخيرة وصولًا إلى المتطلبات. ويتم ذلك عادةً من خلال مصفوفة تتبع المتطلبات .
قد يصبح تتبع المتطلبات، وصولاً إلى عناصر التصميم والتنفيذ والتحقق، أمرًا صعبًا. [ 9 ] فعلى سبيل المثال، عند تنفيذ متطلبات البرمجيات، قد تكون المتطلبات موجودة في أداة إدارة المتطلبات ، بينما قد تكون عناصر التصميم موجودة في أداة التصميم. علاوة على ذلك، من المرجح أن تكون عناصر التنفيذ على شكل ملفات مصدرية، يمكن إنشاء روابط لها بطرق مختلفة وعلى نطاقات متنوعة. أما عناصر التحقق، فتشمل تلك التي تُنتجها الاختبارات الداخلية أو أدوات التحقق الرسمي .
قد يمثل تكامل المستودع أو مجموعة الأدوات تحديًا كبيرًا للحفاظ على إمكانية التتبع في نظام ديناميكي.
استخدام معلومات التتبع
إن استخدام إمكانية التتبع، وخاصة عند التتبع إلى ما وراء المتطلبات لجميع العناصر الموجودة في سلسلة الأدوات، يمكن أن يحقق العديد من الفوائد: [ 10 ] [ 11 ]
- تحليل تأثير التغيير - في حال تغيير أحد المتطلبات ، توفر روابط التتبع معلومات حول العناصر المرتبطة بها والتابعة لها. ويمكن التحقق من هذه العناصر بسهولة، وتعديلها عند الحاجة. كما يقلل ذلك من احتمالية إغفال العناصر المرتبطة.
- يضمن تحليل التغطية - إمكانية التتبع - عدم إغفال أي متطلبات. خاصةً عند اعتماد المنتجات ذات الأهمية البالغة للسلامة، من الضروري إثبات استيفاء جميع المتطلبات.
- تحليل حالة المشروع – يُمكن تتبع حالة المشروع: يسمح تحليل بيانات التتبع برؤية حالة إنجاز المتطلبات. تشير المتطلبات التي لا تحتوي على روابط أو التي تحتوي على سلسلة تتبع غير مكتملة (مثل المتطلبات التي تم تنفيذها ولكن بدون اختبارات) إلى ضرورة بذل المزيد من الجهد. تُظهر الروابط المفقودة العناصر الملموسة المفقودة والتي تحتاج إلى إنجاز.
- إعادة استخدام مكونات المنتج – من الممكن تنظيم المتطلبات ومكوناتها المرتبطة بها في حزم. ويمكن استخدام هذه الحزم لمنتجات مختلفة.
- العلاقات المستمرة – غالبًا ما تكون معرفة المشروع أو المنتج محصورة في أذهان أشخاص محددين. وباستخدام نظام التتبع، تُحفظ هذه المعرفة من خلال تصوير العلاقة بين مختلف العناصر. وتبقى هذه المعرفة حتى لو غادر شخص ما المشروع.
- تحسين الاختبارات – من خلال ربط المتطلبات، وشفرة المصدر ، وحالات الاختبار ، ونتائج الاختبار، يسهل تحديد الأجزاء المتأثرة من شفرة المصدر في حال فشل الاختبارات. علاوة على ذلك، يمكن تحديد حالات الاختبار الزائدة وإزالتها.
يتم تقديم نظرة عامة أكثر اكتمالاً عن أنشطة التطوير المدعومة بإمكانية التتبع وأهميتها في [ 12 ] .
الاستخدام العملي لمعلومات التتبع
توثق دراسات مستفيضة فعالية هذه التقنية، ولكنها توثق أيضاً صعوبات الحصول على معلومات التتبع:
- تُسرّع إمكانية التتبع وتُحسّن أنشطة التطوير - أظهرت دراسة شملت 71 مشاركًا قاموا بإجراء تغييرات على شفرة المصدر مع وبدون دعم التتبع فوائد التتبع. أنجز المطورون المهام بدعم التتبع أسرع بنسبة 24% وبدقة أكبر بنسبة 50%. [ 13 ]
- تساهم إمكانية التتبع الأكثر شمولاً في تجنب عيوب البرمجيات - في تحليل لبيانات التطوير من 24 مشروعًا مفتوح المصدر متوسط الحجم وكبير الحجم، وُجدت علاقة ذات دلالة إحصائية بين اكتمال معلومات التتبع المُجمّعة ومعدل عيوب شفرة المصدر المُطوّرة. أظهرت المكونات ذات إمكانية التتبع الأكثر شمولاً عددًا أقل من العيوب (أو الأخطاء البرمجية). [ 14 ]
- يُعدّ تحقيق التتبع المتوافق مع المعايير أمرًا صعبًا - فقد كشف تحليلٌ لاختبارات ما قبل التسويق للبرمجيات في الأجهزة الطبية لدى إدارة الغذاء والدواء الأمريكية (FDA) عام 2013 عن فجواتٍ كبيرة بين معلومات التتبع الموصوفة والمُقدّمة. [ 8 ] غالبًا ما يؤدي السعي نحو تتبعٍ متوافق مع المعايير إلى "تجميدٍ كبير". تجميدٌ كبير، إذ تسعى الشركات إلى تجنّب المزيد من التطوير لأنّ إعادة الاعتماد تتطلب جهدًا هائلًا. [ 15 ]
عرض معلومات التتبع
يتمثل أحد أهداف التتبع في تصوير العلاقة بين العناصر. ومع ازدياد عدد روابط التتبع وتعقيدها، تصبح تقنيات تصوير التتبع ضرورية. ويمكن أن يتضمن التصوير معلومات حول العناصر (مثل نوع العنصر، والبيانات الوصفية، والخصائص) والروابط (مثل نوع الرابط، والبيانات الوصفية، وقوة الرابط). [ 16 ]
تشمل طرق عرض معلومات التتبع الشائعة المصفوفات والرسوم البيانية والقوائم والروابط التشعبية .
- مصفوفة التتبع – مصفوفة التتبع هي تمثيل جدولي يربط بين عناصر من نوع معين (مثل المتطلبات) ممثلة في الأعمدة، وعناصر من نوع آخر (مثل شفرة المصدر) ممثلة في الصفوف. تُظهر الخلايا وجود علاقة بين عنصرين إذا كانت مُعبأة، أو عدم وجود علاقة إذا تُركت فارغة. [ 16 ] تتمثل ميزة مصفوفات التتبع في إمكانية رؤية جميع الروابط بين العناصر بنظرة سريعة. تساعد المرشحات على تقليل كمية المعلومات المعروضة. تُعد مصفوفات التتبع مناسبة لمهام الإدارة. [ 16 ] مع ذلك، في المجال الصناعي، غالبًا ما تتكون المشاريع من آلاف العناصر، مما قد يجعل الجداول كبيرة جدًا ومعقدة. [ 17 ]
- مخطط التتبع – في مخطط التتبع، تُمثَّل العناصر كعُقد. وترتبط العُقد بالحواف، إذا وُجد رابط تتبع بين العناصر. تُعدّ المخططات مناسبةً بشكلٍ خاص لمهام التطوير، إذ تُتيح الحصول على نظرة عامة على الروابط بشكلٍ استكشافي، وتتميز بنسبة عالية من فهم المعلومات. [ 16 ] ومن خلال التنقل عبر المخطط، يسهل تحديد الروابط المفقودة كدليل لإنشاء العناصر المطلوبة.
- القوائم – تمثل القوائم روابط التتبع في مدخل واحد. قد يتضمن هذا المدخل معلومات تتعلق بالمصدر والهدف وخصائصهما. وهي مناسبة بشكل خاص عند تنفيذ عمليات جماعية على عدة عناصر مختلفة. تتيح عوامل التصفية وآليات الفرز التعامل مع المعلومات المعروضة. ومع ذلك، بالمقارنة مع طرق العرض المرئية المذكورة أعلاه، تُعد القوائم أقل ملاءمة لتنفيذ مهام إدارة المشاريع والتطوير والاختبار. [ 16 ]
- الروابط التشعبية – تربط الروابط التشعبية العناصر المرتبطة وتتيح الانتقال من عنصر المصدر إلى العنصر المرتبط. يُعد هذا النوع من العرض مناسبًا عند الحاجة إلى معلومات تفصيلية حول عنصر ما، إذ يسمح بالتنقل إلى العناصر في بيئتها الأصلية. [ 16 ] إلا أن استخدام الروابط التشعبية فقط ينطوي على عيب يتمثل في الحاجة إلى جهد كبير في التنقل للحصول على نظرة عامة على حالة الروابط، نظرًا لعدم عرض العناصر المرتبطة بشكل مُختصر.
يمكن دمج الرسوم البيانية للتغلب على قيودها المحددة.
التنفيذ التقني
إمكانية التتبع اليدوي
تتحقق إمكانية التتبع من خلال تسجيل آثار العمليات إما يدويًا بالكامل أو باستخدام أدوات مساعدة، مثل جداول البيانات في برنامج مايكروسوفت إكسل . ورغم شيوع استخدام هذه العملية، إلا أنها معقدة وعرضة للأخطاء، وغالبًا ما تؤدي إلى معلومات تتبع ذات جودة غير كافية نظرًا لتعدد أدوات التطوير المستخدمة وكثرة العناصر المراد تتبعها. [ 18 ]
إمكانية التتبع المدعومة بالأدوات
تتطلب إمكانية التتبع المدعومة بالأدوات توحيد وتجميع معلومات التطوير الموزعة عبر سلسلة كاملة من أدوات التطوير. وتوجد الطرق التالية لتحقيق هذه الحالة:
توحيد بيئة أدوات البرمجيات عبر أداة إدارة دورة حياة التطبيقات (ALM) - تغطي سلاسل أدوات ALM دورة حياة تطوير البرمجيات وتدير جميع عناصر عملية تطوير البرمجيات. وقد اختارت العديد من الشركات نهجًا يجمع أفضل الأدوات المتاحة، مع التركيز على إدارة المهام، وإدارة التعليمات البرمجية، والعديد من أدوات أتمتة الاختبار . وتتغلب الشركات التي تختار هذا النهج على تحدي التتبع باستخدام أدوات إدارة المتطلبات (RM) التي توفر نموذج تتبع كامل وتكاملًا مع أفضل الأدوات المتاحة. ويُعد استخدام أداة ALM واحدة لتغطية المتطلبات، وتحليل المخاطر، وتصميم النظام، وإدارة المهام، ومستودعات التعليمات البرمجية، والتكامل، والاختبار، وغير ذلك، خيارًا كلاسيكيًا يجمع بين إمكانيات أفضل الأدوات المتاحة ومنصة مشتركة ذات ميزات محدودة.
توحيد البيانات عبر المتطلبات البديلة - تتيح أدوات إدارة المتطلبات (RM) تخزين وتنظيم وإدارة جميع متطلبات مواصفات النظام، وعادةً ما تُرتّب في شجرة مواصفات تربط كل متطلب بالمتطلب الأصل في المواصفات الأعلى. تشمل وظائف التحليل النموذجية، القائمة على معلومات التتبع المسجلة، على سبيل المثال، فحوصات الاكتمال (أي ما إذا كانت جميع متطلبات مستوى النظام تصل إلى مستوى المعدات (مع أو بدون تعديل))، وتقييم انحرافات المتطلبات على جميع المستويات، وعرض حالة التأهيل. ولضمان إمكانية التتبع لأنواع العناصر الأخرى غير المتطلبات، تسمح أدوات إدارة المتطلبات غالبًا باستيراد عناصر أخرى كمتطلبات بديلة يمكن تتبعها باستخدام أساليب تتبع المتطلبات الخاصة بالأداة. يتمثل عيب هذا النهج في ضرورة وجود محولات أو برامج وسيطة مختلفة لأنواع العناصر المختلفة، والتي يجب أن يكون لها إصدار وتنسيق بيانات متسقين. على عكس أدوات إدارة دورة حياة التطبيقات (ALM)، يجب تحقيق هذا الاتساق يدويًا.
توحيد البيانات عبر أداة تتبع مخصصة - يتكون المفهوم الأساسي لأدوات التتبع المخصصة من ثلاث خطوات أساسية:
- تعريف نموذج البيانات، المعروف أيضاً بنموذج معلومات التتبع (TIM). يحدد هذا النموذج أنواع العناصر (مثل متطلبات أصحاب المصلحة، ومتطلبات البرمجيات، واختبارات التكامل، وعناصر نموذج النظام) وكيفية ارتباطها.
- تعريف عمليات الربط من جميع البيانات ذات الصلة لجميع الأدوات التي تشكل جزءًا من سلسلة أدوات التطوير الخاصة بك وكيفية ربط هذه البيانات بـ TIM.
- يتم تعريف المقاييس ووظائف التحليل على TIM - وليس على البيانات الموجودة في أداة معينة.
يجمع هذا النهج بين مزايا النهجين السابقين: فهو يغطي جميع الأدوات والأدوات في نهج شامل، ويوحد البيانات، ويتجنب مخاطر التناقضات الناتجة عن استخدام بدائل قديمة. أما عيبه، فهو أنه يستلزم إضافة أداة أخرى (أداة تتبع) إلى سلسلة الأدوات.
أدوات التتبع
في العديد من المشاريع، يستخدم الأفراد أدوات مكتبية مثل جداول البيانات لإدارة تتبع المشاريع. إلا أن هذه الأدوات عرضة للأخطاء عند وجود مئات المتطلبات والعديد من المستخدمين العاملين على المشروع. لذا، يُنصح باستخدام أدوات تتبع متخصصة لضمان التحكم الفعال في مشاريعك.
انظر أيضاً
- تحليل المتطلبات – العملية الهندسية
- قائمة أدوات هندسة المتطلبات
مراجع
- ↑ هندسة النظم والبرمجيات - المصطلحات . ISO/IEC/IEEE 24765:2010(E). 2010-12-01. ص 1-418 . doi : 10.1109/IEEESTD.2010.5733835 . ISBN 978-0-7381-6205-8.
- ↑ دليل معهد مهندسي الكهرباء والإلكترونيات (IEEE) لتطوير مواصفات متطلبات النظام . إصدار 1998، معيار IEEE 1233. 1998-12-01. الصفحات 1-36 . doi : 10.1109/IEEESTD.1998.88826 . ISBN 978-0-7381-1723-2.
- ↑ دليل IEEE لتكنولوجيا المعلومات - تعريف النظام - وثيقة مفهوم العمليات (ConOps) . معيار IEEE 1362-1998. 1998-12-01. الصفحات 1-24 . doi : 10.1109/IEEESTD.1998.89424 . ISBN 978-0-7381-1407-1.
- 1 2 3 جوتيل، أو سي زد؛ فينكلشتاين، سي دبليو (أبريل 1994). "تحليل مشكلة تتبع المتطلبات". وقائع المؤتمر الدولي لهندسة المتطلبات التابع لمعهد مهندسي الكهرباء والإلكترونيات . الصفحات 94-101 . CiteSeerX 10.1.1.201.7137 . doi : 10.1109/icre.1994.292398 . ISBN 978-0-8186-5480-0. S2CID 5870868 .
- ↑ غوتيل، أورلينا؛ كليلاند-هوانغ، جين ؛ هايز، جين هوفمان؛ زيسمان، أندريا؛ إيغيد، ألكسندر؛ غرونباخر، بول؛ ديختيار، أليكس؛ أنطونيول، جوليانو؛ ماليتيك، جوناثان (2012-01-01). "أساسيات التتبع". في كليلاند-هوانغ، جين؛ غوتيل، أورلينا؛ زيسمان، أندريا (محررون). تتبع البرمجيات والأنظمة . سبرينغر لندن. ص 3-22 . doi : 10.1007/978-1-4471-2239-5_1 . ISBN 9781447122388.
- ↑ هول، إليزابيث؛ كين جاكسون؛ جيريمي ديك (2005). هندسة المتطلبات (الطبعة الثانية ). سبرينغر. الصفحات 9-13 ، 131-151 . ISBN 978-1-85233-879-4.
- ↑ بينهيرو إف إيه سي وجوجين جيه إيه، "أداة موجهة للكائنات لتتبع المتطلبات"، مجلة IEEE Software 1996، 13(2)، ص 52-64
- 1 2 مادير، ب.؛ جونز، ب.ل.؛ تشانغ، ي.؛ كليلاند-هوانغ، ج. (2013-05-01). "التتبع الاستراتيجي للمشاريع ذات الأهمية البالغة للسلامة". مجلة IEEE للبرمجيات . 30 (3): 58-66 . doi : 10.1109/MS.2013.60 . ISSN 0740-7459 . S2CID 16905456 .
- ↑ لي، ين؛ خوان لي؛ يي يانغ؛ مينغشو لي (2008). إمكانية التتبع المرتكزة على المتطلبات لتحليل تأثير التغيير: دراسة حالة . سبرينغر برلين/هايدلبرغ. ص 100-111 . ISBN 978-3-540-79587-2.
- ↑ ويغرز، كارل (2013). "تتبع المتطلبات: حلقات سلسلة المتطلبات، الجزء 1" . jama . تم الاسترجاع في 14 ديسمبر 2016 .
- ↑ ويغرز، ك.؛ بيتي، ج. (2013). متطلبات البرمجيات . مطبعة مايكروسوفت.
- ↑ بويون، إلكي؛ مادير، باتريك؛ فيليبوف، إيلكا (2013-04-08). "دراسة استقصائية حول سيناريوهات استخدام تتبع المتطلبات في الممارسة العملية". في: دوير، يورغ؛ أوبدال، أندرياس ل. (محرران). هندسة المتطلبات: أساس جودة البرمجيات . سلسلة محاضرات في علوم الحاسوب. المجلد 7830. سبرينغر برلين هايدلبرغ. الصفحات 158-173 . CiteSeerX 10.1.1.659.3972 . doi : 10.1007/978-3-642-37422-7_12 . ISBN 9783642374210.
- ↑ مادير، باتريك؛ إيغيد، ألكسندر (2015-04-01). "هل يستفيد المطورون من إمكانية تتبع المتطلبات عند تطوير وصيانة نظام برمجي؟". هندسة البرمجيات التجريبية . 20 (2): 413-441 . doi : 10.1007/s10664-014-9314-z . ISSN 1382-3256 . S2CID 2514618 .
- ↑ ريمبل، باتريك؛ مادير، باتريك (1 يناير 2016). "منع العيوب: أثر اكتمال تتبع المتطلبات على جودة البرمجيات" . مجلة IEEE للمعاملات في هندسة البرمجيات . الصفحات (99): 777-797 . doi : 10.1109/TSE.2016.2622264 . ISSN 0098-5589 . S2CID 1959772 .
- ↑ "open-DO | نحو إطار عمل تعاوني ومفتوح لتطوير برمجيات قابلة للتوثيق" . www.open-do.org . تاريخ الاسترجاع: 15 أبريل 2017 .
- 1 2 3 4 5 6 لي، ي.؛ معالج، و. (2012). أي من تقنيات عرض التتبع مناسبة في هذا السياق؟ دراسة مقارنة . سبرينغر. ص 194-210 .
- ↑ ليرش، فيليكس (2019). "5 أسباب تجعل مصفوفة تتبع المتطلبات غير كافية" .
- ↑ كاننبرغ، أندرو؛ سعيديان، حسين (2009). "لماذا لا تزال إمكانية تتبع متطلبات البرمجيات تشكل تحديًا" (ملف PDF) . مجلة كروس توك - مجلة هندسة برمجيات الدفاع . مؤرشف من الأصل (ملف PDF) بتاريخ 28 مايو 2019. تاريخ الاسترجاع: 13 ديسمبر 2016 .
- متطلبات البرامج
- إدارة مشاريع البرمجيات
