ラチェット方式とは
ラチェットは一方向にだけ回る。戻らない。手を離さずに、回し続けられる。
ソフトウェアを作り直すコストは、ほぼ消えました。この前提の変化のうえに立つ開発方式です。
- ウォーターフォールは、一方向に落ちる。ラチェットは、一方向に上がる。
- 現場に出すのは、使う人が「これなら出せる」と言ったものだけ。
- 出したあとも、月額の中で直り続ける。
なぜラチェットなのか
ラチェットは、のこ歯の歯車(ラチェットホイール)と爪(ポール)でできた機構です。歯が非対称なため、一方向には爪が滑って乗り越え、逆方向には爪が噛んでロックします。ラチェットレンチ、ジャッキ、巻上機に使われる、建設・製造の現場道具そのものです。
| ラチェットの機構 | ラチェット方式 |
|---|---|
| 一方向にだけ回る | 改善は積み上がる。悪くならない |
| 逆方向は爪が噛んでロックする | 一度良くなったものを、二度と悪くさせない |
| 戻し動作は空転する。力がいらず、締めた分は減らない | 作り直しは無料。しかし積み上げたものは失わない |
| ヘッドをはめ直さず連続で回せる | 手を離さない。狭い場所でも回し続けられる=伴走 |
| 締める/緩めるは、人がツマミで切り替える | 進む方向を決めるのは顧客。私たちは回す |
| 一段ごとに音が鳴る | 進んだことが、その都度わかる |
| ジャッキ | 少しずつ、確実に、重いものを持ち上げる |
戻らないのは自動ではありません。爪という仕組みがあるからです。私たちにとっての爪は、本番検証ゲート、リリースノート、改善要望の台帳です。仕組みがなければ、積み上げたものは必ず落ちます。
4つの価値
仕様書の合意よりも、動く現物での合意を
速く出すことよりも、出せる状態で出すことを
納品よりも、直り続けることを
作って渡すことよりも、直せるようにすることを
左記のことがらに価値がないわけではありません。私たちは右記のことがらにより価値をおきます。
仕様書の合意よりも、動く現物での合意を
仕様書は、作るのが高かった時代に「作る前に間違いを潰す」ために発明された。作るのが安くなった今、先に作って見てもらうほうが速く、正確で、安い。要件定義をやらないという意味ではない。要件定義の成果物を、紙ではなく動くものにするという意味。
速く出すことよりも、出せる状態で出すことを
アジャイルソフトウェア開発宣言が掲げたのは Working software(動くソフトウェア)であって、動かないものを出せとは書かれていない。日本の実務では「速く出す」だけが独り歩きし、作り込み途中のものを現場に出して信用を失う運用が「アジャイル」と呼ばれてきた。私たちは速さを、出す時期ではなく直しの回転数で使う。コンクリートは、養生期間を取らずに型枠を外すと割れる。同じことがシステムでも起きる。
納品よりも、直り続けることを
納品は、作る側が手を引く日を決める行為である。私たちは手を引かない。リリースは終点ではなく、直しの回転が現場に届き始める起点にすぎない。
作って渡すことよりも、直せるようにすることを
顧客が自分で直せるようになれば、私たちへの依存は減る。それでよい。依存させることで収益を守る構造を作らない。
背後にある8つの原則
- 現場に出すのは、使う人が「これなら出せる」と言ったものだけである。 試作品を現場に出さない。
- 作り直しに費用はかからない。 だから納得するまで作り直す。
- リリース後の直しに追加見積を出さない。 直しは月額に含まれる。
- 今の使い方を壊さない。 新しい正しさより、今の運用に合わせる。
- 一度に全部を替えない。 1機能ずつ出す。
- 現場からの「使えない」は、まず私たちが受ける。 顧客の担当者に背負わせない。
- 直し方そのものを渡す。 最後は顧客が自分で直せる状態にする。
- 完成を宣言しない。 使われているものに完成はない。
ウォーターフォール・アジャイルとの関係
否定ではありません。アジャイルソフトウェア開発宣言(2001年・米ユタ州スノーバード)が本来言っていたことを、AI駆動開発の環境で実行できる形にしたものと位置づけています。
| ウォーターフォール | アジャイル | ラチェット方式 | |
|---|---|---|---|
| 前提 | 作るのが高い・変更が高い | 作るのが高い・変更は避けられない | 作り直しがほぼ無料 |
| 形 | 一方向に落ちる | 小さく回る | 一方向に上がる |
| 戻り | 戻れない | 戻ってやり直す | 戻さない(爪が止める) |
| 手 | 工程ごとに持ち替える | スプリントごとに区切る | 手を離さない |
| 合意の材料 | 仕様書 | 動くソフトウェア | 動く現物 |
| 現場に出す時期 | 全部できてから | 早く、小さく | 出せる状態になってから |
| リリース後 | 保守契約・追加見積 | 次のスプリント | 月額内で直り続ける |
| 終わり方 | 検収 | 継続 | 顧客が自分で直せるようになる |
なお、アジャイルの源流である Scrum は、1986年の竹内弘高・野中郁次郎による Harvard Business Review 論文 “The New New Product Development Game”(ホンダ・キヤノン・富士ゼロックスの製品開発分析)にさかのぼります。もともと日本の製造業の考え方です。 ラチェット方式が現場の工具から名前を取っているのは、その系譜に連なります。
Flow Coding との関係
競合しません。階層が違います。Flow Coding は当社が内製している「システムを作るシステム」=製造ラインです。ラチェット方式は、そこで作ったものをいつ・誰の判断で現場に出すかを決める規律です。
| 観点 | Flow Coding | ラチェット方式 |
|---|---|---|
| 何か | システムを作るシステム(製造ライン) | 出し方の規律(顧客との約束) |
| 答える問い | どう作るか(HOW) | いつ出すか・誰が決めるか(WHEN / WHO) |
| 中身 | 要件定義パイプライン → 設計書パイプライン → Phase別実装指示書パイプライン → AI駆動実装層 → 多層レビュー/監査 | 4つの価値・8つの原則 |
| 見せる相手 | 「速さと品質の根拠」を知りたい人 | 「うちの現場が壊れないか」を心配している人 |
Flow Coding が「作り直しを無料にする仕組み」、ラチェット方式が「無料になったからできる出し方」です。原則2(作り直しに費用はかからない)は願望ではなく、要件変更が設計書から指示書、コードまで一気に再生成される Flow Coding の実装があって成立します。道具でたとえるなら、Flow Coding がラチェットレンチという道具、ラチェット方式がその道具での締め方にあたります。
建設業の方へ ── ボルトを締め増していく
ラチェットで締めるのはボルトです。鉄骨建方の工程は、そのまま私たちの原則になっています。
| 鉄骨建方 | ラチェット方式 |
|---|---|
| 仮ボルト(中ボルト)で仮締めする | 担当の方と一緒に、まず組み上げる |
| 建物のゆがみを修正する | 現場に出す前に、歪みを直しきる(原則1) |
| 高力ボルトに差し替え、規定トルクで本締めする | 「これなら出せる」で現場に出す |
| 一度に強く締めこむと、接合部に遊びがなくなり、他の未施工箇所にずれや歪みが生じる。だから一次締めと二次締めに分ける | 一度に全部を替えない。1機能ずつ出す(原則5) |
ボルトを締め増していくのと同じです。仮締めして、歪みを直して、本締めする。
一度に強く締めると他が歪むので、1機能ずつ。
締めるほど本締めに近づきますが、締め終わりはありません。
締めるほど、本締めに近づきます。だが、締め終わりはありません。使われている限り、まだ締めるところがあります。