Skip to content

As-built dependency map

Why use CCE

Architecture diagrams describe intent; production code describes reality. Teams onboarding to a legacy service need an as-built map of external APIs, cloud services, and SDKs actually invoked — not what's declared in README files.

CCE produces a code-derived dependency map from static call sites, complementing runtime service meshes and APM.

What CCE extracts

JSON field Meaning for this use case
provider External system category (cloud vendor, outbound, integration)
resource Service or protocol
operation API or client method
file / line Owning module in the as-built map

CLI wiring

Cloud dependencies — built-in mapper:

cce -folder ./legacy-service \
    -language AUTO \
    -filter cloud \
    -format json \
    -output as-built-cloud.json

Outbound HTTP/gRPC + messaging — coupling lens:

cce -folder ./legacy-service \
    -language AUTO \
    -mapper-file https://releases.stackgen.com/cce/lenses/microservice-decomposition/latest/microservice-decomposition_lenses.yaml \
    -filter cloud -format json -output as-built-outbound.json

Integrations (Kafka, SQS, etc.):

cce -folder . -language AUTO \
    -mapper-file https://releases.stackgen.com/cce/lenses/integration-replatforming/latest/integration-replatforming_lenses.yaml \
    -filter cloud -format json -output as-built-integrations.json

Merge multiple runs for a complete as-built picture (see modernization_use_cases.md).

How to read the JSON output

  • Union entitlements[] from multiple lens runs → full as-built dependency graph input.
  • summary.by_provider — pie chart of external system types.
  • Edge list format for graph tools: (file module) → (provider/resource/operation).
  • Static map only — add runtime traces for traffic-weighted views.

CI/CD snippet

- name: As-built dependency map
  run: |
    cce -folder . -language AUTO -filter cloud -format json -output as-built-cloud.json
    cce -folder . -language AUTO \
        -mapper-file https://releases.stackgen.com/cce/lenses/microservice-decomposition/latest/microservice-decomposition_lenses.yaml \
        -filter cloud -format json -output as-built-outbound.json

Published lens

This use case uses the built-in mapper (omit -mapper-file). No lens YAML is published under releases; the catalog marks it as built-in only.

Known limitations

Proof status: Lens-only — see KNOWN_LIMITATIONS.md (as-built-dependency-map) and docs/proof.

Limitation Impact
Multiple passes Combine cloud + integration + outbound lenses manually.
CMDB substitute Not a replacement for diagrams or service catalog.

Platform limits (CGO, languages, static analysis, mapper precedence, filters): KNOWN_LIMITATIONS.md.