Softwarebestandteile
Softwarebestandteile bezeichnet man als modulare Bausteine der Software, die eine klar abgegrenzte Funktionalität kapseln und über definierte Schnittstellen mit anderen Teilen kommunizieren. Sie ermöglichen Wiederverwendung, Austauschbarkeit und unabhängigere Entwicklung, Testing und Deployment.
Typen umfassen Bibliotheken und Frameworks, Module, Dienste und APIs, Treiber, Plug-ins sowie komplette Anwendungen oder Microservices.
Wesentliche Eigenschaften sind Kapselung, Abstraktion, lose Kopplung und hohe Kohäsion der Komponenten. Schnittstellen definieren das erwartete
Lebenszyklus und Verwaltung umfassen Entwicklung, Versionierung, Packaging, Abhängigkeitsmanagement und Deployment. Dynamische Verlinkung oder Laufzeit-Laden von Komponenten
Standards und Beispiele: API-Schnittstellen, IDL, Component-Modelle wie OSGi (Java), COM oder CORBA (historisch); aktuelle Trends sind
Die richtige Gestaltung von Softwarebestandteilen erhöht Wiederverwendbarkeit, Skalierbarkeit, Austauschbarkeit und Wartbarkeit, kann jedoch Komplexität und Abhängigkeiten