応用情報技術者 2014年 春期 午後 問09
システム再構築に関する次の記述を読んで、設問1~3に答えよ。
生活協同組合事業 A連合会(以下、A連合会という)は、近隣地域で同じ事業を営む B、C、D の三つの生活協同組合(以下、生協という)が加盟した事業連合体である。事業としては、商品カタログに基づく注文を受けて、翌週に商品を届ける宅配系と、店舗で商品を販売する店舗系がある。
宅配系事業では、三つの生協の業務の標準化が完了しており、その業務を支える宅配システムも統一している。一方、店舗系事業では、運営コストの低減がこの数年進んでいなかった。各生協での店舗運営の特色を尊重して、店舗業務の標準化を行わず、店舗業務を支える店舗システムおよびオフィスコンピュータ(以下、オフコンという)を使った旧式のものをそのまま使用し続けていて、統一されていなかった。また、オフコンは、数年後にはハードウェアの保守サポートが停止され、後継機の予定もないという問題を抱えていた。
A連合会のシステムは、図1のように、宅配システムと店舗システム、及び両システムと機能連携して商品情報を管理する商品システムで構成されている。

〔重要課題と対策〕
システム担当のX理事は、A連合会の現状から、業務運営上の重要課題を次の 2 点に整理した。
(重要課題1)店舗運営コストの低減
(重要課題2)オフコンのハードウェア保守サポート停止への対策
X理事と、店舗系事業を担当する Y 理事による検討の結果、次の対策案が決まった。
店舗運営コストの低減は、店舗業務の標準化及び店舗システムの統一で実現する。店舗業務の標準化については、組合員の評価が高い C 生協の業務プロセスに統一する。
店舗システムの統一については、業務要件の追加・変更をしないで、C 生協のものを採用し、B 生協、D 生協の店舗システムは廃棄する。オフコンの保守サポート停止への対策として、サーバ上で稼働するシステムに切り替える。
A連合会では、重要課題について、これらの対策を採択することを総会で決定した。決定後に、Y 理事は、各生協のシステム利用部門から店舗業務に精通した要員をシステム再構築のプロジェクトに参画させるので、要員のスキルに適した作業を担当させてほしいとX理事に要請した。
〔開発方針〕
X理事は、開発予算を抑えたシステム再構築のプロジェクト計画を立案するように A連合会の情報システム部の W 部長に指示し、Y 理事からの要請も伝えた。総会で決定された本番稼働の目標時期は、1年半後である。
宅配システムは、ソフトウェアパッケージを活用して各生協の宅配システムを統一し、一つのサーバに集約済みであるので、今回のシステム再構築の対象外である。商品システムも、一つのサーバに集約されており、利用部門からの強化要望もないので、店舗システムとの a だけを改修する。a の手順と形式は、店舗システムと商品システムとのデータのやり取りと整合性を保つように決めることにした。
〔開発計画(案)〕
Z 社は、A連合会の情報システム子会社であり、3 生協の店舗システムを含めて、A連合会の全システムの開発・運用・保守を行っている。W 部長は、情報システム部で立案したシステム要件を提示し、システム再構築に関する開発計画(案)の立案を Z 社に依頼した。あわせて、プログラムのソースコード(以下、ソースコードという)とソフトウェア詳細設計書(以下、設計書という)の構成管理の実施状況についても、確認を依頼した。構成管理については、開発フェーズから実施しているが、保守フェーズになってからソースコードの修正が先行し、設計書への更新作業が遅れているケースがあり、この改善に取り組んでいると Z 社から W 部長に報告があった。
W 部長は、オフコンからサーバ上で稼働するシステムへの切替えに当たって、①新規開発ではなく現行機能を単純に移行する方式のシステム移行(以下、単純移行という)をZ社に要請した。その際に、W 部長は、単純移行以外に、開発期間、開発予算、開発体制を拡張して、もう一つの移行手段を考えた。それは、②ソースコードの見直しを検討する必要がなく、技術的にも移行手段の主流になっているが、今回はオフコンOSの特殊性から断念した。
W部長は、単純移行の対象となるデータファイル、ソースコード、及び設計書について一覧表を作成するようZ社に依頼した。あわせて、単純移行作業で利用することを想定して、③設計書の内容に関する追加調査も依頼した。この追加調査の結果次第で、移行作業の工数に影響が出てくると付け加えた。
W部長の依頼に対し、Z社は、図2の開発計画(案)を作成した。

