学生管理系统建模.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
学生管理系统建模

学生管理系统建模 步骤 (1)分析并得出系统的主要参与者与主要用况,并画出系统的用况图。为所有的用况撰写脚本,将脚本放于单独的word文档中,并将文档与相应的用况相连接。 1)确定系统的使用者 通过对上面问题陈述的分析,我们可以发现系统的使用者主要有Student和Professor,同时还需要Registrar来维护这个系统。此外,由于需要打印Student列表,故需要参与者Billing System;由于需要自动维护课程目录的改变,故需要参与者Course Catalog。因此应该在用况视图中添加如图5-15所示的参与者。 2)确定系统的用况 通过对上面问题陈述的分析,我们可以知道参与者Student主要要做view report cards和register for courses两件工作,而参与者Professor主要要做Select Courses to Teach和Submit Grades两件工作。参与者Registrar要维护信息,即要做Maintain Professor Information和Maintain Student Information两件工作,此外Registrar还要控制注册何时结束,即要做Close Registration的工作。由于安全性的原因,要使用系统还需要首先做Login的工作。因此,应在用况视图中添加如图5-16所示用况。 3)用况图 通过上面的分析我们确定了系统中的参与者,用况以及它们之间的关系,根据这些关系,可以画出系统用况视图中的Main用况图,如图5-17所示: (2)实现关键用例。做出相应的顺序图和协作图,对于每一个协作,说明其静态结构和动态结构。 为了说明协作的动态结构,我们可以画出其顺序图与协作图。对于Login协作而言,由于只有一个边界类LoginForm与系统的使用者交互,而任何系统的使用者都必须登陆,故可画出其顺序图和协作图,如图5-18和图5-19所示。 上面我们通过构造Login协作实现了Login用况,这里再给出register for courses用况的顺序图和协作图,如图5-20所示。 图5-21 register for courses协作图 (3)做出系统的关键抽象,并设计相应的类和类图。 1)发现系统中的类 在设计时,可以从问题陈述中提炼出关键的概念,并将其抽象成相应的类。由上面的问题陈述可知,主要有Student和Professor使用系统,Student应该有Schedule,系统关键处理的是Course,而应该由CourseOffering来提供相应的Course。在系统之外还有遗留下来的CourseCatalog系统。 因此可以如下图所示抽象出这些关键概念,以及与之相关的一些概念。同时还可以绘制这些关键抽象的类图,如图5-22所示。 2)确定关键类的属性 以CourseOffering类的属性为例,由于实体类CourseOffering的属性指明了所提供课程的关键性质,故单独对其画出类图CourseOffering (attributes),如图5-23所示。 3)类图 针对每个关键类给出类图。以CourseOffering为例,由于实体类Schedule与实体类CourseOffering存在着主修与选修两种关联,而对于不同的关联存在不同的特征信息与处理,故对于这两个关联分别设置关联类ScheduleOfferingInfo与PrimaryScheduleOfferingInfob,用关联类的属性刻画关联的特征信息,而将关联的处理映射为关联类的操作。这里应特别注意的是对于不同的关联,CourseOffering扮演的角色以及多重性都不同。 根据上面的分析,画出CourseOffering关联类图,如图5-24所示。 在分析过程中,我们已经知道了实体类Schedule与实体类CourseOffering之间的主修与选修两种关联关系,对于不同的关联关系设置了关联类并画出了类图。现在,我们只需要对于分析中得出的类图作进一步完善,加入实体类Schedule的详细设计信息后,画出类图Schedule,如图5-25所示。 对于实体类Professor而言,由于它要给出所提供的课程,因此它与CourseOfferingList类有关联,且Professor在此关联中扮演instructor角色。故可画出类图Professor,如图5-26所示。 对于实体类Student而言,由于它要被分成Fulltime和Parttime两类,因此建立类Classification,并通过实体类Student对于类Classification的聚合来表现出Student所具有的分类特征。此外还须建立类Classification的子类FulltimeCla

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档