Skip to content

Referenz zum Rahmenwerk SWAO_APM ​

SWAO_APM (SWAO Application Portfolio Management, Version 2026.10, Status freigegeben) ist das Community-Rahmenwerk hinter der Service-Portfolio-Bewertung. Es bewertet jede Anwendung in elf Domänen, verdichtet die Domänenwerte zu einem Risikowert und leitet daraus eine TIME-Empfehlung ab. Es ist eine SWAO-eigene Synthese aus dem Gartner-TIME-Modell, ISO/IEC 25010:2023, TOGAF 10, ENISA-Empfehlungen und EU-Kriterien für souveräne Clouds; Kontrolltexte Dritter werden nicht wiedergegeben. Die allgemeine Rahmenwerksseite ist SWAO_APM.

Die elf Domänen und ihre Gewichte ​

DomäneNameStandardgewichtLeitfrage
APM-TCHTechnischer Zustand20Ist die Plattform im Support, gepatcht, frei von kritischen und aktiv ausgenutzten Schwachstellen?
APM-SECSicherheitslage18Schwache Kryptografie, unverschlüsselte Endpunkte, fest kodierte Geheimnisse, abgelaufene Signaturzertifikate, nationale Warnmeldungen, Malware-Befunde
APM-VNDHerstellerzustand12Ist der Hersteller bekannt, unterstützt er das Produkt, besteht ein Vertrag, ist er erreichbar?
APM-DATDaten-Governance10Sind Klassifizierung, Speicherort, Unterauftragsverarbeiter und sensible Daten erfasst?
APM-REGCompliance-Pflichten8Regulatorische Last, DSGVO Art. 9, MDR-Klassifizierung, Aktualität des Audits
APM-SOVSouveränitätsreife8Souveränitätseinstufung, verfügbare souveräne Alternative, Datenspeicherung in der EU
APM-MIGMigrationsbereitschaft6Migrationskandidat, portables Betriebssystem, cloudfähiges Bereitstellungsmodell
APM-INTIntegrationskomplexität6Wie viele Integrationen gibt es, und sind sie dokumentiert?
APM-HWHardware und Kosten4Ist das Hardwareprofil bekannt, passend dimensioniert und bewertet?
APM-BIZGeschäftskritikalität4Kritikalität, Nutzerbasis, Betriebsstatus, verantwortlicher Fachbereich
APM-STRStrategische Passung4Einordnung durch die Analyse und erklärte Migrationsabsicht

Die Gewichte ergeben zusammen 100. Sie folgen der Reihenfolge der Leitplanke G-07 aus Design 103 (technischer Zustand, Sicherheit, Hersteller, Daten, Regulierung zuerst).

Wie die Werte berechnet werden ​

  1. Kontrollwert (0 bis 100, Gesundheitsskala). 47 der 72 Kontrollen sind über evidence_basis: [{ apm_export: <rule> }] an eine Bewertungsregel gebunden. Eine Regel liest Nachweise, die der Service-Ablauf bereits erzeugt hat, und liefert 100 (gesund) bis 0 (hohe Bedenken). Beispiel: os_eol_horizon liefert 0, wenn das Supportende überschritten ist, 20 unter 12 Monaten, 40 unter 18, 70 unter 36, sonst 100.
  2. Unbekannt ist kein Fehler. Fehlt der Nachweis (zum Beispiel weil noch nicht recherchiert wurde), liefert die Regel keinen Wert. Die Kontrolle wird als unbekannt geführt und fließt nicht in den Domänenwert ein; sie zählt nie als bestanden oder nicht bestanden. Zwei Regeln sind bewusst streng: bsi_advisories bewertet nur einen abgeschlossenen Abgleich mit dem Feed von BSI CERT-Bund (eine Anzahl von Warnmeldungen), und integration_count liest eine leere Integrationsliste nur dann als "keine Integrationen", wenn die Intake-Datei eine Integrationsspalte hatte (aufgeführt in intake.fields der App); andernfalls bleiben beide Kontrollen unbekannt.
  3. Domänenwert. Der gewichtete Mittelwert der bekannten Kontrollwerte der Domäne (Kontrollgewicht aus einem optionalen Tag apm-weight.N, Standard 1). Eine Domäne ohne bekannte Kontrolle hat keinen Wert.
  4. Gesundheitswert. Der gewichtete Mittelwert der verfügbaren Domänenwerte mit domain_weights.
  5. Risikowert. 100 - Gesundheitswert, also ist 100 das höchste Risiko. Der Portfolio-Risikowert ist der Mittelwert über alle Apps, die einen Wert haben und deren TIME-Label auf ausreichenden Nachweisen beruht (siehe Nachweisgrundlage des TIME-Labels).

