システム開発における設計の解説書が14年ぶりにリニューアル。
エンジニアがシステムの設計を「はじめてやり抜く」ために必要な基本知識を紹介します。
プログラミングの仕事をひと通りマスターし、
その前工程である「設計」に挑戦しようとするエンジニアには、
いくつかの乗り越えなければならない壁が立ちはだかります。
〇アプリケーション設計をどうするのか
〇データベース設計をどうするのか
〇画面・帳票設計をどうするのか
〇外部システムとの接続方式をどうするのか
〇アーキテクチャ設計をどうするのか
本書では、こうした課題の事例を示しながら、
システムをゼロから作り上げるための
実践的・普遍的なノウハウを解説しています。
改訂にあたって、取り上げる開発手法やツールもアップデート。
アジャイルやマイクロサービスに関する説明も新たに追加しました。
将来に向けたステップアップや、開発リーダーとしての活躍を目指す
若手エンジニアの方にぜひ手に取っていただきたい1冊です。
〈目次〉
●導入編
第1章 はじめての設計をやり抜くために
●設計編
第2章 設計の目的
第3章 外部設計の手法
第4章 内部設計の手法
●アーキテクチャ編
第5章 アーキテクチャの目的
第6章 アーキテクチャ設計のアプローチ
第7章 本当に設計は必要か
「導入編」では、エンジニアとしてのやりがいやキャリアについて述べます。その中で、キャリアアップのために必要なスキルと設計スキルの関係を説明します。
「設計編」では、これから設計者として活躍していく人のために、具体的に、①設計の目的、②設計するために最低限必要なテクニック、③設計におけるコミュニケーション、について説明します。
「アーキテクチャ編」では、設計編で設計の基礎を学んだ人が、さらに難易度の高いシステムでも設計できるようになるために、アーキテクチャという考え方を説明します。
●導入編
第1章 はじめての設計をやり抜くために
・設計者への道
・エンジニアとしてのやりがい
・エンジニアのキャリア
●設計編
第2章 設計の目的
・何を設計するのか
・開発プロジェクトの進め方
・開発プロセスの選択と進行
・設計の目的とは
・良くない設計
・設計のアプローチ
第3章 外部設計の手法
・外部設計とは
・必要な業務知識
・ユースケース分析
・概念モデリング
・画面設計
・外部システムI/F設計
・バッチ設計
・帳票設計
・データベース論理設計
・NoSQLデータベース設計
・非機能要件定義とシステム設計
・システムインフラ設計と配置設計
第4章 内部設計の手法
・内部設計とは
・画面プログラム設計
・ビジネスロジックプログラム設計
・データベースプログラム設計
・データベース物理設計
・テストのための設計
・開発環境の構築
・開発標準の策定
●アーキテクチャ編
第5章 アーキテクチャの目的
・アーキテクチャとは
第6章 アーキテクチャ設計のアプローチ
・業務アプリケーションの洞察
・オブジェクト指向設計
・サブシステム分割
・レイヤー(直交化)
・処理の共通化(DRY)
・設計とプログラムのトレーサビリティ
・依存性の注入(DI)
・マイクロサービス
第7章 本当に設計は必要か
・設計の意味を改めて問う
・設計が不要な理由
・設計のこれから