2021年10月13日水曜日

M行障害について

システム刷新プロジェクトに携わったことがある人であれば分かると思うが、これだけ問題が起こる原因の要点をまとめると以下になるのでは無いか。

・ベクトルが本当に揃っていたか。

つまり
・M行とベンダーのベクトルが本当に揃っていたか。
・経営陣と開発陣のベクトルが本当に揃っていたか。
ということ。

【M行とベンダーのベクトルが本当に揃っていたか】
これだけ大規模なシステムであるので、請け元、請け先のベクトルを揃えることは必須であろう。
またシステム刷新だと、過去プログラムの仕様書が無かったり間違ってたりすることは日常茶飯事である。ひどい時にはソースさえなくて実行ファイル現物しか無い場合もあるだろう。

(無論こんなことも知らない経験の浅い人がプロジェクトマネージャにはなってないだろうが。また流石に勘定系だと設計書はある程度しっかりしているだろうが。)言いたいこととしては、バグはシビアな箇所に潜むもので、設計書に書ききれてなかったり設計書と実装の勘違いをベンダー任せにしていたり、見過ごしたりしていなかっただろうか?ということ。(なので、システム刷新は慎重に行うべき、と良く言われる通り。あと「設計書は無いものと思うべき。」)

システム刷新の場合は、言ってしまえばソースの書き換えが発生するわけであるが、その仕様の決定とソース改修の決定権は親方本丸であるM行である、ということがM行は当然として、各ベンダー及び孫ベンダーまで気の緩みなく浸透していただろうか、ということである。
孫ベンダーくらいまで使ったことがある人なら分かると思うが、伝言ゲームと同じで階層が深くなればなるほど齟齬が発生するのはもはや当然なのであるが、加えて「気の緩み」も生じるものである。

孫ベンダーには流石に直接口出しできないので、直轄ベンダーを通して管理をお願いするしか無いが、この超大シビアプロジェクトに懸かってる「責任」「熱量」が果たして末端まで伝わっていたのかということである。
障害発生後に後付けで言うのは簡単であるが、いざこうして障害が発生してしまうと、たとえばそれがプロジェクトの意識に欠ける組織の箇所であったとしても、全責任はM行に返って行くということである。
流石にこれだけの規模のシステムだとPMが全ソースをチェックするわけにも行かないので、各ベンダーなどに「委譲」する訳であるが、よくあるのが、「最後の尻を持つ」ことまで委譲してしまう人がいるということ。(任せたから責任もそっちね、的な)

先ほども書いたが、システム刷新という、いわば設計書は信じてはいけず、ソースか動いてる物しか信じてはいけないプロジェクトにおいて、もしもこの「ケツ持ち責任の委譲」まで行われていたのであれば危険すぎるだろう。
(この辺の実態はいつか調査報告で上がってくるだろうが。)

※あと世の中で勘違いされやすいのは「任せる」こと。この前提にあるのは「信頼」である。信頼も無いどこぞの馬の骨にいきなり大切な仕事を任せたらただのバカであろう。また「任せた」からといっても責任までは渡らないのである。まさかとは思うのだが、部下に仕事を任せる時のような「この仕事を任せるよ(失敗してもこっちが責任取るからね)」という感覚でベンダーに「任せて」はいなかっただろうか。これでは「どうぞ気を抜いて仕事してください」と言っているようなものである。


また、いくらどれだけPMの「熱量」が強くても、階層が深くなると薄まるものである。(この辺もプロマネ関連教科書に書いてある?)
そこをどこまで理解して把握、そしてコントロールできていたか、ということ。


