20年位前、1980年代終わりごろから、最近まで、ソフト業界とかその周辺の変遷について、特にソフト開発の立場を中心に見て行く、土日シリーズ「失われた20年-ソフト業界は変わったのか?」その第12回目。
今、1995~99年までについてです。今回は、そのころの開発方法論、その2 構造化分析やDFDについてです。
■情報関連図からDFDに
1980年代から、90年代のはじめころまで、COBOLベースの開発のころは、要求仕様レベルで、機能を書くとき、情報関連図(FIO図っていうのと同じかな?)で書いてました。機能があって、入力、出力を書くものです。
で、これをもっと、機能とデータをはっきり分け、他人でも検証可能な形にしたDFD(データフローダイアグラム)が盛んにつかわれるようになります。
■デマルコの構造化分析
で、このDFD、デマルコが提唱したものです。
今、デマルコっていうと、プロジェクト管理のほうで有名だけど(ピープルウエアをだしたので)
その当時は、構造化分析、DFDの提唱者として有名で、そのDFDの書き方や、構造化分析に関しては、構造化分析とシステム仕様に書かれています。
この構造化分析とシステム仕様は、はっきりいって名著だと思います。オブジェクト指向云々とか言っている人でも読むべきだとは思います。
構造化分析は、まず、今回開発するシステムに対して、外部からの入出力を明確にし、今回作るシステムをおおきな楕円でかいて、そこに入出力を書きます。これをコンテキストダイアグラムといいます。
そして、システムを分割し、分割した1つ1つの機能をプロセスといいます(楕円で書きます)。そして、そのプロセスへの入出力を書いていくわけですが、上位機能で出力しているのに分割した下位機能でその出力が出てこなかったらおかしいという感じにチェックができます。
プロセスというのは、動詞なわけです。機能ですから。
ということで、要件定義から動詞を取り出し、それを機能化して、その動詞に対する目的語、主語などを分析することで入出力が明確化するという、要求仕様に対するツールとなっている点で、このDFDは優れたものなわけです。
■DOAに、受け継がれていく
構造化分析は、これと、ER図を合わせて、DOA開発で使われていきます。
DOAは、DOA+という形で、いまでも残っている開発方法論であり、DFDも、IBMの4つ組セットだっけ?というかたちで、DFDが残っています。
ってことで、次回は、そのDOAとER図について書いてみたいと思います。