Die übrigen 25 Kontrollen beschreiben Nachweise, die eine Analystin oder ein Analyst liefert (zum Beispiel Zertifizierungen, Penetrationstests, Auftragsverarbeitungsverträge). Sie gehören zur Vollständigkeit zum Rahmenwerk und erscheinen in den Compliance-Ergebnissen, beeinflussen aber die automatische Bewertung nicht.

Woher die Nachweise stammen (Signalquellen) ​

DomäneVon den Regeln genutzte Nachweise
APM-TCHPass 24 RESEARCH: endoflife.date, CVE-Anzahl und Patch-Status aus der NVD, CISA KEV; Betriebssystem aus dem Intake; Alter der Laufzeitumgebung aus Pass 25 BINARY
APM-SECBefunde aus Pass 08 CRYPTO auf Binärdateien und Konfiguration (schwache Algorithmen, unverschlüsselte Endpunkte, fest kodierte Geheimnisse, abgelaufene Zertifikate); Warnmeldungen von BSI CERT-Bund und VirusTotal aus Pass 24
APM-VNDHerstellerfelder aus dem Intake: Name, Version, Supportstatus, Vertragsende, Kennzeichen für einen Support-Kontakt
APM-DATDatenfelder aus dem Intake; Pass 03 DATA im Service-Modus
APM-SOVINFRA-CAT-Klassifizierung (Souveränitätseinstufung und Alternativen); Datenspeicherort
APM-BIZGeschäftsfelder und Betriebsstatus aus dem Intake
APM-HWHardware aus dem Intake; Cloud-Kostenschätzung
APM-INTIntegrationen und Integrationsnotizen aus dem Intake
APM-MIGEinordnung aus dem Intake; Portabilität des Betriebssystems; Bereitstellungsmodell (vendor_type)
APM-REGRegulatorische Pflichten, DSGVO Art. 9, MDR-Klasse und Datum des letzten Audits aus dem Intake
APM-STRTIME der Analyse und Migrationskandidat aus dem Intake

TIME-Einordnung ​

Die TIME-Empfehlung wird in zwei Stufen abgeleitet. Die erste zutreffende Regel gewinnt.

  1. Übersteuerungen
    • Betriebsstatus decommissioned, unused oder inactive: Eliminate. (restricted, behalten aber nicht starten, ist bewusst ausgenommen.)
    • Treffer in CISA KEV: Migrate-Critical.
    • Mindestens eine kritische CVE und Supportende innerhalb von 12 Monaten: Migrate-Critical.
    • Supportende ohne erweiterten Support überschritten: Migrate-Critical.
  2. Schwellenwerte
    • Supportende innerhalb von 0 bis 36 Monaten: Migrate. Supportende überschritten, aber erweiterter Support verfügbar: Migrate.
    • Herstellerzustand oder technischer Zustand unter 40 und Migrationsbereitschaft über 60: Migrate.
    • Strategische Passung, technischer Zustand und Herstellerzustand jeweils über 70: Invest.
    • Strategische Passung unter 30 und Geschäftskritikalität unter 30: Eliminate.
    • Sonst: Tolerate (im Support, kein übergeordnetes Risiko).

Jede App erhält eine verständliche Begründung (zum Beispiel "CISA KEV known-exploited vulnerability match"). Die eigene TIME-Einschätzung aus der Intake-Tabelle (disposition.gartner_time) bleibt daneben erhalten und wird nie überschrieben, sodass Abweichungen sichtbar sind.

Nachweisgrundlage des TIME-Labels ​

