خلاصه اجرایی

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

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

بسیاری از اختلافات پروژه‌های نرم افزاری نه به دلیل ضعف برنامه‌نویسی، بلکه به دلیل تعریف مبهم مسئولیت‌ها در ابتدای پروژه ایجاد می‌شوند.

کارفرما تصور می‌کند قابلیتی جزو پروژه است، اما تیم توسعه آن را خارج از Scope می‌داند.

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

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

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

این مقاله یک راهنمای عمومی برای شناخت بندهای مهم قرارداد پروژه نرم افزاری است و جایگزین بررسی قرارداد توسط مشاور حقوقی نیست.

چرا قرارداد طراحی نرم افزار اختصاصی اهمیت دارد؟

نرم افزار اختصاصی برخلاف خرید یک محصول آماده، پروژه‌ای پویا است.

در طول توسعه ممکن است:

  • نیازهای جدید کشف شوند.
  • بعضی قابلیت‌ها تغییر کنند.
  • Integration جدیدی اضافه شود.
  • طراحی UI/UX اصلاح شود.
  • Timeline جابه‌جا شود.
  • یک قابلیت پیچیده‌تر از برآورد اولیه باشد.
  • کارفرما بخواهد نسخه جدیدی از یک ماژول توسعه داده شود.

اگر از ابتدا مشخص نباشد در چنین شرایطی چه فرایندی اجرا می‌شود، احتمال اختلاف افزایش پیدا می‌کند.

قرارداد خوب قرار نیست جلوی تمام تغییرات را بگیرد؛ بلکه باید مشخص کند تغییرات چگونه مدیریت می‌شوند.

۱. مشخصات دقیق طرفین قرارداد

در ابتدای قرارداد باید هویت و اطلاعات طرفین کاملاً روشن باشد.

برای شرکت‌ها معمولاً اطلاعاتی مانند:

  • نام شرکت
  • شناسه ملی
  • شماره ثبت
  • آدرس
  • نماینده مجاز
  • اطلاعات تماس

و برای اشخاص حقیقی اطلاعات شناسایی مورد نیاز درج می‌شود.

همچنین باید مشخص شود چه کسی از سمت کارفرما اختیار تأیید:

  • طراحی
  • Scope
  • تغییرات
  • تحویل
  • پرداخت‌ها

را دارد.

این نکته در پروژه‌های سازمانی بسیار مهم است؛ زیرا وجود چند تصمیم‌گیرنده می‌تواند روند پروژه را کند کند.

۲. موضوع قرارداد باید دقیق باشد