フローチャートのヒント
- 図の受け手を常に意識し、そのニーズに合わせた適切な情報量で図を作成しましょう。フローチャートの最も重要な目的は、情報を明確かつ正確に伝えることです。
- 作図対象のプロセスに複数のチームや部門が関わる場合には、それぞれの役割分担や責任範囲がひと目で分かるよう、スイムレーン図の使用を検討してみましょう。
- ページ内・ページ外結合子を活用して図をスマートに整理することで、フローを論理的に描き出すことができます。これにより、図が複数のページに及ぶ場合でも、プロセスの流れを分断せずに分かりやすく表現できます。
フローチャートの歴史
フローチャートが業務プロセスの記録に使われるようになったのは、1920年代~1930年代のことです。1921年に、生産管理技術者のフランク・ギルブレスとリリアン・ギルブレスの夫妻が、「フロープロセスチャート」をアメリカ機械学会 (ASME) で紹介しています。 1930年代初頭には、工業技術者のアーラン・H・モジェンセンが、自社の業務効率向上をテーマとした会議でのプレゼンテーションでギルブレスのツールを使用しています。 1940年代には、モジェンセンの薫陶を受けたアート・スピナンガーとベン・S・グラハムの両氏がこのメソッドをより広範に普及させています。スピナンガーは、Procter and Gamble に業務の簡略化手法を導入しています。Standard Register Industrial の取締役であったグラハムは、フロープロセス図を情報処理に採用しました。1947年に、ASME は、ギルブレス夫妻の業績から派生したフロープロセスチャートのための記号システムを採用しています。
また、1940年代後半には、ハーマン・ゴールドスタインとジョン・フォン・ノイマンがコンピュータープログラムの開発にフローチャートを用いました。その後まもなく、フローチャートはあらゆるプログラムやアルゴリズムの設計における定番ツールとして広く普及します。フローチャートは現在でもプログラミングに用いられていますが、より詳細なレベルを表し、最終製品に近づくことができるよう、また、人間が読解できるように単語とコード言語を組み合わせた擬似コードが用いられるのが一般的です。
日本においては、製造業における品質管理(QC)の取り組みで世界的に知られる石川馨(1915年〜1989年)が、品質管理の重要な手法の一つとして、ヒストグラムやチェックシート、現在では「フィッシュボーン図」とも呼ばれる特性要因図などと共に、プロセスを視覚化する補完的なツールとしてフローチャートを挙げています。
コンピュータープログラミング・アルゴリズムのためのフローチャート
視覚的なデータフローの表現であるフローチャートは、プログラムやアルゴリズムを作成し、他のメンバーに説明したり、共同作業を行う上で役立ちます。アルゴリズムフローチャートを使用すれば、自動化された処理のコーディングを開始する以前に、プログラムの背景となるロジックを表現することができるようになります。大局的な思考を整理する上で有用であり、コーディングの段階ではガイドとして道案内役を果たします。具体的には、フローチャートで以下のような内容を実現することができます。
- コードの成り立ちや仕組みを示す。
- プログラム内でのコード実行を可視化する。
- ウェブサイトやアプリケーションの構造を示す。
- ウェブサイトやプログラムでユーザーが取る行動の道筋を理解する。
プログラマーは、しばしば、人間が読解できるよう自然言語とコンピューター言語を組み合わせた擬似コードを書くことがあります。フローチャートよりも詳細な記述を行い、フローチャートの代わりとして、あるいは実際のコードへの次のステップとして役立つものです。
コンピューターソフトウェアで用いられる関連図には、以下のようなものがあります。
- 統一モデリング言語 (UML): モデリングのためのソフトウェアエンジニアリングで使用される汎用言語です。
- NS チャート (Nassi-Shneiderman 図): 構造化プログラミングに使用されます。1972年にニューヨーク州立大学ストーニーブルック校でこの図を開発したアイザック・ナッシとベン・シュナイダーマンの名を冠したものです。ストラクトグラムとも呼ばれます。
- DRAKON 図: DRAKON はアルゴリズムビジュアルプログラミング言語で、フローチャートを生成するために使用されます。