A browser-based tool for building operational resilience through workflow-driven health modeling. It walks you through four phases - from Failure Mode Analysis to Azure deployment and continuous governance.
_AppResilienceTestingTool/
├── fma-framework.html ← Main application (open in browser)
├── seq-import.js ← Sequence-diagram import engine
├── block-import.js ← Data-flow / architecture-image import engine
├── Get-FoundryToken.ps1 ← PowerShell helper for Azure AI bearer tokens
└── flows/
├── 01_ClientOnboarding_seqdiag.mmd ← Sample Mermaid sequence diagram
├── 02_E2E_ClientInt_seqdiag.mmd ← Sample Mermaid sequence diagram
└── Overall-Data-Flow.png ← Sample architecture / data-flow image
| Requirement | Details |
|---|---|
| Browser | Modern Chromium-based browser (Edge, Chrome) recommended |
| Internet | Required on first load for CDN libraries (SheetJS, Tesseract.js, Dagre, Google Fonts) |
| Azure subscription | Needed only for Phase 3 Deploy and AI Vision features |
| PowerShell 5.1+ | Needed only if using Get-FoundryToken.ps1 for AI vision tokens |
- Open
fma-framework.htmlin your browser. - The app loads with an empty workspace - no server needed.
Use this to import Mermaid sequence diagrams that define your application workflows.
- Click 📋 Import Sequence Diagram in the toolbar.
- In the import dialog, choose Upload .mmd file(s).
- Select the sample files from the
flows/folder:01_ClientOnboarding_seqdiag.mmd02_E2E_ClientInt_seqdiag.mmd
- The engine parses the diagrams, detects Azure services, classifies workflows, and auto-populates Phase 1 data (components, failure modes, RPV scores).
- Review the imported workflows in the Phase 1 panel.
Use this to extract workflows from an architecture / data-flow diagram image via AI vision.
- Click 📊 Import Data Flows in the toolbar.
- Choose Upload Image and select
flows/Overall-Data-Flow.png. - The tool sends the image to an AI vision model which extracts sequence diagrams from the architecture.
- Preview the extracted diagrams in the grid, then confirm to import.
AI Vision requires a bearer token. If prompted, use the helper script:
.\Get-FoundryToken.ps1 -ClientId "<app-id>" -ClientSecret "<secret>" -TenantId "<tenant>"The token is copied to your clipboard - paste it into the app's AI Vision Settings → Bearer Token field.
Alternatively, create a
.envfile alongside the script:FOUNDRY_CLIENT_ID=<app-id> FOUNDRY_CLIENT_SECRET=<secret> FOUNDRY_TENANT_ID=<tenant>
After import, Phase 1 is pre-populated with:
- Workflows - classified as User Flow or System Flow
- Components - categorised as Application or Platform, with Azure service detection
- Failure Modes - per-component, each scored with RPV (Risk Priority Value = Impact × Likelihood × Detectability)
What to do:
- Review each workflow and its components.
- Adjust failure modes, severity scores, and classifications as needed.
- Add any failure modes the auto-import missed.
- Verify criticality ratings (RPV ≥ 50 = High Risk).
- Mark Phase 1 complete when satisfied.
- Navigate to Phase 2.
- Click 🔄 Import from Phase 1 to pull in failure modes.
- For each failure mode, review:
- Mitigation strategy - detection, client-side, infrastructure, and recovery actions
- Validation / Chaos test - the recommended test type (Chaos, Load, Failover, etc.)
- Refine mitigations - the tool auto-suggests strategies based on Azure service type.
- Download the XLSX export for offline review if needed.
Phase 3 builds a hierarchical health model and deploys it.
- Navigate to Phase 3.
- Click 🔄 Import from Phase 1 to populate workflows, components, and FM-linked health signals.
- Review the entity hierarchy:
- Workflow → Business Function → Application Component → Platform Resource
- For each entity, review health signals - metric name, thresholds, operators.
- Add manual signals for any gaps; check the FMA Coverage score (aim for ≥ 80%).
- When ready, click ☁️ Deploy to Azure on a workflow.
- Fill in the deployment form:
- Subscription ID
- Resource Group
- Location (Azure region)
- Bearer Token (use
Get-FoundryToken.ps1or paste an existing token)
- Click 🚀 Deploy Now - the tool creates entities and relationships in Azure Health Models.
- On success, use the 🔗 Open in Azure Portal link to verify.
After deployment, Phase 4 establishes ongoing operational practices.
- Navigate to Phase 4.
- Review the Operations Summary - open alerts, dependency alignment, auto-mitigation status.
- Define the Governance Model:
- Governance Area - what is being reviewed (e.g., "Health Signal Thresholds")
- Owner - team or individual responsible
- Frequency - review cadence (Weekly, Monthly, Quarterly)
- Artifacts Reviewed - dashboards, runbooks, incident reports
- Output - expected deliverable from each review cycle
- Track the Governance Maturity Score (0–100) in the Insights panel - it scores FM coverage, mitigation completeness, signal coverage, and validation rate.
Click 📊 Insights at any time for a cross-phase summary:
- Workflow and component counts
- Failure mode coverage
- Signal-to-FM alignment
- Governance maturity score
- Export the full workbook (📥 Export All to XLSX) for stakeholder reporting
All data is stored in the browser's localStorage. There is no server or database.
- Save - data auto-saves on every change
- Export - use per-phase or full XLSX exports to back up your work
- Import - XLSX upload restores previously exported data
- Clear - clearing browser data will erase all progress
After the first load (which fetches CDN libraries), most features work offline. The exceptions are:
- AI Vision (Import Data Flows) - requires network access to the Azure OpenAI endpoint
- Deploy to Azure - requires network access to Azure Resource Manager
- Google Fonts - the app falls back to system fonts if unavailable