アンケートご協力のお願いgihyo.jpでは,2010年度に向けて豪華プレゼントが当たる読者属性アンケートを実施しております。ご協力ください。

gihyo.jp » 書籍案内 » これだけは知っておきたい組込みシステムの設計手法

組込みプレスSelectionシリーズこれだけは知っておきたい組込みシステムの設計手法

[表紙]これだけは知っておきたい組込みシステムの設計手法

2009年10月17日発売

坂本裕司, 中佐藤麻記子, 島田健二, 安部田章, 山崎進, 樽本徹也, 平鍋健児, 前川直也 著

A5判/280ページ

定価2,814円(本体2,680円)

ISBN 978-4-7741-4014-8

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

組込みプレスSelectionシリーズの第三弾の設計編です。組込みシステムの設計では,ハードウェアが関わる分,エンタープライズシステムなどとは異なる配慮が必要になります。たとえば,設計工程で開発するドキュメントにデータシートやブロック図などが含まれていたり,ハードウェア関連の要件を検討するという点があります。また,効率的に品質の高い製品を開発するためには,プロダクトライン,アジャイルなどの開発手法も求められます。本書は,開発現場で役立つ実践的な基礎知識を学ぶための土台を提供します。

こんな方におすすめ

  • 組込みシステム設計者
  • プロダクトラインに関心のある方
  • 組込みにおけるアジャイルを知りたい方

目次

本書を読むための用語解説

Part 1 組込みソフト設計の極意と心得

Chapter 1 組込みソフトとは?

  • 1-1 組込みシステム開発に取り組む前に
  • 1-2 そもそも組込みソフトとは?
  • 1-3 組込みソフト開発とは?
  • 1-4 立場によって異なる設計
  • 1-5 Part 1で最終的に作成される設計書のイメージ
  • 1-6 まとめ

Chapter 2 ブロック図を描いてみよう

  • 2-1 ブロック図とは?
  • 2-2 機能を並べただけのブロック図
  • 2-3 データの流れを追加したブロック図
  • 2-4 コントローラとCPUの関連ブロック図
  • 2-5 ハードウェアの情報を読み取る
  • 2-6 まとめ

Chapter 3 データシートを読んでみよう

  • 3-1 ワンチップマイコンのデータシート
  • 3-2 複合コントローラのデータシート
  • 3-3 しかたなく回路図を見る?
  • 3-4 まとめ

Chapter 4 ソフトウェアブロック図を描いてみよう

  • 4-1 ソフトウェアブロック図の分割のしかた
  • 4-2 まとめ

Chapter 5 状態遷移図を描いてみよう

  • 5-1 状態遷移図の約束事
  • 5-2 システム全体の状態遷移図の概要
  • 5-3 機能要件では現れないイベントと状態
  • 5-4 経由する状態
  • 5-5 タスクやプロセス単位の状態遷移
  • 5-6 まとめ

Part 2 アーキテクチャの作り方、描き方

Chapter 6 ドキュメント、書いてますか

  • 6-1 アーキテクトは縁の下の力持ち
  • 6-2 ドキュメントの重要性
  • 6-3 文字と図の比較

Chapter 7 アーキテクチャとは何か

  • 7-1 アーキテクチャの定義
  • 7-2 アーキテクチャが重要になるのは
  • 7-3 何をドキュメントとすべきか

Chapter 8 アーキテクチャをどうやって作るか

  • 8-1 機能要件より非機能要件
  • 8-2 アーキテクチャの決定要因
  • 8-3 要件の再定義の必要性
  • 8-4 品質属性
  • 8-5 品質属性シナリオ
  • 8-6 アーキテクチャ決定プロセス

Chapter 9 アーキテクチャをどうやって表すか

  • 9-1 ビュー
  • 9-2 アーキテクチャドキュメント
  • 9-3 まとめ

Part 3 プロダクトライン開発実践マニュアル

Chapter 10 プロダクトライン開発とは?

  • 10-1 プロダクトライン開発の概要
  • 10-2 プロダクトライン開発とは何か
  • 10-3 プロダクトライン開発の目的
  • 10-4 プロダクトライン開発の活動
  • 10-5 想定組織と活動計画

Chapter 11 体系的な再利用

  • 11-1 再利用情報の抽出と体系化
  • 11-2 開発のプロセスとドキュメントの対応付け
  • 11-3 ツールを使用した再利用情報の体系化
  • 11-4 コア資産からのプロダクト導出
  • 11-5 プロダクトライン開発用の情報データベース
  • 11-6 まとめ

Chapter 12 既存の開発プロセスとの対応付け

  • 12-1 プロダクトラインの導入プロセス
  • 12-2 プロダクトラインの開発プロセス
  • 12-3 既存プロセスとの対応付け
  • 12-4 まとめ

Chapter 13 商品戦略に基づく要求獲得

  • 13-1 商品戦略に適合したコア資産要求の獲得
  • 13-2 ゴール指向要求分析法
  • 13-3 要求の評価
  • 13-4 商品戦略に適合したコア資産開発
  • 13-5 商品戦略からの戦略ゴールの抽出
  • 13-6 ゴール指向分析法による機能要件・技術課題の抽出
  • 13-7 ドメイン要求の統合
  • 13-8 プロダクト要求の統合
  • 13-9 要求の評価
  • 13-10 まとめ

