こんにちは。Sansan事業部プロダクト開発部 PdM(プロダクトマネージャー)の馬場です。 趣味はSplatoonとキーボード設計です。
SplatoonはランクXで最高ガチパワーは2300です。
キーボード設計は主に3Dプリンターを使用したケースデザインをしています。 最近作っているのはこんなのです。
特技は負債が多いSansanから機能を廃止することです。
そんな私ですがオンライン名刺のPdMも担当しています。 本記事ではオンライン名刺の開発の裏側ということで、リリースまでどのようなことをしていたかお話しします。
オンライン名刺とは
オンライン名刺とは、インターネット上で名刺交換を実現するための機能です。
新型コロナウィルスの影響により商談はインターネット越しのリモートで行われるようになり、実世界で対面する機会は減りました。 そのような環境でも名刺交換をスムーズに行えるよう、オンライン名刺機能の開発がスタートしました。
詳しくは以下のコーポレートサイトをご覧ください。
https://jp.sansan.com/online-meishi/
開発初期段階
私が所属しているプロダクト開発部へ、2020年3月にオンライン名刺機能の概要が連携されました。
SansanのPdMは以下の2通りのお仕事があります。
- 自身が調査・企画する案件
- プロダクト戦略開発室(*1)から連携される案件
オンライン名刺は、後者のプロダクト戦略開発室で起案された案件になります。
プロダクト戦略開発室から連携された当初の仕様は複雑であり、画面数も多く、リリース目標の6月までにリリースするには困難でした。
なので、まずは本当に実現したい体験の再検討と、不要となる機能の削減を行いました。
機能削減は、余計な画面や今なくても大きな問題にならない機能を削減し、どうしても残したい体験をシンプルに実現できるようにします。 この段階ではCPO、デザイナー、PdMの3人が毎日何度も議論し体験をブラッシュアップしました。 これ以上削れないし増やせない、という段階になってその体験をプロダクトでどのように実装するかの設計が始まりました。
設計には入ったが
プロダクト開発部において、機能開発の進め方には反復型開発を採用しています。
ある機能をリリースをして終わりではなく、その機能をどう育てていくか、フィードバックからどのように改善していくかを継続して検討していきます。
ですので、全ての機能を実装し切るのではなく最低限の状態で一度リリースすることが多いです。
それに対してプロジェクトのスコープにおける開発自体は、要件整理、仕様検討がなされてから、詳細設計、実装を行います。
オンライン名刺についても同様で、どのような体験を提供するか機能要件が整理された段階で、ユースケース図やシーケンス図で体験の抽象度を徐々に下げていきます。
データの流れをDFDで表現し然る後に、サービス設計とデータ設計に落とし込みました。 これらを全てPdMが作成するわけではなく、Lead Enginnerと分担して設計します。 今回は、ユースケース図からシーケンス図をPdMが作成し、以降の詳細化についてはLead Enginnerが担当するという分担で行われました。 また、この段階ではパフォーマンスやセキュリティ、解約処理への対応といった非機能要件についても検討がなされます。
それらの論理設計から、アーキテクチャの検討、選定が行われました。 (今回採用したアーキテクチャについては長くなるので割愛します。)
この段階になると、チームの布陣を見渡して技術的に足りない部分が出てきます。 今回は、オンライン名刺の受け取り処理周りの基盤を設計できるエンジニアが不足していることが見えてきたので、PdM全員が集まる週次定例においてエンジニアの補充を要請しました。 足りない人物像を伝え、その場でPdMの裁量において他チームからのメンバー補充が内定され、1時間後には確定しました。 この判断の過程でプロダクト開発部長の判断は入らず、現場のPdMの裁量で進められています。
プロジェクトは常に佳境
最初からかなり無理のあるスケジュールではあったので、いつが佳境だったとかというと常に佳境ではありました。 ゴールデンウィーク明けにはデータ設計が完了しているはずのところが間に合わず、モバイル側にも連携が十分に出来ておらず、6月があっという間に目の前に迫るという状況でした。
しかし、遅れは許されずデータ設計が終わる前に実装を開始することとしました。
これは誰もが見たことある炎上プロジェクトのパターンですね。
ですが、データ設計も論理設計レベルではレビューは済んでおり、一定の品質は確保しています。
仮に手戻ったとしてもデータアクセスレイヤーには影響があるが、業務ロジックがメインであるアプリケーションレイヤーへの影響は軽微でした。
バックエンドが未完の状態なので、フロントエンドを中心に作りなんとか進めていきます。
遅れを取り戻すために
この段階になると遅延を可能な限り排除するために、人的リソースの過剰投入を行い始めます。 『人月の神話』では遅れているプロジェクトに人を投入しても改善されることはないとあります。 それは十分に理解していましたので、検討初期の段階から計画されるタスクを、オンライン名刺に直接関係するタスクとそうではないタスクとに区別して計画しました。 直接関係ないタスクは、オンライン名刺の設計を把握していなくても実装できるようにし、メインタスクをこなすチームとは別のチームに振り分けていきます。
また、プロダクト開発部には昨年からQAグループが発足しており、設計段階からQA部門に参加してもらっていました。 そのおかげで、要件と仕様についてPdMと同等以上に把握しているメンバーが出来上がっており、結合テストのテストケース作成から大部分のテスト実行までをQAグループに委任しました。
最終的には、当時のプロダクト開発部の3分の1に相当する47人を投入することが出来ました。
開発完了、そして始まる結合テスト
そうこうしていると5月末になり、一部を除き結合テストを開始することが出来ました。
実際のところ、5月末でも一部の開発は完了していなかったため、完成した業務単位での結合テスト開始ではありました。
かなり急いで開発したこともあり品質には不安がありましたが、幸いにもクリティカルな不具合はなく用意していたバッファは食いつぶすことなく過ごすことが出来ました。
設計を可能な限りシンプルに倒したことから、単体での実装品質が機能全体の品質を押し上げてくれたように感じています。
社内限定公開
当社のプロダクトは多くの企業にユーザーがいますが、当社自身もユーザーではあります。 大きなリリースにおいては、まず最初に社内にだけ公開し反応を見ることがあります。 オンライン名刺についても同様に社内にのみ公開しフィードバックを貰い、そこからさらに改善していくことを行い品質向上を行いました。
リリースしてみて
プレスリリースから問い合わせも多くいただいており、リリース前の時点で2000社を超える企業から利用表明を頂くことも出来ました。
Sansanの新機能の中でも多くのユーザーに使ってもらえており、その利用継続率も多機能よりも40%も高く、群を抜いています。 直近では当社の名刺アプリEightのオンライン名刺との連携機能もリリースしました。 今後も、ユーザーの皆様にとって使いやすい名刺管理サービスであるよう、オンライン名刺含め進化し続けられるよう努めていきます。
*1 プロダクト戦略開発室:全社横断でプロダクトの体験設計を行う部門です。SansanだけでなくEightやBillOneといった別サービスの体験設計も行います。
buildersbox.corp-sansan.com
buildersbox.corp-sansan.com
buildersbox.corp-sansan.com