技術士の技事録

新米技術士が、IT技術動向・高度資格試験対策等、現役SE向け情報を発信します。

SA H24秋 午後Ⅱ 問1

◀️ 前へ解答例へ次へ ▶️

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

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

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

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

設問ア

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

設問イ

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

設問ウ

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

 

IPA公開情報

出題趣旨

 企業を取り巻く環境の変化に応じて,業務も変化する。情報システムには,業務の変化に対応して容易に機能を変更できるようなソフトウェア構造の柔軟性が求められる。
 このため,システムアーキテクトは,システム要件定義の段階から,業務の変化が起こり得るケースを想定し,変化の方向性やシステムに与える影響を予測する。ソフトウェア構造の設計では,その予測に基づいて,業務が変化しても,システム全体を大きく作り直す必要がないように考慮しなければならない。
 本問は,業務が変化しても,システム全体を大きく作り直す必要がないように設計したソフトウェア構造の設計内容,その設計を行うことによって引換えに生じた課題に対応するために重要と考えて工夫した内容,及び設計したソフトウェア構造に対するシステムアーキテクトとしての評価について,具体的に論述することを求めている。論述を通じて,システムアーキテクトに必要なソフトウェア構造の設計能力を評価する。

採点講評

 全問に共通して,具体的で,経験に基づいて記述されていることをうかがわせる論述が多かった。一方で,問題文の引用で文字数を費やし,結果的に期待した内容が書かれていない論述や,問題文に例示した項目と一般論の組合せだけで構成された具体性に欠ける論述も見られた。問題文に記載した項目は事例として挙げたものであり,転記を求めているものではないことを理解してほしい。
 また,設問で問うている内容に対応しない論述も散見された。例えば,“対象業務の概要及び特徴”を問うているにもかかわらず,“プロジェクトの概要”や“システムの概要”を述べているような論述が挙げられる。このような論述では,受験者の能力や経験を正しく評価できない場合があるので,実際の経験に基づき設問に沿って具体的に論述してほしい。
 問1(業務の変化を見込んだソフトウェア構造の設計について)では,“業務変化によってシステムが受ける影響”,“ソフトウェア構造の面からの設計”,“業務変化に対応できる理由”,の三つについて,関連付けて論述することを期待したが,そのような論述は少なかった。
 多くの受験者が,“想定した業務の変化”に対応するソフトウェア構造ではなく,設定値をテーブル化するなど“汎用化のためのプログラミング方法”や販売管理システムにおいて商品の種類が増加することなど,“当然考慮すべき業務要件やデータ量の変化”に対応するソフトウェア構造について論述していた。また,“どのようなソフトウェア構造を設計したか”と問うているにもかかわらず,“柔軟性を持った構造にした”などの論述にとどまり,具体的なソフトウェア構造に触れていない論述も見られた。
 業務の変化が激しくなっている状況において,業務を踏まえてソフトウェア構造を設計する能力は,システムアーキテクトとして特に必要とされるものである。その重要性を理解し,実践してほしい。