フローチャートとは
ここではフローチャートとはそもそも何を指しているものなのかについて解説しています。フローチャートといってもプログラムであったり業務処理であったり様々な用途があります。 それぞれ呼び名も粒度も違うフローチャートとなるので、まずはここを理解していくところから始めたいと思います。
Advertisement
フローチャートは処理手順を図にしたもの
フローチャートとはそのまま訳せば「流れ図」となりますが、一般的には処理手順を図にしたものをフローチャートと呼ばれます。
この「処理」される課程をプロセスと呼び、このプロセスをフローチャート形式に図式化することが多いです。
Advertisement
フローチャートにおける処理とは
フローチャートにおいて処理とは一体何を指すのか考えてみてください。
恐らくITの開発経験者であればプログラムの処理の指すことを想像し、その処理の流れを表しているものをフローチャートと想像されるかと思います。
この処理の流れをフローチャート化したものを、プログラムフローチャートと呼びます。
プログラムフローチャートはプログラムの論理的な流れを図式化したものです。
プログラムの言語問わず、どのプログラムでも同じフローチャートで表すことができます。
粒度が粗くてざっくりと書かれた、概要レベルでシステムの流れを表したフローチャートをゼネラルプログラムフローチャートと呼びます。
一方でプログラムの計算式レベルまで落とし込まれた詳細のフローチャートをディテールプログラムフローチャートと呼びます。
Advertisement
一方で、プログラムとは関係なく私達が仕事上進めている作業自体も処理と呼びます。
こちらはシステムフローチャートと読んだり、業務フローチャートと読んだりします。
仕事をするのに必要な作業の流れの図となります。
もちろん処理の流れでプログラムフローチャートで表される部分も出てきますが、こちらの場合は処理図形1つに省略されることが多いです。
業務の流れについても、粒度が粗いフローチャートをゼネラルシステムフローチャートと呼び、細かいものをディテールシステムフローチャートと呼びます。
プログラミングでも通常の業務でもどちらも「処理」と呼ばれますし、これらの一連の流れを表す際には粒度の違いはあれど、どちらもフローチャートとして表すことができます。
Advertisement
自動販売機で例えてみると
システムフローチャート、業務フローチャート(業務ではありませんが)で言えば、
1.硬貨を入れる
2.欲しいドリンクのボタンを押す
3.取り出す
の3ステップのフローチャートで表すことができます。
一方、プログラムフローチャートではもっと複雑です。
(これでもかなり端折っていますね)
Advertisement
1.硬貨が投入される
2.金額判定
3.硬貨の合計が商品Aの金額以上か否かを判定
4.商品Aの在庫が1以上かを判定
5.どちらもYesであればフラグを立てる
6.商品Bの・・・(繰り返し)
7.フラグが立っているもののボタンライトをON
8.入力受付
・
・
インプットされた情報(ここでは硬貨の投入ですね)を起点にさまざまな状況の判定、条件の判断を繰り返して処理が進んでいきます。
実際に自動販売機1つとっても、ここで挙げた何倍もの処理を瞬時に行っています。
どちらも共通するのが、インプットがあり、アウトプットがあり、その間には処理=プロセスがあるということです。
そして、これらはどちらも図式化、つまりフローチャートとして記述できます。
Advertisement