組み込みソフトウェアの方式設計基礎概要 ソフトウェア開発は、方式設計工程、詳細設計工程などの段階を踏んで設計が行われる。本講座では、方式設計工程において、どのようなことを設計として考えるべきか基本を学習する。また、具体的な演習を通して、組込みソフトウェアの特徴的な設計のポイントを習得する。 目標- 組込みソフトウェアの特徴を捉えた、アーキテクチャ設計の理解する
- 組込みソフトウェア方式設計における、タスク構造を抽出する作業手順を修得する
対象者- 初~中級・組込みソフトウェア開発者の方
- 開発経験2年以上、詳細設計~実装の経験があること
前提知識- リアルタイムシステムの基本知識がある
- C/C++言語プログラムをテスト及びデバッグした経験がある
- C/C++言語プログラムを作成した経験がある
- プログラム設計の経験がある
- UMLの図面を読むことができる
研修内容演習題材:自動販売機システム
第1日 - 組込みソフトウェア方式設計の特徴
- 開発プロセスにおけるソフトウェア方式設計
- リアルタイム・システムの特徴
- ソフトウェア・アーキテクチャを考える
- ソフトウェア・アーキテクチャとは
- アーキテクチャを表すモデル
- a. 機能モデル
- b. 構造モデル
- c. 振る舞いモデル
- アーキテクチャを読む
- 構造と、機能モデルの連携
- 良い構造モデルを考える
- アーキテクチャ(機能・構造)を設計する
- アーキテクチャの形
- a. アーキテクチャパターン
- b. ハードウェア依存部の分離
- サブシステムに分割する
- サブシステムを設計する
第2日 - アーキテクチャ(振る舞い)を設計する
- サブシステム間の相互作用
- 状態モデルを設計する
- 振る舞いを設計する
- タスク分割を設計する
- 時間制約を考慮する
- 並行性を検討する
- タスク分割を設計する
- タスク分割の方針
- 並行性を検討する
- リアルタイム性を検討する
- 振り返り
|