1. readline.fm
  2. EP029『品質と生産性を重視し..
2024-08-19 21:01

EP029『品質と生産性を重視したソフトウェア開発プロジェクト技法』PART2

今回も『品質と生産性を重視したソフトウェア開発プロジェクト技法』を読んだ感想を話しました。

## 取り上げた本

⁠『品質と生産性を重視したソフトウェア開発プロジェクト技法: 見積り・設計・テストの効果的な構造化』⁠ Tom DeMarco 近代科学社 1987年

## shownote

https://gennei.notion.site/EP029-PART2-33e3d930377d41238a5540915cb4884e

00:06
げんえい
その流れで、5章の方に入りたいんですけど、この中でも、どうやったら見積もりがうまくいくんですかとか、
そもそも測定のためにも費用がかかるじゃないですか、みたいな話が出てくるんですけど、
この中で、ずっと質の良い予測結果を作り始めるまでには、少なくとも1年は見ないといけないっていうふうに書かれていて、
どうですか?1年見積もりますって言われたら、これどうですか?
きんじょうひでき
長いんですよね。直感的に長いのと、見積もりとかデータ収集、測定に関わるチームというか、班を支援しようみたいな話をしているんですけど、
測定班に割り当てるのは有能な人であるべき、みたいなことも書かれていて、より1年が長くなりますよね。
げんえい
そうですね。
あの人たちがコードを書いてくれてれば、半年で仕上がってたはず、みたいな。
きんじょうひでき
もしかしたらあるかもなって思うのは、現代的な感覚でいう1年と当時の1年だと、ちょっと流れが違うのかもな、みたいな気はするはするんですよね。
するはするんですけど、この本の中でも、少なくとも1年は見ないといけない。
そうしないと使い物になるようなデータって集まってこないよね、みたいな話が、覚悟を決めなさい的なニュアンスで書かれているんで、
当時としても全然決して簡単な時間ではないはずですよね。
げんえい
そうですね。個人的にはここで1年って見て、今の感覚ですけど、長すぎる、時間かけすぎって思いながら、
じゃあ当時80年代に1年って言われた時に、多分そもそもみんなが好き勝手、コードが書ける環境がないとか、
そういうことの世界においての1年ってことですよねって思いながら読んでましたね。
作ってみてこんな感じですかねとかって、そんな簡単に言えない状況ってことですもんね、多分これは。
でもこれが例えば建築とかになると、建築の見積もりってどこからどこまでなのかわかんないですけど、
例えば模型を作って、大きい商業ビルを作ります。1階から何階にはテナントが入っていて、上はオフィスフロアになっていてみたいな。
03:04
げんえい
そういうのをやる時ってどれくらいかけるんですかね。
きんじょうひでき
そうですね。建築もそうだし、車とかも。重工業みたいなものも多分そうですよね。
げんえい
そうですね。たぶん小さいサイズで作ってみて、イメージこれで合ってるよねみたいなのをみんなで認識合わせしたりとか。
きんじょうひでき
建築とか、重工業的なものだとまだ部品は完全に同じ部品から作るってことはないと思うんですけど、
とはいえ利用したりとか、どのくらいの幅の改善をしたものを使うかみたいな実データがあるかなっていう気はしつつ、
げんえい
医薬品とかもっと大変かもしれないですね。化学領域、化学の領域とか。どうするんですかね。
化学とかそもそも成果が出るかどうかわからないみたいな世界とかもありますからね。
きんじょうひでき
そうですね。まあまあそっか。研究R&Dはまた別か。
げんえい
より現代のソフトウェア開発に近いというか、不確実さを乗りこなすために日々の変化に適応していきましょうに近くなりそうな気がしますね。
きんじょうひでき
そうですね。ただMVPで薬を出荷するとかできないですからね。
げんえい
そうですね。まだそれがこう、やっぱよしよしはあるものの動物実験だったりとかになるんですかね。
まあまあまあ。
まあそれなりの基準を取ったら、知見みたいなものがあって、スナイサンプルで実験してみて、
でそれがOKになったら市場に出すっていう意味では、もしかしたらベータ版を使ってもらってみたいな。
これ読んでると、周りの人たちってどうやって計画をして、どうやって物事を進めてるのかってちょっと気になってきますね。
周りの人っていうのは?
業界の違うような人たちってことですね。
そうであれば逆に言うと確かに我々の業界、見積もりとか、
きんじょうひでき
僕は多分極端に本当にいわゆるスタートアップみたいなところから始めてるんで余計にだと思うんですけど。
そうか。
げんえいさんとかそれこそ、あれじゃないですか。他のお客さんのためのシステム開発してる。
はいはいはい。
この時は最初の自分が働き出した3年間はほぼ客先だと思うんですけど、
そういうのがあって、
そっか。
そっか、そういうのがあって、
そういうのがあって、
06:01
げんえい
そういうのがあって、
この時は最初の自分が働き出した3年間はほぼ客先上昼で
額を受けみたいな感じだったんでもう予算とかスケジュールとか決まっている中にポンと放り込まれて
これいついつまでに来るかなみたいなこんな感じだったんですね
まあそれは次世代システムへのリプレイスみたいな案件だったんで
たぶん予算はある程度これ何億円なのか何千万なのか知りませんけど
お金は取ってあってたぶん出荷日は決まってるんですよねある程度
多分クォーターレベルぐらいの感じでここをターゲットに
次の世代のシステムに入れ替えていくぞみたいなそこから逆算して
やりたいことってなんだっけみたいな要求を取りまとめて
いわゆる要求仕様書みたいなものがあって
それの基本設計が出来上がってるぐらいのところにポンと放り込まれたって感じですかね
きんじょうひでき
なぜそうだったのかとかはわからないけど
げんえい
どう?
1年後にはこれが出来てないといけないと言われながら
いやてか今目の前にあるこれをどうやったら作れるか俺わかんねえんだけどなと思いながら
1年後にこれだみたいな感じで言われてて
きんじょうひでき
なるほどいいっすね
でもざっくり言うと話戻っちゃいますけど
まあ何だろうな
多分この計画の立て方とかよくわかんない式のプロジェクトって
それこそ建築業界とか許されないと思うんですよね
げんえい
許されないと思いますね
きんじょうひでき
とりあえず3ヶ月足場組んでからちょっとどういう
げんえい
何回までいけそうか考えますみたいな
やれそうだったら7回立てにしますねみたいなのって許されないと思うんですけど
きんじょうひでき
なんか弱に言うと我々の業界ソフトウェア開発は
なんかこうプロジェクトがねさっき冒頭で述べたような広い
ありようの成功率失敗率っていうのを許されてる見逃されてる
許容されてる目をつぶってしまっている状態
慣れてしまった
まあまいしてる状態で
そうするとそこから近づいてくる電車のことですねって言いながらみんな線路脇でコード書いてるみたいな
話ですけどその状況の中でねさっき言って1年間測定に費やしますみたいな
そのコストの書き方ってちょっとはギョッとしますよね
09:04
げんえい
そこまでやるんですかみたいな
きんじょうひでき
そうこの本の44ページ5章の結びのところにも測定できない事柄コントロールできない
測定にはお金がかかるっていう風に書かれていて
げんえい
たぶんお金を真面目にかけてやってないんですよね裏を返すと
そうですね
きんじょうひでき
だから今があるみたいなそれってやっぱりなんでなのかなっていうのはちょっと気になりますよね
たぶんやってもうまくいくわけないじゃんみたいなところなんだと思うんですけど
げんえい
少なくとも自分の心情だとあんまりこうめちゃくちゃ予測見積もり計画が超ドンピシャでハマりますみたいなのって
あんまりこう少なくとも自分はうまくイメージできないなって思ってしまって
じゃあ1年じゃなくて半年だったらどうすかって
問いに返ってきます
きんじょうひでき
君は明日から測定班に入ってくれって言われて半年間何するかわかんないですよね
半年間でわかんないですけど例えば半年間で
げんえい
なんだろベロシティ2倍にしてくださいプロセスを改善してくださいだったらわかるんですよ
きんじょうひでき
プロセスエンジニアリングだったらなるほどじゃあどういうところからやろうかなみたいな
測定をして青本を作ってくださいって言われると
ひどいですよねもう裸で雪の中に佇んでるレベルじゃねえぞっていう気がしちゃうので
どうしたものやら
げんえい
このトムネマルコのこの本の肩を仮に持つとしたらなんとなく今話してる中で自分が思ったのはもう
超巨大プロジェクトなんか1社じゃなくて3社4社5社連携して
作りますみたいななんか銀行みたいな話になってきましたね
きんじょうひでき
銀行とかでありますよね基盤システム機関システムの入れ替えとかね
げんえい
あそうそうそうみたいなもので半年とか1年かけて
これでいう見積もりまちょっとこの後ろの方にはこう実はなんかのちょっと設計の話とかも入ってきますみたいな部分も
出てくるんですけど
なので全体のアーキテクトみたいなものをやってその結果どういうものを作らないといけないのか理由とかを分けていって
こういうものを作らないといけないよねこういう機能が必要だよねみたいなのを分解していって
じゃあこの1機能あたりどれぐらいかかりますかねみたいなのを見積もっていくみたいになっていくとしたら
半年って言われたら半年1年とかって言われたらまあなくはないかなって一瞬思ったんですけどまぁでも当たんねーしなーとか
あとなんでこれが当たんないのかみたいなところの1個の要因としてはやっぱり人によってできる力量が違いすぎるっていうのは1個あるのかなって思ったりして
12:10
げんえい
あのさっきの青本の話って多分まあ平均的に誰がやってもそれぐらいになるよねっていう話だと思うんですよ
逆に言うとこの倍の成果を出すとかって結構難しい倍とか倍はできるかもしれないけどその10倍とかは多分難しいみたいな
いう世界だと思うのでなんかそこがやっぱソフトウェアのなんか全然違うところなのかなぁみたいな思ったりとかちょっとしましたね
きんじょうひでき
あーでもそうですねさっきちらっと言う9ページの青本の作業時間のサンプルみたいなやつ見ると本当にねちっちゃい単位に作業手順工程が分解されていて
でこれ多分あれなんすよね手順書みたいなものが用意できるレベルで分解されてるんですよね手順書本当に用意されてるかわかんないけど
なんか本当に先輩がちゃんと教えてちゃんと作業手順がドキュメントがあるかどうかじゃなくてそれはあの業界が違うんでわかんないですけどちゃんと手順を教えてそれの通りにやればオッケーみたいな
げんえい
もちろん技術的な上手い下手習熟度みたいなのはあるにせよちゃんとできるできないっていうラインが明確には白黒つくみたいな
きんじょうひでき
ぐらいになるはずですよねでまあ他方でやっぱりソフトウェア開発だと
げんえい
丸々モジュール丸々インターフェイスに従って丸々モジュール丸々クラスを作ってくださいって言われた時に
きんじょうひでき
まだやっぱりこう作業者開発者の何ですかね思考の判断の余地がなかなか残ってくるんじゃないかなみたいな気がしてだから本当にあのフレームワークのチュートリアルみたいな
これに従っていれば出来上がりますみたいなのをチケット一個一個に結構細かめに区切ったチケット一個一個に全部用意すれば
青函ができる可能性が半分ぐらいまで行くのかなみたいなそのレベルの話をしてるんですよね
げんえい
そうですねっていうのをプロジェクト初期の分析設計フェーズで全部やれみたいなのがちょっと落ちみたいになっちゃうんですけどなんかこの本が言ってることかなっていう気が個人的にはする
そうなると作っちゃった方が早いんだよなってなっちゃうんですよね
きんじょうひでき
いやそうなんですよねそうなんですよね
げんえい
たぶん建築とやっぱ違うところ建築の場合はじゃあ作っちゃえばいいよねって仮になったとしてもその土地が確保されてないとかその資材がないとかみたいな世界はあるので
それとソフトウェアってもう目の前にラプトップがあってあとはコマンド叩くだけですとかエディターでこうコードを書いていくだけですだったらもうやりなよっていう風になっちゃうし
15:08
げんえい
それこそさっきチュートリアルでやるレベルまで落とし込んでってなったらじゃあRailsDって打ってもう自動生成すればいいやんみたいな
繰り返しやるようなことっていうのはコンピューター得意なのでもうできちゃうじゃんみたいなことになってしまうんで
じゃあそこまで細かい作業に落とし込むのはやっぱ必要ないよねってなっちゃうんですよね
きんじょうひでき
そうするとでもあれか夢のある話としてはテストファーストでやっちゃうATDDとかでスペックを割と自然文に近いレベルのスペックを書いて
でこれを全部パスするように内部モジュール組んでいったら完成ですよねみたいな話なのかな
いやきつそうだよなきつそうだし何だろうな本末転倒の感じは何もアジャイルじゃないじゃんって感じがしちゃうね
げんえい
そうですねでもそこによって得られるものとしては費用だったりとか期間だったりとかっていうことの情報っていうのが潤沢に手に入る
いうことだと思うんですけどじゃあそれが一番欲しいものかって言われたらきっとそうじゃなくて動いてるものが欲しいので
本当は欲しいのはなので動いてるものの方を優先してくれよってなっちゃうってことですよね
きんじょうひでき
そうですねいやなんかやっぱり本質的に測定とか計画なんだろうな来るのをある種遅らせてまで取り組む計画っていうところをやっぱり相対的に低く見てる感じはありますよね
いやこれはなんか正論として本質的にそうだよねっていう話なのかいやお前らは調子乗ってるこの三塾田三条目がみたいな話なのかはちょっとわかんねえなって気がするんですけど
げんえい
ここで難しいのはその仮に1年かけて失敗の可能性とかこれは難しいっていうことがわかった時にその初期費用その見積もりのための初期費用だけで
踏んだとん切りができたって見入れるかどうかっていうことな気もするんですよね
きんじょうひでき
あそれやるのに1000ドルかかるんですかじゃあ今回は大丈夫ですみたいな話になってそれはウイウイなのかな
いやでも突っ込むとね進む先もう時刻だぞみたいな感じもあるかもしれないんで
げんえい
しかもだいぶ精緻な例えば幅が6%だったからさっき仮に10%ぐらいの幅予算とか期間に対して10%の範囲だったら奉仕してもいいと思えるかどうかですよね
18:15
げんえい
奉仕してでもソフトウェアの開発の後期に行くにつれてこう間に合わないって言って予算超過するんやろって思われたらなんか危ないギャンブルな気がするなって気持ちになってきますね
きんじょうひでき
測定にどのくらいのコストをかけるのが適正かなみたいな話も後の方に出てきたりはするんですけど
げんえい
となくともね社内に投入できるナレッジとして測定結果っていうのを貯めるためにまず1年頑張りましょうよのイニシャルコストの1年がちょっとなかなかハード高いなっていうのはやっぱりね感じちゃうなっていうところですかね
きんじょうひでき
どんだけうまくいくかわかんないんだもんな 1年かけて作ったものがどのくらい寿命を持つのかもわかんないわけじゃないですか
げんえい
そうなんですよ しかも使われるかどうかまた別の話じゃないですかこれ出来上がるっていうことに対しての見積もりだと思う
きんじょうひでき
使えるか使われるかどのくらい使えるかっていうなんか嫌なパラメーターが3つはありますね
げんえい
需要予測って多分建物だったらまあもっとしやすいんでしょうねマンションにどれぐらい人が入居率がどれぐらいなのかとか
そのオフィス街にビルを建てていく率がどれぐらいになるかみたいな
まあこれ以上生まればちゃんとプラスに好転しますよみたいなことが読みやすいものと一方でソフトやって
どれぐらい 2 c であればマーケットで入るかどうかってそれ単体の影響力ではなく他のものとの兼ね合いもあるし
なんかもう考えることが無数にあって まあある種買い切りにしてくれるんだったらいいのか
2 b とかで納品して終わりますこれを行かれからで買い切ってくれるんだったら そういう価値はあるかもしれないけど
でもお客さん1年待って納品されて 買えないものだったらどうどうするんだろうって思ったりとかしますけどね
きんじょうひでき
はい いやなんか第一部からちょっとアウン立ち込める感じに
なってますけど じゃあパート2行ってみますか
げんえい
第2部 行きますか
きんじょうひでき
第2部が
21:01

コメント

スクロール