DFD作成方法

1.DFDの構成要素
それでは、今回はDFDの作成方法についてご説明させていただきたいと思います。DFDを構成する要素というのは4つありまして、1つはファンクションです。

出典:http://www.soumu.go.jp/main_sosiki/joho_tsusin/top/local_support/pdf/cio_text_ps_2-1.pdf

ファンクションとは何かというと、処理の内容そのものです。DFDを作成するケースというのは、複雑で大規模なシステム開発を行っていく際に、大きな処理のかたまりを細かく分けていく段階で使用されることが多いです。従いまして、1つのファンクションというのは大きな処理のかたまりを表している場合が多いです。

その次に、ターミネータについて解説をさせていただきます。ターミネータとは処理の「始点」と「終点」を表します。下図では、Aグループから処理が開始して、最後はBグループで終わるということを表しています。

出典:http://www.soumu.go.jp/main_sosiki/joho_tsusin/top/local_support/pdf/cio_text_ps_2-1.pdf

次は、矢印について解説をさせていただきます。矢印は処理の流れを表しています。上図でいうと、「始点」として、Aグループから処理が始まり、「A1」の処理、「A2」の処理、「A3」の処理と順次処理が行われて、最終的にBグループで処理が終わることを表しています。

最後が、ファイルです。ファイルとは、データの蓄積を表しています。DFDは業務システムの設計によく利用されます。業務システムの設計は、処理とデータに着目して内容を整理していきます。つまり、処理がどう流れているかということと、データをどう整理するかということです。データを整理することにより、テーブルおよびデータベースの設計ができます。ここでいうファイルというのは、最終的にテーブルおよびデータベースとなります。

2.なぜ図で表現するか
ちなみに、DFDという図で内容を整理していく理由は何でしょうか。実際に作成する立場でいいますと、図を書くのは大変です。いっそのこと、文章でずらずれと記載した方がよっぽど早く記載ができます。しかし、見る立場でいうと図というのはパッとみて分かりやすいということがあります。従って、見る立場を重視するなら、図で表すというのがよいかなと思います。DFDに限らず、システムの仕様書では図で内容を記載することが多いです。従って、図で内容を表現し、読み手に分かりやすい文章を残そうという気持ちで取り込むと設計書を書くのも上達が早いのではないかと思います。

フローチャートも処理の流れを図で表しています。学校とかで勉強しているとフローチャートはよくでてくると思いますが、実際業務の中でこういうフローチャートを書くということは私の経験ではあまりありません。

出典:https://ferret-plus.com/7102

特に業務システムの場合には、データをどこから持ってきてどこに表示するかなどデータの対応関係を記載しなければなりません。そのため、大量に項目間の対応関係の表記を行う必要があるため、上図でいうと「酢飯を手にとる」といった1つの処理内に大量の項目の対応関係を記載することになります。1つの処理が大きくなるとフローチャートは大変に見にくいものになってしまいます。

では、どのようにするかというと、フローチャートで記載していることを文書で書いていくというのが多いのではないかと思います。それでは、フローチャートは役立たないかというとそういうことはありません。処理というのはフローチャートで表現されている3つの要素である順序、選択、繰り返しが明らかになればプログラムというのは成立します。

つまり、どのような処理手順を考えればよいかというトレーニングにフローチャートは大変に役に立つわけです。また、処理を文章で記述する際にも順序、選択、繰り返しを意識して記載すると、処理の流れがわかりやすくなるのではないかと思います。

3.表現方法は統一する
下図を見ていただきますと、上図の表記方法とほぼ一緒なのがわかります。

出典:http://www.dab.hi-ho.ne.jp/sasa/hyoryuki/dfd/

データの保存先とか保管元というのは先ほどの図では2重線で表記されておりました。しかし、こちらの書き方では、コの字の逆のような図形で書かれています。表現しようとしている内容は一緒なのですが、人によって書き方がほんの少し分かれることがあります。

システム設計とかシステム開発を行っていく上で、いわゆる標準化というのが大変に重要になってきます。標準化とは皆が同じ記載の仕方、同じ仕事の仕方を行っていくことです。そもそも、どこまで標準化するべきかという議論もありますが、できる限り表記方法などは予め決めておいた方がいいと思います。

DFDの作成方法に話を戻します。処理というのは、シンプルに考えると入力があって、処理があって、出力があるという形です。従って、下図のように入力がないような形というのは記載がおかしいです。

出典:http://www.soumu.go.jp/main_sosiki/joho_tsusin/top/local_support/pdf/cio_text_ps_2-1.pdf


出典:http://www.soumu.go.jp/main_sosiki/joho_tsusin/top/local_support/pdf/cio_text_ps_2-1.pdf

