2021年1月7日木曜日

バッファとゆとりとスモールリリースとFRT

 CCPMのバッファだけを監視する

という考え方はシンプルで誰でも状況把握可能かと思います。

しかし、バッファという言葉が、どうもしっくりきません。

言葉というより「バッファを入れる、付加する」というアプローチがしっくりこない感じ。

自然に入るものであるべきというか…


ゆとりの法則も、何度も読んでいますが、

必要なのは納得なのですが、”ゆとり”という言葉がどうもしっくりきません。

こちらも、言葉というより「ゆとりを取り入れる」というような

敢えて、組み込むような感じがしっくりこない感じです。

こちらも、敢えてではなく、普通に”ある”ものであるべきな気がするのです。


そして、アジャイルのスモールリリースは、”ゆとり”やバッファとは対局のようですが、

同じ考え方だと思うのです。


価値を小さく短い期間で提供していく事が、”ゆとり“やバッファを作り出す。

これでは分かり難いですね。

”ゆとり”もバッファも価値定義の曖昧さに含まれると思うのです。


最初のリリースの価値定義、リリースするモノ(仕様)は、多少なりとも曖昧さがあり、

「まずは、ここまで作ってみましょう。」

というようなスタートになる事が多い気がします。

お互いの認識合わせをしながら形にしていくようなケースが多いかと。

そうなると、いい意味で探り合いしながら進めるので、

最初は曖昧となるが、リリースを重ねる事で、認識も、価値定義も合ってくる。

そして、この曖昧さが”ゆとり“であり、バッファと言えると思うのです。


当然、後半は”ゆとり”もバッファも、少なくなりますが、

後半は何が重要であるかという認識も、作業スペースも掴めている状況なのですし、

全ての認識合わせが出来ている状況で、たとえ、短期間で一気に作り上げるといような

いわゆる“ゆとり”が無い状況だとしても、

士気は最高潮、集中力も高くなるのでミスも少なくなります。


予算の関係から、何回のリリースで完成するのかが明確でないと受け入れられない!

という事も言われますが、

これも、完成品が見えてくれば、その後の回数は分かります。

完成品が見えるまでを試作評価期間と考えるなど、対応方法はいろいろあるかと。


そうそう。こういう時こそ、曖昧な価値定義や仕様を仮説検証FRTですね!

2つのFRT(曖昧なFRTと検証した結果を書き込むFRT)

にする事で、おおよその計画となります!

仮説検証FRTについては、改めて紹介したいと思います。


と、いう事で、

スモールリリースとバッファ監視。

対局のようで、実は同じでは!?

そして、スモールリリースはしっくりきます。

2020年12月22日火曜日

なぜ削れないのか

ソフトウェアを早く作るには

目的を決める事、仕様を決める事

しかも、早く決める事が

大きく影響します。

そして、シンプルにする事

なのですが、

究極までに機能を減らす事

と表現した方が良いでしょうか。


先日、こんな相談がありました。

「余計な機能はいらない。〇〇だけが出来ればいい。そんなソフト作ってよ」

実は、この、〇〇だけが出来るソフト

の企画を数年前にしたメンバーがいたのです!

もちろん、今回のようなユーザーがいる

という仮説を立てて、サンプルを作成しました。

私含めて、周囲は全員賛同し、一気に作成しました。


競合は多くありますが、ここまでシンプルなものは

当時も今も無いのですが、

サンプル作成で終わってしまいました。


今からでも遅くない?!

と、いろいろ考えてしまいます。


競合が機能を削るのは簡単だと思いますし、

製品ラインナップにあっても良い気がします。

なぜ機能を削ったものが世の中に無いのか。

なぜ機能を削る事が出来ないのか?!


幅広いユーザーを獲得するには、機能が豊富である必要がある?

同じ開発費用で多くの機能を盛り込む必要がある?(コスト削減?)

削る理由がない?

削って売れなければ、大目玉?!

多くのアサンプションがありそうですね。


根拠は全く無いですが、ちょっとしたきっかけで変わる気もします。

どうすれば、削る方向に向かうのか。

売れれば問題無いのでしょうが、それは結果ですからね。

創る段階、企画の段階で「削る」決断となる、何かが必要ですよね。

ん?!

そもそも企画にする必要がある?

ある企画の中に潜り込ませれば、イケル???

これだと決断にはならないか…


