めざせ合格!UMTP-L2レベル認定への道

2008年4月19日(土)
山田 隆太

L2にチャンレンジ

最後にL2試験(L2)です。L2はモデリング中級であり、UMLモデルの読み書きが普通に行え、開発の一部を担当してモデリングができるレベルの知識を問う問題です。解答方式はL1と異なり、複数選択式です。特にL1-T2試験と大きく異なるところは、問題のモデルが虫食いになっているために概念そのものを抽出したり、それらの関係を表現するといったモデリング技術が求められる傾向が非常に強くなっているところです。図3に例題として問題3を示します。

解説と解法!

 問題記述から航空券発行システムの概念構造をしっかりとらえることが必要になる問題です。順を追って見てみましょう。

 問題記述を読んでみて、出発空港・到着空港で構成される路線、フライト、機体、顧客情報、航空券、キャンペーン、割引航空券などが概念になることがわかると思います。あとはそれらの概念のつながりを文章から導き出せばよいのです。

 顧客は航空券を購入しますので(イ)は「航空券」になります。航空券の情報にはフライト情報がありますので(エ)は「フライト」。路線とは出発空港と到着空港で構成されるものであり、路線ごとにフライトが存在します。ということはフライトと直接関連があるのは路線ですので、(キ)は「路線」、その路線は出発空港と到着空港で構成されていましたので(カ)が「空港」です。またフライトごとに機体が定められていることから(オ)が「機体」であることがわかります。割引航空券は航空券の一種ですので、(イ)の航空券と汎化関係にある(ウ)が「割引航空券」に該当します。割引航空券はキャンペーンとして発行されますので、(ア)が「キャンペーン」になります。

 この問題はクラス名のほとんどが虫食いの穴埋めになっているため、しっかり概念構造を抽出できることが求められる典型的なL2試験の問題と言えます。実際には航空券発行システムはほかにも概念が必要であると思われますが、問題記述文にある記述の範囲でモデリングをしていることを念頭に置いて解いてください。

 この種の問題はクラス構造の特徴的なところや明らかになっている属性、多重度、関連端名などの情報をよりどころにして解答していくと良いでしょう。そのため、問題に取り掛かるときはまずクラス図を見て、これから明らかにしようとしている構造を頭に入れることです。それから問題文を読むとことで読みながら埋めるべきクラス名が見えてきます。

 例えばこの問題では、汎化関係などは最も特徴的です。汎化関係は(Is-A)の関係ですから、問題記述からその関係を探し出せばよいのです。また、(カ)と(キ)には2つの関連があります。このような一見複雑で敬遠しがちな構造も格好のヒントです。(カ)を出発空港と到着空港として扱っているので(カ)は「空港」だとわかります。また、出発空港と到着空港から構成されるのは路線ですので、(キ)は「路線」になります。そのほかにも定員という属性を見てみると、機体によって定員が決まるという記述から「機体」クラスが定員属性を持っていると推測できます。

 このようにして与えられた情報をヒントにして焦らず徐々に埋めて解いていきましょう。決して、いきなり問題文をじっくり読まないことがポイントです。

 さて、実際に挑戦してみてどうでしたか。今回はクラス図を例にL1-T1、L1-T2、L2の3つの試験問題を見てきました。なんとなく試験の雰囲気がわかったのではないでしょうか。

 実際はユースケース図から始まって、シーケンス図やステートマシン図などの問題も出題されますので、受験される前に必ず試験範囲のダイアグラムの学習をしておきましょう。

 ぜひ、UMTP資格を取得してモデリングスキルの証明をされることをお勧めします。

株式会社豆蔵
株式会社豆蔵 山田 隆太。開発者の経験を基にオブジェクト指向に関する各種コンサルティング・トレーニングに関わる分野にて活躍中。IPAにおいて情報処理技術者試験の委員を務めており問題作成に関わる活動も行う。<著書>わかるオブジェクト指向(出版社:技術評論社、ISBN:978-4774124605)。抽象化プログラミング入門(出版社:技術評論社、ISBN:978-4774131443)http://www.mamezou.com/

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています