本書は、ソフトウェア開発の入門書として学生・新入社員などから幅広い支持をいただいた『ずっと受けたかったソフトウェアエンジニアリングの授業』の姉妹書で、ソフトウェア開発プロセスの中でも特に重要とされる「設計」にフォーカスした入門書です。ビジネスの変化が激しい現代では、ソフトウェア開発者は多岐にわたる多くのことを日々学ばなくてはなりません。その状況において、本当に使えるスキルを身につけるためには、“基本”を押さえておくことが大切です。
本書は、ソフトウェア設計における普遍的な考え方やものの見方、意思決定の方法など、その場しのぎではなく真に必要とされる知識の“基本”をわかりやすく解説しています。紙面はイラストや語り口調を用いて、初学者の方にも取り組みやすいような工夫をこらしています。ITエンジニアを目指す方はもちろん、ITエンジニアの育成に携わる方、ITエンジニアとして基本を再確認したい方などにもおススメです。
序章 学習を始めるにあたって
登場人物
本書の目標
全体の概要
ジャクソン先生の技法
腕時計事例の仕様書ダウンロードについて
第1章 構造
1.1 構造とは何でしょう?
構造と二項有向グラフ
木構造 017 1.2 データ構造とプログラム構造
データ構造
プログラム構造
1.3 3基本構造
3基本構造の定義
ジャクソン構造図
3基本構造におけるデータ構造とプログラム構造
1.4 正規表現とストリーム
正規表現
ストリームと文法
授業後の質疑応答
補講
正規表現とパターン記述
第2章 JSP(Jackson Structured Programming)
2.1 プログラムとは何でしょう?
2.2 JSPの基本
ステップ1 入出力データ構造記述
ステップ2 入出力データ対応定義
ステップ3 プログラム構造導出
ステップ4 プログラム演算割当て
2.3 仕様とデータ構造
2.4 3つの構造不一致
順序不一致(ordering clash)
境界不一致(boundary clash)
脈絡不一致(interleaving clash)
授業後の質疑応答
補講
構造化プログラミングの流派
トレーサビリティ(仕様と実装)
第3章 複合設計法
3.1 機能とは何でしょう?
複合設計法の手順と規準
機能と関数
トップダウンとボトムアップ
3.2 データフローの基本
フロー
文脈図
データフロー図
3.3 モジュール化
分割の種類
3.4 モジュール構造
モジュールの定義
階層
WhatとHow、外部と内部、仕様と実現等
授業後の質疑応答
補講
要件定義と機能
第4章 モジュール
4.1 モジュールとは何でしょう?
マイヤーズ先生の定義
パルナス先生の定義
産業発展とモジュール
4.2 情報隠蔽とカプセル化
Modula-2のモジュール化
4.3 仕様と実装の分離
モジュールとインタフェース
抽象化
4.4 モジュール独立性(強度、結合度)の基本
モジュール強度
モジュール結合度
授業後の質疑応答
補講
モジュールとクラス(プログラミング言語の系譜)
社会的モジュール
第5章 振舞い...
5.1 振舞いとは何でしょう?
データフローモデルの適用
時間的な順序について
5.2 状態とイベント
状態遷移モデル
ミーリ型とムーア型状態遷移モデル
5.3 ステイトチャートハイグラフ
ステイトチャートの定義
5.4 並行プロセス
ステイトチャートと並行プロセス
授業後の質疑応答
補講
世界の認識とイベント(共有事象)
ジャクソン先生の慧眼
第6章 JSD: Jackson System Development
6.1 システムとは何でしょう?
プログラムとシステム
JSDのステップ
6.2 ユーザは要求を知らない
JSDステップ1 実体・動作抽出(Entity Action Step)
JSDステップ2 実体構造化(Entity Structure Step)
6.3 仕様化と実現
JSDステップ3 初期モデル作成(Initial Model Step)
JSDステップ4 機能定義(Function Step)
6.4 動的なモデルと静的なモデル
JSDステップ5 タイミング制約(Timing Step)
JSDステップ6 実現(Implementation Step)
授業後の質疑応答
補講
オブジェクト指向とJSD
終章 学習の最後に
全体のおさらい
ほかの考慮事項
実世界にある問題の扱い方
付属データはこちら
内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。
正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。
本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。
subuta さん
2016-09-26
腕時計の操作を例にした状態遷移図の説明が面白かった。長い文章で技法の理念を解説するよりも、こうした具体例をいくつも並べてくれれば、形からでも入っていけると思うのだが、探せば事例集のような本もあるのだろうか。
がりがり君 さん
2014-02-08
難しかったけど、設計手法を1つでも知ってるのと知らないのでは大きな差があると感じる。
わたる~ん さん
2012-09-29
さらっと流されすぎていてジャクソン先生の本を読みたくなったけど、貧乏だから買えないテヘッ