Is there a way in the UML to express something like "virtual" use cases?

I am doing requirements analysis, so I am writing some use case diagrams. I'll try to clarify what I mean by virtual test case

with the following example:

I have a set of operations, such as { create

, read

, update

, delete

}. I would like to group them in a view virtual use case

, so I can later extend it and create a new use case with each operation. Something like:

  o
 -|- ----- ( basic operation ) <---- <<extends>> --- ( read )
 / \

      

Theory tells me that this is not true, as the extensions in the use cases must make changes to the basic flow described in the base use case. In my case, the use case is basic operation

empty of real meaning, so it has no associated workflow.

This can be useful for grouping actions based on a menu item:

File Operations = {Save, Save As, Print, Exit}

      

How would you express something like this?

+2


source to share


2 answers


Well, the UML specification allows for an abstract use case. You can use the <> keyword or italics. I would say that virtual and abstract are the same at the usage level, just like with classes. Using Case is a type of classifier in UML I think.

You can also use templates and create a sample usage template and require all instances to complete the create, read, update, and delete options that will need to be completed. You can still flag the thesis using a template to help clean this up. This is a more serious approach, fixed in the model, and not just a diagram. Literal Strings will give you a lot of flexibility, operations will require clause and provision of operation rather than desirability.



You can also look at extension points with use cases, but I know less about that.

0


source


It seems to me from your question that one of the main things you are trying to do is express a logical connection between multiple use cases. More specifically, you are trying to indicate that a number of use cases (for example, Save File, Print File, etc.) are functionally related (File Operations).



You can express such relationships using UML packages . For example, you can create a File Operations package that contains the appropriate use cases: Save File, Print File, and so on.

+1


source







All Articles