Chapter 14 アーキテクチャの構築とコア資産開発

  • 14-1 アーキテクチャ要求仕様
  • 14-2 部品(コンポーネント)の整備
  • 14-3 トレーサビリティの実現
  • 14-4 相違性の実装
  • 14-5 プロダクト導出
  • 14-6 まとめ

Part 4 事例で学ぶ~UMLベースのプロダクトライン開発

Chapter 15 PLUS~UMLベースのプロダクトライン開発方法論

  • 15-1 PLUSとは?

Chapter 16 要求モデリング

  • 16-1 対象とするIP電話の機能
  • 16-2 (1)ユースケースモデリング
  • 16-3 (2)フィーチャモデリング

Chapter 17 分析モデリング

  • 17-1 (3)UIモデリング
  • 17-2 (4)静的モデリング
  • 17-3 (5)動的相互作用モデリング
  • 17-4 (6)状態機械モデリング
  • 17-5 (7)フィーチャ/クラス依存モデリング

Chapter 18 設計モデリング&プロダクト導出

  • 18-1 (8)アーキテクチャ設計モデリング
  • 18-2 (9)アプリケーションエンジニアリング
  • 18-3 まとめ

Part 5 ユーザの満足度を向上させるための組込みユーザビリティエンジニアリング原論

Chapter 19 ユーザビリティとは?

  • 19-1 ユーザビリティとは何か
  • 19-2 失敗の原因
  • 19-3 ユーザ中心設計

Chapter 20 ニーズを汲み取るユーザ調査法

  • 20-1 ユーザの声、聞くべからず!
  • 20-2 「師匠と弟子」方式のインタビュー
  • 20-3 仮想のユーザ「ペルソナ」

Chapter 21 時間とコストをかけないプロトタイプ

  • 21-1 プロトタイプとは?
  • 21-2 プロトタイプの作り方
  • 21-3 プロトタイプの真価

Chapter 22 (利用)品質を改善するユーザビリティ評価法

  • 22-1 総括的評価と形成的評価
  • 22-2 実験的手法と分析的手法
  • 22-3 認知的ウォークスルー
  • 22-4 ユーザテスト

Chapter 23 ユーザテストから始めるユーザビリティ活動

  • 23-1 ユーザビリティ活動の始め方

Part 6 付せん1枚から始めるアジャイル開発

Chapter 24 組込みでのアジャイルとは?

  • 24-1 日本の組込み開発現場へのアジャイル開発手法の導入
  • 24-2 アジャイル開発とは何か
  • 24-3 組込み開発の問題点とアジャイル開発の実践
  • 24-4 プロジェクトファシリテーション
  • 24-5 アジャイル開発の導入方法

Chapter 25 設計・開発プロセスから見たアジャイルの導入術

  • 25-1 アジャイルスタイル
  • 25-2 リズムとゴール
  • 25-3 自律的でアジャイルな改善
  • 25-4 組込みでの勝ち組を目指す
  • 25-5 明日から始める組込みアジャイル

著者プロフィール

坂本裕司(さかもとゆうじ)

Part 1

組込みソフト開発エンジニア。1960年熊本県生まれ。いくつかの企業を渡り歩いて組込み・制御系ソフトウェア開発を行う。

現在はフリーランスとして開発を請け負っている。OSなし組込み制御,RTOS,Linux環境を得意とする。


中佐藤麻記子(なかさとまきこ)

Part 2(共著)

学生時代は言語学(自然言語のほう)が専門だったはずが,社会人になったとたん別種類の言語(プログラミング言語)を渡り歩くことになり,メインフレームのエディタとUNIXのviとVisual Studioを同時に使う「ひとりでマルチプラットフォーム」な日々を送る。目指すは,最新の技術がインプットできて,それをほかの人に自分の言葉でアウトプットできる技術者。最近の関心事は「非機能要件と実装はどこまでトレース可能か」。

※プロフィールは掲載当時のものです。中佐藤さんは現在,㈱テクノロジックアートでコンサルティング・トレーニングを担当しています。


島田健二(しまだけんじ)

Part 2(共著)

1978年よりこの業界に関わる。アセンブラでプログラムを作り始めた当初に味わった苦い経験がもとで,ソフトウェア可視化の必要性を痛感し,プログラミングと共にモデリングの世界に注力するようになった。デジタルな仕事をする一方で,システムは人が作るものだからその考え方の根底はアナログな世界が基本という考えを持つ。オブジェクト思考(志向ではありません)に大いに興味を持ち,身の回りの世界の成り立ちにシステムとの関係を見い出すことに一種の喜びを感じている。職場では,理論と実践のギャップを埋めるべく,開発現場で無理なく実践できる見える開発の実現と普及に日々奮闘中。


安部田章(あべたあきら)

Part 3

