omnitoBLOGコーポレートサイト
ふたりで考える、仕事の話AI活用 / 更新とテスト

本番を直す前に、もう一つの環境で試す。

PHPを更新したい。でも、古い業務サイトが動かなくなるのは困る。りんとボスが、別環境で修正版をビルドし、必要な機能を試してから本番へ進む方法を考えます。

本番用と試験用の小さなサーバーを分け、片方で新しい部品を準備するイラスト。

更新したい。でも、明日の仕事も止めたくない。

りん
PHPの脆弱性に対応したいのに、古い業務サイトが新しいPHPで動くか分からない。こういうとき、本番で試しながら直すのは怖いです。
ボス
まず別の環境で確かめよう。ただ、新しいサーバーを一台用意するだけで、本番と同じ試験ができるかな。
りん
OSや追加機能、設定が違えば、試験では動いても本番で失敗しますね。実際の環境から、必要な条件を調べるところが先です。
ボス
今回のPHP対応でも、通常の修正版を適用する方法とは別に、古い環境向けの修正版を用意し、互換性を確かめる準備があった。今日は、その進め方を考えてみよう。
りん
修正版を用意できたことと、本番への適用が終わったことは別ですね。試験結果と、これから行う工程を分けて扱います。
ボス
その区別は最後まで残そう。古い環境への個別対応は、サポートされる環境へ移るまでの特例として考え、ずっと使い続ける理由にはしない。

「動くもの」を、本番の外でつくる。

りん
この準備では、修正したソースから実行できるソフトウェアを組み立てます。この作業をビルドと呼びます。
ボス
AIに「ビルドして」と頼む前に、何を渡す?
りん
本番のOS、CPUの種類、使っている拡張機能やライブラリです。それと、どの公式修正を含めるか。別の作業環境で、条件をそろえて組み立てます。
ボス
足りないものがあったら、本番へ次々追加すればいい、とはしないんだね。
りん
はい。依存関係が違うなら、原因を調べます。無理やり入れたり、ついでにOSやアプリ全体を更新したりすると、何が原因で動かなくなったか分からなくなるので。
ボス
変更の範囲を絞ることも、速く確かめるための工夫だね。

本番へ持ち込む前に、順番に確かめる

  1. 本番の条件を調べる

    OS・追加機能・設定・動かし方をそろえる。

  2. 別環境で組み立てる

    根拠のある修正から、配布するものを用意する。

  3. 仕事の機能を試す

    日本語・画像・帳票・接続などを確かめる。

  4. 戻す試験も行う

    切り替え後に、以前の構成へ戻せるか確認する。

トップページが開いた。それで終わり?

りん
ビルドが通って、トップページも開けたら、一安心したくなります。
ボス
でも、そのサイトで毎日している仕事は何だろう。帳票を出す日だけ使う機能もありそうだね。
りん
そこまで試す必要がありますね。今回の資料でも、日本語の処理、画像、表計算ファイル、セッション、データベースへの接続など、確認項目を分けていました。
ボス
その試験で、本物の注文やメールを送ってしまわないことも必要だね。
りん
自動試験は、業務データを書き換えない確認に分けます。実際の登録や通知まで見る業務確認は、担当者と方法を決めて進めます。
ボス
技術的な試験と、仕事として使えるかの確認。その両方がそろって、次へ進む判断ができるね。

AIには、失敗した後の比較まで頼む。

りん
AIを使う利点は、一度で全部成功することではありません。試験で失敗した結果を読み、何が違ったか調べて、直してもう一度試せることだと思います。
ボス
AWS上に試験環境を用意する場合も、CLIで対象と状態を確かめながら進められるね。人が画面を何枚も開いて転記する部分を減らせる。
りん
ただ、何度でも同じ修正を繰り返すようには頼みません。想定と違う変更が必要になったら止めて、理由と選択肢を出してもらいます。
ボス
そのうえで、配布するファイルと設定が、試験したものと一致するかも確認する。試験済みのものを本番へ持っていくためだね。
りん
修正版の準備を急ぐときも、本番の隣に試せる場所があれば、変更と確認を繰り返しやすくなります。
ボス
更新が怖いから止まる状態を、何を試せば進めるか分かる状態に変えたいね。その準備から、AIへ仕事を頼める。