出版社/著者からの内容紹介
悩めるプログラマー、SE必読!! 君のエンジニアライフを救う答えはここにある! ユースケースをいきなり書こうとして悩む前に! 「どのようにソフトウェアを作るか」にたどり着く前の段階「何を作ればいいのかをどのように探せばいいのか」について、必要不可欠な視点「課題・仕様・設計」に着目して解説した、システム開発のための定番書!
抄録(「電子書店パピレス」より)
5|例題:病院予約会計システム
システム構築の例題として取り上げるのは、ある大学の病院予約会計システムです。繁盛する大病院の実際のシステムはここに取り上げるような牧歌的なものではありませんが、ここでは説明のために機能を絞ったシステムとして取り上げていきます。
5-1 問題の背景
ある大学病院では手作業により、全てのワークフローが遂行されていました。
病院は繁盛し、患者は増えたのですが、ある日特定の患者を受け付けたまま、診察室に呼び込み忘れるという事故が起きてしまいました。待ち時間に痺れをきらした患者さんが受付にねじ込んできたのです。手作業によるワークフロー管理の破綻が明らかになりました。
それを契機に、問題点を整理し、管理を容易にする「システム」の開発をすることになりました。
5-2 原始要求インタビュー
そもそもの動機は、受付後の呼び出しミスをなくそうという話でした。その部分を解決するだけなら銀行ロビーにあるようなチケット配布システムを検討すればよさそうです。しかし病院側の担当者にインタビューを行ううちに、業務改善のために、予約から実際の受付、そして会計までを含んだ一連の事務処理を計算機などの力を借りて効率的に処理したいという要求があることがわかってきました。
そこで解くべき問題の全体を概観するため、まずは業務改善項目の洗い出しと、病院内で起きるビジネスイベントの分析を行い、新しいビジネスモデルを構築することになりました。
すなわち「課題の探求」が始められることになったのです。
6|課題探求(Problem Exploration)
6-1 課題探求とは
課題探求では、これから構築しようとするシステムの「仕様」を決めるために必要な、情報の収集と問題の抽出を行います。何が問題の中心かを分析する段階と、分析結果をもとに、新しい解が埋め込まれた世界を定義する段階と言い換えてもよいでしょう。
ここでは課題探求を2 つの段階に分けて考えます。
●問題領域分析
●業務モデリング
ここで説明する「課題探求」という活動は、一般的には「要求定義」という言葉で表現される活動に相当します。それでもここであえて「課題探求」という表現を使う理由は、問題領域の分析、定義、検証のサイクルが何度も繰り返されて洗練されていく様子を表現したかったからにほかなりません。
6-2 課題探求の目標
以下に課題探求の目標を簡単にまとめておきましょう。詳しい作業の内容は例題を通して説明します。
●課題探求では、問題領域分析と業務モデリングにより、解くべき問題の姿を明らかにする
●問題領域分析では、主要な業務イベントを識別したり業務ルールを抽出したりする作業の他に、現状での業務改善項目の抽出も併せて行う
●業務モデリングは、業務オブジェクト、業務論理、業務ルールの定義を元に業務のあるべき姿を記述する
●問題領域分析を受けて業務モデリングは必要な粒度厳密さまで繰り返し洗練され、検証される。十分に検証された「モデル」は「システム仕様」の入力の一部としてリリースされる
●業務用語集の作成を行う