「武汉理工大学 软件工程复习」第三章 | 软件需求

目录

第三章 | 软件需求

【需求的定义和分类】

【需求过程】

【需求来源】

【单元测试题】

选择题

判断题

简答题


第三章 | 软件需求

【需求的定义和分类】

  • 软件需求的必要性和难点

    • 软件需求的复杂性

    • 客户说不清楚需求

    • 需求自身经常变化

    • 多个干系人之间矛盾冲突的需求

  • 什么是需求

    • 需求是对外可见的系统特征

    • 需求管理的三大任务:需求获取、需求优选、攥写需求规格说明书(说明书描述了计算机系统的功能、性能及其约束)

    • 需求:应用领域与机器领域的交集(外部环境和内部环境的交集:接口。即:需求是对接口的描述)

  • 需求的分类

    • 【按产品/过程分类】产品需求(功能性、非功能性)、过程需求

    • 【按抽象层次详细程度分类】业务需求、用户需求、系统需求、软件设计规约

  • 功能性需求 VS 非功能性需求

    • 【功能性需求】系统的功能、系统做的计算

    • 【非功能性】如:必须要快、操作后必须30s内进行响应

  • 用户需求 VS 系统需求

    • 【用户需求】为用户编写,一般使用自然语言

    • 【系统需求】为开发者编写,需要写上详细的功能性和非功能需求,清晰易懂


【需求过程】

需求过程:需求抽取、分析、规约、管理、验证

  • 需求抽取

    • 目标:主动与干系人协同工作,找出他们的需求,识别潜在冲突,磋商解决矛盾,定义系统范围与边界

    • 实质:了解待解决的问题及其所属领域

    • 关键:确保该问题的解决是有商业价值的

    • 抽取技术:协同工作、面谈、问卷调查、观察法、原型法、文档分析、建模、角色扮演、非功能性需求列表

  • 需求分析

    • 目标:深入了解产品及其与环境的交互,识别系统需求,设计软件体系结构,建立需求与体系结构组件间的关联,在体系结构设计实现过程中进—步识别矛盾冲突,并通过干系人之间的协调磋商解决问题。

    • 实质:概念建模——选择常用的建模语言,进行功能建模和信息建模

    • 关键:体系结构设计与需求分配

  • 需求管理

    • 目标:贯穿从需求获取到软件系统下线的全过程。需求管理涉及软件配置管理、需求跟踪、影响分析和版本控制

    • 包含:需求跟踪、变更请求能力、需求属性管理

  • 需求验证

    • 目标:对其他需求工程活动的质量的保证。通过数学的形式化工具或工程化的测试过程来确保系统满足干系人的要求。

    • 验证方法:评审、原型化、模型验证、确认测试


【需求来源】

需求的来源

  • 【干系人】

  • 【系统的应用领域】业务过程、组织规章制度

  • 【现有系统文档资料】用户手册、数据样本、界面描述、报告样本、屏幕截图

 

【单元测试题】

选择题

 

判断题

1.在需求确认过程中需求模型被评审以保证其技术可行性。 F

错误原因:并不是保证技术可行性!而是保证复合用户的满意度。

需求验证

  • 目标:对其他需求工程活动的质量的保证。通过数学的形式化工具或工程化的测试过程来确保系统满足干系人的要求。

  • 验证方法:评审、原型化、模型验证、确认测试

2.用例参与者总是人员而不是系统设备。 F

3.【背】需求工程师的任务是将所有干系人的信息进行分类以便允许决策者选择一个相互一致的需求集。 F

错误原因:不是对干系人的【信息】分类,而是对干系人的【需求】分类

4.干系人(stakeholders) 是将来购买所开发软件系统的人。 F

错误原因:干系人是任何和系统有关的人

5.目前存在一个很普遍的现象,即不同的客户提出的需求是相互矛盾的,但每个人都争辩自己是正确的。 T

6.软件需求规格说明书在软件开发中具有重要的作用,它是软件可行性分析的依据。 F

错误原因:说软件需求规格明书描述了计算机系统的功能、性能及其约束。并没有分析软件可行性!

7.在需求分析过程中,分析员要从用户那里解决的最重要的问题是明确软件做什么。 T

简答题

为了方便旅客,某旅游平台拟开发一个机票预定系统。旅客将旅客信息输入该系统,系统为旅客安排航班,旅客在飞机起飞前一天凭取票通知和账单交款取票,系统核对无误即印出机票给顾客。请根据机票预定系统案例描述以及相关知识点,在括号内指明下列需求的分类。

可以从以下答案中选择:

【功能需求】 【性能需求】 【可靠性需求】 【可用性需求】 【出错处理需求】 【接口需求】 【约束】 【逆向需求】 【将来可能提出的需求】

  1. 乘客应当能够随时打印自己已经办好登机手续的所有航段的登机牌,如果乘客信息没有指定座位偏好,机票预订系统就应当为它分配。( 功能需求 )

  2. 机票预定系统在一个月内发生故障的次数低于三次,系统中存储的数据应该避免发生缺失。(可靠性需求 )

  3. 机票预定系统在处理一个业务请求平均响应时间为100ms,系统支持的QPS(Query Per Second,每秒处理请求数)在500以上。( 性能需求 )

  4. 因乘客身份认证未通过导致机票预定失败时,机票预定系统会给用户显示错误提示并给出反馈,同时通知人工客服来进行进一步核实。( 出错处理需求 )

  5. 在任何时刻机票预定系统中的服务器或备份服务器至少有一个是可用的,一个月内系统中的不可用时间不能超过系统运行总时间的3%。( 可用性需求 )

  6. 机票预定系统应该提供第三方的登录和支付接口。( 接口需求 )

  7. 乘客不能预定同一时间点的多张机票。( 逆向需求)

  8. 机票预定系统需要按照国际化(用户界面提供多种语言)进行开发。( 约束 )

  9. 机票预定系统应该为以后多家航空公司的入驻提供预留空间。(将来可能提出的需求 )

  • 18
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Graskli

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值