Jenner Professional Services

Von SAS zu Jenner Analytics migrieren

Testzertifizierte Migration für unternehmensweite SAS-Codebasen

Ihr SAS-Bestand funktioniert. Tausende Programme, Makros, Formate und geplante Jobs sind über Jahre verfeinert worden, und vieles von dem, was sie tun, ist nirgends dokumentiert außer im Code selbst. Das auf eine neue Plattform zu heben — so kompatibel diese auch sein mag — birgt ein reales Risiko: Etwas, das früher richtig war, ist nun auf feine Weise falsch, und niemand bemerkt es, bis es darauf ankommt.

Jenner Professional Services nimmt dieses Risiko mit einer einfachen Disziplin heraus. Bevor wir irgendetwas ändern, erstellen wir eine vollständige, ausführbare Aufzeichnung dessen, was Ihr heutiges System tut. Anschließend nutzen wir diese Aufzeichnung, um Test für Test nachzuweisen, dass das migrierte System dasselbe tut.

Das Ergebnis ist eine Migration, die Sie mit Nachweisen statt mit Zuversicht abnehmen können — und eine Regressionssuite, die Ihnen dauerhaft bleibt.

Mit der Discovery beginnen

Jenner ist ein Weg, nicht der einzige

Wir sind SAS-Experten — nachgewiesen dadurch, dass wir eine vollständige Implementierung dieser Sprache und dieses Systems geschaffen haben. Die Migration dorthin ist jedoch nur einer der Wege, die Sie mit uns gehen können.

Wir können unsere Implementierung SAS-kompatiblen Codes und unsere testgetriebene Arbeitsweise einsetzen, um eine erfolgreiche Migration nach Python oder R, nach Snowflake oder Databricks oder zu anderen Lösungen sicherzustellen — auch zu Siemens SLC.

Wir empfehlen die Migration auf Jenner, weil sie für Unternehmen mit vorhandener SAS-Infrastruktur zugleich schneller, weniger komplex und kostengünstiger ist.

Warum Kompatibilität allein noch keine Zertifizierung ist

Jenner führt die SAS-Sprache aus, nahezu jede Prozedur, die Makrofunktionalität, Grafiken und ein breites Spektrum an Datenverbindungen. Für den größten Teil des Codes bedeutet Migration schlicht, Jenner auf dieselben Programme zu richten. Eine unternehmensweite Codebasis ist jedoch nie nur die Sprache. Sie ist auch alles, was die Sprache berührt:

Umgebung und Konfiguration

autoexec.sas, Konfigurationsdateien, Systemoptionen (ENCODING, LOCALE, YEARCUTOFF, VALIDVARNAME, FMTSEARCH, SASAUTOS), Umgebungsvariablen, SYSPARM sowie Größe und Lebensdauer der WORK-Bibliothek.

Geheimnisse und Zugangsdaten

In LIBNAME-Anweisungen eingebettete Passwörter, {SAS002}-kodierte Zeichenketten, Zugangsdaten in per %include eingebundenen Dateien, Kerberos- oder SSO-Tickets — und die Frage, wo all das stattdessen liegen sollte.

Datenbankanbindung

SAS/ACCESS-Engines für Oracle, DB2, Teradata, SQL Server, Snowflake, Hive und weitere; explizites und implizites Pass-Through-SQL; Engine-Optionen, die Ergebnisse beeinflussen (DBCOMMIT, READBUFF, INSERTBUFF, BULKLOAD); Typabbildung für Datumswerte, Dezimalzahlen und NULL-Werte; und Verhalten, das sich unbemerkt geändert hat, als SQL in die Datenbank verlagert statt lokal ausgeführt wurde.

Datei- und Bibliotheksorte

Fest verdrahtete Pfade, Windows-Laufwerksbuchstaben gegenüber Linux-Mounts, Groß- und Kleinschreibung in Dateinamen, NFS- und SMB-Freigaben, FILENAME PIPE- und X-Befehle, SYSGET und Dateiberechtigungen.

Proprietäre Artefakte

