چرخه حیات توسعه نرمافزار (SDLC)
مفهوم
SDLC (Software Development Life Cycle) مجموعهی مراحل ساخت نرمافزار از ایده تا نگهداری است. مدلهای مختلفی برای این چرخه وجود دارد؛ دو سر طیف را میتوان اینطور توصیف کرد:
- Waterfall — مراحل پشتسرهم و یکباره: الزامات، طراحی، پیادهسازی، تست، استقرار، نگهداری. تغییر مسیر در میانه گران و سخت است.
- مدلهای تکراری (Iterative/Incremental) — همان مراحل اما در حلقههای کوچک و مکرر انجام میشوند؛ هر تکرار یک نسخهی قابل استفادهی کوچکتر تحویل میدهد.
دو نیمهی چرخه
در یک نگاه ساده، مراحل به دو دنیا تقسیم میشوند:
- توسعه (Development) — طراحی، کدنویسی، Build و تست
- عملیات (Operations) — Release، Deploy، بهرهبرداری و مانیتورینگ
مشکل اصلی: این دو نیمه معمولاً در دو تیم جدا با اهداف متفاوت هستند. تیم توسعه تغییر میخواهد (ویژگی جدید، تحویل سریعتر) و تیم عملیات پایداری (تغییر، ریسک است). نتیجه: تحویل کند، محیطهای ناسازگار و سرزنش متقابل هنگام خرابی.
ایدهی مرکزی DevOps همینجاست: این چرخه یک چرخهی واحد است، نه دو جزیره — و مسئولیتش هم مشترک است.
منابع یادگیری
مقالات و مستندات
- What is SDLC? — AWS — توضیح روان مراحل SDLC همراه با مقایسهی مدلها
- Software Development Life Cycle — GeeksforGeeks — مرور ساختاریافتهی فازها و مدلها
- What is DevOps? — AWS — درک بهتر رابطهی SDLC با تفکر DevOps
ویدیو
- DevOps Engineering Course for Beginners — freeCodeCamp — بخش ابتدایی این دوره، تصویر کلی چرخه را خوب نشان میدهد؛ در طول دوره به بخشهای بعدی آن هم برمیگردیم