marunomaruno-memo

marunomaruno-memo

「レシピ」で簡単組立できるWi-Fiロボットが登場

2007年04月29日 | 組込み
レシピ」で簡単組立できるWi-Fiロボットが登場

http://cgi.itmedia.co.jp/g/02_1b04070711_/news/articles/0704/27/news025.html

米国の大学が、簡単に組み立てられ、ネット経由で動かせるロボットを開発した。

Educational Robotics - Vehicles for Teaching and Learning
http://www.terk.ri.cmu.edu/


組込みソフトウェア開発 基礎講座

2007年04月08日 | 組込み
http://www.seshop.com/detail.asp?pid=7604
組込みソフトウェア開発 基礎講座
ソフトウェア開発の原点から、最新動向までを詳細に解説 開発の現場で真に求められる「使える人材」になるために

著: 杉浦英樹 / 橋本隆成
ISBN:9784798112244
サイズ:A5
ページ:456
販売価格:3,360(本体3,200 消費税5%)
発売日:2007/01/23
出版社:株式会社翔泳社

Part 1 ソフトウェア開発の世界

Chapter 1 ソフトウェアの世界
1-1 ソフトウェア開発の現場が直面している問題
1-2 開発規模の増大と複雑化する要求
1-3 過激に進む開発時間の短縮への対応
1-4 BRICsなど諸外国でのオフショア開発とグローバリゼーション
1-5 ソフトウェアエンジニアのキャリアパスと将来

Chapter 2 ソフトウェア開発技術の原点、現在そして未来
2-1 ソフトウェア開発とは
2-2 開発手法・開発方法論とは
2-3 ソフトウェアアーキテクチャの基礎
2-4 機能に基づいた構造化設計
2-5 オブジェクト指向技術
2-6 オブジェクト指向の次に来るもの

Chapter 3 開発管理技術とソフトウェア開発
3-1 ソフトウェア開発には、なぜ開発管理技術が必要か
3-2 何を開発するのか
3-3 どう開発するのか
3-4 何を管理するのか
3-5 どう管理するのか

Part 2 知識編:ソフトウェア開発のアプローチ

Chapter 4 ソフトウェア開発管理技術
4-1 CMMI

Chapter 5 ソフトウェア開発とライフサイクル
5-1 ソフトウェア開発とライフサイクル
5-2 ウォーターフォール型開発
5-3 反復型開発

Chapter 6 オブジェクト指向技術
6-1 なぜオブジェクト指向なのか
6-2 オブジェクト指向による開発工程とCMMIの関係
6-3 オブジェクト指向開発:分析
6-4 オブジェクト指向開発:設計
6-5 オブジェクト指向開発:実装
6-6 オブジェクト指向開発:テスト

Part 3 啓蒙・教育

Chapter 7 エンジニアが陥りやすい誤解
7-1 開発方法論の実践方法
7-2 誤解によって起こる悲劇
7-3 誤解は誤解を呼ぶ
7-4 元に戻すための方策
7-5 基礎教育から再教育まで

Chapter 8 原点の再確認
8-1 開発と開発管理の融合
8-2 技術に関わるときの心構え
8-3 成長する組織
8-4 ノウハウ蓄積のプロセス
8-5 原点再び


組込みソフトウェア開発のためのリバースモデリング

2007年04月08日 | 組込み
http://www.seshop.com/detail.asp?pid=7694

組込みソフトウェア開発のためのリバースモデリング
既存のソースコードを活用したリバース設計による効率的で高品質なソフトウェア開発

著: SESSAME WG 2
ISBN:9784798113746
サイズ:A5
ページ:232
販売価格:\2,520(本体\2,400 消費税5%)
発売日:2007/03/16
出版社:株式会社翔泳社

Chapter 1 はじめに

1-1 本書について
  1-1-1 本書の適用範囲
1-2 大規模化・短納期化・複数機種化に対処する
  1-2-1 大規模化への対応
  1-2-2 短納期化への対応
  1-2-3 複数機種化への対応
1-3 リバースモデリングとは
  1-3-1 ソフトウェアの全体構造を把握する
  1-3-2 ソフトウェアを管理可能な粒度にする
  1-3-3 ソフトウェア固定部と変動部を分離する
  1-3-4 ソフトウェアの時間側面を把握する
  1-3-5 ソフトウェア疲労に気づき、改善する
