ニューノーマルで悩む管理者の夜

第弐拾六夜 デリバリーで悩む管理者の夜

概要

変化を体言するキーワードが、「ニューノーマル」。珍常態を、システム管理者目線でゆるーく語っ ていこうと思います。

目次
デリバリーの意味
QCDという三大要素、それよりも重要なもの
三大要素のなかで一番重要なものは「品質」という勘違い
三要素の「品質」とそれ以外の違い
納期というものの見方
納期と納入日(納品日)は全く違う
コロナ禍における新しい進捗管理/納期管理
納期やコストが大事です

デリバリーの意味

デリバリー(*1)と聞いて、何を思い浮かべますか?たぶん以下の3つのうち1.2.がほとんどだと思います。

1.デリバリー:食事の配送
2.デリバリー:~ヘルス
3.納期

しかし、IT業界でデリバリー(delivery)といえば、3.納期なのです。でも、「納期っておいしいの?品質の方が重要じゃん」という声もたくさん聞こえます。そのような逆風に負けずに、今回はデリバリー(納期)をテーマに、あれこれと語りたいと思います。

 

QCDという三大要素、それよりも重要なもの

システム開発というよりモノ作りには、QCDが重要という言葉があります。Qは品質、Cはコスト、Dは納期です。モノづくりにおける三大要素と言われています。ソフトウェア開発/システム開発においても、この3つは重要な要素です。しかし、ソフト開発では上記3要素に並んで重要な要素があります。スコープです。ある意味、モノ作りとソフト開発の違いは、このスコープ管理に依っているといっても過言ではありません。スコープまで管理しなくてはいけないのが、ソフトウェア開発の大変さなのです。今回は、デリバリーがテーマのため、別の回でスコープについて語りたいと思います。

 

三大要素のなかで一番重要なものは「品質」という勘違い

とはいうものの、「モノづくりにおいて品質こそが最優先されるべきで、次に費用、最後に納期といったように、QCDというのは重要度の高いものから並べたものである」と説明していた品質至上主義者(*2)が一定数います。しかし、ビジネスというかプロジェクトの観点から見ますと、品質が良かろうが、納期までに完成しなければシステムは使えません。完璧なコードであろうと使われないゴミコードとなります。目線がプログラミングしかないエンジニアにとっては、Q(クオリティ:品質)が大事と思う方がかなり多いようですが、そもそも品質が良いかどうかが意味を持つのは、納期に間に合って納品されてからです。間に合わない場合は「使われません」。さらに、納期までに全コードが納品されシステムが稼働しても、ビジネス的に赤字になれば、会社は潰れます。もし、サービスを提供するシステムの場合、そのサービスは終了しますし、会社からエンジニアの給料も払われない可能性もあります。
三大要素のQCD以外にも「やりがいが重要だ」とか「モチベーションが低くなる作業は最低だ」などと主張するエンジニアもいますが、弊書「IT業界の病理学」の4-5「プログラマのモチベーションが一番大事病」をしっかり読んでください。そんなものを主張しているのは、ブラックな会社のみです。
ここまで断言すると、いつも「品質が悪くても納期までに納品すればいいのか?」と反論する品質至上主義者がいます。そんなことはいっていません。ある一定の品質のものをしっかり納期までに納品することが必要です。一行も書かれていないプログラムを「納品します」といってもダメでしょう。このコラム「〇〇で悩む管理者」で「カレーのおいしい作り方」(*3)を書いて、期日までに納品しました、というのと同じです。もしかしたら、クックパッドなら問題なく掲載される可能性もありますが、しっかり仕様通りに作って納品するのが当たり前品質(*4)というものです。

 

三要素の「品質」とそれ以外の違い

