<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Operation_%28UML%29</id>
	<title>Operation (UML) - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Operation_%28UML%29"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Operation_(UML)&amp;action=history"/>
	<updated>2026-06-09T09:08:11Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Operation_(UML)&amp;diff=292568&amp;oldid=prev</id>
		<title>imported&gt;RoBri: Änderungen von 2601:901:C180:830:D0D2:1E5A:9C24:F2CF (Diskussion) auf die letzte Version von PerfektesChaos zurückgesetzt</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Operation_(UML)&amp;diff=292568&amp;oldid=prev"/>
		<updated>2022-01-08T05:17:41Z</updated>

		<summary type="html">&lt;p&gt;Änderungen von &lt;a href=&quot;/index.php/Spezial:Beitr%C3%A4ge/2601:901:C180:830:D0D2:1E5A:9C24:F2CF&quot; title=&quot;Spezial:Beiträge/2601:901:C180:830:D0D2:1E5A:9C24:F2CF&quot;&gt;2601:901:C180:830:D0D2:1E5A:9C24:F2CF&lt;/a&gt; (&lt;a href=&quot;/index.php?title=Benutzer_Diskussion:2601:901:C180:830:D0D2:1E5A:9C24:F2CF&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Benutzer Diskussion:2601:901:C180:830:D0D2:1E5A:9C24:F2CF (Seite nicht vorhanden)&quot;&gt;Diskussion&lt;/a&gt;) auf die letzte Version von &lt;a href=&quot;/index.php?title=Benutzer:PerfektesChaos&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Benutzer:PerfektesChaos (Seite nicht vorhanden)&quot;&gt;PerfektesChaos&lt;/a&gt; zurückgesetzt&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Eine &amp;#039;&amp;#039;&amp;#039;Operation&amp;#039;&amp;#039;&amp;#039; ({{enS|&amp;#039;&amp;#039;operation&amp;#039;&amp;#039;}}) ist ein Modellelement in der [[Unified Modeling Language]] (UML), einer Modellierungssprache für [[Software]] und andere Systeme.&lt;br /&gt;
&lt;br /&gt;
Eine Operation ist ein [[Merkmal (UML)|Verhaltensmerkmal]], mit der die Art und Weise modelliert wird, wie ein Verhalten aufgerufen wird. Sie spezifiziert den Einstiegspunkt in ein Verhalten in Form einer [[Signatur (Programmierung)|Signatur]]. Das Verhalten selbst kann unabhängig von der Operation und auf unterschiedliche Arten modelliert werden, zum Beispiel als [[Aktivität (UML)|Aktivität]], als [[Interaktion (UML)|Interaktion]] oder als [[Zustandsautomat (UML)|Zustandsautomat]]. Als Verhaltensmerkmal gehört sie entweder zu einer [[Klasse (UML)|Klasse]] oder zu einer [[Schnittstelle (UML)|Schnittstelle]].&lt;br /&gt;
&lt;br /&gt;
== Spezifikation ==&lt;br /&gt;
Die Spezifikation einer Operation besteht grundsätzlich aus dem Namen der Operation sowie aus einer Liste von [[Parameter (UML2)|Parametern]]. Wie jedes Merkmal kann eine Operation zusätzlich auch Details zur Sichtbarkeit, zur [[Multiplizität (UML)|Multiplizität]] und zum Typ der Operation spezifizieren. Die Sichtbarkeit einer Operation ist entweder &amp;#039;&amp;#039;public&amp;#039;&amp;#039;, &amp;#039;&amp;#039;private&amp;#039;&amp;#039;, &amp;#039;&amp;#039;protected&amp;#039;&amp;#039; oder &amp;#039;&amp;#039;package&amp;#039;&amp;#039;&lt;br /&gt;
(siehe auch: [[Datenkapselung (Programmierung)|Datenkapselung]]).&lt;br /&gt;
&lt;br /&gt;
Die Multiplizität und der Typ der Operation wird indirekt spezifiziert. Falls die Operation über einen Parameter mit der Richtung &amp;#039;&amp;#039;return&amp;#039;&amp;#039; verfügt, dann entspricht die Multiplizität und der Typ der Operation der Multiplizität und dem Typ dieses Parameters. Auch die Tatsache, ob die Rückgabewerte der Operation geordnet bzw. eindeutig sind, wird aus diesem Parameter abgeleitet. Die UML2 gibt vor, dass höchstens ein Parameter mit der Richtung &amp;#039;&amp;#039;return&amp;#039;&amp;#039; existieren darf.&lt;br /&gt;
&lt;br /&gt;
Analog zu [[Attribut (UML)|Klassenattributen]] gibt es auch &amp;#039;&amp;#039;Klassenoperationen&amp;#039;&amp;#039;. Sie unterscheiden sich von den anderen Operationen dadurch, dass sie nicht den Aufruf von Verhalten auf einzelnen Instanzen der Klasse, sondern auf der Klasse selbst modellieren. Klassenoperationen werden wie Klassenattribute in der graphischen Darstellung unterstrichen, um sie von den normalen Operationen abzugrenzen.&lt;br /&gt;
&lt;br /&gt;
== Operations-Signatur ==&lt;br /&gt;
&lt;br /&gt;
Der generische Aufbau einer Operations-&amp;#039;&amp;#039;Signatur&amp;#039;&amp;#039; sieht wie folgt aus:&lt;br /&gt;
 &amp;lt;small&amp;gt;sichtbarkeit name(parameterliste): rückgabetyp {eigenschaft=wert}&amp;lt;/small&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;sichtbarkeit&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;rückgabetyp&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;eigenschaft/wert&amp;lt;/code&amp;gt;-Paare sind optional. Wenn diese Details in einer visuellen Darstellung nicht interessieren, können sie ausgeblendet werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;parameterliste&amp;lt;/code&amp;gt; ist entweder leer oder besteht aus einer Liste von mit Komma (&amp;lt;code&amp;gt;,&amp;lt;/code&amp;gt;) getrennten Parameterdeklarationen mit folgendem generischen Aufbau:&lt;br /&gt;
 &amp;lt;small&amp;gt;richtung parametername: parametertyp [multiplizität]{eigenschaft=wert}&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Auch hier sind &amp;lt;code&amp;gt;richtung&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;parametertyp&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;multiplizität&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;eigenschaft/wert&amp;lt;/code&amp;gt;-Paare  optional.&lt;br /&gt;
