《第2章需求获取(1)》
n本节主要学习以下内容:
² 如何确定需求开发计划;
² 确定项目的目标和范围;
² 确定需求调查对象;
² 掌握确定非功能需求;
本节重点
需求调研计划的主要内容以及获得方法。
本节难点
如何确定有效的需求调研目标和范围,以及调查对象。
授课课时
2课时
教法建议
首先介绍需求最开始是编写需求调研计划,按照调研计划中的内容展开课程内容,然后讲解如何完成各项的编写任务和注意问题。
回顾上节课的主要内容。
本节主要讲解以工程的思想进行需求的第一步就是如何制定需求调研计划。
引入:
展示国际标准的需求调研计划的格式。 [直述]
内容:
确定需求开发计划的基本任务是确定需求开发的实施步骤,并给出收集需求活动的具体安排和进度。
需求开发计划需要注意以下几点:
(1)只考虑与需求开发相关的工作;
(2)应考虑困难性和灵活性;
(3)应考虑书写和整理需求规格说明及其文档所花费的时间。
[详细讲解,并举例说明]
内容:
此阶段的基本任务是根据项目目标把项目相关人员定位到一个共同的和明确的方向上,并决定软件系统的范围。
项目的范围与项目的目标特别是软件系统的目标需求是密切相关的。
在收集目标需求时,目标需求会来源于各个不同的人,这些人对要开发的软件系统及该系统最终能为用户或客户提供哪些价值有比较清楚的了解。
[详细讲解,并举例说明]
内容:
本阶段的基本任务是明确地确定来自不同层次的需求来源和用户,并将其分类。
应根据需求的层次来区分不同的用户:
(1)提出目标需求的用户;
(2)提出业务需求和功能需求的用户;
(3)软件开发人员,主要是指系统分析员。
软件系统面临的用户是很多的,而这些用户由于所在的部门、职责和掌握的知识不同而存在差异,为了避免忽视和遗漏某些用户的情况,可以根据用户的某些方面将用户分类。
在将用户分类后,在分类的基础上进一步寻找每类用户的代表或联络人,这些人代表了一个特定的用户类,并可充当该用户类与开发人员之间的“窗口”。这些人也必须是真正的用户,而不是单纯的代理人。
软件需求可来自与各个方面,而且用户类也不一定都是指人。有时也可以把其它应用系统或计算机硬件设备和接口等视为附加的用户类成员,这样就可确定软件系统与哪些外部应用系统或计算机硬件相关的需求。这就是说需求信息来源除了来自用户类外,还可来自于其它方面。
几个典型的软件需求来源:
直接和间接使用软件系统的用户;
系统需求规格说明;
市场调查和用户问卷调查;
已开发出的和待开发的同类软件系统的描述和文档;
对人工系统的存在问题的报告和增强要求;
观察正在工作的用户;
用户工作内容的分析。
当确定了用户类及明确了用户需求的主要来源后,这样就可从不同的渠道和不同的人那里收集到大量的需求信息。但这些需求信息既包含了明确的用户需求,也包含了一些不一致和含糊的需求,而且软件开发人员也难以解决。因此,这就需要寻找需求的决策者。
在处理有问题的需求信息时,决策者并不是固定不变的,而是根据实际中可能发生的具体问题来确定。
[详细讲解,并举例说明]
内容:
用户所关心的非功能需求主要有:
可靠性;
可扩充性;
安全性;
互操作性;
健壮性;
易使用性;
可维护性
在收集非功能需求信息时常用的方法:
将不同用户类代表提出的可能很重要的非功能需求进行综合,并根据其中的每个需求设计出许多方法,然后根据用户的回答,使这些需求更明确化;
开发人员与用户一起对每一个非功能需求制定可测试和可验证的具体标准;
设计与非功能需求相冲突的假设示例,利用反例来提示用户。
[详细讲解]
本节学习了以下主要内容:
2. 确定项目的目标和范围;
3. 确定需求调查对象;
4. 掌握确定非功能需求;
考核点1:如何确定调查对象
考核点2:非功能需求有哪些
掌握需求获取的方法。
确定需求的来源和题目,
(注:在此写上个人在授课过程中所遇到的教案中所没有涉及到的特殊问题及其解决方法或解决方案,也可以总结自己的授课体会,课程体系、教材的不足等。)
授课教师(签名): 授课时间: 授课班级:

