#システム屋限定怪談2017が流行っているようで・・・

#システム屋限定怪談2017が流行っているようで・・・多少解説など付けてみようと思う。


Excelの計算にへんな癖があるのは本当。わかりやすい例は「10/3*3」が3になったりする。そういうシステムを実装する場合BCD演算を用いて、さらに入力した値の有効桁数も別途管理する必要がある。だがExcelは、2進数固有の演算誤差も発生するのでBCD演算を使っているわけでも無く、10/3は普通に無限小数になるので有効桁数を常に意識する訳でもない、不思議な実装になっている。実際にどのように計算しているのかと言った仕様も公開されていない。
また過去に演算結果が誤っていると言ったバグ(Excelにバグがあった例や、CPUにバグがあった例)もあるので、別の手段で計算結果を検証するのは、必ずしも無駄ではない。


コレはよく見かけた。何故過去形なのかというと、現行バージョンのExcelではサイズ0の図形オブジェクトを作れないからだ。ワークシートに図形オブジェクトを配置した後、行や列を選択して削除をすると、図形オブジェクトはサイズ0に縮小されたまま残ると言う、非常にたちの悪い仕様が原因。一見すると何もないように見えるので作成者も気がつかずに、サイズ0になった図形オブジェクトをセルと一緒にコピーペーストを繰り返し、大量の図形オブジェクトを内包した巨大ファイルのできあがりとなる。


製造したプログラムコードには一定の割合で不具合が含まれ、プログラムの規模に比例して不具合も増える前提から、テスト工程で見つける不具合の数に基準値を設けている。これ自体は悪いことではないのだけどソフトウェア開発が属人的な作業であり誰が作ったかによって不具合の発生率が全く異なってくるとか、使用するミドルウェアや開発言語によって変動すると言う視点がないため、滑稽なことになる。
不具合の報告件数を水増しするという捏造を始めてしまうと、その後も不具合を水増ししたデータを元に基準値を見直すことになり、不具合捏造を繰り返す意外になくなる。


正規表現は文字列の検索置換などを行う場合に複雑な条件を指定するために使う。これを使えるのと、使えないのでは、普通に100倍くらい生産性が変わってくる。と言っても、今時は正規表現を多少は使えるのが当たり前なので、全く使えないエンジニアは普通の1/100程度の能力って事。
その一方で完璧に使いこなせるエンジニアは希少でもある。正規表現を新規に書くのは決して難しくはない。逆に「/^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$」のような記号羅列(ちなみにメールアドレスを表すらしい)を見て、既存の正規表現が何を異図しているのか、仕様通り正しく機能するのかを判断するのはかなり難しい。容易に読み解く能力を持っているなら、かなりとんがった技量を持つエンジニアと言える。


みずほ銀行のこと。2002年の銀行合併をうけて、情報システムの統合に向けたプロジェクトがスタートした。2011年には大規模なシステム障害を起こし、金融庁から業務改善命令を受けており、システム統合が緊急の課題となっている。・・・が、度々の延期と予算増額を繰り返しておりまったく終わりが見えてこない。一応は2018年夏に稼働予定。今ではデスマーチ(死の行進)の代名詞となっており、誰もが避けて通ろうとするブラック案件と化している。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です