نجات و بازطراحی پروژه

قبل از بازنویسی، مشخص کنیم چه چیزی باید حفظ یا اصلاح شود

برای پروژه کند، قدیمی، نیمه‌کاره یا بدون مستندات، ابتدا وضع موجود را بررسی می‌کنیم؛ سپس مسیر اصلاح، مهاجرت یا بازنویسی مرحله‌ای را پیشنهاد می‌دهیم.

مشاهده نمونه‌کارها

مسئله‌های قابل حل

این خدمت برای چه وضعیتی است؟

  • هر تغییر کوچک باعث خطا در بخش دیگری می‌شود.
  • کد و معماری مستند نیست و توسعه‌دهنده قبلی در دسترس نیست.
  • پروژه نیمه‌کاره مانده و وضعیت واقعی آن روشن نیست.
  • سرعت، پایداری یا هزینه نگهداری به مانع عملیات تبدیل شده است.
  • تیم درباره اصلاح تدریجی یا بازنویسی تصمیم مطمئنی ندارد.

خروجی همکاری

خروجی روشن، قابل بررسی و قابل تحویل.

گزارش وضع موجود، اجزا، وابستگی‌ها و ریسک‌های بحرانی

پیشنهاد مستند برای حفظ، اصلاح، جایگزینی یا بازنویسی هر بخش

نقشه مهاجرت مرحله‌ای، مستندات و برنامه ادامه توسعه

فرایند همکاری

شروع کنترل‌شده؛ تحویل مرحله‌ای.

  1. 01

    دسترسی کنترل‌شده

    خروجی: دامنه بررسی و فهرست اطلاعات موردنیاز

  2. 02

    ارزیابی وضع موجود

    خروجی: نقشه کد، معماری، وابستگی‌ها و ریسک‌ها

  3. 03

    تصمیم فنی

    خروجی: سناریوهای اصلاح، مهاجرت یا بازنویسی

  4. 04

    پایدارسازی مرحله‌ای

    خروجی: رفع موارد بحرانی و نسخه‌های قابل بررسی

  5. 05

    تحویل و ادامه توسعه

    خروجی: مستندات، مخزن و برنامه نگهداری

زمان و هزینه

برآورد پس از شناخت پروژه.

هیچ عددی پیش از شناخت دامنه واقعی نیست. پیشنهاد فنی و مالی بر اساس عوامل زیر تنظیم می‌شود.

  • اندازه و وضعیت کد موجود
  • کیفیت مستندات و تست‌ها
  • دسترسی به زیرساخت و داده
  • تعداد وابستگی‌ها و یکپارچه‌سازی‌ها
  • شدت مشکلات عملکرد یا امنیت
  • محدودیت توقف سرویس
  • دامنه مهاجرت داده
  • پشتیبانی پس از پایدارسازی

کاهش ریسک پروژه

کنترل پروژه باید دست کارفرما بماند.

محدوده و معیار پذیرش

خروجی هر مرحله پیش از اجرا روشن می‌شود.

تحویل کد و مستندات

مخزن و اطلاعات لازم برای ادامه پروژه در تحویل دیده می‌شود.

مالکیت طبق قرارداد

مالکیت کد، سرویس‌ها و دسترسی‌ها در قرارداد مشخص می‌شود.

امکان NDA

برای اطلاعات حساس، توافق محرمانگی قابل تعریف است.

ارائه مرحله‌ای

پیش از پایان کل پروژه، خروجی‌های میانی قابل بررسی‌اند.

برنامه پشتیبانی

دامنه نگهداری و توسعه بعدی پیش از تحویل نهایی روشن می‌شود.

پرسش‌های متداول

پیش از ثبت درخواست.

آیا هر پروژه قدیمی باید بازنویسی شود؟

خیر. بازنویسی کامل پرریسک است و فقط پس از بررسی گزینه‌های حفظ و اصلاح پیشنهاد می‌شود.

بررسی اولیه به کد کامل نیاز دارد؟

سطح دسترسی بر اساس دامنه بررسی تعیین می‌شود؛ برای تصمیم دقیق‌تر معمولاً مشاهده کد، استقرار و وابستگی‌ها لازم است.

آیا می‌توان سامانه را بدون توقف کامل مهاجرت داد؟

در برخی پروژه‌ها مهاجرت مرحله‌ای ممکن است؛ امکان آن به معماری، داده و وابستگی‌های فعلی بستگی دارد.

نتیجه بررسی چیست؟

خروجی باید تصویر وضع موجود، ریسک‌های اولویت‌دار و مسیر تصمیم‌گیری برای ادامه پروژه باشد.

اول مسئله و محدوده را روشن کنیم.

بررسی اولیه برای شناخت مسئله است و ارسال درخواست، تعهد به قرارداد ایجاد نمی‌کند.