アドベントカレンダーではありますまいか Advent Calendar 2020 9日めの記事ですぞ。駄文が下書きに溜まりすぎてQiitaさんに未投稿の下書きが多いとおこられたので放流していきますまいか。
さてもう見ましたか、鬼滅の刃。何度見ても泣けそうです。4歳娘も保育園で鬼滅ごっこをして禰豆子役を拝命できたようです。私も「家族を鬼にころされ鬼にされた妹を人間に戻す旅に出る」ピュアな少年の物語、というだけで泣けます。はい。正直に言いましょう。まだ見てませんし手を出せていませんでも!世間の評と聞きかじった知識だけで何ならもうLiSAの歌を聞いただけで新聞広告見ただけでそこそこ目が潤むくらいにはなっています。
今日はそんな私が登場人物に対するイメージだけでその世界観を我々の最も身近な状況に例えながらどうすれば開発プロジェクトに潜む鬼をせん滅できるのか考えました。尚あらかじめ書いておくがこの記事を最後まで読んでもネタバレにはなりません。何故なら私が鬼滅を未だに見ていないからです。
登場しそうな人物
竈門炭治郎
主人公のプログラマ。新入社員。禰豆子の兄なんだけど、社歴は下。
心優しい少年で鬼と化してしまった妹を人間に戻すため、また鬼に殺された家族の仇を討つため、修業を経て、鬼殺隊に入隊する。で、新しい任務にあたるため「無限列車」へ乗り込むことになる。
竈門禰豆子
戦力的には入社2,3年目くらいの中堅扱いされ始めたプログラマ。
既にプロジェクトの闇に堕ちて悲劇的に鬼化している。不具合と仕様の区別がつかない、不具合を不具合と思わなくなる等。なので、戦力は炭治郎より上。そんな鬼となりながらも、自分の意志で人を襲うことはしないのが切ない。
我妻善逸
炭治郎の同期の鬼殺隊剣士。女の子が大好きだったりするのでプロジェクトが余計混乱する。
嘴平伊之助
炭治郎の同期、で、多分いのししの皮をかぶってるからほのぼの懐柔派系プログラマだと思っていたら猪突猛進かつ好戦的な鬼殺隊の剣士との公式サイト紹介。
煉獄杏寿郎
正義に燃える熱い奴。煉獄パイセン。よもやよもやで正直に不具合を不具合と伝えるので炎上させる日常。鬼をせん滅する力を持ちつつも明朗快活、はっきりとした物言いをする。短期間のうちに40人以上もの人が行方不明になっているという「無限列車」の調査に赴くプロジェクトマネージャ。
鬼殺隊
以上、そういう仲間が結集した精鋭チーム。「精鋭」というのが得てして逆に厄介。
鬼ども
実はプロジェクトを形作る概念。テストを書いている暇がない。無くならない。他人の不幸や苦しみを見ることを好む、歪んだ嗜好を持つ。
ストーリー
修行を終えた炭治郎たちは次なる任務の地、「無限列車」に到着する。そこでは短期間のうちに40人以上の人が行方不明になっているという。
40人も不明。無限列車 = デスマーチ でしかなさそう。
昔からの仕様とも不具合ともとれるなかなか明快な答えが出しがたい不具合と対峙する炭治郎たちが全集中の呼吸で集中突破するしかないならそれはまさに無限列車。ということで以下、無限列車について調べた。
無限列車
プロジェクトにおいて過酷な労働状況をいう。本来は、コンピュータプログラマのアンドリュー・ケーニッヒによって1995年に示された、コンピュータシステムのアンチパターンのうち、プロジェクトマネジメント上の問題点の1つとして示した言葉。以上 http://shinwaza.com/blog/?m=20161114 より引用。
現在有名なのはエドワード・ヨードンの著書『デスマーチ:なぜソフトウエア・プロジェクトは混乱するのか』。
「プロジェクトのパラメータが正常値を50 %以上超過したもの」もしくは「公正かつ客観的にプロジェクトのリスク分析(技術的要因の分析、人員の解析、法的分析、政治的要因の分析を含む)をした場合、失敗する確率が50 %を超えるもの」としており、具体的には以下のいずれかに該当するものと定めている。
与えられた期間が、常識的な期間の半分以下 / 対応者が通常必要な人数の半分以下 / 予算やその他のリソースが必要分に対して半分 / 機能や性能などの要求が倍以上
鬼の類型
というかデスマーチ類型です。エドワード・ヨードン氏 が以下に分類している。
氏の講演資料 (英語)も詳しい。つまりここで何がプロジェクトを困難に陥れるかと言うと、冷静さを失って情緒に走った行動を止められない、ある種劇場的な状況が人の心と影響を与え合って進行を妨げているということなのです。
自滅型 (suicide)
満足度も、成功する可能性も低い。プロジェクトマネージャーもプロジェクト要員も、プロジェクトの失敗を予感しているが、抜け出すことはできない。
カミカゼ型 (kamikaze)
満足度は高いが、成功する可能性は低い。自滅型と異なり、プロジェクトマネージャーもプロジェクト要員も士気は高い。プロジェクトそのものは失敗しても、そこから何らかの教訓を得たり、メンバーは満足感を得ることはある。
スパイ大作戦型 (mission impossible)
満足度も、成功する可能性も高い。また成功する確率は高い。プロジェクト要員の「卓抜した技術と勤勉さ」とプロジェクトチームの結束によって、プロジェクトは成功するかもしれない。ただし、犠牲者は生じるかもしれない。
モーレツ型 ("ugly")
満足度は低いが、成功する可能性は高い。軍隊式のスパルタ・プロジェクトであり、プロジェクトマネージャーはプロジェクトを成功させるつもりである。プロジェクトマネージャーはプロジェクトを成功させて利益を得ようとしており、競争に勝ち抜くつもりである。プロジェクトマネージャーはプロジェクトの成功のためならプロジェクト要員の健康や幸せが犠牲になることを厭わない。
どうやって「鬼」を倒すのか
ヨードンは無限列車、というかデスマーチを回避する方法として、「トリアージ」を強調している。
プロジェクトマネジャーがステークホルダーとのコミットメントと開発チームとの調整をする方法として、Joint Application Development(JAD)というのを挙げています
JADはわたしが勧める方法で、ほかの人が書いた書籍です。この方法はステークホルダー、プロジェクトマネジャー、開発者が同席したミーティングで、少なくても2人、多いときは20人以上で、要求を煮詰めていく方法
プロジェクトマネジャーに対しては、プロジェクトチームというのは人が構成するものであることを忘れないでほしいです。そして人々のリアクションを大切にするということ
つまり最終的に何と向き合い対話するのか、冷静に優先順位を分析する「立ち止まり」がカギということ。
結論
妄想しているうちにというか最初から分かっていたように鬼滅はおそらくそんな話ではない気がしてきたが、プロジェクトは時として犠牲者が生まれ映画並みに壮大なストーリー展開が起こる。しかし悲劇は本来マネジメントによって回避できるはずのものである。私が今まで見てきた「それに近そう」なタスクやプロジェクトも得てしてそのような思い出が(自粛
でまあ、刃で悪夢を断ち切るにはある種何かを客観的に見るくらいの姿勢が大事。と言いつつ多分煉獄パイセンはキャラクター的にはとてもまっすぐで素敵な奴(知らんけど)なので私も一番好きになりそうなキャラだ。彼を責めることにはどう考えてもできず、だからこそ日本的なプロジェクトは困難な局面があるのだと思ったり思わなかったり、と、自己の中で完結しました。頑張れ炭治郎、頑張れ!
真面目に考察するならこういう本でしょうか
以上、最終巻だけ買ってこようかなと思う気持ちだけが募る雑文。
参考
初めてチームリーダーをやる人にお薦めの本
デスマーチについて と 最初のWebサービスにRuby on Railsを選んだ理由
映画公式サイト
【鬼滅の刃】鬼はロジックで、鬼殺隊は台詞という話。