1-4 本書の活用方法
  1-4-1 本書の読み進め方
1-5 リバースモデリングの活用
  1-5-1 リバース設計
  1-5-2 リファクタリング
  1-5-3 リユース
  1-5-4 リアルタイム設計
  1-5-5 システム思考
  1-5-6 リバースからフォワードへ

Chapter 2 課題説明

2-1 話題沸騰ポット(GOMA-3015)の要求仕様
2-2 話題沸騰ポットの開発経緯
2-3 話題沸騰ポットのソースコード
2-4 話題沸騰ポット開発の方針

Chapter 3 失敗事例

3-1 失敗パターン 1:設計不在
  3-1-1 大きなファイルと大きな関数
  3-1-2 入り組んだ依存関係や呼び出し関係
3-2 失敗パターン 2:設計と実装の乖離
  3-2-1 ドキュメントとソースコードの一貫性の欠如
  3-2-2 設計情報の埋没
3-3 失敗パターン 3:時間経過による劣化
  3-3-1 ファイルと関数の肥大化
  3-3-2 無意味なソースコード断片
  3-3-3 コンパイルスイッチの複雑化
3-4 まとめ

Chapter 4 リバース設計

4-1 リバース設計で何をするのか
4-2 成果物の抽象度を上げる
  4-2-1 関数呼び出し関係を図解する
  4-2-2 ファイルの依存関係を図解する
4-3 分析モデリングのモデルと整合させる
4-4 設計と実装を同期させる
  4-4-1 トップダウンアプローチ
  4-4-2 ボトムアップアプローチ
  4-4-3 変換アプローチ
4-5 まとめ

Chapter 5 リファクタリング

5-1 目指すのは「自然な姿」
5-2 リファクタリングの対象
5-3 リファクタリングで何をするのか
  5-3-1 モデルを描く
  5-3-2 分離する
  5-3-3 凝集させる
  5-3-4 独立させる
5-4 リファクタリングするとき
  5-4-1 リファクタリング候補
  5-4-2 リファクタリングするタイミング
5-5 リファクタリングの事例
  5-5-1 1つのモジュールに複数の機能が入っている場合
  5-5-2 フラグ渡しをしている場合
  5-5-3 グローバルデータを使っている場合
5-6 まとめ

Chapter 6 リユース

6-1 固定と変動を明確にする
  6-1-1 固定部と変動部の分離
  6-1-2 変動部と変動点
  6-1-3 変動部の実現方法
6-2 変動部の事例
  6-2-1 コンパイルスイッチ
  6-2-2 構成ファイル(コンフィグファイル)
6-3 変動点を管理する
6-4 変動点マップの事例
  6-4-1 コンパイルスイッチ―コンポーネントマップ
  6-4-2 機能―機種マップ
  6-4-3 機種―機能―コンポーネントの管理
6-5 プロダクトラインを考慮する
  6-5-1 変動点を戦略的に管理する
6-6 まとめ

Chapter 7 リアルタイム設計

7-1 構造設計と実装設計
  7-1-1 構造設計
  7-1-2 実装設計
7-2 モデルから実装設計を行う
  7-2-1 起動周期を分析する
  7-2-2 制御スレッドを分析する
  7-2-3 ターミネータの仕様を決める
  7-2-4 タスクへ分割する
7-3 リアルタイムOSの活用
  7-3-1 リアルタイムOSのメリット、デメリット
  7-3-2 リアルタイムOSの導入と移行
  7-3-3 リアルタイムOS上のアプリケーションプログラムの構築
  7-3-4 デバイスドライバ
7-4 まとめ

Chapter 8 設計品質

8-1 複雑さへの対処
  8-1-1 分離と階層(トップダウン)
  8-1-2 抽象化
  8-1-3 俯瞰
  8-1-4 図解
  8-1-5 対話
8-2 設計の品質
  8-2-1 モジュール分割
  8-2-2 凝集度
  8-2-3 結合度
  8-2-4 システム形状
8-3 まとめ

Chapter 9 システム思考