QCDについてもう少し。品質と他の要素、コストと納期の違いはいくつかあるのですが、まず品質以外は、事前の計画の方が重要視されることが特徴です。例えばコストは見積りや予算、納期はスケジュール。事前の計画次第で成否に影響がでます。過少予算で大赤字というケース、無理なスケジュールで納期遅延などは失敗プロジェクトの半数以上を占めるでしょう。
さらに、コストと納期(スケジュール)は、システム開発における最大の制約事項となることが多いです。「予算の上限」「新しいサービス開始に合わせて」など絶対に守らなくてはいけない前提が確実にあります。「品質が一番」と語っている品質至上主義者たちは、この点をしっかり直視して欲しいと思います。特に「納期」、つまり時間の制約は、逆に戻すことが不可能な制約です。サービス開始までにシステムが使えないなどということは、サービス自体が提供できないことを意味します。
ただ個人のエンジニア、現場の立場から見ますと、品質以外はあまりタッチできないことも確かです。なので、現場からの声は「品質が一番大事」になってしまいます。個人が頑張っても、納期を短くしたり、コストを削減するのはとても難しいのです。その2者を改善するには、「見積」(*5)や「計画」にタッチするのが一番です。

 

納期というものの見方

本題である納期の話になります。納期(デリバリー)について、視点が2つあります。1つは生産者(製造者)の視点、もう一つは納入先の視点です。よく「納期に間に合わない」と叫んでいる光景を目にしますが、これは生産者の視点からだと「納期までにモノが仕上がらないため、納入できない」になります。そして、納品される側から見ますと、「納期までに、モノが納入されない」という悲鳴になります。
同じ事象ですが、納入する側/される側で全く異なります。納入者は単に作業が遅れているだけのトラブルで、「納品が遅れてすみません」で済むことになりますが、納品される側からみますと、納品される前提で後スケジュールなども組んでおり、納期遅延が起因で、全体スケジュールを組みなおすことになります。生産者(製造者)からは、品質を上げるために納期ずらしました、という必然性の高い理由で遅れたとしても、その遅れが全工程に影響を及ぼす可能性もあります、というより確実に悪影響があります。納品で作業完了というわけではありません。納品され、検収され、連結する他システムとの対向試験なども実施。そして、納品されたシステムに対する実際の使用者の試験スケジュールや研修など。後工程に思いっきり影響を及ぼします。

 

納期と納入日(納品日)は全く違う

納期と納入日、一見同じように見えますが全く異なります。特に、製造業や自動車業界などでは特に注意すべき点と言われています。納期は納入期限、つまり「ある特定日まで」ということです。対して、納入日はピンポイントで「納入する特定の日」になります。どこが違うかというと、納期の場合は、納期以前に納入することが可能ですが、納入日は前倒しでの納入は不可です。
多数の部品を管理する生産管理ではこの点を細かく管理します。「早ければ喜ぶだろう」と考え、納入日を前倒ししたりした場合、納品先では倉庫が準備していなかったり、製造物の管理費などが追加費用としてかかります。正直かなり迷惑な行為です。
そして、下請法(下請代金支払遅延等防止法)でも、下請から元請への納品は関係します。

下請法第4条1項
 親事業者は,下請事業者に対し製造委託等をした場合は,次の各号(役務提供委託をした場合にあつては,第1号及び第4号を除く。)に掲げる行為をしてはならない。
1. 下請事業者の責に帰すべき理由がないのに,下請事業者の給付の受領を拒むこと。


上記(下請法4条1項1号)のように、元請会社は「責がない場合の納品の受領拒否」してはダメなのですが、納期前の納品については、納入先業者は受取を拒否しても違法となりません。このように、納期や納品日って、かなり重要なものです。遅れるのは問題外ですが、先行納入もアウトなケースがあることは覚えておきましょう。

 

コロナ禍における新しい進捗管理/納期管理

