QCDの死角

失敗の正体

システムの失敗は見えないことがある。ブラックボックスであるがゆえに隠せてしまうからである。失敗かどうかの線引きができないところがシステム構築プロジェクトの難しいところである。

エンジニアの真実

もしかしたら、エンジニアが都合の悪いことは隠していることがあるかもしれない。しかし、決めつけてしまうとエンジニアはへそを曲げてしまう可能性がある。隠しているつもりはなくても隠れていることもある。

成功の境界

失敗の線引きは、納期が遅れることであろうか。バグが多いということであろうか。実は、状況によって一概に言えないのである。QCDという言葉があるが、品質と費用と納期のバランスを上手にとったとしても成功か失敗か、すぐにはわからないのがシステムという無形物である。

コスパの本質

コスパという言葉があるが、かけるコストに対して、どれだけのパフォーマンスが出せるかが問題となる。システム開発では、コストからやりたいことを計算するのではなく、やりたいことを明確にしたうえで、コスト内でリッチ度合いを調節することが重要である。

まとめ

システム開発においては、失敗が見えにくいため、失敗しないように見えるのかもしれない。失敗しないことは、成功であるということでもない。時間が経つにつれて失敗を感じることもあり得るのである。

関連記事

思考と決断のPM力

PMの真価

スキルシート上にあるPMというのは、どういった開発言語や開発環境などを使ってきたかという内容であることが多く、SEの延長という意味合いが強く残っている。もし、期待するポジションが発想力や提案力にあるとすれば、姿勢をみることが大切となる。

従順の呪縛

就職氷河期と呼ばれる世代より上の年齢層では、常に従うことを幼少期から叩き込まれていると考えられる。日本では「禁止」か「許可」かを常に意識しながら仕事をしており、「許可されるまでは禁止されている」と考えているのではないかと推察される。

失敗からの成長

正しいか、間違っているか、の判断基準しか持ち合わせていない場合、何か問題が発生したときに時間を遡ってどこで判断を間違えたのかを追求する。それは大切なことであるが、実際のプロジェクトでは誤ったことを反省しつつ修正しながら進むことが大切である。

判断力の真髄

エンジニア出身のPM(開発プロジェクトのPM)だと、禁止か許可かというデジタルのような見方をしている人もいる。特に今日のシステムに関するプロジェクトでは、ゼロかイチだけでは判断できないような、ウエットでアナログな状況判断が必要となる。

まとめ

たとえ能力の高いPMだったとしても、仕事になると発想することや作ることの楽しみより、ミスによる懲罰を恐れたりするために、無難で当たり障りのない判断をしがちである。システムに関するプロジェクトがなかなか前へ進まない理由でもある。

続きを見る >

業務可視化によるDX推進

真の業務改善への道筋

いきなり顕在化しているアナログをデジタル化するだけでは業務改善とは言えない。真の業務改善を実現するためには、表面的な問題解決ではなく、根本的な業務の見直しが必要である。業務を可視化して正しい業務分析を行うためには、ある程度のステップを踏む必要がある。単純なデジタル化は一時的な効率化にとどまり、長期的な競争力向上には繋がらない。

目的とゴール設定

まず、目的とゴールを明確にする必要がある。なぜ業務分析をするのか、何を達成したいのかを明文化することが重要である。例えば、「手戻りを3割減らす」「問い合わせ対応時間を半分にする」「余剰コストを1千万円削減する」などの具体的な数値目標を設定する。曖昧な目標設定では、後の分析や改善施策の効果測定が困難になってしまう。定量的で測定可能な目標を立てることで、分析の方向性が明確になり、成果を客観的に評価できるようになる。

業務の可視化技法

現在の作業タスクのすべてをまずは網羅的に洗い出して、分類を行う。複数担当者で付箋にタスクを書き出し、重要度マトリクスや緊急度マトリクスで整理する方法が非常に有効である。また、必ず用意しておきたいのが、業務フロー図と業務の分担表である。誰が、いつ、どこで、何をしているかを図式化することで、無駄や重複、ボトルネックが浮き彫りになる。このプロセスにより、今まで見えなかった非効率な作業や不要なプロセスを発見できるのである。

根本原因の探求

課題の本質がまとまったら、重要な事項と緊急の事項などを切り分けて、本質的ではない事項は思い切って削除や軽減を検討する。また、抽出した課題は小さな原因に分解していき、根本原因を探る(要因分析)。リソースが限られる場合には、ABC分析(例えば顧客ランク別)で、重要顧客に注力できるよう業務配分や訪問頻度などを見直す。定量データや日報などのログ、クレームデータの活用も効果的である。AIで課題を解決するより前に、膨大な過去データをAIに処理させるのも良いだろう。

まとめ

定量化・定性化できれば、効果検証につなげる改善策と実行計画を策定する。正しい業務分析とは、単なるデジタル化ではなく明確な目的に基づいて、ボトルネックを可視化し、データと構造化された分析を行うことなのである。継続的な改善こそが真のDXを実現する。

続きを見る >

開発費用値下げの危険性

開発手法の選択基準

大がかりなシステム開発においては、ウォーターフォールモデルという開発手法がとられ、設計書などのドキュメント類も整理してから、プログラミングへ着手する。逆に中小規模なシステム開発においては、アジャイル開発と呼ばれ、プログラミングをしながらシステム開発が進められたり、ドキュメント類は簡易にして、プログラミング工程へ着手するといった方法がとられる。状況に応じて開発手法は使い分ける必要がある。

設計書の必要と課題

建築では図面なく建物を建てることはないが、中小規模のシステムについては簡単な概要だけでシステムの開発ができてしまう。もちろん設計書をしっかりと書いて、要件を詰めてシステム開発を進めることができれば、トラブルもなくていいのではないかと言われる。しかし、設計書を作成するにはシステムをプログラミングすることと同じくらい費用が掛かる。

設計書の粒度と要因

中小規模のシステム開発において設計書が簡易になってしまう理由は、ユーザー側や発注側の予算が乏しいという理由がある。建築のパターンの場合は、法律によって作成しなければならない図面や、施主から同意をもらうべき書類などが決められている。システム開発には法的に作成しなければならない書類が明確にされているわけではないため、この粒度が各社・各エンジニアによりバラツキが発生する。

文書管理の現状

中小規模のシステム開発において、最悪の場合は設計書がないケースもある。小さなプロジェクトの場合は予算も少なく特にドキュメント類がないが多くある。あるいは、システムはアップデートされ続けているのにドキュメントはアップデートされていなかったり、ひどい場合にはシステム保守ベンダーが紛失している場合もある。

まとめ

システム開発に時間がかかる理由は、設計書から作成することでプログラミング作業の2倍以上の時間がかかると言われる。いわゆる動作検証の工程まで入れるとプログラミング作業の3倍程度は時間がかかる。また、システム開発はほとんどが人件費である場合が多く、かかる時間に応じて費用が上がる。つまり、非エンジニアが単純に開発費用を値切ると、プログラミング以外の重要な情報を削っていくことになる。

続きを見る >