Lab 11
-
Read through the document Use Case Diagrams provided on the course web page on moodle for this week.
-
Using textual diagram deisgner such as plantUML-example-you-are-welcome or graphical designer such as, Visio, in the category Software and database, use the UML Use Case to develop a set of use cases based on your knowledge of how to use an ATM. The use cases should cover the main ATM functions, such as:
- withdraw cash,
- display balance,
- print statement and
- change pin.
Also do a description of each use case for the following categories: the actors involved, the inputs and the outputs, normal operation and exceptions. Examples of exceptions can be: invalid card, incorrect PIN, insufficient balance, etc. Use paper or Word to input this information.
-
Read the sub labs to understand further the different UML diagrams. Using a textual designer such as Mermaid or using a graphical designer such as Visio, draw the class and sequence diagrams from these two documents provided.
-
Develop a sequence diagram showing the interactions involved when a student registers for a course in a university. Courses may have limited enrolment, so the registration process must include checks that places are available. Assume that the student accesses an electronic course catalogue to find out about available courses. For example here is the one from the lecture Mermaid-Sequence-Diagram-Medical.
-
In your groups, start thinking and developing sequence diagrams and use case diagrams for the assignment.
-
Remember documentation is your friend and therefore you should read the documentation when you are stuck on just want to know how to do something.
-
Using textual designers provides a quick way to design diagrams.
-
Look at https://kroki.io/ which provides a unified API with support for BlockDiag (BlockDiag, SeqDiag, ActDiag, NwDiag, PacketDiag, RackDiag), BPMN, Bytefield, C4 (with PlantUML), Ditaa, Erd, Excalidraw, GraphViz, Mermaid, Nomnoml, Pikchr, PlantUML, Structurizr, SvgBob, UMLet, Vega, Vega-Lite, WaveDrom... and more to come
-
I have used mermaid, plantUML and Erd in the lecture.