9-1 ソフトウェア開発を取り巻く環境
  9-1-1 もぐらたたき現象
  9-1-2 ゆでがえる現象
  9-1-3 メンタルモデル
9-2 プロセス改善とシステム思考
  9-2-1 システム思考とは
  9-2-2 時系列変化グラフ
  9-2-3 因果ループ図
9-3 事例 1:ソフトウェア疲労モデル
  9-3-1 時系列変化グラフ
  9-3-2 因果ループ図
9-4 事例 2:学習意欲の低下モデル
  9-4-1 時系列変化グラフ
  9-4-2 因果ループ図
9-5 現場での適用について
9-6 まとめ

Appendix A 定石・格言 一覧

Appendix B 用語辞書

Appendix C 表記法の説明

Appendix D ポットの分析モデルと設計モデル

参考文献

組込みソフトウェア開発のための構造化モデリング

2007年04月08日 | 組込み
http://www.seshop.com/detail.asp?pid=6699
組込みソフトウェア開発のための構造化モデリング
要求定義/分析/設計からソースコード作成までソフトウェア開発上流工程の基本を構造化手法に学ぶ

著: SESSAME WG 2
ISBN:4798110477
サイズ:A5
ページ:224
販売価格:2,310(本体2,200 消費税5%)
発売日:2006/01/23
出版社:株式会社翔泳社

Chapter 1 はじめに

1-1 本書について
  1-1-1 本書の適用範囲
  1-1-2 構造化手法で基本を学ぶ
  1-1-3 モデリング中心
  1-1-4 具体的な事例
1-2 本書の活用方法
  1-2-1 本書の読み進め方
1-3 モデリングツールの活用
  1-3-1 イベントリスト
  1-3-2 データディレクトリ
  1-3-3 データフローダイアグラム
  1-3-4 構造図
  1-3-5 ディシジョンテーブル
  1-3-6 状態遷移図
  1-3-7 状態遷移表
1-4 組込みソフトウェアの開発
  1-4-1 組込みソフトウェアとは
  1-4-2 組込みソフトウェアの主要分野
  1-4-3 組込みソフトウェアの特徴
  1-4-4 システム開発の要件
  1-4-5 組込みソフトウェアの特性と開発工程
  1-4-6 日本の組込みソフトウェア開発
  1-4-7 どんな技術が必要か
  1-4-8 ソフトウェア開発工程とモデリング
  1-4-9 モデリングの効用

Chapter 2 課題説明

2-1 話題沸騰ポット(GOMA-1015)

Chapter 3 失敗事例

3-1 失敗事例 1:基本動作から積み上げていった例
  3-1-1 ソースコードの概要
  3-1-2 解説
3-2 失敗事例 2:ハードウェアを動かしながら作り上げていった例
  3-2-1 ソースコードの概要
  3-2-2 解説
3-3 失敗事例 3:要求仕様の曖昧さに気付いていない例
3-4 まとめ
  3-4-1 6つの失敗パターン

Chapter 4 要求モデリング

4-1 なぜ要求モデルが必要なのか
  4-1-1 仕様書はもらったけれど
  4-1-2 仕様書を作る立場から
  4-1-3 仕様書を読む立場から
4-2 要求モデリングで何をするのか
  4-2-1 要求モデリングとは
  4-2-2 要求モデリングのプロセスとアウトプット
4-3 要求モデリングを体験する
  4-3-1 イベントリストを作成する
  4-3-2 イベントリストの表記法
  4-3-3 イベントリストの作成過程
  4-3-4 非機能要件リストを作成する
  4-3-5 タイミング仕様書を作成する
  4-3-6 データディクショナリを作成する
4-4 ポットの要求モデル事例
4-5 まとめ
4-6 復習

Chapter 5 分析モデリング

5-1 なぜ分析モデルが必要なのか
  5-1-1 仕様書からいきなり設計していると
  5-1-2 設計する立場から
  5-1-3 プロジェクト管理者の立場から
5-2 分析モデリングで何をするのか
  5-2-1 分析モデリングとは
  5-2-2 分析モデリングのプロセスとアウトプット
