世の中にはアホな考え方があるというか、どうしてこうなるのかということがよくある。
要するに非効率的なことだ。
デジタル庁ができる前はデジタル化はすべての地方自治体にまかされていたらしい。だから、同じ仕様で各自治体ごとに作っていたということだ。
当たり前なのだけど、デジタルなものって複製ができるし、同じものなら作らなくてもいい。サーバーを一箇所にしてしまうという手もある。距離は関係ないから、東京にあろうが、大阪にあろうが、ユーザーには利便性はまったく関係ない。これがデジタルの利点だ。
OSがかわってもその周りだけ作り直すだけで、ほとんど作り直す必要はない。要するに開発というのは一度作ってしまうとほぼ直さなくていいのだ。仕様が変わらない限り。
ただ、仕様が変わることはよくある。最初に作った仕様がちゃんと考えていなくて不具合がおこることもある。たとえば、住所は100文字あったらいけるだろうと思ったら、それ以上ある場合だ。こんなのは初歩も初歩のレベルだが、たまにある。
そんなこんなで古い時代に作ったものは開発者もわからない状態になっていることもある。そのため、そのシステムを理解するとか解析することから始めることもあるのだ。
納品されたが全然動かないので見てくれという仕事を請け負ったことがある。こっちもできているもんだから、なんだ?これ?何やってんだ?と思う箇所があって、おっかけていくと意味がわからない。つまりは出来ていなかったのだった。出来ていないものを出来ていないと分析するのは結構難しいと思った。
話はそれたが、仕様を決めて作るのだから、その仕様が完全であること。完全でなければ拡張性を考えておくことが重要である。同じような部品は作らないことも大事だ。結構車輪の再発明的なこともある。なので、それなりに統括しないと効率のよい仕事にはならない。
前にメンテナンスにかなりお金がかかるというシステムのニュースがあってtwitterでこんなにメンテナンスがかかるのはおかしいとコメントを書いたら、あなたはシステムがわかっていないからそう言える。メンテナンスはお金がかかるもんです。と言われた。
その考えは古臭い。メンテナンスも自動化は可能なのだ。けれど、きっと相手は理解しないのだろうから、反論はさけたけれど。
要するに、ちょっとわかった風な人らがこの日本にはいっぱいいるのだ。デジタルは開発時に人間はいっても、ほぼほぼ自動化できる。そういうものだ。ただ、お金がかかると思わせないと儲からないというのはある。
そういえば、この手の開発は試験書というものをドキュメントで納品することが多い。で、その試験書は仕様があって、ものすごく書いていたらうざいのだ。だから必要な出来事を箇条書きに書いて入力しとけば、それを読み込んで試験書にするプログラムを書いたことがある。面倒なことはコンピュータにやらせた方がいい。
もともとは試験書とか言うドキュメントの形式がどうかしているのだが。試験はもちろん必要だが、アウトプットの形式がいると思っている時点で頭が固まっているとは思う。できるだけその手の作業は簡単でポイントだけおさえたようなものにしたほうがいい。
日本以外の国はデジタル化が進んでいるという、ならばシステムをそのまま買ってきてローカライズした方が早いのではないかという気もしないでもない。新興国のシステムが優れているならば、お金で開発チームごと買ってしまうというのも手だ。