〔店舗システムの単純移行〕
W部長が依頼した追加調査の結果に問題がなかったので、Z社は、オフコンのソースコードの単純移行作業を請負契約とする前提で図3のように進めることにした。

1. 全ソースコード・全データファイルの分析作業
単純移行の対象となる全ソースコード・全データファイルの内容を分析する。サーバ関連技術に精通しているSEが分析作業を行い、分析結果は、単純移行方式の検討時に使用される。事前の調査で、オフコンのプログラム本数は、バッチ系プログラムがオンライン系プログラムの2倍あり、大量データの処理プログラムが、十数本あることが分かっている。また、大量データの処理プログラムには、それぞれ固有の処理特性と運用時間帯の制約がある。
2. ソースコードの単純移行
単純移行作業では、オフコンのソースコードを、移行ツールを使って変換し、変換できない部分は、設計書を参考に手作業で修正する。
移行ツールの選定に当たっては、④サンプルのソースコードを移行ツールによって変換した結果を比較し、評価する。サンプルのソースコードは、SEによる分析結果に基づいて選出する。評価のポイントは、移行ツールで変換後に手修正する作業工数が少ないこと、手修正の作業が容易であること、及びパッチプログラムの処理性能の3点を重視し、処理性能は実測して評価する。
3. データファイルの移行
データファイルの移行は、システム面からの検討とともに、3生協のデータ項目の桁数、コード化したデータの扱いなど、移行対象データの業務仕様も考慮して行う。
データファイルの移行体制は、作業の効率性・専門性を高める観点から、Z社のSEだけによる専任体制とすることがZ社から提案された。当該SEはオフコンからサーバへの移行に関する知識をもつ単純移行の経験者であった。この案に関して、W部長は⑤移行対象データに関する作業内容を考慮して、体制の強化が必要であると考えた。
4. 単体テスト〜ソフトウェア結合テスト
最後にW部長は、結合テストでの作業効率の向上、及び品質を保証するテストケースやテスト条件の b の確保をZ社に要請した。Z社は、テスト計画の立案、テストの実施、テスト結果の評価と分析に、オフコンでの店舗システム開発時の結合テストに関する資料やデータを活用することにした。作成するテストケースやテスト条件の b については、システム利用部門の要員とレビューして、漏れが無いことを確認する。
W部長は、Z社への要請事項の検討結果を確認後、X理事からプロジェクト計画の承認を得て、システム再構築のプロジェクトを正式に発足させた。
設問1:
本文中のa、bに入れる適切な字句を、aは10字以内で、bは5字以内で答えよ。
模範解答
a:インタフェース
b:網羅性
解説
解答の論理構成
-
a の検討
- 引用:「商品システムも、一つのサーバに集約されており、利用部門からの強化要望もないので、店舗システムとの a だけを改修する。」
- 強化要望がない=機能追加・変更は不要。そこで両システムをつなぐ“接点”だけを調整すれば良いと分かります。
- システム間の接点を示す代表的な用語が「インタフェース」。要件を満たすのはこの語しかなく、10字以内にも合致します。
- よって a=インタフェース。
-
b の検討
- 引用:「結合テストでの作業効率の向上、及び品質を保証するテストケースやテスト条件の b の確保をZ社に要請した。」
- 品質保証の観点でテストケースに必要なのは「漏れが無いこと」、すなわち“全部をカバーしているか”。
- これを表すキーワードは「網羅性」。5字以内で条件に適合します。
- よって b=網羅性。
誤りやすいポイント
- “連携部分”や“データ連携”を a に入れるミス
「改修する」のは仕組みではなく接点そのもの。連携“部分”と書くと部位をぼかしてしまい不正確です。 - b を“妥当性”“十分性”とするミス
妥当性は内容の正しさ、十分性は量的観点。ここで求められているのは漏れなくテストできるか=網羅性です。 - 文章を読まず字数だけで当てはめる
表面的な字数合わせに頼ると、文脈に合わない語を選択して失点します。
FAQ
Q: 「インタフェース」は物理的な接続も含むのですか?
A: はい。システム間でデータをやり取りする論理・物理両面の取り決め全体を指します。本問では店舗システムと商品システム間の接点を意味します。
A: はい。システム間でデータをやり取りする論理・物理両面の取り決め全体を指します。本問では店舗システムと商品システム間の接点を意味します。
Q: 網羅性を確保するには具体的に何をすれば良いですか?
A: 要件からテスト観点を抽出し、同値分割・境界値分析などの技法でケースを設計し、トレーサビリティ表で要件⇔ケース対応を確認すると網羅性を担保しやすくなります。
A: 要件からテスト観点を抽出し、同値分割・境界値分析などの技法でケースを設計し、トレーサビリティ表で要件⇔ケース対応を確認すると網羅性を担保しやすくなります。
Q: 単純移行でもインタフェース改修が発生するのはなぜ?
A: 店舗システムをオフコン→サーバへ移行すると、通信プロトコルやファイル形式が変わる可能性があるためです。商品システム側は変更しない前提なので、接点側で吸収する必要があります。
A: 店舗システムをオフコン→サーバへ移行すると、通信プロトコルやファイル形式が変わる可能性があるためです。商品システム側は変更しない前提なので、接点側で吸収する必要があります。
関連キーワード: システム間連携, インタフェース, 単純移行, 網羅性, テスト設計
設問2:〔開発計画(案)について〕(1)〜(3)に答えよ。
(1)本文中の下線①で、W部長が単純移行をZ社に要請した理由を解答群の中から選び、記号で答えよ。
解答群
ア:既存システムの資産を生かすことによって、品質リスクを負うことなく開発できるから
イ:既存システムの要件を変更することなく、サーバ上で稼働するシステムに切り替えるから
ウ:サーバ上で稼働するシステムの開発経験者がいなくても開発できるから
エ:利用部門の要請に応え、利用部門の要員を総合テストから参加させるから
模範解答
イ
解説
解答の論理構成
-
まず本文の下線①には、
「①新規開発ではなく現行機能を単純に移行する方式のシステム移行(以下、単純移行という)」
とあります。
ここで強調されているのは “新規開発ではなく”“現行機能を”“単純に移行” する点です。 -
さらに同じ段落で、W部長は
「オフコンからサーバ上で稼働するシステムへの切替えに当たって、①単純移行をZ社に要請した」
とされています。つまり目的は“オフコン”で動くものを“サーバ上で”動くようにすることです。 -
以上を整理すると、W部長の主眼は • 要件追加・機能追加をせずに
• 現行システムをそのままサーバ環境へ移す
ことであり、これは解答群「イ:既存システムの要件を変更することなく、サーバ上で稼働するシステムに切り替えるから」と一致します。 -
よって解答は
イ
誤りやすいポイント
- 「ア」を選びたくなる:資産活用=リスク低減という発想に引きずられがちですが、本文に“品質リスク”という語は出てこず、焦点はあくまで“要件変更なし”です。
- 「ウ」を選びたくなる:経験者不足を補うためと思い込むケース。ただし本文には“サーバ上で稼働するシステムの開発経験者がいない”という記述はありません。
- 「エ」を選びたくなる:利用部門参加は総合テスト以降の話であり、単純移行の理由ではありません。
FAQ
Q: 単純移行と再構築の違いは何ですか?
A: 単純移行は「現行機能そのまま」「プラットフォームのみ変更」が基本です。一方、再構築は機能や構造を見直し、追加開発を行う場合が多く、要件が変わります。
A: 単純移行は「現行機能そのまま」「プラットフォームのみ変更」が基本です。一方、再構築は機能や構造を見直し、追加開発を行う場合が多く、要件が変わります。
Q: 単純移行でもソースの手修正が必要なのですか?
A: はい。本文でも「変換できない部分は、設計書を参考に手作業で修正する」とあり、移行ツールだけでは完結しません。
A: はい。本文でも「変換できない部分は、設計書を参考に手作業で修正する」とあり、移行ツールだけでは完結しません。
Q: 移行ツール選定で重視すべきポイントは?
A: 本文では「手修正工数が少ない」「手修正が容易」「処理性能(実測)」の3点が挙げられています。
A: 本文では「手修正工数が少ない」「手修正が容易」「処理性能(実測)」の3点が挙げられています。
関連キーワード: リホスト, レガシー移行, 移行ツール, 要件凍結, プラットフォーム変更
設問2:〔開発計画(案)について〕(1)〜(3)に答えよ。
(2)本文中の下線②で、W部長が断念した移行手段は何か。15字以内で述べよ。
模範解答
仮想マシンへの移行
解説
解答の論理構成
- 【問題文】には、下線②として
「ソースコードの見直しを検討する必要がなく、技術的にも移行手段の主流になっている」
と記載されています。これは、プログラムを改変せずにハードウェアや OS 環境のみを置き換える方式を示しています。 - さらに同じ文の後半で
「今回はオフコンOSの特殊性から断念した」
とあり、現行 OS がそのまま動かせない点が断念理由になっています。 - 以上の 2 点を満たす代表的な移行手段は、現行 OS やアプリケーションを丸ごと仮想環境に載せ替える「仮想マシンへの移行」です。仮想化によりソースコードを変更せずに済み、近年の主流手段とも合致します。
- よって、W 部長が検討したものの断念した移行手段は
「仮想マシンへの移行」
となります。
誤りやすいポイント
- 「リライト」や「リビルド」など、ソースコードを改修する方式と取り違える。
- 「エミュレータ開発」など特殊ハード依存の手法を想像してしまい、主流という条件を見落とす。
- 断念理由が「OS の特殊性」である点を読み飛ばし、データ形式やネットワーク仕様の問題と誤解する。
FAQ
Q: 仮想マシンへの移行では、性能劣化が心配ですが対策はありますか?
A: CPU 仮想化支援機能(VT-x など)を備えたサーバを選定し、I/O ボトルネックに対してはストレージの SSD 化やネットワークの帯域確保で対応するのが一般的です。
A: CPU 仮想化支援機能(VT-x など)を備えたサーバを選定し、I/O ボトルネックに対してはストレージの SSD 化やネットワークの帯域確保で対応するのが一般的です。
Q: オフコン OS が仮想化に対応していない場合、他に選択肢はありますか?
A: ソースコードをサーバ OS 上へコンパイルし直す「リホスト」、あるいは機能を再設計する「リプレース」が考えられますが、いずれも開発期間とコストが増加します。
A: ソースコードをサーバ OS 上へコンパイルし直す「リホスト」、あるいは機能を再設計する「リプレース」が考えられますが、いずれも開発期間とコストが増加します。
Q: 仮想化とエミュレーションの違いは何ですか?
A: 仮想化は同一 CPU アーキテクチャ上でハードウェア資源を論理的に分割・再構成する方式、エミュレーションは異なるアーキテクチャをソフトウェアで模倣する方式で、後者は一般に処理速度が低下します。
A: 仮想化は同一 CPU アーキテクチャ上でハードウェア資源を論理的に分割・再構成する方式、エミュレーションは異なるアーキテクチャをソフトウェアで模倣する方式で、後者は一般に処理速度が低下します。
関連キーワード: 仮想化, リホスト, エミュレーション, OS 互換, 移行手段
設問2:〔開発計画(案)について〕(1)〜(3)に答えよ。
(3)本文中の下線③で、W部長が依頼した追加調査は何か。20字以内で述べよ。
模範解答
設計書が最新内容になっていること
解説
解答の論理構成
-
追加調査の対象を示す手掛かり
【問題文】には「W部長は…③設計書の内容に関する追加調査も依頼した。」とあります。
つまり、設計書そのものが調査対象です。 -
なぜ調査が必要か
直前に「保守フェーズになってからソースコードの修正が先行し、設計書への更新作業が遅れているケース
」と報告されています。設計書が最新状態でなければ、ソース変換時の参照資料として信頼できず、移行工数が膨らむ恐れがあります。 -
追加調査の目的
W部長は「この追加調査の結果次第で、移行作業の工数に影響が出てくる」と述べています。工数増減に直接影響するのは、設計書がコードと一致し最新であるか否かです。 -
結論
以上より、③で求めている調査内容は「設計書が最新内容になっていること」を確認する作業となります。
誤りやすいポイント
- 「設計書の有無」や「設計書の所在確認」と回答してしまう
→ 既に存在している前提なので、最新化の確認が本質です。 - 「ソースコードが最新か」を答えてしまう
→ ソースは常に最新で運用されていると記載されており、問題は設計書側です。 - 「テスト仕様書の整合性」など別資料を挙げる
→ 追加調査対象は設計書であると原文に明示されています。
FAQ
Q: なぜ設計書の最新化確認が移行工数に影響するのですか?
A: 設計書が現行コードと整合していれば、手作業修正箇所やテスト設計が容易になります。ずれていれば解析工数・修正工数が増大します。
A: 設計書が現行コードと整合していれば、手作業修正箇所やテスト設計が容易になります。ずれていれば解析工数・修正工数が増大します。
Q: 設計書が古い場合、どのようなリスクがありますか?
A: 移行ツールで変換できない部分の手修正時に誤解が生じ、バグ混入や性能劣化、リリース延期のリスクが高まります。
A: 移行ツールで変換できない部分の手修正時に誤解が生じ、バグ混入や性能劣化、リリース延期のリスクが高まります。
Q: 追加調査は誰が実施するのが望ましいですか?
A: ソースと設計書の両方を読み解けるSEがコード差分を確認し、必要なら利用部門にも仕様確認するのが適切です。
A: ソースと設計書の両方を読み解けるSEがコード差分を確認し、必要なら利用部門にも仕様確認するのが適切です。
関連キーワード: 構成管理, 単純移行, 設計書, ソースコード, テストケース
設問3:〔店舗システムの単純移行〕(1)、(2)に答えよ。
(1)本文中の下線④について、移行ツールの適切な評価内容を解答群の中から選び、記号で答えよ。
解答群
ア:サンプルのソースコードを移行ツールによって変換した結果は、オンライン系プログラムとバッチ系プログラムを区分せずに、同じ重み付けで評価する。
イ:全ソースコードの傾向パターンを分析しているので、移行ツールの仕様に基づいて評価する。
ウ:ソースコードを移行ツールによって自動的に変換できる割合と、変換できない場合の手修正の内容を重視して評価する。
エ:大量データの処理プログラムをサンプリングして評価する。
模範解答
ウ
解説
解答の論理構成
- 問題文は下線④の説明として
「サンプルのソースコードを移行ツールによって変換した結果を比較し、評価する」
と述べた後、評価基準を明示しています。
-「移行ツールで変換後に手修正する作業工数が少ないこと」
-「手修正の作業が容易であること」
-「バッチプログラムの処理性能」
以上3点が評価のポイントであると、【問題文】にそのまま記載されています。 - これら3点のうち、前2点は「自動変換できなかった部分をどれだけ楽に修正できるか」という観点であり、換言すれば「自動変換率」と「手修正内容の難易度」を重視していることになります。
- 解答群を照合すると、
・ア:オンライン/バッチを同じ重みで評価する → 評価基準に該当しない
・イ:ツール仕様に基づき評価 → 自動変換率・手修正内容には直接触れていない
・ウ:「ソースコードを移行ツールによって自動的に変換できる割合と、変換できない場合の手修正の内容を重視して評価する。」 → 問題文の評価基準をそのまま包含
・エ:大量データ処理だけをサンプリング → 評価対象を限定し過ぎている - よって、問題文の評価基準に合致するのは「ウ」であり、模範解答とも一致します。
誤りやすいポイント
- 「バッチ系プログラムがオンライン系プログラムの2倍」という数量情報に気を取られ、アの“同じ重み付け”が良さそうに見えてしまう。
- 「処理性能」の語句からエを選び、大量データ処理プログラムだけを評価対象にしてしまう。
- ツール仕様書を読めば十分と考え、イを選択してしまう。実際は“実ソースを流し込んで手修正量を測る”ことが求められている。
FAQ
Q: 「処理性能」を重視するとエでも良さそうに見えるのですが?
A: 処理性能は3つある評価ポイントの1つにすぎません。問題文は「手修正工数が少ないこと、手修正作業が容易であること」を同列に挙げており、ウだけが3点中2点を明確に包含しています。
A: 処理性能は3つある評価ポイントの1つにすぎません。問題文は「手修正工数が少ないこと、手修正作業が容易であること」を同列に挙げており、ウだけが3点中2点を明確に包含しています。
Q: オンライン/バッチを区分して評価しない方が簡単では?
A: プログラム種別の重み付けは評価観点に含まれていません。むしろ自動変換率と手修正量が全体でどうなるかが重要です。
A: プログラム種別の重み付けは評価観点に含まれていません。むしろ自動変換率と手修正量が全体でどうなるかが重要です。
Q: ツール仕様で判断してはいけないのでしょうか?
A: 仕様書上の機能と実際の変換結果が一致しない例も多いため、実ソースで試行し実測値を得ることが求められています。これが④で「サンプルのソースコードを…変換した結果を比較し、評価する」と明示されている理由です。
A: 仕様書上の機能と実際の変換結果が一致しない例も多いため、実ソースで試行し実測値を得ることが求められています。これが④で「サンプルのソースコードを…変換した結果を比較し、評価する」と明示されている理由です。
関連キーワード: ソースコード変換率, 移行ツール評価, 手修正工数, 処理性能測定
設問3:〔店舗システムの単純移行〕(1)、(2)に答えよ。
(2)本文中の下線⑤で、W部長が体制の強化として考えた内容は何か。今回のプロジェクトの要員スキルを踏まえて40字以内で述べよ。
模範解答
各生協のシステム利用部門から店舗業務に精通している人材の参画
解説
解答の論理構成
-
追加された体制強化が必要となった理由
- 【問題文】ではデータ移行について「3生協のデータ項目の桁数、コード化したデータの扱いなど、移行対象データの業務仕様も考慮して行う。」とあります。
- 技術的な移行だけでなく“業務仕様”の判断が不可欠である点が示唆されています。
-
既に存在する適任者の情報
- 先行して「Y 理事は、各生協のシステム利用部門から店舗業務に精通した要員をシステム再構築のプロジェクトに参画させるので、要員のスキルに適した作業を担当させてほしい」と要請しています。
- これは“店舗業務に精通した要員”というキーワードが、業務仕様を理解してデータ移行に反映できる人材であることを示します。
-
⑤の文脈
- ⑤では「移行対象データに関する作業内容を考慮して、体制の強化が必要である」と書かれています。
- 強化すべき対象は“データ移行チーム”であり、足りないのは業務知識です。
- すでにY理事が提供を申し出た“店舗業務に精通した要員”を追加するのが最適解です。
-
結論
- よって、W部長が考えた体制強化とは「各生協のシステム利用部門から店舗業務に精通している人材の参画」です。
誤りやすいポイント
- 技術者増員と誤解し、Z社SEを単に増やすと答えてしまう。
- “オフコン移行経験者”を増やすと答え、業務仕様対応の必要性を外してしまう。
- ⑤の対象が“テスト工程”だと読み違え、テスト要員追加と答えるケース。
FAQ
Q: 何故、Z社SEだけの専任体制では不十分なのですか?
A: 「移行対象データの業務仕様も考慮して行う」ため、業務ルールを熟知した利用部門要員がいないと桁数・コード体系の判断ができず、誤った変換や整合性欠如を招くリスクが高いからです。
A: 「移行対象データの業務仕様も考慮して行う」ため、業務ルールを熟知した利用部門要員がいないと桁数・コード体系の判断ができず、誤った変換や整合性欠如を招くリスクが高いからです。
Q: 業務に精通した要員は具体的にどの作業を担いますか?
A: データ項目の意味確認、コード変換ルール策定、移行後のデータ検証、そして仕様書レビューなど、技術者だけでは判断できない“業務面の正しさ”を保証する作業です。
A: データ項目の意味確認、コード変換ルール策定、移行後のデータ検証、そして仕様書レビューなど、技術者だけでは判断できない“業務面の正しさ”を保証する作業です。
Q: 体制強化後、Z社SEと利用部門要員の役割分担は?
A: Z社SEが技術的な抽出・変換・ロードを担当し、利用部門要員が業務ルールの指示と結果検証を行う形で協働します。
A: Z社SEが技術的な抽出・変換・ロードを担当し、利用部門要員が業務ルールの指示と結果検証を行う形で協働します。
関連キーワード: データ移行, 業務仕様, 人員配置, 体制強化, 利用部門


