Begriffe, die in Projekten wirklich fallen, kurz erklärt.
Jeder Eintrag endet mit dem Haken, der im Lehrbuch fehlt.
Legacy und Modernisierung
Ein Muster, um ein Altsystem schrittweise abzulösen: Neue Funktionen entstehen außen herum, das alte System schrumpft, bis nichts mehr davon übrig ist.
Der aufgeschobene Aufwand aus früheren Abkürzungen im Code oder in der Architektur. Er verschwindet nicht, er wird nur später und teurer fällig.
Code ohne Tests, der Geld verdient. Die Definition von Michael Feathers ist deshalb brauchbar, weil sie das eigentliche Problem benennt: fehlende Absicherung, nicht das Alter.
Tests, die festhalten, was ein System heute tut, statt zu prüfen, was es tun sollte. Das Sicherheitsnetz vor der ersten Änderung.
Der Anteil des Codes, der beim Testlauf ausgeführt wird. Eine Kennzahl, die viel über Lücken sagt und wenig über Qualität.
Die innere Struktur von Code verbessern, ohne sein nach außen sichtbares Verhalten zu verändern.
Eine Anwendung, die als eine Einheit gebaut, ausgeliefert und betrieben wird.
Eine Anwendung wird in mehrere eigenständig auslieferbare Dienste zerlegt, jeder mit eigener Datenhaltung und eigenem Lebenszyklus.
Die Übernahme von Bestandsdaten in ein neues System, meist der unterschätzte und zeitkritischste Teil einer Ablösung.
Die Schnittstelle wird zuerst entworfen und abgestimmt, danach entstehen Umsetzung und Oberfläche dagegen.
Eine Übersetzungsschicht zwischen neuem und altem System, damit die Eigenheiten des Altsystems nicht in den neuen Code einsickern.
Ein Schalter im Code, mit dem sich Funktionen zur Laufzeit an- und abschalten lassen, ohne neu auszuliefern.
Eine Anwendung, die als Einheit ausgeliefert wird, intern aber klar getrennte Module mit eigenen Grenzen hat.
Ein Verfahren für Datenbankänderungen ohne Ausfall: erst erweitern, dann umstellen, erst danach das Alte entfernen.
Die Anzahl Personen, die ausfallen müssten, damit ein System nicht mehr weiterentwickelt oder betrieben werden kann. Bei vielen Altsystemen ist sie eins.
Der Zeitpunkt, ab dem eine Version keine Sicherheitsupdates mehr bekommt. Ab dann ist jede bekannte Lücke dauerhaft offen.
Greenfield heißt auf der grünen Wiese bauen, Brownfield heißt bauen, während drumherum ein bestehendes System weiterläuft.
Die Umstellung eines Systems zu einem Stichtag, meist über ein Wochenende, ohne Zwischenzustand und mit nur einem Versuch.
AWS und Kosten
Das vorbereitete Fundament einer AWS-Umgebung: Konten, Netzwerk, Rechte, Protokollierung und Kostenzuordnung, bevor die erste Anwendung einzieht.
Der detaillierteste Kostenbericht von AWS: jede Ressource, jede Stunde, jede Preiskomponente als Rohdatensatz statt als Diagramm.
Die Praxis, Cloud-Kosten als laufende technische Entscheidung zu behandeln statt als monatliche Rechnung, die die Buchhaltung bekommt.
Zwei Wege, für eine Nutzungszusage über ein oder drei Jahre deutlich weniger zu zahlen als für Rechenleistung auf Zuruf.
Ressourcen auf die tatsächlich benötigte Größe bringen, statt auf die, die beim Anlegen gewählt wurde.
Der Dienst, über den Ressourcen aus privaten Subnetzen ins Internet gelangen. Rechnet nach Stunde und nach verarbeiteten Daten.
Gebühren für Daten, die eine AWS-Region, eine Verfügbarkeitszone oder die Cloud verlassen. Eingehende Daten sind meist kostenlos.
Ein verbindliches Schema, mit dem jede Ressource ihrem Team, ihrer Umgebung und ihrem Kostenträger zugeordnet wird.
Ein Fragenkatalog von AWS, mit dem sich eine Architektur entlang von sechs Säulen bewerten lässt, von Betriebsführung bis Nachhaltigkeit.
Freie Kapazität, die AWS mit bis zu 90 Prozent Rabatt abgibt und mit kurzer Vorwarnung zurückholen kann.
Kapazität wird automatisch an die Last angepasst, damit weder Nutzer warten noch Leerlauf bezahlt wird.
Abstufungen von Speicher nach Zugriffshäufigkeit: von sofort verfügbar bis Archiv, mit stark unterschiedlichen Preisen.
Ein System wird nahezu unverändert in die Cloud umgezogen, ohne Anpassung an Cloud-Eigenschaften.
Ein System wird beim Umzug gezielt an die Plattform angepasst, ohne es neu zu schreiben.
Ein Betriebsmodell, bei dem der Anbieter Bereitstellung und Skalierung übernimmt und nur die tatsächliche Nutzung abgerechnet wird.
Der Dienst, mit dem einzelne Funktionen ohne eigene Server ausgeführt werden, ausgelöst durch Ereignisse oder Aufrufe.
Das eigene virtuelle Netzwerk in AWS, in dem Subnetze, Routen und Zugriffsregeln festgelegt werden.
Die Rechteverwaltung in AWS: Wer oder was darf welche Aktion auf welcher Ressource ausführen.
Verwaltete relationale Datenbanken bei AWS: Sicherung, Aktualisierung und Ausfallsicherheit übernimmt der Anbieter.
Das Auslieferungsnetz von AWS: Inhalte werden an Standorten nahe beim Nutzer zwischengespeichert.
Backend und Betrieb
Zwei Zahlen für den Ernstfall: Wie lange darf die Wiederherstellung dauern (RTO), und wie viele Daten dürfen dabei verloren gehen (RPO).
Zwei vollständige Umgebungen nebeneinander: Die neue Version läuft still mit, der Verkehr wird umgeschaltet, und im Fehlerfall schaltet man zurück.
Ein System bedient mehrere Kunden auf derselben Infrastruktur, ohne dass die Daten des einen beim anderen auftauchen.
Ein System läuft in mehreren geografischen Regionen, damit der Ausfall einer Region den Betrieb nicht beendet – und Nutzer kürzere Wege haben.
Eine Anwendung samt ihrer Abhängigkeiten in einem abgeschlossenen Paket, das überall gleich läuft.
Ein System, das Container über mehrere Maschinen verteilt, neu startet, skaliert und ihre Erreichbarkeit regelt.
Automatisierte Strecke von der Änderung bis zur Auslieferung: bauen, testen, ausliefern, ohne Handarbeit dazwischen.
Ein Verteiler, der eingehende Anfragen auf mehrere Instanzen aufteilt und ausgefallene aus dem Verkehr nimmt.
Ergebnisse werden zwischengespeichert, damit teure Berechnungen oder Abfragen nicht wiederholt werden müssen.
Ein Puffer zwischen Sender und Empfänger: Nachrichten warten, bis jemand sie verarbeitet.
Ein vorgelagerter Dienst, der Anfragen entgegennimmt, prüft und an die dahinterliegenden Dienste weiterleitet.
Ein Baustil für Schnittstellen über HTTP: Ressourcen mit klaren Adressen, Standardmethoden und zustandslosen Aufrufen.
Ein umgekehrter Aufruf: Statt regelmäßig nachzufragen, wird man vom anderen System benachrichtigt, sobald etwas passiert.
Eine zusätzliche Struktur, mit der die Datenbank Zeilen findet, ohne die ganze Tabelle zu lesen.
Kontrollierte Störungen im laufenden System, um herauszufinden, ob die Absicherung wirklich trägt.
Eine knappe Anleitung für einen wiederkehrenden Betriebsfall: was zu prüfen ist, was zu tun ist, wen man holt.
Eine Verarbeitung ist idempotent, wenn dieselbe Anfrage mehrfach ausgeführt dasselbe Ergebnis hat wie einmal ausgeführt.
Ein Schutzmechanismus, der Aufrufe an einen ausgefallenen Dienst vorübergehend gar nicht erst versucht, statt in jede Zeitüberschreitung zu laufen.
Eine Obergrenze für Anfragen je Zeitraum und Aufrufer, damit einzelne Nutzer ein System nicht für alle anderen lahmlegen.
Die Eigenschaft eines Systems, von außen erkennen zu lassen, was innen passiert, auch bei Fragen, die vorher niemand gestellt hat.
Ein Messwert (SLI), ein selbst gesetztes Ziel dafür (SLO) und eine vertragliche Zusage mit Folgen (SLA).
Dienste tauschen Ereignisse aus, statt sich gegenseitig direkt aufzurufen. Der Sender weiß nicht, wer zuhört.
Infrastruktur wird als versionierter Code beschrieben statt in einer Weboberfläche zusammengeklickt.
Ein System verliert bei Teilausfällen einzelne Funktionen, statt vollständig auszufallen.
Ein Verfahren für Aufrufe zwischen Diensten mit fest beschriebener Schnittstelle und binärer Übertragung, deutlich sparsamer als JSON über HTTP.
Ein Weg, Vorgänge über mehrere Dienste hinweg abzuwickeln, wenn es keine gemeinsame Transaktion gibt: jeder Schritt hat einen Ausgleichsschritt.
Eine neue Version geht zuerst an einen kleinen Teil des Verkehrs. Bleiben die Kennzahlen stabil, wird der Anteil erhöht.
Daten werden nach einem Schlüssel auf mehrere Datenbanken verteilt, wenn eine einzelne die Menge oder Last nicht mehr trägt.
KI in Produktion
Ein Sprachmodell bekommt vor der Antwort passende Ausschnitte aus den eigenen Daten mitgeliefert, statt sich auf sein Training zu verlassen.
Ein offener Standard, über den Sprachmodelle Werkzeuge und Datenquellen ansprechen – eine gemeinsame Schnittstelle statt einer Integration je Anbieter.
Ein Angriff, bei dem Anweisungen in Daten versteckt werden, die ein Sprachmodell verarbeitet, damit es etwas anderes tut als vorgesehen.
Zahlenreihen, die die Bedeutung eines Textes abbilden. Ähnliche Inhalte liegen im Vektorraum nah beieinander, auch ohne gemeinsame Wörter.
Technische Grenzen um ein Sprachmodell herum, die festlegen, was hinein darf, was heraus darf und was es auslösen kann.
Ein wiederholbares Verfahren, mit dem sich messen lässt, ob Antworten eines Sprachmodells besser oder schlechter werden.
Die Menge an Text, die ein Sprachmodell bei einer Anfrage gleichzeitig berücksichtigen kann, gemessen in Token.
Eine Antwort, die plausibel klingt und sachlich falsch ist. Das Modell erfindet nicht absichtlich, es setzt wahrscheinliche Wörter aneinander.
Ein vorhandenes Modell wird mit eigenen Beispielen nachtrainiert, um Stil, Format oder Fachsprache zuverlässig zu treffen.
Ein Sprachmodell, das nicht nur antwortet, sondern in mehreren Schritten Werkzeuge aufruft, Zwischenergebnisse bewertet und weiterarbeitet.
Die laufenden Kosten je Anfrage an ein Sprachmodell, abgerechnet nach eingehenden und ausgehenden Token.
Ein Ablauf, bei dem ein Mensch an definierten Stellen bestätigt, korrigiert oder ablehnt, bevor eine Aktion wirksam wird.
Eine Datenbank, die Vektoren speichert und ähnliche Einträge schnell findet, Grundlage für Suche nach Bedeutung.
Das Zerlegen von Dokumenten in Abschnitte, die einzeln durchsuchbar und an ein Modell übergebbar sind.
Ein zweiter Schritt in der Suche: Die ersten Treffer werden von einem genaueren Modell neu sortiert, bevor sie ans Sprachmodell gehen.
Das gezielte Formulieren von Anweisungen an ein Sprachmodell, damit Ergebnisse verlässlich statt zufällig gut werden.
Die Grundanweisung, die vor jeder Nutzereingabe steht und Rolle, Grenzen und Format des Modells festlegt.
Ein Modell gibt statt Text eine strukturierte Anfrage aus, welches Werkzeug mit welchen Parametern aufgerufen werden soll.
Modelle, deren Gewichte frei verfügbar sind und die dadurch selbst betrieben werden können, im eigenen Rechenzentrum oder in der eigenen Cloud.
Die europäische Verordnung für künstliche Intelligenz, die Anwendungen nach Risiko einstuft und daran Pflichten knüpft.
Prozesse und Automatisierung
Ein wiederkehrender Ablauf wird von Software übernommen, statt von Menschen zwischen Systemen hin und her getragen zu werden.
Der Punkt, an dem Daten das Format oder das System wechseln und dafür ein Mensch tätig werden muss.
Ein Vorgang läuft vollständig ohne menschlichen Eingriff durch, vom Eingang bis zur Buchung.
Ein Dienst, der mehrschrittige Abläufe steuert, Zustände hält, Wiederholungen übernimmt und bei Fehlern definiert weitermacht.
Daten werden aus Quellsystemen gezogen, umgeformt und in ein Zielsystem geladen, meist regelmäßig und automatisiert.
Die Verbindung eines Systems mit der Warenwirtschaft, damit Bestände, Preise, Aufträge und Belege nicht doppelt gepflegt werden.
Software bedient bestehende Anwendungen so, wie ein Mensch es täte, über deren Oberfläche statt über Schnittstellen.
Sicherheit und Betriebsrisiko
Jede Identität bekommt genau die Rechte, die sie für ihre Aufgabe braucht, und keine darüber hinaus.
Die Verwaltung von Passwörtern, Schlüsseln und Zugangsdaten außerhalb von Code und Konfigurationsdateien.
Kein Zugriff gilt als vertrauenswürdig, nur weil er aus dem internen Netz kommt. Jede Anfrage wird geprüft.
Eine unveränderliche Aufzeichnung darüber, wer wann welche Aktion ausgeführt hat.
Daten werden sowohl bei der Übertragung als auch bei der Speicherung verschlüsselt.
Der geregelte Umgang mit Sicherheitsaktualisierungen: erkennen, bewerten, einspielen, nachweisen.
Ein beauftragter Angriff auf das eigene System, um Schwachstellen zu finden, bevor jemand anderes sie findet.
Diese Website nutzt Google Analytics, um den Besuch anonym auszuwerten. Ihre Daten werden nur nach ausdrücklicher Einwilligung erhoben.Datenschutzerklärung