ここ2年ぐらいのコロナ禍でのシステム開発。いままでのように、一か所に集めて集中管理という形態は、かなり崩れています。そのため、細かい作業管理ができずに、進捗遅延/納期遅延が頻繁に発生しています。そもそも、テレワークやリモートワーク、物理的に離れている場所での開発などのデメリットとして、ほんとうに作業を実施しているのか、作業上のトラブルの発生の有無と解決の遅れなどは確実にあります。前回コラムでも書きましたが、PCのキーボードの上に猫が寝そべっているなんてことが発生しても、誰も止めないですし、逆に喜んでスクショを撮って、ネットにUPする始末です。

◆納期一週間前
元請のプロマネ「すみません。進捗はどうですか?来週納期なんですが大丈夫ですか?」
下請の担当者 「大丈夫です。しっかり納品できます」
◆納期の翌日朝
下請の担当者 「すみません。コードは完了しているのですが、試験報告書がまだ完成していないんです。あと少し時間を頂けますか」
◆さらに1週間後(正式納期から1週間後)
下請の担当者 「たびたびすみません。担当者が風邪で寝込んでしまって。そう、ソースは完了したんですけど、場所がどこにあるか誰もわからないんです。今、全員でフォルダを探しまくっています。もう少し待っていただけますか。見つけ出して、すぐに送ります。」
◆さらに1週間後(正式納期から2週間後)
下請の担当者 「本当に申し訳ありません。ウチの新人が間違えてソースを消してしまったらしいです。昔のソースと勘違いして。今、バックアップから戻して、差分チェックをしている最中なんです。ええ、来週にはしっかり納品させていただきます」
◆さらに1週間後(正式納期から3週間後)
下請の担当者 「すみません。バックアップから戻したソースの復旧は完了したのですが、テストを再実施してます。もう少しだけまっていただけますか」
結果、納期から4週間後(約1か月後)にソースは納品された。納品されたソースはバグだらけで、テスト報告書という表紙がついたモノは使いまわしの試験報告書でした。
これ以外にも
 「あれ、送ったはずなんですけど、メールのゴミ箱に入っていませんか」
 「すみません、圧縮して送りましたが、パスワードを送付しわすれました」
 「USBメモリの中身が見れませんか?USBメモリの初期ロット故障ですね。違う機器で再度送りますね」
 「バージョンが古いものを送ってしまいました、再送します」
 「コロナでオフィスが閉鎖されて、サーバーのソースを取り出せないんです」
などがあります。信じるか信じないかは、プロマネ次第。でも担当者が倒れたと聞いて「診断書だせ」とか言えないよね。

 

納期やコストが大事です

今回はデリバリーをテーマにしましたが、品質についても語ってみました。三要素のなかでは、品質が一番ネタが多いんですよ。でも、何度もいいますが、プロジェクト/ビジネスでは、納期やコストのほうが大事です。
では良き眠りを(合掌)。

「今日は寝られないよ!」by 織田裕二(「世界陸上」MCでの言葉)

    • 商標について
      本コラムに記載されている商品やサービスの名称は、関係各社の商標または商標登録です。文中では、(TM)や(R)を省略しているものもあります。
      引用・参照について
      本コラムで引用・参照した図表や文章については、明示して引用元・参照元を記載しております。
      著作権・免責について
      本コラムの著作権は、著作者に帰属します。本コラムは著者の主観に基づく情報の提供のみを目的としており、本コラムに記載された内容を用いた運用などは、読者の責任と判断においておこなってください。また、記載内容は、執筆時のものを使用しております。

 

*1 デリバリー(英: delivery)または宅配(たくはい)とは、日本では主に食事や商品の配送形態を指し、調理加工品の配達は出前と言う場合がある。Delivery という英語には配達や配信などの意味の他に「出産」(英語:deliver)や「話し方」(造語:delivery skill)など複数の意味を有する呼称名詞であるが、日本語でデリバリーと言えば主に食材や調理加工品を含んだ食事を自宅や会社まで配達する業者や、その食品を指すことに限定される。配膳など人的サービスを伴うケータリングとは区別される。 (Wikiから)

