<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://w.arbores.tech/w/index.php?action=history&amp;feed=atom&amp;title=UML_class_diagram</id>
	<title>UML class diagram - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://w.arbores.tech/w/index.php?action=history&amp;feed=atom&amp;title=UML_class_diagram"/>
	<link rel="alternate" type="text/html" href="http://w.arbores.tech/w/index.php?title=UML_class_diagram&amp;action=history"/>
	<updated>2026-04-12T17:27:35Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.11</generator>
	<entry>
		<id>http://w.arbores.tech/w/index.php?title=UML_class_diagram&amp;diff=16579&amp;oldid=prev</id>
		<title>Daniel K. Schneider: Text replacement - &quot;$&quot; to &quot;
{{edutechwiki}}&quot;</title>
		<link rel="alternate" type="text/html" href="http://w.arbores.tech/w/index.php?title=UML_class_diagram&amp;diff=16579&amp;oldid=prev"/>
		<updated>2021-04-10T00:20:48Z</updated>

		<summary type="html">&lt;p&gt;Text replacement - &amp;quot;$&amp;quot; to &amp;quot; {{edutechwiki}}&amp;quot;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 02:20, 10 April 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l102&quot;&gt;Line 102:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 102:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category: Design methodologies]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category: Design methodologies]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category: UML]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category: UML]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{edutechwiki}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Daniel K. Schneider</name></author>
	</entry>
	<entry>
		<id>http://w.arbores.tech/w/index.php?title=UML_class_diagram&amp;diff=15011&amp;oldid=prev</id>
		<title>Daniel K. Schneider: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="http://w.arbores.tech/w/index.php?title=UML_class_diagram&amp;diff=15011&amp;oldid=prev"/>
		<updated>2021-04-09T22:18:10Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 00:18, 10 April 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Daniel K. Schneider</name></author>
	</entry>
	<entry>
		<id>http://w.arbores.tech/w/index.php?title=UML_class_diagram&amp;diff=15010&amp;oldid=prev</id>
		<title>Daniel K. Schneider: /* Books */</title>
		<link rel="alternate" type="text/html" href="http://w.arbores.tech/w/index.php?title=UML_class_diagram&amp;diff=15010&amp;oldid=prev"/>
		<updated>2008-10-07T20:10:57Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Books&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Stub}}&lt;br /&gt;
