一、填空题
1、系统需求包括功能需求、 质量因素 和 设计约束 。
2、需求根据来源划分有三个层次:业务级需求、 用户级需求 和 开发级需求 。
3、业务用例是组织的 价值 体现,一般不会发生变化。
4、用例图由参与者 、用例 、边界 以及他们之间的关系构成,用例用 椭圆 表示。
5、活动图中的 泳道 将各个活动划分为不同的组,以此区分负责各个活动的对象。
6、活动图中的条件行为用 分支 和合并表达,都用 菱 形表示。
7、序列图中的要素主要有对象、消息和 生命线 组成。
8、用例图中的参与者分为主要参与者和 辅助参与者 。
9、用例和用例之间的关系包括扩展、 包含 和 泛化 。
10、类图中类的三要素为类名、 属性 和 操作 。
11、类图中最常见的关系有 关联 、泛化和聚合、组合。
12、类图中类之间的多重性关联有一对一、一对多。
13、系统需求分析的目标是发现系统的 能力需求 。
14、软件需求分析阶段的成果是 软件需求规格说明书 。
简答题
1、状态图的要素有哪些?
初始状态、最终状态、状态、转移、事件、动作和条件
2、软件的开发过程 模型有哪些?
瀑布式开发、增量式开发、演进式开发、敏捷开发
3、系统能力需求分析的主要过程有哪些?
确定组织、发现组织的业务用例、确定系统用例、描述系统用例规格
4、系统需求分析的主要工作有哪些?
系统能力需求分析、系统外部接口分析、系统内部接口分析、系统内部数据需求、系统质量因素分析、设计和构造约束分析
5、系统的质量因素主要包括哪些方面?
功能性、可靠性、易用性、效率、维护性、可移植性
6、设计约束主要有哪些?
业务环境约束、使用环境约束、构建环境约束、技术环境约束
7、UML模型中主要有哪些模型?
用例图、类图、活动图、状态图、序列图、包图、构件图、部署图
- 需求获取的主要方法有哪些?
观察法、体验法、问卷调查法、访谈法、单据分析法、报表分析法、需求调研会法。
- 系统规划的主要三个过程是什么,各阶段分别要做哪些工作?
系统规划的三个阶段是需求确定、整理需求、系统蓝图设计
(1)需求确定阶段需要将抽象的需求具体化,将自然语言描述的需求结构化,注意避免理解偏差,识别超出范围的需求和错误的需求
(2)整理需求阶段需求生成调研报告与业务流程图
(3)系统蓝图设计需要对项目进行价值分析,规划软件边界和工作方式。
10、实体关系有哪三种关系,数据库表的设计过程中一般有哪些范式?
实体关系有一对一、一对多、多对多。
数据库表设计中常见的范式有第一范式、第二范式、第三范式、BC范式。
- 界面设计一般包括哪些内容?
入口、功能主界面、表单布局、操作以及消息。
二、分析设计题
1. 图书管理系统功能性需求说明如下:
(1)图书管理系统能够为一定数量的借阅者提供服务。每个借阅者能够拥有唯一标识其存在的编号。图书馆向每一个借阅者发放图书证,其中包含每一个借阅者的编号和个人信息。提供的服务包括:提供查询图书信息、查询个人信息服务和预定图书服务等。
(2)当借阅者需要借阅图书、归还书籍时需要通过图书管理员进行,即借阅者不直接与系统交互,而是通过图书管理员充当借阅者的代理和系统交互。
(3)系统管理员主要负责系统的管理维护工作,包括对图书、数目、借阅者的添加、删除和修改。并且能够查询借阅者、图书和图书管理员的信息。
(4)可以通过图书的名称或图书的ISBN/ISSN号对图书进行查找。
回答下面问题:
1) 该系统中有哪些参与者?
借阅者 图书管理员 系统管理员
2) 确定该系统中的类,找出类之间的关系并画出类图
用户类(User)、用户角色类(Role)、图书类(Book)、预定类(Reserve)、借阅类(Loan)、书目类(Title)
类图
3) 画出语境“借阅者预定图书”的时序图
2、网络的普及带给了人们更多的学习途径,随之而来的管理远程网络教学的“远程网络教学系统”诞生了。“远程网络教学系统”的功能需求如下:
(1)学生登录网站后,可以浏览课件、查找课件、下载课件、观看教学视频。
(2)教师登录网站后,可以上传课件、上传教学视频、发布教学心得、查看教学心得、修改教学心得。
(3)系统管理员负责对网站页面的维护、审核不合法课件和不合法教学信息、批准用户注册。 1)学生需要登录“远程网络教学系统”后才能正常使用该系统的所有功能。如果忘记密码,可与通过“找回密码”功能恢复密码。请画出学生参与者的用例图。
2)教师如果忘记密码,可以通过“找回密码”功能找回密码。请画出教师参与者的用例图。
3、某网上选课系统的需求概述如下:
1. 系统采用B/S模式;
2. 该系统供学期开课前学生网上选课之用;
3. 课程的管理,如“添加课程”、“删除课程”等都由系统管理员来负责;
4. 学生可使用该系统完成“选择课程”等功能;
5. 任课教师可以使用该系统查看选课的学生。 现有关于该系统模型的部分内容: 1. 系统中的参与者(Actor)有4类:管理员(Administrator)、学生(Student)、教师(Teacher)
及数据库(Database)
2. 为该系统设计的类(class)共有8个:
(1) 系统管理员类(Administrator),对现实世界系统管理员的抽象; (2) 学生类(Student),对现实世界中与该系统相关的学生的抽象; (3) 教师类(Teacher),对现实世界中与该系统相关的教师的抽象; (4) People类 ,前3个类的父类 (5) 数据库类(Database),提供和数据库相关的功能,对数据库中的相关数据进行操作; (6) 课程类(Course),对现实世界中与该系统相关课程的抽象; (7) 界面对象类(FormObject),用于生成系统的界面对象 (8) 控制对象类(ControlObject),负责系统的业务逻辑功能,如判断用户是否合法、添加的课程是否合理等; 根据以上的陈述完成以下题目:
二、分析该系统应该存在哪些用例?
三、画出网上选课系统的用例图。
四、下面是“添加课程”用例的事件流,用活动图为其建模。
(1) 管理员选择进入管理界面,用例开始。
(2) 系统提示输入管理员密码。
(3) 管理员输入密码。
(4) 系统验证密码。 A1:密码错误
(5) 进入管理界面,系统显示目前所建立的全部课程信息。
(6) 管理员选择添加课程。
(7) 系统提示输入新课程信息。
(8) 管理员输入信息。
(9) 系统验证是否和已有课程冲突。 A2:有冲突
(10) 系统添加新课程,提示课程添加成功。
(11) 系统重新进入管理主界面,显示所有课程。
(12) 用例结束。
A1:密码错误
(1) 系统提示再次输入。
(2) 用户确认。
(3) 三次错误,拒绝再次访问。
(4) 否则进入添加课程事件流第5步。
A2:有冲突
(1) 系统提示冲突,显示冲突课程信息。
(2) 用户重新输入。
(3) 继续验证直到无冲突。
(4) 进入添加课程事件流第10步。
五、画出网上选课系统的类图。
六、针对系统中Course类对象的状态变化,建立Course类对象的状态图。
七、画出网上选课系统的“添加课程”用例的顺序图。