[オージス総研の本]
![]() |
リアルタイムUML 第2版 オブジェクト指向による組込みシステム開発入門 ブルース・ダグラス 著 渡辺博之 監訳 株式会社オージス総研 訳 株式会社翔泳社 3,990円 (税抜き 3,800円) ISBN:4-88135-979-7 |
REFERENCE
監修者まえがき
本書は、組込み・リアルタイムシステム向けに書かれた、オブジェクト指向とUMLについての解説書です。第1版は1998年に出版され、この分野に特化した初のUML解説書として、そして何よりその素晴らしいタイトルによって非常に好評を博しました。本書はその第2版にあたります。これほど早く第2版が出た背景には、本書の内容もさることながら、海外においてオブジェクト指向やUMLを使った組込みシステム開発が、まさに大きな広がりを見せ始めている、といった現状があげられるでしょう。実際、シリコンバレーで開催される全米最大の組込み技術展示会であるESC(Embedded Systems Conferences)においても、ここ数年はUMLをサポートしたCASEツールや、UMLに関する技術セミナーが一気に増え始めています。
組込み大国である我が日本においても、現在、組込みシステムの開発方法は大きな変換期を迎えています。特にここ最近は、要求される機能とその複雑さが増大する中で、開発期間だけは逆に短くなるという大きな開発のジレンマを抱えており、今までのような経験に依存した効率最優先の設計から、より安全で変更に強く再利用可能な設計への転換が、真に迫られています。
先にも述べたように、UMLを使ったモデリング中心の開発とそれを使って行われるオブジェクト指向という開発手法は、まさにこの問題に対する1つの解として、今、大きな期待を集めています。モデルによる開発は、開発における不要な複雑度を減らし、より早い時期からの論理的検証を可能とします。設計変更に対しても、ソースコード時点での変更より遙かに少ないコストで対処することが可能です。また、オブジェクト指向の持つ、局所化・抽象化といった考え方を上手く使ってシステムを構築すれば、変更に耐えうる強靱さと分かり易さを兼ね備えたアーキテクチャを得ることができます。これは現在の組込みシステムで問題となっている、「再利用性・拡張性に欠ける」「理解しにくい」といったアーキテクチャ上の欠点に対する大きな解決策となるでしょう。しかし、その反面で、UMLやオブジェクト指向を使って組込みシステム開発を行うことにはいくつかの障害があったことも事実です。実際、いままで私が参加してきた開発現場でも、開発の度毎に決まって次のようなことが問題となりました。
- ユースケースの粒度と抽出基準は?
- クラスの抽出基準は?
- タスク設計の指針は?
- タスクとオブジェクトへのマッピング方法は?
- 時間制約や実装制約への対処方法は?
巷にあふれる多くのオブジェクト指向やUMLの入門書でも、組込み分野を前提としてこれらの問題に答えてくれるものは皆無に等しく、オブジェクト指向やUMLを導入したばかりの開発現場では、まさにこのようなことへの解決方法を示してくれる書籍が渇望されていました。冒頭でも触れたように、本書はまさにこういった絶妙なタイミングで執筆された、数少ない組込み・リアルタイムシステム向けのUML解説書の一冊といえます。
本書の内容は、要求分析、分析、アーキテクチャ設計、メカニズム設計といった開発プロセスに沿った形で、そこでの作業ポイントと、そこで必要とされるUMLダイアグラムの説明を中心に構成されています。第1章から順に読み進めていけば、オブジェクト指向に関する知識と、一通りのUMLダイアグラムを無理なくマスターできるような仕掛けになっています。また、先に述べたように、組込み・リアルタイムシステム特有の問題に対する見解も随所に盛り込まれてありますので、オブジェクト指向やUMLに初めて触れる方はもちろんのこと、すでにそれらを現場で活用されている方、あるいは組込み・リアルタイムシステムに初めて携わる方にとっても、有用な一冊となるでしょう。
第1版からの変更点は、序文に詳しいので詳細は割愛しますが、UMLが1.3準拠になったほかには、2章の要求分析でユースケースにまつわる諸問題を扱っていること、4章の状態図に関する記述がさらに詳細になったことなどが大きな違いとなっています。なお、原書では、UML1.3に準拠していない表記法がいくつか使用されています。誤植やケアレスミスと判断できるものについては日本語化の際に修正を行いましたが、明らかに著者独自で拡張していると思われる記法については原書のままとしました(なお、この中のいくつかに付いては、付録Bにもあるように、組込み・リアルタイム向けの拡張案としてOMGで検討されているようです)。
また、日本語訳に関しては充分配慮したつもりですが、実開発と並行しながらの翻訳作業となってしまい、これで十分とは考えていません。本書中の不明な点などについては、https://www.shoeisha.com/までお寄せいただければ幸いです。
|
推薦の言葉 著者紹介 第1版の序章 目標 対象読者 構成 例題 第2版の序章 対象読者 目標 謝辞 第1章:リアルタイムシステムとオブジェクトの初歩 1.1 リアルタイムシステムの特性 1.2 時間の取り扱い 1.3 モデルに基づく開発 1.4 オブジェクトの利点 1.5 UMLによるオブジェクト指向 1.6 UMLのダイアグラムと表記法 1.7 このあとの展開 1.8 参考文献 第2章:リアルタイムシステムの要求分析 2.1 ユースケース 2.2 ユースケースの細部を完成させる 2.3 ユースケースの識別 2.4 このあとの展開 2.5 参考文献 第3章:分析:オブジェクト構造の定義 3.1 オブジェクト発見プロセス 3.2 オブジェクトモデルとユースケースモデルの結合 3.3 オブジェクトを識別するための主な戦略 3.4 オブジェクト間の関連を識別する 3.5 オブジェクトの属性 3.6 クラス候補の発見 3.7 クラス図 3.8 クラス間の関係定義 3.9 このあとの発展 3.10 参考文献 第4章:分析:オブジェクトの振る舞いの定義 4.1 オブジェクトの振る舞い 4.2 オブジェクトの状態型の振る舞いの定義 4.2 UMLのステートチャート 4.3 振る舞いの定義におけるシナリオの役割 4.4 操作の定義 4.5 このあとの展開 4.6 参考文献 第5章:アーキテクチャ設計 5.1 設計の概要 5.2 アーキテクチャ設計とは 5.3 UMLによる物理アーキテクチャの表現 5.4 アーキテクチャパターン 5.5 並行性の設計 5.6 スレッドの表現 5.7 スレッドの定義 5.8 スレッドへのオブジェクトの割り当て 5.9 スレッドのランデブーの定義 5.10 このあとの展開 5.11 参考文献 第6章:メカニズム設計 6.1 メカニズム設計とは 6.2 デザインパターン 6.3 このあとの展開 6.4 参考文献 第7章:詳細設計 7.1 詳細設計とは 7.2 データ構造 7.3 関連 7.4 操作 7.5 可視性 7.6 アルゴリズム 7.7 例外 7.8 まとめ 7.9 参考文献 付録A:表記法の要約 付録B:リアルタイム向けUMLの今後 B.1 OMGにおける標準化作業 B.1 アクションのセマンティクス B.1 スケジューリング、パフォーマンス、および時間 B.1 時間とは関係のないサービス品質 B.1 複雑なシステムのモデリング
|
© 2001 OGIS-RI Co., Ltd. |
|