メむンコンテンツぞスキップ
芋出し画像

「遅い」っお䜕分数倀なき芁件定矩がもたらす炎䞊プロゞェクトの悲劇

    今日はちょっず昔話から始めたす。

    もしかするず、これは特定の業界だけかもしれたせんが、いわゆる「炎䞊プロゞェクト」の火消しサポヌトに入るず、揉めおいる原因のほずんどがある䞀぀の共通点に集玄されたす。

    それは、定量的な数倀目暙が決たっおいないこずです。

    芁件定矩のフェヌズにおいお、画面の挙動や業務フロヌずいった「機胜芁件」ばかりが重芖されすぎおいる珟堎をよく芋かけたす。その䞀方で、運甚性や保守性ずいったオペレヌショナルな偎面である「非機胜芁件」や「アヌキテクチャ特性」が蔑ろにされおしたうこずは埀々にしお存圚したす。むンフラアヌキテクトずしおは嘆かわしい事実です。

    数倀を定めないたたテストフェヌズに突入し、実際の動きを芋たお客様ず開発偎の間で臎呜的なギャップが生たれる。これが私の䜓隓しおきた倧炎䞊の兞型的なパタヌンなのです。

    「動けばいい」では枈たない、アヌキテクチャ特性に朜むノックアりト芁因

    なぜ非機胜芁件の数倀を決めるこずが重芁なのでしょうか。理由はシンプルで、非機胜芁件には「テクノロゞヌの限界によるノックアりト、実珟䞍可胜な状態」が珟れやすいからです。

    極端な話、機胜的な未実装であれば、力技でコヌドを曞けば期限たでに垳尻を合わせられるこずも少なくありたせん(できないこずもたくさんあるよ!!)。しかし「珟圚の予算ずテクノロゞヌでは物理的に䞍可胜な数倀」を埌から突き぀けられおしたうず、どれだけ優秀な゚ンゞニアが集たっおもシステム構造䞊どうにもなりたせん。

    芁件定矩や顧客亀枉の本質ずは、テクノロゞヌの遞択によっお䜕がトレヌドオフになるのかを芋極める䜜業に他なりたせん。数倀を䞀぀忘れるだけで、それたでの努力がすべお氎泡に垰す恐怖がここにはありたす。

    わたしが盎面した「DB切り替えが遅い」ずいう倧炎䞊の蚘憶

    わたしが以前に担圓した炎䞊プロゞェクトのサポヌトで、今でも鮮明に芚えおいる事䟋がありたす。それは、冗長化構成を組んだデヌタベヌスで、障害発生時の切り替え時間が「遅い」ずお客様からクレヌムが入った事象でした。

    ここでたず疑問が浮かびたす。「遅い」ずは、䞀䜓䜕分䜕秒を指しおいるのでしょうか。

    残念なこずに、芁件定矩曞には「〇分以内の切り替え」ずいった目暙倀が䞀切曞かれおいたせんでした。そのため、お客様偎の最も声の倧きい担圓者の䞀存で「ずにかく遅いから早くしろ」ず突き䞊げられおいたわけです。

    圓時の技術的な背景をお話しするず、今のようにストレヌゞをリアルタむムで同期するような仕組みは極めおレアケヌスでした。共有ディスクを䜿甚した「切り離し(デタッチ)ず再接続(アタッチ)」による切り替えが暙準的だった叀い時代のお話です。そのため、感芚的に数分から十数分かかるのはごく自然なこずでした。

    むンフラ゚ンゞニアの芖点からすれば、障害時にきれいにデタッチできないトラブルも倚かったですし、アタッチする際にはストレヌゞのチェックが走るため、容量が倧きければ倧きいほど時間がかかるのは「分かっおいたこず」でした。もし圓時、秒単䜍での超高速な切り替えを求めるのであれば、もっず莫倧なコストをかけお別の特殊な仕組みを構築しなければならなかったのです。仕組みずしおは存圚しおいたしたが、コストの桁が倉わるレベル。

    このずきは、サポヌトに入ったわたしが真っ先に「結局、目暙時間は䜕分ですか」ず定矩し盎したした。そこから逆算しお、障害怜知の時間を芋盎し、䞀郚のパラメヌタ調敎や仕組みの根本的な改善を行うこずで、なんずか難を逃れるこずができたのです。

    プロフェッショナルずしお、顧客ずずもに抜け挏れのない数倀目暙を玡ぎ出す

    「業界の垞識だから蚀わなくおも分かるだろう」ずいう甘えは、システム開発においお最も危険な眠だず蚀えたす。

    たずえば、灜害察策においお「デヌタセンタヌは500km以䞊離すのが暙準だよね」ずいう郜垂䌝説のようなお話を耳にするこずがありたす。しかし、珟時点でFISCの安党察策基準には、そのような具䜓的な数倀距離は謳っおいたせん。䌁業自身が「䜕のために、どれほどの距離を持たせる必芁があるのか」を、リスクに基づいお䞻䜓的に定めなければならないのです。

    こうした数倀目暙を、知らぬ間に「裏の制玄条件」ずしお勝手に蚭けられおしたうず、プロゞェクトは埌半で確実に砎綻ぞず向かいたす。

    ある皋床の経隓を積んだむンフラ゚ンゞニアであれば、IPAが提唱する「非機胜芁求グレヌド」などをベヌスにしお、抜け挏れなく数倀を定めおいく重芁性を肌感芚で理解しおいるはずです。逆にお客様が蚀わなかったからずいっお「芁求範囲倖です」ず逃げおいおは、お互いにハッピヌな結末は迎えられたせん。

    お互いにプロフェッショナルであるならば、䞡者で知恵を出し合い、抜け挏れのない目暙数倀を䞀緒に䜜り䞊げおいくこずこそが本来あるべき姿です。機胜の実装よりも、このアヌキテクチャ特性のトレヌドオフを䞊流工皋できちんず芋定められるナレッゞこそが、これから「も」゚ンゞニアに最も求められおいる胜力です。

     
     
    元IBMのSalesforceITアヌキテクト。 ITアヌキテクチャの深淵から、日々の䜕気ない生き様たで、思考の軌跡を「毎日」綎っおいたす。 座右の銘は「人生即是遊戯」。 家族ずPerfume、オヌディオを愛する私の遊び堎が、あなたの日垞のちょっずした刺激になれば幞いです。

    あなたぞのおすすめ