== Definition ==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;UML Class diagrams&amp;#039;&amp;#039;&amp;#039; are one kind of official diagram types of the [[Unified modeling language]] (UML). They describe the structure of a system.&lt;br /&gt;
&lt;br /&gt;
{{quotation|If someone were to come up to you in a dark alley and sy, &amp;quot;Psst, wanna see a UML diagram?&amp;quot; that diagram would probably be a class diagram.}}(Fowler, 1993:35).&lt;br /&gt;
&lt;br /&gt;
{{quotation|A &amp;#039;&amp;#039;&amp;#039;class diagram&amp;#039;&amp;#039;&amp;#039; describes the types of objects in the system and the various kinds of static relationships taht exist amoung them. Class diagrams also show the properties and oprations of a class and the constraints that apply to the way objects are connected. The UML uses the term &amp;#039;&amp;#039;&amp;#039;feature&amp;#039;&amp;#039;&amp;#039; as a general term that covers properties and oprations of a class.}} (Fowler, 1993:35).&lt;br /&gt;
&lt;br /&gt;
== Architecture ==&lt;br /&gt;
&lt;br /&gt;
Class diagrams are made with quite a complex &amp;quot;language&amp;quot;. &lt;br /&gt;
Here are some elements (I know I have to go over this - [[User:Daniel K. Schneider|Daniel K. Schneider]] 16:45, 5 June 2007 (MEST))&lt;br /&gt;
&lt;br /&gt;
; Classes&lt;br /&gt;
&lt;br /&gt;
* Classes are represented with boxes&lt;br /&gt;
* Represented by: a rectangle with one, two or three &amp;quot;fields&amp;quot;: classname, properties (attributes) and operations.&lt;br /&gt;
* Properties are structural elements of class. Now it get&amp;#039;s a little bit complicated. You can describe a property either with an attribute (i.e. within the class box) or with an association (see below).&lt;br /&gt;
&lt;br /&gt;
;Association&lt;br /&gt;
* A relationship between two classes or properties&lt;br /&gt;
* Represented by: a &amp;#039;&amp;#039;&amp;#039;solid&amp;#039;&amp;#039;&amp;#039; line, or if directional with an arrow directed from the source object to the target object, or if bidirectional with an arrow on both ends.&lt;br /&gt;
&lt;br /&gt;
;Aggregation &lt;br /&gt;
* A &amp;#039;&amp;#039;part-of&amp;#039;&amp;#039; relationship&lt;br /&gt;
* Represented by: a solid line, with an emtpy lozange at aggregation end and arror at member end&lt;br /&gt;
* Example: &amp;#039;&amp;#039;a learning object is part of an environment&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
; Generalization&lt;br /&gt;
* A &amp;#039;&amp;#039;is-a&amp;#039;&amp;#039; relationship&lt;br /&gt;
* Represented by: A solid line with a triangular arrow from specialized class to class&lt;br /&gt;
* Example: &amp;#039;&amp;#039;Learner&amp;#039;&amp;#039; is a &amp;#039;&amp;#039;role&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
;Composition&lt;br /&gt;
* Like aggregation but you can add more constraints.&lt;br /&gt;
* An instance of a class can be potentially a component of several classes, but can only be owned by one.&lt;br /&gt;
* Represented by: a solid line, with an filled lozange at aggregation end and arror at member end&lt;br /&gt;
&lt;br /&gt;
; Multiplicity&lt;br /&gt;
* of an association end is the number of possible instances of the class associated with a single instance of the other end.&lt;br /&gt;
* Represented on both ends by the following syntax&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Multiplicities&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Explanation&amp;lt;br/&amp;gt;&lt;br /&gt;
The notation &amp;lt;i&amp;gt;&amp;lt;b&amp;gt;n . . m&amp;lt;/b&amp;gt;&amp;lt;/i&amp;gt; indicates &amp;lt;i&amp;gt;&amp;lt;b&amp;gt;n&amp;lt;/b&amp;gt;&amp;lt;/i&amp;gt; to&amp;lt;i&amp;gt; &amp;lt;b&amp;gt;m&amp;lt;/b&amp;gt;&amp;lt;/i&amp;gt; instances.&lt;br /&gt;
&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;0..1&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;zero or one instance.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;0..*&amp;lt;/b&amp;gt;&amp;lt;i&amp;gt; &amp;amp;nbsp;or&amp;amp;nbsp; &amp;lt;/i&amp;gt;&amp;lt;b&amp;gt;*&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;no limit on the number of instances (including none).&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;1&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;exactly one instance&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;1..*&amp;lt;/b&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;at least one instance&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; More&lt;br /&gt;
* There is more (sorry)...&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
=== IMS Learning Design ===&lt;br /&gt;
&lt;br /&gt;
Here is the official [[UML]] Diagram that summarizes the [[IMS Learning Design]] educational modeling language:&lt;br /&gt;
&lt;br /&gt;
[[Image:imsld_infov1p03.gif|frame|none|UML diagram of IMS Learning Design]]&lt;br /&gt;
&lt;br /&gt;
Here is an annotated version. Blue boxes (roughly) give an idea of the relationships involved.&lt;br /&gt;
&lt;br /&gt;
[[Image:ims-ld-annotated-uml.png|frame|none|UML diagram of IMS Learning Design annotated with UML relationships]]&lt;br /&gt;
&lt;br /&gt;
Here is second try. Annotation is in red (blue boxes wouldn&amp;#039;t show well enough when I pasted this into a word processor)&lt;br /&gt;
[[Image:ims-ld-annotated-uml2.png|frame|none|UML diagram of IMS Learning Design annotated with UML relationships]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== On line tutorials ===&lt;br /&gt;
&lt;br /&gt;
* IMS Learning Design Information Model, Version 1.0 Final Specification, [http://www.imsglobal.org/learningdesign/ldv1p0/imsld_infov1p0.html HTML], retrieved 16:45, 5 June 2007 (MEST).&lt;br /&gt;
&lt;br /&gt;
* Randy Miller, [http://bdn.borland.com/article/0,1410,31863,00.html Practical UML: A Hands-On Introduction for Developers], Borland Developer network. (Short and excellent general UML tutorial).&lt;br /&gt;
&lt;br /&gt;
* Donald Bell, [http://www-128.ibm.com/developerworks/rational/library/769.html UML basics: An introduction to the Unified Modeling Language], IBM Developper Works / Rational Rose. (IBM has a lot of UML and use case tutorials, needs some searching skills)&lt;br /&gt;
&lt;br /&gt;
=== Books ===&lt;br /&gt;
&lt;br /&gt;
* Fowler Martin (1993). UML Distilled: A Brief Guide to the Standard Object Modeling Language, Third Edition. Addison-Wesley Professional. ISBN 0321193687 (good for quick reference and good enough if you just want to understand how to read UML diagrams).&lt;br /&gt;
&lt;br /&gt;
* Pilone, Dan and Neil Pitman (2005). UML 2.0 in a Nutshell, O&amp;#039;Reilly Media, ISBN 0596007957 (this is the best book [[User:Daniel K. Schneider|Daniel K. Schneider]] bought, better than the first edition).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category: Educational modeling languages]]&lt;br /&gt;
[[Category: Design methodologies]]&lt;br /&gt;
[[Category: UML]]&lt;/div&gt;</summary>
		<author><name>Daniel K. Schneider</name></author>
	</entry>
</feed>