はじめに
UMLモデリングの認定試験であるUMTPについて、L1~L3までを取得しました。
ネット上にもあまり情報が無いので取得までの道のりや感想を記したいと思います。
取得のモチベーション
とにかくモデリング能力を上げて自信をつけたい!と言った所がモチベーションでした。
フロントエンジニアとして働き始めて3年目ですが、プログラムの書き方は分かるものの、ソフトウェアアーキテクチャ設計や、その前段の業務分析をシステムへ落とし込む部分で中々HOWのイメージが付かず、苦しい思いをしていました。
また、周囲を見渡すと、そのようなことが出来る人と出来ない人は二極化しているように思えました。長年コードを書いている人でも、設計の話になると結構適当で「前の職場での経験に基づくとこれが良さそう」、「前はこうやってました」と言った根拠が曖昧な発言が目立っていると良く感じていました。
そんな時に、同僚がUMTPという資格を取得したことを知り、調べてみるとどうやらオブジェクト指向モデリングについての資格の様でした。「これって、今の自分が一番欲しいと思っている能力じゃね?」と直感で感じ、資格取得をモチベーションにモデリング能力を鍛えることにしました。
私の技術レベル
UMTPの資格勉強を始めるまではオブジェクト指向については全く分かりませんでした。学生の時に授業でやったよな~くらいな印象です。また、勉強し終わって振り返ると、当時と比べて、オブジェクト指向の考え方も全く変わってる気がしてますのでゼロから勉強を始めたと言っても過言ではないかなと思います。(私が学生で習った時はおぼろげですが、継承についてやら説明してた記憶がありますし、getterやsetterも書くのが正しいやり方だった気がします。)
勉強した期間
2023年5月~6月末の2か月間
勉強の進め方
基本的には本を読み、時には問題集を解く、と言う形で勉強を進めました。
最初は色んな人のブログを漁って、どう勉強していくか当たりを付けてから臨みました。
- 参考にしたブログ
UMTP L1
UMTP L1受験についてはまず以下の本を読みました。
正直UMTP L1レベルはこのあたりを読んでおけば問題なく受かると思います。
UMTP L2
L2試験については、以下の黒本をやった上で、ホームページのサンプル問題を解きました。L1にと比較すると難易度は上がりますが、黒本に対して理解が出来ていれば、まぁ受かるレベルなのかなと思います。
- UML L2問題集
UMTP L3
L3試験はとても難しく感じましたが何とか受かりました。
L3試験は2022年12月から自宅で受ける形式に変わっており、ボーダーも60点から77点に大幅に変更となっており、難易度は上がっているんじゃないかと言う気がします。
L3試験を受ける期間は、仕事で要件定義~基本設計当たりの業務をやっており、その関係でER図やDFDを書いたり、どういうデータモデルが良いんだろう、と言うことを考えたりしていました。それが試験を受ける上で結構追い風になった気がします。
また、加えて良いソフトウェアアーキテクチャとは?と言う部分も考え始めており、その関係で
設計原則関連の本も読んでいました。どちらの本もオブジェクト指向に基づいて設計原則を説明する本となっており、基礎理解を深める上で大変役立ちました。
あとは、分からない部分をネットの記事を読んで補完したりしてから試験に臨みました。
受験結果
結果としては、各試験無事合格することが出来ました。
- UMTP L1 96点 (80%以上で合格)
- UMTP L2 82点 (65%以上で合格)
- UMTP L3 82.59点 (77%以上で合格)
受けてみた感想
受験する前と比べて、格段にモデリング能力は上がった気がします。
元々はUMLの読み方さえ分からなかったわけなので、業務をヒアリングでモデルとして書き出すノウハウが分かりませんでした。今はそのような要件定義用務への恐怖心は大分なくなった気がしています。また、IT関連の技術書には必ずと言っていいほどクラス図が出てきます。この時、UMLを学んでない人と読書会をしていると、「ああ、この人は雰囲気でUMLを理解しているんだな」と言うのが良く分かります。ダイアグラムをちゃんと理解した上で技術書を読んでいるかで、大分今後に差がつく気がします。皆さんも、是非モデリングを学び、資格取得することをお勧めします。