Dokumentation: Begriffsdefinitionen
Dieser Abschnitt fasst die auf dieser Seite verwendeten Begriffe zusammen.
Audit logs
Audit Logs sind Aufzeichnungen von Ereignissen, Aktionen oder Transaktionen innerhalb eines Systems, einer Anwendung oder eines Netzwerks. Sie liefern einen chronologischen Nachweis der Aktivitäten und helfen Organisationen dabei, die Benutzeraktivität zu überwachen, die Sicherheit zu gewährleisten und regulatorische Vorgaben einzuhalten. Audit Logs enthalten in der Regel Angaben wie Benutzer-ID, ausgeführte Aktion, Zeitstempel und betroffene Ressourcen. Sie können verwendet werden, um verdächtiges Verhalten zu erkennen, Probleme zu analysieren, Trends auszuwerten und forensische Untersuchungen bei Sicherheitsvorfällen zu unterstützen.
BPEL
BPEL (Business Process Execution Language) ist eine Programmiersprache zur Komposition und Koordination von Webservices. Sie bietet eine standardisierte Möglichkeit, Geschäftsprozesse und die Interaktionen zwischen den einzelnen Services zu beschreiben, aus denen diese Prozesse bestehen. BPEL basiert auf XML und kann mit verschiedenen Programmiersprachen und Plattformen verwendet werden. Sie kommt häufig in Projekten zur Enterprise Application Integration und in serviceorientierten Architekturen (SOA) zum Einsatz.
BPEL hat sich zwar für die Orchestrierung von Geschäftsprozessen in Webservice-Umgebungen bewährt, weist jedoch einige Nachteile auf:
- Komplexität: BPEL kann aufgrund der XML-basierten Syntax und der zahlreichen Konstrukte zur Definition komplexer Prozessabläufe schwer zu erlernen und anzuwenden sein. Für Entwickler, die BPEL noch nicht kennen, kann dies zu einer steilen Lernkurve führen.
- Eingeschränkte Unterstützung menschlicher Interaktion: BPEL wurde in erster Linie für die Interaktion zwischen Systemen entwickelt und bietet keine integrierte Unterstützung für Human Tasks und menschliche Interaktionen, die in Geschäftsprozessen oft entscheidend sind. Zwar wurden einige Erweiterungen vorgeschlagen, um diese Einschränkung zu beheben, doch werden sie möglicherweise nicht von allen BPM-Plattformen breit unterstützt.
- Eingeschränkte Unterstützung für Nicht-XML-Daten: BPEL ist eng an XML-Datenstrukturen gekoppelt, was beim Umgang mit anderen Datenformaten ein Nachteil sein kann. Andere Datenformate können zwar in XML umgewandelt werden, dies kann jedoch zusätzliche Komplexität und Verarbeitungsaufwand mit sich bringen.
- Vendor-Lock-in: Obwohl BPEL ein Standard ist, kann die Umsetzung zwischen verschiedenen BPM-Plattformen und Herstellern variieren, was zu Kompatibilitätsproblemen und zu einer Herstellerabhängigkeit führen kann.
- Fehlende Unterstützung moderner Webservice-Standards: BPEL wurde für SOAP-basierte Webservices entwickelt, die in den letzten Jahren weitgehend durch RESTful-Webservices abgelöst wurden. BPEL kann zwar auch mit RESTful-Services verwendet werden, dies erfordert jedoch möglicherweise zusätzlichen Aufwand und individuelle Anpassungen.
- Rückläufige Beliebtheit und Verbreitung: Mit dem Aufkommen alternativer Technologien und Paradigmen wie Microservices und ereignisgesteuerten Architekturen sind Beliebtheit und Verbreitung von BPEL zurückgegangen. Viele Organisationen wenden sich neueren, flexibleren Lösungen für die Orchestrierung ihrer Geschäftsprozesse zu.
Citizen Developer
Ein „Citizen Developer" ist eine Person ohne formale Ausbildung in der Softwareentwicklung, die mithilfe von Low-Code- oder No-Code-Plattformen Anwendungen erstellt, um betriebliche Probleme zu lösen. Diese Plattformen ermöglichen es, Software über intuitive, grafische Oberflächen anstelle von herkömmlichem Programmieren zu erstellen und dabei das eigene Verständnis der fachlichen Anforderungen einzubringen. Citizen Developer arbeiten in der Regel im Rahmen der Richtlinien der IT-Abteilung ihres Unternehmens, mit dem Ziel, Innovationen zu beschleunigen und spezifische operative Herausforderungen effizient zu bewältigen.
Containerization
Containerisierung bezeichnet in der Softwareentwicklung das Verpacken einer Anwendung zusammen mit ihren Abhängigkeiten, Bibliotheken und Konfigurationsdateien in eine einzelne, leichtgewichtige und portable Einheit, den sogenannten Container. Container sind voneinander und vom Hostsystem isoliert und gewährleisten so ein konsistentes Verhalten in unterschiedlichen Umgebungen. Die Containerisierung vereinfacht das Deployment, die Skalierung und die Verwaltung von Anwendungen und erleichtert es, Anwendungen auf verschiedenen Plattformen zu entwickeln, zu testen und auszuführen. Zu den bekannten Containerisierungs-Tools zählen Docker und Kubernetes.
Continuous Delivery (CD)
Continuous Delivery (CD) ist eine Methodik der Softwareentwicklung, die sicherstellt, dass sich die Codebasis jederzeit in einem auslieferbaren Zustand befindet. Aufbauend auf Continuous Integration automatisiert Continuous Delivery die Auslieferung des Codes in verschiedene Umgebungen (Staging, Produktion usw.) über vordefinierte Pipelines. Dadurch können Teams neue Änderungen schnell und sicher für Kunden bereitstellen, oft auf Knopfdruck. CD minimiert das Deployment-Risiko, verringert die Komplexität des Release-Prozesses und ermöglicht schnellere Feedback-Schleifen mit den Endanwendern.
Continuous Integration (CI)
Continuous Integration (CI) ist eine Praxis der Softwareentwicklung, bei der Entwickler ihre Codeänderungen häufig, am besten mehrmals täglich, in ein zentrales Repository zusammenführen. Jede Zusammenführung wird automatisch geprüft, indem das Projekt gebaut und automatisierte Tests ausgeführt werden. Ziel ist es, Integrationsfehler so früh wie möglich zu erkennen, die Codeintegration zu erleichtern, den Zeitaufwand für das Finden und Beheben von Fehlern zu verringern und die Softwarequalität zu verbessern.
CRUD
CRUD ist eine Abkürzung für Create, Read, Update und Delete (Erstellen, Lesen, Aktualisieren und Löschen).
CSS
CSS (Cascading Style Sheets) ist eine Stylesheet-Sprache zur Steuerung des Erscheinungsbilds und der Formatierung von HTML-Elementen auf einer Webseite. Sie ermöglicht es Entwicklern, den Inhalt (HTML) von der Darstellung (CSS) zu trennen, wodurch Websites leichter gepflegt und gestaltet werden können. CSS legt fest, wie Elemente dargestellt werden, einschließlich Farben, Schriftarten, Größen, Abständen und Positionierung. Durch die Anwendung von CSS-Regeln auf HTML-Elemente können Entwickler ein einheitliches und ansprechendes Webdesign über mehrere Seiten und Geräte hinweg umsetzen.
Docker
Docker ist eine Open-Source-Plattform, die das Erstellen, Bereitstellen und Ausführen von Anwendungen in Containern ermöglicht. Container sind leichtgewichtige, eigenständige und ausführbare Softwarepakete, die alle zum Betrieb einer Anwendung erforderlichen Komponenten enthalten, darunter Code, Laufzeitumgebung, Systemwerkzeuge und Bibliotheken.
Document databases
Dokumentendatenbanken sind eine Art von NoSQL-Datenbanken, die Daten in einem semistrukturierten Format wie JSON oder BSON speichern. Sie sind für hierarchische oder komplexe Datenstrukturen ausgelegt und bieten Flexibilität beim Schema-Design. Mit Dokumentendatenbanken können Sie Dokumente speichern, abfragen und aktualisieren, die verschiedene Felder, verschachtelte Strukturen und Datentypen enthalten können. Sie eignen sich gut für Anwendungen wie Content-Management-Systeme, Kataloge und Benutzerprofile. Beispiele für Dokumentendatenbanken sind MongoDB und Couchbase.
EC2
EC2 steht für Elastic Compute Cloud und ist ein Webservice von Amazon Web Services (AWS), mit dem Benutzer virtuelle Computer mieten können, auf denen sie ihre eigenen Anwendungen ausführen.
Entity
Eine Entität ist im Kontext von Daten und Softwaresystemen die Repräsentation eines Objekts oder Konzepts der realen Welt mit einer eigenständigen, unabhängigen Existenz. Sie ist ein grundlegender Bestandteil von Datenmodellen und dient als Grundlage für die Strukturierung und Speicherung von Daten. Eine Entität verfügt üblicherweise über eine Reihe von Attributen oder Eigenschaften, die ihre Merkmale beschreiben, und kann zudem Beziehungen zu anderen Entitäten haben.
Beim Datenbankdesign wird eine Entität beispielsweise zur Darstellung einer Tabelle verwendet: Die Entität entspricht der Tabelle, und die Attribute entsprechen den Spalten der Tabelle. Eine Entität kann ein greifbares Objekt wie „Person" oder „Produkt" oder ein abstraktes Konzept wie „Bestellung" oder „Termin" darstellen.
Der Zweck einer Entität besteht darin, Daten auf systematische und organisierte Weise in strukturierter Form darzustellen und so die effiziente Speicherung, Abfrage und Bearbeitung von Daten in Bezug auf das abgebildete Szenario der realen Welt zu ermöglichen.
Event
Ein Event ist in einer Workflow-Engine ein bestimmtes Ereignis oder eine bestimmte Aktion, die die Ausführung eines Prozesses oder einer bestimmten Aktion innerhalb eines Prozesses auslöst. Es kann extern oder intern zum System sein und dient dazu, den Ablauf von Aufgaben und den Informationsfluss innerhalb des Prozesses zu steuern.
Event-driven architecture
Die ereignisgesteuerte Architektur (Event-driven Architecture, EDA) ist ein Software-Entwurfsmuster, das sich um die Erzeugung, Erkennung und Verarbeitung von Events dreht. In einer EDA sind Events Nachrichten oder Signale, die eine Änderung des Systemzustands oder ein Ereignis anzeigen. Komponenten innerhalb der Architektur, etwa Microservices oder Module, kommunizieren asynchron, indem sie Events senden, auf sie warten und darauf reagieren. Dadurch werden die Komponenten entkoppelt, sodass sie sich unabhängig voneinander weiterentwickeln können, was Skalierbarkeit, Flexibilität und Anpassungsfähigkeit fördert. EDA wird häufig in Echtzeitanwendungen, IoT-Systemen und verteilten Systemen eingesetzt.
Failover
Failover bezeichnet den Wechsel auf ein Backup- oder Sekundärsystem, wenn das Primärsystem ausfällt. Ziel ist es, Unterbrechungen und Ausfallzeiten zu minimieren, indem schnell auf ein funktionierendes System umgeschaltet wird.
FTP
FTP (File Transfer Protocol) ist ein standardisiertes Netzwerkprotokoll zur Übertragung von Dateien zwischen Hosts über ein TCP-basiertes Netzwerk. Es bietet eine Client-Server-Architektur, in der sich ein Client mit einem Server verbinden kann, um Dateien herunterzuladen oder hochzuladen. FTP unterstützt verschiedene Betriebsmodi, darunter den aktiven und den passiven Modus, und kann mit verschiedenen Authentifizierungsmethoden wie Benutzername/Passwort und SSH-Schlüsseln verwendet werden. FTP wird häufig für die Dateiübertragung über das Internet eingesetzt und von zahlreichen Betriebssystemen und Plattformen unterstützt.
GDPR
Die Datenschutz-Grundverordnung (DSGVO, englisch GDPR - General Data Protection Regulation) ist eine Verordnung der Europäischen Union (EU), die am 25. Mai 2018 in Kraft trat. Sie ersetzt die EU-Datenschutzrichtlinie von 1995. Die DSGVO stärkt die Datenschutzgesetze der EU und gibt EU-Bürgern mehr Kontrolle über ihre personenbezogenen Daten. Sie gilt für jedes Unternehmen, das personenbezogene Daten von EU-Bürgern verarbeitet, unabhängig vom Standort des Unternehmens. Nach der DSGVO haben Einzelpersonen bestimmte Rechte in Bezug auf ihre personenbezogenen Daten, darunter das Recht auf Auskunft, Berichtigung und Löschung ihrer personenbezogenen Daten sowie das Recht, der Verarbeitung ihrer Daten zu widersprechen oder sie einzuschränken. Unternehmen sind zudem verpflichtet, einen Datenschutzbeauftragten (DSB) zu benennen und die zuständigen Behörden über bestimmte Arten von Datenschutzverletzungen zu informieren.
Grafana
Grafana ist eine Open-Source-Plattform zur Datenvisualisierung und zum Monitoring, mit der Sie Metriken und Logs aus verschiedenen Datenquellen abfragen, visualisieren und mit Alarmen versehen können. Sie bietet eine webbasierte Oberfläche zum Erstellen und Verwalten von Dashboards und Panels, die zur Anzeige von Echtzeitdaten und Metriken in verschiedenen Formaten wie Diagrammen, Tabellen und Anzeigeinstrumenten (Gauges) verwendet werden können.
GraphQL
GraphQL ist eine Abfragesprache für APIs und eine Laufzeitumgebung zur Ausführung dieser Abfragen mithilfe eines Typsystems, das Sie für Ihre Daten definieren. GraphQL ist dafür bekannt, dass Clients genau die Daten anfordern können, die sie benötigen, nicht mehr und nicht weniger, und dass sich APIs ohne Versionierung weiterentwickeln können.
GraphQL-Abfragen liefern vorhersehbare Ergebnisse, wodurch Entwickler APIs leichter in ihre Anwendungen integrieren können. Es ist ein leistungsfähiges Werkzeug für die Entwicklung flexibler, effizienter und skalierbarer APIs.
Graylog
Graylog ist eine Open-Source-Plattform für das Log-Management, mit der Sie Logdaten aus unterschiedlichen Quellen sammeln, indizieren und analysieren können. Sie bietet ein zentrales System zum Speichern und Durchsuchen von Logdaten und erleichtert so die Fehlerbehebung und die Überwachung des Zustands Ihrer Systeme.
Groovy
Groovy ist eine dynamische, objektorientierte Programmiersprache, die auf der Java Virtual Machine (JVM) läuft. Sie wurde 2003 als agilere und ausdrucksstärkere Alternative zu Java entwickelt, wobei die Stärken und die Kompatibilität von Java erhalten bleiben. Groovy-Code lässt sich nahtlos in Java-Code integrieren, weshalb die Sprache bei Entwicklern in Java-Projekten beliebt ist. Groovy bietet eine kompaktere Syntax, leistungsfähige Skriptfunktionen und verschiedene Produktivitätsverbesserungen, etwa die integrierte Unterstützung für die Verarbeitung von XML und JSON, Closures und Metaprogrammierung. Die Sprache wird häufig in der Webentwicklung, beim Testen und für Automatisierungsaufgaben eingesetzt.
Handlebars
Handlebars ist eine logikfreie Template-Engine für JavaScript, die das Binden von Daten an HTML-Templates vereinfacht. Sie verwendet eine Mischung aus normalem HTML und Handlebars-Ausdrücken als Platzhalter, die beim Rendern des Templates durch die tatsächlichen Daten ersetzt werden. Handlebars bietet integrierte Unterstützung für Helper, also Funktionen, mit denen verschiedene Operationen oder Transformationen an den Daten durchgeführt werden können. Templates können vorkompiliert werden, um die Laufzeitleistung zu verbessern. Handlebars fördert die Trennung der Zuständigkeiten (Separation of Concerns), indem es Templates von komplexer Logik freihält.
HTML
HTML (Hypertext Markup Language) ist die Standard-Auszeichnungssprache zum Erstellen und Gestalten von Websites und Webseiten. Sie besteht aus einer Reihe von Elementen bzw. Tags, mit denen Inhalte strukturiert und das Layout einer Webseite festgelegt werden. HTML-Elemente umfassen unter anderem Überschriften, Absätze, Listen, Bilder und Links. Webbrowser lesen und interpretieren HTML-Code, um Benutzern den Inhalt und die Formatierung anzuzeigen. HTML bildet das Rückgrat des Webs und wird zusammen mit CSS (Cascading Style Sheets) und JavaScript verwendet, um interaktive und ansprechende Websites zu erstellen.
HTTP
HTTP (Hypertext Transfer Protocol) ist ein Protokoll zur Übertragung von Daten über das Internet. Es ist die Grundlage des World Wide Web und wird für die Kommunikation zwischen Web-Clients und Servern verwendet.
HTTP ist ein zustandsloses Protokoll, das heißt, der Server speichert zwischen einzelnen Anfragen keine Informationen über den Client. Mithilfe von Cookies und anderen Mechanismen kann jedoch ein Zustand aufrechterhalten werden.
HTTP wird von allen Webbrowsern und Servern unterstützt und ist die Grundlage des World Wide Web. Es ist zudem die Grundlage für viele andere Internetprotokolle und -dienste, etwa E-Mail und Dateiübertragung.
HTTPS
HTTPS (Hypertext Transfer Protocol Secure) ist die sichere Variante von HTTP, dem Protokoll zur Übertragung von Daten über das Internet. HTTPS verschlüsselt die zwischen dem Browser eines Benutzers und einer Website ausgetauschten Daten und stellt so sicher, dass die Kommunikation geschützt und vertraulich ist. Die Verschlüsselung erfolgt mithilfe von SSL-Zertifikaten (Secure Sockets Layer) oder TLS-Zertifikaten (Transport Layer Security), die zum Schutz sensibler Informationen wie Anmeldedaten, persönlicher Daten oder Finanzdaten beitragen. HTTPS wird häufig für Online-Transaktionen, sichere Anmeldungen und überall dort eingesetzt, wo Privatsphäre und Datensicherheit entscheidend sind.
IMAP
IMAP steht für Internet Message Access Protocol. Es ist ein Protokoll zum Abrufen von E-Mails, das von E-Mail-Clients verwendet wird, um auf E-Mail-Nachrichten auf einem Mailserver zuzugreifen und sie zu verwalten. Anders als POP (Post Office Protocol), das Nachrichten auf das lokale Gerät herunterlädt und vom Server entfernt, können Benutzer mit IMAP Nachrichten auf dem Server ansehen und bearbeiten und Änderungen über mehrere Geräte hinweg synchronisieren. Dadurch ist es eine beliebte Wahl für den E-Mail-Zugriff von mehreren Geräten aus.
Lead
Ein Lead ist eine Person oder Organisation, die Interesse an den Produkten oder Dienstleistungen eines Unternehmens gezeigt hat und das Potenzial hat, Kunde zu werden. Leads werden in der Regel durch Marketingmaßnahmen wie Online-Werbung, soziale Medien, E-Mail-Kampagnen oder Messen generiert. Diese potenziellen Kunden haben Kontaktdaten wie eine E-Mail-Adresse oder Telefonnummer angegeben, die das Unternehmen nutzen kann, um die Beziehung zu pflegen, weitere Informationen bereitzustellen und den Lead letztlich in einen zahlenden Kunden umzuwandeln.
Linux
Linux ist ein freies Open-Source-Betriebssystem, das 1991 von Linus Torvalds entwickelt wurde. Es basiert auf dem Betriebssystem Unix und ist für seine Robustheit, Flexibilität und Sicherheitsmerkmale bekannt. Linux wird in vielen Umgebungen eingesetzt, von privaten Desktops und mobilen Geräten bis hin zu Servern und Supercomputern, und bildet die Grundlage vieler Distributionen, darunter Ubuntu, Fedora und Debian.
Java
Java ist eine objektorientierte Hochsprache, die in den 1990er-Jahren von Sun Microsystems (heute im Besitz von Oracle) entwickelt wurde. Sie ist auf Plattformunabhängigkeit ausgelegt, das heißt, Java-Code kann auf jedem Gerät oder Betriebssystem mit einer kompatiblen Java Virtual Machine (JVM) ausgeführt werden. Java wird häufig für die Webentwicklung, Desktopanwendungen, die Entwicklung mobiler Apps (Android) und Unternehmenssysteme eingesetzt. Aufgrund ihrer Vielseitigkeit, Lesbarkeit und großen Entwicklergemeinde ist sie für viele Softwareprojekte eine beliebte Wahl.
JavaScript
JavaScript ist eine vielseitige Hochsprache, die vor allem dazu dient, Webseiten um interaktive und dynamische Inhalte zu erweitern. Ursprünglich in den 1990er-Jahren von Netscape Communications entwickelt, ermöglicht JavaScript Entwicklern, Animationen zu erstellen, Benutzereingaben zu verarbeiten, Browser-Events zu verwalten und das Document Object Model (DOM) einer Webseite zu manipulieren. Obwohl JavaScript traditionell in der Frontend-Entwicklung eingesetzt wird, hat es sich mit der Einführung von Plattformen wie Node.js auch auf die Backend-Entwicklung ausgeweitet. Aufgrund seiner Beliebtheit, einfachen Handhabung und seines umfangreichen Ökosystems an Bibliotheken ist JavaScript ein unverzichtbares Werkzeug der modernen Webentwicklung.
JMS
JMS (Java Message Service) ist eine Java-API, mit der Anwendungen Nachrichten erstellen, senden, empfangen und lesen können. Es ist ein Messaging-Standard, der festlegt, wie Java-basierte Anwendungen Nachrichten lose gekoppelt, zuverlässig und asynchron erstellen, senden, empfangen und lesen.
JMS stellt eine gemeinsame Schnittstelle für unterschiedliche Messaging-Systeme bereit, sodass Anwendungen Nachrichten senden und empfangen können, ohne eng an ein bestimmtes Messaging-System gebunden zu sein. Es definiert eine Reihe von Standard-APIs zum Senden und Empfangen von Nachrichten sowie eine Reihe von Standard-Nachrichtenformaten.
JSON
JSON (JavaScript Object Notation) ist ein leichtgewichtiges, textbasiertes Datenformat, das für den Datenaustausch zwischen Clients und Servern sowie zwischen verschiedenen Teilen einer Anwendung verwendet wird. JSON ist sprachunabhängig, obwohl es ursprünglich aus der Sprache JavaScript stammt. Heute wird JSON von vielen Programmiersprachen unterstützt, darunter Python, Java, Ruby, PHP und viele weitere.
JSON-Daten sind in Schlüssel-Wert-Paaren organisiert, ähnlich wie JavaScript-Objekte oder Python-Dictionaries. Das ermöglicht eine einfache und effiziente Darstellung von Datenstrukturen wie Arrays und Objekten sowie von einfachen Datentypen wie Zahlen, Zeichenketten und Booleans. JSON ist sowohl für Menschen als auch für Maschinen leicht lesbar und hat sich aufgrund seiner Einfachheit und Effektivität zu einem der beliebtesten Datenformate für den Datenaustausch im Web entwickelt.
Kafka
Apache Kafka ist eine verteilte, fehlertolerante Open-Source-Streaming-Plattform für die Verarbeitung von Echtzeit-Datenströmen. Sie ist auf hohen Durchsatz und geringe Latenz beim Daten-Streaming ausgelegt und kann Millionen von Events pro Sekunde verarbeiten.
LDAP
LDAP (Lightweight Directory Access Protocol) ist ein Protokoll für den Zugriff auf und die Pflege von Verzeichnisinformationen über ein Netzwerk. Es wird häufig für zentrale Authentifizierungs- und Autorisierungsdienste in Unternehmensumgebungen verwendet und bietet eine hierarchische Struktur zum Speichern und Organisieren von Daten. LDAP basiert auf einem Client-Server-Modell, bei dem der Client Anfragen an den Server sendet, um Verzeichnisinformationen abzurufen oder zu aktualisieren. LDAP wird in Organisationen häufig zur Verwaltung von Benutzerkonten, E-Mail-Adressen und weiteren verzeichnisbezogenen Informationen eingesetzt.
Open Source
Open Source bezeichnet eine Art von Software, deren Quellcode frei verfügbar ist und von jedem verwendet, verändert und weitergegeben werden darf. Die Philosophie hinter Open-Source-Software besagt, dass die Software schneller und effizienter verbessert und von Fehlern befreit werden kann, wenn andere den Quellcode einsehen und verändern dürfen, als wenn sie für Beiträge von außen verschlossen wäre.
PDF (Portable Document Format) ist ein Dateiformat zur Darstellung und zum Austausch von Dokumenten mit festem Layout. PDF-Dokumente können Text, Bilder, Grafiken und andere Multimedia-Elemente enthalten und lassen sich auf praktisch jedem Gerät mit installiertem PDF-Viewer anzeigen. PDF-Dateien können aus verschiedenen Quellen erstellt werden, darunter Textverarbeitungs- und Desktop-Publishing-Software. PDF wird häufig zum Austausch von Dokumenten über das Internet verwendet und von verschiedenen Plattformen und Geräten umfassend unterstützt.
Python
Python ist eine Hochsprache, die für ihre Einfachheit, Vielseitigkeit und umfangreiche Standardbibliothek bekannt ist. Sie wird häufig in der Webentwicklung, Datenanalyse und künstlichen Intelligenz eingesetzt. Die leichte Erlernbarkeit und Plattformunabhängigkeit von Python haben zu seiner Beliebtheit unter Entwicklern beigetragen. Mit einer starken Community und einem reichhaltigen Ökosystem bleibt Python eine zuverlässige und effektive Wahl für verschiedenste Anwendungen.
Load Balancing
Load Balancing ist eine Technik zur Verteilung von Workloads auf mehrere Server oder Ressourcen, damit kein einzelner Server und keine einzelne Ressource überlastet wird. Ziel des Load Balancings ist es, die Ressourcennutzung zu optimieren, die Antwortzeit zu minimieren und eine hohe Verfügbarkeit sicherzustellen.
Low-code
Low-Code-Entwicklung ist ein Ansatz der Softwareentwicklung, der eine schnellere und effizientere Anwendungsentwicklung ermöglicht, indem der Umfang des manuell zu schreibenden Codes reduziert wird. Dabei werden vorgefertigte Komponenten und Werkzeuge genutzt, um viele der beim Programmieren anfallenden Schritte zu automatisieren. Dieser Ansatz soll nichttechnische Anwender, etwa Business-Analysten, in die Lage versetzen, Anwendungen zu erstellen und bereitzustellen, ohne auf professionelle Entwickler angewiesen zu sein. Mit Low-Code-Plattformen lässt sich eine breite Palette von Anwendungen entwickeln, darunter Web- und Mobile-Apps, Prozessautomatisierung und mehr. Das Ziel von Low-Code ist es, die Entwicklung zu beschleunigen, die Zusammenarbeit zwischen IT und Fachbereichen zu verbessern und Kosten zu senken.
MongoDB
MongoDB ist eine Open-Source-NoSQL-Datenbank, die auf einem dokumentenorientierten Datenmodell basiert. Anstelle von Tabellen und Zeilen wie in herkömmlichen relationalen Datenbanken speichert MongoDB Daten in flexiblen, JSON-ähnlichen Dokumenten ohne festes Schema. Das ermöglicht eine einfache Darstellung und Speicherung komplexer hierarchischer Beziehungen sowie schnelle Abfrage- und Indexierungsvorgänge. MongoDB ist hoch skalierbar und bietet hohe Leistung und Verfügbarkeit, wodurch es sich für die Verarbeitung großer Datenmengen in verteilten Systemen eignet. Es wird häufig für Big-Data- und Echtzeitanwendungen, Content-Management sowie die Speicherung von Mobile- und IoT-Daten verwendet.
Mustache
Mustache ist eine logikfreie Template-Engine für JavaScript und verschiedene andere Programmiersprachen. Sie ermöglicht die Trennung von Darstellung und Daten, indem sie eine einfache Syntax zur Definition von Templates mit Platzhaltern bereitstellt, die später mit Daten befüllt werden. Sie unterstützt verschiedene Datentypen und kann sowohl in clientseitigen als auch in serverseitigen Anwendungen verwendet werden. Mustache fördert die Trennung der Zuständigkeiten, indem es Templates von komplexer Logik freihält. Es wird häufig für die Entwicklung von Webanwendungen verwendet.
No-Code
No-Code ist ein Ansatz der Softwareentwicklung, der es ermöglicht, Anwendungen ohne das Schreiben von Code zu erstellen. Er nutzt visuelle Drag-and-drop-Oberflächen und vorgefertigte Vorlagen, um den Entwicklungsprozess zu automatisieren, sodass nichttechnische Anwender wie Business-Analysten Anwendungen erstellen und bereitstellen können. Das Ziel von No-Code ist es, die Anwendungsentwicklung zu vereinfachen und zu beschleunigen und sie für einen größeren Personenkreis zugänglicher und effizienter zu machen.
NoSQL
NoSQL bezeichnet eine Art von Datenbank, die einen Mechanismus zum Speichern und Abrufen von Daten bereitstellt, die anders als in den tabellarischen Relationen relationaler Datenbanken modelliert sind. Diese Datenbanken sind besonders nützlich im Umgang mit großen, verteilten Datenmengen, da sie auf Skalierbarkeit, hohe Verfügbarkeit und hohe Leistung ausgelegt sind. NoSQL-Datenbanken, zu denen Dokumenten-, Key-Value-, Wide-Column- und Graphdatenbanken zählen, werden häufig in Big-Data- und Echtzeit-Webanwendungen eingesetzt.
Plugin
Ein (Software-)Plugin ist eine Softwarekomponente, die einem bestehenden Softwareprogramm eine bestimmte Funktion hinzufügt. Plugins sind darauf ausgelegt, sich nahtlos in das Hostprogramm einzufügen, und erweitern dessen Möglichkeiten in der Regel, ohne dass der Benutzer Programmierkenntnisse benötigt.
Plugins werden oft von Drittentwicklern erstellt und können verwendet werden, um einem Programm Funktionen wie neue Werkzeuge, Effekte und Dateiformate hinzuzufügen. Sie lassen sich einfach installieren und entfernen, sodass Benutzer ihre Software an ihre spezifischen Anforderungen anpassen können.
PostgreSQL
PostgreSQL ist ein objektrelationales Open-Source-Datenbankmanagementsystem (ORDBMS), das Erweiterbarkeit, Standardkonformität und Robustheit in den Vordergrund stellt. Es wurde erstmals 1996 veröffentlicht und seither von einer großen, aktiven Community kontinuierlich weiterentwickelt und verbessert.
PostgreSQL unterstützt fortgeschrittene Datentypen und erlaubt es Benutzern, eigene Datentypen, Funktionen und Operatoren zu definieren. Es bietet eine leistungsfähige Abfragesprache, Transaktionsverarbeitung und Concurrency Control, die auch dann Datenkonsistenz gewährleistet, wenn mehrere Benutzer gleichzeitig auf die Datenbank zugreifen.
PostgreSQL ist hoch skalierbar und kann große Datenmengen und eine hohe Anzahl gleichzeitiger Benutzer verarbeiten. Es wird von vielen großen Organisationen und in zahlreichen Anwendungen eingesetzt, darunter Webanwendungen, Data Warehousing, die Analyse von Geodaten und mehr.
Process
Ein Prozess (innerhalb einer Workflow-Engine) ist eine Abfolge von Aufgaben, die in einer bestimmten Reihenfolge organisiert und ausgeführt werden, um ein bestimmtes Geschäftsziel zu erreichen. Ein Prozess wird durch eine Reihe von Regeln, Aktionen und Bedingungen definiert, die den Ablauf der Aufgaben und die beteiligten Teilnehmer bestimmen.
Prometheus
Prometheus ist ein Open-Source-System für Monitoring und Alarmierung. Es dient dazu, Metriken aus verschiedenen Systemen und Diensten zu sammeln, in einer Zeitreihendatenbank zu speichern und eine leistungsfähige Abfragesprache zur Analyse und Visualisierung der Daten bereitzustellen.
Qualified lead
Ein Qualified Lead ist ein potenzieller Kunde, bei dem anhand bestimmter Kriterien eine höhere Wahrscheinlichkeit festgestellt wurde, dass er die Produkte oder Dienstleistungen eines Unternehmens kauft. Dieser Qualifizierungsprozess umfasst in der Regel die Bewertung unter anderem von Interesse, Budget, Bedarf und Entscheidungsbefugnis des Leads. Qualified Leads erfüllen bestimmte vom Unternehmen festgelegte Kriterien, die darauf hindeuten, dass sie gut zum angebotenen Produkt oder zur angebotenen Dienstleistung passen und mit höherer Wahrscheinlichkeit den Vertriebstrichter (Sales Funnel) durchlaufen und zu zahlenden Kunden werden. Dadurch sind sie für ein Vertriebsteam wertvoller als nicht qualifizierte Leads, da ihre Konvertierung weniger Aufwand erfordert und die Wahrscheinlichkeit, Umsatz zu erzielen, höher ist.
Relational databases
Relationale Datenbanken sind eine Art von Datenbankmanagementsystem, die Daten in Tabellen mit Zeilen und Spalten speichert und organisiert. Jede Zeile einer Tabelle stellt einen eindeutigen Datensatz dar, während die Spalten die Attribute dieser Datensätze abbilden. Relationale Datenbanken verwenden die Structured Query Language (SQL), um Daten zu definieren, zu bearbeiten und abzufragen. Die Hauptstärke relationaler Datenbanken liegt in der Möglichkeit, über Primär- und Fremdschlüssel Beziehungen zwischen Tabellen herzustellen, was einen effizienten Datenabruf, Aktualisierungen und komplexe Abfragen über mehrere Tabellen hinweg ermöglicht. Beispiele für relationale Datenbanken sind MySQL, PostgreSQL, Oracle und Microsoft SQL Server.
REST
REST (Representational State Transfer) ist ein Architekturstil für die Entwicklung von Webservices. Es handelt sich um eine Reihe von Einschränkungen und Prinzipien, die üblicherweise auf Webservices angewendet werden, die auf dem HTTP-Protokoll basieren. Die Grundidee von REST besteht darin, die vorhandenen Möglichkeiten des HTTP-Protokolls zu nutzen, um einfache und skalierbare Webservices zu erstellen.
Eines der wichtigsten Prinzipien von REST ist die Zustandslosigkeit: Der Server speichert zwischen einzelnen Anfragen keine Informationen über den Client. Das ermöglicht bessere Skalierbarkeit und Zuverlässigkeit, da der Server den Zustand des Clients nicht nachverfolgen muss.
SCP
SCP (Secure Copy) ist ein Netzwerkprotokoll zur sicheren Übertragung von Dateien zwischen entfernten Hosts über ein Netzwerk. Es basiert auf dem SSH-Protokoll (Secure Shell) und nutzt Verschlüsselung, um die Vertraulichkeit und Integrität der übertragenen Daten zu schützen. SCP wird häufig zum sicheren Kopieren von Dateien zwischen Servern verwendet und kann mit verschiedenen Betriebssystemen und Plattformen eingesetzt werden. SCP ist ein Kommandozeilenwerkzeug und wird oft in Shell-Skripten und Automatisierungs-Workflows verwendet.
Server cluster
Ein Server-Cluster ist eine Gruppe von Servern, die als einzelnes System zusammenarbeiten, um höhere Leistung, Zuverlässigkeit und Skalierbarkeit bereitzustellen. Durch die Verteilung von Workloads und Ressourcen auf mehrere Server können Cluster hohe Verfügbarkeit, Fehlertoleranz und Load Balancing gewährleisten, was zu einer insgesamt besseren Leistung und weniger Ausfallzeiten führt.
SFTP
SFTP (Secure File Transfer Protocol) ist ein Netzwerkprotokoll zur sicheren Übertragung von Dateien zwischen Hosts über ein TCP-basiertes Netzwerk. Es basiert auf dem SSH-Protokoll (Secure Shell) und nutzt Verschlüsselung, um die Vertraulichkeit und Integrität der übertragenen Daten zu schützen. SFTP bietet eine Client-Server-Architektur und unterstützt verschiedene Authentifizierungsmethoden, darunter passwortbasierte Authentifizierung und Authentifizierung mit öffentlichem Schlüssel. SFTP wird häufig für die sichere Dateiübertragung über das Internet eingesetzt und von verschiedenen Betriebssystemen und Plattformen unterstützt.
SMTP
SMTP steht für Simple Mail Transfer Protocol. Es ist ein Protokoll zum Senden von E-Mail-Nachrichten zwischen Servern und E-Mail-Clients. SMTP legt fest, wie E-Mails formatiert, übertragen und zugestellt werden, und verwendet TCP, um Verbindungen zwischen Servern aufzubauen. SMTP ist für die E-Mail-Kommunikation unverzichtbar und wird von den meisten E-Mail-Anbietern und -Clients verwendet.
SOA
Die serviceorientierte Architektur (Service-Oriented Architecture, SOA) ist ein Ansatz im Softwareentwurf, bei dem Funktionalität als Sammlung von Services organisiert wird. Auf Services kann unabhängig zugegriffen werden, und sie kommunizieren über eine standardisierte Schnittstelle miteinander. Dieser Ansatz fördert Flexibilität, Skalierbarkeit und Wiederverwendbarkeit und kann zum Aufbau komplexer verteilter Systeme genutzt werden.
SOAP
SOAP steht für Simple Object Access Protocol. Es ist ein Messaging-Protokoll zum Austausch strukturierter Daten zwischen Anwendungen über das Internet. SOAP verwendet XML zur Formatierung der Nachrichten und kann mit verschiedenen Transportprotokollen wie HTTP, SMTP und TCP eingesetzt werden. Es wird häufig in Webservices verwendet, um die Kommunikation zwischen verschiedenen Systemen zu ermöglichen.
Software library
Eine Softwarebibliothek ist eine Sammlung von vorgefertigtem Code, Funktionen oder Routinen, die Entwickler in ihren eigenen Programmen verwenden können, um allgemeine Aufgaben auszuführen. Bibliotheken sparen Zeit und Aufwand, indem sie wiederverwendbaren, getesteten und optimierten Code bereitstellen, der sich leicht in ein Projekt integrieren lässt. Die Verwendung von Bibliotheken hilft Entwicklern, das Rad für gängige Aufgaben nicht neu zu erfinden, verringert Code-Duplikate und trägt zu einer konsistenten und effizienten Codebasis bei. Bibliotheken sind in der Regel sprachspezifisch und können von der Sprache selbst, von Drittentwicklern oder von Open-Source-Communities bereitgestellt werden.
SQL
SQL (Structured Query Language) ist eine Programmiersprache zur Verwaltung und Bearbeitung relationaler Datenbanken. Sie ermöglicht es Benutzern, Daten in einer Datenbank zu erstellen, zu lesen, zu aktualisieren und zu löschen, und ist damit ein grundlegendes Werkzeug der Datenbankverwaltung. SQL wird in der Technologiebranche breit eingesetzt, und Kenntnisse darin sind für Rollen wie Datenbankadministrator, Datenanalyst und Softwareentwickler unerlässlich.
SSH
SSH (Secure Shell) ist ein kryptografisches Netzwerkprotokoll für den sicheren Zugriff auf entfernte Hosts und deren Verwaltung über ein unsicheres Netzwerk. Es verschlüsselt den gesamten Datenverkehr zwischen Client und Server und unterstützt die Authentifizierung per Passwort oder über öffentliche/private Schlüsselpaare. SSH wird häufig für die Anmeldung an der Kommandozeile entfernter Systeme, das Ausführen von Befehlen auf Servern und das Tunneln anderer Protokolle verwendet. Zudem bildet es die Grundlage für Dateiübertragungsprotokolle wie SCP und SFTP.
Template
Ein Template (Vorlage) ist eine vordefinierte Struktur bzw. ein vordefiniertes Format, das zur Erzeugung von Nachrichten wie E-Mail- oder Textbenachrichtigungen verwendet werden kann. Diese Templates ermöglichen die Lokalisierung, das heißt die Anpassung der Nachricht an Sprache, Kultur und weitere Eigenschaften der Empfänger.
Templates dienen dazu, den Inhalt der Nachricht von Formatierung und Layout zu trennen. Dadurch lässt sich der Nachrichteninhalt leicht ändern, ohne die Formatierung zu beeinflussen. Außerdem kann dieselbe Nachricht in verschiedenen Sprachen oder mit unterschiedlichen Formaten, etwa als reiner Text oder als HTML, versendet werden.
Template engine
Eine Template-Engine ist ein Software-Werkzeug zur Erzeugung dynamischer HTML-Inhalte, indem vordefinierte Templates mit Daten kombiniert werden. Templates werden aus einer Mischung von statischem HTML und templatespezifischen Platzhaltern bzw. Tags erstellt, die zur Laufzeit durch tatsächliche Daten ersetzt werden. Diese Trennung von Inhalt und Darstellung erleichtert die Pflege und Aktualisierung von Websites, da Entwickler Struktur, Layout oder Design einer Website ändern können, ohne die zugrunde liegenden Daten anzupassen. Template-Engines werden in der Webentwicklung breit eingesetzt und ermöglichen eine schnellere Entwicklung, eine bessere Code-Organisation und eine verbesserte Wartbarkeit.
Thymeleaf
Thymeleaf ist eine moderne serverseitige Java-Template-Engine zur Erstellung dynamischer HTML-, XML- und anderer Auszeichnungsdateien. Sie lässt sich nahtlos in Spring und andere Java-Frameworks integrieren und unterstützt natürliche Templating-Konstrukte wie Schleifen und Bedingungen. Thymeleaf fördert die Trennung der Zuständigkeiten, indem es Templates von komplexer Logik freihält. Es wird häufig für die Entwicklung von Webanwendungen verwendet und ist mit verschiedenen Frontend-Technologien kompatibel.
Trigger
Im Kontext einer Workflow-Engine ist ein Trigger ein Ereignis oder eine Bedingung, die die Ausführung eines Prozesses startet. Trigger können so eingerichtet werden, dass sie einen Prozess automatisch starten, oder sie können einen manuellen Start erfordern. Trigger können außerdem verwendet werden, um einen Prozess als Reaktion auf ein externes Ereignis zu starten, etwa eine Nachricht eines anderen Systems oder eine Änderung eines Sensorwerts.
Unix
Unix ist ein leistungsfähiges Mehrbenutzer- und Multitasking-Betriebssystem, das ursprünglich in den 1970er-Jahren bei Bell Labs von Ken Thompson, Dennis Ritchie und anderen entwickelt wurde. Es hat die Entwicklung vieler moderner Betriebssysteme beeinflusst, wobei seine Philosophie und Designprinzipien als Grundlage für Systeme wie Linux und BSD dienen. Unix ist bekannt für seine Portabilität, Einfachheit und das Konzept, alles als Datei oder Prozess zu behandeln, wodurch es sowohl im akademischen als auch im kommerziellen Umfeld beliebt wurde.
Velocity
Velocity ist eine Java-basierte Template-Engine, die die Erstellung dynamischer Webinhalte vereinfacht. Sie verwendet eine einfache Syntax zur Definition von Templates mit Platzhaltern, die später mit Daten befüllt werden. Velocity ist stark anpassbar und unterstützt verschiedene Datentypen und bedingte Logik. Es kann sowohl in serverseitigen als auch in clientseitigen Anwendungen eingesetzt werden und lässt sich gut in viele gängige Java-Frameworks integrieren. Velocity wird häufig zur Erzeugung von HTML, XML und anderen Auszeichnungssprachen verwendet.
Versioning
Versionierung bezeichnet in der Softwareentwicklung die Praxis, verschiedenen Entwicklungsständen oder Iterationen eines Softwareprojekts eindeutige Bezeichner bzw. Versionsnummern zuzuweisen. Das hilft Entwicklern, Änderungen, Updates, Fehlerbehebungen und neue Funktionen, die im Laufe der Zeit hinzugekommen sind, nachzuverfolgen. Versionierung ermöglicht eine bessere Organisation, Zusammenarbeit und Verwaltung des Projekts und erlaubt es Teams, problemlos auf frühere Versionen zurückzugehen, Unterschiede zu vergleichen und die Kompatibilität mit anderen abhängigen Systemen oder Komponenten zu wahren. Gängige Versionierungssysteme sind Semantic Versioning und Versionskontrollwerkzeuge wie Git.
Visitor
Ein Visitor (Besucher) ist eine Person, die auf die Website, die Marketingmaterialien oder die Online-Ressourcen des SaaS-Unternehmens zugreift oder mit ihnen interagiert. Zu den Besuchern können potenzielle Kunden, Bestandskunden, Partner oder andere Interessierte zählen, die den Online-Auftritt des Unternehmens durchsuchen oder nutzen. Diese Besucher suchen möglicherweise Informationen, erwägen einen Kauf oder benötigen Support.
Windows
(Microsoft) Windows ist eine Reihe von Betriebssystemen, die von Microsoft entwickelt wurden, einem der weltweit führenden Technologieunternehmen. Seit der ersten Veröffentlichung im Jahr 1985 hat sich Windows zum dominierenden Betriebssystem für Personal Computer entwickelt und ist für seine benutzerfreundliche grafische Oberfläche bekannt. Im Laufe der Jahre hat es sich erheblich weiterentwickelt und bietet eine breite Palette an Funktionen für den privaten und den beruflichen Einsatz.
Workflow engine
Eine Workflow-Engine ist ein Softwaresystem, das den Ablauf von Aufgaben und Prozessen innerhalb einer Organisation verwaltet und automatisiert. Sie dient dazu, Geschäftsprozesse zu straffen und zu optimieren, indem sie eine Reihe von Regeln und Aktionen definiert und ausführt, die bestimmen, in welcher Reihenfolge und von wem Aufgaben erledigt werden. Workflow-Engines können zur Automatisierung vieler Arten von Prozessen eingesetzt werden, etwa Dokumentfreigaben, Personalaufgaben und IT-Betrieb. Sie können sich außerdem in andere Systeme wie Datenbanken und E-Mail-Server integrieren, um den Informationsfluss in der gesamten Organisation zu erleichtern.
XML
XML (eXtensible Markup Language) ist eine Auszeichnungssprache zum Strukturieren, Speichern und Transportieren von Daten. Es ist ein flexibles und erweiterbares Format, das eine breite Palette von Datentypen darstellen kann, darunter Text, Zahlen, Datumsangaben und Binärdaten.
XML-Dateien verwenden die Dateiendung .xml und können mit verschiedenen Programmiersprachen und Bibliotheken wie XML DOM, SAX und weiteren geparst und verarbeitet werden.
XML wurde weithin als Standard für die Darstellung und den Austausch von Daten übernommen und wird in vielen verschiedenen Bereichen eingesetzt, darunter E-Commerce, Finanzwesen und Gesundheitswesen.
XSLT
XSLT (Extensible Stylesheet Language Transformations) ist eine Sprache zur Transformation von XML-Dokumenten in andere Formate wie HTML, PDF oder auch in ein anderes XML. Sie ist Teil der umfassenderen XSL-Spezifikation (Extensible Stylesheet Language), zu der auch XPath und XSL-FO gehören.
XSLT verwendet Templates, um Teile des XML-Quelldokuments zu erfassen, und diese Templates legen fest, wie der Inhalt transformiert werden soll. Die Transformation wird in der Regel von einem XSLT-Prozessor durchgeführt, der sowohl das XML-Dokument als auch das XSLT-Stylesheet liest und anschließend das transformierte Dokument ausgibt. Dadurch ist XSLT ein leistungsfähiges Werkzeug zur Bearbeitung und Wiederverwendung von XML-Daten.
YAML
YAML (Kurzform für „YAML Ain't Markup Language") ist ein menschenlesbares Format zur Datenserialisierung. Es wird häufig für Konfigurationsdateien, den Datenaustausch zwischen Sprachen und Werkzeugen sowie zur Datenspeicherung verwendet.
YAML ist so konzipiert, dass es für Menschen leicht zu lesen und zu schreiben ist, und verwendet Einrückungen und andere einfache visuelle Hinweise, um die Struktur der Daten anzuzeigen. Es unterstützt eine breite Palette von Datentypen, darunter Zeichenketten, Zahlen, Booleans und Listen.
YAML-Dateien verwenden die Dateiendung .yml oder .yaml und eine Syntax, die JSON ähnelt, aber weniger ausführlich ist.

