这个Usecase图是否适用于我的项目计划

时间:2013-05-26 14:18:44

标签: ruby-on-rails uml use-case

我在构建应用程序之前正在使用用例图(在rails上使用ruby)。

关联模型(计划):

  • 学生has_one用户
  • 老师has_one用户
  • 用户所属的学生
  • 用户belongs_to老师
  • 用户has_many主题
  • 用户has_many评论
  • topic belongs_to user
  • 评论belongs_to user

每个模型的属性(计划):

我正在使用两个设计(我不使用cancan):一个用于学生身份验证的设计和其他用于教师身份验证的设计。

  • 学生:id,用户名,密码,姓名,nis
  • 老师:id,电子邮件,密码,姓名,nip
  • user:id,student_id,teacher_id(对于逻辑:如果学生has_one用户,teacher_id为空,如果教师has_one用户,则student_id为空)

这是用例的场景:

  • 作为user的学生a topica comment需要login student
  • 教师user使a topica comment成为所需主题login teacher

我做了一个用例,但我不确定这是真的。

enter image description here

问题:我应该将post topicleave comment加入login studentlogin teacher吗?如果这是错的,我该怎么做?

1 个答案:

答案 0 :(得分:1)

以下是您的陈述中的一些错误,imho:

  1. 此图表中的用户,教师和学生都是多余的。 是不是只有教师或学生应该使用的“功能”?这没有任何意义,但你必须绘制一个新的图表。

  2. “登录XX”绝不应表示为用例。关于这个主题有一个完整的讨论,但这是市场上的常识。用例必须代表对用户有价值的功能,并且登录不会给他带来任何价值。另一个常识是,用例应该适用于以下场景:

  3. 想象一下,用户的老板在下午中午笑着面对他,并问他:

    - “你现在在做什么?” 老板期待听到的答案不是“我正在登录”。它应该是:“我正在计算今天的订单量”(A)或“我正在生成月度报告”(B)。

    因此,这里会有2个用例:

    A =计算订单量 B =生成月度报告

    像这样......