Formatkataloge, kompilierte oder gespeicherte Makros, Indizes, Audit-Trails, Views, SPDE-Bibliotheken, Transportdateien, verschlüsselte oder komprimierte Datensätze sowie Datensätze aus der V6/V8-Zeit, die neu erzeugt statt kopiert werden müssen.

Serverseitige Produkte

SAS/CONNECT-RSUBMIT-Blöcke, Grid, SAS/SHARE, Stored Processes, Autorisierung über den Metadatenserver, Enterprise-Guide-Projekte, von DI Studio erzeugte Jobs und Viya-CAS-Aktionen. Für jedes gibt es auf der neuen Plattform eine Entsprechung, aber keine identische.

Planung und Orchestrierung

LSF, Control-M, cron, Job-Abhängigkeiten, Konventionen für Rückgabecodes, Log-Scraper, die nach bestimmtem NOTE-/WARNING-/ERROR-Text suchen, SYSERR- und SYSCC-Logik sowie FILENAME EMAIL-Benachrichtigungen.

Ausgabetreue

ODS-Ziele für PDF, RTF, Excel und HTML, PROC TEMPLATE-Stile, Tagsets, Schriften, Grafiktreiber und Berichte, die nachgelagerte Verbraucher nach Position auswerten.

Numerik und Statistik

Gleitkommarundung an Grenzwerten, Sortierkollation und Reihenfolge bei Gleichstand, Zufallszahlenströme (RANUNI, RAND, STREAMINIT), die über Implementierungen hinweg nicht reproduzierbar sind, und iterative Prozeduren, deren Konvergenzpfad innerhalb der Toleranz abweichen kann.

Code, der auf Eigenheiten baut

Nicht initialisierte Variablen, Remerging in PROC SQL, implizites RETAIN, als normal hingenommene Trunkierungswarnungen und undokumentiertes Verhalten, das heute zufällig das richtige Ergebnis liefert.

Integration mit allem Übrigen

Python über SASPy, R, Java- und .NET-Clients über IOM, JDBC auf SAS/SHARE, Tableau und pandas, die .sas7bdat-Dateien direkt lesen, sowie REST-Aufrufe in Viya.

Governance

Validierungsanforderungen in regulierten Branchen (GxP, 21 CFR Part 11, Modellrisikomanagement), Sicherheit auf Zeilenebene, Umgang mit personenbezogenen Daten, Audit-Trails und das Fehlen einer Versionsverwaltung in vielen langlebigen SAS-Beständen.

Nichts davon ist ungewöhnlich. All das lässt sich im Voraus auffinden, und all das ist testbar. Genau darum geht es im nachfolgenden Prozess.

Der Jenner-Migrationsprozess

1

Erfassen

Wir inventarisieren den Bestand, bevor wir den Aufwand schätzen. Mit automatisierter Analyse Ihres Quellbaums, Ihrer Zeitpläne und Ihrer Logs erstellen wir einen Abhängigkeitsgraphen aus Programmen, Makros, Formaten, Bibliotheken, externen Dateien und Datenbankverbindungen und ermitteln, was tatsächlich läuft, was tot ist und wem was gehört. Jede der obigen Kategorien wird geprüft, und die Befunde werden nach Migrationsaufwand bewertet.

Ergebnis

Ein Inventar- und Risikobericht mit einem Festpreisangebot für die weiteren Phasen. Entscheiden Sie sich gegen eine Fortsetzung, behalten Sie den Bericht.

2

Charakterisieren

Dies ist die Phase, die alles Weitere verlässlich macht, und sie findet vollständig auf Ihrem bestehenden SAS-System statt, bevor irgendetwas migriert wird.

Für jedes Programm im Umfang erstellen wir mit KI-gestützter Analyse Charakterisierungstests: ausführbare Spezifikationen dessen, was der Code heute tut. Jeder Test erfasst die Eingaben, die ein Programm verbraucht — Datensätze, Makroparameter, externe Dateien, Datenbankauszüge, Umgebungseinstellungen —, führt es auf Ihrer heutigen SAS-Installation aus und zeichnet alles auf, was es erzeugt: Ausgabedatensätze, Log-Inhalte, Rückgabecodes, ODS-Ausgaben, den Zustand von Makrovariablen und Nebenwirkungen wie geschriebene Dateien oder versendete E-Mails.

