فیدبک ها یکی از مهم ترین بخش ها در طراحی نرم افزار می باشند که اهمیت بسیار بالایی در این فرایند دارند. فیدبک ها به ما کمک می کنند که به صورت مداوم طراحی و کارایی محصول را بهبود دهیم. در این مطلب می خواهیم در مورد سه حلقه فیدبک مهم در فرایند توسعه نرم افزار صحبت کنیم:
اکزمپل فیدبک (Example Feedback) راهنمایی برای طراحی کد: بیایید از سطح پایین یعنی طراحی کد شروع کنیم. در این مرحله فیدبک از مثال ها و تست های مشخصی که از طریق Unit Test ها و BDD داریم به دست می آید. این نوع فیدبک به ما نشان می هد که کد رفتار مورد نظر ما را به درستی پیاده سازی می کند یا خیر. به عبارت دیگر Example Feedback یک راه برای بررسی این است که آیا کدی که نوشتیم با نیازهای ما همخوانی دارد یا خیر.
سناریو فیدبک (Scenario Feedback) راهنمایی برای طراحی فیچرها: حلقه ی دوم در سطحی بالاتر مربوط به طراحی فیچرهای سیستم می باشد. در این مرحله فیدبک به کمک تست ها و سناریوها به دست می آید و نشان می دهد که آیا سیستم مطابق با سناریوهای تعریف شده عمل می کند یا خیر. این نوع فیدبک باعث می شود که از عملکرد فیچرهای سیستم و سناریوها اطمینان حاصل کنیم. با استفاده از تست های End-to-End و سناریوها بررسی می کنیم که آیا فیچر به درستی پیاده سازی شده است یا خیر که این بازخورد به بهبود و تکمیل طراحی آن کمک می کند.
کاستومر فیدبک (Customer Feedback) برای شکل دهی طراحی محصول: در آخرین و بالاترین حلقه فیدبک از طریق کاربران/مشتریان به دست می آید. این فیدبک مستقیما مربوط به طراحی محصول می باشد و نشان می دهد که محصول نیازهای کاربران/مشتریان را برآورده کرده است یا خیر. با تحلیل و استفاده از این فیدبک ها می توان مشکلات را رفع و طراحی محصول را بهبود داد تا تجربه کلی کاربران بهبود پیدا کند. فیدبک کاربران/مشتریان تاثیرات عمیق و مهمی بر تصمیمات استراتژیک مربوط به محصول دارد (می تواند داشته باشد).
در پایان, باید توجه داشته باشید که این سه حلقه به صورت مجزا عمل نمی کنند و به یکدیگر وابسته می باشند. برای مثال فیدبکی که از کدها و فیچرها دریافت می کنیم می تواند به شکل غیر مستقیم بر طراحی محصول نیز تاثیر بگذارد یا فیدبک کاربران بر روی فیچرها و یا حتی کدها تاثیر بگذارد.