دواپس

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو

دواپس (DevOps) مخفف "توسعه نرم‌افزار DEVelopment" و "عملیات فناوری اطلاعات OPerationS" است. دواپس، مجموعه‌ای از روشها، فرایندها و ابزارهایی است که با تمرکز بر ارتباطات، همکاری و یکپارچگی بین تیم‌های توسعه نرم‌افزار و عملیات فناوری اطلاعات، ارزش‌های تولید شده را به طور سریع و مداوم به مشتریان نهایی می‌رساند. ادغام کلمات اختصاری “Dev” و “Ops” به این موضوع اشاره دارد که توسعه و عملیات به عنوان دو تیم مستقل و کاملاً جدای از هم، جای خود را به تیم‌های چند تخصصی با مهارتها، روش‌ها و ابزار یکپارچه داده است.[۱][۲][۳][ آن را با هدف ایجاد یک فرهنگ و محیط زیست که در آن بیلدها، تست‌ها و انتشار نرم‌افزار می‌تواند اتفاق می‌افتد به سرعت در حال غالباً و قابل اعتماد تر است.[۴][۵][۶]

تاریخچه[ویرایش]

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

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

بررسی اجمالی[ویرایش]

نمودار ون که نشان دهندهٔ DevOps به عنوان تقاطع توسعه (در مهندسی نرم‌افزار) و عملیات و تضمین کیفیت (QA) می‌باشد

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

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

Illustration showing stages in a DevOps toolchain
تصویر نشان دادن مراحل در یک زنجیره DevOps

به دلیل اینکه DevOps یک تغییر فرهنگی است و همکاری (بین توسعه و عملیات و تست) می‌باشد، یک زنجیره ابزار واحد برای آن وجود ندارد.[۱۳] به طور کلی DevOps شامل ابزار مناسبی که از یک یا چند تا از این دسته‌بندی‌ها که بازتابی است از جنبه‌های کلیدی توسعه نرم‌افزار و روند تحویل می‌شود:[۱۴][۱۵]

  1. کد — توسعه کد و بازبینی کد، ابزارهای version control , ادغام کد؛
  2. بیلد — ابزار ادغام مداوم (Continuous integration)، وضعیت بیلد؛[۱۶]
  3. آزمون — ابزارهای آزمون مستمر که بازخوردهایی از ریسک‌های که ممکن است در کسب و کار پیش آید، ارائه می‌دهد؛
  4. پکیج — Artifact repository, نرم‌افزار پیش عملیات؛
  5. ریلیز — مدیریت تغییر، تأیید ریلیز، اتوماسیون ریلیز؛
  6. پیکربندی — پیکربندی و مدیریت زیرساخت ابزار زیرساخت به عنوان کد؛
  7. پایش — برنامه نظارت بر عملکردنهایی تجربه کاربر.

تصورات اشتباه درباره دوآپس[ویرایش]

شاید به دلیل جدید بودن و چند بعدی بودن واژه ی دوآپس است که کج فهمی ها و تصورات اشتباهی از آن وجود دارد.

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

امید شریعتی در مقاله ای فارسی به نام "دوآپس و تصورات اشتباه درباره آن" این تصورات اشتباه را بررسی کرده است.[۱۷]

منابع[ویرایش]

  1. شریعتی, امید (2017-06-05). "دواپس چیست؟ چرا دواپس را اجرا کنیم ؟". 
  2. Loukides, Mike (2012-06-07). "What is DevOps?". 
  3. Floris, Erich; Chintan, Amrit; Maya, Daneva (2014-12-10). "A Mapping Study on Cooperation between Information System Development and Operations". 
  4. Samovskiy, Dmitriy (2010-03-02). "The Rise of DevOps". Fubaredness Is Contagious. 
  5. Kim, Gene. "DevOps Culture Part 1". 
  6. Lyman, Jay. "DevOps mixing dev, ops, agile, cloud, open source and business". 451 CAOS Theory. 
  7. Debois, Patrick. "Agile 2008 Toronto". Just Enough Documented Information. Retrieved 12 March 2015. 
  8. Debois, Patrick (2009). "DevOpsDays Ghent". DevopsDays. Retrieved 31 March 2011. 
  9. Debois, Patrick. "DevOps Days". DevOps Days. Retrieved 31 March 2011. 
  10. Schitzer, Eran (Oct 2015). "DevOps Must Also Mean OpsDev". DevOps.com. 
  11. Weinberger, Matt (25 November 2014), Microsoft study finds everybody wants DevOps but Culture is a Challenge, Computerworld 
  12. Turnbull, James (Feb 2010). "What DevOps means to me...". Kartar. 
  13. Gartner Market Trends: DevOps – Not a Market, but Tool-Centric Philosophy That supports a Continuous Delivery Value Chain (Report). Gartner. 18 February 2015.
  14. Edwards, Damon. "Integrating DevOps tools into a Service Delivery Platform". dev2ops.org. 
  15. Seroter, Richard. "Exploring the ENTIRE DevOps Toolchain for (Cloud) Teams". infoq.com. 
  16. شریعتی, امید (2017-06-11). "Continuous Integration چیست ؟". 
  17. شریعتی, امید (2017-06-24). "دوآپس و تصورات اشتباه درباره آن".