学習・技術検証用デモ — 本システムは実際の銀行サービスではありません。

公開情報をもとに構築した教育目的のシステムです。実在する個人情報・口座情報・機密情報・認証情報等を入力しないでください。

ミニ銀行ACADEMY SYSTEM LEARNING
教材メニュー
学習進捗0 / 134
あと134項目
INTERMEDIATE · 中級COURSE 07 · ENTERPRISE ARCHITECTURE

Application Landscape:銀行のApplication Portfolioを支配する

application一覧は資産台帳ではありません。各applicationのbusiness責任、data、連携、criticality、cost、risk、lifecycleを可視化し、投資・統合・廃止を判断します。

07 / 15
ENTERPRISE ARCHITECTURE · エンタープライズアーキテクチャ

Business・Application・Data・Technologyを横断し、全体最適の設計へ広げる。

先に学ぶ内容 — Prerequisite: 金融IT・信頼性

学ぶこと — LEARNING GOALS

このページで学ぶこと

  • Application・Component・Serviceの区別
  • LandscapeとPortfolio評価
  • 重複・依存・廃止不能を見つける方法

体験52 · APPLICATION LANDSCAPE(台帳で支配する)

applicationの数が少ないほど良いarchitectureか確かめよう

まずは予想をひと言。本文を読んだ後、教材内の参照元で実際のapplication構成を確認します。

体験学習 · STEP 1 / 5
  1. 01
    まず予想する — PREDICT

    まずここだけ:思ったことをひと言書く

    applicationの数が少ないほど、良いarchitectureだと思いますか?

    正解でなくて大丈夫です。「〜だと思う」から始めてみましょう。

    ヒント1を見る

    少ないapplicationは、常に低いriskを意味するでしょうか?

    ヒント2を見る

    Next.jsとJava Payment Serviceは、なぜ両方存在するのでしょうか?

    もっと詳しく:この問いで使う専門用語
    • Application Catalogは、applicationの責任と特性を構造化した台帳です。
    • Business Fitは、現在と将来の業務能力をどれだけ支えるかです。
    • Dispositionは、維持、投資、移行、統合、廃止などの処置方針です。
まずはひと言だけで大丈夫です。

この後の本文を最後まで読んでから、実際に操作して確かめるステップへ進みます。

日常語で理解する — PLAIN LANGUAGE

まず、ここだけつかむ

1

Application Landscapeはapplication名の一覧ではなく、提供能力、所有者、利用者、data、連携、費用、risk、寿命を管理します。

2

Portfolio判断ではBusiness Fit、Technical Health、Operational Risk、Economic Valueを分けて評価します。

3

重複applicationを即座に統合せず、移行risk、規制証拠、業務継続、退出可能性を含めて処置を決めます。

順番に理解する — DIFFICULT PARTS, STEP BY STEP

難しいポイントを、順番にほどく

専門用語を覚えることより、「なぜ必要か」「このシステムのどこで使うか」を理解することが目標です。

01

Application Catalog

やさしく言うと

applicationの責任と特性を構造化した台帳です。

なぜ必要?

未知の依存や所有者不明を減らすためです。

Minibankでは

Next.js、Payment Service、Supabase Auth、PostgreSQLを登録します。

02

Business Fit

やさしく言うと

現在と将来の業務能力をどれだけ支えるかです。

なぜ必要?

技術が新しいだけでは投資価値を判断できないためです。

Minibankでは

Payment Serviceが必要な振込ruleと運用を満たすか評価します。

03

Disposition

やさしく言うと

維持、投資、移行、統合、廃止などの処置方針です。

なぜ必要?

評価を具体的なportfolio行動へ変えるためです。

Minibankでは

legacy経路は検証完了まで維持し、その後の判断条件を定めます。

発展 — ADVANCEDもっと詳しく確認する最初の学習では読まなくても問題ありません。仕組みをもっと深く理解したい場合に開いてください。

何をapplicationとして管理するか

microserviceの数をapplication数と機械的に一致させません。owner、release、data、運用、廃止を独立管理する単位で定義します。

概念意味Minibank
Application独立してlifecycle・ownerを持つsolutionNext.js app、Payment Service
Componentapplication内の配布・責任単位Docs、Admin、Customer、RPC client
Application Servicebusinessへ提供する機能Payment Initiation、Account Inquiry
Interface外部へ見せる契約HTTP API、PostgREST RPC
Technology Platformapplicationを実行する基盤Node runtime、JVM、PostgreSQL

最低限のApplication Catalog

  • business owner・technical owner・support team
  • 提供serviceと利用者
  • 所有dataと参照data
  • inbound / outbound interface
  • criticality・SLO・RTO/RPO
  • runtime・deployment・region・provider
  • cost・license・support期限
  • security classification・internet exposure
  • lifecycle:invest、tolerate、migrate、eliminate

Portfolioを4軸で評価

fitが高くhealthが低いapplicationはmodernize、fitが低くcostが高いものはretire候補です。ただしdata保持、法的証拠、下流依存を解消してから廃止します。

軸高い場合の問い
Business fit戦略capabilityへ貢献するか
Technical healthsupport、security、保守性、testは十分か
Operational risk停止影響、復旧、single point、属人性はどうか
Economic valuerun/change costに見合う価値か