削ってみようと思わせる何か。

何か手はありそうな気がしてきました。

更に考えてみたいと思います。

2020年12月8日火曜日

なぜなぜ分析では言い訳となる?

 「なぜ?」と聞かれると本能的に言い訳を考える。

また、否定的なニュアンスがある。

と。

NLPの本を読んでいて目についた。

(『手にとるようにNLPがわかる本』)

納得するところはある。


つい、言ってしまいがちな「なぜ?」

とても便利な「なぜ?」

では、どうするか。


「どうしたの?」と言い換えるなど、

いくつか言い換えの例があったが、

場面毎に変える必要がありそう。


ソフト開発業務のありそうな場面を思い浮かべると

書籍の例ではしっくりくるものは無かった。


というか、「なぜなぜ分析」はNLPとしてはNGって事か!


ずっと、ソフト開発には馴染まないと思っていました。

不思議な感じはありません。

理由のひとつは、今回の「否定的なニュアンス」かと思う。


ソフト開発での不具合混入原因などに活用すると、

どうしても、担当者を否定する方向になってしまう。

うまく、人ではなく、仕組みやプロセスの方向に誘導しても、

どうしても、担当者を否定している感じが残る気がしていました。


その答えが見つかった気がします。

ソフト開発は人以外の製造工程はないのですが、

製造などでは、人以外にも関係するモノや工程、過程などがあるので

人を否定している感じにはなり難いのだと思っています。


TOCを知ってからは、TOCの方が分析が早かった実績などもあり、

なぜなぜ分析は活用していませんが、

それでも、「なぜ?」は便利ですよね。

日常で、けっこう言ってる気がします。


これを言い換える為には、一回飲み込む必要がありそう。

しかも、場面毎に変えるのも難しそう…

どの場面でも活用可能な言葉はないだろうか???

う~ん…

場面毎に変えるしかなさそうですね…


2020年11月17日火曜日

改めて、アジャイル宣言の背後にある原則

 「アジャイル宣言の背後にある原則」って長いなぁ

https://agilemanifesto.org/iso/ja/principles.html

アジャイル宣言も

アジャイル宣言の背後にある原則も

ちょくちょく読み直します。

なぜでしょうか???

何か、思うところがあって、読み直すのですが、

そのシチュエーションは様々ですね。



今回は、TOCのフォーカスする事とスモールリリースって狙うところは同じだよなぁ

って想いながら、なんとなく原則を読みました。

すると、

“シンプルさ(ムダなく作れる量を最大限にすること)が本質です。

が目に止まった。

シンプルにする事は、早いリリースを可能にするだけではなく、

量も最大化する。

つまり、フロー(流れ)も最大化するって事ですね。

リソースを増やすのではなく、

シンプルにする事で、最大化する!

昨今、ますますソフトウェアって早く創れるようになったと感じます。

条件は、目的と手順が決まっている事ですね。

そして、最近は、決める為に必要なのが『シンプルさ』だと思うのです。

複雑にしない。シンプルにして決める!


そして、もう1つポイントだと思う事が、

プロダクトオーナーとソフト開発者を仲介する存在の必要性です。

この存在がシンプルさの実現に大きく寄与すると思っています。

プロダクトオーナー的な思考を持ったソフトウェア開発者が仕様を設計する事で、

仕様もソフトウェア構造もシンプルになる。


改めて、シンプルさが本質ですね!!



2020年11月5日木曜日

FRTとABテストとLAMDA

新たな企画での仮説を検証する為に検証リストを作成しました。

検証する事が、学習する事になるのですが、

ここ、モヤモヤしています。

仮設を立てて、検証して、結果が出る事で学習して、さらなる仮設につながる。


1つ目のモヤモヤ

LAMDAは学習サイクルであり、これまでも有効活用してきました。

しかし、価値検証の学習フェーズではLAMDAは向かない?!

うまく活用出来ていないだけ?


2つ目のモヤモヤ

ABテストもニーズ検証などで、これまでも有効活用してきました。

しかし、価値検証の学習フェーズでは、ABテストは向かない?!

うまく活用出来ていないだけ?


これまで、この3つのツールをごちゃごちゃに使っていたので、うまく学習した事を残せていません...

この3つのツールを適材適所に使うことで、

もっとスムーズに仮設検証が可能になる気がしていますし、学習した事を時間をかけずに資産化できるようにしたいと考えています。


