勤めている会社の組込みソフトウェア開発で、matlab simulinkを使ってモデルベース開発をしているメンバがいる。
simulinkでは、scratchやレゴのmindstormのようにブロック図を書くと、ソースコードが自動生成される。
それを聞いたとき、直接ソースコードいじれないなら細かい調整が利かなさそうという印象と、プログラミングしないエンジニアってろくなもんじゃなさそうという印象を持った。
そこから気になってモデルベース開発を調べてみると、ブロック図でシステムを作り込むので設計者の意図が他メンバに共有されるハードルが低かったり、システムに問題が発生したらブロック図つまり上流工程で修正させるので場当たり的なコード修正による時限爆弾のようなバグが増えにくかったり、確かに感心するようなメリットがあることもわかった。
場当たり的なコード修正が後々の大きな問題となってプロジェクトの工数を食いつぶす経験がある諸兄は多いと思う。
モデルベース開発みたいな、設計成果物を与えればあとはAIがプログラミングしてくれる未来はすぐそこまで来てるのかもしれない。
それはそれで面白そうだと思う反面、いままで培ったプログラミングスキルが不要になるのは寂しいなと老害のような気持ちも湧いてくる。
理系になると「メンバー」も「メンバ」になるのか……。(SWはソフトウェアなのだろうか?)