2017年12月13日水曜日
デジタルツインによるシステム移行の自動化
新卒社員にCOBOLを習得させて現場に投入していいのか
タイトルからして興味深い記事だが、当然ながら筆者の結論は「否」だ。その理由は「他に学ぶことが沢山ある」ということらしい。だが2ページ目からは無駄なドキュメントの話になったりして、文章全体から言いたいことがよく分からなかった。
個人的には、もっとシステム移行技術はまじめに研究されるべきだと思うし、解析の自動化やAI化といった技術を発展させ、COBOLのようなベーシックな言語は覚えなくても済むような世の中になってほしいと思う。COBOLよりもC#だGoだというのは五十歩百歩であって、コード自動生成や自動検査などこそが真に未来的なシステムだと思う。
もちろん、そこまでの道はまだ遠く、それだけを志向して勉強するのは時期尚早ではあるのだけれど、思いの外早くその時代は来るかもしれないとも思っている。システム移行ではなく自動再構築をする方向性がその答えだ。
現行システムのエミュレータを作ること自体は、原理的には難しくない。難しいのは同じ処理速度、同じか安いコストを満たすことだが、この条件を緩和すれば可能なはずだ。これをまず、現行システムのデジタルツインとして構築する。
これは、メインフレームのハードウェアをエミュレーションで作り、その上に同じソフトを構築することで作成される。但しI/Oなど性能での条件は緩和し、つまりは遅くてもよいことにする。忠実に再現できることが最優先だ。
デジタルツインがあれば、幾らでも並行してテストや解析が可能になる。そこで、これと全く同じ入力出力を行いアーキテクチャが最新である、というシステムができればよいことになる。だが実際にはもう一つ条件があって、将来的な仕様の修正が可能である必要がある。完全なブラックボックスではダメだ。
このためには、いきなり新しいシステムを作るのではなく、デジタルツインの仕様を人間可読な形式で出力する必要がある。つまり、ブラックボックスたるデジタルツインの仕様を仕様記述言語で吐き出すシステムと、仕様記述言語から新しいアーキテクチャにシステム構築をするシステムがあればよいことになる。
仕様を修正したいときは、仕様記述言語になった段階で修正を加えればよい。これは何度でもできるので、システム修正自体も今後は楽になる。その代わり、コンパイルした後のシステム構成は都度変わる可能性が高く、そのためにも対象アーキテクチャはパブリッククラウドになるだろう。
また、仕様記述言語自体も変化する可能性があるが、一度変換ができてしまえば言語間移行だけで十分であり、旧システムをデジタルツインにして解析する必要はない。これも将来的な移行コストを低減する。
仕様記述言語の候補としては、現在既に稼動しているコード自動生成ツールのソースが挙げられるが、まだまだ不足しているだろう。ここの言語設計が、移行コスト低減に直結する。
完璧な仕様記述言語などというものは、バグのないプログラムと同様にあり得ないように思える。だがそこはそこ。システム分割して部分的に適用するなどができれば、そこだけでもエンジニアの負荷が減るというものだ。
ここで一番難しいのは、デジタルツインから仕様言語への変換である。デジタルツインは仕様だけでなく実装を含んでいるから、ソースを解析できたとしてもそれが仕様なのか実装なのかの見極めが困難だからだ。また、システムの機能性能を見越した暗黙の省略、例えばバッチ処理には時間が掛かるだろうからセマフォでなくタイマで引っ掛けようとか、COBOLの十進法の誤差や型変換時の仕様を利用したプログラミングなどを見抜くのは困難だろう。
ここは、コード解析をするのではなく、入力と結果のみを見て仕様を推測する、という手法をとることが考えられる。このために専用のテストデータを用意し、いちいちリセットしながらシステムを動作させる。例えば住民の税額の計算なら、基礎控除の前後、税率が変わる前後で収入を変化させながらデータを流し込んでやる。簡単なシステムならこれだけで完成するし、そうでない場合でも部分的には仕様が完成する。
内部で複雑な操作を行った後に初めて出力するようなものではこの方法は使えない。そのため、中間情報たる内部状態やデータベースの値を使って確認する。これを使うと厳密には仕様だけでなく実装が混じってしまうが、最初は止むを得ない。
システムの分割はもちろんできるだけ細かい方が良いし、外と通信するならそれも解析のための情報として使える。だが完全に無人解析するのは当分先の話になるだろう。
将来的には、これらには一括してAIが補助に使われるものと思う。税なら法律文書があるからそれを参考にするとか、行政サービスならWebの解説を参考にするとかができるようになれば、人の仕事はずいぶん楽になるだろう。
登録:
コメントの投稿 (Atom)
注目の投稿:
シリカヒューム応用プレキャストコンクリートによる超高速建築
シリコン発電シリーズの続きで、シリカヒューム応用コンクリートのプレキャスト適用について考えてみる。プレキャストとは、要するに型枠で作ったコンクリートである。板や柱となる。 結論からすると、 国内最高峰の断熱性・高気密性を持ち、基礎を含め2週間で2階建ての筐体が完成し、坪単価...
人気の投稿:
-
アメリカはなぜかサバイバル用のフリーズドライ市場が豊富だ。 Amazon.com を見ていると、実に様々な会社がフリーズドライの食品を出している。 日本のそれと大きく異なる特徴が、日本は食品として完成しているのに対し、アメリカのそれは素材であることだ。調理済みのものも無論...
-
有名な金持ち本「DIE WITH ZERO」における著者の主張について生成AIと議論していたら、いつの間にかそういう結論に達してしまった、というお話。 著者の主張は、必ずしも財産ゼロで死ぬようにしよう、というものではない。多くの人は使い切れずに溜め込んだまま死んでしまう、こ...
-
前回の 太陽炉プラン について定量的に計算した結果、国内に残るシリカフュームの量が余りにも膨大であり、全部の処分はおろか殆ど売れないことが分かった。コンクリートの超高強度添加剤としての国内の需要は年間350万トンがせいぜいであるのに対し、生成されるシリカヒュームの量は4.76...
-
VRゴーグルを使った教育は、既にN高などで実用化されている。これを更に進め、スマートグラス前提の教育を考えてみる。 N高の時代と違うのは、 強力な生成AIの存在 である。つまり、 教科書と学習指導要領だけを与えることで、教育プログラムを生成AIが自動的に作ってくれる ようになれ...
-
地球温暖化の抑止のためには、化石燃料の消費を抑える必要がある。化石燃料の用途は材料と燃料だが、このうち燃料の用途を代替する施策を一つ思いついたので披露する。以下がその方法だ。 まず、砂漠に太陽炉を設置する。 この太陽炉で、砂漠の砂を熱する。砂は酸化ケイ素(SiO2)だが、...
-
法曹界がIT化する、というのをニュースでやっていた。これは証拠のDB化や手続き等のオンライン化を含むもので、まあ真っ当な進化と言えるのだが、そもそも法律がデジタル化していないのは何なんだろう、さっさとプログラム化してしまえばよいのに、と思っていた。これは以前に、 法のプログ...
-
カルビーがポテトチップスなどのパッケージを白黒にしたことに対し、政府がヒアリングを行った話。これについて少し調べてみたところ、けっこうとんでもないことが分かった。 パッケージ問題の本質は(ナフサそのものではなく、ナフサから作られる)エチレンの減産であり、その規模は平常時の四...
-
Meta Quest 3の視野角は110°(横方向)らしい。だが人間の視野角は180~220°くらいはあるそうで、実際に見てみると周辺視野は確かに限られており、潜望鏡を覗いているような気分になる。 これは何とかならないものかと調べてみると、市販の相当高いモデルでは120~140...
-
アンソロピックが、生成AIを人間が制御できない可能性に触れ、一時的に開発を中止させる(という選択肢を提示する)、という事件があった。制御できないAIが人類を絶滅させたり、そこまで行かずとも大量虐殺したり、その他にも人類にとって好ましくない選択を行い、しかもそれを人間が止めることが...
-
理想の政治家とは何だろうかと生成AIと議論していて、二つの軸を考えてみた。 X軸:【客観・形式論理一貫性(Formal Logic Consistency)】 左極(-100):結論ありきのロジック(論理の歪み)。 自身のイデオロギーや保身(結論)を正当化するために、都合の...

0 件のコメント:
コメントを投稿