カテゴリ:システム・ソフトウェア
酒匂寛「課題・仕様・設計―不幸なシステム開発を救うシンプルな法則」 この本は、「どのようにソフトウェアを作るか」の以前の段階である 「そもそも何を作ればよいのか」 「何を作ればよいかをどのように探せばよいのか」 というシステム開発の上流工程を論じたものになります。 この上流工程を、 「課題」「仕様」「設計」の3つの視点に分けて考えています。 「課題」とは、現実世界で解かれるべき問題のこと。 課題を掘り下げる作業を通して、どのような問題を解決したいのかを明確にする。 「仕様」では、明確になった問題を「いかに解くか」をシステム仕様としてまとめる。 「設計実装」において「仕様」を基に、動くソフトウェアを定義・構築する。 解決すべき「課題・問題」を十分に理解し、そのための「仕様」を整理する前に、 「設計」に飛びつく誤りは強調してもしすぎることはないのですが、 この3つの視点を明確に認識して分析・設計に臨むべきであることについての説明は とても納得感あります。 したがって、対象者は、システム開発をする開発者だけでなく、 解決したい課題を抱えるユーザも対象になります。 また、「仕様」のところで、日本語による要件定義の曖昧さを排除するための記述法として、 OCL(Object Constraint Language:モデル記述のための形式言語)をメインに、 VDM(Vienna Development Method)をあわせて紹介されています。 なかなか面白い試みだ、と思いつつ、また、既にUML1.1以来のセマンティック記述にも使われているそうですが、 実プロ適用には、問題解決者であるユーザさんの理解を得るだけでなく、仕様・設計を推進するプロジェクト・メンバー (もちろん自分自身を含む)へのメリットの理解と転換障壁を乗り越えることを考えると、立ち止まってしまいました。 ・・・いまだって程度の差こそあれ出来てるじゃないか、という反論に対して。 もちろん、この差が大きいのですが^_^; <目次・抜粋> はじめに「役に立つシステムを手に入れるため」 1部──導入 4-3 課題・仕様・設計の関係 2部──課題 6 課題探求(Problem Exploration) 7-2 問題領域分析 7-2-1 業務改善項目の抽出 7-2-2 業務イベント分析 7-2-3 業務ルール分析 7-3 業務モデリング 7-3-1 業務モデルの構成要素 7-3-2 業務プロセスモデルの作成 7-3-3 業務オブジェクトモデルの作成 7-3-4 業務ルールの定義 3部──仕様 9 システム仕様(System Specification) 10-2 アクタプロセス対応表 10-3 4WD(Who-Where-When-What Diagram) 10-4 ユースケースアプリケーション 10-5 ドメインモデル 10-6 業務倫理仕様 10-7 数学的準備 10-8 OCL(Object Constraint Language)の利用 10-9 VDM(Vienna Development Method)の利用 10-10 検証(Validation)作業 4部──設計 12 設計実装 12-1 システム仕様と設計実装 12-2 アーキテクチャの検討 12-3 実装フレームワークと上流工程 12-4 設計実装の正当性検証(verification) 終わりに 最後に、 「ソフトウェア開発現場にいる人のためのブックガイド」が紹介されており、 とても参考になります。 マイケル・ジャクソン「ソフトウェア要求と仕様」 マイケル・ジャクソン「システム開発 JSD法」 バートランド・メイヤー「オブジェクト指向入門」 マーチン・ファウラー「アナリスシ・パターン」 G.M.ワインバーグ「コンサルタントの秘密」 J.フィッツジェラルド、P.G.ラーセン「ソフトウェア開発のモデル化技法」 マーチン・ファウラー「UMLモデリングのエッセンス」 戸田山和久「論文の教室」 野矢茂樹「論理トレーニング」 S.I.ハヤカワ「思考と行動における言語」 お気に入りの記事を「いいね!」で応援しよう
[システム・ソフトウェア] カテゴリの最新記事
|
|