5-3 分析モデリングを体験する
  5-3-1 コンテキストダイアグラムを作成する
  5-3-2 データフローダイアグラム(DFD)を作成する
  5-3-3 DFDの表記法
  5-3-4 コンテキストダイアグラムとDFDの作成過程
  5-3-5 データディクショナリを更新する
  5-3-6 制御フローダイアグラムを作成する
  5-3-7 制御仕様書を作成する
  5-3-8 プロセス仕様書を作成する
  5-3-9 分析モデリング成功の要所
5-4 ポットの分析モデル事例
5-5 まとめ
5-6 復習

Chapter 6 設計モデリング

6-1 なぜ設計モデルが必要なのか
  6-1-1 設計モデルがなかったあの頃
  6-1-2 設計モデルを作成する立場から
  6-1-3 設計モデルを作成する立場から
  6-1-4 ソフトウェア統合の視点から
6-2 設計モデリングで何をするのか
  6-2-1 設計モデリングとは
  6-2-2 設計モデリングのプロセスとアウトプット
  6-2-3 構造設計以後のコード中心プロセスの例
6-3 設計モデリングを体験する
  6-3-1 構造図を作成する
  6-3-2 構造図の表記法
  6-3-3 構造図の作成過程(DFDからSCへの移行)
  6-3-4 モジュール仕様を作成する
6-4 ポットの設計モデル事例
  6-4-1 DFDからSCへの移行
  6-4-2 DFD全貌と最大抽象点
  6-4-3 できあがった構造図
  6-4-4 タイミング要求への対応
  6-4-5 モジュール仕様一覧
  6-4-6 モジュール仕様書
6-5 まとめ
6-6 復習

Chapter 7 プログラミング

7-1 失敗事例
  7-1-1 いきなりプログラミングを始めたら
  7-1-2 保温モードの変更処理を追加
  7-1-3 処理ループをサブルーチン化
7-2 構造図からソースコードへ
  7-2-1 プログラミングの手順
7-3 状態遷移のプログラミング
  7-3-1 状態遷移のプログラム例(switch-case)
  7-3-2 状態遷移のプログラム例(関数ポインタ)
  7-3-3 設計モデルと実装を同期させる
7-4 ポットのプログラム事例
7-5 プログラム実行の流れ
  7-5-1 main関数はどこにある
  7-5-2 システムの初期化
  7-5-3 初期化から定常状態へ
7-6 まとめ
7-7 復習

Chapter 8 設計品質

8-1 複雑さへの対処
  8-1-1 分割と階層
  8-1-2 抽象化
  8-1-3 俯瞰
  8-1-4 図解
  8-1-5 対話
8-2 設計の品質
  8-2-1 モジュール分割
  8-2-2 凝集度
  8-2-3 結合度
  8-2-4 システム形状
8-3 失敗事例の検証
  8-3-1 肥大化
  8-3-2 なんでも屋
  8-3-3 スパゲッティ
  8-3-4 無秩序な構造
  8-3-5 物理駆動
  8-3-6 老舗温泉旅館(余計な関係)
8-4 まとめ

Chapter 9 レビュー

9-1 レビューとテスト
  9-1-1 レビューとテストの違い
9-2 レビューとは
  9-2-1 レビューの対象物
  9-2-2 なぜレビューするのか
9-3 レビュー技法
9-4 インスベクション
  9-4-1 インスペクションの概要
  9-4-2 インスペクションの入力
  9-4-3 インスペクションの処理
  9-4-4 インスペクションの出力
9-5 インスペクションの実際
  9-5-1 対象物
  9-5-2 タイミング
  9-5-3 観点
9-6 インスペクション実施ツール
  9-6-1 課題ログ
  9-6-2 実施報告書
  9-6-3 チェックリストの事例
9-7 まとめ

Appendix A 定石・格言一覧

A-1 定石
A-2 格言

Appendix B 用語辞書


組込みソフトウェア開発のためのオブジェクト指向モデリング

2007年04月08日 | 組込み
http://www.seshop.com/detail.asp?pid=6984
組込みソフトウェア開発のためのオブジェクト指向モデリング

要件定義/分析/設計からソースコード作成までオブジェクト指向ソフトウェア開発の基本を習ぶ

