嗯,我正在做序列图,当我发现某个函数可以是用户可能执行的完整过程的独立函数时,我感到困惑,它也可以是更大过程的子过程,比如
第一个进程:"historyClassRegistration(studentId)“
第二个过程:"allClassesRegistration(studentId)“
学生只能注册历史课
他还可以注册所有的类,其中包括"historyClassRegistration“进程
问题是:
我应该单独绘制"historyClassRegistration“流程及其子流程,然后在"allClassesRegistration”中重新绘制它的子流程,或者我该怎么办?
发布于 2012-03-01 10:55:47
我认为这可能取决于序列图试图演示的用例。
它还将取决于系统的结构。
如果我控制了设计,第一个操作可能就不存在了。被注册的类的类型似乎应该是一个参数,除非注册类的过程在不同的类之间是完全不同的。
如果您的图表显示一个学生注册了所有的课程,那么在student.registerForClass(class)
操作上就会有一个循环。
如果您的图要显示allClassesRegistration(studentId)
操作的内部执行,那么您可能会显示一个带有classRegister.register(studentID, Class)
之类的循环的图。
如果它专门显示一个学生注册了一门历史课,那么它实际上是一个使用class = history
调用student.registerForClass(class)
的场景。然后,您可能会显示有关学生注册的对象发生了什么情况的更多细节。
https://stackoverflow.com/questions/9441280
复制相似问题