講義概要
応答性が重視される組込みソフトウェアの設計では、業務系ソフトウェアなどでは一般的な処理フローに基づく設計から、イベントを中心とした設計に視点を変える必要がある。本講義では、イベント駆動型ソフトウェアの設計に不可欠な並行処理と状態遷移の意義及びそれらを組み合わせた設計方法について解説する。講師
- 所属
- 大阪大学
- 講師名
- 春名 修介
パナソニック㈱にて、プログラミング処理系、ソフトウェア開発環境、アーキテクチャ設計手法などに関する研究開発・製品応用及び社内教育に従事。2013年9月より、大阪大学大学院情報科学研究科 特任教授。
講義内容
イベント駆動型ソフトウェアの設計では、処理中に別のイベントへの応答が要求されるため、並行動作の設計と状態遷移の設計が密接に関係している。本講義では、開発現場で発生しがちな簡単な問題を事例に使って、並行動作を考慮した状態遷移設計の必要性・意義を明らかにする。また、設計内容の表現方法、第三者への伝え方についても講義する。講義内容
- (1)組込みソフトウェアのアーキテクチャ設計(静的構造と動的構造)
- (2)動的構造の設計
- (3)リアルタイムOS、状態遷移とは
- (4)タスク設計と状態遷移設計
- (5)RTC(Run To Completion:走りきり)の重要性
- (6)事例研究
- (7)アーキテクチャ・ドキュメンテーション
受講要件
- 【受講要件】
- C言語での実装経験があること。講義の中でも適宜補足するので必須ではないが、リアルタイムOSに関する知識を有することが望ましい。
- 【事前学習のポイント】
- 組込みソフトウェアを開発するにあたり、ご自身で普段どのような設計手順を踏んでいるか、思い起こしておいてください。
教科書
講義2週間前に電子ファイル送付(事前学習を推奨講義に関連する解説記事・参考文献・図書等
・JEITA 組込み系ソフトウェア・ワークショップ2014基調講演:実践的モデリング論 ~難しいことを考えずモデリングを実践するには~
http://home.jeita.or.jp/page_file/20141210172704_u7ctvk8KnY.pdf