Minibank Landscape

Next.jsとJavaのPayment入口が並行する現在は、正規経路、traffic選択、契約互換、監視、rollbackを明示する必要があります。

Application責任主な依存
Next.jsUI、BFF、既存API、DocsSupabase Auth / PostgREST
Payment ServiceJava Payment API、型付き境界PostgREST RPC
Supabase Authidentity・token利用者credential
PostgRESTData API / RPC bridgePostgreSQL
PostgreSQL業務rule、Ledger、Audit、SoRmigration・backup・operations

体験学習の続き · LEARNING LOOP

ここまで読めましたか?続けて確認してみましょう

Application CatalogとBusiness Fitの考え方を読んだところで、教材内の参照元で実際のapplication構成を確認し、自分の言葉で説明してみます。

STEP 2〜5 / 5
  1. 02
    仕組みを確かめる — CONCEPT CHECK

    画面操作なしで、仕組みを確かめる

    この仕組みは、Mini Bankの画面には現れません。次のEvidenceとCode Trail、教材本文だけで理解を進めます。

  2. 03
    証拠を確認する — EVIDENCE

    何を見たか、1つずつ確かめる

    Evidence(判断の根拠となる記録)を確認したらチェックします。各項目の「何を見るか」を手がかりにしてください。

    画面を開けない項目は、Source Trail(教材の参照元)と教材の説明で確認できます。失敗を実際に起こす必要はありません。

  3. 04
    コードの処理経路を追う — CODE TRAIL

    コードを書く必要はありません

    ここでは「説明されている仕組みが、実際のMini Bankのどこに実装されているか」を確認します。まずは日本語の役割説明を読み、入力した依頼がどこへ渡るかをつかみましょう。コードの全文を読む必要はありません。

    まずNext.js側のapplication定義を見て、次に共通のData API設定を見ます。複数applicationがどう1つの正式記録へ集約するかを確かめましょう。

    Next.js applicationの依存関係。

    package.json

    Data APIとlocal platform設定。

    supabase/config.toml
    教材の参照元を確認する — Source Trail ↓
  4. 05
    自分の言葉で説明する — EXPLAIN

    LEVEL 1 — やさしい説明(まずここだけ)

    なぜapplication portfolioの評価には、Technical HealthだけでなくBusiness Fitも必要なのでしょうか? 短い2文を目安に説明してください。

    日常語だけで完了できます。専門用語の数や正誤を自動採点するものではありません。

    ヒント1を見る

    「Business Fit」という言葉を使って書いてみましょう。

    ヒント2を見る

    application数を減らすこと自体が目的にならない理由を考えてみましょう。

    もっと詳しく:LEVEL 2 — 専門用語を使った説明(任意)

    Application Catalog、Business Fit、Dispositionの3つを使って、application portfolioの評価方法を説明してみましょう。

    挑戦する場合は、上の説明欄に追記できます。追加しなくても完了できます。

    説明の確認ポイント — Checkpoint
    • application数の少なさは良さの指標ではないと説明できる
    • Business Fitが投資判断に必要だと説明できる
予想5文字以上・証拠2項目・説明20文字以上で完了できます。

証拠の確認:0 / 2。LEVEL 2(専門用語での説明)は任意です。

入力はこのブラウザに保存されます。Academy教材の進捗とは別の学習メモです。

理解を確かめる — CHECK YOUR UNDERSTANDING

3問で理解チェック

答えを頭の中で考えてから、各項目を開いて確認してください。

Q1application数を減らせば必ず良いArchitectureですか?
答え

違います。重要なのは能力、risk、cost、変更容易性、回復性の全体結果です。

Q2Technical Healthだけで廃止を決められますか?
答え

決められません。Business Fit、data、規制、移行risk、代替能力を確認します。

Q3Minibankのapplication台帳に何を加えるべきですか?
答え

owner、SLO、data、upstream/downstream、認証、release、復旧、費用、lifecycleです。

ここまで読めましたか?

完全に暗記する必要はありません。大切な考え方を説明できそうなら押してください。

業界・外部の参照元 — INDUSTRY / EXTERNAL SOURCE

業界資料・参考文献

一般論と業界知識の根拠です。外部サイトを新しいタブで開きます。

教材の参照元 — SOURCE TRAIL

根拠と関連教材

CURRENT IMPLEMENTATIONは確認したrepository内の実装です。HISTORICAL IMPLEMENTATIONは導入・修正の履歴で、後続migrationによる再定義があり得ます。RELATED LESSONは教材への案内で、実装の一次Sourceではありません。ASSUMPTIONは仮定、UNKNOWNは未確認を表します。

確認基点: d02eae8914f39cbf06bfe422dc39c71886f82b3e / 2026-09-11。稼働環境への適用確認: UNKNOWN。パス実在の自動検査と、記述した技術的事実の確認は別です。

  • 現在の実装 — CURRENT IMPLEMENTATIONsrc/app/Next.js applicationのroute landscape
  • 現在の実装 — CURRENT IMPLEMENTATIONservices/payment-service/Java application
  • 現在の実装 — CURRENT IMPLEMENTATIONsupabase/config.tomlData APIとlocal platform設定