&lt;br /&gt;
Die &amp;#039;&amp;#039;Richtung&amp;#039;&amp;#039; legt fest, ob es sich um einen Ein- oder Ausgabeparameter handelt. Folgende Werte sind erlaubt.&lt;br /&gt;
{|&lt;br /&gt;
!Richtung||Beschreibung&amp;lt;ref&amp;gt;{{Literatur |Autor=Heide Balzert |Titel=UML 2 kompakt: mit Checklisten |Auflage=2. |Verlag=Elsevier, Spektrum, Akad. Verlag |Ort=München / Heidelberg |Datum=2005 |ISBN=3-8274-1389-3 |Seiten=12}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|in||Es handelt sich um einen Eingabeparameter, über den Daten an die aufgerufene Operation übergeben werden.&lt;br /&gt;
|-&lt;br /&gt;
|out||Es handelt sich um einen Ausgabeparameter, über den Daten an die aufrufende Operation zurückgegeben werden.&lt;br /&gt;
|-&lt;br /&gt;
|inout||Über den Parameter werden Daten in beiden Richtungen ausgetauscht.&lt;br /&gt;
|-&lt;br /&gt;
|return||Der Parameter nimmt den Rückgabewert der Operation auf. Pro Operation darf es nur einen Return-Parameter geben und auch nur dann, wenn der Rückgabewert nicht als Ergebnistyp in der Signatur der Operation angegeben wird.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Beispiele ==&lt;br /&gt;
In der folgenden Tabelle sind drei Beispiele für Operations-Signaturen aufgeführt.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Signatur&lt;br /&gt;
!Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;+buchen(betrag: Betrag)&amp;lt;/code&amp;gt;&lt;br /&gt;
|Eine öffentliche Methode &amp;lt;code&amp;gt;buchen&amp;lt;/code&amp;gt; mit einem Parameter &amp;lt;code&amp;gt;betrag&amp;lt;/code&amp;gt;. Die Operation hat keinen Rückgabetyp.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;-prüfeKontostand(in betrag: Betrag, in datum: Datum[0..1]):Boolean&amp;lt;/code&amp;gt;&lt;br /&gt;
|Eine private Methode &amp;lt;code&amp;gt;prüfeKontostand&amp;lt;/code&amp;gt;. Der zweite Parameter &amp;lt;code&amp;gt;datum&amp;lt;/code&amp;gt; ist &amp;#039;&amp;#039;optional&amp;#039;&amp;#039;, weil er die Multiplizität &amp;lt;code&amp;gt;0..1&amp;lt;/code&amp;gt; hat.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;listeBuchungen(von, bis): Buchung[*]{ordered}&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Eine Methode &amp;lt;code&amp;gt;listeBuchungen&amp;lt;/code&amp;gt; mit zwei Parametern. Der Rückgabetyp ist &amp;lt;code&amp;gt;Buchung&amp;lt;/code&amp;gt; und die Operation gibt eine beliebige Anzahl Buchungen in einer geordneten Liste zurück.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:UML-Spracheinheit]]&lt;/div&gt;</summary>
		<author><name>imported&gt;RoBri</name></author>
	</entry>
</feed>