某案件の打ち合わせで、要求要件の整理のためにヒアリング。お相手はハードエンジニアなので、話を聞くとやはり基本は、現物の回路図とその動きに捉われる。
目的としては、ブロックレベルの機能定義なので、既存の回路図という実装は、どうでも良いとは言わないが、あまり重要視していない。機能ブロック間でやり取りする信号の種類と目的、その動作、要求特性などを、少しずつ聞き出して、ようやくすっきりした。結果としては、必要な信号は少なしい、その要求要件も想定内だった。
こういう、プロックレベルでの機能定義や配分、機能ブロック間の信号のやり取りや振る舞いを整理するのは、システム設計の基本だ。しかし、実装を知りすぎると、それにとらわれすぎてしまい、仔細なことに引っかかってしまうことがある。
大昔、最初にFPGA(まだPLCとか言われて時代)を使った設計したころ、当時は回路図入力が蔓延っていて、VHLなどもベンダー提供の言語で、頭のなかにフリップフロップをイメージしないとならなかった。
僕は、回路設計だって実装を頭から一旦抜いて、ブロックでモノを考える癖があったので比較的スムーズに言語設計にも入っていけた。
やはり、回路頭脳ではなく言語頭脳のほうが、システム設計には適しているのではないだろうか?
午後からは、EU-Japanの協同研究の東京合同ミーティング。ヨーロッパからの来日したメンバーと日本のメンバーで、総勢20人近くで初日のブリーフィンングをしたあと、八重洲のJPtowerで懇親会、二次会も盛り上がって無事に1日目が終了。