この概念が出た関連問題

この試験の対策ガイド

情報処理安全確保支援士試験 対策ガイド

合格率・勉強法・参考書の選び方をまとめています

見る →
答えと解説を見る(先に解くのがおすすめ)

正解は エ

解説

マッシュアップ(mashup)は、Web上で公開されている複数のサービスやAPI(プログラムが他のサービスの機能やデータを利用するための接続口)を組み合わせて、元のサービスにはなかった新しい付加価値のあるサービスを作り出す手法です。代表例として、地図サービスのAPIと、店舗情報や口コミのデータを提供するサービスを組み合わせて、地図上に店舗を表示する新しいサービスを作る、といったものがあります。各サービスの機能を自前で開発するのではなく、既存の公開サービスを「混ぜ合わせて(mash up)」活用する点が特徴です。選択肢dの「公開されている複数のサービスを利用して、新たなサービスを提供する」が、マッシュアップの定義として正しく、正解です。他の選択肢を確認すると、既存プログラムから仕様を導き出すのはリバースエンジニアリング、既存プログラムを部品化して組み合わせるのは部品化・コンポーネント再利用、クラスライブラリを利用した開発は一般的なライブラリ利用であり、いずれも「公開されている複数のWebサービスを組み合わせる」というマッシュアップの特徴とは異なります。外部の公開サービスを組み合わせる点がマッシュアップの鍵です。

なぜ他の選択肢は違うのか

選択肢 ア
「既存のプログラムから、そのプログラムの仕様を導き出す」は、リバースエンジニアリングの説明です。完成したプログラムを解析して設計や仕様を明らかにする手法であり、公開された複数のサービスを組み合わせて新サービスを作るマッシュアップとは異なります。完成したプログラムを解析して設計や仕様を明らかにするリバースエンジニアリングの説明であり、公開された複数のサービスを組み合わせて新サービスを作るマッシュアップとは異なります。
選択肢 イ
「既存のプログラムを部品化し、それらの部品を組み合わせて、新規プログラムを開発する」は、ソフトウェアの部品化(コンポーネント化)と再利用の説明です。自社の既存プログラムを部品として組み合わせる話であり、外部に公開された複数のWebサービスを組み合わせるマッシュアップとは異なります。自社の既存プログラムを部品として組み合わせるソフトウェアの部品化・再利用の説明であり、外部に公開された複数のWebサービスを組み合わせるマッシュアップとは異なります。
選択肢 ウ
「クラスライブラリを利用して、新規プログラムを開発する」は、一般的なクラスライブラリ(再利用可能なプログラム部品の集まり)を利用した開発の説明です。ライブラリの利用であり、公開された複数のWebサービスを組み合わせて新サービスを生み出すマッシュアップとは異なります。再利用可能なプログラム部品の集まりであるクラスライブラリを利用した開発の説明であり、公開された複数のWebサービスを組み合わせて新サービスを生み出すマッシュアップとは異なります。

解くときのポイント

マッシュアップ=公開されている複数のWebサービスやAPIを組み合わせて新しいサービスを作る手法(例:地図API+店舗情報)。リバースエンジニアリング(仕様の導出)、部品化・ライブラリ利用とは区別する。