ソフトウェア開発技術者を育成するには高品質なソフトウェアを効率よく開発する能力を育成する必要がある。本年度は要求分析段階に着目し、分析方法およびその教育方法について検討した。「ユースケース記述の推敲支援」では、次の開発フェーズでクラスを適切に抽出するために、ユースケース記述に登場する語の統一方法を検討した。ユースケース記述から名詞・動詞を抽出し、ユースケース名・フローの種類等を付加した語彙の一覧を生成して、目的語の記述形式を分類した。目的語の記述形式を整理することやサ変接続名詞を動詞に置き換えることがクラス名の候補を絞り込むーヒで有効であることがわかった。「UMLを用いた要求分析モデルからのプロトタイプ自動生成」では、開発者がシステムの振舞いと入出力データをUMLのアクティビティ図・クラス図・オブジェクト図を用いて定義し、そのモデルからプロトタイプを自動生成する。本来、プロトタイプは顧客による要求仕様の妥当性確認を目的とするものであるが、顧客の要求を確認しながら開発者自身が作成したモデルを洗練する必要があり、開発者が要求分析モデルとプロトタイプの関係を十分理解しなければならない。そこで、異なる視点で定義された上記3種のモデルの作成段階毎にプロトタイプを自動生成し、開発者も統合されたプロトタイプで確認しながら作業を進める方式を実現した。また、授業以外にJava、UMLの基礎教育修了者に対し、オブジェクト指向プログラミングレッスンを企画し、オセロゲームを題材に、ユースケース記述の提供、アクティビティ図によるゲームの流れの確認、クラス図・シーケンス図のレビュー等の十分な分析・設計を経た上でのコーディング作業を実施した。コードのレビューも実施することで、短期間でプログラムの開発が可能となるという教育効果が得られた。
|