基本情報技術者試験「ソフトウェア再利用」の問題
システム開発で、明確に定義されたインタフェースを通じて利用でき、内部実装を意識せずに組み合わせて再利用できる独立性の高い部品を指す用語はどれか。
アスパゲッティコード
イデッドコード
ウハードコーディング
エソフトウェアコンポーネント
正解
エ.ソフトウェアコンポーネント
ソフトウェアコンポーネントは、公開されたインタフェースを通じて利用でき、内部実装を隠蔽して組み合わせ可能な独立性の高い再利用部品である。部品化により開発効率と品質が高まる。設問の『明確なインタフェース』『内部を意識せず組合せ再利用』に正確に合致する。
?選択肢ごとの解説
ア ×スパゲッティコードは制御構造が複雑に絡み合い保守困難なコードを指す否定的な用語で、再利用可能な独立部品ではない。
イ ×デッドコードは実行されることのない無駄なコードを指す用語で、再利用部品の概念とは無関係である。
ウ ×ハードコーディングは可変であるべき値をソースに直書きする手法を指し、独立した再利用部品を意味しない。
エ ○ソフトウェアコンポーネントは、公開されたインタフェースを通じて利用でき、内部実装を隠蔽して組み合わせ可能な独立性の高い再利用部品である。部品化により開発効率と品質が高まる。設問の『明確なインタフェース』『内部を意識せず組合せ再利用』に正確に合致する。
✎くわしく
ソフトウェア再利用はコンポーネント・ライブラリ・フレームワーク・サービスなどの形で実現される。コンポーネントの要点は『インタフェースと実装の分離(情報隠蔽)』『独立性』『組合せ可能性』であり、これにより内部を知らずに部品を交換・再利用できる。スパゲッティコードやデッドコードは品質上の問題、ハードコーディングは柔軟性を損なう実装慣行で、いずれも再利用性を高める概念ではない点で対極にある。
✓本番での押さえどころ
試験のコツ
『明確なインタフェース』『内部を意識せず組合せ再利用』とあればソフトウェアコンポーネントと判断する。
覚え方
コンポーネント=『部品』。電子部品のように差し替えて組み合わせられる単位、とイメージする。
よくある誤り
再利用と無関係な品質用語(スパゲッティコード等)に引かれる誤りに注意。インタフェースで隠蔽し組み合わせられる部品がコンポーネントである。
開発技術の他の問題
アジャイル開発の手法であるスクラムにおいて、スプリントごとに動作するソフトウェアを開発チームが実際に作り上げ、その成果物をプ…ソフトウェアのテストにおいて、プログラムの内部構造には着目せず、入力に対する出力が仕様どおりであるかを検証する手法を採用した…あるシステムのファンクションポイント(FP)を見積もったところ、未調整FPは200であった。技術的複雑度を表す調整係数が0.…ソフトウェアの企画から開発・運用・保守・廃棄までの各活動について、取得者と供給者が同じ言葉で役割や作業範囲を取り決められるよ…ある開発プロジェクトでは、要件定義・設計・実装・テストの各工程を上流から下流へ順に進め、前工程の成果物を承認してから次工程へ…開発対象を複数の部分に分け、各部分について計画・リスク分析・開発・評価の活動を繰り返し、評価のたびにリスクを見極めながら少し…
この問題を、AIの8-ways解説つきで。
無料ではじめる →基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。
ukamiru 過去問 · 基本情報技術者試験 · fe-a2-0072