マーケライズクラウド(以下、MRC)は、マーケライズが培ってきたノウハウを「クラウドシステム」の形で実装してお客様に提供することで、製造業のマーケティングや営業活動を飛躍的に効率化させることを目的としたツールです。従って、MRCの機能そのものが、当社がお客様に提供できるノウハウ・価値であると言うこともできます。
個々に必要な機能や使いやすさ(ユーザーインターフェース)は、お客様によって異なる場合がありますが、MRCは個別のカスタマイズは行わない代わりに、お客様のニーズや市場、また当社の支援内容の変化に合わせて常にバージョンアップしながら進化を続けています。実際のMRCバージョンアップの開発は、次のようなプロセスで進んでいきます。
1.お客様ニーズの抽出とデータベース化
営業担当やカスタマーサポートチームが、打合せ時などにお客様から機能追加やバージョンアップ、修正要望をヒアリング。お聞きした内容はすべて専用のデータベースに登録する仕組みになっています。データベース化することで、どのような要望が多いかまたは少ないかが把握できます。また、全体的な傾向をつかむことができるので、システム全体にどのような課題があるのかが分析できるようになります。さらに、それらを社内で共有することで、これからのシステムの方向性に関する関係者の意識統一を図ることにもなります。
2.バージョンアップ要件の優先度付け
抽出されたお客様ニーズを元に、開発部門、企画部門を交えて実際に開発する対象を、定期的に検討します。前述のとおり、MRCはクラウド型システムですので、個別カスタマイズには対応せず、優先順位の高いと判断したものから順次システム全体のバージョンアップという形で対応します。これにより、MRC全体の機能を進化させ、すべてのお客様へ、より大きな価値を提供することが可能になると考えています。
優先度は、要望の多さだけではなく、業務上与える影響や効果の大きさ、システム全体の整合性、実装までのスピード、費用対効果などのさまざまな観点と基準で付けられることになります。
3.仕様の確定
開発が決定した案件は、プロジェクト管理ツール「redmine」を用いて管理します。原則、各案件には担当者を割り当てて各担当者が最後まで責任をもって進めることになります。開発案件は、まず対象機能の仕様を検討・確定するところから始めます。画面設計や仕様書などを作成し、開発および企画、カスタマーサポートの各部門で誤解のないようコンセンサスを形成した上で開発に進みます。
4.開発
実際の開発は、一般的なコード管理ツールの「Git」に開発ブランチを作成することでスタートします。開発時にはプロトタイプを作成するケースもあります。
直近の例では「ステップメール」機能作成時にプロトタイプを作成しましたので、そのときの話を開発者の中村さんに聞いてみました。
中村:各ステップのつながりをユーザーインターフェース上で表示するため、SVG(Scalable Vector Graphics)でドラッグしたり、曲線コネクタを描写したり、また、JSON形式のデータにパースする機能など、普段データ処理中心の開発を行っているMRCではあまりお目にかからない機能が多かったため、プロトタイプを作成し、何度も仮想環境でテストを実施しました。当初はなかなか想定どおりに進みませんでしたが、PowerPointなどのOffice製品の図形描写やコネクタの動きを研究するなどしながら試行錯誤を重ね、最終的には仕様どおりのインターフェースを実装することができました。
5.テスト
プログラム完成後は、まずは開発チーム内でコードのレビューを実施します。問題なければ検証環境にアップロードし、担当者をはじめ他の開発スタッフも交えて統合的なテストを行います。さまざまな角度から検証を行なうことで、実稼働に問題のないレベルまで信頼性を高めます。
6.リリース
テストにより問題がないことが確認できればリリースとなります。現在、原則毎週末に新機能や修正のリリースを実施しています。新機能等のリリーススパンをできるだけ短くすることで、お客様の要望に素早く応え、さらなるマーケティングや営業の効率化に貢献していきたいと考えています。
今回は、MRCの開発プロセスを簡単にご紹介しました。マーケライズは、できるだけ細かな要望でも可能な限りお受けできるよう、日々開発チームをはじめ全社一丸で奮闘しています。それがお客様の利益に貢献し、ひいては当社の成長につながると考えているからです。