プロジェクト・マネジャーが知るべき97のこと/手順を文書化して、守られているか確かめよう


あるプラットフォームから別のプラットフォームヘメールシステムを移行している最中のことでした。ひとりの女性が結婚した結果、メールシステムがダウンしたのです。

メールの流れは次のようになっていました。

1.新しくやって来たメールは新しいメールシステム経由で配送される。 2.新しいメールシステムで配送可能であれば、新しいシステムにいるユーザーにメールを配送する。配送不能であれば、メールは古いメールシステムへと送られる。 3.古いシステムにいるユーザーから古いシステムにいるユーザー宛てに送られたメールは、適切なメールボックスへと配送される。しかし、受信者がすでに新しいシステムに移行済みであれば、メールは各ユーザーのために作られた「移行(migrate)」転送アドレスを使って新しいメールシステムに自動転送される。

ここで、おかしなことが起こりました。「サリー・シングル(single、未婚)」は新しいメールシステムに移行していたため、2つのメールアドレスを持つことになりました。sally.single@mycompany.comとその転送アドレスsally.single@migrate.mycompany.comです。古いシステムにいるユーザーから彼女宛てに送られたメールはすべて、「移行」転送アドレスを使って新しいメールシステムに自動転送されます。

サリーが結婚して、名前を「サリー・シングル」から「サリー・マリッド(married、既婚)」に変えると、メールアドレスも同じように変更されました。しかし、新しいシステムにあるサリーのメールアドレスは変更されたのですが、古いシステムの「移行」転送アドレスを変更するのを忘れてしまいました。その結果、サリーにはその転送アドレスが残ってしまいました。

新しいシステム
  1. sally.married@mycompany.com
  2. sally.single@mycompany.com
  3. sally.married@migrate.mycompany.com
古いシステム
  1. sally.married@mycompany.com
  2. sally.single@mycompany.com
  3. sally.single@migrate.mycompany.com(変更されていない移行アドレス、結婚後も残ったままになっていた)

この結果、古いメールシステムにいるユーザーからサリー宛てにメールが送られると、ループが発生してしまいました。1)メールが古いメールシステムで作られ、sally.single@mycompany.com宛てに送られます。2)古いメールシステムはサリーのアカウントをチェックして、転送先がsally.single@migrate.mycompany.comに設定されていることを確認して、メールを転送します。3)新しいメールシステムはsally.single@migrate.mycompany.comというメールアドレスを持つ人を探しますが、見つかりません。このアドレスはサリーが結婚したときに変更されたためです。4)そこで新しいメールシステムは、不明な受信者宛てのメールを古いメールシステムへ転送します。5)古いメールシステムは@migrate.mycompany.comの付いたメールをすべて転送することを知っているので、そのメールを新しいメールサーバに転送します。6)これが無限に繰り返されます。

メールがループするたびに、メールの末尾に会社の法的放棄声明が追加されていきます。法的放棄声明は100単語程度にすぎませんが、メッセージが1分間に何度もシステム間をループすると、それはどんどん大きくなっていきます。どうやら、サリーは非常に人気者だったようです。あまりに多くのメールがサリー宛てに送られたため、メールの大きさと量のせいで、とうとうメールシステムはダウンしてしまいました。

教訓:手順を文書化して、それが守られているか確かめましょう。名前変更の手順は文書化されていたのですが、実際には守られていませんでした。もしそれが守られていれば、古いメールサーバにあるサリーのユーザーアカウントは、新しい結婚後の名前を持つ移行メールアドレスに更新されていたはずです。そうすれば、この問題は避けられたでしょう。

この作品はクリエイティブ・コモンズ 表示 3.0 アメリカ合衆国ライセンスのもとに利用を許諾されています。

あなたは以下の条件に従う場合に限り、自由に

  • 共有 – 本作品を複製、頒布、展示、実演できます。
  • 再構成 – 二次的著作物を作成できます。

あなたの従うべき条件は以下の通りです。

  • 表示 – あなたは適切なクレジットを表示し、ライセンスへのリンクを提供し、変更があったらその旨を示さなければなりません。これらは合理的であればどのような方法で行っても構いませんが、許諾者があなたやあなたの利用行為を支持していると示唆するような方法は除きます。