著: SESSAME WG 2
ISBN:4798111767
サイズ:A5
ページ:280
販売価格:2,730(本体2,600 消費税5%)
発売日:2006/06/12
出版社:株式会社翔泳社

Chapter 1 はじめに

1-1 本書について
  1-1-1 本書の適用範囲
  1-1-2 オブジェクト指向で大規模化かつ短納期化に対処する
  1-1-3 モデリング中心
  1-1-4 具体的な事例
1-2 本書の活用方法
  1-2-1 本書の読み進め方
1-3 モデリングツールの活用
  1-3-1 ユースケース図
  1-3-2 イベントリスト
  1-3-3 クラス図
  1-3-4 コミュニケーション図
  1-3-5 状態遷移図
  1-3-6 状態遷移表
  1-3-7 シーケンス図
  1-3-8 パッケージ図
1-4 大規模な組込みソフトウェア開発
  1-4-1 大規模組込みソフトウェアの特徴
  1-4-2 ソフトウェア開発工程とモデリング
  1-4-3 モデリングの効用

Chapter 2 課題説明

2-1 話題沸騰ポット(GOMA-1015)

Chapter 3 失敗事例

3-1 失敗パターン 1:クラス抽出の失敗
  3-1-1 機能分割モデル
  3-1-2 もの依存モデル
3-2 失敗パターン 2:抽出度選定の失敗
  3-2-1 過度な詳細モデル
  3-2-2 過度な抽象モデル
3-3 失敗パターン 3:時間経過によるモデル劣化
  3-3-1 クラス過多モデル
  3-3-2 くもの巣モデル
3-4 まとめ
  3-4-1 6つの失敗モデル
  3-4-2 15個の危険な兆候

Chapter 4 要求モデリング

4-1 要求モデリングで何をするのか
  4-1-1 要求モデリングとは
  4-1-2 要求モデリングのプロセスとアウトプット
4-2 機能要件を考察する
  4-2-1 ユースケースモデルとは
  4-2-2 ユースケース図の表記法
  4-2-3 ユースケース記述の表記法
  4-2-4 ユースケースモデルの作成
  4-2-5 イベントリストを併用する
  4-2-6 コンテキストダイアグラムを併用する
4-3 非機能要件を考察する
  4-3-1 非機能要件リストを作成する
  4-3-2 タイミング仕様書を作成する
  4-3-3 データディクショナリを作成する
4-4 まとめ
4-5 復習

Chapter 5 分析モデリング

5-1 分析モデリングで何をするのか
  5-1-1 分析モデリングとは
  5-1-2 分析モデリングのプロセスをアウトプット
5-2 システムのスコープを決める
  5-2-1 コンテキストダイアグラムを作成する
5-3 静解析する
  5-3-1 オブジェクト/クラス/インスタンスとは
  5-3-2 クラス候補を抽出する
  5-3-3 キー抽象となるクラス候補を選定する
  5-3-4 モデル化の指針を決定する
  5-3-5 クラスと属性を決める
  5-3-6 クラスどうしの関連を決める
  5-3-7 ロール名/多重度/関連記述を作成する
  5-3-8 その他のクラス抽出法
  5-3-9 名詞句抽出法の例
  5-3-10 図解抽出法の例
  5-3-11 静解析のまとめ
5-4 動解析する
  5-4-1 責務分担のコミュニケーション図を作成する
  5-4-2 クラスごとの状態遷移図
  5-4-3 クラスの状態遷移表を作成する
  5-4-4 役割分担を確認する
  5-4-5 動解析のまとめ
5-5 クラスごとの責務仕様を決める
  5-5-1 クラス図を詳細化する
  5-5-2 クラスへの操作の追加による一慣性の確認
5-6 モデル検証を行う
  5-6-1 シナリオによる動作の確認
5-7 まとめ
5-8 復習

Chapter 6 設計モデリング

6-1 設計モデリングで何をするのか
  6-1-1 設計モデリングとは
  6-1-2 設計モデリングのプロセスとアウトプット
  6-1-3 構造設計以後のコード中心プロセスの例
6-2 分析モデルを設計モデルへ変換する
  6-2-1 コンパイル可能なモデルへ変換する
  6-2-2 生成関係を検討する
