در این تسک، ساختار Sitemap سایت آموزشگاهیاب اصلاح خواهد شد تا تنها دوره، زیردوره، استان و شهرهایی که برای آنها حداقل یک آموزشگاه در سایت ثبت شده است در Sitemap قرار گرفته و ایندکس شوند.
در حال حاضر تمامی استانها، شهرها، دورهها و زیردورهها بدون توجه به وجود آموزشگاه مرتبط، در Sitemap ایندکس میشوند. این ساختار باید اصلاح شود و اطلاعات موجود در Sitemap بر اساس دادههای واقعی آموزشگاههای ثبتشده تنظیم گردد.
الزامات تسک
-
فقط دورههایی که حداقل یک آموزشگاه برای آنها ثبت شده است در Sitemap قرار بگیرند.
-
فقط زیردورههایی که حداقل یک آموزشگاه برای آنها ثبت شده است در Sitemap قرار بگیرند.
-
فقط استانهایی که حداقل یک آموزشگاه برای آنها ثبت شده است در Sitemap قرار بگیرند.
-
فقط شهرهایی که حداقل یک آموزشگاه برای آنها ثبت شده است در Sitemap قرار بگیرند.
-
مواردی که هیچ آموزشگاه ثبتشدهای برای آنها وجود ندارد، از Sitemap حذف شوند.
-
Sitemap باید بر اساس دادههای واقعی و موجود آموزشگاهها تولید شود.
-
با ایجاد یا حذف آموزشگاهها، اطلاعات مرتبط Sitemap باید مطابق دادههای جدید بهروزرسانی شود.
وظایف اجرایی
-
بررسی ساختار فعلی Sitemap سایت آموزشگاهیاب.
-
بررسی ارتباط آموزشگاهها با دوره، زیردوره، استان و شهر.
-
تغییر منطق تولید Sitemap بر اساس آموزشگاههای ثبتشده.
-
اعمال شرط وجود حداقل یک آموزشگاه برای قرارگیری هر دوره در Sitemap.
-
اعمال شرط وجود حداقل یک آموزشگاه برای قرارگیری هر زیردوره در Sitemap.
-
اعمال شرط وجود حداقل یک آموزشگاه برای قرارگیری هر استان در Sitemap.
-
اعمال شرط وجود حداقل یک آموزشگاه برای قرارگیری هر شهر در Sitemap.
-
حذف موارد بدون آموزشگاه از Sitemap.
-
تست خروجی Sitemap و بررسی صحت URLهای ایجادشده.
-
بررسی بهروزرسانی Sitemap پس از تغییر دادههای آموزشگاهها.
خروجی نهایی
-
Sitemap سایت آموزشگاهیاب تنها شامل دورهها، زیردورهها، استانها و شهرهای دارای آموزشگاه ثبتشده باشد.
-
حذف استانها، شهرها، دورهها و زیردورههای فاقد آموزشگاه از Sitemap.
-
اصلاح منطق تولید و بهروزرسانی Sitemap بر اساس دادههای واقعی سایت.
-
آمادهسازی Sitemap برای ایندکس صحیح صفحات دارای محتوای واقعی آموزشگاهها.
دستورالعمل جامع تحویل تسکها و چرخه حیات توسعه (Definition of Done)
در فرآیند ثبت و اجرای تمامی تسکها، رعایت اصول زیر الزامی است (بسته به ماهیت و دامنه هر تسک/سرویس، برخی جزئیات ممکن است کم یا زیاد شوند):
محیط و مخزن تحویل: شروع، توسعه و تحویل کار باید منحصراً روی گیتهاب (GitHub)، در مخزن اختصاصی پروژه و برنچ تعیینشده (Feature Branch یا برنچ موظف طبق ساختار GitFlow) انجام پذیرد.
استقرار نسخه آزمایشی (Staging): پس از اتمام توسعه اولیه، نسخه کاندید جهت انجام تستهای پذیرش (Acceptance / Smoke Tests) بر روی محیط استقرار موقت (Staging / Development Server) دیپلوی شود.
معیارهای پذیرش کیفی، امنیتی و پایش:
تکمیل و بهروزرسانی فایل README.md مخزن شامل راهنمای اجرا، تست و متغیرها.
پاس شدن کامل گیتهای کیفی (Quality Gates) شامل بررسی استانداردهای کد، Linting و تحلیل ایستا (Static Analysis).
رفع کامل آسیبپذیریها و خطاهای امنیتی (Security Gates) در ابزارهای پویش سورس و وابستگیها.
یکپارچهسازی و اتصال بدون خطای سرویس به ابزار رصد خطا (Sentry Integration) برای لاگین و ترکینگ دقیق رویدادهای بحرانی.
تستنویسی کامل بر اساس متدولوژی TDD با پوشش کد بالا (حداکثر پوشش ممکن / ۱۰۰٪ در بخشهای منطق تجاری حیاتی).
ادغام کد (Merge to Main): تنها پس از تأیید ناظر/تیم فنی و موفقیت تمام خطوط لوله یکپارچهسازی مداوم (CI/CD)، درخواست ادغام (Pull Request) به برنچ main اعمال شود.
آنالیز و رفع عیوب پس از ادغام (Post-Merge Analysis): پس از ادغام، رفتارهای سیستم، گزارشهای لاگ و نتایج مانیتورینگ مورد ارزیابی قرار گرفته و هرگونه رگرسیون یا باگ کشفشده سریعاً رفع گردد.