概要
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) で開発可能
- Excel マクロ作成者や企画担当者でも開発可能なプラットフォームとして、Excel のみでアプリ作成可能なAaaS を構築し、NoCode、LowCode を実現
- 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
適用サービス