基本情報技術者試験「構成管理」の問題
複数の開発者が同じソースファイルを編集する環境で、各自の変更を一つの最新版へまとめる際、互いの編集箇所が衝突したことを検出して統合を促すバージョン管理システムの機能はどれか。
アインデント整形
イマージ時のコンフリクト検出
ウビルドによる実行ファイルの生成
エ処理速度のプロファイリングと最適化提案
正解
イ.マージ時のコンフリクト検出
バージョン管理システムは、各開発者の変更を一つの版に統合するマージ機能をもち、同じ行や箇所が別々に編集されて自動統合できない場合にコンフリクト(衝突)として検出し、開発者に手動での解消を促す。設問の『編集箇所の衝突を検出して統合を促す』に正確に合致する。
?選択肢ごとの解説
ア ×インデント整形はコードの体裁を整える機能であり、変更の衝突を検出して統合を促すバージョン管理の機能ではない。
イ ○バージョン管理システムは、各開発者の変更を一つの版に統合するマージ機能をもち、同じ行や箇所が別々に編集されて自動統合できない場合にコンフリクト(衝突)として検出し、開発者に手動での解消を促す。設問の『編集箇所の衝突を検出して統合を促す』に正確に合致する。
ウ ×実行ファイルの生成はビルドツールやコンパイラの役割であり、版の統合や衝突検出を担うバージョン管理機能ではない。
エ ×処理速度のプロファイリングは実行時の性能を測定する作業であり、変更の統合とは無関係である。
✎くわしく
バージョン管理(版管理)は構成管理を支える中核機能で、変更履歴の記録・任意の版への復元・並行作業のマージなどを担う。マージで同一箇所が競合するとコンフリクトが発生し、システムは自動解決できない部分を提示して開発者に判断を委ねる。これにより複数人の並行開発でも変更を失わずに一本化できる。整形・ビルド・計測は別ツールの役割である。
✓本番での押さえどころ
試験のコツ
『複数の変更を統合』『衝突(コンフリクト)を検出』とあればバージョン管理システムの機能と判断する。
覚え方
マージ=合流、コンフリクト=合流時の衝突。川の合流で水がぶつかる、とイメージする。
よくある誤り
ビルドや整形などコード周辺の作業をバージョン管理機能と混同しやすい。版の記録・復元・マージ(衝突検出)が固有の役割である。
開発技術の他の問題
アジャイル開発の手法であるスクラムにおいて、スプリントごとに動作するソフトウェアを開発チームが実際に作り上げ、その成果物をプ…ソフトウェアのテストにおいて、プログラムの内部構造には着目せず、入力に対する出力が仕様どおりであるかを検証する手法を採用した…あるシステムのファンクションポイント(FP)を見積もったところ、未調整FPは200であった。技術的複雑度を表す調整係数が0.…ソフトウェアの企画から開発・運用・保守・廃棄までの各活動について、取得者と供給者が同じ言葉で役割や作業範囲を取り決められるよ…ある開発プロジェクトでは、要件定義・設計・実装・テストの各工程を上流から下流へ順に進め、前工程の成果物を承認してから次工程へ…開発対象を複数の部分に分け、各部分について計画・リスク分析・開発・評価の活動を繰り返し、評価のたびにリスクを見極めながら少し…
この問題を、AIの8-ways解説つきで。
無料ではじめる →基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。
ukamiru 過去問 · 基本情報技術者試験 · fe-a2-0118