Ein TIME-Label beruht auf Nachweisen, wenn SWAO den End-of-Life-Status oder den CVE-Status der App kennt. Der End-of-Life-Status ist bekannt, wenn Pass 24 RESEARCH den Supportstatus oder den Zeithorizont bis zum Supportende ermittelt hat (is_eol oder months_until_eol in eol-status.md). Der CVE-Status ist bekannt, wenn die NVD-Abfrage beantwortet wurde (kein Fehler, kein Überspringungsgrund und kein Hinweis im Block cve von cve-summary.md); dafür ist ein Herstellername nötig. Ist keiner von beiden bekannt und entscheidet der Betriebsstatus das Label nicht (decommissioned, unused, inactive), zeigt SWAO den abgeleiteten Quadranten weiterhin an, aber:

  • die Begründung beginnt mit insufficient evidence (end of life and cve status unknown);, gefolgt von der Begründung der angewendeten Regel;
  • die App fließt nicht in den Portfolio-Risikowert ein;
  • die Karte im Engagement-Hub zeigt das Kennzeichen Evidence: insufficient.

wsp/portfolio-summary.json hält pro App fest:

SchlüsselBedeutung
assessedtrue, wenn es für die App einen Lauf der Service-Bewertung gibt (apps/<id>/wsp/latest-service.txt); andernfalls zeigt die Hub-Karte Not assessed
evidencesufficient oder insufficient
evidence_missingWelche von end_of_life und cve unbekannt sind

Auf Ebene der Zusammenfassung zählt assessed_count die Apps mit einem Service-Lauf und insufficient_evidence_count die Apps, deren Label auf unzureichenden Nachweisen beruht.

Anwendungs-Apps in der kombinierten Sicht ​

In einem Workspace mit Anwendungs- und Service-Apps listet wsp/portfolio-summary.json auch die Anwendungs-Apps (assessment_type: application, siehe Portfolio-Betrieb). Die Service-Regeln oben gelten für sie nicht, weil sie Intake-Felder und Recherche-Stubs lesen, die eine Anwendungs-App nicht hat. Stattdessen lesen sechs Regeln den letzten verwendbaren Anwendungslauf (apps/<id>/wsp/latest-application.txt); jede liefert unbekannt, wenn ihr Nachweis fehlt:

ControlDomäneRegelNachweis
APP-TCH-01APM-TCHEnd of Life der Laufzeitumgebung: Active LTS 100, Maintenance LTS 70, End of Life überschritten 0node_eol_status aus Pass 01 / 05
APP-TCH-02APM-TCHCVEs der Abhängigkeiten: 0 betroffene Pakete 100, 1 Paket 40, mehr 10critical_cves_found aus Pass 05 (Pakete mit hohen oder kritischen CVEs; nur bei abgeschlossener Abfrage)
APP-SEC-01APM-SECBefunde: ein negativer kritischer Befund 10; kein negativer hoher 100; 1 bis 2 hohe 60; mehr 30Negative Signale aller Pass-Dateien
APP-REG-01APM-REGCompliance: Mittelwert aus PASS 100, PARTIAL 50, GAP 0Compliance-Regime in wsp-plan.yaml
APP-MIG-01APM-MIGPortabilität: portability_score x 100wsp.yaml overall
APP-MIG-02APM-MIGLanding-Zone-Eignung: READY 100, READY_WITH_CHANGES 70, NEEDS_VERIFICATION 50, BLOCKED 0wsp/latest-lz-primary.yaml

Domänenwerte, Health und Risiko werden mit denselben Domänengewichten wie bei Service-Apps berechnet. Der TIME-Quadrant folgt dem 7R-Urteil:

7R-UrteilTIME
RetireEliminate
RetainTolerate
Rehost, Relocate, Replatform, RepurchaseMigrate
Refactor (Re-architect, Rebuild)Invest

Vorrangige Regeln: Betriebsstatus decommissioned, unused oder inactive in der .swao.yml der App ergibt Eliminate; eine Laufzeitumgebung jenseits des End of Life zusammen mit Paketen mit hohen oder kritischen CVEs ergibt Migrate-Critical (außer beim Urteil Retire). Das Evidenzlabel ist not_assessed ohne verwendbaren Anwendungslauf, insufficient, wenn das 7R-Urteil fehlt oder weder das End of Life der Laufzeitumgebung noch der CVE-Status der Abhängigkeiten bekannt ist, und sonst sufficient. In Anwendungsläufe wird keine apm-score.json geschrieben.

