资源描述
第三章 需求分析,教学内容:需求分析的任务 与用户沟通获取需求的方法 分析建模与规格说明 实体-联系图 数据规范化 状态转换图 其他图形工具 验证软件需求 教学重点:模型的建立、实体-联系图以及状态转换图的建立 教学时数:4学时,我们知道,可行性研究的基本目的是用较小的成本在较短的时间内确定是否存在可行的解法,不考虑细节。但是,最后的系统是不能缺少任何一个细节问题的。需求分析是软件定义时期的最后一个阶段,它的基本任务是准确地回答“系统必须做什么?”,1、任务 传统软件工程方法学使用结构化分析技术,完成分析用户需求的工作。需求分析是发现、求精、建模、规格说明和复审的过程。 需求分析的第一步是进一步了解用户当前所处的情况,发现用户所面临的问题和对目标系统的基本需求;接下来应该与用户深入交流,对用户的基本需求反复细化逐步求精,以得出对目标系统的完整、准确和具体的需求。 具体地讲,应该确定系统必须具有的功能、性能、可靠性和可用性,必须实现的出错处理需求、接口需求和逆向需求,必须满足的约束条件,并且预测系统的发展前景。同时,必须分析系统的数据要求。之后,,导出系统的逻辑模型,并修正系统的开发计划。 2、获取用户需求的方法 A、访谈 B、面向数据流自顶向下求精(结构化分析方法) 结构化分析方法是有美国yourdan公司提出,它的基本手段是抽象和分解,自顶向下、逐步求精,其输出结果为数据流图和数据字典。 C、简易的应用规格说明技术 面向团队的需求收集法,提倡用户与开发者密切合作,不分彼此,提出解决方案要素,商讨不同方案并指定基本需求。这种技术已经成为信息系统领域使用的主流技术。,D、快速建立软件原型 实践表明,快速建立软件原型是最准确、最有效和最强大的需求分析技术。 它具备的基本特性:快速;容易修改。 通常使用第四代技术、可重用的软件构件及形式化规格说明与原型环境,快速地构建和修改原型。 3、分析建模与规格说明 模型=图形符号+规则 根据结构化分析准则,需求分析过程应该建立3种模型:,数据模型:描绘数据对象及数据对象之间的关系 用实体联系图表示;其他数据建模方法 如IDEF1X方法。下节讲述 功能模型:指明系统具有的变换数据的功能 用数据流图表示;其他功能建模方法如 IDEF0方法。前面已讲 行为模型:指明作为外部时间结果的系统行为 用状态图表示;3.6节讲述 软件需求规格说明:自然语言; 形式化方法(第4章讲述),4、E-R图 E-R图描绘了数据对象及数据对象之间的关系,是用于建立数据模型的图形。 例子:教师(教工号,姓名,性别,职称,职务) 学生(学号,姓名,性别,系,年级) 课程(课程号,课名,学时,学分) 由以上的例子,我们可知,数据对象(实体)有教师、学生、课程三个。属性有教工号,姓名,性别,学分等等。 客观世界中的事物彼此间往往是有联系的。联系,有三种类型:1:1 , 1:N, M:N。 1 N N M 教学管理E-R图,教师,课程,学生,性别,姓名,教工号,课程号,职务,学分,学时,职称,课名,成绩,年级,系,性别,姓名,学号,教,学,注:数据建模的工具有ERWIN4.0, Rational Rose等。 5、数据规范化 为减少数据冗余,避免出现插入异常,简化修改数据的过程,通常需要数据规范化。 6、状态转换图 状态转换图通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。此外,状态转换图还指明了作为特定事件的结果系统将做哪些动作。,状态1 状态2 初始事件 状态变量1 事件表达式 状态变量2 结束事件 活动表1 活动表2 说明:A、状态:系统的一种行为模式。 定义的状态有三种:初态(仅1个)、终态(0 至多个)和中间状态。 B、事件:引起系统做动作或(和)转换状态的控制信息。 C、符号:初态实心圆 终态同心圆 中间态圆角矩形 活动表语法格式:事件名(参数表)/动作表达式 事件表达式语法格式:事件说明守卫条件/动作 表达式,7、其他图形工具 A、层次方框图:树形结构 B、Warnier:树形结构,可以表示特定信息重复或有 条件出现 C、IPO图:描绘输入数据、对数据的处理和输出数据 之间的关系 8、软件需求的验证 (1)通常,从一致性、完整性、现实性和有效性4个 方面验证软件需求的正确性。 (2)验证方法:一致性形式化方法好于人工技术,(3)需求分析工具 1977年美国密执安大学开发的PSL/PSA(问题陈述语言/分析程序)系统。,现实性参照经验,用仿真/性能模拟技术,完整性和有效性使用原型系统,作业,1、P63第3、4题 2、怎样与用户有效地沟通以获取用户的真实需求?,
展开阅读全文