APIベースの開発を採用したプロジェクトから、どのような教訓が得られたのだろうか。濱野氏は教訓として、「役割分担の明確化」「疎結合化」「伸縮が容易」の3つを挙げた。
1つ目は、APIの設計はアプリケーションの開発よりも先に終わらせる必要があるということだ。スケジュール的には大変だが、仕様がいったん確定してしまえば、クライアント(アプリ)側とサーバ側の並行開発が可能になるなど、役割分担を明確化して開発のスピードアップを図ることができる。
2つ目は、MUJI Passportアプリ、ネットストア、MD(マーチャンダイジング)システムなどの社内システムをフルに連携できたこと。また、アプリの起動や商品詳細参照などユーザーの行動をAPIレベルでロギングできることも教訓として挙げることができる。さらに、技術的負債についてもAPIごとに対応することができ、全体に波及しづらいというメリットもある。
3つ目は、「システムの伸縮が容易」なことだ。機能が足りなければAPIを追加することで対応できる他、画面改修を行う場合でもサービスへの影響を極小化できる。性能が足りなければクラウドを利用することで容易に負荷を分散できる。
濱野氏は最後に、APIベースのプラットフォームの今後の展望について、「MUJI Passportやネットストアだけの対応、日本や各国だけの対応にとどまらず、物流、会計、グローバルMDを含むあらゆるサービスをAPIでグローバルに連携できる『MUJI Digital Platform』の実現を目指していきたい」と強調し、講演を締めくくった。
講演後のQ&Aセッションでは、ガートナーの片山氏から幾つか濱野氏に質問が投げ掛けられた。
Web事業部と情報システム部は、どのように役割を分担しただろうか。これについて濱野氏は「Web事業部がMUJIマイルサービスを内製し、情報システム部がMDシステム側の仕組みを内製した」と回答。開発に当たっては、フレームワークやアーキテクチャを合わせる必要があり、ITガバナンスやセキュリティ対策を共通化する必要があったので、関連する基準やスタンダードを情報システム部に作成してもらい、それに基づいて開発作業を進めたという。
また、MUJI Passportなど外注したものもあったので、ベンダーマネジメントやプロジェクトマネジメントに関して情報システム部の支援を受けた。良品計画では、もともと人事交流が盛んで、実際にWeb事業部の中には情報システム部門の出身者が何人もいる。「一緒に仕事をしていてもお互いに何を考えているのかをおおよそ理解でき、コミュニケーションが取りやすい」(濱野氏)。
良品計画では、システム開発の外注・内製の判断はどのような基準で行っているのだろうか。濱野氏によると、同社にとって独自性の高いシステムは内製化し、定期的あるいは汎用的なものはベンダーに委託する方針だという。
例えば、MDシステムの場合はどうかというと、そもそもマーチャンダイジングのプロセスは、同社にとっての基幹と位置付けられる業務であり、ベンダーに頼らずに内製する。一方、会計など、汎用的な業務のシステムの場合は、外注で行うことになっている。
実は、良品計画においても以前はベンダーに依存する体質が強かったという。しかし、2005年にその方針を転換し、MDシステムの内製化に踏み切った。新システムとの連携では、マスター統合とローデータ活用によって、迅速かつ柔軟に開発・変更できるシステム構造が実現されている。MDシステムのディレクション(経営)は、標準化、実践、深化(改善)というサイクルで行われ、決裁は部門長と役員に任されている。
MDシステムの開発現場では、短期で開発を行って、使いながら修正していく「7割主義」と呼ばれる開発手法を導入している。具体的には、改善テーマが提起されると、まず関係者を集めてその場で画面を作りながら業務プロセスを決定し、7割の要件レベルですぐに開発に着手する。1〜3週間で暫定的なシステムを完成させると、現場でシステムの試運転を行って実際に使ってみながら1〜2週間程度で評価する。その結果を開発部門にフィードバックし、手直しを繰り返すというものだ。
一方で新システムの開発は、どのような体制で進められたのか。MUJI Passportアプリの開発は、スマホアプリの開発や画面などのクリエイションに実績のあるアプリベンダーに外注している。一方、中核となるMUJIマイルサービスのプラットフォームはWeb事業部が内製しており、APIの設計や開発もWeb事業部主導で行っている。
なお、POSレジ、ネットストア、オンラインメディアのシステムについては以前から開発を外注しており、今回、MUJIマイルサービスとの連携を実現するAPIを利用できるようにした。
この「7割主義」について、片山氏から「開発のスピードを重視する一方で、品質は7割程度でもよいとお考えなのか」という質問があった。これに対して濱野氏は「確かにスピード重視で開発に取り組んでいるが、スピードは品質を犠牲にして実現するものではなく、事業部門と緊密に協力して、試行錯誤を行うことで達成される」と回答。要件レベルは7割で開発を開始するが、品質は常に100%を目指して開発に取り組んでいるという。
この回答を受けた片山氏は「要件レベルはやはり7割で開始するのがベストなのか」と質問。濱野氏は「要件レベルが低い段階で開発を開始すると、かえって時間がかかってしまう危険性もある。要求レベルが7割程度になると、その先は実際にやってみないと分からない部分も多くなるので、使ってみて手直しをした方が効率的だ。7割から始めて発展させていくというのがわれわれの基本的なアプローチ」と述べた。
片山氏があらためて指摘した「7割を目指す」スタンスなどは、変化が激しい今という時代にあって、各業種に通じる重要なポイントといえるのではないだろうか。
Copyright © ITmedia, Inc. All Rights Reserved.