软件需求规格说明
确定要做什么
原则
1.功能需求 2.性能需求 如:相应时间(速度)、主存容量、磁盘容量、 安全性、等 3. 可靠性和可用性需求 4. 出错处理需求 系统发现错误时采取的行动,主要在系统关键部分设置。 5. 接口需求 用户接口、硬件接口、软件接口、通信接口、等。 6. 约束 精度、工具和语言、设计约束、硬件约束、标准,等。 7. 逆向需求 8. 将来可能提出的要求
自顶向下的逐步求精进行需求分析就是:结构化方法 将分析得到的数据元素信息记录在数据字典中,算法的简明描述记录在IPO图中,将分析补充的数据流、数据存储和处理添加到数据流图的正确位置中(可行性分析得到的数据流图仅仅是一个高层数据流图,细节不包括在里面)
简易的应用规格说明技术 前两种用户处于被动地位,提出面向团队的需求收集法: (用户与开发者配合)
快速建立软件原型 最准确、最有效、最强大的需求分析技术 特性:
快速容易修改工具:
1.第四代技术:sql…2.可重用的软件构建:将已有的软件构件拿来装配3.形式化规格说明和原型环境为了开发复杂的系统,应从不同角度(模型)抽象出目标系统的特性(数据模型、功能模型、行为模型)。
数据模型:实体-联系图功能模型:数据流图行为模型:状态转换图实体-联系图: 描述从用户角度看到的数据 状态转换图 描绘系统的状态及引起系统状态转换的事件 一个状态是一个行为模式 状态 状态是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式
初态终态中间状态 一张状态图中只能有一个初态,终态有0-多个 状态图可以表示系统循环运行过程,也可以表示系统单程生命期事件: 事件是某个特定时刻发生的事情,它是引起系统做动作或状态转换的控制信息 符号: 初态---- 实心圆;终态---- 同心圆 中间状态:圆角矩形 箭头---- 状态转换
也用树形结构表示数据 符号: +同或符:表示一类信息或一个数据元素在一定条件下才出现,符号上下两个名字所代表的数据只能出现一个。 ():括号内的数据表示该元素出现次数
用来描述算法的工具