Softwareentwicklung-Definitionen
-
N
.NET
.NET, manchmal auch als Microsoft .NET bezeichnet, ist sowohl eine Strategie von Microsoft als auch eine Sammlung von Softwareentwicklungs-Tools.
-
Namensraum (Namespace)
Ein Namensraum steht allgemein für einen einzigartigen Satz von Namen, so dass es keine Mehrdeutigkeiten gibt, sollten Objekte ähnlich sein.
-
Native Anwendung (native Applikation oder native App)
Eine native Anwendung oder native App ist ein Programm, das für die Verwendung auf einem bestimmten Betriebssystem oder einem bestimmten Gerät entwickelt wurde.
-
Native App (Native Applikation)
Als native Applikation beziehungsweise native App werden Softwareprogramme bezeichnet, die speziell für das Betriebssystem eines Endgerätes entwickelt wurden.
-
Nativer Code (Native Code)
Nativer Code ist Softwarecode, der kompiliert wird, um mit einem bestimmten Prozessor (zum Beispiel Intel x86-Prozessorten) ausgeführt zu werden.
-
Natural Language Generation (NLG)
Natural Language Generation ist die Fähigkeit von Computersystemen, natürliche Sprache und Texte zu erstellen und somit die Interaktion zwischen Mensch und Maschine zu ermöglichen.
-
Natural Language Understanding (NLU)
Natural Language Understanding wird dafür genutzt, dass Computer direkt mit Menschen interagieren können und ihre Texte oder Sprache verstehen, ohne Computersprache nutzen zu müssen.
-
Netzwerk-Socket
Sockets sind Teil eines Kommunikationsflusses und werden oft über Application Programming Interfaces (API) erstellt, damit zwei Programme miteinander kommunizieren können.
-
Non-Fungible Token (NFT)
Non-Fungible Token sind kryptografische Vermögenswerte, die einzigartig sind und zur Erstellung und Authentifizierung des Eigentums an digitalen Vermögenswerten genutzt werden.
-
O
Objekt
Jedes Objekt in der objektorientierten Programmierung ist eine Instanz einer bestimmten Klasse oder Unterklasse mit klassenspezifischen Prozeduren und Datenvariablen.
-
Objektcode
Der Begriff Objektcode steht für kompilierten Source-Code, der von Computern direkt interpretiert werden kann. Heutzutage ist die Formulierung aber nur noch selten zu hören.
-
Objektorientierte Programmierung (OOP)
Objektorientierte Programmierung (OOP) ist ein Programmierungsmodell, bei dem das Softwaredesign auf Daten oder Objekten basiert und nicht auf Funktionen und Logik.
-
Offenes System
In der Informatik bezeichnet ein offenes System eine Software oder Hardware, für das Quellcode und Dokumentation frei zugänglich ist und das verändert und erweitert werden kann.
-
Oracle
Oracle ist ein Soft- und Hardwarehersteller. Zu den angebotenen Produkten gehören neben verschiedenen Datenbanken und Business-Anwendungen auch Appliances.
-
Organische Suchergebnisse
Organische Suchergebnisse sind unbezahlte Einträge, die auf Ergebnisseiten von Suchmaschinen erscheinen. Diese basieren zum Beispiel auf Domain-Autorität, Links und SEO.
-
P
Paarprogrammierung (Pair Programming)
Paarprogrammierung ist eine agile Softwareentwicklungstechnik, die auf Extreme Programming zurückgeht und bei der zwei Entwickler gemeinsam an einem Computer arbeiten.
-
PageRank
PageRank ist eine algorithmische Methode, die Google verwendet, um Seiten zu bewerten, sowie auf den numerischen Wert, der den Seiten dabei als Punktzahl zugewiesen wird.
-
Parser
Parsing ist ein grundlegendes Kodierungskonzept, das Teil eines Compilers ist. Erfahren Sie, wie es in den meisten höheren Programmiersprachen funktioniert.
-
Performance Testing (Leistungstest)
Performance Testing überprüft die Geschwindigkeit, Reaktionsfähigkeit und Stabilität eines Computers, Netzwerks, Programms oder Geräts unter einer Arbeitslast.
-
PERT-Diagramm
Ein PERT-Diagramm ist ein Tool, das zur Planung, Organisation und Koordinierung von Aufgaben innerhalb des Projektmanagements eingesetzt wird.
-
Platform as a Service (PaaS)
Platform as a Service (PaaS) ist ein Cloud-Computing-Modell, bei dem ein Anbieter Hardware- und Software-Tools für die Entwicklung von Anwendungen bereitstellt.
-
Polymorphismus
Polymorphismus ist ein Konzept in der objektorientierten Programmierung und bezieht sich auf die Idee, dass eine Entität im Code mehr als eine Form haben kann.
-
Port
Die Bezeichnung Port kann verschiedenen Bedeutungen haben, je nach Anwendungsfall bei Netzwerken, Hardware und Software. Erfahren Sie, was Ports sind und wie sie funktionieren.
-
Portability (Softwareportabilität)
Portabilität bedeutet, dass bestimmte Software oder auch Daten mit wenig Arbeits- und Zeitaufwand so gestaltet werden, dass sie in auch in einer anderen Umgebung funktionieren.
-
Programm
In der Informatik ist ein Programm eine den Regeln einer bestimmten Programmiersprache genügende Folge von Anweisungen, die mit einem Computer bearbeitet werden.
-
Programmierschnittstelle (Application Programming Interface, API)
Eine Programmierschnittstelle (Application Programming Interface, API), ist ein Programmteil, der von einer Software anderen Anwendungen zur Anbindung zur Verfügung gestellt wird.
-
Projektmanagement (PM)
Projektmanagement (PM) setzt auf etablierte Grundsätze, Verfahren und Richtlinien, um ein Projekt von der Konzeption bis zum Abschluss erfolgreich zu verwalten.
-
Prompt Engineering
Prompt Engineering ist eine Technik der KI-Entwicklung zur Verfeinerung großer Sprachmodelle sowie von Eingaben für verschiedene generative KI-Dienste.
-
Prototyp
In der Softwareentwicklung ist ein Prototyp ein rudimentäres Modell eines Softwareprodukts. Ein Prototyp wird in der Regel für Demonstrationszwecke erstellt.
-
Prüfsumme
Prüfsummen oder Checksummen sollen eine sichere Übertragung von Informationen zu gewährleisten. Mit diesen Hash-Werten kann der Empfänger die Korrektheit einer Datei überprüfen.
-
Pyramide der agilen Testautomatisierung
Die Pyramide der agilen Testautomatisierung unterteilt sich in drei Testarten, basierend auf dem Return on Investment (ROI), den die Automatisierung der jeweiligen Testart bietet.
-
Q
Quality of Experience (QoE, QoX)
Als Maß für die Kunden- und Anwenderzufriedenheit wird die Quality of Experience (QoE oder QoX) verwendet. Die QoE wird durch objektive und subjektive Faktoren beeinflusst.
-
Qualitätskontrolle
Wie gut ein Produkt sein muss, ist in Normen oder in Form von Kundenerwartungen vordefiniert. Qualitätskontrollen sorgen dafür, dass die Vorgaben eingehalten werden.
-
Qualitätssicherung (QS)
Die Qualitätssicherung soll das Kundenvertrauen sowie die Glaubwürdigkeit eines Unternehmens erhöhen und gleichzeitig Arbeitsprozesse und die Effizienz verbessern.
-
Quick Response Code (QR-Code)
Ein QR-Code (Quick Response Code) ist ein 2D-Code, der häufig für den einfachen Zugriff auf Informationen über ein Smartphone verwendet wird. Der Ursprung ist industrieller Natur.
-
R
R (Programmiersprache)
Die Programmiersprache R ist eine Open-Source-Skriptsprache, welche vor allem für statistische Berechnungen, Predictive Analytics und Datenvisualisierungen verwendet wird.
-
Rapid Application Development (RAD)
Rapid Application Development (schnelle Anwendungsentwicklung, RAD) ist ein Entwicklungsmodell, das auf einem prototypischen Vorgehen beruht.
-
Reaktive Programmierung
Reaktive Programmierung ist ein Programmierparadigma, das sich auf asynchrone Programmierlogiken stützt, um Echtzeit-Updates von ansonsten statischen Inhalten zu verarbeiten.
-
Refactoring
Refactoring ist in der Softwareentwicklung die manuelle oder automatisierte Optimierung des Quellcodes, ohne das grundsätzliche Programmverhalten zu verändern.
-
Regressionstest
Regressionstests sind eine Art von Softwaretest, bei dem beurteilt wird, ob Änderungen an einer Anwendung oder an anderen Softwarekomponenten Fehler eingeführt haben.
-
Rekurrentes neuronales Netz (RNN)
Ein rekurrentes neuronales Netz (Recurrent Neural Network, RNN) ist eine Art künstliches neuronales Netz (KNN), das häufig bei der Verarbeitung natürlicher Sprache eingesetzt wird.
-
Remote Procedure Call (RPC)
Remote Procedure Call (RPC) ist eine Technik, um Interprozesskommunikation zu realisieren. RPC ermöglicht den Aufruf von Funktionen in anderen Adressräumen.
-
Representational State Transfer (REST)
Representational State Transfer (REST) ist ein Paradigma und Architekturstil für die Softwarearchitektur von verteilten Systemen, insbesondere für Webservices.
-
Ressourcenzuweisung
Die Ressourcenzuweisung ist der Prozess zum Verteilen von Assets wie Personal, Wissen und Technologie, um die strategischen Ziele des Unternehmens optimal zu unterstützen.
-
REST API (RESTful API)
Eine REST API (RESTful API) ist eine Programmierschnittstelle, die den Beschränkungen der REST-Architektur unterliegt und Interaktionen mit RESTful-Webservices zulässt.
-
Retrieval-augmented Generation (RAG)
Retrieval-augmented Generation (RAG) ist ein KI-Framework, das Daten aus externen Wissensquellen abruft, um zum Beispiel die Qualität von Antworten in KI-Chatbots zu verbessern.
-
Reverse Engineering
Reverse Engineering bedeutet, ein Objekt auseinanderzunehmen, um zu sehen und zu verstehen, wie es funktioniert, um es zu duplizieren oder zu verbessern.
-
Robotic Process Automation (RPA)
Robotic Process Automation (RPA) ist eine Technologie, die nachahmt, wie Menschen mit Software interagieren, um hochvolumige, wiederholbare Aufgaben auszuführen.
-
Robust
Das aus dem Lateinischen stammende Wort „robust“ taucht in der IT immer wieder in der Werbung auf. Es steht für stabile Software, die weitgehend fehlerfrei und ohne Abstürze läuft.
-
Ruby
Ruby ist eine dynamische, objektorientierte Programmiersprache auf Open-Source-Basis, die sich einfach anwenden und produktiv einsetzen lässt.
-
S
Salesforce Lightning
Salesforce Lightning stellt Tools und Dienste zur Automatisierung von Geschäftsprozessen, zur Integration externer Anwendungen und zur Bereitstellung von Layouts bereit.
-
SAP Cloud Platform ABAP Environment
SAP Cloud Platform ABAP Environment ist eine Plattform, die es Entwicklern von SAP-Anwendungen ermöglicht, die Programmiersprache ABAP in Cloud-Umgebungen zu nutzen.
-
SAP Leonardo
SAP Leonardo ist eine Sammlung von Anwendungen und Services, die Organisationen für die Entwicklung von Projekten zur digitalen Transformation verwenden können.
-
Schleife (Loop)
Eine Schleife (Loop) wiederholt in der Programmierung einer Anwendung eine Anweisung, solange die Schleifenbedingung als Laufbedingung gültig bleibt.
-
Schnittstelle (Interface)
Interfaces beziehungsweise Schnittstellen sind ein wesentlicher Teil von Computersystemen, mit denen sich Daten eingeben, Systeme steuern und Geräte miteinander verbinden lassen.
-
Scrum
Scrum ist ein Modell in der agilen Softwareentwicklung, bei dem Teams intensiv und vernetzt durch regelmäßige Treffen und genaue Dokumentation an einem Projekt arbeiten.
-
Serviceorientierte Architektur (SOA)
Eine serviceorientierte Architektur ist eine ältere Anwendungsarchitektur, bei der Dienste einer Anwendung über Hardware und Programmiersprachen hinweg kommunizieren.
-
Shift Left Testing
Shift Left Testing ist ein Ansatz zur Beschleunigung von Softwaretests, indem der Testprozess an einen früheren Punkt im Entwicklungszyklus verschoben wird.
-
Simple Object Access Protocol (SOAP)
SOAP ist ein Netzwerkprotokoll, das die Kommunikation zwischen verteilten Anwendungsele-menten ermöglicht. Es kann über eine Vielzahl von Standardprotokollen übertragen werden.
-
Six Sigma
Six Sigma ist eine Geschäftsmethode zur Prozessoptimierung. Kernelemente sind die Definition, Messung, Analyse, Verbesserung und Kontrolle von Prozessen mit statistischen Mitteln.
-
Skriptsprache
Eine Skriptsprache ist eine Programmiersprache, die über einen Interpreter ausgeführt wird. Programme, die in Skriptsprachen geschrieben sind, werden auch Skripte genannt.
-
Smart Contract
Smart Contracts werden auf Blockchain-Technologie gespeichert. Sie ermöglichen automatische Verträge, die unter bestimmten Bedingungen in Kraft treten.
-
Software Bill of Materials (SBOM)
Eine Software Bill of Materials (SBOM) ist eine Inventarliste aller Komponenten und Abhängigkeiten, welche die Entwicklung und Bereitstellung einer Anwendung beinhalten.
-
Software Development Kit (SDK)
Ein Software Development Kit (SDK) ist ein Satz von Tools und Programmen, mit denen Entwickler Anwendungen für bestimmte Plattformen erstellen können.
-
Softwareagent
Ein Softwareagent kann mehr als ein herkömmliches Programm. Die Agenten starten sich selbst, handeln autonom, sammeln Daten und können sich auch selbsttätig wieder beenden.
-
Softwarelizenz
Eine Softwarelizenz ist ein Vertrag zwischen dem Kunden eines Softwareanbieters und diesem Anbieter, der genau regelt, was der Kunde mit dieser Software in welchem Umfang tun darf.
-
Softwaretest
Ein Softwaretest überprüft Leistungsfähigkeit und Funktionalität einer Softwareversion, bevor sie veröffentlicht wird. Dies gewährleistet Produktqualität und Kundenzufriedenheit.
-
Spaghetticode
Spaghetticode ist ein abwertender Begriff für Softwarecode, der unnötig verschachtelt ist oder häufige Verzweigungen von einem Abschnitt zu einem anderen verwendet.
-
Spiralmodell
Das Spiralmodell ist ein Modell in der Softwareentwicklung. Es ist ein flexibles Vorgehensmodell und offen für bereits existierende Entwicklungsmodelle.
-
Spracherkennung
Spracherkennung ist die Fähigkeit einer Maschine oder eines Programms, gesprochene Wörter zu erfassen, diese zu verarbeiten und in lesbaren Text auszugeben.
-
Sprint (Scrum)
In SCRUM bezeichnet Sprint einen mit dem Product Owner vereinbarten Zeitabschnitt, in dem das Entwicklerteam eine neue Funktion oder Version einer Software erstellt haben muss.
-
Stack
Im Netzwerkbereich wird TCP/IP oft als Stack bezeichnet. Den Begriff kann man auch als Stapelspeicher übersetzen, bei dem die zuletzt abgelegten Daten zuerst bearbeitet werden.
-
Stapelzeiger (Stack Pointer)
Ein Stapelzeiger ist ein kleines Register, das die Speicheradresse des neusten Datenelements im Stack speichert, oder, in einigen Fällen, die erste verfügbare Adresse im Stapel.
-
Stateless App (zustandslose Anwendung)
Eine zustandslose App sichert die Client-Daten einer Sitzung nicht und führt Sitzungen so aus, als ob es das erste Mal wäre, was für die Entwicklung von Offline-Apps nützlich ist.
-
Stresstest
Mit einem Stresstest lässt sich die Fähigkeit eines Computers, Netzwerks, Programms oder Geräts bestimmen, unter ungünstigen Bedingungen seine Wirksamkeit aufrechtzuerhalten.
-
Strukturierte Programmierung (modulare Programmierung)
Strukturierte Programmierung ist ein Programmierparadigma, welches die Entwicklung von Programmen mit lesbarem Code und wiederverwendbaren Komponenten erleichtert.
-
Strukturierte Systemanalyse und Entwurfsmethode
Die Structured Systems Analysis and Design Method (SSADM) ist eine Entwicklungsmethode für Software, die in den 1980er Jahren in Großbritannien entwickelt wurde.
-
Stub
Ein Stub bezeichnet in der Softwareentwicklung eine einfache und kurze Programmroutine, die einen in der Regel komplexeren Programmcode ersetzt.
-
Suchmaschine
Eine Suchmaschine umfasst in der Regel drei Komponenten: Einen Crawler, der Websites entdeckt und ausliest, einen Index und ein Programm für Suchanfragen.
-
Suchmaschinen-Ergebnisseite (SERP)
Eine Suchmaschinen-Ergebnisseite (SERP) ist die Liste der Ergebnisse, die eine Suchmaschine als Antwort auf eine bestimmte Wort- oder Stichwortabfrage zurückgibt.
-
Suchmaschinenoptimierung (Search Engine Optimization, SEO)
Suchmaschinenoptimierung (Search Engine Optimization, SEO) beschäftigt sich mit der Optimierung einer Website, um ihre Sichtbarkeit für spezifische Suchanfragen zu erhöhen.
-
Sunsetting
Sunsetting bedeutet, etwas auslaufen zu lassen oder zu beenden. Anbieter stellen in der Regel ältere Versionen ihrer Software ein, wenn eine neuere Version verfügbar ist.
-
Synchrone/asynchrone API
Synchrone und asynchrone APIs sind eine Möglichkeit, unmittelbare oder geplante Anfragen nach Ressourcen, Daten oder Diensten zu stellen, wenn diese verfügbar sind.
-
Syntax
Die Syntax gibt die Grammatik, Struktur oder Reihenfolge der Elemente in einer sprachlichen Aussage an und definiert die Regeln für wohlgeformte Sätze.
-
Synthetische Daten
Synthetische Daten sind Informationen, die künstlich erstellt und nicht durch reale Ereignisse generiert wurden. Sie dienen zum Beispiel als Ersatz für reale Testdatensätze.
-
Systemsoftware
Systemsoftware dient als Schnittstelle zwischen Hardware und Anwendungssoftware. Sie verwaltet die Grundfunktionen des Computers, einschließlich Dienstprogramme und Betriebssystem.
-
Systemtest
Systemtests sind eine Phase der Qualitätssicherung, die nach den Unit Tests, aber vor der produktiven Einführung des Codes einer Software stattfindet.
-
T
Technische Schuld
In der Informatik ist die technische Schuld eine Metapher, die den inkrementellen Ansatz der Programmierung mit einem Kredit vergleicht, der durch Überarbeitung zurückgezahlt wird.
-
Thread
Das Wort Thread wird in der IT für verschiedene Zwecke genutzt. Einmal, um damit Diskussionsstränge zu beschreiben und außerdem in der Programmierung von modernen Anwendungen.
-
Token
Im Allgemeinen ist ein Token ein Objekt, das etwas anderes repräsentiert, wie zum Beispiel ein anderes Objekt (physisch oder virtuell). In der EDV gibt es verschiedene Token-Typen.
-
Turing-Test
Der Turing Test, der nach dem Mathematiker Alan Turing benannt wurde, ist eine Methode, die nachweisen soll, ob ein Computer über künstliche Intelligenz verfügt.
-
Twitter Bot
Ein Twitter Bot ist eine Software, die einen Twitter-Account über die Twitter-API steuert. Ein Bot kann unter anderem Tweets posten, retweeten, liken oder Direktnachrichten senden.
-
U
Unicode
Unicode ist ein Standard für einen Zeichensatz in der Computerverarbeitung. Über 135.000 Zeichencodes decken dabei die wichtigsten Schriftsprachen der Welt ab.
-
Unified Modeling Language (UML)
Die grafische Modellierungssprache UMS wird zur Spezifikation, Konstruktion und Dokumentation von Softwareteilen und anderen Systemen eingesetzt.
-
Unique Identifier (UID)
Ein Unique Identifier (UID) ist eine numerische oder alphanumerische Zeichenfolge, die einer einzelnen Einheit innerhalb eines bestimmten Systems zugeordnet ist.
-
Unit-Test
Ein Unit-Test, auch Modultest oder Komponententest, wird in der Softwareentwicklung angewendet, um die funktionalen Einzelteile (Units) von Computerprogrammen zu testen.
-
Unüberwachtes Lernen (Unsupervised Learning)
Beim unüberwachten Lernen kann ein KI-System unsortierte Informationen nach Ähnlichkeiten und Unterschieden gruppieren, obwohl es keine vorgegebenen Kategorien gibt.
-
Uuencode (Uuencode/Uudecode)
Der Befehl Uuencode, beziehungsweise Uuencode und Uudecode, wird verwendet, um binäre Dateien über zwischen Systemen zu übertragen, die nur einfache ASCII-Daten unterstützen.
-
UUID (Universal Unique Identifier)
Eine UUID (Universal Unique Identifier) ist eine 128-Bit-Zahl, die zur eindeutigen Identifizierung eines Objektes oder einer Entität im Internet verwendet wird.
-
UX (User Experience)
Bei der User Experience (UX) geht es um ein umfassendes Verständnis der Anwender, ihrer Bedürfnisse, ihrer Werte, ihrer Fähigkeiten und auch ihrer Grenzen.