下図の一番左側の列を見てください。最終の「保存先1」という箇所はデータストアを表していますが、データストアに対して矢印が向かっている場合にはデータを書き込んでいることを表しています。逆にデータストアから矢印が出ている場合はデータを読み出しているということを表しています。データストアに対して、書き込みも読み出しも行っている場合には矢印を両端につけます。

データを読んでいるのか、書き込んでいるのかは大きな違いですし、特に業務システムの全体像をつかむには重要です。従いまして、DFD記載の際には特に間違いないように記載する必要があります。

出典:http://www.dab.hi-ho.ne.jp/sasa/hyoryuki/dfd/

下図の赤で囲ったところに、流れ図の矢印というのはプロセスの実行順序とか制御順序を表しています、と記載されている通り、下図の右側のように各々のプロセスの入力とプロセスの出力を記載はしません。つまり、フローチャートのように細かい分岐までは書かないということです。

出典:http://www.dab.hi-ho.ne.jp/sasa/hyoryuki/dfd/

4.おわりに
DFDそのものは非常にシンプルです。シンプルなので割ととっつきやすいと思うかもしれません。ただ、実際はこれを使ってどう処理を表現できるかということです。DFDはあくまでもシステムを作るために書いていくので、最終的なシステムを作ったイメージがないと実際はなかなかうまくDFDが書けません。

いきなり設計の業務ができるかというと、実は中々難しくて、やっぱりまずはプログラミングを勉強してもらって、プログラミングが分かってくると、設計の段階でそれをプログラミングする際にはこうなるのだろうなという想定を思い浮かべながらできるとよいです。

SE、ITのエンジニアのキャリアアップを考えると、下図のウォーターフォールの中で言う製造の作業を経験する必要があります。下図では「開発実施」の中のコーディングの部分に該当します。

出典:http://www.soumu.go.jp/main_sosiki/joho_tsusin/top/local_support/pdf/cio_text_ps_2-1.pdf

プログラミング部分をある程度経験したら、そこから順に内部設計、外部設計、要件定義と順に上流工程に上がってくるように作業を担当していくという形になるのが一般的かと思います。いわゆるSEといった時、昔の古典的なSEというと、設計を担当する人がいわゆるSEに該当します。ただし、ただ、先ほど述べたように、プログラミングができないと正しい設計はできないです。なので、まずはきちんとプログラムが書けるようになって、そこから順を追って設計書を書けるようになっていくという形で考えてもらうといいかなというふうに思います。


弊社は、主に中小企業様向けの業務システム開発ホームページ制作パソコンサポートコンサルティングなど、ITに関する様々なサービスを格安で提供しております。
特に小規模な業務システム開発の分野では、主にAccess(アクセス)を利用した柔軟で効率的な開発を得意としており、関西でダントツの実績があります。

業務システム開発に関しては、以下のような内容で対応しております。
・顧客管理などの単機能なシステムは20万円~50万円が多い。
・受注から入金まで業務全体システムで100万円~350万円ぐらいが多い。
・Access(アクセス)-SQLserverで大規模システム開発は350万円~1500万円が多い。

詳細は、Access(アクセス)、Excel(エクセル)、WEBサイト製作による小規模システム開発のページをご参考ください。

大阪商工会議所からの推薦を受けて、中小企業庁運営の中小企業支援事業に専門家として登録されました。
通称ミラサポ。3回まで無料でのコンサルティングが可能です。ご興味がある方はご連絡ください。
https://www.mirasapo.jp/


(近畿大学にて非常勤講師も務めたバリバリの技術屋が経営する会社)

Access(アクセス)Excel(エクセル)SQL server バーコード Webシステムを使った業務システムのシステム開発の無料相談を受付中

株式会社 アイライト 担当:内藤 響(Naito Ko)
〒550-0005 大阪市西区西本町1丁目5番9号 日清ビル 5F
(四つ橋線 本町駅 24番出口すぐ)
まずは、メール・電話でご相談ください。
TEL : (06) 6599-8890 E-mail : info@ai-light.com
お電話が混んでいる場合が多いので、つながりにくい場合は
TEL : (06) 6535-5117までお願いします。


株式会社アイライト公式HP
https://www.ai-light.com/
(Access・Excelでシステム開発会社を探されている法人様はこちら)

Access・Excelに関する情報を掲載(Access・Excel倶楽部)
https://www.ai-light.com/accessclub/

ITでお困りのことがございましたら、まずはご相談(コンサルティング)
https://www.ai-light.com/itconsulting.html

格安ホームページ制作所
https://www.ai-light.com/hp2

YouTubeチャンネル(無料動画配信中)
https://www.youtube.com/user/ailightcom

ニコニコチャンネル(月額固定で見放題)
http://ch.nicovideo.jp/ai-light


Post navigation