初心者向けではないと思う
★★☆☆☆
自分は仕事や趣味でよくプログラムを書いているが、歳をとったせいか最近は上手く作れなくなってきたので、設計の思考の道具としてUMLを覚えてみたくなり、この本に手を出してみたが、失敗した。
現在半分まで読み終えたところだが、挫折しかけている。文章は論理的で正確な反面、抽象度が高くて一度読んだだけでは頭にすっと入ってこなくて何度も読み返さないといけなくて疲れる。当たり前だが、不十分な理解で読み進めていくと用語の意味が分からずますますついていけなくなる。すでにUMLをある程度知っていて基本的な用語が頭に入っているならすんなり読めるかも知れない。
小難しい
★★☆☆☆
入門書と題しているので、UMLを知らなくても読めますが、簡潔な言葉では書かれていないので、読んでいてイメージしづらいです。
また、もっと実践向きな内容にしてほしかったです。
例にあげるものも、図書館や数学や会社など統一されておらず、いちいちその例を想像しないといけなく疲れます。
UML初心者に最適
★★★★★
UMLを最初に勉強するのに適している。
なぜなら、Unified Modeling Languageはモデルを作るための道具だから。
クラス図がUMLだとか、ユースケース図がUMLだと思っている人は、本書を読んで、もっと本質的な問題を理解するとよい。
特に大事だと思う部分は、次の2箇所かもしれない。
1-5 モデルには認識する人が要る。
コラム「もの」を識別するということ
モデリングとは、情報システムを開発する際に、ユーザの要求やシステムの全体像を図として見える形にすることです。
1-5 モデルには認識する人がいる。
は、
1-5 モデルには認識する人が要る。
ではどうだろう。
8-1 状態機械図(state machine)は、状態図、状態遷移図とも呼ばれている
モデルは、模型のことである。シミュレーションは日本語では模擬試験である。
UMLで模型を記述するのは、模擬試験をするためであることが分かる。
本書は、UMLの機能については万遍なく記述している。
模型の鍵が何かが伝わってくる。
モデルを作る際の鍵についての指針がほしいかもsれない。
ステートマシン図は、状態機械図あるが、ステートチャート(状態図)、状態遷移図とも呼ばれている。
状態遷移図は、模型作成の鍵の一つである。
状態とは変数で表されるもの、条件で表されるものではあるが、
対象(オブジェクト)の性質そのものである。そのため、対象の知識を、まず状態で表現するのがよい。
体系(システム)とは、入力を出力に変換するものであり、
状態とは、入力を出力に変換するために持つ内部の仕組みである。
本書を読んだら、次に状態遷移図を勉強するのとよい。
状態遷移図が分かれば、時系列図を描くとよい。
通信、組込み、リアルタイム制御では、時系列図が必須だから。
現在、ネットワークを利用しないシステムはないのだから。
UMLを利用する上での必読書
★★★★★
UMLって何かよくわからないと思う人にお勧めの本である。
表紙をめくると、
「モデリングとは、情報システムを開発する際に、ユーザの要求やシステムの全体像を図として見える形にすることです。」
と書かれている。
本屋で立ち読みするときには、次の2箇所を視てほしい。
P21の1-5 モデルには認識する人がいる。
P102のコラム「もの」を識別するということ
ここを視て、他の類書にないものをつかんだら、この本を買うとよい。
個々の内容については、UMLの使い方の視点の違いがあるはずなので、
著者または著者の顧客でない人には、別の視点で考えた方がよい場合もある。
たとえば、情報システムを開発したくない人なら、
「モデリングとは、情報システムを開発することが目的ではなく、顧客の潜在的要求やコンピュータを使わないシステムの全体像を図として見える形にすることです。」(c)kaizen
という観点でUMLについて勉強するのもよい。
分析する際に、UMLで用意している道具としては、
状態機械図として説明のある「状態遷移図」、シーケンス図と呼ばれている「時系列図」
だけでも必要な議論ができる場合がある。
十分かどうかは、その事例によりけりかもしれない。
ps.
本当に読んでほしいのは、UMLというとクラス図だとか、ユースケース図だと思っている人たちかもしれません。
本書を読めば、最初にシステムを分析したり、設計したりするのに必要なのは何か、考えるきっかけをつかめるかもしれない。
と書かれている。
本質を捉えられる良書
★★★★★
概念・モデリングの使い方等は非常にわかりやすく書かれいている上に、あるべきモデリングの姿が書かれているため、ただのハウツー本よりも『理解ができる』良書だと思います。
ただ、モデリングが初めての人だと、恐らく演習問題は非常に困難だと思うので(特に後半)テキスト的な本と捕らえて、実際にモデリングを行う教本と一緒に進める(もしくは先に行うかこの本を読んだあとにやっておく)と良いと思いました。
ちょうど同じ筆者のレッスン形式のものがあるので、それを使ったらどうでしょうか?
(こっちは問題が大分解きやすいです)