Erfolgreich 
  mit Objektorientierung
Vorgehensmodelle und Managementpraktiken für die objektorientierte Softwareentwicklung
 
 
  Glossar  
 
 Ablauforganisation  Ablauforganisation ist die zeitliche und räumliche Ordnung 
  betrieblicher Prozesse innerhalb des durch die Aufbauorganisation geschaffenen 
  Rahmens. Abstraktion Abstraktion ist eine Methode, bei der unter einem bestimmten 
  Gesichtspunkt die wesentlichen Merkmale eines Gegenstandes oder Begriffes herausgesondert 
  werden. Aggregation (UML: aggregation) 
  ð Assoziation, 
  ð Komposition Eine Aggregation ist eine Sonderform der Assoziation, bei der 
  die beteiligten Klassen keine gleichwertige Beziehung führen, sondern eine 
  Ganzes-Teile-Hierarchie darstellen. Eine Aggregation beschreibt, wie sich etwas 
  Ganzes aus seinen Teilen zusammensetzt. Akteur (UML: actor) Ein Akteur ist eine eine außerhalb des Systems 
  liegende ð Klasse, 
  die an der in einem ð 
  Anwendungsfall beschriebenen Interaktion mit dem System beteiligt ist. Akteure 
  nehmen in der Interaktion gewöhnlich eine definierte Rolle ein. Ein Akteur 
  ist eine ð stereotypisierte 
  Klasse.  Aktivität Eine Aktivität ist die konkrete Durchführung 
  von definierten Aktionen innerhalb eines Entwicklungsprozesses und Ausprägung 
  eines ðAktivitätstyps. Aktivität (UML: action state) Ein Zustand mit einer internen Aktion und einer oder mehreren 
  ausgehenden Transitionen, die automatisch dem Abschluß der internen Aktion 
  folgen. Eine Aktivität ist ein einzelner Schritt in einem Ablauf. Eine 
  Aktivität kann mehrere ausgehende Transitionen haben, wenn diese durch 
  Bedingungen unterschieden werden können.  Aktivitätsdiagramm (UML: activity diagram) Ein Aktivitätsdiagramm ist eine spezielle 
  Form des Zustandsdiagramms, das überwiegend oder ausschließlich ð 
  Aktivitäten enthält. Aktivitätstyp Ein Aktivitätstyp ist eine abstrakte Beschreibung von 
  Tätigkeiten, um ein oder mehrere definierte Ergebnisse zu erzeugen. Ein 
  Aktivitätstyp ist somit eine Art Arbeitsanleitung. Amigos Grady Booch, James Rumbaugh und Ivar Jacobson sind die Initiatoren 
  der Unified Moeling Language (UML) und des Unified Process und 
  werden häufig einfach "die Amigos" genannt. Analyse Mit (objektorientierter) Analyse werden alle Aktiviäten 
  im Rahmen des Softwareentwicklungsprozesses bezeichnet, die der Ermittlung, 
  Klärung und Beschreibung der Anforderungen an das System dienen (d. h. 
  die Klärung, was das System leisten soll). Änderungsmanagement (Tätigkeit) Management zur Aufnahme, Verfolgung und Durchführung von 
  Änderungen, Erweiterungen und Fehlernbeseitigungen. Änderungsmanagement (Organisationseinheit) Entscheidungs- und Steuerungsgremium für das Änderungsmanagement. Anwendungsarchitektur Die fachliche und technische ðArchitektur 
  einer Software-Anwendung. Anwendungsfall (UML: use case) Ein Anwendungsfall beschreibt eine Menge von Aktivitäten 
  eines Systems aus der Sicht seiner Akteure, die für die Akteure zu einem 
  wahrnehmbaren Ergebnis führen. Ein Anwendungsfall wird stets durch einen 
  Akteur initiiert. Ein Anwendungsfall ist ansonsten eine komplette, unteilbare 
  Beschreibung.  Anwendungsfalldiagramm (UML: use case diagram) Ein Diagramm, das die Beziehungen zwischen ð 
  Akteuren und ð 
  Anwendungsfällen zeigt. Anwendungsfallmodell (UML: use case model) Ein Modell, das die funktionalen Anforderungen an ein System 
  in Form von Anwendungsfällen beschreibt. Arbeitsauftrag Beschreibt für eine Person oder ein Team den Auftrag, 
  ein definiertes Ergebnis herzustellen. Rahmenbedingungen wie geschätzter 
  bzw. geplanter Aufwand, Start- und Endtermin, Form und Qualität des Ergebnisses, 
  ggf. einzusetzende Werkzeuge u. ä. werden beschrieben. Arbeitspaket Eine Menge von konkreten ðArbeitsaufträgen 
  oder die Beschreibung einer Aufgabe, die in mehrere konkrete Arbeitsaufträge 
  zerlegbar ist. Architektur ist die Spezifikation der grundlegenden Struktur eines Systems. Architektur-Prototyp Ein ðPrototyp, 
  mit dem die prinzipielle Brauchbarkeit und Funktionsfähigkeit einer technischen 
  oder fachlichen ðArchitektur 
  nachgewiesen werden soll. Architekturzentriert Im Kontext des Entwicklungsprozesses bedeutet 
  dies, daß bereits der Entwicklungsprozeß die besonderen Gegebenheiten 
  der ðArchitektur 
  (Konzepte, Abstraktionen, Artefakte u. ä.) berücksichtigt. Artefakt Jede Art von Ergebnis oder Produkt im Rahmen des Entwicklunsgprozesses. Assoziation (UML: association) ð 
  gerichtete Assoziationen, ð 
  bidirektionale Assoziationen Eine Assoziation beschreibt eine Relation zwischen Klassen, 
  d. h. die gemeinsame Semantik und Struktur einer Menge von Objektbeziehungen. 
 Attribut (UML: attribute) Eine benannte Eigenschaft eines Typs. Ein Attribut ist ein 
  Datenelement, das in jedem Objekt einer Klasse gleichermaßen enthalten 
  ist und von jedem Objekt mit einem individuellen Wert repräsentiert wird. 
  Im Gegensatz zu Objekten haben Attribute außerhalb des Objektes, von dem 
  sie Teil sind, keine eigene Identität. Attribute sind vollständig 
  unter der Kontrolle der Objekte, von denen sie Teil sind. Audit Ein Audit ist eine Untersuchung einer Organisationseinheit 
  oder eines Projektes, um die Einhaltung und Wirksamkeit von Regelungen, Verfahren 
  und Standards zu ermitteln und zu dokumentieren. Aufwand Aufwand ist eine Größe der Dimension 
  [Zahl von Personen] * [Zeit]. Der Aufwand in einem Projekt ergibt sich als Integral 
  der ðProjektbesetzung 
  über eine jeweils vorgegebene Zeit. Der Gesamtaufwand des Projektes ist 
  auch der ðHerstellungsaufwand 
  des jeweiligen Produktes. Basisklasse ð 
  Oberklasse Build  Eine gewöhnlich unvollständige und verübergehende 
  aber ausführbare Version des Systems. Change Management ð 
  Änderungsmanagement CRC-Karten (Klassenkarte) Karteikarten, auf denen der Name der Klasse (Class), ihre Aufgaben 
  (Responsibilities) und ihre Beziehungen (Collaborations) beschrieben werden. Datenabstraktion Hierunter versteht man das Prinzip, nur die auf ein Objekt 
  anwendbaren Operationen nach außen sichtbar zu machen. Die tatsächliche 
  innere Realisierung der Operationen und die innere Struktur des Objektes werden 
  verborgen, d. h. man betrachtet abstrakt die eigentliche Semantik und läßt 
  die tatsächliche Implementierung außer acht. Default-Implementierung ð 
  Standard-Implementierung Delegation ist ein Mechanismus, bei dem ein Objekt eine Nachricht nicht 
  (vollständig) selbst interpretiert, sondern an ein anderes Objekt weiterleitet 
  (propagiert).  Design  Mit (objektorientiertem) Design werden alle Aktiviäten 
  im Rahmen des Softwareentwicklungsprozesses bezeichnet, mit denen ein Modell 
  logisch und physisch strukturiert wird, und die beschreiben, wie 
  das System die in der ð 
  Analyse beschriebenen Anforderungen erfüllt. Domäne ð 
  Problembereich Domänenmodell ð 
  Klassenmodell Ein Modell, beispielsweise ein Klassenmodell, welches die fachlich 
  relevanten Sachverhalte repräsentiert, nicht aber technisch oder fachfremd 
  motivierte Sachverhalte.  Entwurfsmuster Entwurfsmuster sind generalisierte Lösungsideen zu immer 
  wiederkehrenden Entwurfsproblemen. Sie sind keine fertig codierten Lösungen, 
  sie beschreiben lediglich den Lösungsweg. Ergebnistyp Ein Ergebnistyp ist ein abstrahiertes Ergebnis, d. h. es wird 
  damit definiert, welche Inhalte, Struktur und Form ein bestimmter Typ von Ergebnissen 
  hat (syntaktische und semantische Beschreibung). Zur Beschreibung des Ergebnistyps 
  gehören auch Aussagen zur Qualität und Granularität. Evolutionäres Vorgehen Vorgehen, bei dem ausgehend von zunächst unvollständigen 
  Anforderungen ein Ergebnis in mehreren aufeinander aufbauenden Zwischenschritten 
  erstellt wird. Exemplar ð 
  Objekt, ð 
  Instanz Fachabteilung Eine Organisationseinheit, die dem eigentlichen Geschäftszweck 
  einer Organisation dient. Sie ist Partner der Softwareentwicklung, artikuliert 
  Bedarf, Anforderungen und Änderungen für Anwendungen und nutzt Anwendungen. 
 Fachklassenmodell ð 
  Domänenmodell Ein Klassenmodell, das ausschließlich oder vorwiegend 
  fachlich motivierte Klassen enthält. Fachliche Architektur Ein Modell, daß die grundsätzlichen fachlichen Zusammenhänge 
  eines Anwendungsbereiches repräsentiert. Fehler Ein Fehler ist die Nicht-Erfüllung einer festgelegten 
  Anforderung. Fehlerrate Die Zahl der während einer spezifischen Aktivität 
  auftretenden Fehler. Die spezifische Aktivität ist z. B. eine Stunde Test, 
  eine Stunde Benutzung, die Durchführung eines Testfalls o. ä. Fertigstellungsgrad ist der bereits erbrachte Anteil vom Herstellungsaufwand. Ein 
  Fertigstellungsgrad von 70% besagt, daß noch 30% des Herstellungsaufwandes 
  zu leisten sind, bevor das Produkt vollständig hergestellt ist. Forward-Engineering ðReverse-Engineering beschreibt die Überführung eines Modells in eine 
  spezielle Programmiersprache, d. h. gewöhnlich die Erzeugung von Code. Funktionspunkte sind ein extrinsisches ðMaß 
  für den von außen sichtbaren Funktionsumfang und damit die Größe 
  eines Softwareprodukts, das keine wesentliche verborgene Funktionalität 
  enthält. Funktionspunkte sind von der International Function Points Users 
  Group [IFPUG94] standardisiert. Vgl. auch ðWidgetpunkte. 
    Generalisierung (UML: generalization) 
  ð 
  Spezialisierung /Konkretisierung Geschäftsobjekt ð 
  Businessobjekt Geschäftsfall ð 
  Geschäftsvorfall  Geschäftsprozeß ð 
  Workflow Ein Geschäftsprozeß ist eine Zusammenfassung von 
  organisatorisch evtl. verteilten, fachlich jedoch zusammenhängenden Aktivitäten, 
  die notwendig sind, um einen Geschäftsvorfall (z. B. einen konkreten Antrag) 
  ergebnisorientiert zu bearbeiten. Die Aktivitäten eines Geschäftsprozesses 
  stehen gewöhnlich in zeitlichen und logischen Abhängigkeiten zueinander. 
  Ein Geschäftsvorfall entsteht gewöhnlich durch ein Ereignis (z. B. 
  Antragseingang). Geschäftsvorfall (Vorgang) Ein Geschäftsvorfall ist ein geschäftliches Objekt 
  (z. B. ein konkreter Vertrag), das durch ein Ereignis ausgelöst (z. B. 
  Antragseingang) durch die innerhalb eines Geschäftsprozesses beschriebenen 
  Aktivitäten bearbeitet wird. GUI Graphical User Interface, Grafische Benutzeroberfläche Herstellungsaufwand Der ðAufwand, 
  der erforderlich ist, um ein bestimmtes Produkt herzustellen. Herstellungszeit Die Zeitspanne zwischen dem Beginn der Produkterstellung und 
  ihrem Ende, auch Projektdauer. Heuristik Eine Heuristik ist eine mit einer Wahrscheinlichkeit behaftete 
  Regel ("Daumenregel").  Inkrement Ein Inkrement ist die Erweiterung eines Produktes. 
  Ein Inkrement ist gewöhnlich gekennzeichnet durch die Differenz zwischen 
  zwei ðBuilds. Inkrementelles Vorgehen Eine Vorgehensweise, bei der ein Produkt schrittweise in wachsenden 
  Zwischenprodukten entsteht. Instantiierung ist das Erzeugen eines Exemplars aus einer Klasse. Instanz (UML: instance) ð 
  Objekt, ð 
  Exemplar Für den Hausgebrauch können Instanz, Objekt und Exemplar 
  synonym betrachtet werden. In der UML 1.0 finden sich jedoch teilweise inkonsistente 
  Akzentuierungen.  Integration Zusammenfügen von Teilsystemen oder Komponenten zu einem 
  Gesamtsystem. Integrationstest Überprüfung, ob die durch eine ðIntegration 
  zusammengefügten Einzelteile korrekt zusammenarbeiten und als Gesamtheit 
  funktionieren. Interaktionsdiagramm (UML: interaction diagram) Sammelbegriff für ð 
  Sequenzdiagramm, ð 
  Kollaborationsdiagramm, ð 
  Aktivitätsdiagramm. Invariante Eine Eigenschaft oder ein Ausdruck, der über den gesamten 
  Lebenszeitraum eines Elementes, z. B. eines Objektes gegeben sein muß. Inspektion Eine Sitzung zur Überprüfung einzelner 
  Dokumente und Ergebnisse. Vgl. ðReview. Iteration Eine Iteration ist ein in ähnlicher Weise mehrfach vorkommender 
  zeitlicher Abschnitt in einem Prozeß. Iteratives Vorgehen Ist eine Vorgehensweise, bei der der Entwicklungsprozeß 
  in mehrere gleichartige Zeitabschnitte zerlegt wird. Klasse (UML: class) Eine Klasse ist die Definition der Attribute, Operationen und 
  der Semantik für eine Menge von Objekten. Alle Objekte einer Klasse entsprechen 
  dieser Definition. Klassenbibliothek Eine Klassenbibliothek ist eine Sammlung von Klassen. Klassendiagramm (UML: class diagram) Ein Klassendiagramm zeigt eine Menge statischer Modellelemente, 
  vor allem Klassen und ihre Beziehungen. Kollaborationsdiagramm (UML: collaboration diagram) Eine Kollaborationsdiagramm zeigt eine Menge von 
  Interaktionen zwischen einer Menge ausgewählter Objekte in einer bestimmten 
  begrenzten Situation (Kontext) unter Betonung der Beziehungen zwischen den Objekten 
  und ihrer Topographie. Ähnlich dem ð 
  Sequenzdiagramm. Komponente (UML: component) Eine Komponente ist ein ausführbares Softwaremodul 
  mit eigener Identität und wohldefinierten Schnittstellen (Sourcecode, Binärcode, 
  DLL oder ausführbares Programm). Außerhalb der UML wird Komponente 
  häufig anders, mehr im Sinne eines ð 
  Paketes definiert. Vgl. ð 
  Anwendungskomponente. Komponentendiagramm (UML: component diagram) Ein Komponentendiagramm zeigt die Organisation 
  und Abhängigkeiten von ð 
  Komponenten.  Komposition (UML: composite) ð 
  Aggregation Eine Komposition ist eine strenge Form der Aggregation, bei 
  der die Teile vom Ganzen existenzabhängig sind.  Konfiguration Eine Konfiguration ist die Gesamtheit zusammenpassender Software-Elemente. Konfigurationseinheit nennt man jeden einzeln versionierten und verwalteten Teil 
  einer Software. In der Regel ist ein Entwickler für eine Konfigurationseinheit 
  verantwortlich.  Konfigurationsdiagramm ð 
  Einsatzdiagramm Konfigurationskontrollsystem nennt man die Menge der Verfahren, Mechanismen und Werkzeuge, 
  mit denen Konfigurationseinheiten verwaltet werden. Konfigurationsmanagement Vorgehensweise zur Überwachung und Kontrolle von Programmänderungen 
  und -erweiterungen. Dazu gehört unter anderem die Festlegung der Systembestandteile 
  sowie die Versionierung und Freigabe. Legacy System Synonym für ein schwer wartbares, schwer anpaßbares 
  oder inkompatibles Alt-System.  LOC Lines of Code ist ein intrinsisches ðMaß 
  für die Größe eines Software-Programms. LOC mißt die Zeilen 
  der textuellen Quelle (nicht dagegen die Zahl der Anweisungen). Wichtig ist 
  noch die Unterscheidung in Brutto-LOC (inklusive aller Kommentare und Leerzeilen) 
  und Netto-LOC (exklusive aller Kommentare und Leerzeilen) Makroschätzung Die ðSchätzung 
  des Herstellungsaufwandes anhand globaler Parameter von Projekt und Produkt. 
  Sie benutzt wesentlich die Produktgröße, um die Herstellungszeit 
  und/oder die notwendige Projektbesetung zu prognostizieren. Eine Makroschätzung 
  setzt also eine Produktschätzung voraus. Maß Ein Maß dient dazu, Größen und 
  Mengen festzustellen. Bei der ðMessung 
  der ðProduktgröße 
  von Software unterscheidet man zwischen intrinsischen und extrinsischen Maßen. 
  Intrinsische Maße beziehen sich auf innere, von der Software-Produktionsumgebung 
  abhängige Eigenschaften und sind deshalb nicht zwischen verschiedenen Umgebungen 
  übertragbar. Extrinsische oder äußere Maße abstrahieren 
  davon. Mehrfachvererbung ð 
  Multiple Vererbung Meilenstein Ein Meilenstein definiert einen Termin, zu dem eine Menge von 
  Ergebnissen in vorgegebener Detaillierung und Vollständigkeit nachprüfbar 
  und formal dokumentiert vorliegen soll. Ein Meilenstein ist ein Hilfsmittel 
  zur Planung und Überwachung eines Projektes. Messung Die Bestimmung einer Größe oder Menge 
  durch Vergleich mit einem ðMaß. 
  Das Ergebnis einer Messung wird als Produkt von Maßzahl und Maß 
  angegeben. Metamodell (UML: meta model) Ein Modell, das die Sprache definiert, mit der ein Modell definiert 
  werden kann. Methode Eine Methode ist eine Handlungsvorschrift die beschreibt, wie 
  ein Ziel bzw. Ergebnis unter gegebenen Bedingungen erreicht werden kann.  Methode (UML: method) ð 
  Operation In Smalltalk werden Operationen Methoden genannt. In der UML 
  wird eine Methode als Implementierung einer Operation definiert. Für die 
  Praxis ist es unkritisch, Methode und Operation synonym zu verwenden. Methodologie Methodologie ist die Lehre von den ðMethoden. Methodik Bedeutsam klingendes Synonym für ðMethode. Metrik Eine Meßmethode. Zu einer Metrik oder Meßmethode 
  gehört ein ðMaß 
  und eine Anleitung, wie bei der Messung zu verfahren ist. Mikroschätzung  Die Schätzung eines ðHerstellungsaufwandes 
  anhand detaillierter Eigenschaften von Projekt und Produkt. Zu den Eigenschaften 
  zählen sowohl die Summe aller Aktivitäten im Projekt, die ðProjektbesetzung 
  und Struktur als auch eine Zerlegung des Produkts in solche Teile, die innerhalb 
  einzelner Aktivitäten erstellt werden können.  Nachricht (UML: message) ð 
  Operation, ð 
  Methode  Nachricht ist ein Mechanismus, mit dem Objekte 
  untereinander kommunizieren können. Eine Nachricht überbringt einem 
  Objekt die Information darüber, welche Aktivität von ihm erwartet 
  wird, d. h. eine Nachricht fordert ein Objekt zur Ausführung einer Operation 
  auf. Eine Nachricht besteht aus einem Selektor (einem Namen), einer Liste von 
  Argumenten und geht an genau einen Empfänger. Der Sender einer Nachricht 
  erhält ggf. ein Antwort-Objekt zurück. Durch ð 
  Polymorphismus kann eine Nachricht zum Aufruf einer von mehreren gleichlautenden 
  ð Operationen führen. Nebenläufigkeit Zwei oder mehr Aktiviäten werden zeitgleich (parallel) 
  ausgeführt. Norm Eine Richtlinie ist die Vorgabe eines Handlungsmusters, 
  daß befolgt, oder einer Qualität, die eingehalten werden muß. 
  Sie dient dazu, unabhängig voneinander entstehende Artefakte mit einheitlichen 
  Eigenschaften oder Qualitäten herzustellen. Vgl. ðRichtlinie.  Oberklasse, Superklasse, Basisklasse (UML: 
  superclass) ð 
  Generalisierung  Eine Oberklasse ist eine Verallgemeinerung ausgewählter 
  Eigenschaften ihrer ð 
  Unterklasse(n).   Objekt (UML: object) Ein Objekt ist eine konkret vorhandene und agierende 
  Einheit mit eigener Identität und definierten Grenzen, das Zustand und 
  Verhalten kapselt. Der Zustand wird repräsentiert durch die ð 
  Attribute und ð 
  Beziehungen, das Verhalten durch ð 
  Operationen bzw. ð 
  Methoden. Jedes Objekt ist Exemplar (Synonym: Instanz) einer Klasse. Das definierte 
  Verhalten gilt für alle Objekte einer Klasse gleichermaßen, ebenso 
  die Struktur ihrer Attribute. Die Werte der Attribute sind jedoch individuell 
  für jedes Objekt. Jedes Objekt hat eine eigene, von seinen Attributen u. 
  a. unabhängige, nicht veränderbare Identität. Objektbeziehung (UML: link) Eine konkrete Beziehung zwischen zwei Objekten, 
  d. h. die Instanz einer ð 
  Assoziation. Ein Objekt hat eine Beziehung zu einem anderen Objekt, wenn es 
  eine Referenz darauf besitzt. Implementiert werden diese Referenzen gewöhnlich 
  durch ð Attribute, 
  was für die Modellierung jedoch unerheblich ist.  Objektdiagramm (UML: object diagram) Ein Diagramm, das Objekte und ihre Beziehungen 
  untereinander zu einem bestimmten Zeitpunkt zeigt. Gewöhnlich ein ð 
  Kollaborationsdiagramm oder eine spezielle Variante des ð 
  Klassendiagramms.  Objektidentität ist eine Eigenschaft, die ein Objekt von allen anderen unterscheidet, 
  auch wenn es möglicherweise die gleichen Attributwerte besitzt. Object Engineering Process (OEP) Ein objektorientiertes, UML-basiertes konkretes Vorgehensmodell 
  (Prozeßleitfaden), siehe [OEP99]. Kommerzielles Produkt der Fa. oose.de 
  GmbH. OCL, Object Constraint Language Die OCL definiert eine Sprache zu Beschreibung von Zusicherungen, 
  Invarianten, Vor- und Nachbedingungen und Navigation innerhalb von UML-Modellen. OEP ð 
  Object Engineering Process OO ist die Abkürzung für Objektorientierung. OMG ist die Abkürzung für Object Management Group. Operation (UML: operation) ð 
  Methode, ð 
  Nachricht  Operationen sind Dienstleistungen, die von einem 
  Objekt mit einer ð 
  Nachricht angefordert werden können, um ein bestimmtes Verhalten zu bewirken. 
  Sie werden implementiert durch ð 
  Methoden. In der Praxis werden Operation und Methode häufig synonym verwendet. Organisationseinheit Eine Gruppe von Personen innerhalb eines Unternehmens, die 
  eine definierte Rolle wahrnehmen. Die Organisationseinheit ist ein Element der 
  Aufbauorganisation des Unternehmens. Die unterste Ebene ist gewöhnlich 
  die Abteilung.  Paket (UML: package) Pakete sind Ansammlungen von Modellelementen beliebigen Typs, 
  mit denen das Gesamtmodell in kleinere, überschaubare Einheiten gegliedert 
  wird. Ein Paket definiert einen Namensraum, d. h. innerhalb eines Paketes müssen 
  die Namen der enthaltenen Elemente eindeutig sein. Jedes Modellelement kann 
  in anderen Paketen referenziert werden, gehört aber zu genau einem (Heimat-)Paket. 
  Pakete können wiederum Pakete beinhalten. Das oberste Paket beinhaltet 
  das gesamte System. pattern, design pattern ð 
  Entwurfsmuster Persistentes Objekt Persistente Objekte (persistent: lat. "anhaltend") sind solche, 
  deren Lebensdauer über die Laufzeit einer Programmsitzung hinausreicht. 
  Die Objekte werden hierzu auf nichtflüchtigen Speichermedien (z. B. Datenbanken) 
  gehalten. Phase Eine Phase ist ein zeitlicher bzw. sachlogischer Gliederungsabschnitt 
  eines Projektes. Eine Phase faßt eine Menge von Aktivitäten und Ergebnissen 
  zu einer Planungs- und Kontrolleinheit zusammen. Am Ende jeder Phase steht ein 
  Meilenstein, der die in der Phase zu erzielenden Inhalte definiert. Pilot, Pilotprojekt Ein Pilot ist ein mit einer bestimmten Verfahrensweise 
  oder Architektur erstmals erstelltes vollständiges Ergebnis, mit dem gewöhnlich 
  die Brauchbarkeit nachgewiesen werden soll. Während ðPrototypen 
  nur ausgewählte Aspekte des endgültiges Produktes repräsentieren, 
  ist ein Pilot ein vollständiges und rahmenbedingungs-konformes Ergebnis. 
  Ein Pilotprojekt ist ein Projekt, mit dem ein Pilot erstellt werden soll. Polymorphismus Polymorphismus (Vielgestaltigkeit) heißt, daß gleichlautende 
  Nachrichten an kompatible Objekte unterschiedlicher Klassen ein unterschiedliches 
  Verhalten bewirken können. Beim dynamischen Polymorphismus wird eine Nachricht 
  nicht zur Compilierzeit, sondern erst beim Empfang zur Programmlaufzeit einer 
  konkreten Operation zugeordnet. Voraussetzung hierfür ist das dynamische 
  Binden. Problembereich ð 
  Domäne Anwendungsgebiet bzw. Problembereich, innerhalb dessen die 
  fachliche Modellierung stattfindet. Als Problembereichsmodell (Domänenmodell) 
  wird in der Regel der Teil des Gesamtmodells verstanden, der sich auf den eigentlichen 
  fachlichen Problembereich bezieht (auch fachliches Modell genannt). Technische, 
  querschnittliche u. ä. Aspekte gehören nicht dazu. Im Kontext von 
  Anwendungsarchitektur ist zumeist das fachliche Klassenmodell gemeint (d. h. 
  ohne Framework-, GUI-, Controler- u. ä. Klassen). Produktcontrolling ist das Nachprüfen und die daraus abgeleitete 
  Prognose qualitiativer Produkteigenschaften. Zu den qualitiativen Produkteigenschaften 
  zählen neben anderen Qualitätsmaßen die ðFehlerrate 
  und die ðProduktgröße. 
   Produktgröße wird entweder intrinsisch, dann in ðLOC, 
  oder extrinsisch, dann meist in ðFunktionspunkten, 
  gemessen. Siehe auch ðMaß. 
  In diesem Buch werden die ðWidgetpunkte 
  als weiteres extrinsisches Maß für die Produktgröße vorgeschlagen. Produktivität ist der Quotient aus Produktgröße und Herstellungsaufwand. 
  Da die Produktgröße extrinsisch oder intrinsisch angegeben werden 
  kann, gibt es auch zwei "Arten" von Produktivität: Die intrinsische oder 
  LOC-Produktivität und die "richtige" extrinsische Produktivität, die 
  eine Messung der Produktgröße in Funktionspunkten oder Widgetpunkten 
  voraussetzt. Projekt Ein Projekt ist ein einmaliges Vorhaben, daß zeitlich, 
  finanziell und personell begrenzt ist und zur Erreichung eines definierten Zieles 
  geschaffen wird. Ein Projekt verfügt über eine projektspezifische 
  Organisation. Projektbesetzung ist eine Kurve über der Zeit, die angibt, 
  wieviele Personen zur Zeit in einem Projekt arbeiten. Der ðAufwand 
  eines Projektes, z. B. auch der ðHerstellungsaufwand 
  eines Produktes, ergibt sich als Integral der Projektbesetzung über die 
  ðHerstellungszeit. Projektcontrolling ist das Nachprüfen des erbrachten ðAufwands, 
  der Vergleich mit dem ðFertigstellungsgrad 
  und die daraus abgeleitete Prognose für den weiteren Verlauf des Projekts. 
  Es liefert damit sozusagen die Positionsbestimmung des Projektleiters. Projektmanagement Gesamtheit der Aufgaben und Techniken zur Führung und 
  Organisation eines Projektes. Projektorganisation Gesamtheit der Organisationseinheiten eines Projektes. Gewöhnlich 
  setzt sich die Projektorganisation aus Bestandteilen der vorhandenen Betriebsorganisation 
  zusammen. Projektplan Ein Plan der den grundsätzlichen "Fahrplan" 
  des Projektes darstellt, er enthält ðMeilensteine 
  und beschreibt die vorgesehenen ðPhasen 
  und ðIterationen 
  des Projektes. Protokoll Eine Menge von ðSignaturen. Prototyp Ein Prototyp ist ein vorläufiges oder temporäres 
  Produkt, mit dem ausgewählte Eigenschaften oder Aspekte des zu entwickelnden 
  endgültigen Produktes erfahrbar und beurteilbar gemacht werden sollen. 
  Prototypen können explorativ sein, d. h. zur Erforschung eines Sachverhaltes 
  dienen, sie können experimentell sein, d. h. zur Überprüfung 
  der Machbarkeit oder Funktionsfähigkeit dienen, oder evolutionär sein, 
  d. h. vorab ein Teilprodukt bereitstellen. Prototyping Herstellung eines ðPrototyps.  Prozeßmodell ðVorgehensmodell Qualität Grad der Erfüllung von geforderten Leistungen und Eigenschaften. Qualitätssicherung Maßnahmen, die zur Erlangung, Steigerung oder Kontrolle 
  von Qualität beitragen. Dazu gehören planerische Maßnahmen, 
  konstruktive Maßnahmen (Werkzeuge, Richtlinien, Konventionen etc.), analytische 
  Maßnahmen (Test, Validierung, Verfizierung).  Ein Rahmenwerk ist eine Menge kooperierender Klassen, die unter 
  Vorgabe eines Ablaufes ("Don´t call the framework, the framework calls you") 
  eine generische Lösung für eine Reihe ähnlicher Aufgabenstellungen 
  bereitstellen.  Rational Unified Process (RUP) Ein objektorientiertes, UML-basiertes konkretes Vorgehensmodell, 
  siehe [Kruchten98]. Kommerzielles Produkt der Fa. Rational Software. Refaktorisierung Umstrukturierung eines Systems zugunsten besserer Wart- oder 
  Erweiterbarkeit ohne Änderung der Funktionalität. Referentielle Integrität Regel, die die Integrität von Objektbeziehungen beschreibt, 
  vor allem für den Fall, daß eines der beteiligten Objekte oder die 
  Objektverbindung selbst gelöscht werden sollen. Regressionstest Hiermit wird die Wiederholung früherer Tests bezeichnet. 
  Er dient dazu, nachzuweisen, daß bereits zu einem früheren Zeitpunkt 
  korrekt vorhandene Systemfunktionalität immer noch vorhanden ist, auch 
  wenn zwischenzeitlich neue Funktionalität hinzugekommen ist. Release Ein ðBuild, 
  das an externe Anwender ausgeliefert werden kann. Restaufwandsschätzung Die Schätzung des noch verbleibenden ðHerstellungsaufwandes 
  zu einem fortgeschrittenen Zeitpunkt im Projekt, das ein bestimmtes Produkt 
  herstellt.   Reverse-Engineering ðForward-Engineering, 
  ðRoundtrip-Engineering Hiermit bezeichnet man einen Vorgang, bei dem aus vorhandenem 
  Programmiersprachen-Code ein (visuelles) Modell erzeugt werden soll.  Review Ein Review ist eine Sitzung zur kritischen Begutachtung des 
  aktuellen Projektstands auf Basis repräsentativer (Teil-)Ergebnisse mit 
  dem Ziel, den Status zu ermitteln und mögliche Beiträge zur weiteren 
  Problemlösung aufzunehmen.  Richtlinie Eine Richtlinie ist die Vorgabe eines Handlungsmusters, 
  daß befolgt, oder einer Qualität, die eingehalten werden sollte. 
  Sie dient dazu, unabhängig voneinander entstehende ðArtefakte 
  mit einheitlichen, ähnlichen oder vergleichbaren Eigenschaften oder Qualitäten 
  herzustellen. Vgl. ðNorm.  Roundtrip-Engineering ðForward-Engineering, 
  ðReverse-Engineering Hiermit bezeichnet man den Versuch, durch abwechselndes Forward- 
  und Reverse-Engineering Code und Modell permanent oder regelmäßig 
  konsistent zu halten. RUP ðRational 
  Unified Process Schätzung ist eine Prognose. Man kann die Größe eines Produktes 
  schätzen oder mit einer Projektschätzung den erforderlichen Aufwand 
  zur Herstellung des Produktes. Schnittstelle (UML: interface) ð 
  Schnittstellenklassen  Schnittstellen beschreiben einen ausgewählten 
  Teil des extern sichtbaren Verhaltens von Modellelementen (hauptsächlich 
  von Klassen und Komponenten), d. h. eine Menge von ðSignaturen. Schnittstellenklasse Schnittstellenklassen sind ð 
  abstrakte Klassen (genauer: Typen), die ausschließlich ð 
  abstrakte Operationen definieren. Schnittstellenklassen sind Klassen, die mit 
  dem ð Stereotyp 
  Ğinterfaceğ gekennzeichnet sind. Sie sind Spezifikationen des extern 
  sichtbaren Verhaltens von Klassen und beinhalten eine Menge von ð 
  Signaturen für Operationen, die Klassen, die diese Schnittstelle bereitstellen 
  wollen, implementieren müssen. Schnittstellenvererbung Innerhalb einer ð 
  Spezialisierungsbeziehung wird lediglich eine ð 
  Schnittstelle vererbt. Sequenzdiagramm (UML: sequence diagram) Eine Sequenzdiagramm zeigt eine Menge von Interaktionen 
  zwischen einer Menge ausgewählter Objekte in einer bestimmten begrenzten 
  Situation (Kontext) unter Betonung der zeitlichen Abfolge. Ähnlich dem 
  ð Kollaborationsdiagramm. 
  Sequenzdiagramme können in generischer Form existieren (Beschreibung aller 
  möglichen Szenarien) oder in Instanzform (Beschreibung genau eines speziellen 
  ð Szenarios). SEU Software-Entwicklungsumgebung Signatur Die Signatur einer Operation setzt sich zusammen aus dem Namen 
  der Operation, ihrer Parameterliste und der Angabe eines evtl. Rückgabetyps. Software-Element Ein Software-Element ist die kleinste unteilbar zu behandelnde 
  und eindeutig zu identifizierende Einheit, die einem Änderungs- und Freigabeverfahren 
  unterworfen werden kann. Softwareentwicklungsplan Zusammenfassung aller zur Projekt- und Iterationsplanung notwendigen 
  Unterlagen und Ergebnisse. Spezialisierung, Generalisierung ð 
  Vererbung  Eine Generalisierung (bzw. Spezialisierung) ist 
  eine taxonomische Beziehung zwischen einem allgemeinen und einem speziellen 
  Element (bzw. umgekehrt), wobei das speziellere weitere Eigenschaften hinzufügt, 
  die Semantik erweitert und sich kompatibel zum allgemeinen verhält. Generalisierung 
  und Spezialisierung sind Abstraktionsprinzipien zur hierarchischen Strukturierung 
  der Modellsemantik unter einem diskriminierenden Aspekt (ð 
  Diskriminator). Standard Eine ðRichtlinie 
  oder Konvention, um bestimmte Mindesteigenschaften sicherzustellen. Standard-Implementierung Konkrete Implementierung einer eigentlich abstrakten Operation, 
  um für Subklassen ein Standardverhalten bereitzustellen. Stereotyp (UML: stereotype) Stereotypen sind projekt-, unternehmens- oder 
  methodenspezifische Erweiterungen vorhandener Modellelemente des UML-Metamodells. 
  Entsprechend der mit der Erweiterung definierten Semantik wird das Modellierungselement, 
  auf das es angewendet wird, direkt semantisch beeinflußt. In der Praxis 
  geben Stereotypen vor allem die möglichen Verwendungszusammenhänge 
  einer Klasse, einer Beziehung oder eines Paketes an. Andere erweiternde Mechanismen 
  in der UML sind ð 
  Eigenschaftswerte und ð 
  Zusicherungen. (Duden: das Stereotyp).   Subklasse (UML: subclass) ð 
  Unterklasse Subsystem ð 
  Komponente Ein Subsystem ist eine sehr große Komponente oder eine, 
  die sich aus einer Menge von Einzelkomponenten zusammensetzt. Diese Unterscheidung 
  ist für die Gliederung sehr großer Systeme hilfreich. Superklasse (UML: superclass) ð 
  Oberklasse System Bauhaus Das System Bauhaus war ein Netzwerk international bekannter 
  und im deutschsprachigen Raum tätiger unabhängiger Fachleute für 
  objektorientierte Systementwicklung. Systemtest ð 
  Integrationstest Szenario (UML: scenario) Ein Szenario ist eine spezifische Folge von Aktionen. 
  Beispielsweise ein konkreter Ablaufpfad in einem Anwendungsfall (sozusagen eine 
  Instanz des Anwendungsfalls). Vgl. ð 
  Sequenzdiagramm.  Test Testen ist eine Tätigkeit mit der Absicht, Fehler zu finden. 
  Ein Test kann die Existenz eines Fehlers beweisen. Die Abwesenheit von Fehlern 
  ist nicht beweisbar. Typ (UML: type) Definition einer Menge von Operationen und Attributen. 
  Andere Elemente sind typkonform, wenn sie über die durch den Typen definierten 
  Eigenschaften verfügen. Wird in der Praxis häufig gleichgesetzt mit 
  der Beschreibung von ð 
  Schnittstellen.   UML ð 
  Unified Modeling Language (UML) Unified Modeling Language (UML) Durch die Object Management Group (OMG) international standardisierte 
  Notation und Semantik zur Beschreibung von Software-Modellen. Unified Process 
  Unified Process ð 
  Unified Software Development Process (USDP)   Unterklasse, Subklasse (UML: subclass) Eine Unterklasse ist die Spezialisierung einer Oberklasse und 
  erbt alle Eigenschaften der Oberklasse. USDP ð 
  Unified Software Development Process (USDP) Use case ð 
  Anwendungsfall Validierung Überprüfung, ob das richtige Ergebnis bzw. Produkt 
  hergestellt wurde. Verifizierung Überprüfung, ob ein Ergebnis bzw. Produkt richtig 
  ist, d. h. gegebene Anforderungen erfüllt. Vererbung (UML: inheritance) 
  ð Einfachvererbung, 
  ð Multiple Vererbung, 
  ð Multiple Klassifikation, 
  ð Dynamische Klassifikation  Vererbung ist ein Programmiersprachenkonzept 
  für die Umsetzung einer Relation zwischen einer Ober- und einer Unterklasse, 
  wodurch Unterklassen die Eigenschaften ihrer Oberklassen mitbenutzen können. 
  Vererbung implementiert normalerweise ð 
  Generalisierungs- und Spezialisierungsbeziehungen. Alternativen: ð 
  Delegation, ð Aggregation, 
  ð generische Programmierung, 
  ð generisches Design. Verteilungsdiagramm (UML: deployment diagram) Ein Diagramm, welches die Konfiguration der zur 
  Laufzeit vorhandenen (eingesetzten) ð 
  Knoten und ihrer ð 
  Komponenten, Prozesse und Objekte zeigt.  V-Modell Vorgehensmodell. Meistens wird damit das erstmalig 
  1992 in Form des "Softwareentwicklungsstandard der Bundeswehr" veröffentlichte 
  Vorgehensmodell bezeichnet.  Vorgehensmodell Modellhafte und häufig formale Beschreibung, wie in Projekten 
  vorgegangen werden soll. Wartung ist derjenige Teil des Software-Lebenszyklus, der nach dem 
  Ende der Garantiezeit liegt. Hierunter werden auch Tätigkeiten verstanden, 
  die eine bestehende Anwendung verbessern, optimieren, reparieren oder überprüfen 
  mit dem Ziel, die Anwendung weiterhin bzw. besser nutzen zu können. Widget Ein Widget ist ein vorgefertigtes Oberflächenelement in 
  den Programmierumgebungen für moderne grafische Benutzungsoberflächen. 
  Der Programmierer benutzt es wie ein Bauteil, entweder deklarativ in einem Kompositionseditor 
  oder durch prozeduralen Aufruf. Widgetpunkte  sind ein extrinsisches ðMaß 
  für den Funktionsumfang und damit die die Größe eines Softwareprodukts. 
  Widgetpunkte werden in diesem Buch definiert. Siehe auch ðFunktionspunkte.  Workflow ð 
  Geschäftsprozeß  Ein Workflow ist die computergestützte Automatisierung 
  und Unterstützung eines Geschäftsprozesses oder eines Teils davon. Zusicherung (UML: constraint) Eine Zusicherung ist ein Ausdruck, der die möglichen 
  Inhalte, Zustände oder die Semantik eines Modellelementes einschränkt, 
  und der stets erfüllt sein muß. Bei dem Ausdruck kann es sich um 
  ein ð Stereotyp 
  oder um ð Eigenschaftswerte 
  handeln, um eine freie Formulierung (ð 
  Notiz) oder um eine ð 
  Abhängigkeitsbeziehung. Zusicherungen in Form reiner boolescher Ausdrücke 
  werden auch ð assertions 
  genannt. Zustandsdiagramm (UML: state diagram, state machine) Ein Zustandsdiagramm zeigt eine Folge von Zuständen, die 
  ein Objekt im Laufe seines Lebens einnehmen kann und aufgrund welcher Stimuli 
  Zustandsänderungen stattfinden. Ein Zustandsdiagramm beschreibt eine hypothetische 
  Maschine (Endlicher Automat), die sich zu jedem Zeitpunkt in einer Menge endlicher 
  Zustände befindet.