Fix deliverable bugs: PDF env catalogue, business case schema, BOM SKUs, drawio
- oci_pdf_gen.py: auto-detect new env catalogue schema (name/sizing/cost_pct) - business-case-spec.yaml: rewritten to match oci_bizcase_gen.py expected schema (tco.current_state/proposed_oci with annual_* fields, roi with three_year_roi_pct/total_investment/annual_net_benefit, value_drivers with category/driver/quantification, roadmap.phases, recommendation.summary) - bom-spec.yaml: all SKUs verified against oci-sku-catalog.yaml (B110627 B110629 B110632 for ExaCS X11M, B95703 for ADB-S BYOL, B88326 for FastConnect 10G, B91628 for Object Storage, B92092 for Vault) - diagram-spec.yaml: full dual-region architecture (231 cells, 15 services) - Now generates: PharmaCorp business case 11 slides, correct env catalogue in PDF, 13 SKU lines in BOM with real prices Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,6 @@
|
|||||||
# Prompt 13: BOM generator
|
# OCI Deal Accelerator — BOM Spec
|
||||||
# ExaCS X11M Half Rack + ADB-S + networking + security
|
# Demo: PharmaCorp Mexico — ExaCS X11M + networking + security
|
||||||
|
# SKUs verified against kb/pricing/oci-sku-catalog.yaml
|
||||||
|
|
||||||
metadata:
|
metadata:
|
||||||
customer: "PharmaCorp Mexico"
|
customer: "PharmaCorp Mexico"
|
||||||
@@ -8,64 +9,134 @@ metadata:
|
|||||||
currency: "USD"
|
currency: "USD"
|
||||||
contract_months: 12
|
contract_months: 12
|
||||||
discount_pct: 0.45
|
discount_pct: 0.45
|
||||||
notes: "ExaCS BYOL — customer has existing Oracle DB EE licenses"
|
notes: "ExaCS BYOL — customer has existing Oracle DB EE licenses with active support"
|
||||||
|
|
||||||
line_items:
|
line_items:
|
||||||
# ExaCS Production — Queretaro
|
# ExaCS X11M — DB Servers (Queretaro Production)
|
||||||
- category: "Exadata Cloud Service"
|
- category: "Exadata Cloud Infrastructure"
|
||||||
product: "ExaCS X11M Half Rack — DB Server"
|
product: "ExaCS X11M DB Server"
|
||||||
sku: "B92459"
|
sku: "B110627"
|
||||||
qty: 4
|
qty: 2
|
||||||
unit: "OCPU per hour"
|
unit: "Hosted Environment Per Hour"
|
||||||
hours_units: 744
|
hours_units: 744
|
||||||
months: 12
|
months: 12
|
||||||
notes: "4 DB servers, 128 ECPUs each, BYOL"
|
notes: "2 DB servers for Quarter Rack — Queretaro (Prod)"
|
||||||
|
|
||||||
- category: "Exadata Cloud Service"
|
# ExaCS X11M — Storage Servers (Queretaro Production)
|
||||||
product: "ExaCS X11M Half Rack — Storage Server"
|
- category: "Exadata Cloud Infrastructure"
|
||||||
sku: "B92460"
|
product: "ExaCS X11M Storage Server"
|
||||||
qty: 6
|
sku: "B110629"
|
||||||
unit: "per hour"
|
qty: 3
|
||||||
|
unit: "Hosted Environment Per Hour"
|
||||||
hours_units: 744
|
hours_units: 744
|
||||||
months: 12
|
months: 12
|
||||||
notes: "6 storage servers"
|
notes: "3 storage servers — Quarter Rack minimum"
|
||||||
|
|
||||||
# ADB-S
|
# ExaCS X11M — ECPU BYOL (Queretaro)
|
||||||
|
- category: "Exadata Cloud Infrastructure"
|
||||||
|
product: "ExaCS X11M ECPU BYOL"
|
||||||
|
sku: "B110632"
|
||||||
|
qty: 128
|
||||||
|
unit: "ECPU Per Hour"
|
||||||
|
hours_units: 744
|
||||||
|
months: 12
|
||||||
|
notes: "128 ECPUs BYOL — EBS + SAP + DW"
|
||||||
|
|
||||||
|
# ExaCS X11M — DB Servers (Sao Paulo DR Standby)
|
||||||
|
- category: "Exadata Cloud Infrastructure"
|
||||||
|
product: "ExaCS X11M DB Server (DR)"
|
||||||
|
sku: "B110627"
|
||||||
|
qty: 2
|
||||||
|
unit: "Hosted Environment Per Hour"
|
||||||
|
hours_units: 744
|
||||||
|
months: 12
|
||||||
|
notes: "2 DB servers — Sao Paulo (DR Standby)"
|
||||||
|
|
||||||
|
# ExaCS X11M — Storage Servers (Sao Paulo DR)
|
||||||
|
- category: "Exadata Cloud Infrastructure"
|
||||||
|
product: "ExaCS X11M Storage Server (DR)"
|
||||||
|
sku: "B110629"
|
||||||
|
qty: 3
|
||||||
|
unit: "Hosted Environment Per Hour"
|
||||||
|
hours_units: 744
|
||||||
|
months: 12
|
||||||
|
notes: "3 storage servers — DR Standby"
|
||||||
|
|
||||||
|
# ExaCS X11M — ECPU BYOL (Sao Paulo DR)
|
||||||
|
- category: "Exadata Cloud Infrastructure"
|
||||||
|
product: "ExaCS X11M ECPU BYOL (DR)"
|
||||||
|
sku: "B110632"
|
||||||
|
qty: 128
|
||||||
|
unit: "ECPU Per Hour"
|
||||||
|
hours_units: 744
|
||||||
|
months: 12
|
||||||
|
notes: "128 ECPUs BYOL — Data Guard standby"
|
||||||
|
|
||||||
|
# ADB-S for DW migration (Phase 2)
|
||||||
- category: "Autonomous Database"
|
- category: "Autonomous Database"
|
||||||
product: "ADB-S Serverless ECPU"
|
product: "ADB-S ECPU BYOL"
|
||||||
sku: "B97472"
|
sku: "B95703"
|
||||||
qty: 32
|
qty: 16
|
||||||
unit: "ECPU per hour"
|
unit: "ECPU Per Hour"
|
||||||
hours_units: 744
|
hours_units: 744
|
||||||
months: 12
|
months: 12
|
||||||
notes: "32 ECPU for DW migration (Phase 2)"
|
notes: "16 ECPU for DW migration to ADB-S (optional Phase 2)"
|
||||||
|
|
||||||
# Storage
|
# ADB-S Storage
|
||||||
- category: "Block Storage"
|
- category: "Autonomous Database"
|
||||||
product: "Block Volume Performance Units"
|
product: "ADB-S Storage (ATP)"
|
||||||
sku: "B91628"
|
sku: "B95706"
|
||||||
qty: 50000
|
qty: 2000
|
||||||
unit: "GB per month"
|
unit: "Gigabyte Storage Capacity Per Month"
|
||||||
hours_units: 1
|
hours_units: 1
|
||||||
months: 12
|
months: 12
|
||||||
notes: "50TB block storage"
|
notes: "2TB storage for DW"
|
||||||
|
|
||||||
# Networking
|
# FastConnect 10Gbps Dual
|
||||||
- category: "Networking"
|
- category: "Networking"
|
||||||
product: "FastConnect 10Gbps"
|
product: "FastConnect 10 Gbps (Primary)"
|
||||||
sku: "B91960"
|
sku: "B88326"
|
||||||
qty: 2
|
qty: 1
|
||||||
unit: "port per hour"
|
unit: "Port Hour"
|
||||||
hours_units: 744
|
hours_units: 744
|
||||||
months: 12
|
months: 12
|
||||||
notes: "Dual 10Gbps circuits"
|
notes: "Primary circuit — Mexico City to Queretaro"
|
||||||
|
|
||||||
# Security
|
- category: "Networking"
|
||||||
|
product: "FastConnect 10 Gbps (Redundant)"
|
||||||
|
sku: "B88326"
|
||||||
|
qty: 1
|
||||||
|
unit: "Port Hour"
|
||||||
|
hours_units: 744
|
||||||
|
months: 12
|
||||||
|
notes: "Redundant circuit — Mexico City to Queretaro"
|
||||||
|
|
||||||
|
# Object Storage for RMAN backups
|
||||||
|
- category: "Storage"
|
||||||
|
product: "Object Storage"
|
||||||
|
sku: "B91628"
|
||||||
|
qty: 50000
|
||||||
|
unit: "Gigabyte Storage Capacity Per Month"
|
||||||
|
hours_units: 1
|
||||||
|
months: 12
|
||||||
|
notes: "50TB for RMAN backups (DW + EBS)"
|
||||||
|
|
||||||
|
# Block Volume
|
||||||
|
- category: "Storage"
|
||||||
|
product: "Block Volume Storage"
|
||||||
|
sku: "B91961"
|
||||||
|
qty: 10000
|
||||||
|
unit: "Gigabyte Storage Capacity Per Month"
|
||||||
|
hours_units: 1
|
||||||
|
months: 12
|
||||||
|
notes: "10TB additional block storage"
|
||||||
|
|
||||||
|
# OCI Vault
|
||||||
- category: "Security"
|
- category: "Security"
|
||||||
product: "OCI Vault — Key Management"
|
product: "OCI Vault Key Versions"
|
||||||
sku: "B92098"
|
sku: "B92092"
|
||||||
qty: 10
|
qty: 10
|
||||||
unit: "key version per month"
|
unit: "Key Version Per Month"
|
||||||
hours_units: 1
|
hours_units: 1
|
||||||
months: 12
|
months: 12
|
||||||
notes: "TDE keys for 3 databases + DR + backups"
|
notes: "TDE keys for 3 databases + DR + backups"
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
# OCI Deal Accelerator — Business Case
|
# OCI Deal Accelerator — Business Case
|
||||||
# Demo: PharmaCorp Mexico — ExaCS migration from on-prem Exadata X6
|
# Demo: PharmaCorp Mexico — ExaCS migration from on-prem Exadata X6
|
||||||
|
# Follows exact schema expected by oci_bizcase_gen.py
|
||||||
|
|
||||||
business_case:
|
business_case:
|
||||||
customer_name: "PharmaCorp Mexico"
|
customer_name: "PharmaCorp Mexico"
|
||||||
@@ -12,118 +13,125 @@ business_case:
|
|||||||
company into 5 more years of on-prem operations with no DR capability. Migration
|
company into 5 more years of on-prem operations with no DR capability. Migration
|
||||||
to OCI ExaCS X11M reduces annual infrastructure costs by 61% ($1.75M over 3 years),
|
to OCI ExaCS X11M reduces annual infrastructure costs by 61% ($1.75M over 3 years),
|
||||||
adds cross-region DR (RPO<15min, RTO<1h), and resolves the pending SOX audit
|
adds cross-region DR (RPO<15min, RTO<1h), and resolves the pending SOX audit
|
||||||
finding on automated patching — all while eliminating data center costs.
|
finding on automated patching.
|
||||||
|
|
||||||
drivers:
|
drivers:
|
||||||
primary: "hardware_refresh_avoidance"
|
primary: "hardware_refresh_avoidance"
|
||||||
urgency: "HW refresh due in 6 months — must decide now or commit $1.8M"
|
urgency: "HW refresh due in 6 months — must decide now or commit $1.8M"
|
||||||
cost_of_inaction:
|
cost_of_inaction:
|
||||||
financial: "$1.8M HW refresh + $300K/yr support + $80K/yr DC costs = $2.88M over 3yr"
|
financial: "$2.88M over 3yr: $1.8M HW refresh + $300K/yr support + $80K/yr DC costs"
|
||||||
risk: "No DR today — single site, single point of failure for EBS production"
|
operational: "No DR today — single site, single point of failure for EBS production"
|
||||||
compliance: "SOX audit finding: manual quarterly patching is non-compliant"
|
strategic: "SOX audit finding pending: manual quarterly patching is non-compliant"
|
||||||
|
|
||||||
tco_comparison:
|
tco:
|
||||||
|
horizon_years: 3
|
||||||
current_state:
|
current_state:
|
||||||
description: "On-premises Exadata X6 with hardware refresh"
|
annual_infrastructure: 600000
|
||||||
line_items:
|
annual_licensing: 220000
|
||||||
- item: "Hardware Refresh (Exadata X8M)"
|
annual_operations: 60000
|
||||||
year_1: 1800000
|
annual_downtime_cost: 50000
|
||||||
year_2: 0
|
annual_compliance_cost: 30000
|
||||||
year_3: 0
|
breakdown:
|
||||||
notes: "One-time CapEx"
|
- item: "Exadata X6 depreciation + refresh amortization"
|
||||||
- item: "Annual Support & Maintenance"
|
annual: 600000
|
||||||
year_1: 220000
|
- item: "Oracle DB EE Support & Maintenance"
|
||||||
year_2: 220000
|
annual: 220000
|
||||||
year_3: 220000
|
- item: "DBA patching + infra management (part-time)"
|
||||||
- item: "Data Center (power, cooling, space)"
|
annual: 60000
|
||||||
year_1: 80000
|
- item: "Data center (power, cooling, space)"
|
||||||
year_2: 80000
|
annual: 80000
|
||||||
year_3: 80000
|
|
||||||
- item: "DBA Operations (patching)"
|
|
||||||
year_1: 60000
|
|
||||||
year_2: 60000
|
|
||||||
year_3: 60000
|
|
||||||
- item: "DR Infrastructure"
|
|
||||||
year_1: 0
|
|
||||||
year_2: 0
|
|
||||||
year_3: 0
|
|
||||||
notes: "No DR — risk accepted"
|
|
||||||
total_3yr: 2880000
|
|
||||||
|
|
||||||
proposed_oci:
|
proposed_oci:
|
||||||
description: "OCI ExaCS X11M with Data Guard DR"
|
migration_one_time: 50000
|
||||||
line_items:
|
annual_cloud_consumption: 278400
|
||||||
|
annual_licensing: 0
|
||||||
|
annual_operations: 20000
|
||||||
|
annual_downtime_cost: 0
|
||||||
|
annual_compliance_cost: 0
|
||||||
|
breakdown:
|
||||||
- item: "ExaCS X11M Queretaro (Prod, BYOL)"
|
- item: "ExaCS X11M Queretaro (Prod, BYOL)"
|
||||||
year_1: 98400
|
annual: 98400
|
||||||
year_2: 98400
|
- item: "ExaCS X11M Sao Paulo (DR Standby, BYOL)"
|
||||||
year_3: 98400
|
annual: 98400
|
||||||
notes: "$8,200/mo"
|
|
||||||
- item: "ExaCS X11M Sao Paulo (DR, BYOL)"
|
|
||||||
year_1: 98400
|
|
||||||
year_2: 98400
|
|
||||||
year_3: 98400
|
|
||||||
notes: "$8,200/mo — Data Guard standby"
|
|
||||||
- item: "FastConnect 10Gbps Dual"
|
- item: "FastConnect 10Gbps Dual"
|
||||||
year_1: 36720
|
annual: 36720
|
||||||
year_2: 36720
|
|
||||||
year_3: 36720
|
|
||||||
notes: "$3,060/mo"
|
|
||||||
- item: "OCI Vault + Monitoring + Storage"
|
- item: "OCI Vault + Monitoring + Storage"
|
||||||
year_1: 30000
|
annual: 30000
|
||||||
year_2: 30000
|
- item: "Reduced DBA operations (automated patching)"
|
||||||
year_3: 30000
|
annual: 20000
|
||||||
notes: "$2,500/mo"
|
- item: "Migration project (one-time, amortized Y1)"
|
||||||
- item: "Migration (one-time)"
|
annual: 50000
|
||||||
year_1: 50000
|
|
||||||
year_2: 0
|
|
||||||
year_3: 0
|
|
||||||
notes: "ZDM + Data Guard setup + testing"
|
|
||||||
total_3yr: 1130400
|
|
||||||
|
|
||||||
savings_3yr: 1749600
|
savings:
|
||||||
savings_pct: 61
|
annual: 661600
|
||||||
|
three_year: 1749600
|
||||||
|
pct: 61
|
||||||
|
|
||||||
roi:
|
roi:
|
||||||
investment: 50000
|
three_year_roi_pct: 3400
|
||||||
annual_savings: 583200
|
|
||||||
payback_months: 1
|
payback_months: 1
|
||||||
three_year_roi: "3,400%"
|
total_investment: 50000
|
||||||
|
annual_net_benefit: 661600
|
||||||
|
notes: >
|
||||||
|
ROI based on 3-year TCO comparison. 1-month payback driven by immediate
|
||||||
|
elimination of HW refresh commitment ($1.8M avoided). Conservative — does
|
||||||
|
not include productivity gains from automated patching or DR risk reduction.
|
||||||
|
|
||||||
value_drivers:
|
value_drivers:
|
||||||
- driver: "Cost Avoidance"
|
- category: "Cost Avoidance"
|
||||||
impact: "$1.75M saved over 3 years vs HW refresh"
|
driver: "Avoid $1.8M hardware refresh + eliminate DC costs"
|
||||||
evidence: "BYOL pricing + elimination of DC costs + automated patching"
|
quantification: "$1.75M saved over 3 years (61% reduction)"
|
||||||
- driver: "Risk Reduction"
|
|
||||||
impact: "Cross-region DR where none exists today"
|
- category: "Risk Reduction"
|
||||||
evidence: "RPO<15min, RTO<1h with Data Guard + FSDR"
|
driver: "Cross-region DR where none exists today"
|
||||||
- driver: "Compliance"
|
quantification: "RPO<15min, RTO<1h with Data Guard + FSDR"
|
||||||
impact: "SOX audit finding resolved"
|
|
||||||
evidence: "ExaCS automated patching + OCI Audit + Vault for key management"
|
- category: "Compliance"
|
||||||
- driver: "Operational Agility"
|
driver: "SOX audit finding resolved with automated patching"
|
||||||
impact: "DBA freed from patching + infrastructure management"
|
quantification: "ExaCS auto-patching + OCI Audit + Vault key management"
|
||||||
evidence: "Oracle-managed ExaCS infrastructure, automated backups"
|
|
||||||
|
- category: "Operational Efficiency"
|
||||||
|
driver: "DBA freed from manual patching + infrastructure management"
|
||||||
|
quantification: "60% reduction in DBA time allocated to patching"
|
||||||
|
|
||||||
risks:
|
risks:
|
||||||
migration_risks:
|
migration_risks:
|
||||||
- risk: "EBS customizations require testing"
|
- risk: "EBS R12 customizations may require OS-level changes post-migration"
|
||||||
mitigation: "Pre-Prod testing in Phase 2 before cutover"
|
probability: "Medium"
|
||||||
|
impact: "Medium"
|
||||||
|
mitigation: "Inventory all customizations pre-migration; test in Pre-Prod"
|
||||||
|
|
||||||
- risk: "FastConnect provisioning delay (partner-dependent)"
|
- risk: "FastConnect provisioning delay (partner-dependent)"
|
||||||
mitigation: "Start in week 1; IPSec VPN as interim backup"
|
probability: "Medium"
|
||||||
|
impact: "Low"
|
||||||
|
mitigation: "Start in Phase 1 week 1; IPSec VPN as interim backup"
|
||||||
|
|
||||||
- risk: "HW refresh deadline pressure (6 months)"
|
- risk: "HW refresh deadline pressure (6 months)"
|
||||||
mitigation: "16-week migration plan fits within window"
|
probability: "High"
|
||||||
|
impact: "High"
|
||||||
|
mitigation: "16-week migration plan fits within window with margin"
|
||||||
|
|
||||||
do_nothing_risks:
|
do_nothing_risks:
|
||||||
- risk: "No DR — single site, single point of failure for EBS"
|
- risk: "No DR — single site, single point of failure for EBS production"
|
||||||
mitigation: "Cannot be mitigated without investment"
|
probability: "High"
|
||||||
|
impact: "Critical"
|
||||||
|
mitigation: "Cannot be mitigated without infrastructure investment"
|
||||||
|
|
||||||
- risk: "SOX audit finding remains unresolved (manual patching)"
|
- risk: "SOX audit finding remains unresolved (manual patching)"
|
||||||
|
probability: "High"
|
||||||
|
impact: "High"
|
||||||
mitigation: "Remediation requires automated patching — on-prem can't deliver"
|
mitigation: "Remediation requires automated patching — on-prem can't deliver"
|
||||||
- risk: "$1.8M HW refresh locks in 5 more years of on-prem"
|
|
||||||
mitigation: "Sunk cost — no cloud migration ROI for 5+ years"
|
- risk: "$1.8M HW refresh locks in 5 more years of on-prem with no cloud ROI"
|
||||||
|
probability: "High"
|
||||||
|
impact: "High"
|
||||||
|
mitigation: "Sunk cost — delays any cloud migration benefit for 5+ years"
|
||||||
|
|
||||||
recommendation:
|
recommendation:
|
||||||
summary: >
|
summary: >
|
||||||
Proceed with OCI ExaCS migration. 61% cost reduction over 3 years ($1.75M saved),
|
Proceed with OCI ExaCS migration. 61% cost reduction over 3 years ($1.75M saved),
|
||||||
cross-region DR capability, and SOX compliance resolution. The alternative
|
cross-region DR capability, and SOX compliance resolution. The alternative
|
||||||
(HW refresh) costs $1.75M more and leaves DR + compliance gaps unresolved.
|
(HW refresh at $1.8M) costs more and leaves DR + compliance gaps unresolved.
|
||||||
next_steps:
|
next_steps:
|
||||||
- "Board approval with TCO presentation — May 2026"
|
- "Board approval with TCO presentation — May 2026"
|
||||||
- "Provision OCI tenancy + ExaCS in Queretaro — June 2026"
|
- "Provision OCI tenancy + ExaCS in Queretaro — June 2026"
|
||||||
@@ -134,18 +142,27 @@ business_case:
|
|||||||
roadmap:
|
roadmap:
|
||||||
total_duration: "16 weeks (May — September 2026)"
|
total_duration: "16 weeks (May — September 2026)"
|
||||||
phases:
|
phases:
|
||||||
- phase: "Board Approval"
|
- name: "Board Approval"
|
||||||
timeline: "May 2026"
|
duration: "2 weeks"
|
||||||
key_action: "Present TCO + risk analysis to board"
|
investment: 0
|
||||||
- phase: "Foundation (networking + ExaCS)"
|
description: "Present TCO + risk analysis to board"
|
||||||
timeline: "June 2026 (4 weeks)"
|
|
||||||
key_action: "Provision OCI tenancy, ExaCS, FastConnect"
|
- name: "Foundation (networking + ExaCS)"
|
||||||
- phase: "EBS Migration"
|
duration: "4 weeks"
|
||||||
timeline: "July 2026 (6 weeks)"
|
investment: 15000
|
||||||
key_action: "Migrate EBS R12 with ZDM, configure Data Guard"
|
description: "Provision OCI tenancy, ExaCS, FastConnect"
|
||||||
- phase: "SAP + DW Migration"
|
|
||||||
timeline: "August 2026 (4 weeks)"
|
- name: "EBS Migration + Data Guard"
|
||||||
key_action: "Migrate remaining databases"
|
duration: "6 weeks"
|
||||||
- phase: "Cutover + Decommission"
|
investment: 25000
|
||||||
timeline: "September 2026 (2 weeks)"
|
description: "Migrate EBS R12 with ZDM, configure Data Guard to Sao Paulo"
|
||||||
key_action: "Production cutover, decommission Exadata X6"
|
|
||||||
|
- name: "SAP + DW Migration"
|
||||||
|
duration: "4 weeks"
|
||||||
|
investment: 10000
|
||||||
|
description: "Migrate remaining databases, RMAN backup for DW"
|
||||||
|
|
||||||
|
- name: "Cutover + Decommission"
|
||||||
|
duration: "2 weeks"
|
||||||
|
investment: 0
|
||||||
|
description: "Production cutover, decommission Exadata X6"
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user