KleinというProductについて

えこんにちは!CADDiでプロダクトマネージャーとしている @yskeee000 です。 もうそろそろ仕事納めしたい

本記事は、キャディ Advent Calendar 2020 – Qiita の16日目の記事です。昨日の記事は松田さんの「Rust入門者がrust-analyzerへのコントリビュートを達成するまで」でした。

この記事では、私がプロダクトマネージャーとしてCADDiで携わっているプロダクトについて素朴に紹介したいと思います。 私はCADDiに入社して約1年半となりますが、ほぼ一貫して本記事で紹介するKleinというプロダクト開発に、スクラッチの段階から関わってきました。 現状では、内部に閉じたProductであり外部の方になかなか知られることがないですが、CADDiの根幹をなす重要なProductですので、出来るだけ平易に紹介できればと思います。

プロダクトの背景となるCADDiのビジネスプロセス

Kleinというプロダクトはいくつかの側面を持っていますが、受発注管理 生産管理 サプライチェーン管理 物流管理といったキーワードが内包する概念として近いでしょうか。 こういったビジネスプロセスが発生する、ということがこのプロダクトの価値の前提なのでまずは簡単にそこから出発したいと思います。

ここでは特に関わる範囲のプロセスに絞ってご紹介します。(全体像については以前noteに投稿したこちら)

①顧客からの受注

顧客から、金属加工品の製造を受注します。 例えば、工場やプラントの中で使う産業装置の部品となる以下のようなものです。

CADDiでは特注品と言われるものを扱っておりますので、カタログに規格化された部品ではなく、顧客それぞれが装置ごとのために設計した図面を元にオーダーメイドのものとして受注します。 大きな案件では一案件につき、数千点にのぼる部品数になります。 それぞれについてどういう前提で、いくらで受注したかという情報が発生します。

②パートナーへの発注

CADDiは自社で製造能力を持たない事業構造のため、パートナーに発注を行ってファブレスにこれらの部品の製造を進めます。 (※ パートナー: CADDiではアラインアンスを結んだサプライヤー(加工会社)をこのように読んでいます。)

この時、それぞれのパートナーの強み(=価格・品質などの面で競争力が高い)に合わせて、特性にあった部品を発注していきます。 強みは

  • 鉄/ステンレス/アルミといった材質
  • 板金/旋盤/フライスなどの加工の種類
  • どれだけのロット数を作るか
  • 加工物のサイズ
  • 求められる品質や精度

などの様々な切り口によって別れていきます。

また、この時の発注の仕分けは部品ごとの粒度ではありません。 例えば、金属自体を切削などによって削る部分はパートナーA、塗装やメッキなど表面への加工はパートナーBのようにその部品に施すべき工程というより小さい粒度によります。

結果として、一つの案件において数十のパートナーに発注が分割されることもあります。

③サプライチェーンの設計

製品は最終的には顧客に納品されなければなりません。 それまでに、例えばパートナーから次の加工のパートナーにわたる、東西にあるCADDiの物流拠点において検品を行う、顧客に送るなどの物流の情報が発生します。 いつ/どこに/何を/どれだけ送るか、というものの流れの情報を、誰が/どの工程を担当するかの情報に加えて管理する必要があります。

大量生産品のように、ものが量産されていく一つの大きなサプライチェーンを確立するのではなく、案件ごとに最適なサプライチェーンをその時ごとに設計して管理する必要があります。

弊社の顧客となる装置メーカー様などでは、部品を納品した後に組み立てる工程が待っており、そのペースに合わせて納品スケジュールを分割していくことが必要な場合も多いので、より複雑になり得る要素も含んでいます。

④製造~納品までの実行と実績の管理

③でサプライチェーンの設計ができたとして、製造と輸送が進むにつれて実際にいつどこに何が届いたか、何を納品したか、という実績も管理していく必要が出てきます。

望ましくはないことですが、時に不良や納期遅延が発生するので、それらをきちんと記録として残しつつ、そういったイレギュラーに対応しながらトラブルシューティングしていくことも求められます。

KleinというProduct

その中において、顧客とパートナーを繋ぐリボンモデルを繋ぐ存在として業務プロセスに伴走するのがKleinというProductです。 リボンモデルとはいうものの、よく弊社のビジネスそのものが勘違いされるのですが、単なるマッチングではなく、納品・品質責任を持つ存在として、オペレーションを遂行するという責任を弊社は追っています。 顧客はキャディに発注し、パートナーはキャディという顧客から受注するということです。 この大きな違いがあるためにこのProductは要請されます。

