软件工程习题答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第五章软件需求分析过程
1.需求分析过程主要有哪几个步骤?
需求分析过程主要有沟通、导出需求、分析与精化、可行性研究、协商与沟通、规格说明、需求验证、变更管理等步骤。
2.软件需求有哪几类,他们有什么不同?
软件系统需求常常分为功能需求、非功能需求和领域需求。功能需求描述系统预期提供的功能或服务,包括对系统应提供的服务,如何对输入做出反应以及系统在特定条件下的行为的描述。非功能需求是指那些不直接与系统具体功能相关的一类需求,主要与系统的总体特征相关,是一些限制性要求,是对实际使用环境所做的要求。领域需求是系统的应用领域需求,对已存在的功能预期的约束或者是需要实现的一个特定的计算。
3.用户需求和系统需求各有什么特点?
用户需求是从用户角度来描述系统功能和非功能需求,以便让不具备专业技术方面知识的用户能看懂。用户需求是描述系统的外部行为,用自然语言、图表和直观的图形来叙述。系统需求是比用户需求更详细的需求描述,是系统实现的基本依据,因此,是一个完全的、一致的系统描述,是软件工程人员系统设计的起点。系统需求描述可能包括许多不同的模型,如对象模型和数据流模型。
4.请分析POS机系统种共利益者之间的功能有那些冲突的地方?
比如:收银员和顾客希望系统能够及时显示商品价格,这就要求本地存储价目表,导致大存储量而需要高成本设备;但公司希望低成本的pos机,从服务器上下载商品价目表而减少机器负担。
5.请对出卷系统的功能进行划分,确定哪些是必须的、必要的和重要的。
必须的功能:自动出卷、手动出卷
必要的功能:试题管理
重要的功能:自动出卷、手动出卷
7.请对出卷系统的功能需求进行分析,是否存在重复或遗漏的需求。
自动出卷、手动出卷共同的需求出卷要求,且出卷要求也比较复杂,需要单独的功能完成,并且可以存储以便下次使用。因此可以增加“设置出卷要求”功能。
8.请补充案例研究的非功能需求。
如图书馆的非功能需求:
(1)借一本书过程要求不超过5秒
(2)图书馆藏书在200,000,000册以上
9.请扩展短信系统成为一个短信客服中心,给出该系统的需求。
本系统主要功能需求有:
●短信发送:填写发送内容,选择发送用户,并指明是否要回执,然后发送短信。(通过无线终端或短信网关)
●短信接收:从无线终端或短信网关读取短信内容,并显示查看。
●用户管理:添加新用户,更新用户信息,删除用户。
●自动应答:根据用户的要求自动应答。
10.请描述图书馆系统的借书的一个常规场景。
用例名称:借书
范围:图书管理图书流通应用
级别:用户需求
主要参与者:借阅者
涉众及其关注点:
(1)浏览者:希望能够不需要登录系统即可快速地浏览图书和查询信息。
(2)借阅者:希望在登录系统后可以借书,能查查询自己信息和借书情况
(3)普通管理员:希望能够协助借书者完成借书功能,形成借书报表给借阅者查看确认。
前置条件:借书者要登录系统或者验证借书证
成功保证:创建借书记录,更新借书信息,形成借书报表。
主成功场景:
(1)普通管理员扫描借书证。
(2)检查是否可以借书
(3)若可借,则扫描图书
(4)显示已借书数,显示借书成功
…重复(2)-(4)
(5)借书结束
11.请描述银行客户从ATM机上取一笔钱的场景。
客户插入银行卡后输入密码。客户选择“取款”项,屏幕跳出选择取款金额菜单以及一次性可取出的最大金额,客户根据自身需要选择预设金额或者自己输入想要取出的金额。机器根据客户输入的金额进行出钞,如果余额不足,则屏幕提示客户无法提取相应金额。客户选择提取较小金额或者选择退出系统,取卡。否则在正常情况下按客户所需输出相应钞票。屏幕提示在30秒内取走钞票。完成交易,客户退出系统,取卡。
第6章结构化分析建模
(1)什么是结构化分析?
结构化分析方法是一种传统的系统建模技术,其过程是创建描述信息内容和数据流的模型,依据功能和行为对系统进行划分,并描述必须建立的系统要素。
(2)结构化分析要创建哪些模型?
结构化的需求分析模型有数据流模型、状态转换模型、实体—关系模型等。数据流模型集中在数据的流动和数据转换功能,而不关心数据结构的细节。实体—关系模型关心的是寻找系统中的数据及其之间的关系,却不关心系统中包含的功能。系统的行为模型包括两类模型:一类是数据流模型,用来描述系统中的数据处理过程;另一类是状态转换模型,用来描述系统如何对事件做出响应。
(3)加工逻辑描述有哪些方法,它们之间有什么优缺点?
加工逻辑也称为过程说明,用于描述数据流图中加工逻辑的处理算法或过程,一般用以下三种工具:过程描述语言、判定表和判定树。
过程描述语言介于自然语言和形式语言之间的一种半形式语言,过程描述语言是在自然语言基础上加了一些限定,使用有限的词汇和有限的语句来描述加工逻辑。
判定表和判定树能够把在什么条件下系统应做什么动作准确无误地表示出来,适合多分支情况。判定树是判定表的变形,一般情况下它比判定表更直观,且易于理解和使用。(4)请分析自动出卷与手动出卷在功能上有什么不同?
自动出卷能够根据出卷要求自动选择试题和评价试卷,手动出卷则需要用户交互从根据条件筛选的每类型题目中选择需要的题目。
(5)如果要在获取出卷要求时可参照以往的出卷要求,请修改图6-5。
(6)图书馆系统中在检查读者可借性要考虑哪些规则?
规则:
●未借满
●没有超期图书
●罚金<2.0元
(7)借书功能的可借性是否要考虑预约?
可以不用考虑,因为当图书在架时(在书库),图书可以借,所以不能预约该图书。当被预约的图书归还时会放在预约架,所以不会出现预约图书被借的情况。
(8)请补充POS机系统中的帐务和库存两个数据存储的数据信息。
帐务:销售号+金额+日期+收银员
库存:商品号+名称+厂家+进货价格+数量
(9)请用PDL语言描述借书功能中读者可借性的加工逻辑描述。
判断读者可借性seq
return true