本番前にバタバタするのはもうたくさん――ユーティリティを計画的に作成する1分ショートレビュー

リリース直前になってから、ユーティリティが必要なことが分かり、バタバタと作成する。そんな経験をした人は多いのではないだろうか。土壇場で慌てないために、準備すべき5種類のユーティリティを紹介する。

» 2007年03月20日 08時00分 公開
[克元 亮,ITmedia]

 ユーティリティは、アプリケーションのインストールやデータの移行などを支援するための小さなプログラム。重要な役割を持ちながら、何カ月にもおよぶアプリケーションの開発のおまけとして扱われることが多い。ユーティリティの実装方法はさまざまだ。独立したスクリプトの使用、アプリケーションに組み込まれたプログラム機能の使用、Webベースのコンソールやコマンドラインを使用する方法もある。

 多くの場合、計画的に開発されることはなく、リリース当日まで忘れ去られている。しかし、ユーザーのデータ移行を支援したり、パフォーマンスを監視したりするなど、移行作業の効率化や安定運用には欠かせない要素だ。これが足りないばかりに、リリースのスケジュールを延期することさえある。

 本稿では、インストールがわずか4日後にせまった販売予測システムにおいて、既存のスプレッドシートにあるユーザーのデータを移行するために、ユーティリティを慌てて作成した事例が紹介されている。開発者には、身につまされる話だろう。

 ただ、どのようなユーティリティが必要なのかは、経験していなければ意外と気づかないのかもしれない。本稿では、一般的によく使われるユーティリティを、以下の5つに分類して紹介している。

アプリケーションのインストールやアップグレード、初期データのローディングやデータ構造の変換などを支援する。

ログ収集やパフォーマンスの監視など、アプリケーションの円滑な動作を確実にし、発生する可能性のある問題の診断をサポートする。

アプリケーションの構成を管理したりバージョンを表示する。また、データのバックアップやリカバリ、データ異常を発見するためのデータ調査などもする。

Webブラウザで単一のセッションにより処理するために、セッションロックの仕組みが必要だが、ブラウザを閉じてしまうとセッションタイムアウトまでロックは解除されず、ユーザーは別のセッションを開始できない。これを解決するために、サポートセンター側でセッションをリセットするユーティリティが必要となる。

SLA(Service Level Agreement)に対して、どの程度、準拠しているかを確認するためには、システムの稼働時間などを測定し計算する必要がある。それを支援するため、統計情報を収集する。

 中には、データ移行のため1度しか使われないものや、障害が起きなければ使わないものもある。しかし、いずれも、システムをリリースするためには重要なものばかりだ。

 まずは、ユーティリティの種類とそれぞれの使用方法を知ることから始めよう。このチェックリストは、すべてを網羅してはいない。だが、これを参考にすれば、ユーティリティを予算や開発計画に組み入れるために第一歩を踏み出せる。

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