武汉软件工程职业学院教案(理论教学首页)
(第1页)
《软件工程与UML》
武汉软件工程职业学院教案(附页)
(第NUMPAGES2页)
装订线章节名称
装订线
单元6需求分析
任务:需求捕获
授课安排
授课
时数
2
授课时间
第10周第1次课
授课
方法
讲练结合
授课教具
机房,StarUML、ROSE或VISIO
教学目标
知识目标:掌握需求分析概念、捕获及整理需求。
能力目标:捕获和整理需求的能力。
思政目标:培养良好的沟通能力,关注软件产品的技术可行性、经济可行性和社会可行性;养成“全局观”,综合考虑风险、安全、成本等因素,认识其相互间的制约关系。
教学重点
捕获及整理需求
教学
难点
捕获及整理需求
【教学环境】
多媒体机房
软件需求:机房,StarUML、ROSE或VISIO
【教学过程】
一、复习导入
(1)通过提问的形式复习上一节知识,引入本节课内容。
在讲解本节课内容前,首先回顾一下上节课中讲过的UML部署图。
本节将学习需求捕获。
(2)明确学习目标。
掌握需求分析概念、捕获及整理需求
二、授新课
(一)布置任务
根据教材描述,完成某学校的新闻发布平台的需求捕获。
(二)知识要点
什么是软件需求
优秀的软件需求具有以下几个主要的属性:
(1)可验证性
(2)可行性
(3)优先级
(4)唯一性
(5)完整性
(6)确定性
需求分析的目的
需求分析的过程:
捕获需求、整理需求、确定软件需求、完善需求的过程。
需求分析的目的:
用于说明软件产品或软件项目需要满足的条件和限制,准确界定软件系统的边界,并在开发者和用户间达成一致。
面向对象的需求分析具有如下的两个特点:
(1)需求分析是一个项目的开始。通过对软件需求的提取、分析、文档化和验证,为进一步的设计和实现提供依据。
(2)需求分析将贯穿软件的整个生命周期。面向对象的软件开发过程是一个反复迭代的过程。
需求的类型
系统需求分为功能需求和非功能性需求两类,分为如下几个方面:
(1)功能性
(2)可用性
(3)可靠性
(4)性能
(5)可支持性
(6)设计需求
(7)实施需求
(8)接口需求
(9)物理需求
需求的验证需求从以下几方面进行:
(1)正确性
(2)无二义性
(3)完整性
(4)可验证性
(5)一致性
(6)可理解性
(7)可修改性
(8)可跟踪性
(9)设计无关性
(10)注释
捕获及整理需求
信息收集的方法及策略
信息的分类
业务信息。系统的目标和目的、产品和服务、财务结构和主要组织结构之间的相互作用。
应用程序信息。支持业务流程的自动化和非自动化服务。
运营信息。运行业务流程所需的信息。
技术信息。执行和支持业务任务的技术服务。
信息收集的方法
信息来源
成品
系统
人
定义信息收集策略
收--确定信息范围、信息收集的时间框架、记录信息的方法。
放--考虑所有的看法、信息类型和信息来源。
比较--从使用类似业务流程的不同工作组收集信息进行比较
整理需求的一般方法
确定需求的任务主要是:
(1)在收集信息的整个过程中创建候选需求的清单。
(2)扩展候选需求清单
重新检查收集来的所有信息,从中寻找潜在的候选需求。
确定候选需求,候选需求是需要进一步收集的信息。
收集这些信息。
完善需求的任务主要是:
(1)分清需求和期望之间的区别。
(2)确定约束和假定
约束是一种已设定的边界,如预算。
澄清假定可以避免误解。
(3)识别隐藏的需求
原始信息:
验证用户可以通过网上银行查询并分析当月及过往的所有收支情况。
由该项记录所引发的问题:
怎样成为验证用户?
怎样作当月及过往收支情况的查询、分析?
完善后的信息:
用户必须经过网上银行验证。
用户可通过网上银行查询当月收入、支出情况。
用户可通过网上银行查询过往收入、支出情况。
用户可通过网上银行分析当月收入、当月支出情况,进行当月收支比较。
用户可通过网上银行分析过往收入、过往支出情况,进行过往收支比较。
用户可通过网上银行进行过往收入和当月收入、过往支出和当月支出比较。
进一步引发的问题:
分析当月及过往收支情况指的是做哪方面的分析?
(三)任务实施
1.信息收集
2.整理需求(可借助需求列表模板进行分析)
3.反复迭代完善需求
4.进行需求确认,提交需求。
三、归纳总结
回顾上课前的学习目标,对本节课知识点进行总结:
需求分析概念。
捕获及整理需求。
【课后作业】
拓展训练:根据描述整理出“餐馆订餐系统”的有效需求
装订线章节名称
装订线
单元6需求分析
任务:需求建模
授课安排
授课
时数
2
授课时间
第10周第2次课
授课
方法
讲练结合
授课教具
机房,StarUML、ROSE或V