دواپس

توسعهٔ عملیات یا دواپس (DevOps) مخفف «توسعهٔ نرم‌افزار DEVelopment» و «عملیات فناوری اطلاعات OPerationS» است. دواپس، مجموعه‌ای از روشها و فرایندها و ابزارهایی است که با تمرکز بر ارتباطات و همکاری و یکپارچگی بین تیم‌های توسعهٔ نرم‌افزار و عملیات فناوری اطلاعات، ارزش‌های تولیدشده را به‌طور سریع و مداوم به مشتریان نهایی می‌رساند. ادغام کلمات اختصاری «Dev» و «Ops» به این موضوع اشاره می‌کند که توسعه و عملیات، دو تیم سابقاً مستقل و کاملاً جدای از هم، جای خود را به تیم‌های چندتخصصی با مهارت‌ها و روش‌ها و ابزار یکپارچه داده‌است. هدف، ایجاد فرهنگ و محیط زیستی بوده‌است که در آن بیلدها و تست‌ها و انتشار نرم‌افزار می‌تواند اتفاق افتد.

تاریخچه 
در کنفرانس چابک سال ۲۰۰۸، اندرو شفر و پاتریک Debois «زیرساخت چابک» را توصیف کردند. اصطلاح DevOps از طریق یک سری رویداد به‌نام «DevOpsDays» در سال ۲۰۰۹ در بلژیک رایج شد. پس از آن کنفرانس‌هایی با نام DevOpsDays در بسیاری از کشورها در سراسر جهان برگزار شده‌است.

در سال‌های اخیر محبوبیت DevOps رشد کرده‌است و الهام‌بخش بسیاری از دیگر جنبش‌های موازی، از جمله OpsDev و WinOps شده‌است. WinOps هم مظهر همان مجموعه شیوه‌ها و تأکید بر فرهنگ DevOps است؛ اما به‌طور خاص مایکروسافت‌محور شده‌است.

بررسی اجمالی 

به‌طور سنتی در سازمان‌هایی که واحدهایی بر اساس تفکیک عملکرد وجود دارد، به‌ندرت واحدی با ترکیب و ادغام عملکرد چند واحد به‌وجود می‌آید. اما DevOps ترویج مجموعه‌ای از فرایندها و روش‌ها برای فکرکردن دربارهٔ ارتباط و همکاری،   بین واحدهای توسعه و QA (تضمین کیفیت) و واحد عملیات فناوری اطلاعات است. در برخی سازمان‌ها این همکاری با قراردادن واحد عملیات فناوری اطلاعات در واحد توسعهٔ نرم‌افزار تیمیِ چندعملکردی محقق می‌شود و ممکن است همراه با مدیریت ماتریسی باشد.

زنجیره ابزار دواپس 

به‌دلیل اینکه DevOps تغییری فرهنگی است و همکاری (بین توسعه و عملیات و تست) است، زنجیره ابزار واحدی برای آن وجود ندارد. به‌طور کلی، DevOps شامل ابزار مناسبی است که از یک یا چند گزینه از این دسته‌بندی‌ها تشکیل می‌شود و بازتابی از جنبه‌های کلیدی توسعه نرم‌افزار و روند تحویل است:
 کد: توسعهٔ کد و بازبینی کد، ابزارهای Version Control، ادغام کد؛
 بیلد: ابزار ادغام مداوم (Continuous integration)، وضعیت بیلد؛
 آزمون: ابزارهای آزمون مستمر که بازخوردهایی از ریسک‌هایی ارائه می‌دهد که ممکن است در کسب و کار پیش آید؛
 پکیج: Artifact Repository، نرم‌افزار پیش‌عملیات؛
 ریلیز: مدیریت تغییر، تأیید ریلیز، اتوماسیون ریلیز؛
 پیکربندی: پیکربندی و مدیریت زیرساخت، ابزار زیرساخت کد؛
 پایش: برنامهٔ نظارت بر عملکرد نهایی تجربهٔ کاربر.

تصورات اشتباه دربارهٔ دوآپس 
شاید به‌دلیل جدیدبودن و چندبعدی‌بودن واژهٔ دوآپس است که کژفهمی‌ها و تصورات اشتباهی از آن وجود دارد:
 آیا دوآپس یک ابزار است؟
 آیا دوآپس یک تکنولوژی است؟
 آیا دوآپس یک تیم است؟
 آیا دوآپس فقط یک فرهنگ است؟
 آیا دوآپس فقط Automation است؟
 آیا دوآپس فقط یک عنوان شغلی است؟
 آیا دوآپس فقط یک سبک تفکر است؟
 آیا دوآپس فقط Continuous Delivery است؟
 آیا دوآپس به‌معنی حذف Operation است؟
 آیا دوآپس فقط به توسعه و عملیات (Dev و Ops) محدود می‌شود؟
 آیا دوآپس به همه‌چیز در همه‌جا مربوط می‌شود؟

منابع 

توسعه نرم‌افزاری چابک
فرایند تولید نرم‌افزار
مدیریت فناوری اطلاعات