试题二 (25 分)
阅读以下关于软件系统建模的叙述,在答题纸上回答问题1至问题3。
[说明]
某软件公司计划开发一套教学管理系统,用于为高校提供教学管理服务。该教学管理系统基本的需求包括:
(1)系统用户必须成功登录到系统后才能使用系统的各项功能服务。
(2)管理员(Registrar)使用该系统管理学校(University)、系(Department)、教师(Lecturer)、学生(Student)和课程(Course)等教学基础信息。
(3)学生使用系统选择并注册课程,必须通过所选课程的考试才能获得学分;如果考试不及格,必须参加补考,通过后才能获得课程学分。
(4) 教师使用该系统选择所要教的课程,并从系统获得选择该课程的学生名单。
(5)管理员使用系统生成课程课表,维护系统所需的有关课程、学生和教师的信息。
(6)每个月到了月底,系统会通过打印机打印学生的考勤信息
项目组经过分析和讨论,决定采用面向对象开发技术对系统各项需求建模。
[问题1](7分)
用例建模用来描述待开发系统的功能需求,主要元素是用例和参与者。请根据题目所述需求说明教学服务系统中有哪些参与者。
参考答案:
参与者:学生、教师、管理员、时间、打印机。
[问题2](7分)
用例是对系统行为的动态描述,用例获取是需求分析阶段的主要任务之一。请指出在面向对象系统建模中,用例之间的关系有哪几种类型?对题目所述教学服务系统的需求建模时,“登录系统”用例与“注册课程”用例之间、“参加考试”用例与“参加补考”用例之间的关系分别属于哪种类型?
参考答案:
用例之间的关系有包含和扩展。
“登录系统”用例与“注册课程”用例之间的关系为包含关系“参加考试”用例与“参加补考”用例之间的关系为扩展关系
[问题3](11分)
类图主要用来描述系统的静态结构,是组件图和配置图的基础。请指出在面向对象系统建模中,类之间的关系有哪几种类型?对题目所述教学服务系统的需求建模时,类 University 与类 Student之间、类University 和类 Department之间、类Student 和类Course 之间的关系分别属于哪种类型?
参考答案:
类之间的关系包括:关联、聚合、组合、依赖、泛化。类University与类Student 之间的关系是聚合关系。类University与类Department 之间的关系是组合关系类,Student 与类Course 之间的关系是关联关系