Erst KI macht das im Unternehmensmaßstab praktikabel. Zehntausend Programme zu lesen und die Randfälle abzuleiten, die jedes einzelne behandelt, ist keine Aufgabe für Menschen mit einer Frist. Testfälle, Fixtures und Vergleichslogik zu erzeugen ist genau jene umfangreiche, musterlastige Arbeit, in der heutige Modelle stark sind — und jeder erzeugte Test wird validiert, indem er gegen das System läuft, das er beschreibt. Besteht ein Test auf Ihrem heutigen SAS nicht, ist er kein Test Ihres Systems und wird verworfen.

Vergleichsregeln werden je Ausgabe festgelegt. Datensätze werden standardmäßig exakt verglichen; numerische Toleranzen werden dort ausdrücklich deklariert, wo Gleitkomma- oder iterative Prozeduren bitgenaue Gleichheit sinnlos machen; Log-Vergleiche sind strukturell statt textuell, sodass eine umformulierte NOTE keinen Job scheitern lässt, eine veränderte Zeilenzahl hingegen schon. Nichtdeterministische Eingaben wie das aktuelle Datum und Zufallssaaten werden kontrolliert, damit derselbe Test an jedem Tag dieselbe Antwort gibt. Wo Produktivdaten nicht zum Testen verwendet werden dürfen, bauen wir maskierte oder synthetische Fixtures, die dieselben Codepfade durchlaufen.

Ergebnis

Eine versionierte Testsuite mit gemessener Abdeckung über Programme, Makros und Prozeduren sowie eine Referenzaufzeichnung der Ergebnisse Ihres heutigen Systems. Diese Suite gehört Ihnen. Sie ist so geschrieben, dass sie auf Jenner, auf SAS und auf allem Weiteren läuft, das die Sprache spricht, und sie ist unabhängig von der Migration wertvoll: Die meisten SAS-Bestände hatten noch nie eine.

3

Migrieren

Mit der Referenz in der Hand wird die Migration zu einer Ingenieursaufgabe mit klarer Definition von „fertig“. Wir stellen Jenner in Ihrer Umgebung bereit, beheben die in der Discovery gefundenen Umgebungspunkte (Pfade, Bibliotheken, Verwaltung von Geheimnissen, Datenbankverbindungen, Scheduler-Anbindung) und lassen die vollständige Suite laufen.

Jeder Fehlschlag wird einer von vier Kategorien zugeordnet:

01Jenner-Defekt

Der Code ist richtig und Jenner liegt falsch. Jenner liefert wöchentlich neue Builds aus; in Kundenmigrationen gefundene Defekte werden priorisiert, und der fehlgeschlagene Test wird dauerhafter Bestandteil von Jenners eigener Regressionssuite.

02Umgebung

Ein Pfad, ein Zugangsdatum, eine Verbindung oder eine Option, die gesetzt werden muss. Behoben und erneut ausgeführt.

03Abhängigkeit von einer Eigenheit

Der Code stützt sich auf undokumentiertes SAS-Verhalten. Wir zeigen Ihnen die konkrete Zeile und das konkrete Verhalten, und Sie entscheiden: den Code ändern — wobei der Test belegt, dass die Änderung sicher ist — oder Jenner die Eigenheit nachbilden lassen.

04Akzeptable Abweichung

Das Ergebnis weicht innerhalb einer deklarierten Toleranz ab, oder eine Log-Meldung ist anders formuliert. Dokumentiert und abgezeichnet, niemals stillschweigend hingenommen.

Die Suite läuft fortlaufend, während Probleme behoben werden. Fortschritt ist damit eine Zahl und keine Meinung, und Regressionen fallen noch am Tag ihrer Entstehung auf.

Ergebnis

Eine migrierte Codebasis, bei der die vollständige Suite besteht — oder bei der jede verbleibende Abweichung schriftlich entschieden ist.

4

