第二章 结构化分析、设计与测试
1.需求分析的目的是什么,有什么作用?
需求分析的目的:要求开发人员准确地理解用户需要什么,进行细致地调查分析,将用户的需求陈述转化为完整的需求定义,再由需求定义转化为相应的软件需求规格说明。
作用:需求分析主要是理解客户需要什么、分析要求、评价可行性、协商合理的方案、无歧义地详细说明方案、确认规格说明、管理需求以至将这些需求转化为需求规格说明定义。
2.软件需求有哪些分类?请举例说明。
业务需求(Business requirement):反映了组织机构或客户对系统、产品高层次的目标要求。比如外卖集团想要一个能够实现点外卖的软件,想要盈利,靠外卖软件挣钱。
用户需求(user requirement):用户的目标,或用户要求系统必须能完成的任务。比如,用户能够在此平台上点外卖,商户能够在此平台上销售外卖。
功能需求( functional requirement):规定开发人员必须在产品中实现的软件功能,用户利用这些功能来完成任务,满足业务需求。比如点外卖系统要能够查看各家菜品的价格、配送信息等等信息。
非功能需求(non-functional requirements):非功能需求主要与系统的总体特征相关,是一些限制性要求,是对实际使用环境所做的要求。比如外卖系统必须同时支持多个用户的同时访问,必须一定时间内返回用户的查询结果。
3.需求分析过程有哪些步骤?
(1)软件产品的利益相关者之间进行沟通。(用户、顾客、市场分析者、监管机构、系统/集成供应商、软件团队、软件工程师)
(2)理解问题,导出需求。
(3)与客户和用户协商。
(4)进行可行性研究并输出报告。
(5)精化需求,开发一个精确的技术模型,用以说明软件的功能、特征和约束。
(6)编写软件需求规格说明。
(7)验证需求,对需求文档和制品进行质量评估。
(8)管理需求,建立与维护需求跟踪矩阵(即表格),进行正向跟踪和逆向跟踪。
4.需求获取方法有哪些?
1.会谈技术
2.调查技术
3.场景分析技术
4.快速原型法
5.你所在的项目团队会选择采用哪些需求获取方法?请具体实践获取需求,在博客中展示(问卷调查表或会谈照片、小视频等)。并总结获取的功能需求以及非功能需求。
我们会用调查技术和快速原型法。
需求分析中问卷调查饼状图——你认为大学生压力大吗
需求分析中问卷调查饼状图——你认为大学生需要解压吗