少し昔の話です。筆者は、小規模なECサイトの刷新業務を担当したことがあります。そのシステムでは、15年以上の稼働実績がありますが、その間、いろいろなソフトウェア開発会社や個人のエンジニアが好き勝手に手を入れたため、無秩序に繁栄している「中東のバザール」状態になっていました。保守やハードウェアの観点から、システムを刷新せねばなりません※2)。
※2)システム刷新業務は大小さまざまですので、あくまでも一つのケーススタディーと捉えて読み進めていただければと思います。
主な作業を下記に示します。
ECサイトといえども、フルスクラッチで作ることは簡単ではありません。そこで、ある程度パッケージ化してあるものをベースとし、これに既存の機能を追加していく方法をとりました。
顧客に聞いたところ、レガシーのドキュメントがほぼありません。よって、顧客と一緒に新旧の差分を比較しました。結果、「各種データの整形・移行」の後、「機能追加」をする必要がありました。
レガシーのデータベースから、新システムに合致する形に整形し、移行しました。例えば、「電話番号を3桁区切りにしたい(12312341234)」などです(図1)。
図1では、データの整形イメージを示したものです。電話番号ならば、今まで1つの項目でしたが、これを3つの項目に分割しています。
機能追加・修正では、比較した差分から、「検索項目を増やす」「VIP会員の場合は、割引する」「『金額計算の修正』を修正する」「表示内容を修正する」などを行いました(図2)。
図2は、機能追加・修正のイメージを示したものです。検索処理で、赤や青などの色を追加しています。また、文言を「検索キーワード」から「キーワード」のように修正しました。
レガシーと新システムに同じ入力を行い、同じ結果になるか確認するテストしました。例えば、「1000円の『TシャツA』と2000円の『TシャツB』をカートに入れると、新旧のどちらも3000円になることを確認する」というイメージです。その後、一通りバグ修正ができたタイミングで、リリースしました。
Copyright © ITmedia, Inc. All Rights Reserved.