6-3 タスク構造を設計する
  6-3-1 イベント分析を行う
  6-3-2 制御スレッド分析を行う
  6-3-3 インスタンス生成関係を見直す
  6-3-4 クラス構造を見直す
  6-3-5 通信方法を決定する
6-4 パッケージを設計する
  6-4-1 パッケージ図を作成する
  6-4-2 機種ごとにパッケージ分割する
6-5 メモリ構造の設計を行う
  6-5-1 メモリマップを理解する
  6-5-2 ヒープの使い方
  6-5-3 メモリ構造設計のまとめ
6-6 クラスの詳細設計を行う
  6-6-1 シーケンス図を作成する
  6-6-2 クラス仕様書を作成する
6-7 システム全体の設計
  6-7-1 ドメインを分析する
  6-7-2 システムを分割する
6-8 まとめ
6-9 復習

Chapter 7 プログラミング

7-1 プログラミングで何をするのか
  7-1-1 プログラミングとは
  7-1-2 プログラミングのプロセスとアウトプット
7-2 クラスをプログラミングする
  7-2-1 コンポーネントを形成する
  7-2-2 ヘッダファイルとソースファイルを作る
7-3 インスタンスの生成と消滅
  7-3-1 ライフタイムとスコープ
  7-3-2 newによるインスタンス生成とdetelteによるインスタンス消去
  7-3-3 ファクトリによるインスタンス生成
  7-3-4 実装時のメモリ節約
7-4 メソッドを実装する
  7-4-1 状態遷移を実装する
  7-4-2 メッセージ送信を実装する
7-5 オブジェクト指向言語の仕組みと注意事項
  7-5-1 クラスとインスタンスの仕組み
  7-5-2 生成と消滅の仕組み
  7-5-3 メモリ管理の仕組み
7-6 まとめ
7-7 復習

Chapter 8 設計品質

8-1 複雑さへの対処
  8-1-1 分割と階層(トップダウン)
  8-1-2 抽象化
  8-1-3 俯瞰
  8-1-4 図解
  8-1-5 対話
8-2 オブジェクト指向設計の特徴
  8-2-1 カプセル化
  8-2-2 詳細隠蔽
  8-2-3 クラスとインスタンス
  8-2-4 メッセージ通信
  8-2-5 状態保持
  8-2-6 継承
  8-2-7 ポリモーフィズム
8-3 設計の品質
  8-3-1 クラスの品質
  8-3-2 クラス間の品質
  8-3-3 システム形状(静的側面)
  8-3-4 システム形状(動的側面)
8-4 失敗事例の検証
  8-4-1 機能分解
  8-4-2 もの依存
  8-4-3 過度な詳細
  8-4-4 過度な抽象
  8-4-5 クラス過多
  8-4-6 くもの巣
8-5 まとめ

Chapter 9 レビュー

9-1 レビューとテスト
  9-1-1 レビューとテストの違い
9-2 レビューとは
  9-2-1 レビューの対象物
  9-2-2 なぜレビューするのか
9-3 レビュー技法
9-4 インスペクション
  9-4-1 インスペクションの概要
  9-4-2 インスペクションの入力
  9-4-3 インスペクションの処理
  9-4-4 インスペクションの出力
9-5 インスペクションの実際
  9-5-1 対象物
  9-5-2 タイミング
  9-5-3 観点
9-6 インスペクションの実施ツール
  9-6-1 課題ログ
  9-6-2 実施報告書
  9-6-3 チェックリストの事例
9-7 まとめ

Appendix A 定石・格言一覧

A-1 定石
A-2 格言

Appendix B 用語辞書

XForms を使って独自の「数独」ゲームを作成する

2007年04月03日 | XML
XForms を使って独自の「数独」ゲームを作成する
第 1 回: ゲームを作成する
http://www.ibm.com/jp/developerworks/xml/library/x-xformssudoku1/

関連記事

■XForms の基本
次世代のフォームを作成するための必須事項を学ぶ
http://www-06.ibm.com/jp/developerworks/xml/library/x-xformsbasics/index.shtml

■XForms 入門
第 1 回: フォームのための新しい Web 標準
http://www-06.ibm.com/jp/developerworks/xml/library/x-xformsintro1/index.shtml

