どうしても引っかかると思っていたロジックは、データ構造に欠陥がありました。C++だとstlやboostなどを利用しているので、従来のC言語のような入れ子の構造体を検討する場合にイメージが不足しています。
図を書くのが一番なので、一人もしくはペアで白版にマインドマップを書いて洗い出し、その後に図を書いてデジカメでとって保存する、という進め方をしています。
FORTRANで扱っていたファイルとは、構造も複雑になりました。でも、使う人にとっては、I/Fが明確なので楽ですね。自分は両方になるので、下手なI/Fにならないように気をつけてはいますが、後から見れば欲も出てきます。