Upgrade to Pro — share decks privately, control downloads, hide ads and more …

新たな顧客課題に挑む17年目の進化とモダナイゼーション / RAKUSTechCon2024_...

Rakus_Dev
August 14, 2024

新たな顧客課題に挑む17年目の進化とモダナイゼーション / RAKUSTechCon2024_Haihaimail

◆イベント名
RAKUS Tech Conference 2024
https://techcon.rakus.co.jp/2024/

◆発表タイトル
新たな顧客課題に挑む17年目の進化とモダナイゼーション

◆登壇者
大阪開発統括部 配配メール開発課 課長 大塚正道
大阪開発統括部 配配メール開発課 井上良太
開発推進部 フロントエンド開発1課 亀ノ上孝雄

Rakus_Dev

August 14, 2024
Tweet

More Decks by Rakus_Dev

Other Decks in Technology

Transcript

  1. 新たな顧客課題に挑む17年目の進化とモダナイゼーション 配配メールとは? • メール配信サービス • 主にBtoB向け • 累計1万社以上の顧客 • 2007年サービス開始⇒17年目

    • 主な機能 ◦ 簡単操作でメール作成 ◦ 高到達率の配信技術とノウハウ提供 ◦ 成果を可視化する効果測定 3

  2. 新たな顧客課題に挑む 顧客の成果を支える価値提供を模索 より直接的に顧客の成果を支える価値を提供するため、PDCAの入口と出口を強化。 ・リード獲得⇒育成するためのリードを生み出す ・商談獲得⇒最終成果である受注に繋げる機会を生み出す 6
 P D C A

    リード育成① ・グループ化 ・ステップ設定 リード育成② ・予約配信 ・メモリー配信 追客 ・トリガーメール ・フォローメール 成果分析 ・効果測定 ・ホットリード検出 ・来訪検知 リード獲得 ・フォーム ・ポップアップ 商談獲得 ・フォーム
  3. フォーム機能の技術課題への対策アクション 19 一般ユーザー フォーム管理者 サブシステムサーバ Nginx PHP (フォーム機能) メール作成サーバ Apache

    PHP (フォーム設定) LB (Nginx) サブシステムサーバ メール作成サーバ ・・・ ・・・ ・・・ アプリケーションとDBのマルチ接続 サブシステムサーバ
  4. フォーム機能の技術課題への対策アクション DDDとオニオンアーキテクチャ • オニオンアーキテクチャの考えに基づきクラス構成を設計 • 4層に整理 ◦ アプリケーション層(ユースケース) ◦ ドメインモデル層

    ◦ プレゼンテーション層 ◦ インフラ層 • アクションクラス、ユースケースクラスはREST APIのエンドポイントと、基本 1対1 • フォームの構成情報、回答情報、等をドメインクラスに分解 • トランザクションはユースケースクラス内で開始/終了が管理できるように 24 Application Presentation Infrastructure UseCase Domain
  5. 従来のフロントエンド技術 jQuery • 配配メール開発初期はjQuery全盛期 • jQueryの恩恵を受けて自作のjQueryプラグインを量産 • 時代は命令的UIから宣言的UIへ ◦ jQueryは衰退し、負債となっていった…

    32 負債例 • メンテナンス性・可読性が低い ◦ jsで文字列結合したDOMをappend(挿入)している • CSSが複雑化している ◦ インラインスタイル、高い詳細度、!important
  6. 成果 取り入れた技術 37 • Vue.js, • Vuetify • Vite •

    Storybook • Vue Test Utils 以前の技術スタック 取り入れた技術 Vue Test Utils
  7. 実現した顧客価値 リッチなUIの実現 • モダンなデザイン ◦ マテリアルデザインベース (Vuetify) • ストレスを低減するUXの提供 ◦

    リアルタイム更新 ▪ バリデーションチェック ▪ フォーム更新データ取得 ◦ 画面遷移時に、ページ全体を再読み 込みしない (SPA) 38
  8. 残課題と今後の展望 40 • ライブラリのバージョンアップ運用方法策定 ◦ ライブラリのマイナーバージョンアップであっ ても大変だったので、安定した運用を目指す。 • 自動テストの拡充 ◦

    ユニットテスト強化 ◦ ビジュアルリグレッションテスト導入 • Webアクセシビリティ改善 ◦ 目標とする達成基準を準拠できてないので 改善していく