- 1、本文档共60页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件需求是决定软件开发是否成功的 一个关键因素 软件需求分析是软件生存期决定性的一步,是软件开发的基础。 -需求分析可以帮助开发人员真正理解业务问题 - 需求分析是估算成本和进度的基础 -需求分析可以避免建造错误的系统,从而减少不 必要的浪费 3.1.1 确定对系统的综合要求 1.功能需求 2.性能需求 如:相应时间(速度)、主存容量、磁盘容量、安全性、等。 3.1.3 导出系统的逻辑模型 包括完善的数据流图、实体-联系图、状态转换图、数据字典、主要的处理算法(IPO图)等。 3.2 与用户沟通获取需求的方法 3.2.1 访谈 3.2.4 快速建立软件原型 3.3 分析建模与规格说明 3.3.1 分析建模 为了开发复杂的系统,应从不同角度(模型)抽象出 目标系统的特性(数据模型、功能模型、行为模型)。 所谓模型:就是为了理解事物而对事物作出的一种抽象,是对事物的一种无歧义的书面描述。通常,模型由一组图形符号和组织这些图形符号的规则组成。 1)实体联系图:建立数据模型,描述数据对象及数据对象之间的关系; 2)数据流图:建立功能模型的基础; 3)状态转换图:描绘系统的状态和状态间转换的方式。 不应该包括在SRS 中的内容 - 项目开发计划: 如成本、人员、进度、工具、方法等 - 产品保证计划 : 如配置管理、验证与测试、 质量保证等 - 软件设计细节: 需求通常用于表达“做什么”, 而不描述“如何做”。 3.4 实体-联系图 数据对象可以是外部实体、事物、行为、事件、角色、单位、地点、结构等。 3.4.2 属性 属性定义了数据对象的性质。 3.4.3 联系 (1)一对一联系(1:1) (2)一对多联系(1:N) (3)多对多联系(M:N) 在ER图中,用菱形框表示联系。 软件系统经常使用各种长期保存的信息,这些信息通常以一定方式组织并存储在数据库或文件中,为减少数据冗余,避免出现插入异常或删除异常,简化修改数据的过程,通常需要把数据结构规范化。 下面给出第一、第二和第三范式的定义: (1) 第一范式在同一表中没有重复项出现,如果有则应将重复项去掉。 每个属性值都必须是原子值,即仅仅是一个简单值而不含内部结构。 (2) 第二范式满足第一范式条件,而且每个非关键字属性都由整个关键字决定(而不是由关键字的一部分来决定)。 每个表必须有一个(而且仅一个)数据元素为主关键字,其它元素与主关键字一一对应。 (3) 第三范式符合第二范式的条件,每个非关键字属性都仅由关键字决定,而且一个非关键字属性不能仅仅是对另一个非关键字属性的进一步描述(即一个非关键字属性值不依赖于另一个非关键字属性值)。 表中的所有数据元素,不但要能够唯一地被主关键字所标识,而且它们之间还必须相互独立,不存在其它的函数关系。 3.6 状态转换图 根据本章开头讲的结构化分析的第3条准则,在需求分析过程中应该建立起软件系统的行为模型。状态转换图(简称为状态图)通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。此外,状态图还指明了作为特定事件的结果系统将做哪些动作(例如,处理数据)。因此,状态图提供了行为建模机制,可以满足第3条分析准则的要求。 3.6.1 状态 状态是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。 3.6.2 事件 事件是某个特定时刻发生的事情,它是引起系统做动作或状态转换的控制信息。用户移动鼠标或单击鼠标等都是事件。 3.6.3 符号 3.6.4 例子 3.7 其他图形工具 层次方框图用树形结构的一系列多层次的矩形框描绘数据的层次结构。 Warnier图也用树形结构描绘信息,但是这种图形工具比层次方框图提供了更丰富的描绘手段。 IPO图是输入/处理/输出图。 3.8 验证软件需求 1)一致性 2)完整性 3)现实性 4)有效性 1)验证需求的一致性 2)验证需求的现实性 3)验证需求的完整性和有效性 用于需求分析的软件应该满足下列要求: 1)必须有形式化的语法 2)使用这个软件工具能够导出详细的文档 3)必须提供分析规格说明书的不一致性和冗余性的手段 4)使用这个软件工具后,应该能够改进通信状况 RSL(需求陈述语言):信息集?ASSM?PASCAL模拟程序 ? PSL/PSA(问题陈述语言/问题陈述分析程序)系统 第3章小结 ◇ 软件需求说明书(软件规格说明书) 对所开发软件的功能、性能、用户界面及运行环境等作出详细的
文档评论(0)