と、整理した結果、

価値の検証の大きな流れはFRTで見える化。

FRTの中の分からない事、曖昧な事は、LAMDAで学習し、共有する。

LAMDAを使って明確になった事、

もしくは、既に明確になっている事の

さらに細かい手段の検証にABテストで共有する。

という感じかなぁ...

2020年10月21日水曜日

早く創る為の5箇条?

早く創る(ソフト)為の5箇条を考えてみました。

本当は八策にしたいのだけど...  5の方がシンプルですね。

価値定義が出来ている前提で、どうすれば早く創れるのか。


今回のプロジェクトではチームとして連携できて、

各ピースがうまく噛み合って早く創れたと思いますので、

早く創れたポイントをまとめてみました。


その①:分ける

価値と目的(機能)と手段を分けて考える事がまず第一歩かと。

価値を提供する為に、どんな機能(目的)が必要か。

その目的達成の為にどんな手段が考えられるか。

それぞれシンプルに必要な事を小さく列挙して、

カテゴリ分けするのが良いかと思います。


その②:流れにする

分けたものを繋げます。

可能であれば、提供する順番、検証する順番に繋げるのが良いです。

私はここでFRTを活用しました。

提供する機能、期待する状態(行動)、アサンプション(前提など)

の3つで流れを作りました。

これで方向性が定義されます。


その③:目的が達成される手段を組み込む

流れに手段を追加していきます。

手段で目的が達成される事を確認しながら追加します。

最短手段にこだわり、目的達成を忘れない事が重要です。

見た目が目的達成において重要な要素であるならば、見た目も含めて検討します。

また、目的に対して1つの手段であれば、その②の流れに記載すれば良いのですが、

目的の為に必要な手段が複数ある場合もあります。

その場合は、目的に必要な手段をグループ化して、そのグループで流れを作ります。

操作手順や時間軸で流れを組み立てます。

目的が達成される事を何度も確認する事が重要かと思います。


その④:「なぜ?」ではなく、「こうすると?」

手段を検討する上で、最も早い手段を検討する上で

なぜ時間がかかるのかを聞くのはタブーかと思います。

「なぜ?」と聞くより、次々提案する方が結果的に早い気がしています。

もちろん、時間がかかると思い込んでいる可能性もあるのですが

「こうすると早くなる?」といった議論の方が推進力が上がる気がします。

そして、議論する事で思い込みが解消される事も多いと感じています。


その⑤:とことんバトルする

早さを実現する為には、建設的なバトルをする事が欠かせないと思います。

「なぜ?」のバトルではなく、

「これは?」「こうしたら?」「このほうが」というバトルです。

チームでお互いに目的を達成する為の手段の案をぶつけ合うバトルです。

ときに、「そもそも」といった確認もよくあった気がしますね。

具体的な作り方、実装方法を議論するというより、目的達成のためのアプローチを議論する方がチームとして盛り上がる気がしています。

具体的な実装方法は実装する人(アサインされた人)に任せるというスタンスも重要かと思います。

バトルする上で①、②を共有、合意している事がとても重要になると思っています。

合意している事で、余計な発散を防ぐ事ができます。(と思っています)



もう少し整理する必要はありますが、この5つは重要かと思っています。

もう1点、「絵を描いて議論する」を入れようかと迷いましたが...

やっぱり、この5つかなぁ...

2020年10月9日金曜日

会話⇒やらない事が決まる⇒早く作る

 早く作るには技術はもちろん必要ですが、

要求や目的がシンプルである事が大きい!

と、今回、改めて実感しています。


そして、要求や目的をシンプルにする

とは、

こちらも改めて、やらない事を決める事

と改めて。

やらない事が多く確認出来れば

いや、違いますね。

やらない事を、チームで多く、たくさん、常に、都度、話す事で、

フォーカスが絞られていく。

という感じでしょうか。


もしかすると、この ”たくさん話をする” 事が

フォーカスを絞る事、やらない事を決める事に、

大きく作用するのかもしれません。


結果的に後戻りになったり、余計なものが作られてしまうのは、

やらない事についての話が少ないのかもしれません。


話をしていると、「そこまでいらない」といった言葉も

よく出ていたような気もします。


とすると、チームでどんな話をしているかで、

早く作れるチームかが分かるのかも?!


これって、既に分かっている事だったりして…