Gewichte und Regeln anpassen ​

Kopieren Sie den gesamten mitgelieferten Rahmenwerksordner (framework-meta.yaml und controls.yaml) in den Workspace und bearbeiten Sie die Kopie. SWAO bevorzugt die Workspace-Kopie und liest beide Dateien daraus. Die Quelle kopieren Sie von GitHub unter community-frameworks/swao-apm. Legen Sie die Kopie hier ab:

text
wsp/inputs/catalogs/community/swao-apm/framework-meta.yaml
wsp/inputs/catalogs/community/swao-apm/controls.yaml

Auszug aus einer bearbeiteten framework-meta.yaml (alle übrigen Schlüssel unverändert lassen):

yaml
framework:
  domain_weights:
    APM-TCH: 25
    APM-SEC: 20
    APM-VND: 10
    APM-DAT: 10
    APM-REG: 10
    APM-SOV: 8
    APM-MIG: 5
    APM-INT: 4
    APM-HW: 3
    APM-BIZ: 3
    APM-STR: 2
  time_rules:
    migrate:
      eol_months_min: 0
      eol_months_max: 24     # engeres Migrate-Fenster für dieses Engagement

swao health-check prüft die Kopie:

  • Probe 18 (SWAO_APM weights): alle elf Domänen vorhanden, und die ganzen Zahlen ergeben genau 100. Eine falsche Summe ist ein Fehler; ein fehlender Schlüssel domain_weights ist eine Warnung (dann gelten gleiche Gewichte).
  • Probe 25 (SWAO_APM controls): alle elf Domänen haben Kontrollen, mindestens 4 pro Domäne, jede Kontrolle hat eine ID, einen Titel und eine Nachweisgrundlage, und die IDs sind eindeutig.

Kontrollen nach Domäne ​

APM-STR: Strategische Passung ​

KontrolleTitel (Katalog)Bewertet durch Regel
APM-STR-01Analyst portfolio disposition recordedanalyst_time_signal
APM-STR-02Migration intent declaredmigration_intent
APM-STR-03Business capability alignmentNachweis durch Analyse (nicht automatisiert)
APM-STR-04Cloud-native successor availableNachweis durch Analyse (nicht automatisiert)
APM-STR-05Vendor roadmap commitmentNachweis durch Analyse (nicht automatisiert)
APM-STR-06Functional redundancy assessedNachweis durch Analyse (nicht automatisiert)

APM-VND: Herstellerzustand ​

KontrolleTitel (Katalog)Bewertet durch Regel
APM-VND-01Vendor identifiedvendor_identified
APM-VND-02Vendor support activevendor_support_active
APM-VND-03Support contact availablesupport_contact_available
APM-VND-04Support contract currentcontract_currency
APM-VND-05Product version recordedproduct_version_known
APM-VND-06Vendor financial stabilityNachweis durch Analyse (nicht automatisiert)
APM-VND-07Service level agreement definedNachweis durch Analyse (nicht automatisiert)
APM-VND-08Vendor security advisory practiceNachweis durch Analyse (nicht automatisiert)

APM-TCH: Technischer Zustand ​

KontrolleTitel (Katalog)Bewertet durch Regel
APM-TCH-01Operating system in supportos_eol_status
APM-TCH-02Operating system end-of-life horizonos_eol_horizon
APM-TCH-03No open critical CVEscve_critical_open
APM-TCH-04Limited high-severity CVEscve_high_open
APM-TCH-05No known exploited vulnerabilitieskev_match
APM-TCH-06Patches available for severe CVEspatch_availability
APM-TCH-07Supported operating system familyos_family_supported
APM-TCH-08Update cadenceNachweis durch Analyse (nicht automatisiert)
APM-TCH-09Runtime and dependency freshnessbinary_runtime_current

APM-SEC: Sicherheitslage ​