【経営陣と開発陣のベクトルが本当に揃っていたか】
システム刷新するという決定以前に、システム屋さん側に何パターンもの見積もりと、それぞれのメリット・デメリットを作らせた上での、熟慮に熟慮を重ねた上での決定だと思われるが、そこに何らかのマイナス方向の感情が双方に無かったか?ということ。
もしも決定後もどちらかまたは双方がしがらみを持ったままであったとすれば、当然の結果としてほころびとして表面に出てくるでしょう、ということ。
そこまで明らさまだとそもそもプロジェクトとして完成してないだろうし、ベンダーを束ねる上でも少なくとも負の感情は押し殺し、そもそも決まった以上はやるしかない、という意気込みでやられていたとは思う。

これは単なるたとえ話、または似たような経験がある人もいるかと思うが、例えば「こっちの案はこれこれで危険すぎるので実質不可能です。やったとしても責任は負いきれません。」とか説明したのに、経営陣の判断で結局そっちの案になった場合などは、担当者は負の感情を持ちやすい。(しかしそれで本当にマイナス思考でやっていてはプロでは無いのだが。プロは決まった以上はやり抜くしか無いのである。)
(また、もしも負の感情を持ったままやってる人がいたとして、その人もバカでは無いので
 ・言われた言葉通りにしかやらなくなる(行間をあえて読まないようにする)(ロボット化)
 ・自分の足がつかないように巧妙にやらかす(確信犯)
 などいろいろ出てきて、対応は全て厄介である。これは本人の成長と精神にも良く無いのだが、意外にもそういう人が多くて困ったものである。)
(M行と直轄ベンダー間では流石にそういった「腐れ責任者」は居ないと思うが、可能性としては無いとも言い切れないので書くだけ書いておくこととする。また何度も書いてるが規模が規模だけに、プロジェクトの主旨を分からずにやってた人や挙げ句の果てに負の感情を持ってやってた人がいったいどれだけいたかということである。)

または、双方に嘘とか隠し事とか無かったかという点。
プロジェクトをたくさんこなしてきた人であれば分かると思うが、「見栄」とか「ばれたら怒られる」とかで臭いものには蓋をしがちである。
これだけ大規模だと、各ベンダー内でも同じような話が数多ある訳であって、最終的にM行がそういう点まで理解・考慮・把握・コントロールができていたかということ。

まぁ、こちらは感情論であり、調査はあくまで結果と現物をもとに行われるであろうが、PMをやっているとその前提にあるのは、やはり「人」ということに否応なく気付くのである。
逆に言うと、それぞれの人がどのように考えてやっていたを探れれば全て明確に分かるのであるが、みんなが正直に答えてくれる訳では無いので、やはり結果と現物をもとに調査するしか無い。

もし「管理」という話をするのであれば、これだけ大規模プロジェクトとなると通常の管理の概念よりもより上層の「ベクトル」という層までも含めてちゃんと管理すべきだったのだろう。
よく言われる通り日本人のトホホなところは、欧米のやり方さえやってれば大丈夫だと「かなり本気で」思い込むところがあり、例えばISOさえ取っとけば何してもいいという本末転倒もあったりして(でもISOなどで決まったことは本当に律儀に守る。ここは良い点。)、だれかどこかに、最後の言い訳として「基準・ルール通りやってたのでこちらに落ち度はありません」という言い訳を用意しながらやってた人がいたのでは無いか、ということ。
基準・ルールの前にチーム・組織がある訳であって、チーム・組織が成り立ってない所にいくら高尚な基準・ルールを持ち込んでも意味が無い、という極めて簡単なポイントになるのだが、残念ながらこの前後関係を理解できてる人がトップ層においても少ないのが現状であろう。
もう外部組織による調査にまでなってしまったため、それこそ「ドライ」に調査を進めるしか無いのだろうが、こうなってはもう「ベクトルを合わせておくべきだった」とか言っても手遅れであって、後悔先に立たずとはよく言ったものである。

その2に続く

キーワードだけ列挙
・対比として「管理できてれば感情は関係無い」という考え方
・ベクトルが合っていればプロジェクトは成功しやすい
・少なくとも各社・各チームの責任者は「ベクトル」とはなんぞやということが理解できる人で無いと全く意味が無い


0 件のコメント:

コメントを投稿