第 2 回: フォーム、モデル、コントロール、そして送信アクション
http://www-06.ibm.com/jp/developerworks/xml/library/x-xformsintro2/index.shtml

第 3 回: アクションとイベントを使う
http://www-06.ibm.com/jp/developerworks/xml/library/x-xformsintro3/index.shtml



4-6月 IT特講の予定

2007年04月02日 | IT 特講
4-6月予定

04/07(土) 10:00-12:30 XML Beginners (1) - XML を読む編 -
04/07(土) 13:15-15:45 XML Beginners (2) - XML を書く編 -

04/29(日) 16:00-18:30 プログラミング作法 - Java 編

05/06(日) 10:00-15:45 Struts入門

05/27(日) 16:00-18:30 デザイン・パターン

06/10(日) 10:00-15:45 オブジェクト指向モデリング入門

組み込みUML - eUMLによるオブジェクト指向組み込みシステム開発

2007年04月01日 | オブジェクト指向
組み込みUML

eUMLによるオブジェクト指向組み込みシステム開発

渡辺博之 / 渡辺政彦 / 堀松和人 / 渡守武和記 著
株式会社翔泳社 2,940円(税抜き 2,800円)
B5変型判 296ページ 付属品:CD-ROM 1枚
ISBN4-7981-0214-8

http://www.ogis-ri.co.jp/otc/hiroba/OoBook/eUML/eUML.html