KontrolleTitel (Katalog)Bewertet durch Regel
APM-SEC-01No weak cryptographic algorithmsweak_crypto
APM-SEC-02Encrypted network endpointscleartext_endpoints
APM-SEC-03No hard-coded credentialshardcoded_credentials
APM-SEC-04Valid code-signing certificatesexpired_certificates
APM-SEC-05No severe national advisoriesbsi_advisories
APM-SEC-06Installer not flagged as maliciousvt_detection
APM-SEC-07Strong authenticationNachweis durch Analyse (nicht automatisiert)
APM-SEC-08Security certificationsNachweis durch Analyse (nicht automatisiert)
APM-SEC-09Recent penetration testNachweis durch Analyse (nicht automatisiert)
APM-SEC-10Security incident historyNachweis durch Analyse (nicht automatisiert)

APM-DAT: Daten-Governance ​

KontrolleTitel (Katalog)Bewertet durch Regel
APM-DAT-01Data classification declareddata_classification_declared
APM-DAT-02Health data sensitivityhealth_data_sensitivity
APM-DAT-03Personal data sensitivitypersonal_data_sensitivity
APM-DAT-04Data flows documenteddata_flow_documented
APM-DAT-05Data residency declareddata_residency_declared
APM-DAT-06Sub-processors declaredsubprocessors_declared
APM-DAT-07Data processing agreementNachweis durch Analyse (nicht automatisiert)
APM-DAT-08Retention and deletionNachweis durch Analyse (nicht automatisiert)

APM-SOV: Souveränitätsreife ​

KontrolleTitel (Katalog)Bewertet durch Regel
APM-SOV-01Sovereign technology ratingsovereign_rating
APM-SOV-02Sovereign alternative existssovereign_alternative_available
APM-SOV-03Data stored in the EUdata_residency_eu
APM-SOV-04Third-country transfer riskNachweis durch Analyse (nicht automatisiert)
APM-SOV-05EU vendor entityNachweis durch Analyse (nicht automatisiert)
APM-SOV-06EUCS readinessNachweis durch Analyse (nicht automatisiert)

APM-BIZ: Geschäftskritikalität ​

KontrolleTitel (Katalog)Bewertet durch Regel
APM-BIZ-01Business criticality recordedbusiness_criticality
APM-BIZ-02User baseuser_base
APM-BIZ-03Operationally activeoperational_status_active
APM-BIZ-04Owning department recordeddepartment_assigned
APM-BIZ-05Outage impact assessedNachweis durch Analyse (nicht automatisiert)
APM-BIZ-06Process coverageNachweis durch Analyse (nicht automatisiert)

APM-HW: Hardware und Kosten ​

KontrolleTitel (Katalog)Bewertet durch Regel
APM-HW-01Hardware profile recordedhardware_profile_known
APM-HW-02Right-sized memorymemory_utilisation
APM-HW-03Cloud cost estimatedcloud_cost_estimate
APM-HW-04Total cost of ownership comparedNachweis durch Analyse (nicht automatisiert)

APM-INT: Integrationskomplexität ​

KontrolleTitel (Katalog)Bewertet durch Regel
APM-INT-01Integration countintegration_count
APM-INT-02Integrations documentedintegration_documented
APM-INT-03Modern integration protocolsNachweis durch Analyse (nicht automatisiert)
APM-INT-04API availabilityNachweis durch Analyse (nicht automatisiert)
APM-INT-05Replacement couplingNachweis durch Analyse (nicht automatisiert)

APM-MIG: Migrationsbereitschaft ​

KontrolleTitel (Katalog)Bewertet durch Regel
APM-MIG-01Marked as migration candidatemigration_candidate_flag
APM-MIG-02Portable operating systemos_portability
APM-MIG-03Cloud delivery modelvendor_type_cloud_ready
APM-MIG-04Sovereign cloud programmesovereign_cloud_programme
APM-MIG-05Data export capabilityNachweis durch Analyse (nicht automatisiert)

APM-REG: Compliance-Pflichten ​

KontrolleTitel (Katalog)Bewertet durch Regel
APM-REG-01Regulatory loadregulatory_load
APM-REG-02GDPR Art. 9 scopegdpr_art9_scope
APM-REG-03MDR classification knownmdr_classification_known
APM-REG-04Recent security auditaudit_recency
APM-REG-05Certification status currentNachweis durch Analyse (nicht automatisiert)