*2 品質が一番大事と声高に主張する方々。現場の末端エンジニアよりも品質管理を担当する専門家やテスター(よりもテスト支援者)が多い。経営者とかプロマネが主張することはまずありません。品質はプロジェクトの一要素にすぎないですから。逆に言うと、「品質」しか見ていない方々がよく主張しています。
ある意味、「品質」は「セキュリティ」と同じです。お金や時間をかければいくらでも上がりますが、効果は比例しません。コスト・時間とのバランスが大事です。

*3 大学のレポートに、「カレーのおいしい作り方」を書くと単位がもらえる、という都市伝説があります。この話の出どころは、1975年に当時10歳のYさんの父親の実話。大学の先生だった父親(Y父)が哲学の試験を家で採点していたところ、突然父親が笑い出し、聞いてみると、記述問題の解答欄に「この問題はさておき、美味しいカレーの作り方を書きます」という書き出しで、おいしいカレーのレシピが書かれていた、らしい。
【参考】大学のテストで「カレーのおいしい作り方」を書くと単位がもらえる話はいつからあるのか?
(https://news.nicovideo.jp/watch/nw641348

*4 「当たり前品質」は狩野モデル(*6)での用語。充足して当たり前の機能という定義です。

*5 納期の見積りは期間見積り、コストの見積りは金額見積り。一介のエンジニアがタッチできるものではありません。プロマネのお仕事になります。見積りの種類などについても、別のコラムで語りたいと思います。かなり深いです。

*6 狩野モデル。品質を「当たり前品質」「一元的品質」「魅力的品質」「無関心品質」「逆品質」に分類。顧客から見た品質という観点。単に顧客が満足すればOKというものではなく、該当する品質要素と満足度をリンクさせているのが見事。

品質要素 内容
当たり前品質 充足されていても当たり前と受け取られるが、
不充足であれば不満を引き起こす品質要素
自動車であればエンジンがかかるなど。
ソフト開発では仕様を満たすこと。
一元的品質 充足されていれば満足を引き起こし、不充足であれば不満を引き起こす品質要素 自動車であれば燃費の良さなど。
ソフト開発では性能要件など。
魅力的品質 充足されていれば満足を引き起こすが、不充足であっても仕方ない品質要素 オプション機能ですね。差別化機能です。
無関心品質 充足されていても不充足であっても満足度には影響を与えない品質要素 こだわり機能でしょうか。人によっては刺さる機能です。例えば、真っ赤なシャア仕様とか。
別に赤くなくても問題ないですし、赤いとファンは嬉しいだけです。
逆品質 充足されていれば不満を引き起こし、不充足であれば満足を引き起こす品質要素である ある顧客にとってはプラスだが、他の顧客にとってはマイナスとなる機能。
難しいですが、対話型のインストラクションシステムなどは、初心者にとっては満足ですが、べテランにとっては面倒なだけですね。
「こんなとこに拘るな」と苦情がでる個所でもあります。

 

狩野モデル全体の図は、以下です。縦軸に満足-不満足、横軸に充足-不充足を置くのが普通です。また、「魅力的品質」に注目が集まりますが、「当たり前品質」自体をクリアしないと、そもそも満足度が上がるどころか、不満が増加します。

<図表26-1 狩野モデルグラフ図>

株式会社ベリサーブ様のホームページから図を引用(https://www.veriserve.co.jp/asset/approach/column/software-quality/software-quality02.html

連載一覧

コメント

筆者紹介

司馬紅太郎(しば こうたろう)
大手IT会社に所属するPM兼SE兼何でも屋。趣味で執筆も行う。
代表作は「空想プロジェクトマネジメント読本」(技術評論社、2005年)、「ニッポンエンジニア転職図鑑』(幻冬舎メディアコンサルティング、2009年)など。2019年発売した「IT業界の病理学」(技術評論社)は2019年11月にAmazonでカテゴリー別ランキング3部門1位、総合150位まで獲得した迷書。

バックナンバー