特許技術者のためのフローチャート入門 応用編

特許技術者のためのフローチャート入門
有限会社 ワッソパテントサービス 斎木隆士
応用編
ソフトウェアや制御のフローチャートは複雑でステップ数(手順の数)のかなり
多いものがあります。しかし、特許図面ではページの制約や文字の大きさの制約も
ありますので、出来るだけ整理して、見やすい形に直すことが出来るようになり
たいものです。たとえば60ステップもあるようなフローチャートを分割すると
3図あるいは4図にまたがってしまうかもしれません。そうするともはやページを
めくっていれば理解できる限界を超えてしまいますので、プリントして並べて
みないと全体を把握できないという結果になります。そこでこういった時に特許
技術者は、フローチャートをサブルーチン化したりユニット化したりすることに
よってフローチャートを読みやすい形に整理する必要があります。
プログラムの世界でも優秀なプログラマーの書いたフローチャートほどその内容は
シンプルにわかりやすく整理させているものです。これは技術翻訳の世界でも同じ
ですね。日本語の長く分かりにくい文書を如何に簡潔で易しい単語を用いて翻訳
するかが重要なのですから。そんなのはエキスパートの世界で、私には関係ない
と思われるかもしれませんが、これらは特別すごいことをやっているわけではなく
基本に忠実に仕事をこなした結果にすぎないのです。まずは簡単なものから確実に
理解していくことが大切です。
それでは、いくつかの例題をあげながら実際にフローチャートを作ってみましょう
ステップ1
それではここで、足し算のプログラムを例題として考えてみましょう。
プログラムのアウトラインは、プログラムをスタートすると画面に入力ウインドウ
を表示して、オペレータがデータを入力すると答えを表示するというシンプルな
内容です。ここではフローチャートの記号は特許図面で一般に用いられる端子と
処理と判断のみの簡略方式で組んでみます。
【図1】
開 始
S1
初期化
S2
S9
NO
文字が入力
されたか?
入力画面の表示
YES
NO
文字は数字か?
YES
S4
NO
文字が入力
されたか?
S10
S3
数字の入力要求
の表示
S8
数字の入力要求
の表示
S11
B←入力データ
S12
YES
文字は数字か?
YES
エラーメッセージ
の表示
S5
NO
S13
C←A+B
S6
A←入力データ
S14
答えCの表示
S7
エラーメッセージ
の表示
S15
YES
もう一度
やりますか?
NO
終 了
ステップ2
ステップ1ではプログラム自体はシンプルなのですけれどもフローチャート
はかなり長いものになってしまいましたね。これでは特許図面の方式に合わせる
と2図に分割せざるを得なくなります。
【図1】
【図2】
B
A
開 始
S1
初期化
S2
S9
NO
文字が入力
されたか?
入力画面の表示
YES
NO
文字は数字か?
YES
S4
NO
文字が入力
されたか?
S10
S3
数字の入力要求
の表示
S8
数字の入力要求
の表示
S11
B←入力データ
S12
YES
文字は数字か?
YES
エラーメッセージ
の表示
S5
NO
S13
C←A+B
S6
A←入力データ
S14
答えCの表示
S7
エラーメッセージ
の表示
S15
B
A
YES
もう一度
やりますか?
NO
終 了
ステップ3
ステップ2では単純にフローチャートを2分割したのですがシートが別れて
しまうと全体構成が分かりにくくなってしまいますね。そこでフローチャート
をよく見て下さい。同じような手順が繰り返して使われていませんか?
このような部分に注目して少し整理して見ましょう。
【図1】
【図2】
開 始
数字の入力開始
S1
初期化
S21
数字の入力要求
の表示
S2
入力画面の表示
S3
数字の入力
文字が入力
されたか?
YES
S4
A←入力データ
文字は数字か?
YES
S5
数字の入力
S22
NO
S23
NO
S24
エラーメッセージ
の表示
リターン
S6
B←入力データ
S7
C←A+B
S8
答えCの表示
S9
YES
もう一度
やりますか?
NO
終 了
このようにS3とS5の数字の入力手順の
部分をサブルーチン化して図面を分割する
とより全体が分かりやすくなりますね。
ステップ4
いかがですか?これであなたも読みにくいフローチャートを整理することが
できますね。ではこのプログラムを足し算だけでなく引き算、かけ算、割算が
できるようにして実施例を追加したいと頼まれたらどうしますか?
それではやってみましょう。
【図3】
開 始
S1
初期化
S2
入力画面の表示
S3
計算方式の入力
S4
数字の入力
S5
A←入力データ
S6
数字の入力
S7
B←入力データ
S8
計算方式は?
足し算
C←A+B
S9
引き算
S10
かけ算
C←AーB
S11
C←A×B
割算
S12
C←A÷B
S13
答えCの表示
S14
YES
もう一度
やりますか?
NO
終 了
S3計算方式の入力の
サブルーチンは皆さん
考えてみて下さい。