软件需求分析期末复习题【包含答案】(完结版)_软件需求分析与设计期末-程序员宅基地

技术标签: 软件工程 期末复习  软件需求  


今日更新内容:
核心基础知识:4项
综合题:新增两个

提示:快速查询相关知识点快捷键【Ctrl】+【F】,输入查询内容即可

一、核心基础知识

1、绪论

  1. 软件需求分类:功能需求、性能需求、质量属性、对外接口、约束
  2. 软件生命周期:同任何事物一样,一个软件产品或软件系统也要经历孕育、诞生、成长、成熟、衰亡等阶段,从软件的产生直到报废或停止使用的时间周期,一般称为软件生命周期或者软件生存周期

在这里插入图片描述

  1. 需求分析:从用户提出的需求出发,挖掘用户内心真正的目标,并转为为产品需求的过程
    在这里插入图片描述

  2. 软件需求包括三个不同的层次—业务需求、用户需求和功能需求—也包括非功能需求
    业务需求( business requirement) 描述组织(发起方)为什么要执行系统(希望获得的业务收益),其关注点在于组织有哪些业务目标==>VSD/MRD
    用户需求(user requirement)描述用户使用产品必须完成的目标和任务,并且这个产品要能够为人提供价值,还包括对用户满意度最为关键的产品特性或特征的描述==>URD(用例、用户故事、事件响应表)
    功能需求(functional requirement)描述产品在特定条件下所展示出来的行为,主要描述开发人员需要实现的功能以便用户能够完成自已的任务(用户需求),进而满足业务需求==>SRS/PRD

  3. 需求工程过程是系统开发当中需求开发活动的集成,它的模版是产生一个能够在用户环境下解决用户业务问题的系统方案。
    在这里插入图片描述

  4. 需求获取的来源:涉众、硬数据、重要文档、相关产品、相关技术标准和法规

  5. 需求获取的方法:传统方法(问卷调查,面谈,硬数据分析,文档分析)、集体获取方法(头脑风暴,专题讨论会)、原型、模型驱动方法(面向目标,基于场景,基于用例)、认知方法(任务分析,协议分析)、基于上下文的方法(观察,民族志,话语分析)
    【常用基于用例/场景模型、面谈、原型、观察、文档分析】

  6. 需求获取的过程:收集 、 发现 、 提炼 、 和 定义 需求

  7. 需求获取的结果: 项目前景和范围文档、用例文档

  8. 问题域与解系统
    这些实体和状态构成了问题解决的基本范围称为该问题的问题域(Problem Domain )
    软件系统通过影响问题域,能够帮助人们解决问题,称为解系统
    在这里插入图片描述

  9. 需求的分类方式
    功能需求(业务需求、用户需求、功能需求、质量属性)
    性能需求(速度、容量、吞吐量、负载、实时性)
    质量属性(可靠性(容错性,可恢复性,成熟性,依从性)、可用性、安全性、可移植性、可维护性、易用性(可理解性,可学习性,可操作性,吸引性,依从性)、功能性、效率(时间,资源,依从性))
    对外接口(硬件接口、软件接口、数据库接口)
    约束(编程语言)
    系统需求(硬件需求、软件需求)
    在这里插入图片描述
    业务需求示例:
    · “把机场的柜台工作人员成本降低25%。”
    · 人工管理化学品库存成本太高,效率底下,因此希望此系统运行第一年能将化工品采购费用降低25%。
    · 希望将80%化学品订单的订购时间将为10分钟。
    · 在六个月内,完全符合政府所要求的使用和处理报告的法规。
    . “在6个月内将西南区域内的市场份额提升5个百分点。”
    用户需求示例:
    · 作为一名乘客,我想办理登记手续,以便能够登机。·我需要为包裹打印邮寄标签。
    · 作为一名药剂师,我想申请一种化学品,这样我就可以进行实验。
    · 作为一名药剂师,我想从化学品库房申请化学品,这样我就可以立即使用它。
    · 作为一名药剂师,我想从供应商申请化学品,因为我不相信化学品库房里可用样品单纯度。
    系统需求示例:
    · 乘客应当能够随时打印自己已经办好登机手续的所有航段的登机牌。
    · 如果乘客没有指定座位偏好,航班预定系统应当为它分配。
    · 用户必须要能够对项目列表按名称正向和反向排序。
    · 如果压力超过40.0psi,高压警报灯就应当启动。

  10. 优秀需求的特性:完整性、正确性、精确性、可行性、必要性、无歧义、可验证

  11. 常见的需求错误:需求并没有反映用户的真实需要、模糊和歧义的需求、明显的信息遗漏、不切实际的期望、不必要的需求

2、确定项目前景与范围

  1. 问题分析的过程
    在这里插入图片描述
  2. 问题分析的步骤:
    ① 获取问题
    ② 明确问题
    ③ 发现业务需求
    ④ 定义问题解决方案及系统特性
  3. 系统边界的常用技术描述手段:系统用例图(面向对象方法)和上下文图(结构化方法)
    在这里插入图片描述在这里插入图片描述

3、涉众分析与硬数据采集

  1. 涉众分析就是为软件系统寻找并理解关键涉众的过程
  2. 涉众分析的过程:识别、描述、评估、选择
    在这里插入图片描述
  3. 涉众优先级评估:基于涉众特征进行评估
    在这里插入图片描述
  4. 硬数据类型:定量硬数据(数据搜集表格,统计报表)、定性硬数据(整个组织的描述文档,业务指导文档,业务备忘)
  5. 硬数据采样方法:
    在这里插入图片描述
    在这里插入图片描述
  6. 采样方法:随机抽样、分层抽样

4、基于用例/场景展开用户需求获取

  1. 面谈:在希望得到丰富(具有一定深度和广度)信息时,开放式问题比较合适
    在这里插入图片描述
  2. 面谈问题的结构:金字塔、漏斗型、菱形