Zertifizieren

Die Zertifizierung ist das Nachweispaket, mit dem Ihr Sponsor, Ihre Prüfer und Ihre Aufsichtsbehörden die Migration annehmen können.

Wir führen einen Parallelbetrieb durch, in dem Produktionsjobs auf beiden Systemen laufen und die Ausgaben automatisch nach denselben Regeln wie in der Testsuite verglichen werden. Das Zertifizierungspaket umfasst das Inventar, die Testsuite und ihre Abdeckung, die Referenz, die Ergebnisse des finalen Laufs, die Entscheidung zu jeder Abweichung und die Nachverfolgbarkeit von jeder Anforderung oder jedem Programm zu den Tests, die es abdecken. Für regulierte Kunden ist es so aufgebaut, dass es eine IQ/OQ/PQ-Validierung und Audits trägt.

Ergebnis

Ein unterzeichnetes Zertifizierungspaket und eine Go/No-Go-Empfehlung.

5

Umstellen und begleiten

Die Umstellung wird um Ihre Batch-Fenster und den Verlängerungstermin Ihrer SAS-Lizenz herum geplant, mit einem erprobten Rückfallweg. Scheduler werden umgehängt, Überwachung und Alarmierung werden bestätigt, und die SAS-Umgebung wird nach Ihrem Zeitplan stillgelegt.

Die Testsuite läuft auch nach der Umstellung weiter. Da Jenner wöchentlich ausliefert, erhalten Sie jede Verbesserung mit demselben Nachweis, dass sich an nichts geändert hat, worauf Sie sich verlassen. Ihr Team wird geschult, die Suite mitwachsen zu lassen.

Ergebnis

Produktion auf Jenner, ein Stilllegungsplan für SAS und eine Regressionssuite, die weiter für Sie arbeitet.

Was Sie erhalten

  • Ein vollständiges, aktuelles Inventar Ihres SAS-Bestands, einschließlich der Teile, an die sich niemand mehr erinnert hat.
  • Eine Charakterisierungs-Testsuite mit gemessener Abdeckung, die Ihnen gehört und plattformübergreifend einsetzbar ist.
  • Eine Migration, deren Abschluss über Testergebnisse definiert ist statt über ein Datum.
  • Ein Zertifizierungspaket, gebaut für Prüfer und Aufsichtsbehörden.
  • Dauerhafter Schutz vor Regressionen, auf Jenner wie anderswo.
  • In Ihrer Migration gefundene Defekte werden im Produkt behoben, nicht in Ihrem Code umgangen.

Wie Projekte aufgesetzt sind

Discovery

Zum Festpreis und kurz. Sie liefert das Angebot für die weiteren Phasen, kalkuliert auf der gemessenen Größe und Komplexität Ihres Bestands statt auf einer Schätzung davon.

Charakterisieren, Migrieren, Zertifizieren

In der Regel als ein einziges Projekt mit festem Umfang, mit Meilensteinabnahme entlang der Ergebnisse der Testsuite.

Begleitung nach der Umstellung

Als Jahresleistung verfügbar, nachdem die Testsuite übergeben und Ihr Team für ihre Erweiterung geschult wurde.

Kostenorientierung

Kleine Migrationen und Pilotprojekte

$1,000 – $21,000

In der Regel aus der Ferne durchführbar, mit einer Dauer von einer Woche bis zu einem Monat.

Größere, komplexere Migrationen

$52,000 – $405,000

Erfordern Arbeit vor Ort und/oder vertiefte Fachkenntnis und dauern üblicherweise zwei bis sechs Monate.

Alle Beträge verstehen sich in US-Dollar (USD).

Darin sind keine Softwarelizenzgebühren enthalten; diese sind allerdings sehr überschaubar und wettbewerbsfähig. Zur Preisseite.

Professional Services kontaktieren

Mit der Discovery beginnen

Schicken Sie uns eine Beschreibung Ihrer SAS-Umgebung — Plattform, ungefähre Programmanzahl, eingesetzte Produkte, Datenbanken und Scheduler — und wir schneiden eine Discovery zu.