「DevOps」の解説 〜 ITパスポート R5年 問40 〜

当ページのリンクには広告が含まれています。

DevOpsとは、ソフトウェア開発手法の一つであり、開発(Development)と運用 (Operation)を組み合わせた造語です。開発担当者と運用担当者が連携して、協力する開発手法のため、より柔軟かつスピーディーなシステム開発が可能にしています。

目次

DevOpsとは?

DevOpsとは、何ですか?

DevOpsとは、開発(Development)と運用 (Operation)を組み合わせた造語になります。開発チームと運用チームが連携しシステム開発に取り組むことを指します。

開発チームと運用チームが連携すると良いことって何ですか?

システムを開発する「開発チーム」と、既存システムを運用する「運用チーム」は相反する価値観をもつ可能性があります。
DevOpsは、相互のチームのマインドと様々なツールを取り込むことで、開発チームと運用チームの問題点と課題を解決していくことを目指しています。

近年IT分野では、スピードが重視されています。DevOpsでは、開発チームと運用チームが協調と連携することで、商品やサービスの開発・改善にかかる時間を短縮し、ビジネスニーズに応えることが目標になります。

あわせて読みたい
「チャットボット」「DevOps」の解説 【チャットボットとは?】 「チャットボット」とは、 対話(Chat)とロボット(bot)を組み合わせた言葉であり、テキストや音声で自動的に対話をするプログラムのことで...

DevOpsのメリット

DevOpsの主なメリットは、「短期開発」「生産性の向上」が挙げられます。DevOpsの本質は、上記で解説した通り、開発チームと運用チーム間の対立を解消することにあります。従来ありがちの内部的な対立をなくすことで、スムーズな開発と運用を実現します。

DevOpsを実践するに、そのライフサイクルの各ステップにおいて、さまざまな支援ツールの導入が必要となります。代表的なツールとして、プロジェクト管理下のファイルに対する変更履歴を記録する「バージョン管理システム」や、従来手作業で行っていた作業を自動化する「CI/CDツール」などが挙げられます。

ツールを効果的に活用することで、生産性の向上にも繋がります。生産性が向上することで、従来より人的リソースに余裕ができます。こうして生まれた余剰リソースは、さらなる品質向上や新サービスの開発などに投入できるため、よりサービスの価値が高まるという好循環が期待することができます。

DevOpsのプロセス

DevOpsの開発プロセスは下記の8つのステップを踏んで開発を行います。

ビジネスにおける、継続的な改善を実行していく手法にPDCAサイクル(Plan(計画)Do(実行)Check(評価)Act(改善))を回していくがありますが、DevOpsにおいても、PDCAサイクルを活用したプロセスになっています。

あわせて読みたい
「PDCA」「アジャイル開発」の解説 【PDCAとは?】 PDCAとは、「Plan(計画)」「Do(実行)」「Check(評価)」「Action(改善)」の4つの頭文字から「PDCAサイクル」とも呼ばれ、4つの段階を循環的に繰...
  1. plan : 市場調査を基に、特徴に基づいた継続的な計画を行います。
  2. code : 企画書を元に、システムを構築します。コーディング、レビュー、バージョン管理など一連の作業を実施します。
  3. build : iOS、Android、PC、ブラウザなど、様々なプラットフォームを対応するように、アプリをビルトします。
  4. test : 品質やパフォーマンスを上げるためテストの自動化などの作業をします。
  5. release : 変更管理、リリース承認、リリース自動化をします。メンテナンスなしでリリースする仕組みを求められています。
  6. deploy : 自動ディプロイで、様々なプラットフォームや地域に配信します。
  7. operate : サービスを安定保つ運用を行います。障害時、災害時などを備えてシステムの可用性を求めます。
  8. monitor : アプリの性能監視、KPI管理、CS対応など、企画を改善するために、継続的にモニタリングをします。

アジャイル開発とDevOpsの違い

開発スピードを早める手法として、DevOpsの他にアジャイル開発という手法があります。DevOpsとアジャイル開発の違いについて、説明していきます。

アジャイル開発は、開発工程を機能単位の小さいサイクルで繰り返す開発手法になります。これは対象を「システムやソフトウェアの開発」とした、ビジネスの価値を高める開発アプローチになります。

DevOpsでは、ビジネスの価値を高めるシステムやソフトウェア開発が目的は同様で、エンドユーザーに届けるところまでをミッションとしています。そのため、DevOpsは、「システムやソフトウェアの展開」まで、アジャイルの考えを拡張した開発アプローチともいえます。

アジャイル(Agile)」とは、「素早い」「俊敏な」という意味であり、「アジャイル(Agile)開発」とは、システムやソフトウェア開発におけるプロジェクト開発手法の一つで、従来の大きな単位で区切ることはなく、小単位で実装とテストを繰り返し、開発を進める手法です。一般的に、従来の開発手法(ウォーターフォール開発)に比べ、開発期間が短縮されると言われています。

あわせて読みたい
「チャットボット」「アジャイル開発」の解説 【チャットボットとは?】 「チャットボット(Chatbot)」とは、「対話(Chat)」と「ロボット(bot)」を組み合わせた言葉であり、テキストや音声で、自動的に対話をす...

リバースエンジニアリングに関する問題(令和5年問40)

ソフトウェア開発におけるDevOpsに関する記述として,最も適切なものはどれか。

 ア.  運用側で利用する画面のイメージを明確にするために,開発側が要件定義段階でプロトタイプを作成する。

    イ.  開発側が,設計・開発・テストの工程を順に実施して,システムに必要な全ての機能及び品質を揃えてから運用側に引き渡す。

    ウ.  開発側と運用側が密接に連携し,自動化ツールなどを取り入れることによって,仕様変更要求などに対して迅速かつ柔軟に対応する。

    エ.  一つのプログラムを2人の開発者が共同で開発することによって,生産性と信頼性を向上させる。

出典:令和5年度  ITパスポート試験公開問題 問40

正しいと思う選択肢をクリックしてみてください!!!

ア. 

不正解です。

イ. 

不正解です。

ウ. 

正解です。

エ. 

不正解です。

DevOps

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次