【事例】大手金融向け取引 Web アプリプラットフォームの構築

概要

B2B の取引 Web アプリプラットフォーム構築を支援。

Excelで開発可能なベースの AaaSレイヤーを定義し、アプリ開発者のNocode/LowCodeを実現。
実行基盤は、AWSで構築を自動化し、IaC化。
外部システム連携のテスト自動化やパッケージレジストリを含む構成管理をして CI/CD を実現し、DevOpsを導入した。

 

顧客の目的・課題

  • 自社サービスや他社サービス連携を前提とする Web プラットフォーム構築
  • 既存ユーザへの付加価値提供および、新規ユーザに向けたソリューション開発促進
  • 既存 Excel ベースでの取引ツールの Web 化による導入コスト削減と Web 化による情報共有促進
  • 既存ユーザへのサービス置き換えによるメンテナンスコスト削減

 

アプリ基盤の構築

ベンダー内に存在する、Excel マクロ開発チームの活用

※Webプラットフォームを作る一方で、メンテナンスを考えると、Excelマクロ開発チームのスキルセットを活かせるようにしたいという背景があった。

 

支援内容

  • プラットフォームのアウトライン策定
  • システムアーキテクチャの構築
  • 開発・ビルド・デリバリープロセスの策定
  • プロト検証
  • システム開発

 

ソリューション

  • AaaS レイヤーの構築
    • Excel マクロ作成者や企画担当者でも開発可能なプラットフォームとして、Excel のみでアプリ作成可能なAaaS を構築し、NoCode、LowCode を実現
      • Excel データを変換した JSON で定義されたリソースベースでアプリに展開
    • コマンド (Excel 関数のようなもの) による拡張ポイントの提供
      • Angular (TypeScript) で開発可能
  • SaaSレイヤーの構築
    • 認証と認可基盤
    • 基本操作 API の提供 (編集、保存、送信など)
    • メッセージ(チャット)配信APIの提供
  • PaaS/IaaS レイヤーの定義と IaC 対応
    • PaaS として AWS の RDS や Docker で構築して Redis、Tomcat などを定義
    • IaaS として、ベンダーのセンター基盤やクラウド(AWS) 上の AMI を利用したインフラ定義
    • Ansible、Terraform を使っての環境構築
  • プラットフォームの想定スペック(ミドルウェア構成)の定義
  • プラットフォームの構成管理プロセスの整備と環境構築
  • プラットフォームの開発プロセス整理(DevOps の推進)と環境構築
  • プラットフォームの開発・検証・リリース環境構築プロセスの定義(DevOps の推進)
  • プラットフォームとアプリの組み合わせ/各サブシステム/マイクロサービス/作成モジュールを検証する自動テストの整備

 

効果

  • マイクロサービス指向のWebアプリプラットフォームの構築
    • BizDevOps を実現するためのビジネス担当-システム担当-運用担当を結ぶ、アーキテクチャとプロセスの整備

 

今後の展望

 プラットフォーム上のアプリの拡充と、作成専用ツールの構築
 SaaS, AaaS に追加する外部システムの追加

 

適用技術

 開発言語

  • Java - Spring Boot, Spring Cloud
  • NodeJS - Express
  • Angular

ミドルウェア

  • PostgreSQL
  • Redis
  • Keycloak
  • nginx
  • tomcat
  • pm2

構成管理基盤

  • Subversion
  • Jenkins
  • maven
  • Nexus Repository

 開発基盤

  • Docker, docker-compose
  • Vagrant, Ansible,Terraform
  • OWASP ZAP(脆弱性診断ツール)
  • JUnit
  • Puppeteer

 

適用サービス