第1章:組み込みシステム開発の現状とオブジェクト指向開発
1.1 組み込みシステム開発の現状
1.1.1 メインフレームと基幹業務システム
1.1.2 パソコン時代
1.1.3 マイコン時代
1.1.4 ユビキタスコンピューティング
1.1.5 組み込みソフトウェアの量的な変化
1.1.6 組み込みソフトウェアの質的な変化
1.2 今までの開発スタイルの何が問題なのか
1.2.1 コード偏重開発
1.2.2 保守や拡張を考慮しない開発スタイル
1.2.3 制御とタスク中心の開発スタイル
1.2.4 経験と勘を偏重する開発
1.2.5 開発偏重
1.2.6 ツール軽視偏重開発
1.3 UML を使ったオブジェクト指向開発で何が改善されるのか
1.3.1 要求仕様の曖昧さ
1.3.2 部品化再利用
1.3.3 モデリング範囲
1.4 参考文献
第2章:eUML
2.1 eUML の動機
2.1.1 問題点
2.1.2 ベストプラクティスとガイドライン
2.2 eUML の骨子
2.2.1 開発プロセス
2.2.2 開発のガイドラインと基本アーキテクチャ
2.2.3 例題を使ったモデルとソースコードの提示
2.3 今後のスケジュール
第3章:開発プロセス
3.1 開発プロセスの概要
3.1.1 開発要求分析
3.1.2 分析
3.1.3 アーキテクチャ設計
3.1.4 設計
3.1.5 実装
3.1.6 アーキテクチャメカニズム設計
3.1.7 テスト
3.2 具体的な各作業のフロー
3.2.1 要求分析から分析までのワークフロー(時系列)
3.2.2 アーキテクチャ設計から実装までのワークフロー(時系列)
3.3 eUML と繰り返し開発
3.3.1 開発プロセス
3.4 参考文献
第4章:プロジェクトマネジメントとeUML
4.1 ISO10006
4.2 コミュニケーションに関連するプロセス
4.3 範囲・時間・コスト・経営資源・リスクに関連するプロセス
4.4 戦略決定・相互依存・購買に関連するプロセス
4.5 参考文献
第5章:要求分析
5.1 キャンディソーター
5.2 ユースケース分析
5.2.1 アクターを定義する
5.2.2 ユースケースを定義する
5.2.3 ユースケースを記述する
5.2.4 ユースケースと状態の関係を考える
5.3 アーキテクチャ要求分析
5.4 参考文献
第6章:分析
6.1 ドメイン定義
コラム ドメインのカテゴリ
6.2 サブシステム分割
コラム なぜドメインやサブシステムが必要なのか
6.3 エンティティ分析
コラム エンティティ分析のクラスカテゴリ
6.4 オブジェクト構造分析
6.4.1 下位ドメインのクラス定義
6.4.2 下位ドメインのクラス定義
コラム オブジェクト構造分析のクラスカテゴリ
6.5 システムビヘイビア分析
6.6 オブジェクトコラボレーション分析
コラム コラボレーション図は詳細すぎない
6.7 オブジェクトビヘイビア分析
コラム 1 つのクラスには1 種類の責務
6.8 エラー処理の分析
6.9 参考文献
第7章:アーキテクチャ設計
7.1 ノードマッピング
7.2 モジュール設計
7.2.1 ドメインのインターフェイスの見直し
7.2.2 サブシステム構成の見直しとパッケージ分割
7.3 タスクマッピング
7.3.1 UML でのタスクの扱い
7.3.2 タスク候補とアクティブオブジェクトの検討
7.3.3 タスク候補のプロパティを決める
7.3.4 タスクをマージする
コラム 組み込みシステムの典型的な制御方法とタスクの割り当て方法
7.3.5 アクティブオブジェクト間の同期や通信
7.3.6 パッシブオブジェクトの排他制御
7.4 参考文献
第8章:アーキテクチャメカニズム設計
8.1 アーキテクチャメカニズムが提供するもの
8.2 アーキテクチャメカニズムの種類
8.3 アーキテクチャメカニズムについて
8.3.1 インスタンス管理
8.3.2 インスタンス生成の管理
8.3.3 関連の管理
8.3.4 有限状態機械実行エンジン
8.3.5 イベントの送受信
8.3.6 アクティブオブジェクト
8.3.7 プロキシ
8.3.8 タスククラス
8.3.9 オブザーバ
8.3.10 ユーティリティ
8.4 C 言語のためのアーキテクチャメカニズム
8.4.1 静的な構造の設計
8.4.2 静的な呼び出しの設計
8.4.3 コンストラクタ、デストラクタの設計
8.4.4 動的な呼び出し(ポリモルフィズム)の設計
8.4.5 その他
第9章:設計・実装
9.1 プログラミングを前提としたモデル仕様を定義する
9.1.1 クラス構成や関連を最適化する
コラム 実装サイズに関する考察
コラム オブジェクトをROM とRAM に配置する
9.2 アーキテクチャメカニズム設計をモデルに組み込む
9.2.1 データ管理
コラム オブジェクトの生成に関する考察
9.2.2 OS の隠蔽
9.2.3 並行性の実現
9.2.4 クラスの実行状態管理
9.2.5 タイマー
9.3 ビヘイビアモデリング
9.3.1 オブジェクトコラボレーション設計
9.4 設計モデル
9.5 参考文献
第10章:デバッグ
10.1 概要
10.2 ソフトウェアシミュレータ
10.3 ソフトとハードの境目
10.4 ソフトウェアシミュレータの作成条件
10.5 ソフトウェアシミュレータの作成方法
10.6 シミュレータと組み込みソフトの結合方法
10.7 CandySorter のシミュレータ
第11章:テスト
11.1 組み込みソフトウェアのクオリティクライシス
11.2 クオリティを向上させるには
11.3 2001 年はテストドリブン開発スタイル元年
11.4 eUML におけるテストとは
11.4.1 テストスペクトラム
11.4.2 実行可能モデル
11.4.3 テスト用語定義
11.4.4 eUML テスト用語定義
11.5 実行可能モデルの実現方法
11.5.1 アニメーション
11.5.2 シミュレーション
11.5.3 エミュレーション
11.6 eUML テストフロー
11.6.1 利用モデル分析
11.6.2 テストケース設計
11.6.3 テストケースカバレッジ
11.7 状態遷移表によるテストケース
11.7.1 モデラの状態図からテスターの状態遷移表への変換
11.7.2 アクター特性の付加
11.7.3 テストケースカバレッジ
コラム 状態遷移表記法解説
11.8 参考文献
付録A:CandySorterSimulator 使用説明書
A.1 はじめに
A.2 ファイル構成
A.3 ファイルの格納場所
A.4 リンク方法
A.5 実行方法
A.6 終了方法
A.7 操作方法
A.8 オプション設定
付録CD- ROM のご案内
索引