دواپس
توسعهٔ عملیات یا دواپس (DevOps) مخفف «توسعهٔ نرمافزار DEVelopment» و «عملیات فناوری اطلاعات OPerationS» است. دواپس، مجموعهای از روشها و فرایندها و ابزارهایی است که با تمرکز بر ارتباطات و همکاری و یکپارچگی بین تیمهای توسعهٔ نرمافزار و عملیات فناوری اطلاعات، ارزشهای تولیدشده را بهطور سریع و مداوم به مشتریان نهایی میرساند. ادغام کلمات اختصاری «Dev» و «Ops» به این موضوع اشاره میکند که توسعه و عملیات، دو تیم سابقاً مستقل و کاملاً جدای از هم، جای خود را به تیمهای چندتخصصی با مهارتها و روشها و ابزار یکپارچه داده است.[1][2][3] هدف، ایجاد فرهنگ و محیط زیستی بوده است که در آن بیلدها و تستها و انتشار نرمافزار میتواند اتفاق افتد. [4][5][6]
توسعه نرمافزار |
---|
تاریخچه
در کنفرانس چابک سال ۲۰۰۸، اندرو شفر و پاتریک Debois «زیرساخت چابک» را توصیف کردند.[7] اصطلاح DevOps از طریق یک سری رویداد بهنام «DevOpsDays» در سال ۲۰۰۹ در بلژیک رایج شد.[8] پس از آن کنفرانسهایی با نام DevOpsDays در بسیاری از کشورها در سراسر جهان برگزار شده است.[9]
در سالهای اخیر محبوبیت DevOps رشد کرده است و الهامبخش بسیاری از دیگر جنبشهای موازی، از جمله OpsDev و WinOps شده است.[10] WinOps هم مظهر همان مجموعه شیوهها و تأکید بر فرهنگ DevOps است؛ اما بهطور خاص مایکروسافتمحور شده است.[11]
بررسی اجمالی
بهطور سنتی در سازمانهایی که واحدهایی بر اساس تفکیک عملکرد وجود دارد، بهندرت واحدی با ترکیب و ادغام عملکرد چند واحد بهوجود میآید. اما DevOps ترویج مجموعهای از فرایندها و روشها برای فکرکردن دربارهٔ ارتباط و همکاری، بین واحدهای توسعه و QA (تضمین کیفیت) و واحد عملیات فناوری اطلاعات است.[12] در برخی سازمانها این همکاری با قراردادن واحد عملیات فناوری اطلاعات در واحد توسعهٔ نرمافزار تیمیِ چندعملکردی محقق میشود و ممکن است همراه با مدیریت ماتریسی باشد.
زنجیره ابزار دواپس
بهدلیل اینکه DevOps تغییری فرهنگی است و همکاری (بین توسعه و عملیات و تست) است، زنجیره ابزار واحدی برای آن وجود ندارد.[13] بهطور کلی، DevOps شامل ابزار مناسبی است که از یک یا چند گزینه از این دستهبندیها تشکیل میشود و بازتابی از جنبههای کلیدی توسعه نرمافزار و روند تحویل است:[14][15]
- کد: توسعهٔ کد و بازبینی کد، ابزارهای Version Control، ادغام کد؛
- بیلد: ابزار ادغام مداوم (Continuous integration)، وضعیت بیلد؛[16]
- آزمون: ابزارهای آزمون مستمر که بازخوردهایی از ریسکهایی ارائه میدهد که ممکن است در کسب و کار پیش آید؛
- پکیج: Artifact Repository، نرمافزار پیشعملیات؛
- ریلیز: مدیریت تغییر، تأیید ریلیز، اتوماسیون ریلیز؛
- پیکربندی: پیکربندی و مدیریت زیرساخت، ابزار زیرساخت کد؛
- پایش: برنامهٔ نظارت بر عملکرد نهایی تجربهٔ کاربر.
تصورات اشتباه دربارهٔ دوآپس
شاید بهدلیل جدیدبودن و چندبعدیبودن واژهٔ دوآپس است که کژفهمیها و تصورات اشتباهی از آن وجود دارد:
- آیا دوآپس یک ابزار است؟
- آیا دوآپس یک تکنولوژی است؟
- آیا دوآپس یک تیم است؟
- آیا دوآپس فقط یک فرهنگ است؟
- آیا دوآپس فقط Automation است؟
- آیا دوآپس فقط یک عنوان شغلی است؟
- آیا دوآپس فقط یک سبک تفکر است؟
- آیا دوآپس فقط Continuous Delivery است؟
- آیا دوآپس بهمعنی حذف Operation است؟
- آیا دوآپس فقط به توسعه و عملیات (Dev و Ops) محدود میشود؟
- آیا دوآپس به همهچیز در همهجا مربوط میشود؟
منابع
- شریعتی, امید (2017-06-05). "دواپس چیست؟ چرا دواپس را اجرا کنیم ؟".
- Loukides, Mike (2012-06-07). "What is DevOps?". Archived from the original on 25 May 2019. Retrieved 19 June 2017.
- Floris, Erich; Chintan, Amrit; Maya, Daneva (2014-12-10). "A Mapping Study on Cooperation between Information System Development and Operations".
- Samovskiy, Dmitriy (2010-03-02). "The Rise of DevOps". Fubaredness Is Contagious.
- Kim, Gene. "DevOps Culture Part 1".
- Lyman, Jay. "DevOps mixing dev, ops, agile, cloud, open source and business". 451 CAOS Theory. Archived from the original on 14 September 2015. Retrieved 19 June 2017.
- Debois, Patrick. "Agile 2008 Toronto". Just Enough Documented Information. Retrieved 12 March 2015.
- Debois, Patrick (2009). "DevOpsDays Ghent". DevopsDays. Retrieved 31 March 2011.
- Debois, Patrick. "DevOps Days". DevOps Days. Retrieved 31 March 2011.
- Schitzer, Eran (Oct 2015). "DevOps Must Also Mean OpsDev". DevOps.com.
- Weinberger, Matt (25 November 2014), Microsoft study finds everybody wants DevOps but Culture is a Challenge, Computerworld
- Turnbull, James (Feb 2010). "What DevOps means to me..." Kartar.
- Gartner Market Trends: DevOps – Not a Market, but Tool-Centric Philosophy That supports a Continuous Delivery Value Chain (Report). Gartner. 18 February 2015.
- Edwards, Damon. "Integrating DevOps tools into a Service Delivery Platform". dev2ops.org. Archived from the original on 8 February 2014. Retrieved 19 June 2017.
- Seroter, Richard. "Exploring the ENTIRE DevOps Toolchain for (Cloud) Teams". infoq.com.
- شریعتی, امید (2017-06-11). "Continuous Integration چیست ؟".