オブジェクト開発の神髄~UML 2.0を使ったアジャイルモデル駆動開発のすべて
- 日経BP出版センター (2005年7月13日発売)
- Amazon.co.jp ・本 (576ページ)
- / ISBN・EAN: 9784822282370
作品紹介・あらすじ
身軽なオブジェクト開発手法を解説!!ビジネス系オブジェクト開発のためのモデリングの基本!アジャイルモデリングのエッセンス。
感想・レビュー・書評
-
どこでどの図を使うか!
何がポイントか!
明快に解説!詳細をみるコメント0件をすべて表示 -
本書は、アジャイルなオブジェクト指向開発に関するさまざまな事柄を網羅的に解説する。1章は、開発技術や、開発プロセス。2章では、オブジェクト指向の概念(UML、クラス、敬称、抽象化、コラボレーション、インターフェース)について。3章では、テスト全般。この後は、この本の中心的部分であるアジャイルモデル駆動開発について、さまざまな視野からの提言、示唆を行う。また、UML2.0を使用したアジリティーあふれるモデリングも披露してくれる(が、残念ながら、プログラム例はすべてJAVAで書かれている)。本書で貫かれている思想は、「要求仕様、設計モデル、分析モデルなどのソフト開発時に必要とされる中間成果物は、次のステップに進むために必要最小限の正確さで留める」というアジャイルな姿勢である。ウォーターフォール型で、頭がカチンコチンの馬鹿マネージャーは、このようなやり方を嫌うだろうが(アジャイルなチームを率いるためには優秀なマネージメントが必要だが、ウォーターフォールでは馬鹿でも出来る)、失敗のリスクを最小限に押さえ、仕様変更の要求に常に対応でき、最短、最小工数でユーザにソフトを届ける「あるべき姿のソフトウエア開発チーム」は、アジャイルなのである。もしあなたが、ソフトウエアエンジニアで、アジリティーのないチームに所属しているのならば、ぜひこの本を読んで、この本の神髄をあなたのチームに広めてほしい。この本は安くはないし、分厚くて読み応えがありすぎるかもしれないが、その分の見返りは確実である。
-
読書メモ:オブジェクト開発の神髄
2012/11/21(水)〜2012/12/10(月) 7日間200分程度
ざっと全体を眺めて必要そうな箇所だけをピックアップ。そこのみを読んだ。
開発の考え方を広く網羅してあるのは良いが、統一前のUMLの話しなどもでてくるのは不要だった。
もう、読む必要は無いかな。
[more]
?○第 1 章:最先端のソフトウェア開発
用語定義:OO,XMLRDB,アジャイル、UML、UP
RDB: データを行として格納する永続記憶メカニズム
FLOOT: Full Lifecycle Object-Oriented Testing 方法論 TDDを含む
目次
ケーススタディ: 本書全体で3つのケーススタディを使用
3つ:大学情報システム、オンライン注文システム、銀行ケーススタディ
銀行ケース:ABC銀行が口座の処理を行うシステム
口座:普通預金口座、個人当座預金口座(小切手あり)、プライベートバンク口座(PBA 投資相談 1200ドル)、当座預金口座(法人用)
キャッシュカード:全員発行、ATMと支店。ATMは支店IDと住所をもつ
銀行:支店10−30をまとめた「地区」で管理。地区マネージャ
?◎第 2 章:オブジェクト指向概念の基本
OO
ベストプラクティス=経験的に推奨される手順や方法
永続化 オブジェクトをずっと保存・保持すること。逆は一時的
基数 関係の基数(cardinality)
関連の矢印 1方向にしか辿れないときは、辿る先の方に矢尻を書く。指した先を知っている、という事
属性やメソッドの省略 関連を維持するための表示は省略
メソッド名の命名 相手が単数=set, get 複数=add, remove
集約=「〜の一部である」 白抜きのひし形 ◇ー ひし形は全体の方につける
コンポジション=1つのオブジェクトにだけ関連する 黒抜き ◆ー
結合度: 複数のクラスやメソッド間の関連度。疎にした方が保守工数が減る
凝集度: 1つの事だけに集中した方が凝集度は高い。
インタフェース: ○ー クラス図
ソケット: ○ー コンポーネント図
パターン: 既出の解法。
アナリシスパターン =アプリの分析や問題解決策の記述
デザインパターン =設計の解決策
プロセスパターン =ソフトウェア(開発)プロセス
?△第 3 章:フルライフサイクルオブジェクト指向テスト (FLOOT)
テストの種類:回帰(想定通り)、カバレッジ、ストレス、
FLOOT(Full Lifecycle Object-Oriented Testing)テストと検証手法を集めたもの
回帰テスト: 期待値と一致を図るテスト。
カバレッジテスト コードのカバレッジ
パステスト ロジックの道筋パスのカバレッジ。コードカバレッジのスーパーテスト
境界値テスト 異常や極端な状況のテスト
ストレステスト 負荷が高い状況でのテスト
TDD テスト駆動開発。まずテストを追加して開発していく手法
→第 4 章:アジャイルモデル駆動開発
AMDD
?△第 5 章:利用モデリング
ユースケース開発
ユースケースは機能ではない。要求。
→第 6 章:ユーザインターフェース開発
UI
→第 7 章:補足要求事項
オブジェクト制約言語OCL
△第 8 章:概念ドメインモデル
分析クラス図
?○第 9 章:ビジネスプロセスモデル
データフロー図DFD、フローチャート、UMLアクティビティ図
DFD(Data Flow Diagram)データフロー図
?△第 10 章:アジャイルなアーキテクチャ
UMLパッケージ図:ソースコードの物理的構造
コンポーネント図 コンポーネントのモデリング。UML1.xと2.xで異なる。
配置図 ソフト・ハードの配置。
?◎第 11 章:動的オブジェクトモデリング
UMLシーケンス図
返り値は必須ではない。明白な場合は省略しても良い。
シーケンス図の本当の価値は、それを作成すること自体。保存しなくても良い。
UML状態マシン図
状態遷移を記述してみることで、モデルのエラーに気づく。
?◎第 12 章:構造設計モデリング
UMLクラス図:
インタフェース: C++ではサポートされていない。
デザインパターン
Singleton ただ1つだけのインスタンス。静的メンバでインスタンスをもつ。
Facade インタフェースを統一。
物理データモデリング Physica data Model = PDM
データ指向の構造を調査する作業。
?○第 13 章:オブジェクト指向プログラミング
テスト駆動開発TDD、UML図からコードへ
オブジェクトプログラミングに最も役立つ設計モデルは、UMLシーケンス図とUMLクラス図の2つ。
→第 14 章:アジャイルデータベース開発
DB
?第 15 章:今後の進み方
ゼネラリスト化したスペシャリストになれ。
?用語集
CASE Computer-Aided System Engineering モデル作成支援ソフト
CORBA 分散オブジェクト
CRUD Create生成 Retrieve検索 Update更新 Delete削除 永続化メカニズムの基本機能
scaffold 足場。
アルファテスト バグ有りでのテストリリース
永続化 データベースにオブジェクトを保存
ベータテスト バグは大分少ないはず
オージス総研の本 [ オブジェクト開発の神髄 ] http://www.ogis-ri.co.jp/otc/hiroba/ogisbooks/ObjectPrimer3rdJ.html
オブジェクト開発の真髄を読んでる - voidy21の日記 http://voidy21.hatenablog.jp/entry/20100122/1264151474
オブジェクト開発の神髄の主な内容 http://ec.nikkeibp.co.jp/item/contents/mokuji/m_P82370.html -
2008年ブックハンティング選定図書。
-
誰か代わりに読んでください
-
まだ読んでいない。
-
2006.12.29 購入