2012年12月20日木曜日

IPA 平成24年度 システムアーキテクト試験 午後2 問1 解答例 with TDD

このエントリーは『TDD Advent Calendar 2012』の19日目のエントリーになります。

18日は@haru01さんの「TDD の素振りをしよう – haru01のめも」でした。


予告だと…


コマンドプロンプトとか言ってたな。

アレは、僕が冬眠中でネタを仕込むのに時間がかかるので、

やめたわ…


テーマ


TDDに特に思い入れがないので(失礼)、

なんか現場でこういうふうに導入しようという考えをいろいろと書いてみましたが、

まとまりにかけて、これも没にしました。


そこで


IPAの情報処理技術者試験のシステムアーキテクト試験午後2の問1の模範解答を

TDDをテーマに書いてみることにしました。

ちなみに、まだ途中までしか書いていません…


問題はこんな感じです。


業務の変化を見込んだソフトウェア構造の設計について

 企業を取り巻く環境の変化に応じて、業務も変化する。情報システムには、業務の変化に対応して容易に機能を変更できるような、ソフトウェア構造の柔軟性が求められる。
このため、システムアーキテクトは、システム要件定義の段階から、業務の変化が起こり得るケースを想定し、変化の方向性やシステムに与える影響を予測する。ソフトウェア構造の設計では、その予測に基づいて、業務が変化してもシステム全体を大きく作り直す必要がないように考慮しなければならない。
例えば、次のようにソフトウェア構造の設計を行う。

  • 業務フローの制御部分と業務ロジック部分を分離する。
  • 業務ロジックが互いに疎結合となるように分割する。
  • データアクセスコンポーネントを共通化する。

 その際、そのような設計を行うことによって引換えに生じた課題に対応するための工夫を行うことが重要である。例えば、処理時間が長くならないように複数のプロセスを並行して処理したり、処理同士の整合性を確保するために排他制御の仕組みを用意したりする。
あなたの経験と考えに基づいて、設問ア~ウに従って論述せよ。


設問ア あなたがソフトウェア構造の設計に携わったシステムにおける、対象業務の概要及び特徴について、800字以内で述べよ。

設問イ 設問アで述べたシステムについて、どのような業務の変化を想定したか。また、業務が変化してもシステム全体を大きく作り直す必要がないように、どのようなソフトウェア構造を設計したか。800字以上1,600字以内で具体的に述べよ。

設問ウ 設問イで述べたソフトウェア構造の設計において、生じた課題とそれに対応するために重要と考えて工夫した内容、及び設計したソフトウェア構造に対するシステムアーキテクトとしての評価について、600字以上1,200字以内で具体的に述べよ。

(IPA 独立行政法人 情報処理推進機構より引用)


僕が書いた模範回答


設問ア
私は都内のシステムインテグレーター(以下A社と省略する)に勤務するアプリケーションエンジニアである。A社の顧客に大手製造業のZ社がある。Z社は国内および海外に製造・販売の拠点を持つグローバル企業である。本論文ではA社が昨年請け負ったZ社の生産支援システム(以下、生産システムと省略する)について述べていく。
Z社はかねてより海外展開している企業であった。しかし、20 08年以降日本国内での流通量が激減しており、勃興するアジア市場でいかに売上を伸ばしていくかが課題となっていた。Z社で従来から旧生産システムを用いていたが、システム保守にかかる時間が長期化しており、変化が激しいアジア市場に対応するには厳しかった。そのため、Z社では激しい市場の変化に柔軟に対応できる新生産システムを企画し、A社が受注することになった。







0 件のコメント:

コメントを投稿