九州工業大宅情報システム研究科博士課程修了後,健康機器および医療機器の開発に従事。最近の興味はプロダクトライン開発に加え,ソフトウェアテストおよびプロセス改善手法で日夜実践適用に取り組んでいる。


山崎進(やまざきすすむ)

Part 4

現在,北九州市立大学で講師を務める。研究テーマは,プロダクトラインの要求定義と品質保証で,経営戦略やマーケティング計画から,品質保証計画を含めたアーキテクチャ構築までを体系化することに取り組んでいる。


樽本徹也(たるもとてつや)

Part 5

利用品質ラボ代表。日本では数少ないユーザビリティ工学の専門家。独立系コンサルタントとしてWebサイトから携帯電話まで幅広い製品のユーザインタフェース開発プロジェクトに参加している。ブログ『人机交互論』で最新情報を発信中。


平鍋健児(ひらなべけんじ)

Part 6(Chapter 24)

UMLエディタ「」開発,アジャイル型開発を実践する「見える化」コンサルタント。翻訳『XPエクストリームプログラミング導入編』,『リーンソフトウェア開発』など多数。「ハート駆動型コミュニケーション」をモットーに,人に感動を与えられるコンサルタントを目指している。毎年世界のアジャイル啓蒙者2名に与えられるGordon Pask Awardを2008年日本で初めて受賞。


前川直也(まえかわなおや)

Part 6(Chapter 25)

業務システム開発後,パナソニックに移籍し,組込みソフト開発,部門のSEPGを経て,再び開発現場に戻る。パナソニックグループ研修所にてアジャイル研修講師も担当。社内だけにとどまらずプロジェクトファシリテーションやアジャイル開発の普及に励んでいる。共著『システム開発現場のファシリテーション』がある。エンジニアでありながら,箏と三味線の師匠という一面も持つ。

パスサポ

多数の情報処理技術者試験対策書籍の発行実績を誇る技術評論社がお届けする,資格試験合格サイト「めざせ! 情報処理試験 パスサポ」が開設されました。

ピックアップ

サクセスストーリーに続く,快適サーバー運用管理のヒント!

データの増大,煩雑な管理,システムダウン,セキュリティなど,迫りくる課題からシステム管理者の負担を軽くするポイントを解説します。

gihyo.jp インフラエンジニア情報局

ネットワークやITにかかわるあらゆる業種で必要とされるインフラエンジニアに向けた技術情報や心構え,その魅力について多角的に紹介。

テストエンジニア ステーション

いま,ITに関わるあらゆる開発業務で注目されつつあるテスト系エンジニアをターゲットにしたコンテンツサイトを展開します。

一行クイックアンケート

gihyo.jpで取り上げてほしいネタは?

※検索はページ右上の検索ボックスをご利用ください。

よく読まれている連載

これでできる! クロスブラウザJavaScript入門

JavaScriptはウェブ制作において避けては通れない重要な言語ですが,JavaScriptに苦手意識を持たれている方は少なくないようです。 その最大の原因がクロスブラウザ対応という課題であり,本連載ではクロスブラウザ対応のテクニックを詳細に解説します。

目指せ!iPhoneアプリ開発エキスパート

2008年7月,日本での展開が始まりたくさんのユーザを獲得しているiPhone。その醍醐味の1つは,オリジナルアプリの開発でしょう。本連載では,iPhoneアプリ開発について,基礎から公開の手順まで,じっくり丁寧に解説します。

C/C++プログラマのためのDTrace入門

よくカーネルのチューニングや解析で活用されるDTraceですが,実はユーザプログラムの開発においても非常に有用です。連載ではC/C++プログラマやテストに関わる方向けにDTraceの使い方を解説します。

Ruby on Railsで作られたプロジェクト管理ツールredMineを使ってみよう!

Ruby on Railsで作られたプロジェクト管理ツールredMineの,環境構築からセッティング,運用方法まで解説します。

先取り! Twitter使いへの道 AtoZ

今,ネットユーザの間で盛り上がりの兆しを見せている「Twitter」。本連載では,どこよりも早く,Twitterの特徴や使い方を紹介します.皆さんも参加して,その魅力を体感してみてください。

小型Linuxサーバの最高峰 OpenBlockS 600活用指南

搭載メモリの増加,CPUクロックの向上など,あらゆる面が強化された期待の新モデルOpenBlockS 600。この記事ではOpenBlockS 600の紹介から,活用するためのさまざまなノウハウを紹介していきます。

きたみりゅうじの聞かせて珍プレー

ソフトウェア開発の現場で体験したトホホな失敗,思わずうなる珍プレーをきたみりゅうじ氏が四コママンガで紹介。みなさんからの投稿もお待ちしてます!

インターネット中継するための,配信のキホン

インターネットを介してリアルタイム中継するために必要な,基本的な配信方法を紹介します。

OpenCVで学ぶ画像認識

OpenCVという便利なツールを使いながら,プログラミング知識以外の専門知識を必要としない形で,画像認識技術について解説していきます。

jQueryではじめるAjax

マッシュアップで良く使われる技術にAjaxがありますが,本連載では,jQueryというJavascriptライブラリを使ってAjaxを実装していきます。

連載一覧