ماتریس ردیابی (traceability matrix) یک روش برنامه ریزی و مدیریت پروژه است که برای نظارت و پیگیری پیشرفت پروژه، تسهیل ارتباط بین اعضای تیم و اهداف پروژه استفاده می شود. ماتریس ردیابی نیازمندیها (RTM) معمولا شامل یک شبکه از وظایف پروژه، سوابق کارها، زمانبندی و وضعیت وظایف، منابع مورد نیاز، وضعیت پیشرفت و موارد دیگر مرتبط با پروژه است. این ماتریس به مدیران پروژه کمک می کند تا روند کار و پیشرفت پروژه را بهتر بفهمند و تصمیم های منطقی و موثرتری را برای مدیریت پروژه اتخاذ کنند.
قابلیت ردیابی نیازمندی ها به شرکت های توسعه نرم افزار کمک می کند تا به استانداردهای بین المللی کیفیت، پایبند باشند و قادر باشند ارتباطات بین نیازمندی های نرم افزار، امنیت، هزینه های مالکیت و بودجه را پیگیری کنند، و در عین حال تمامی ریسک های ممکن را ارزیابی کنند.
در توسعه نرم افزار، ده ها نیازمندی عملکردی و غیرعملکردی باید به درستی تعریف، توصیف و در نهایت به مشتری اطلاع داده شوند. سپس مشتری باید یک سند معماری نرم افزار دریافت کند. اگر این مستندات را نداشته باشید، ممکن است نرم افزاری با کیفیت پایین دریافت کنید.
ماتریس ردیابی الزامات (RTM) یک رویکرد سیستماتیک برای مدیریت و ردیابی نیازمندی ها در طول چرخه توسعه نرم افزار است. ماتریس ردیابی ارتباط هایی بین عناصر مختلف پروژه، مانند نیازمندی ها، اسناد طراحی، موارد تست و کد را برقرار میکند و ساختاری واضح و منظم برای ذینفعان پروژه فراهم میکند.
ماتریس ردیابی نقش مهمی در تضمین هماهنگی نرم افزار با نیازمندی ها و حفظ کیفیت در طول چرخه پروژه دارند. ماتریس ردیابی به ما کمک می کنند تا از اجرای تست ها تا تحویل نهایی محصول، همواره در مسیر صحیح باشیم.
ماتریس ردیابی نیازمندیها به عنوان پلی بین مدیران پروژه، توسعهدهندگان و تست کنندگان عمل میکند و تضمین میکند که هر نیازمندی به درستی درک شده و با موارد تست یا کد منطبق است. همچنین در ارتباطات مؤثر و آنالیز تأثیر تغییرات نیز نقش مهمی ایفا میکند.
به طور خلاصه، ماتریس ردیابی الزامات پروژه در تضمین اجرای نیازمندی ها و ارتباط آنها با موارد دیگر پروژه نقش مهمی دارد و به توسعه دهندگان کمک میکند تا تغییرات را به طور دقیق ردیابی کنند و از کیفیت نرم افزار اطمینان حاصل کنند.
اهمیت ماتریس ردیابی
خیلی وقت ها، مدیران ارشد فناوری (Chief Technology Officer CTO) به خاطر هزینه های مالی بیش از مقدار مورد انتظار، مواخذه می شوند. هم زمان، با مخاطرات زیادی مواجه هستند، مانند نیاز به استخدام نیروی کار بیشتر، تأخیرها، و از دست دادن کنترل بر کیفیت نرم افزار.
اولین کاری که شرکتهای توسعه نرمافزار انجام میدهند، جمعآوری نیازمندی های مشتری است. پس از دریافت نیازمندیها توسط تیم، به مرحله توسعه میپردازند. با این حال، ممکن است مرحله برنامه ریزی به طور کامل ارزیابی نشده باشد. در طول فرآیند توسعه و تست، اغلب اتفاق میافتد که تیم بسیاری از مسائل ضروری را در نظر نگرفته است.
همیشه تفاوتی بین آنچه ما انتظار داشتیم و آنچه دریافت میکنیم وجود دارد. چگونه این شکاف را از بین ببریم؟ روشهای مختلفی برای انجام کارها وجود دارد، اما بر اساس تجربهی ما، ردیابی بهترین عملکرد را دارد.
ردیابی نیازمندی ها یعنی چه؟ تصور کنید نیازمندیها را به تیم دادهاید. یک تغییر ایجاد میکنید، سپس تغییر دیگری. به عبارت دیگر، ارزیابی زمان و هزینهای که برای اجرای درخواستهای تغییر لازم است، وظیفهای دشوار میشود. نیازمندیهای مختلف بر کل جریان پروژه و نتایج آن تاثیر می گذارند. برای کاهش تأثیرات مخرب ناشی از تغییرات در نیازمندیها، از یک ماتریس ردیابی استفاده میکنیم.
ماتریس ردیابی یک سند است که نیازمندی های کسب و کار، سیستم، امنیت و دیگر نیازمندیها را در طول اجرای پروژه، تست و انتشار، ردیابی می کند. این سند به ارزیابی رابطه بین اجزای مختلف سیستم کمک میکند و وضعیت نیازمندی ها را ارزیابی می کند. هدف اصلی از استفاده از ماتریس ردیابی، تأیید این مساله است که نیازمندیها به درستی برآورده شدهاند یا خیر.
ما به یک ماتریس ردیابی نیاز داریم تا تاثیر یک نیازمندی بر نیازمندی دیگر را درک کنیم. در نهایت، تمام نیازمندی ها به عنوان یک ساختار تفکیک کار (Work Breakdown Structure (WBS)) ارائه میشوند. این ساختار تفکیک کار، تمام فعالیتهای مورد نیاز برای ارائه ارزش کسب و کار مورد انتظار را تعریف میکند. ماتریس ردیابی در طول مراحل توسعه و تست با روشن کردن این موضوع که چه چیزی باید تغییر کند و چگونه این تغییرات بر سایر قابلیتها تأثیر می گذارد، کمک میکند. هنگامی که تغییر را تست میکنیم، میفهمیم که چه تبعاتی به همراه دارد.
در نتیجه می توان ماتریس ردیابی برای کاهش ریسکهای مالی و کیفیت نرمافزار مرتبط با پروژه ضروری است.
ماتریس ردیابی با ردیابی پیامدهای ناشی از هر گونه تغییر اعمال شده در الزامات پروژه، بر عملکرد، ترکیب تیم، مدت زمان و غیره تاثیر می گذارد.
مزایای استفاده از ماتریس ردیابی
ردیابی نیازمندی ها تاثیر اثرات تصادفی را حذف می کند. هر تغییری را می توان با دقت برنامه ریزی کرد در حالی که هر خطر احتمالی را در نظر می گیرد. در زیر مزایای اصلی ماتریس ردیابی ذکر شده است :
- پیگیری دستیابی به اهداف
- ردیابی پیشرفت پروژه از ابتدا تا تحویل
- برنامه ریزی و اجرای بهتر تست نرمافزار
- کاهش انجام وظایفی که در اولویت نیستند
- دریافت مستندات کافی به صورت منظم
- ادغام برنامههای شخص ثالث به صورت کارآمد
- تجزیه و تحلیل دادهها و پیش بینی دقیق زمان و بودجه مورد نیاز
- دیدن تمام وابستگیها و توالیهای اجرای پروژه
- صرفه جویی در هزینه و زمان و تخصیص آن ها برای فعالیتهای اصلی کسب و کار
- دریافت گزارش های شفاف در مورد موارد استفاده از بودجه
- دستیابی به محصول نهایی با کیفیت بالا
- در نظر گرفتن و کاهش بسیاری از ریسکهای احتمالی
انواع ماتریس ردیابی نیازمندی ها
- ردیابی به جلو (Forward Traceability):
- در این نوع ماتریس، ما نیازمندیهای پروژه را با موارد تست مرتبط میکنیم.
- هدف از این کار اطمینان حاصل کردن از پیشرفت مناسب پروژه و توسعه صحیح محصول است.
- با ایجاد ارتباط بین نیازمندیها و موارد تست، مسیری روشن برای تست دقیق ایجاد میشود.
- میتوان آن را مانند یک نقشه راه تصور کرد که ما را در مسیر پروژه هدایت میکند.
- ردیابی به عقب یا معکوس (Reverse or Backward Traceability):
- در این نوع ماتریس، ما موارد تست را به نیازمندیها مرتبط میکنیم.
- هدف از این کار جلوگیری از گسترش دامنه پروژه است تا توسعههای جدید به طور ناخواسته دامنه پروژه را گسترش ندهند.
- با پیگیری موارد تست به نیازمندیها، تمرکز روی هدفهای اصلی پروژه حفظ میشود.
- این مانند بازگشت به مراحل قبلی است تا اطمینان داشته باشیم که هنوز در مسیر صحیح هستیم.
- ردیابی دوطرفه (Bi-directional) جلو و عقب:
- پیگیری دوطرفه ترکیبی از دو رویکرد جلو به عقب و عقب به جلو است.
- ما یک سند ایجاد میکنیم که شامل ارتباطات از نیازمندیها به موارد تست و برعکس میشود.
- داشتن موارد تست برای هر نیازمندی و برعکس، پوشش جامعی را تضمین میکند.
- این روش مانند داشتن یک خیابان دوطرفه است: نیازمندیها موارد تست را هدایت میکنند و موارد تست نیازمندیها را اعتبارسنجی میکنند.
کاربرد ماتریس ردیابی در تست نرم افزار
یکی از راههای استفاده از ماتریس ردیابی، گزارش موارد تست و اجرای آنها است. استفاده از ماتریس ردیابی نیازمندیها (requirements traceability matrix (RTM) ) در تست نرم افزار به تیمها کمک میکند تا اطمینان حاصل کنند که هر یک از نیازمندیهای مشتری در چرخه توسعه نرمافزار (SDLC) در نظر گرفته شده است و آیا تمامی این نیازها توسط موارد تست پوشش داده شدهاند یا خیر. استفاده از RTM در تست نرم افزار به تشخیص سریع هر نقصی در عملکرد سیستم کمک میکند.
کاربرد ماتریس ردیابی در گزارش اجرای تست ها
گزارش اجرای تست ها یکی دیگر از کاربردهای ماتریس ردیابی است و میتوانیم به طور پیشگیرانه از ردیابی استفاده کنیم. گزارش اجرای تست ها یک سند است که به تیم تست، مدیر پروژه و مالک محصول وضعیت تست نرمافزار را گزارش میدهد. این گزارش شامل وضعیت برنامه تست، وضعیت مستندات تست و وضعیت نقصها است و میتواند روزانه یا هفتگی ارسال شود. گزارش اجرای تست برای درک نتایج و تصمیمگیری در مورد انتشار نرم افزار یا انجام تست های بیشتر، بسیار حائز اهمیت است. هنگام پایان دادن به مرحله تست و آمادهسازی برای انتشار نرم افزار، ماتریس ردیابی به مرور هزاران مشکل و انتخاب مهمترین موارد مرتبط برای تصحیح، کمک میکند. همچنین به ما امکان مدیریت آسان ورژن سازی (تغییرات انجام شده در هر ورژن از محصول) و ادغام با برنامه های شخص ثالث را می دهد.
به طور ساده، ابزارهای ماتریس مانند یک نقشه تصویری عمل میکنند که برای ثبت نیازمندیها، تست ها و عیبها استفاده میشود.
چگونه ماتریس ردیابی نیازمندی ها (RTM) را ایجاد کنیم؟
در ادامه، نکات مهم برای ایجاد ماتریس ردیابی نیازمندی را بررسی میکنیم:
۲.جمعآوری واقعیتها:
- پس از تعیین هدف، نیاز به جمعآوری مواردی داریم تا به هدف برسیم.
- موارد زیر برای ساخت ماتریس پیگیری نیازمندی (RTM) لازم است: نیازمندیها، موارد تست، نتایج تست و باگ ها.
- مرحله بعد جمعآوری این موارد است. نسخه ی آخر نیازمندیها لازم است و همچنین موارد تست مرتبط با نیازها، باید از تیم تست جمعآوری شود.
۱.تعیین هدف مورد نظر:
- قبل از هر چیز، باید هدف را تعیین کنیم تا تصویر دقیقی از وظایفی که باید انجام دهیم به ما بدهد.
۴.افزودن واقعیتها :
حال میتوانیم تمام موارد را به صفحه اکسل اضافه کنیم.
- باید اطمینان حاصل کنیم که هر نیازمندی، مورد تست و و باگ، دارای شناسههای(ID) منحصر به فردی باشند.
۳.تهیه قالب ماتریس پیگیری :
- حالا باید یک صفحه اکسل ایجاد کنیم و هر مورد را در ستونهای مختلف اضافه کنیم.
۵.بروزرسانی ماتریس پیگیری نیازمندی:
- این فرآیند تا پایان چرخه پروژه ادامه دارد.
- هر تغییر در نیازمندیها باید در اینجا به روز شود.
نتیجه
ماتریس پیگیری نیازمندی ها (RTM) بهترین روش برای تحقق تمام نیازهای مشتری در پروژه است. اگر در طول تست هر نقصی شناسایی شود، آن را از فرآیند حذف می کنیم تا به پروژه آسیب نرساند. این ابزار به عنوان یک ابزار مؤثر برای ارزیابی پروژه عمل می کند. در هنگام ساختن ماتریس، باید به این نکته توجه کنیم که ماتریس تمام مشخصات یا نیازمندی های پروژه را نشان دهد و تمام پوشش تست به درستی در ماتریس ذکر شود. داده ها باید به درستی تجزیه و تحلیل شوند و گزارش جداگانه ای باید تهیه شود که چرا این نقص ها رخ می دهند و چگونه دامنه این نقص ها باید کاهش یابد. این موارد باعث تقویت ارزیابی پروژه و همچنین ساده تر شدن اجرای پروژه می شوند.