タイの自動車部品メーカー向けGoogle Cloud部門別経費予実比較Webアプリ
顧客: 自動車部品製造業者(日本の総合企業)
既存のExcel経費報告を読み込み、日別・月別・部門別の実績と目標をWeb上で比較するアプリです。タイの自動車部品メーカー向けに開発し、Google Cloudへ導入しました。プロジェクトは2023年九月に完了しました。
- 業界
- 自動車
- 年
- 2023
- 業務範囲
- 顧客のGCP上で稼働する経費追跡Webアプリの設計と開発。日次・月次の経費追跡画面、3つの部門グループに分けた部門別経費サマリー画面、目標設定とファイルアップロードの画面、KPIサマリー画面、およびプロジェクト完了時のシステム概要文書を含みます。
要約
- この事例は、タイの自動車部品メーカーが保有する経費のExcelレポートファイルを読み取り、実績と目標の対比をWeb画面に表示するWebアプリです。
- ユーザーは経費を日次、月累計、部門別で確認でき、Direct、Indirect、SGAの3つの部門グループに分けて見ることができます。実績が目標を超えると棒グラフが赤に変わります。
- システムは顧客のGCP(Google Cloud Platform)内で稼働し、Cloud Run上にDockerとして導入されています。データはCloud SQLに、ファイルはGoogle Cloud Storageに保存します。
- 2023年9月のプロジェクト完了文書は、システムがユーザーのサンプルファイルから読み取った値がExcelレポートと一致したとまとめています。
- システムは部門コードで実績と目標を照合します。そのため、すべての元ファイルで列名と部門コードが一致している必要があります。
現場の課題
各部門の経費実績と予算目標は複数のExcelレポートファイルに分かれていました。顧客は、どの部門が目標を超えて支出しているかを、日次実績と月累計の両方について、Direct、Indirect、SGAの3つの部門グループ別に、ひとつの画面で確認したいと考えていました。
当社の取り組み
当社はNext.jsとPython FastAPI(Web画面とバックエンドを構築するツール)でWebアプリを開発し、顧客のGCP(Google Cloud Platform)内のGoogle Cloud Run(Google Cloud上でプログラムを実行するサービス)に導入しました。ユーザーが実績ファイルと目標ファイルをアップロードすると、システムは日次実績、累計実績、O/X評価付きの部門別サマリーを表示します。実績が目標を超えると棒グラフが赤に変わります。
成果
当社はシステム概要文書とともに2023年9月にプロジェクトを完了しました。プロジェクト完了文書は、システムがユーザーのサンプルファイル(2023年6月のデータ)から読み取った値がExcelレポートと一致したとまとめています。プロジェクト完了後も、当社はデータの正確性を確認し、ユーザーの意見に基づいて修正を行い、2023年12月に最新の変更要求を作成しました。
課題の背景
この課題は、実績と予算目標が別々のExcelレポートファイルに分かれていたことから生じました。実績は詳細な経費実績レポートに、目標は部門別の勘定科目別経費管理ファイルにあります。そのため、システムは表示の前に、両方のファイルの金額を部門ごとに照合する必要があります。
このシステムは、複数のソースにある社内データをGCP(GoogleのクラウドサービスであるGoogle Cloud Platform)上の単一のデータベースに統合したいという顧客のプロジェクトの一部です。そのため、経費追跡システムは顧客自身のGCP内で稼働する必要がありました。同じ一連の業務で、当社はKPI、不良、売上、利益をまとめたGoogle Cloud上の統合データベース上の他のモジュールも開発しました。
要件と制約
システムは顧客が保有するExcelレポートファイルを入力データとして使用し、顧客のGCP内で稼働する必要がありました。主な要件と制約は次のとおりです。
- ユーザーがアップロードした実績ファイルと目標ファイルを読み取り、部門コード(Department Code)で実績と目標を照合します。
- 日次実績と月累計を目標と対比して表示し、部門別に結果を集計します。
- 顧客が定めた部門グループ分けファイルに基づき、部門をDirect、Indirect、SGAの3つのグループに分けます。
- 顧客のGCP内に導入し、組織の情報セキュリティポリシー(IS)に従います。
- 元ファイルの列名、部門名、部門コードは一致している必要があります。プロジェクト期間中、顧客はまず一部のファイルで列を調整し、部門コードを追加する必要がありました。
このシステムにおけるDirect、Indirect、SGAとは何ですか
このシステムにおけるDirect、Indirect、SGA(Selling, General and Administrative、販売・一般管理業務)は部門のグループです。システムは顧客が定めたファイルに基づいて各部門をグループに割り当て、グループごとに経費を集計します。そのため、グループ分けファイルの部門名は入力ファイルと一致している必要があります。
このシステムは既存のExcelファイルをどのように読み取り、実績と目標を比較するのですか
このシステムは、ユーザーがアップロードしたExcelレポートファイルを読み取り、部門ごとに金額を集計して目標と比較し、Webブラウザ上にグラフと表で表示します。そのため、既存のファイルを入力データとして使用できます。ただし、システムは列名と部門コードに基づいて読み取るため、ファイルは毎回同じ形式を保つ必要があります。
要件に基づき、システムは既存のExcelファイルを入力データとして使用し、顧客のGCP内で稼働します。Docker(別のマシンへ移せる、分離型のプログラム導入パッケージ)としてCloud Run上に導入し、データはCloud SQL(Google Cloud上のデータベース)に、ファイルはGoogle Cloud Storage(Google Cloud上のファイル保存先であるGCS)に保存します。
- 1
実績ファイルと目標ファイルをアップロード
KPI Target SettingというKPI(業績指標)の目標設定画面で、ユーザーは経費実績レポートファイルと、目標として使う部門別の勘定科目別経費管理ファイルをアップロードします。システムはファイルをGCSに、読み取ったデータをCloud SQLに保存します。
- 2
日次実績を目標と対比して確認
Expense Budget Control As of Today画面は、日次の経費と月累計を目標と対比して表示し、DirectとIndirectの部門グループに分けて示します。実績が目標を超えると棒グラフは赤になり、勘定科目、部門、経費項目で絞り込んで確認できます。
- 3
評価付きの部門別サマリー
Expense Summary画面は、各部門の目標、実績、差額、比率を、Direct、Indirect、SGAに分けて表示します。システムは実績が目標を超えていなければO、超えていればXと判定します。ユーザーは編集ボタン(Edit)を押して、部門ごとの分析を表に記録できます。
- 4
KPI全体をひとつの画面で確認
現在および月次のKPIサマリー画面は、経費画面から目標と実績を取得し、ステータスを色で表示します。ユーザーは評価結果を押して詳細画面を開くことができます。
納入物
当社は、顧客のGCP内に導入したWebアプリを、プロジェクト完了時のシステム概要文書とともに納品しました。各画面の動作は、前の見出しの手順に記載しています。
- 顧客のGCP内のWebアプリ。KPI Target Setting、Expense Budget Control As of Today、Expense Summary、および現在・月次のKPIサマリー画面があります。
- プロジェクト完了時のシステム概要文書
手順と変更要求
この業務では、開発中からプロジェクト完了後まで変更要求(Change Requirement)が発生しました。当社は各要求を変更要求文書として記録しました。文書のある作業の流れは次のとおりです。
- 2023年9月、開発中: ユーザーから全部門の月次経費レポート画面の追加要望があり、当社は変更要求として記録しました。
- 2023年9月: システム概要文書とともにプロジェクトを完了しました。
- プロジェクト完了後: データの正確性を確認し、ユーザーの意見(feedback)に基づいて修正しました。
- 2023年12月: Expense Summary画面向けの最新の変更要求を作成しました。たとえば、コメントに添える理由の区分(予算超過、支出時期のずれ、節約、予算どおり)です。
Web画面の数値は既存のExcelレポートと一致していますか
2023年9月のプロジェクト完了文書は、経費追跡Webアプリがユーザーのサンプルファイル(2023年6月のデータ)から読み取った値がExcelレポートと一致したとまとめています。テストではユーザーのサンプルファイルを使用し、Web画面の結果を既存のExcelレポートと比較しました。
テスト中、一部の計算結果がユーザーの正解値と一致しなかったため、双方で検収方法を改めて取り決めました。プロジェクト完了後も、当社はユーザーとともにデータの正確性の確認を続けました。この事例にはビジネス効果を測定した数値がないため、文書で裏付けられた結果のみを報告しています。
私たちが学んだこと
この業務から、既存のレポートファイルを読み取ってWeb上に表示するシステムについて、3つの原則が得られました。
- データを照合する前に、すべてのファイルに共通キーが必要です。この業務ではグループ分けファイルの部門名が入力ファイルと一致しなかったため、システムは部門コードを照合キーとして使用し、顧客は事前に元ファイルを揃えました。
- テスト開始前に正解値と検収方法を取り決めます。正解値と結果の比較方法が明確でないと、計算結果の不一致によって、この業務で起きたように、プロジェクトの途中で検収方法を取り決め直す必要が生じます。
- 新しいビューの要望は開発中に発生することがあり、当初の範囲とは別に変更要求文書として記録することが望まれます。この業務では全部門の経費レポート画面の要望が開発中に発生し、当社はそれを変更要求として記録しました。
この手法をお客様の業務に適用する方法
貴社がすでに経費レポートと予算目標をExcelファイルで管理している場合は、この事例と同じアプローチを使用できます。既存のファイルをアップロードし、部門コードで実績と目標を照合して、日次、月次、部門別に結果を表示します。調整が必要なのは、ファイル形式、部門のグループ分け、計算式、システムの導入先です。
再利用できる部分と調整が必要な部分
| システムの部分 | 再利用可能 | 調整が必要になる場合 |
|---|---|---|
| 入力データ | 実績と目標の両方のExcelレポートファイルのアップロード | 貴社のファイルの列や部門コードがこの事例と異なる場合は、ファイル形式を改めて取り決める必要があります。 |
| グループ分け | 組織が定めたグループ分けファイルに基づく部門グループ別の集計 | 貴社のグループ分けがDirect、Indirect、SGAと異なる場合は、グループ分けファイルを新たに定義する必要があります。 |
| 結果表示 | 日次実績、累計実績、部門別サマリー、O/X評価の画面 | 貴社の累計実績または累計目標の計算式がこの事例と異なる場合は、開発前に計算式を取り決める必要があります。 |
| 取り付け | 組織のGCP内で、Cloud Run上のDockerとCloud SQL、GCSを使用 | 貴社がGCPを使用していない場合、または工場内のサーバーにデータを保存したい場合は、導入方式を改めて設計する必要があります。 |
- 実際に使用するサンプルファイルと正しい計算結果(正解値)を用意し、検収基準を明確に取り決めます。
- 開発開始前に、累計実績と累計目標の計算式、および部門のグループ分けを取り決めます。
- システムを組織自身のクラウドに導入する必要がある場合は、組織側のクラウドの権限とセキュリティポリシーを準備します。
- 変更要求を受け付ける手順を最初に定めておきます。この事例のように、レポート画面の追加要望が開発中に発生する場合があるためです。
使用する技術
よくある質問
既存の経費レポートの作成方法を変更する必要はありますか
既存のExcelレポートファイルを入力データとして使用できますが、事前に一部のファイルの調整が必要になる場合があります。この事例では、ユーザーがレポートファイルをWebアプリにアップロードすると、システムが累計を計算して目標と比較します。プロジェクト期間中は、ファイルの列と部門名を揃え、部門コード(Department Code)を追加して一致させる必要がありました。その後は、システムが列名と部門コードに基づいて読み取るため、ファイル形式を一定に保つ必要があります。
システムはどこに導入され、どの技術を使用していますか
本件では、システムをお客様のGCP (Google Cloud Platform) に導入しました。画面はNext.jsで構築し、バックエンドにはPython FastAPIを使用して、Docker (別のマシンへ移せる、分離型のプログラムインストールパッケージ) としてCloud Run (Google Cloud上でプログラムを実行するサービス) 上で動作させています。データはCloud SQL (Google Cloud上のデータベース) に、ファイルはGoogle Cloud Storage (GCS) に保存しています。
Webページ上の数値が正しいことは、どのように確認できますか?
ユーザーから提供されたサンプルファイルを使い、Webページ上の結果を従来のExcelレポートと照合します。本件では、要件ごとに受け入れ確認項目 (Exit Criteria) を作成しました。テスト中に一部の箇所でユーザーの正解データと結果が一致しなかったため、双方で受け入れ確認の方法を改めて合意しました。2023年9月のプロジェクト完了文書では、システムが読み取る値はレポートと一致すると総括しています。その後も当社は、データの正確性の確認と、ユーザーの意見に基づく修正を続けました。
後から新しいレポートページやビューを追加できますか?
はい、可能です。変更要求 (Change Requirement) として記録し、先に範囲を合意します。本件では、開発中にユーザーから全部門の月次経費レポートページの追加要望がありました。また、プロジェクト完了後には、Expense Summaryページについて、意見の根拠となる理由のカテゴリーなどを対象とする2023年12月版の変更要求を当社が作成しました。
価格と開発期間はどのくらいですか
固定価格はありません。ページ数、計算式、元データファイルの準備状況によって異なります。お見積もりについては当社までお問い合わせください。サンプルファイルとお客様のご要望をもとに評価します。