在这里插入图片描述

  1. 问卷调查:确定必须收集什么事实和观点以及你应该从谁那里收集。如果对象人群的数量很大,考虑使用一个较小的人群,随机选择一组回答者

  2. 头脑风暴:鼓励参与者在无约束的环境下进行某些问题的自由思考和自由讨论,以产生新的想法

  3. 采样观察:对频繁发生事件取代表性事件进行观察

  4. 民族志:确定管理海量数据的应对策略

  5. 基于场景的需求获取方法:场景/Scenario,具有重点描述真实世界的特征,它利用情景、行为者之间的交互、事件随时间的演化等方式来叙述性的描述系统的使用

  6. 场景法的作用:组织需求获取得到的信息、帮助进行详细的需求分析、结合面向目标的方法,指导需求获取活动的开展

  7. 用例建模
    参与者: 表示一个系统用户,也就是与应用程序进行交互的用户、组织或者外部系统。用一个小人表示
    用例: 表示的是对系统提供给的功能、服务的一种描述。用椭圆表示
    关系: 用例图中的关系有四种:关联(参与者与用例之间)、泛化(指向父用例)、包含(指向被包含的用例)、扩展(指向基用例)
    系统边界: 系统边界是指系统与系统之间的界限。用方形框+系统名称表示
    在这里插入图片描述在这里插入图片描述
    用例模版案例
    在这里插入图片描述

  8. 利用原型的好处:
    ① 及时、有力的响应用户需求的变化;
    ② 帮助控制不完整需求所带来的风险;
    ③ 可以将一个大的难以处理的开发过程细分成一些更小更容易处理的步骤
    ④ 提高用户在软件开发中的参与程度。
    总之原型是软件开发当中消除不确定性风险的有效工具,是一种有效的需求获取方法

  9. 原型的类别按使用方式分类
    ① 演示原型:启动项目阶段
    ② 严格意义上的原型:分析需求阶段
    ③ 试验原型:构建系统阶段
    ④ 引示系统原型:系统开发的各个阶段
    ⑤ 抛弃式原型(探索式,实验式):花费最小的代价,争取最快的速度
    ⑥ 演化式原型:被用于处理清晰的需求、规格说明和技术方案

  10. 原型的类别按构造技术分类
    水平原型方法:仅仅实现选定功能所有层次中的某些特定层次
    垂直原型方法:会触及到选定功能实现的所有层次

  11. 原型方法过程
    在这里插入图片描述

  12. 需求分析的根本任务:
    ① 建立分析模型
    ② 建立解决方案

  13. 常用的需求分析技术
    ① 结构化技术(SA)
          a. 数据建模:实体关系图ERD
          b. 过程建模:数据流图DFD、上下文图CD、微规格说明、数据字典DD
          c. 行为建模:状态图、矩阵
          d. 过程/数据关系建模:功能实体矩阵
          e. 信息工程方法:功能分解图、过程依赖图
    ② 面向对象技术(OOA
          a. 用例图
          b. 类图
          c. 交互图(顺序图、通信图)
          d. 活动图
          e. 对象约束语言
          f. 状态图

5、过程建模(DFD)

  1. 数据流图(Data Flow Diagram - DFD)是一种图形化技术,它描绘信息流数据输入移动到输出的过程中所经受的变换。
  2. 数据流图的4种基本元素:
    外部实体(矩形):(名词)处于待构建系统之外的人、组织、设备或者其他软件系统
    过程(圆形):(动词)指施加于数据的动作或者行为,它们使得数据发生变化,必须有输入,也必须有输出,而且输入数据集和输出数据集应该存在差异
    数据流(——):(名词)指数据的运动,它是系统与其环境之间或者系统内两个过程之间的通信形式,数据流是必须和过程产生关联的,它要么是过程的数据输入,要么是过程的数据输出
    数据存储(=):(名词)软件系统需要在内部收集、保存,以供日后使用的数据集合
    在这里插入图片描述在这里插入图片描述
  3. 数据流图的层次结构
    ① 上下文图
    ② 0层图
    ③ n层图(n>0)
  4. 上下文图:将整个系统看做是一个过程,这个过程实现系统的所有功能,是系统功能的最高抽象,存在且仅存在一个过程,表示整个系统;需要表示出所有和系统交互的外部实体,并描述交互的数据流,包括系统输入和系统输出

在这里插入图片描述
5. 0层图:整个系统的功能概图
在这里插入图片描述
6. n层图:对0层图的过程分解产生的子图,过程分解是可以持续进行的,直至最终产生的子图都是原始DFD图
在这里插入图片描述

  1. 数据流图是分层次的,采取自顶向下逐层分解的办法,顶层数据流程图只有一张,它说明了系统的总的处理功能、输入和输出。
    通常在编号之首冠以字母,用以表示不同的元素。可以用Р表示处理D表示数据流F表示数据存储S表示外部实体

  2. 微规格说明是用于描述最低层次的原始过程的处理逻辑,主要包含的技术有:
    1.结构化英语/伪码
    2.行为图
    3.决策表
    4.决策树

  3. 数据字典是一个储存库,包含软件使用和产生的所有数据对象的描述,包括的项目有数据项、数据结构、数据流、数据存储、处理逻辑和外部实体

  4. 数据项又称数据元素,是具有独立逻辑含义的最小数据单位

  5. 模块结构图-功能分解图是在一个图内自上至下的集中显示系统的功能分解结构
    在这里插入图片描述

  6. 模块结构图-过程依赖图是描述功能和过程之间的依赖关系,包含数据依赖关系、资源依赖关系、约束依赖关系
    在这里插入图片描述

6、数据建模(ERD)

  1. 数据模型是描述数据的定义、结构和关系等特性的模型

  2. 数据建模(实体关系模型 ERD - Entity Relationship Diagram) 是建立数据模型的过程,这里ERD 不是数据库设计 而是从 最终用户,从业务的角度对数据需求进行分析

  3. 实体关系模型ERD的基本元素:
    实体:具有相同特征和属性的实例集的类别描述
    属性:实体的特征,不是数据
    关系:存在于一个或多个实体之间的自然业务联系;关系中的度数是指参与关系的实体数量;关系中的基数是指关系的约束,最大基数是键约束、最小基数是参与约束

  4. 实体关系模型ERD有两种表示方法:
    第一种:Peter Chen表示法
    在这里插入图片描述
    第二种:James Martin 表示法a

  5. ERD建模步骤:【例题:ERD建模:研讨活动】
    ① 辨识实体
    ② 确定实体标识符(主键)
    ③ 建立实体之间的关系
    ④ 添加实体的属性和关系的基数

7、面向对象建模(UML)

  1. 面向对象建模:一种用于辨识系统环境中对象及这些对象之间关系的技术。

  2. 面向对象建模-UML 包含对象模型、用例模型、行为模型、对象约束语言OCL

  3. 对象模型-对象
    对象是指在一个应用当中具有明确角色独立确认实体
    每个对象都要包含标识(唯一标识自己)、状态(属性)、行为(采取的行动)
    常见的对象:外部实体、具体事物、角色、组织单位、地点等

  4. 对象模型-链接
    链接是对象之间的物理或业务联系,通常是单向的,也有双向
    可见性举例:a获取b的可见性的途径有以下几种
    ① b是全局对象,它对系统内的所有其他对象都是可见的;
    ② b是a的一部分;
    ③ b是被a 创建 的;
    ④ b的引用被作为消息的一部分传递给了a

  5. 对象模型-类
    类是共享相同属性行为对象的集合,抽象描述称为接口( lnterface ),生成模板称为实现( lmplementation )

  6. 对象模型-关联
    关联是类对其对象实例之间的无数潜在关系的描述

  7. 对象模型-继承
    如果一个类A继承了对象B,那么A就自然具有B的全部属性和服务,同时A也会拥有一些自己特有的属性和服务,这些特有部分是B所不具备

  8. 对象模型-多态
    一个对象在相似情景下表现出多个不同形态,或者多个对象在同一情景中表现出相同形态的现象
    比如:重载、泛型

  9. 领域模型描述现实世界的类以及他们之间的相互关系。

  10. 领域模型的创建步骤:【例题:领域模型:自动取款机系统】
    ① 寻找类与对象:物理实体、角色、事件、作用、概念
    ② 确定关联
    ③ 划分主题
    ④ 确定对象和连接的属性
    ⑤ 使用继承组织、简化类
    ⑥ 迭代并细化模型(反复修改)

  11. 用例模型
    用例模型就是以用例为基本单位建立的一个系统功能展示模型,它是系统所有用例的集合,以统一、图形化方式展示系统的功能和行为特性,基本元素包括:用例、参与者、关系、系统边界。
    在这里插入图片描述

  12. 行为模型包含如下内容:
    ① 交互图:顺序图、通信图、系统顺序图
    ② 活动图
    ③ 状态图

  13. 行为模型-交互图
    交互图中的每一个交互都描述了环境中的对象为了实现某个目标而执行的一系列消息交换。
    顺序图(Sequence Diagram)
    在这里插入图片描述
    通信图(Communication Diagram)
    在这里插入图片描述
    系统顺序图:将整个系统看作一个黑箱的对象,强调外部参与者和系统的交互行为,重点展示系统级事件
    在这里插入图片描述

  14. 行为模型-状态图
    罗列出系统所有可能的状态,并发现所有有效的外部事件,那么就能够从状态转移的角度完整的表达系统的所有行为
    在这里插入图片描述

  15. 行为模型-活动图
    以“流”(控制流和数据流)处理为侧重点描述系统的行为
    在这里插入图片描述

8、需求规格说明

  1. 需求规格说明文档的作用
    ① 更好的传递软件系统的需求信息解决方案给所有的开发者
    ② 作为项目开发活动的一个重要依据
    ③ 发现和减少可能的需求错误,减少项目的返工,降低项目的工作
  2. 需求规格说明文档的手段:
    ① 非形式化(自然语言、限制性文本)
    ② 半形式化(结构化文本伪码/结构化英语、模型语言图、表…(调控云软件集成方案、设备状态切换)
    ③ 形式化(形式化语言数学语言:BNF,Z…
  3. 模版
    在这里插入图片描述
  4. 优秀需求规格说明文档的特性
    完备性、一致性、可跟踪、可修改、根据重要性和稳定性分级

9、需求验证

  1. 验证与确认的概念
    需求验证:需求集是正确的、完备的和一致的、是可行的
    需求确认:每一条需求都是符合用户原意的
    系统验证:系统能够在预期的环境中正确的执行设定的功能
    系统确认:建立的系统是符合系统需求和系统设计的
  2. 需求验证是专指在需求规格说明完成之后,对需求规格说明文档进行的验证活动
  3. 需求验证方法
    ① 评审
    ② 原型与模拟
    ③ 开发测试用例
    ④ 用户手册编制
    ⑤ 利用跟踪关系
    ⑥ 自动化分析

二、复习题

1、选择题(20%)

1.ERD中关系的度数(Degree)是指参与关系的实体数量,是度量关系()的一个指标。
A、模型
B、复杂度
C、精确度
D、属性值
答案:B

2.下列()属于定量硬数据?
A、工作手册
B、规章手册
C、统计报表
D、备忘录
答案:C

3.用于描述数据的处理过程
A、数据字典
B、决策树
C、决策表
D、数据流图
答案:D

4.项目的前景和范围文档、用户需求文档都被视为属于(),重点都是用户的现实世界。
A、开发文档
B、需求文档
C、前景文档
D、用户文档
答案:D

5.使用面向问题的技术对问题世界的建模就被称为()需求阶段的分析。
A、前期
B、中期
C、后期
D、全过程
答案:A

6.场景的内容是指场景所表达的知识类型。它被分为6个不同的方面。下列()不是场景的内容。
A、主要关注点
B、环境范围
C、目的
D、抽象层次
答案:C

7.按照使用方式进行分类,原型可分为:演示原型、、试验原型和引示系统原型。
A、非操作原型
B、系列首发原型
C、选定特征原型
D、严格意义上的原型
答案:D

8.现实世界中的()构成了问题解决的基本范围,称为该问题的问题域。【】
A、属性和状态
B、实体和状态
C、实体和操作
D、状态和操作
答案:B

9.需求分析仅仅需要描述解决方案不需要探索实现细节的情况下。分析模型又是()的,尤为适用。【】
A、形式化
B、半形式化
C、结构化
D、非结构化
答案:B

10.ERD中属性是实体的特征,不是数据。属性会以一定的形式存在,这种存在才是数据,被称为属性的()。
A、域
B、实例
C、说明
D、值
答案:D

11.下列()是组织场景时可用的场景关系
A、合取关系
B、定性关系
C、定量关系
D、演绎关系
答案:A

12.按照开发方法进行分类,原型可分为:演化式原型和抛弃式原型,其中抛弃式原型又被细分为()。
A、演示原型和试验原型
B、系列首发原型和选定特征原型
C、探索式原型和实验式原型
D、样板原型和纸上向导原型
答案:C

13.因为数据存储是系统内部的功能实现,所以在将系统视为黑盒的情况下,上下文图中不会出现()。【】
A、实体
B、数据存储实例
C、需求信息
D、过程处理
答案:B

14.比较容易发现的涉众称为初始涉众,又称为(),通常包括客户、管理者和相关的投资者。
A、关键涉众
B、涉众基线
C、普通涉众
D、一般涉众
答案:B

15.以下(()不是情景性的重要性质?
A、突现
B、涉身
C、完善
D、模糊
答案:C

16.概念实体是一种抽象概念,不考虑概念背后的物理存在,所以通常不包含与之相关联的其他()。【】
A、模型
B、特征(即属性)
c、关系
D、处理
答案:B

17.外观是指场景被表达出来时的效果,主要有三种类型。
A、静态、动态和结构化
B、线性、非线性和交互
C、静态、动态和动静结合
D、静态、动态和交互
答案: D

18.下面哪个UML视图是描述一个对象的生命周期
A、类图
B、状态图
C、协作图
D、顺序
答案:B

19.下列()不是用例模型中的关系?
A、属性
B、关联
c、泛化
D、包含
答案:A

20.在UML的顺序图中,通常由左向右分层排列各个对象,正确的排列方法是
A、执行者角色 控制类 用户接口 业务层 后台数据库
B、执行者角色 用户接口 控制类 业务层 后台数据库
C、执行者角色 控制类 用户接口 后台数据库 业务层
D、执行者角色 用户接口 业务层 控制类 后台数据库
答案: A

21.需求工程利用场景目的可能有三种:即: () 。【】
A、描述、探索和解释
B、描述、表示和探索
C、描述、探索和发现
D、表示、解释和证明
答案: A

22.抽象通过强调本质的特征,() 了问题的复杂性。
A、调整
B、避免
C、增加
D、减少
答案: D

23.如果在最终的物件(FinalArtifact)产生之前,一个中间物件(MediateArtifact)用来在一定广度和深度范围内表现这个最终物件,那么这个中间物件就被认为是最终物件在该广度和深度上的()。
A、模拟
B、构造
C、原型
D、模型
答案: C

24.在 UML中,接口有几种表达方式
A、2
B、4
C、6
D、8
答案:A

25.使用解释性场景在需求分析时能够(),或者被用于进行需求的验证
A、提高模型的复杂性
B、降低模型的复杂性
C、提高预见性
D、降低编程量
答案:B

26.在实现ERD过程模型同步的技术中,()是一种较为常见的技术。
A、用例图
B、数据流图
C、功能/实体矩阵
D、微规格说明
答案:C

27.OR链接是将一个父目标连接到一系列细化的子目标,意思是如果能够满足所有细化子目标中的(),那么将足以满足父目标
A、每一个
B、任何一个
C、特定的
D、某一个
答案:B

28.软件需求规格说明书的内容不应包括对()的描述。
A、主要功能
B、算法的详细过程
C、用户界面及运行环境
D、软件的性能
答案:B

29.下列()不是 场景方法 在需求工程中的应用。【】
A、帮助进行详细的需求分析
B、编写系统需求规格说明
C、结合面向目标的方法,指导需求获取活动的开展
D、组织需求获取得到的信息
答案:B

30.场景的形式是指场景的表达模式,从形式上分为两个方面:【】
A、内容和目的
B、内容和生命周期
C、描述和外观
D、描述和目的
答案:C

31.顺序图由类角色,生命线,激活期和()组成
A、关系
B、消息
C、用例
D、实体
答案:B

32.功能目标可以分为()。【】
A、安全目标和可用性目
B、满足型目标和信息型目标
C、软目标和硬目标
D、维护目标和实现目标
答案:B

33.OMT 方法是由下面哪位科学家提出的【】
A、Booch
B、Rumbaugh
C、Coad
D、Jacobson
答案:B

34.UM的全称是
A、UnifyModeling Language
B、UnifiedModeling Language
C、UnifiedModem Language
D、UnifiedMaking Language
答案:B

35.下列()属于定性硬数据?
A、数据收集表
B、月报表
C、年报表
D、规章手册
答案:D

36.多对象UML哪个视图中的概念(
A、类图
B、状态图
C、协作图
D、组件图
答案:C

37.软件需求分析阶段的工作,可以分成以下四个方面:对问题的识别、分析与综合、制定规格说明以及()。
A、总结
B、实践性报告
C、需求分析评审
D、以上答案都不正确
答案:C

38.当用户无法完成主动的信息告知,或与需求工程师之间的语言交流无法产生有效的结果时,有必要采用() 。
A、民族志
B、观察法
C、话语分析
D、任务分析
答案:B

39.面向目标方法目标分析阶段的主要任务是 。【】
A、获取目标
B、确定解决方案
C、建立目标模型
D、发现问题和缺陷
答案:C

40.系统边界是指一个系统所包含的系统成分与系统外事物的分界线。用例模型使用一个()来表示系统边界,以显示系统的上下文环境。
A、圆形框
B、菱形框
C、虚线框
D、矩形框
答案:D

41.按照功能特征进行分类,原型可分为: ()、非操作原型、系列首发原型和选定特征原型。
A、拼凑原型
B、样板原型
C、纸上向导原型
D、严格意义上的原型
答案:A

42.在类图中,哪种关系表达总体与局部的关系()
A、泛化
B、聚合
C、依赖
D、实现
答案:B

43.功能需求通常分为三个层次,即业务需求、用户需求和 .
A、硬件需求
B、软件需求
C、质量属性
D、系统需求
答案:D

44.UML使用的行为模型有三种,即:()。【】
A、交互图、状态图和顺序图
B、顺序图、通信图和时间图
C、交互图、状态图和活动图
D、交互概述图、通信图和时间图
答案:C

45.执行者(Actor)与用例之间的关系是
A、包含关系
B、泛化关系
C、关联关系
D、扩展关系
答案:C

46.风险管理要素包括哪项
A、风险评价
B、风险避免
C、风险控制
D、以上都是
答案:D

47.面向对象技术中,对象是类的实例。对象三种成份: ()、属性和方法(或操作)。
A、标识
B、规则
C、封装
D、消息
答案:A

48.与其他的场景方法相比,用例最大的特点是采用了()的描述方式。
A、静态非结构化文本
B、动态非结构化文本
C、静态结构化文本
D、动态结构化文本
答案:C

49.使用面向解系统的技术对软件系统解决方案的描述称为()需求阶段的分析
A、前期
B、中期
C、后期
D、全过程
答案:C

50.UML关联的多重度是指0
A、一个类有多个方法被另一个类调用
B、一个类的实类能够与另一个类的多个实类相关联
C、一个类的某个方法被另一个类调用的次数
D、两个类所具有的相同的方法和属性
答案:B

51.需求分析活动的一个重要任务是进行(),明确用户需求的隐含信息,展开为明确的对软件系统的行为期望,即系统需求。
A、需求整理
B、需求细化
C、需求获取
D、需求分析
答案:B

52.ERD关系的基数分为最大基数和最小基数。最大基数又被称为()。【】
A、键约束
B、参与约束
C、自然约束
D、一般约束
答案:A

53.用例之间的关系主要有(三种。
A、包含、扩展和简化
B、合取、析取和扩展
C、包含、多态和继承
D、包含、扩展和泛化
答案:D

54.上下文图描述系统与环境中外部实体之间的界限和联系。它从现实世界的角度说明了系统的(),并确定了所有的输入和输出。
A、环境与外观
B、边界和联系
C、边界和环境
D、输入和输出
答案:C

55.AND链接将一个父目标连接到一系列细化的子目标,意思是如果能够满足所有细化的子目标,那么将()父目标。
A、无法确定
B、阻碍
C、不能满足
D、足以满足
答案:D

56.下列选项中,()不是目标模型中使用的其他模型元素。【】
A、行为
B、场景
C、操作
D、概念
答案:D

57.什么概念被认为是第二代面向对象技术的标志()【】
A、用例
B、UML语言
C、活动图
D、组件图
答案:A

58.需求分析最终结果是产生()。
A、项目开发计划
B、可行性分析报告
C、需求规格说明书
D、设计说明书
答案:C

59.常用的 动态分析方法 不包括以下哪种
A、状态迁移图
B、层次方框图
C、时序图
D、Petri 网
答案:B

60.在ERD建模中,实体通常所指的就是()。【】
A、逻辑实体
B、概念实体
C、物理实体
D、进程实体
答案:A

61.系统需求规格说明文档、软件需求规格说明文档、硬件需求规格说明文档、接口需求规格说明文档和人机交互文档一起被用于系统开发的目的,都被认为是()
A、开发文档
B、需求文档
C、过程文档
D、用户文档
答案:A

62.()是结构化分析方法的核心技术,它表明系统的输入、处理、存储和输出,以及它们如何在一起协调工作。
A、数据流图DFD
B、实体联系图ERD
C、状态转换图
D、上下文图
答案:A

63.结构化、信息工程和面向对象三种方法学下的需求分析技术都是()的。
A、面向问题域
B、面向解系统
C、面向设计
D、面向需求
答案:B

64.需求分析中,开发人员要从用户那里解决的最重要的问题是() 。
A、让软件做什么
B、要给软件提供哪些信息
C、要求软件工作效率怎样
D、让软件具有何种结构
答案:A

65.需求规格说明书的作用不应包括()
A、软件设计的依据
B、用户与开发人员对软件要做什么的共同理解
C、软件验收的依据
D、软件可行性研究的依据
答案: D

66.常用的需求分析方法有:面向数据流的结构化分析方法(SA),面向对象的分析方法(OOA),下列()不是结构化分析方法的图形工具。【】
A、决策树
B、数据流图
C、数据字典
D、快速原型
答案:D

67.系统需求开发的结果最终会写入()
A、可行性研究报告
B、前景和范围文档
C、用户需求说明
D、系统需求规格说明
答案:D

68.下列()不是 需求规格说明文档读者?
A、项目管理者
B、编程人员
C、销售商
D、律师
答案:C

69.需求规格说明书的内容不应包括对的描述。
A、主要功能
B、算法的详细过程
C、用户界面和运行环境
D、软件性能
答案:B

70.下面哪个视图属于UML语言的交互图
A、行为图
B、状态图
C、实现图
D、顺序图
答案:D

71.数据建模技术能够弥补过程建模在()方面的缺陷,它描述数据的定义、结构和关系等特性。
A、需求分析
B、数据转换
C、数据说明
D、数据分析
答案:C

72.场景的分类框架将场景方法从场景的()4个方面进行了分类和描述。【】
A、形式、目的、内容和生命周期
B、外观、目的、内容和生命周期
C、描述、目的、内容和形式
D、描述、外观、目的和内容
答案:A

73.描述场景所使用的表示法要符合正规性要求,一般可使用非形式化语言、半形式化语言和形式化语言。在实践中,()是主要的描述方式。【】
A、形式化的程序语言
B、非形式化的自然语言
C、形式化的图形工具
D、非形式化的设计语言
答案:B

74.以下()是情景性的重要性质?【】
A、全局
B、开放
C、交互
D、即时
答案:B

75.原型的需求内容可以从三个纬度上分析:即。
A、外观、角色和实现
B、开发、实现和作用
C、成本、技术和实现
D、需求、作用和角色
答案:A

76.UM语言包含几大类图形【】
A、3
B、5
C、7
D、9
答案:B

77.分析的活动主要包括识别、定义和结构化,它的目的是获取某个可以转换为知识的事物的信息,这种分析活动被称为().【】
A、需求信息获取
B、建立软件系统解决方案
C、需求信息转化
D、建立需求分析模型
答案:D

78.在类图中,“#”表示的可见性是()
A、Public
B、Protected
C、Private
D、Package
答案:B

79.需求分析目的保证需求的。
A、目的性和一致性
B、完整性和一致性
C、正确性和目的性
D、完整性和目的性
答案:B

80.产品特性可以称为质量属性,在众多质量属性中,对于开发人员来说重要的属性有哪些
A、有效性、效率、灵活性、互操作性
B、可维护性、可移植性、可重用性、可测试性
C、完整性、可靠性、健壮性、可用性
D、容错性、易用性、简洁性,正确性
答案:B

81.软件生产中产生需求问题的最大原因在于对应用软件的(〕理解不透彻或应用不坚决。【】
A、复杂性
B、目的性
C、模拟性
D、正确性
答案:C

82.下列描述中错误的是
A、每一个集成的需求变更必须能跟踪到一个经核准的变更请求。
B、变更过程应该做成文档,尽可能简单,当然首要的是有效性。
C、所有需求变更必须遵循过程,按照此过程,如果一个变更需求未被采纳,则其后过程不再予以考虑。
D、可以从数据库中删除或修改变更请求的原始文档。
答案: D

83.下列()不是需求获取常见的模型驱动方法?【】
A、面向目标的方法
B、基于场景的方法。
C、基于用例的方法
D、基于采样的方法
答案:D

84.在表达软目标的分解和细化时使用的 ANDContribution链接和ORContribution链接,Contribution 的作用是
A、积极的
B、消极的
C、积极的或消极的
D、不能确定
答案:C

85.需求分析阶段的文档包括以下哪些(
A、软件需求规格说明书
B、数据要求说明书
c、初步的用户手册
D、修改、完善与确定软件开发实施计划
E、以上都是
答案:E

86.在分层结构中,DFD定义了三个层次类别的DFD图: ()、0层图和N层图。
A、1层图
B、底层图
C、上下文图
D、顶视图
答案:C

87.下面关于面向对象方法消息的叙述,不正确的是。
A、键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息
B、操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息
C、应用程序之间可以相互发送消息
D、发送与接收消息的通信机制与传统的子程序调用机制不同
答案:B

88.()是建模最为常用的两种手段。【】
A、具体和抽象
B、抽象和分解
C、分解和细化
D、抽象和细化
答案:B

89.需求验证应该从下述几个方面进行验证:【】
A、可靠性、可用性、易用性、重用性
B、可维护性、可移植性、可重用性、可测试性
C、一致性、现实性、完整性、有效性
D、功能性、非功能性
答案: C

90.DD的主要字典条目包括以下哪种
A、数据流
B、文件
C、数据项
D、加工
E、以上都是
答案:E

91.DFD的基本符号不包括下列哪种
A、数据字典
B、加工
C、外部实体
D、数据流
E、数据存储文件
答案:A

92.在实体之间建立关系时,可能会产生一些附带的实体,被称为关联实体,最常见的形式是()。【】
A、逻辑实体
B、进程实体
C、概念实体
D、自然实体
答案:B

93.生命线UML视图中哪个图形的组成部分
A、类图
B、状态图
C、活动图
D、顺序图
答案:D

94.SATURN系统的可靠性要求为7天24小时97%的无故障率。
A.安全性需求
B.可靠性需求
C.性能需求
D.易维护性需求
答案:B

95.SATURN应能确定在查询时,是否所有遗留系统处于可用状态。当存在不可用的遗留系统时,用户将被告知稍候再进行查询。每次查询均应完成,并将全部信息返回给用户。
A.功能需求
B.性能需求
C.业务需求
D.硬件需求
答案:A

96.最常见的IEEE1998将需求分成5种类别,下列哪个不是5种类别的是【】
A.功能需求
B.性能需求
C.质量属性
D.需求获取
答案:D

97.SATURN应将满足查询条件的所有雇员的基本信息返回。【】
A.功能需求
B.非功能需求
C.业务需求
D.硬件需求
答案:A

98.现在给大家一个应用场景,区分以下需求的类型。ABC公司在过去三年通过兼并和收购显著的扩大了规模。为保持和增强公司的竞争实力,管理者希望通过建立一个新的人力资源管理(HR)系统,以便在全公司范围内迅速找出具有所需能力和训练背景的雇员。【】
A.用户需求
B.业务需求
C.功能需求
D.过程需求(关于产品开发过程的需求)
答案:B

99.以下哪种方法最适用于身处多个不同地点的人在各自方便的时间参与并围绕同一个主题表达自己的观点?
A.问卷调查
B.面谈
C.群体诱导
D.文档分析
答案:A

100.现在给大家一个应用场景,区分以下需求的类型
管理人员认为,开发一个新的HR系统开销过于庞大。因此,希望继续使用兼并公司的已有系统,而通过建立一个公共的信息框架将各个系统中的信息集成起来。该―框架命名为SATURN(Skills and Training Unified Referral Network),该框架包括建立在总部的IT基层组织,公共电话网,以及每个分公司所在地的必要通信支持设备。【】
A.用户需求
B.业务需求
C.功能需求
D.过程需求(关于产品开发过程的需求)
笞案:B

101.SATURN系统的安装对各本地系统用户来说,界面不发生任何改变,无需进行专门的培训。
A.功能需求
B.用户友好性需求
C.业务需求
D.硬件需求
答案:B

102.用例之间的关系主要有()三种
A.包含、扩展和简化
B.合取、析取和扩展
C.包含、多态和继承
D.包含、扩展和泛化
答案:D

103.以下哪个不是 软件的质量特征
A.可靠性
B.非功能性
C.易用性
D.可维护性
答案:B

104.需求获取是确定和理解不同的项目干系人的需求和约束的过程,需求获取是否科学、准备充分,对获取出来的结果影响很大。在多种需求获取方式中,( )方法具有良好的灵活性,有较宽广的应用范围,但存在获取需求时信息量大记录较为困难、需要足够的领域知识等问题【】
A.用户访谈
B.问卷调查
C.联合需求计划
D.采样
答案:A

105.当用户无法完成主动的信息告知,或与需求工程师之间的语言交流无法产生有效的结果时,有必要采用
A.民族志
B.观察法
C.话语分析
D.任务分析
答案:B

106.SATURN应在查询失败或遗留系统给定时间无响应时给出错误信息。【】
A.功能需求
B.业务需求
C.性能需求
D.易用性需求
答案:D

107.SATURN系统应在项目启动180天内准备进行软件确认测试。【】
A.功能需求
B.性能需求
C.业务需求
D.过程需求(关于产品开发过程的需求)
答案:D

108.在需求获取方法中,()方法基于数理统计原理,不仅可以用于收集数据,还可以用于采集访谈用户或者是采集观察用户,并可以减少数据收集偏差【】
A.用户访谈
B.问卷调查
C.联合需求计划
D.采样
答案:B

109.SATURN系统应对员工信息保密。
A.安全性需求
B.可靠性需求
C.性能需求
D.易维护性需求
答案:A

110.下列活动,( )不属于 需求开发活动的范畴
A.根据系统需求识别和确认系统功能
B.将所收集的用户需求编写成文档和模型
C.针对系统特点,考虑并确定系统开发平台与程序设计语言
D.了解实际用户任务和目标以及这些任务所支持的业务需求
答案: C

111.SATURN应通过通用浏览器操作,如Internet Explorer或Chrome。
A.功能需求
B.性能需求
C.可移植性需求
D.硬件需求
答案: C

112.某在线交易平台的“支付”功能需求描述如下:客户进行支付时,可以使用信用卡支付或支付宝支付。从中抽象出 3个用例:支付、信用卡支付和支付宝支付,这惇3个用例之间的关系是
A.泛化关系
B.扩展关系
C.包含关系
D.关联关系
答案:A

113.在线学习系统中,课程学习和课程考试都需要先检查学员的权限, “课程学习”“检查权限” 两个用例之间属于
A.包含关系
B.扩展关系
C.泛化关系
D.关联关系
答案:A

114.在线学习系统中,课程学习过程中如果所缴纳学费不够,就需要补缴学费,“课程学习”“缴纳学费” 两个用例之间属于
A.包含关系
B.扩展关系
C.泛化关系
D.关联关系
答案:B

115.在线学习系统中,课程学习前需要课程注册,可以采用电话注册或者网络注册,“课程注册”“网络注册” 两个用例之间属于
A.包含关系
B.扩展关系
C.泛化关系
D.关联关系
答案:C

116.在线学习系统中,课程学习前需要课程注册,“课程学习”“课程注册” 两个用例之间属于
A.关联关系
B.扩展关系
C.包含关系
D.泛化关系
答案: C

117.下列哪种不属于 原型的表现方法() 。【】
A.情景串联图板
B.动态程序
C.角色
D.静态画面
答案:C

118.下列不属于 面向对象建模中所使用的技术是()。
A.对象模型
B.用例模型
C.数据模型
D.行为模型
答案: C

119.需求分析过程应该建立3种模型,它们分别是数据模型、功能模型、行为模型。以下几种图形中,()属于功能模型
A.实体-联系图(ERD)
B.状态转换图(STD)
C.数据流图(DFD)
D.鱼骨图
答案:C

120.下列不是 过程建模中使用的技术是() 。
A.实体关系图
B.数据流图
C.上下文图
D.微规格说明
答案:A

121.需求分析最终结果是产生()
A.可行性分析报告
B.需求规格说明书
C.项目开发计划
D.设计说明书
答案:B

122.()用于描述数据的处理过程
A.数据字典
B.决策表
C.决策树
D.数据流图
答案:D

123.下列不属于 需求开发活动的是()。
A.需求分析
B.需求验证
C.需求管理
D.需求获取
答案:C

124.DFD的基本符号不包括下列哪种()
A.加工
B.外部实体
C.数据字典
D.数据流
答案:C

125.需求分析过程应该建立3种模型,它们分别是数据模型、功能模型、行为模型。以下几种图形中,()属于行为模型。【】
A.数据流图(DFD)
B.状态转换图(STD)
C.鱼骨图
D.实体-联系图(ERD)
答案:B

126.需求分析中,开发人员要从用户那里解决的最重要的问题是()【】
A.需求软件工作效率怎样
B.让软件做什么
C.要给软件提供哪些信息
D.让软件具有何种结构
答案: C

127.需求分析过程应该建立3种模型,它们分别是数据模型、功能模型、行为模型。以下几种图形中,() 属于数据模型【】
A.数据流图(DFD)
B.状态转换图(STD)
C.鱼图
D.实体-联系图(ERD)
答案: D

128.常用的需求分析方法有:面向数据流的结构化分析方法(SA),面向对象的分析方法(OOA),下列()不是 结构化分析方法图形工具
A.数据字典
B.决策树
C.数据流图
D.快速原型
答案:D

129.关系实体图的基本元素不包括( ) 。
A.关系
B.属性
C.输入输出
D.实体
答案:C

130.需求获取的目的()。
A.保证需求的完整性和一致性
B.从项目的战略规划开始建立最初的原始需求
C.将完整、一致的需求与能够满足需求的软件行为以文档的形式明确的固定下来
D.保证需求及其文档的正确性,即需求正确反映了用户的真实意图
答案:B

131.需求分析的目的()。
A.将完整、一致的需求与能够满足需求的软件行为以文档的形式明确的固定下来
B.保证需求的完整性和一致性
C.从项目的战略规划开始建立最初的原始需求
D.保证需求及其文档的正确性,即需求正确反映了用户的真实意图
答案:B

132.需求规格说明的目的()。
A.保证需求及其文档的正确性,即需求正确反映了用户的真实意图
B.将完整、一致的需求与能够满足需求的软件行为以文档的形式明确的固定下来
C.保证需求的完整性和一致性
D.从项目的战略规划开始建立最初的原始需求
答案:B

133.需求验证的目的()
A.保证需求及其文档的正确性,即需求正确反映了用户的真实意图
B.从项目的战略规划开始建立最初的原始需求
C.将完整、一致的需求与能够满足需求的软件行为以文档的形式明确的e
D.保证需求的完整性和一致性
答案:A

134.对系统之间的软硬件接口不需要说明( ) 。
A.异常无需处理
接口的用途
c.数据格式
D.接口的输入输出
答案:A

135.项目的前景范围文档定义了系统的() 。
A.软件需求
B.系统需求
C.用户需永
D.业务需求
答案:B

136.项目的目标就是系统的
A.业务目标
B.业务需求
C.业务风险
D.应用背景
正确答案:B

137.文档审查是()中常用的一种方法。得分/总分
A.需求分析
B.需求获取
C.需求验证
D.需求管理
答案:B

2、判断题(10%)

1.对系统的现状和背景进行分析往往能够发现重要的目标,得到一些明确的问题和缺陷,它们的反面就是系统需要实现的目标。(T)

2.场景被人们广泛接受的原因是因为人们更倾向于会对真实事件和真实事物的描述产生反应。(T)

3.结构化、信息工程和面向对象三种方法学下的需求分析技术都适合于需求阶段全过程的分析任务。(F)

4.前向跟踪是指需求被获取到软件需求规格说明文档之前演化过程。(F)

5.交互图是对单个用例的典型场景的实现,适合于事务性业务工作的表示。(T)

6.严格意义上的原型主要被用需求分析阶段。(T)

7.文档审查是一种传统的需求获取方法,是专门针对文档进行的需求获取活动。(T)

8.结构化信息工程面向对象三种方法学下的需求分析技术都适合需求阶段全过程的分析任务。(F)

9.对于需求不确定性比较的项目,用户参与可以取得比较好的效果,但对于需求不确定性比较的项目,用户参与反而可能带来阻碍作用。(F)

10.用例可以用于各种目的的应用,包括描述探索解释。(T)

11.成功的需求获取任务不仅要求成功地执行每一次具体的需求获取行为,还要求成功地处理多次获取行为之间的关系。(T)

12.要完成相同的功能,构建抛弃式原型比构建演化式原型所花费的代价要大得多。(F)

13.优秀的软件需求应该具备可行性,需求必须能在系统及其运行环境的已知条件和约束下实现,应该由开发人员进行检查,必要的时候通过开发原型来加以验证。不可行的需求是不切实际的期望,也是需求定义中常见的问题。(T)

14.在需求工程中,主要产生三类重要的文档、项目前景和范围文档用户需求文档以及需求规格说明用例文档通常被用来 代替 用户需求文档,起到记录、交流领域信息和用户期望的作用。(T)

15.需求工程包括需求获取需求开发两个方面。(F)

16.数据流图中每个加工/过程至少有一个输入数据流,但可以没有输出数据流。(F)

17.使用实例方法可以使用户更清楚地认识到新系统允许他做什么,那么我们就应该试图把每一个需求与一个使用实例 相联系尽可能多使用实例。( F)

18.在状态图中定义的状态主要有:初态(即初始状态),终态(即最终状态)和中间状态,在一张状态图中只能有一个初态,而终态则可以有0至多个。(T )

19.结构化分析方法适合于数据处理类型软件的需求分析。(T)

20.数据流图中每个加工 至少有一个输入数据流,但可以没有输出数据流。(F)

21.DFD数据流程图的区别是程序流程图用于表示程序的过程设计DFD用作描述软件的逻辑功能不能表示程序的控制结构。(T)

22.属性是指实体某一方面的特征,一个实体通常有多个属性联系也可以有属性。(T)

23.软件需求描述的是“如何做”,而不是“做什么”。(F)

24.软件成功的标准用户在用,并且可以很容易做完要做的事。(T)

25.业务规则包括企业方针、政府条例、工业标准、会计准则和计算方法等。业务规划本身就 软件需求。(F)

26.软件需求的层次包括业务需求、用户需求、功能需求。(T)

3、填空题(10%)

1、软件开发的生命周期包括(需求分析)、软件设计、代码实现、(测试)、(实施)、维护,共六个阶段。
2、信息系统必须实现的功能,或者说信息系统必须具备的属性质量称为(系统需求)。
3、(模型)是为了理解事物而对事物做出的一种抽象,是对事物的一种无歧义的书面描述。通常,由一组图形符号和组织这些符号的规则组成
4、软件需求分析阶段的目的是澄清用户的要求,并把双方共同的理解明确地表达成一份书面文档——(软件需求规格说明书)
5、软件需求分类,分为(功能性)需求和(非功能性)需求。
6、需求开发的步骤包括(需求获取)、(需求分析)、编写规格说明、需求验证。
7、鱼骨图是一种用于确定、探索和描述问题及其原因和结果的图形工具,又被称为(因果图)。
8、大多数的需求分析方法是由信息驱动的,信息域具有三种属性:(信息流)、(信息内容)和信息结构。
9、在软件开发中,使用原型时可采取两种不同的策略,即:(废弃)策略和(追加)策略。

4、简答题(20%)

1.需求分析阶段的基本任务是什么?
① 问题识别
功能需求:明确所开发的软件必须具备什么样的功能。(2)性能需求:明确待开发的软件的技术性能指标。
环境需求:明确软件运行时所需要的软、硬件的要求。(4)用户界面需求:明确人机交互方式、输入输出数据格式。
② 分析与综合,导出软件的逻辑模型:分析人员对获取的需求,进行一致性的分析检查,在分析、综合中逐步细化软件功能,划分成各个子功能。用图文结合的形式,建立起新系统的逻辑模型。
③编写文档
编写“需求规格说明书”,把双方共同的理解与分析结果用规范的方式描述出来,作为今后各项工作的基础。
编写初步用户使用手册,着重反映被开发软件的用户功能界面和用户使用的具体要求,用户手册能强制分析人员从用户使用的观点考虑软件。
编写确认测试计划,作为今后确认和验收的依据。
修改完善软件开发计划。在需求分析阶段对待开发的系统有了更进一步的了解,所以能更准确地估计开发成本、进度及资源要求,因此对原计划要进行适当修正。

2.需求分析阶段需要执行哪些活动?
①问题分析:对问题进行分析,定义解决方案
②确定系统边界:将所有问题的解决方案进行综合,就可以得到整个解系统的功能和边界
③需求建模:对需求进行建模,完成从问题世界向计算机世界的转换
④需求细化:明确用户需求的隐含信息,展开为明确的对软件系统的行为期望,即系统需求。
⑤确定需求优先级:对需求进行分级,保证等级更高的需求得到更多的实现保证
⑥需求协商:检测冲突的存在,并提供信息以帮助和引导协商活动的开展

3.需求分析的目的是什么?难点在哪里?需求分析为什么特别重要?
需求分析的目的是解决系统是“做什么”的问题。
难点在以下三点:
①客户常常并非计算机专业出生,难以描述清楚需求
②需求自身经常变动
③分析人员或客户理解有误。需求分析就是分析软件用户的需求是什么,如果投入大量的人力、物力、财力、时间,开发出的软件却没人要,那所有的投入都是徒劳。如果费了很大的精力开发一个软件,最后却不满足用户的要求从而要重新开发过,这种返工是让人痛心疾首的。
需求分析之所以重要,就因为他具有决策性、方向性、策略性的作用,他在软件开发的过程中具有举足轻重的地位。

4.需求规格说明书由哪些部分组成?各部分之间的关系是什么?
软件需求说明书一般包括如下内容:
①引言部分 编写目的;项目背景(应包括: a.项目的委托单位、开发单位和主管部门; b.该软件系统与其他系统的关系。);定义;(列出文档中所用到的专门术语的定义和缩写词的原文。)参考资料。
②任务概述 目标;运行环境;条件与限制。
③数据描述静态数据;动态数据(包括输入数据和输出数据);数据库描述(给出使用数据库的名称和类型);数据词典;数据采集。
④功能要求功能划分;功能描述。
⑤性能需求数据精确度;时间特性(如响应时间、更新处理时间、数据转换与传输时间、运行时间等);适应性(在操作方式、运行环境、与其他软件的接口以及开发计划等发生变化时,应具有的适应能力。)
⑥运行需求用户界面(如屏幕格式、报表格式、菜单格式、输入输出时间等);硬件接口;软件接口;故障处理。
⑦其他要求如可使用性、安全保密、可维护性、可移植性等。
⑧附录

5.假设现在由你来负责所在学校选课系统的需求工作,现在需要你来安排一次群体面谈,你打算怎么做?
(1)计划面谈:确定参与人员,安排会谈时间,选择会谈地点,准备会谈内容
(2)主持面谈:①建立基本规则 ②保持会议气氛 ③确保每个人都积极参与讨论 ④控制会议的主题
(3)分析结果

6.需求获取常见的方法有哪些?
需求获取常见的方法有:面谈,调查表,观察,原型

7.业务需求,用户需求和软件需求(系统需求)有什么关系?
业务需求:表示组织或客户高层次的目标。描述了组织希望达到的目标,用前景和范围文档来记录
用户需求:用户的目标或者用户要求系统必须完成的任务。描述了用户能使用系统来做些什么,用用例、场景描述和事件-响应表来表达。
功能需求(行为需求〉:规定开发人员必须在产品中实现的软件功能,用户利用这些软件功能来完成任务,满足业务需求。描述了开发人员应该(需要)实现什么,用SRS(软件需求规格说明书)来记录。
三责的关系是逐步深入。

5、综合题(40%)

1.业务-用户-系统需求转换

题目:MHC-PMS是一个针对心理健康护理的病人管理系统。它维护着患有心理健康问题的病人的信息以及他们所接受的治疗。
大多数精神健康病人不需要专门的医院治疗,但需要定期到专科诊所就诊。在那里,他们可以见到对他们的问题有详细了解的医生。
为了方便病人就诊,这些诊所并不只是在医院里开设。不仅仅是在医院里进行。它们也可以在当地医疗机构或社区中心。
题解如下:
在这里插入图片描述
补充知识:
在这里插入图片描述

2.用例建模(空巢老人智能看护系统、购物平台)

题目1:空巢老人智能看护系统是一个将计算机软件、自主机器人、智能手机等设备紧密结合在一起的信息物理系统(见图),它借助机器人对家中的独居老人进行监护,包括监视老人在家中的情况,及时发现老人出现异常状况(如摔倒、突发疾病等),提醒和帮助老人按时服药,将老人在家状况和异常信息(包括图像和视频)通过移动互联网实时传送给远端老人家属或者医院医生的智能手机上,支持老人与远端的家属进行语音和视频交互。
根据以上内容绘制用例模型。
在这里插入图片描述
题解如下:
在这里插入图片描述
题目2:根据你在线上购物商城(淘宝/京东/抖音商城)的经历,画出购买商品这—过程的用例图。
题解如下:
在这里插入图片描述

3.数据流图(电梯控制系统、储蓄系统)

题目1:使用DFD描述常见的电梯控制系统
一个控制系统控制多个电梯。每个电梯被置于一个相应甬道之中,在卷扬电机的作用下在甬道内做上下运动。甬道内安装有多个传感器,通常每个电梯停靠点一个,用来感应电梯的实时位置。电梯内部和建筑的每个电梯停靠层都设置有指示器,用来告知用户的电梯实时位置和运动状况。电梯内和建筑的每个电梯停靠层都设有按钮,用户可以通过这些按钮提出服务申请并进出电梯。控制系统调度用户的申请,让电梯以最有效的方式满足用户的服务要求。
题解如下:
在这里插入图片描述

题目2:某银行计算机储蓄系统的工作流程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人的姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存款单给储户;如果是取款,而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。
请用数据流图描绘本系统的功能
题解如下:
在这里插入图片描述
题目3:某时装邮购提供商拟开发订单处理系统,用于处理客户通过电话、传真、邮件或Web站点所下订单。其主要功能如下:
(1)增加客户记录。将新客户信息添加到客户文件,并分配一个客户号以备后续使用。
(2)查询商品信息。接收客户提交商品信息请求,从商品文件中查询商品的价格和可订购数量等商品信息,返回给客户。
(3)增加订单记录。根据客户的订购请求及该客户记录的相关信息,产生订单并添加到订单文件中。
(4)产生配货单。根据订单记录产生配货单,并将配货单发送给仓库进行备货;备好货后,发送备货就绪通知。如果现货不足,则需向供应商订货。
(5)准备发货单。从订单文件中获取订单记录,从客户文件中获取客户记录,并产生发货单。
(6)发货。当收到仓库发送的备货就绪通知后,根据发货单给客户发货;产生装运单并发送给客户。
(7)创建客户账单。根据订单文件中的订单记录和客户文件中的客户记录,产生并发送客户账单,同时更新商品文件中的商品数量和订单文件中的订单状态。
(8)产生应收账户。根据客户记录和订单文件中的订单信息,产生并发送给财务部门应收账户报表。
现采用结构化方法对订单处理系统进行分析与设计,获得如图1-1所示的顶层数据流图和图1-2所示0层数据流图。
在这里插入图片描述
在这里插入图片描述
3.使用说明中的词语,给出图1-1中的实体E1~E3的名称。
E1:客户
E2:财务部门
E3:仓库
4.使用说明中的词语,给出图1-2中的数据存储 D1~D3的名称。
D1:客户文件
D2:商品文件
D3:订单文件
5.给出图1-2中处理(加工)P1和P2的名称及其相应的输入、输出流。
P1:产生配货单
P2:准备发货单

数据流名称 起点 终点
订单记录 D3订单文件 P1产生配货单
配货单 P1产生配货单 E3仓库
订单记录 D3订单文件 P2准备发货单
客户记录 D1客户文件 P2准备发货单
发货单 P2准备发货单 E3仓库

6.除加工P1和P2的输入输出流外,图1-2还缺失了1条数据流,请给出其起点和终点。

起点 终点
D2客户文件 创建客户账单

4.ERD建模(研讨活动)

题目:研讨班在每个学年开始的时候开设,然后持续一个学年。口每个研讨班针对一个或几个研究方向。
每个研讨班由一位或几位教师主持。
在研讨班开设之后,学生可以根据主持教师(的姓名)和研讨班的方向来选择和参加某个研讨班
所有的学生必须且只能参加一个研讨班的学习。
研讨班时常会开展活动,由教师来决定活动的时间、地点、主题和做报告的学生(的姓名/学号) 。
每次活动时,由一位或多位同学围绕活动主题做学习报告,交流自己对新技术的学习心得。每个学生一次活动最多只能作一个报告,但每个学生至少会在一次活动中做一个报告。教师对每份活动中的学生报告进行一次点评和指导,提出建议和意见。
分析步骤:
① 在描述信息中辨别实体
在这里插入图片描述

② 确定实体的标识符
在这里插入图片描述
③ 建立实体间关系,添加属性
在这里插入图片描述

5.领域模型(自动取款机系统)

ATM机系统问题描述
某银行拟开发一个自动取款机系统,它是一个由自动取款机、中央计算机、分行计算机及柜员终端组成的网络系统。ATM和中央计算机由总行投资购买。总行拥有多台ATM,分别设在全市各主要街道上。分行负责提供分行计算机和柜员终端。柜员终端设在分行营业厅及分行下属的各个储蓄所内。该系统的软件开发成本由各个分行分摊。
· 银行网络中包含柜员和ATM, ATM被共享中心所分享。·每家银行利用自己的计算机维护自己的账户并处理账户所属的交易,这些交易包括存款和取款。
· 某些银行拥有自己的柜员站,柜员站直接和该银行的计算机通信,柜员键入账户数据和交易数据。
· ATM和中心计算机通信,中心计算机再和银行清账。
· ATM接受金融卡,要求用户做些操作后和中心计算机通信,执行交易给予现金和打印收据。
· 系统要求保留交易记录和严守安全规定。·能同时存取客户的相同账户。

在这里插入图片描述
分析步骤:
第一步:找出类与对象(名词)(ATM、中央计算机、分行计算机、柜员终端、总行、分行、柜员、储户、账户、事务、现金兑换卡)
第二步:确定关联(动词或者动词词组)
第三步:确定属性(名词)(对象的性质或特征)
题解如下:
在这里插入图片描述

6.领域模型与活动图(汽车保险系统)

题目:下面是一段用例描述,针对一个汽车保险系统中“将一辆新车加入一个已有保单中”的用例:
(1)客户打电话给保险公司,并提供他的保单号,办事员输入这个信息,系统显示基本的保单,然后办事员检查信息,以确保保险费通用及保单有效;
(2)客户给出要添加的汽车牌子、模型、年份和车辆识别代号(VIN),办事员输入这些信息系统验证这些数据是否有效。然后客户选择期望的保额类型,以及每种类型的数量,办事员输入这些信息,系统会逐一记录并根据保单限制验证所请求的数量。输入所有的保额后,系统验证保额总和,包括保单上的其他汽车;
(3)最后,客户必须要确认所有的驾驶员,以及他们驾驶汽车的时间比例。如果有一个新驾驶员加入,则调用另一个用例“增加新驾驶员”;
(4)整个过程最后,系统更新保单,计算新的保险费,打印新的保单说明,邮寄给保单所有人。
请你为其设计:(1)领域模型(要求给出建立过程);(2)活动图
领域模型如下:
在这里插入图片描述
活动图如下:(清晰版后面出)
在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_48592827/article/details/135066164

智能推荐

互联网、政务外网、政务专网、政务内网的区别_政务网和互联网-程序员宅基地

文章浏览阅读2k次。政府门户网是建立在互联网平台上的各级政务机关面向社会开展服务的电子政务窗口,它以政务外网信息资源为支撑并整合了各级政务部门的公众信息资源,推 进政务公开,扩大服务范围和对外宣传,开展政府与公众的沟通和交流,是政务信息服务的枢纽和接受社会监督的窗口,其主要作用是对外发布政务信息。另外,由于专网非涉密,可实现广泛的内部互联,还可以与外网实现安全的信息交换,因此,政务专网完全能够作为不涉及党和国家秘密的内部业务流程和信息处理的主要平台,并形成公共服务的外网受理,内(专)网办理以及外网反馈的闭环机制。_政务网和互联网

消除pycharm中的波浪线和黄色警告_python黄色感叹号-程序员宅基地

文章浏览阅读6.4w次,点赞40次,收藏172次。就我看到的pycharm中的波浪线有3种颜色:黄色、绿色和红色黄色波浪线:是提醒用户代码不规范解决方法:使用Code菜单下的Reformat Code功能即可。当然格式化快捷键更方便:Ctrl+Alt+L以下是pycharm中一些代码规范标准:函数定义的前面和后面都要有两个空行,=、+、*、/等运算符两边都要有一个空格,#用作注释时,后面要留出一个空格,如果不是在行首,前面也要留出两个空格,等等。详细的请看:https://www.cnblogs.com/liangmingshen/p/9_python黄色感叹号

MATLAB/Simulink 基础入门讲解(一)-程序员宅基地

文章浏览阅读2.8k次,点赞3次,收藏10次。MATLAB/Simulink 基础入门讲解相信很多朋友总是遇到这种情况,学过的知识总是忘记,尤其是针对课外知识较多的专业技巧课程,老师或者是师兄师姐只是带你入门,然后讲几个例子,你认真地听,最开始觉得也就是如此简单的一个东西罢了,轮到实际操作时,又开始梦游,学过但又没完全学过,每次总是重复在第一个学过的技巧点上。本次就全面的总结一个基础视频,把MATLAB/Simulink中需要使用到的基础知识都化成一张简单的框架,仅用于我自己的学习总结,方便查看,希望自己不用老是担心自己基础没学好去做项目行不行,其_matlab/simulink

suse 12 sp3 利用shell脚本离线编译安装ansible_suse安装ansible 离线-程序员宅基地

文章浏览阅读509次。# 测试环境是suse 12 sp3的系统,机器都是内网使用的,安装ansible真的很难顶# 测试环境使用的python版本:2.7.13-27# 此脚本只在本人测试环境成功,其他环境,需要选择合适的版本(suse装ansible的版本真的很烦人)# 需要提前准备的内容:机器内需要有 gcc 和 make (编译yaml目录的时候,需要用到的)# 需要注意的版本:ansible依赖python-devel包,如果环境没有,需要先准备和自己环境可用的python-devel# tar包下载地址:(_suse安装ansible 离线

window2012ServerR2 安装VC_redist,出现“设置失败”_windows server 2012 r2 vc redit.exe-程序员宅基地

文章浏览阅读784次。定位到C:\ProgramData\Package Cache\3ACBF3890FC9C8A6F3D2155ECF106028E5F55164\packages\Patch\x64\目录。Windows8.1-KB2999226-x64.msu 安装有问题,导致无法继续。VC_redist.x64 ,安装成功。从官网下载VC_redist.exe.执行msu文件, 安装提示。_windows server 2012 r2 vc redit.exe

Spark-shell引入第三方包-程序员宅基地

文章浏览阅读284次。Spark-shell引入第三方包如何引入spark-shell --jars path/nscala-time_2.10-2.12.0.jar若有多个jar包需要导入,中间用逗号隔开即可。scala shell引入scala -classpath ~/Downloads/json4s-native_2.11-3.2.11.jar参考http://blog.51cto.c..._在sparkshell中写表需要的导什么包

随便推点

xsd验证允许空值_xsd 数据校验 数值不可空-程序员宅基地

文章浏览阅读4.1k次。/////xsd 文档 ////xml文件 bb cc 2001-01-01 //////////1.如果没有 xsi:ni_xsd 数据校验 数值不可空

试用阿里云云拨测对Web网站的网页性能进行测试并分析_web拨测平台-程序员宅基地

文章浏览阅读1.4k次。利用分布于全球的监测网络,以真实终端用户使用场景为视角,提供模拟终端用户体验的拨测服务。 可实现对网络质量、页面性能、端口性能、文件传输、音视频体验等场景进行周期性监控,支持多维度分析性能指标。利用可视化性能数据和告警通知可帮助您及时对业务质量作出反应,保证业务稳定正常运行。_web拨测平台

java if语句-程序员宅基地

文章浏览阅读9.2k次,点赞5次,收藏24次。关于Java语言d当中的if语句,属于选择结构,if语句又被称为分支语句/条件控制语句:1,if语句的语法结构:四种编写方式第一种:if(布尔表达式){Java语句;}第二种:if(布尔表达式){Java语句;}else{Java语句;}第三种:if(布尔表达式){Java语句;} else if(布尔表达式){Java语句;}第四种:if(布尔表达式){Java语句;} else if(布尔表达式){..._java if语句

154-基于FMC 八路SFP+万兆光纤子卡_fmc 万兆-程序员宅基地

文章浏览阅读92次。本卡是一个FPGA夹层卡(FMC)模块,可提供高达8个SFP / SFP +模块接口,直接插入千兆位级收发器(MGT)的赛灵思FPGA。支持业界标准的小型可插拔(SFP / SFP +)收发器模块接口。提供ISE或者Vivado版本的 FMC接口SFP+ Aurora 10Gbps回环的参考测试程序,支持的FPGA型号或者板卡见说明书表格。板卡支持8路光纤同时使用,也可以top面四路或者bottom面单独四路使用。V6、V7、KU、VU、 ZYNQ、ZU 开发板。8路SFP+,多模或者单模。_fmc 万兆

MySQL(七)--关于慢查询_mysql 慢查询-程序员宅基地

文章浏览阅读5.2k次,点赞3次,收藏16次。MySQL(七)–关于慢查询MySQL服务器处理查询请求的整个过程:客户端发送SQL强求给服务器服务器检查是否可以在查询缓存中命中该SQL服务器端进行SQL解析,预处理,再由优化器生成对应的执行计划根据执行计划,调用存储引擎API来查询数据将结果返回给客户端查询性能低下最基本的原因是访问的数据太多。一,如何优化慢查询?1,首先开启慢查询日志:如:long_query_time(多长时间视为慢查询)slow_query_log(是否开启了慢查询日志,off表示未开启)slow_qu_mysql 慢查询

C++如何新建一个工程,并且编译、运行C++程序_c++怎么添加工程运行-程序员宅基地

文章浏览阅读1.3k次。C++如何新建工程并且编译,运行C++程序_c++怎么添加工程运行

推荐文章

热门文章

相关标签