Kleinの持つ役割

こういったプロセスの中で、KleinというProductが持つ役割はどのようなものでしょうか? 現状から一部を抜粋すると例えば以下のようなものです。

  • 受発注管理
    • 受注した製品とそれに求められる工程(=発注して手配すべきもの)の情報が管理できます
    • それらの製品に対応する図面のデータを管理することができます
    • どのパートナーにどの工程を依頼するかの判断を助けることができます
    • それを元にして、パートナーに対して工程を簡単に割り振り、発注データを作ることができます
    • 発注もれや二重発注をチェックすることができます
    • 帳票として発注データを元にして発注書の発行ができます
  • サプライチェーン管理
    • どこから/どこに/何を/どれだけ運ぶかという物流の情報を管理できます
    • 結果として形成されたサプライチェーンのグラフ構造を直感的に図解することができます
    • サプライチェーンのものの流れが整合的かをチェックすることができます

あまり多くの情報を記載することができませんが、例えばサプライチェーン全体を管理するのは以下のようなUIを通じて行うなどします。

果たす価値

結果として、このプロダクトが果たしている役割はどんなものでしょうか。

  • 受発注業務のプロセスに伴走するシステムとして、業務プロセスの標準化を促進する
  • 自動化プロセスを組み込んでいくことにより業務工数を削減する
  • 直感性的UXやデータ/ロジックによって、人間の正しく迅速な判断をアシストする
  • 受発注/サプライチェーンにおいて発生するデータを正しい形で蓄積することでデータドリブンな業務/システム改善、またデータによって生み出される新たな価値の土台となる

こういった点があげられると思います。

さらに、個人的な観点でいうと、よりマクロで見た時に

サプライチェーンを構築・管理する工数を圧倒的に下げることにより、より小さい粒度、例えば部品単位ではなく工程単位での流動性を高めることで、受発注のトラフィックをより強みに合わせて最適に調整する

ということが価値であると考えています。 流量をより細分化しても低負荷で最適化できる水路のようなイメージです。

ソフトウェア技術によって、ビジネスにおけるバックエンド情報をより複雑な場合でもリーンに扱うことができるようにすることによって、取引の単位をより小さい単位で、より最適にマッチング ~ 実行することができるようになっていくのです。

これからの発展

KleinはCADDiという受発注プラットフォームにおいて、扇の要となるようなプロダクトと考えています。 実際に使う一次ユーザー以外にも、他のプロダクトやデータを活用するユーザーにも価値を伝播させていくことを前提に土台から設計しており、進化の方向性は複雑ですが多方面にわたります。

今現段階での展望にすぎませんが、以下のような9つのベクトルを意識して、個別の具体的な実装の補助線としています。

名前の由来

最後に、Kleinという名前の由来ですが、これはクラインの壺 (wiki) というものに由来します。

ちょっときもいですね。 この壺は表面を辿っていくと表と裏が入れ替わるという構造を持っています。 (メビウスの輪の3次元版のイメージです)

CADDiは顧客から受注し、パートナーに発注するという受注側/発注側のどちらのロールも内包しています。 このことから得られるソフトウェアとそれを前提にしたオペレーションのドッグフーディングが、将来的により直接的に顧客/パートナーへのテクノロジーによる価値提供に繋がるというvisionから名付けました。 パートナーへの発注者としてのナレッジの形式知化が、同じ発注という業務を行う顧客への転用につながっていくと考えており、その逆も然りということです。

まだまだやることは無限に山積みですが、一緒に遠くへこのプロダクトを連れて行ってくださる方をまだまだ募集しています!

P.S. 【余談】もう一つの名前の由来

Kleinというのは一つのProductですが、そのシステムのなかの一つのコンポーネントとして、h20e というコンポーネントがあります。 このコンポーネントは案件管理という役割を担っているのですが、Kleinのリポジトリなどにはよくこの h20e というワードが登場します。

Kleinの立ち上げ当時、上記の業務プロセスを統括していたのは創業メンバーの一人でもある幸松大喜という人物です。 仕事ができてリーダシップがあるばかりでなく、なんと縁起のいい名前なのでしょうか。 幸せで、最上で(松竹梅)、大きな喜びなのです。結婚式ではぜひ乾杯を頼みたい。

この縁起の良さにあやかるべく、 happy pine great pleasure -> h20e という名前を授けました。 これから長い間このproductが使われていく中で、この魂も脈々と受け継がれていくということでしょう。