UML use case: Difference between revisions
m (using an external editor) |
m (using an external editor) |
||
Line 11: | Line 11: | ||
Use cases are modeled with the [[Unified modeling language]] (UML). | Use cases are modeled with the [[Unified modeling language]] (UML). | ||
== | == Examples == | ||
=== Learning Java Basics === | |||
This example is from Hanspeter Heeb's (2001) MA thesis. It uses UML to model a learner activity in initial programming training. | This example is from Hanspeter Heeb's (2001) MA thesis. It uses UML to model a learner activity in initial programming training. | ||
Line 46: | Line 48: | ||
</tr> | </tr> | ||
</table> | </table> | ||
=== Koper's Learning Network === | |||
[[image:learning-networks-uml-koper.jpg|frame|none|Koper's General use case for learning networks]] | |||
== Links == | == Links == | ||
* [[Wikipedia:Unified_Modeling_Language]] | * [[Wikipedia:Unified_Modeling_Language]] | ||
* [[Wikipedia:Use case]] | * [[Wikipedia:Use case]] | ||
* Randy Miller, [http://bdn.borland.com/article/0,1410,31863,00.html Practical UML: A Hands-On Introduction for Developers], Borland Developer network. (This is a very short general UML tutorial). | * Randy Miller, [http://bdn.borland.com/article/0,1410,31863,00.html Practical UML: A Hands-On Introduction for Developers], Borland Developer network. (This is a very short general UML tutorial). | ||
* 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) | * 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) | ||
Line 57: | Line 67: | ||
* Heeb, Hanspeter, Roboworld Overcoming the Problem of Cognitive Load in Object-Oriented Programming by Microworlds, Mémoire DESS en Sciences et Technologies de l'Apprentisssage et de la Formation, TECFa, Université de Genève. [http://tecfa.unige.ch/staf/staf-d/heeb/mem/TOOLOP.zip Zip file] | * Heeb, Hanspeter, Roboworld Overcoming the Problem of Cognitive Load in Object-Oriented Programming by Microworlds, Mémoire DESS en Sciences et Technologies de l'Apprentisssage et de la Formation, TECFa, Université de Genève. [http://tecfa.unige.ch/staf/staf-d/heeb/mem/TOOLOP.zip Zip file] | ||
* Koper, R. (2004). Use of the Semantic Web to Solve Some Basic Problems in Education: Increase Flexible, Distributed Lifelong Learning, Decrease Teacher's Workload. Journal of Interactive Media in Education, 2004 (6). Special Issue on the Educational Semantic Web. ISSN:1365-893X [http://www-jime.open.ac.uk/2004/6] | |||
[[Category: technologies]] | [[Category: technologies]] | ||
[[Category: Design methodologies]] | [[Category: Design methodologies]] |
Revision as of 22:39, 4 June 2007
Definition
- Use case is a software engineering method to define requirements for a system. Its range of application is wide and not necessarily constrained to computer development.
According to the WikiPedia, “use case is a technique for capturing the potential requirements of a new system or software change. Each use case provides one or more scenarios that convey how the system should interact with the end user or another system to achieve a specific business goal. Use cases typically avoid technical jargon, preferring instead the language of the end user or domain expert. Use cases are often co-authored by Business Analysts and end users.”
Use case diagrams
Use cases are modeled with the Unified modeling language (UML).
Examples
Learning Java Basics
This example is from Hanspeter Heeb's (2001) MA thesis. It uses UML to model a learner activity in initial programming training.
(Heeb 2001:7)
The picture shows the difference in difficult writing a very simple program in a structural language (like Pascal) and a typed object-oriented language (like Java).
This diagram clearly shows the complexity of object-oriented programming. You do not understand the code of the most simple Java application or applet "Hello world!" as long as you do not know very complex concepts of object-oriented programming. The following table summarizing the diagram shows teacher that teachers have to be concerned about a very different set of concepts to be acquired and nicely demonstrates why one can't teach Java to typical educational technology students ;)-
In a procedural programming language, such as Pascal | In an object-oriented programming language, such as Java |
---|---|
|
|
Koper's Learning Network
Links
- Randy Miller, Practical UML: A Hands-On Introduction for Developers, Borland Developer network. (This is a very short general UML tutorial).
- Donald Bell, 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)
References
- Heeb, Hanspeter, Roboworld Overcoming the Problem of Cognitive Load in Object-Oriented Programming by Microworlds, Mémoire DESS en Sciences et Technologies de l'Apprentisssage et de la Formation, TECFa, Université de Genève. Zip file
- Koper, R. (2004). Use of the Semantic Web to Solve Some Basic Problems in Education: Increase Flexible, Distributed Lifelong Learning, Decrease Teacher's Workload. Journal of Interactive Media in Education, 2004 (6). Special Issue on the Educational Semantic Web. ISSN:1365-893X [1]