ITパスポート試験(シラバス6.3) マネジメント系 ソフトウェア開発管理技術 の出題傾向、学習ポイント、重要な用語を説明します。
「ソフトウェア開発管理技術」出題傾向
Ver.○.○の表示について
用語が初めて掲載されたときの、シラバスのバージョンです。
Ver.4.0、Ver.5.0は、シラバスの比較的新しい用語です。
Ver.6.0と同じく要注意用語です。
表示がないのは、Ver.3以前からシラバスにある用語です。
開発プロセス・手法
ソフトウェア開発手法について、手法や考え方の違いに注目して覚えよう。
構造化手法
構造化手法は、機能に着目し、開発するプログラムの機能を大枠から詳細へ分解していくことで、プログラムを整理された構造の組み合わせによってつくる開発手法です。
オブジェクト指向
オブジェクト指向は、クラスや継承という概念を利用して、ソフトウェアを部品化したり再利用することで、ソフトウェア開発の生産性向上を図る手法です。
(ITパスポート 令和3年 問41より)
問題をチェック! R3年 問41
DevOps
Ver.4.0
DevOps(Development and Operation:デブオプス)
DevOpsは、開発担当者と運用担当者の連携を強化し、ソフトウェア開発を効率化する開発手法(考え方や仕組み)を指します。
開発側と運用側が密接に連携し、自動化ツールなどを活用して機能などの導入や更新を迅速に進めます。
(ITパスポート 令和元年 問55より)
問題をチェック!
R6年 問47 R5年 問40 R4年 問42
MLOps
Ver.6.3
MLOps(Machine Learning Operations:エムエルオプス)
MLOpsとは、機械学習モデルの継続的な開発~運用を、開発チームと運用チームが密に連携して効率よく行う手法を指します。
通常、学習時と利用時のデータの傾向が変化することによる予測精度の劣化、ビジネスニーズの変化などにより、機械学習モデルの再学習が必要になります。
MLOpsでは、開発から運用へ、運用から開発へとチームが密に連携して、機械学習モデルをビジネスに最適化させます。
プロセス中心アプローチ
シラ外
プロセス中心アプローチは、プロセス(業務の処理手順)に着目し、システムをサブシステムへ、そのサブシステムを機能の最小単位である独立性が高いモジュールへと分割を行い詳細化します。
開発モデル
開発モデルは、システムを開発するための標準的な手順や手法のことです。
それぞれに長所や短所があり、プロジェクトの種類や状況に応じて開発手法を選択する必要があります。
ウォータフォールモデル
ウォータフォールモデルは、開発工程を設計、実装、テストなどに分け、前の工程が完了してから、その成果物を使って次の工程を行う開発モデルです。
(基本情報 平成21年春午前 問45より)
システム開発を工程順に進めるので、後戻りすればシステムの開発効率が著しく低下します。
(基本情報 平成17年春午前 問40より
スパイラルモデル
スパイラルモデルは、システムの機能を分割し、利用者からのフィードバックに対応するように、分割した機能ごとに設計や開発を繰り返しながらシステムを徐々に完成させていくモデルです。
(ITパスポート 平成28年秋 問46より)
プロトタイピングモデル
プロトタイピングは、システム開発の早い段階で試作ソフトウェアを作成して、利用者の要求事項を明確にして開発する手法です。
(ITパスポート 平成28年秋 問46、平成22年秋 問34より)
RAD
RAD(Rapid Application Development)
RADは、開発する機能を分割し、開発ツールや部品などを利用して、分割した機能ごとに効率よく迅速に開発を進める開発モデルです。
(ITパスポート 平成28年秋 問46より)
リバースエンジニアリング
リバースエンジニアリングは、既存の製品を分解し、解析することによって、その製品の構造を解明して技術を獲得する手法です。
(ITパスポート 平成26年春 問47より)
次のようなリーバスエンジニアリングの具体例が試験に出題されています。
プログラムを解析することで、ソフトウェアの仕様を調査して設計情報を抽出する。
(ITパスポート 令和2年 問51より)
アジャイル
Ver.4.0
アジャイルは、ソフトウェアやシステムを開発する具体的な手法の一つです。
開発対象のソフトウェアを、比較的短い期間で開発できる小さな機能の単位に分割しておき、各機能の開発が終了するたびにそれをリリースすることを繰り返すことで、ソフトウェアを完成させます。
一つの機能の開発終了時に、次の開発対象とする機能の優先順位や内容を見直すことで、ビジネス環境の変化や利用者からの要望に対して、迅速に対応できます。
(ITパスポート 令和2年 問37より)
(特徴)
1. ウォータフォール開発と比較して、要求の変更に柔軟に対応できる。
2. ドキュメントの作成よりもソフトウェアの作成を優先し、変化する顧客の要望を素早く取り入れることができる。
問題をチェック!
R6年 問40 R3年 問51 R2年 問37
◎XP(エクストリームプログラミング)
- テスト駆動開発
- ペアプログラミング
- リファクタリング
◎スクラム
ユーザーストーリー
Ver.6.3
ユーザーストーリーは、ユーザーの視点から開発する機能やサービスを説明した短い文章です。
「誰が」「何をしたいのか」「その理由」「ユーザーにとっての効果」を、誰でもわかるような言葉で要件を定義します。
XP(エクストリームプログラミング)
Ver.4.0
XPは、小さく分割した各機能の開発を繰り返すことでソフトウェアを完成させるアジャイル開発における開発手法の1つです。
コミュニケーション、シンプル、フィードバック、勇気、尊重の五つの価値を基礎とし、テスト駆動型開発、ペアプログラミング、リファクタリングなどのプラクティスを推奨しています。
問題をチェック! R4年 問38
イテレーション
シラ外
イテレーションとは、アジャイル開発において、短い間隔による開発工程の反復や、その開発サイクルのことです。
(ITパスポート 令和元年 問52より)
ソフトウェアに存在する顧客の要求との不一致を短いサイクルで解消したり、要求の変化に柔軟に対応したりするためにおこないます。
(応用情報 平成30年秋午前 問50より)
問題をチェック! R元年 問52
プラクティス
シラ外
プラクティスは、一般的に行われる方法や手法を指します。
テスト駆動開発
Ver.4.0
テスト駆動開発は、エクストリームプログラミング(XP:eXtreme Programming)のプラクティスの1つ です。
プログラムを書く前にテストケースを作成します。
(応用情報 平成28年春午前 問50より)
ペアプログラミング
Ver.4.0
ペアプログラミングは、エクストリームプログラミング(XP:eXtreme Programming)のプラクティスの1つです。
プログラム開発において、相互に役割を交替し、チェックし合うことによって、コミュニケーションを円滑にし、プログラムの品質向上を図ります。
リファクタリング
Ver.4.0
リファクタリングは、エクストリームプログラミング(XP:eXtreme Programming)のプラクティスの1つです。
外部から見た動作を変えずにプログラムをより良く作り直します。
レトロスペクティブ
Ver.6.3
レトロスペクティブ(ふりかえり)
レトロスペクティブとは、スプリントレビューの後に行われる、今回のスプリントを振り返る機会のことです。
このスプリントでうまくいったこと、うまくいかなかったこと、どうやったら次のスプリントでよりうまくできるか、が話し合われます。
これが成長の機会となり、チーム学習やチーム改善の活動となります。
(アジャイル開発の進め方(IPA)より)
問題をチェック! ソフ開 予想1
継続的インテグレーション
Ver.6.3
継続的インテグレーション(CI:Continuous Integration)
継続的インテグレーションとは、個々の開発者が完成したプログラムを頻繁に結合し、自動化されたビルド・テストを繰り返す開発手法のことです。
バグや問題を早期に発見し、開発の効率化や納期の短縮など図れます。
スクラム
Ver.4.0
スクラムは、アジャイル開発における開発手法の1つです。
複雑で変化の激しい問題に対応するために、問題に取り組むための概念や方法を体系化した枠組みです。
反復的かつ漸進的な手法が特徴です。
問題をチェック! R元年 問40
スクラムチーム
Ver.6.3
スクラムチームとは、スクラム開発において開発を担当するチームのことを言います。
プロダクトオーナー Ver.6.3
プロダクトオーナーは、「何を開発するか決める人」です。 開発への投資に対する効果(ROI)を最大にすることに責任を持ちます。 |
スクラムマスター Ver.6.3
スクラムマスターは、全体を支援・マネジメントする人です。 スクラムマスターはスクラム全体をうまく回すことに責任を持つ、キーパーソンと言えます。 |
開発者 Ver.6.3
開発者は、実際に開発を行う人です。 開発者はバックログに入っている項目を完了状態にし、プロダクトの価値を高めていくことに責任を持ちます。 |
(アジャイル開発の進め方(IPA)より)
スプリント
Ver.6.3
スクラムは反復(イテレーション)を繰り返す開発プロセスです。この反復の単位を「スプリント」と呼びます。
スプリントの中身は、「スプリントプランニング」「デイリースクラム」「スプリントレビュー」「スプリントレトロスペクティブ(ふりかえり)」、そして実際の「開発作業」です。
「スプリント」は1~4週間の時間枠(タイムボックス)であり、予定されている機能が完成できなくても延長されることはありません。
(アジャイル開発の進め方(IPA)より)
プロダクトバックログ
Ver.6.3
プロダクトバックログとは、開発すべき機能や改善すべき点などを優先順位をつけて一覧にしたものです。
スプリントバックログ
Ver.6.3
スプリントバックログは、プロダクトバックログから抜き出された項目を、スプリント期間中に完成をさせるためのより具体的な作業リストを指します。
フレームワーク
framework(フレームワーク)には、「枠組み」の意味があります。
仕事や問題に取り組むための概念や方法について、範囲や制限を体系的にルール化したものです。
共通フレーム
共通フレームは、「ITシステム開発の作業規定」です。
ソフトウェアの構想から開発、運用、保守、廃棄に至るまでのライフサイクルを通じて必要な作業項目、役割等を包括的に規定した共通のルールが書かれています。
問題をチェック! R元年 問39
SLCP
SLCP(Software Life Cycle Process)
SLCPは、ソフトウェア開発とその取引の適正化に向けて、それらのベースとなる作業項目を一つ一つ定義し、標準化した共通フレームです。
(ITパスポート シラバスVer.6より)
ソフトウェア、システム、サービスに関係する人々が「同じ言葉を話す」ことができるよう、開発工程について共通の枠組みを決めたものです。
CMMI
CMMI(Capability Maturity Model Integration:能力成熟度モデル統合)
CMMIは、システム開発組織及びプロジェクトにおけるプロセス(仕事を進める方法や手順)の成熟度を5段階のレベルで定義したモデルです。
(ITパスポート 平成24年春 問38より)
開発と保守のプロセス(仕事を進める方法や手順)を評価、改善するに当たっての指標です。
まとめ
【出題傾向】
「ソフトウェア開発管理技術」から、3問程度(マネジメント系20問中)出題されます。
平成6年過去問題(公開)では、2問でした。
【学習ポイント】
・開発プロセス・手法
→手法や考え方の違いに注目して覚えましょう。
コメント