软件系统的分析和设计.ppt_第1页
软件系统的分析和设计.ppt_第2页
软件系统的分析和设计.ppt_第3页
软件系统的分析和设计.ppt_第4页
软件系统的分析和设计.ppt_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 唐金文ComputerScienceDepartmentQujinNormalUniversity 软件需求分析文档的写作方法TheWritingMethodsofSoftwareRequirementsSpecification SRS 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 讲座目的 为毕业论文的撰写提供帮助专业论文基本要求是 综合多门专业基础课程 三门及以上 计算机科学与技术专业本科毕业论文 要求综合应用程序设计 数据库 网络相关知识撰写毕业论文 设计 共同探讨软件需求分析规范SRS SoftwareRequirementsSpecification 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 讲座内容 什么是软件需求分析 为什么一定要写需求分析文档 SRS 需求分析两种方法 结构化 面向对象 介绍 怎么写软件需求分析文档 重点介绍结构化思想 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 是实施软件工程项目的第一步 需求分析 设计 编码 测试 维护 工作 是对业务规则及业务流程进行分析后的语言文字及图表的描述 无论什么领域 软件的应用无非是代替 或部分代替 该领域业务手工工作 提高工作效率 因此要求软件设计开发者弄清楚该领域的业务需求 就是软件的需求分析 例如 XX学校学籍管理信息系统 的开发与设计 要求设计人员熟悉学籍管理的业务规则及流程 什么是软件需求分析 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 为什么一定要写需求分析文档 需求分析文档也称需求分析规格说明书或称为需求规约说明书 SoftwareRequirementSpecification SRS 是需求分析阶段最终形成的文档 体现了这个需求分析成果 同样属于软件制品之一 SRS的作用 一定程度上等价与建筑设计图和设计说明书 开发者与用户间事实上的技术合同书开发者下一步设计和编码的基础测试验收目标系统的依据 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 需求分析的两种方法 结构化分析方法SA StructureAnalysis1 1结构化系统分析思想结构化分析方法是由美国Yourdon公司在20世纪70年代提出的 其基本思想是将系统开发看成工程项目 有计划 有步骤地进行 是一种应用很广的开发方法 适用于分析大型信息系统 结构化分析方法采用 自顶向下 逐层分解 的开发策略 按照这种策略 再复杂的系统也可以有条不紊的进行 只要将复杂的系统适当分层 每层的复杂程度即可降低 这就是结构化分析的特点 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 1 2结构化分析方法的内容 结构化分析之后获得的文档是系统分析报告 系统分析报告是由下面几个部分组成的 现行业务流程分析 现有数据和数据流程分析 系统的初步方案和补充材料 如开发计划等 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 1 3结构划分此方法的特点 结构化分析方法简单 易于掌握和使用 结构化分析方法将分析的结果用图形表示 如业务流程图 数据流程图等 这些图形都有一套标准图符组成 从而将分析结果简明易懂的展示在用户面前 结构化分析是在业务流或已有系统的基础上再构思即将开发的目标系统 采用层层分解对问题进行分解 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 1 4结构化分析方法的局限 结构化分析方法要求对系统有完整确切的需求定义 而实际上这是非常困难的 文档资料数量大 需要书写大量文档 随着分析的深入 这套文档需要及时更新 即使在工具的辅助下 仍有一定的难度 以数据为中心 而不是以问题为中心 不能很好地表示客观世界的真实情况 其结果不能直接映射题域 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 2 面向对象分析方法OOA ObjectorientedAnalysis20世纪80年代到90年代出现大量的OOA和OOD论文与专著 OOA和OOD技术在工业界得到广泛应用 OOA D成为计算机软件领域的主流技术 OOA方法强调 以问题域中的固有事物作为基本单位 即认为 任何一个复杂的软件系统 对象是组成系统的基本单位 系统行为是对象与对象之间进行交互与协作完成系统功能的 所以要求在OOA分析阶段 在详尽描述业务规则的基础上 提取系统 问题域 中的对象 并在抽象层次上建立OOA模型 从而为OOD阶段的类的设计与交互作准备 面向对象方法下的软件工程步骤是 OOA OOD OOPL 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 需求分析文档写作步骤 步骤1 获取原始的业务需求及业务规则设计人员考察原始业务流程及业务规则 不清楚的问题必须请教业务人员 发现可改进的业务规则和流程与业务人员进行协商 达成一致意见 最终形成文字性及图表描述的业务需求 为解决自然语言的二义性问题 使用术语表的方式对容易产生歧义的术语进行阐释 如 跳墙 下海 等词语具有二义性 必要时采用图表的方式加以描述 最好能使用CASE ComputerAidedSoftwareEngineering 工具 如软件建模工具RationalRose Visio2003等 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 步骤2 功能需求建模 基于业务需求 结构化思想 步骤2 1使用数据流图DFD进行功能建模步骤2 2检查数据流图的正确性步骤2 3利用数据字典描述DFD中的元素 即描述DFD中的数据流 数据存储 数据项 数据变换处理 需求分析文档写作步骤 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 信息流模型 计算机系统从外部实体接受输入信息 经过处理后转变成输出信息 并最终展现给外部实体 功能建模和信息流 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 功能建模就是用抽象模型的概念 按照软件内部数据传递 变换的关系 自顶向下逐层分解 直到找到满足功能要求的所有可实现的软件为止 功能模型使用了数据流图来表达系统内数据的运动情况 而数据流的变换则用结构化英语 判定表与判定树来描述 也可以用算法的形式化表示来描述数据流的变换 功能建模 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 数据流图 DFD DataFlowDiagram 描述系统逻辑模型信息在系统中的流动和处理 用途交流信息的工具 贯穿分析 设计 编码 维护四个阶段的工具 数据流图 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 从数据流动和变换的角度 以图形的方式刻画数据从输入到输出的流动变换过程 数据流图 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 外部实体 表示要加工处理的数据是从外部得到或从外部提供 同时也是数据结果的接收者 可以是人 组织 其它系统 数据流 箭头表示数据流方向 一般在旁边标注数据流名 数据变换 加工处理 对数据进行加工 处理和变换 从而实现某个功能或操作 数据存储 表示处理过程中存放各种数据的文件 数据流图图符说明 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 单层DFD对于大型系统 复杂 庞大 难于理解分层DFD 较大型软件系统DFD分成多层 子图 父图概念 可以表示数据流和功能的进一步的细节 控制复杂度 逐级分解 逐步求精 高层DFD是其低层的抽象 低层是高层相关数据处理的细节 分层数据流图 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 S 2 1 3 2 2 2 1 2 3 3 1 3 2 顶层 不编号 0层 1层 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 顶层DFD 用一个数据变换表示软件 含所有相关外部实体 含外部实体与软件中间的数据流 不含数据存储 唯一 描述软件的作用范围 对总体功能 输入 输出进行抽象描述 反映软件和系统 环境的关系 分层数据流图 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 中间和底层DFD 分层数据流图 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 由外向里 先画系统的输入输出 然后画系统的内部 再画处理的内部 由顶向下 顶层 中间层 底层数据流图 逐层分解 从外向里 建立DFD的步骤 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 1 对考生送来的报名单进行检查 2 对合格的报名单编好准考证号后将准考证送给考生 并将汇总后的考生名单送给阅卷站 3 对阅卷站送来的成绩单进行检查 并根据考试中心制定的合格标准审定合格者 4 制作考生通知单 含成绩及合格 不合格标志 送给考生 5 按地区进行成绩分类统计和试题难度分析 产生统计分析表 考务处理系统功能 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 步骤2 1考务处理系统顶层DFD 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 步骤2 20层DFD 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 步骤2 3登记报名单第1层DFD 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 步骤2 4统计成绩1层DFD 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 数据存储不出现在顶层图中 外部实体通常不出现在顶层图外 数据存储之间不应该有数据流 仔细 恰当地为数据变换命名 处理 对象 仔细 恰当地为数据流命名 反映整体含义 对数据变换建立唯一 层次性编号 每个数据变换通常要求既有输入又有输出 不要试图让DFD反映处理的顺序 DFD规则和注意事项 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 a 数据守恒某个处理用以产生输出的数据没有输入给这个处理 即出现遗漏 另一种是一个处理的某些输入并没有在处理中使用以产生输出 b 数据存储 文件 的使用数据存储 文件 应被数据流图中的处理读和写 而不是仅读不写 或仅写不读 c 父图和子图的平衡 步骤2 5考检查数据流图的正确性 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 描述数据流标识 来源 去向 数据组成 其它流动属性描述 频率 数据量 描述数据存储文件名 描述 数据结构 数据存储方式 关键码 存取频率和数据量 安全性要求 描述数据项 不可再分解的数据单位名称 描述 数据类型 长度 精度 取值范围及缺省值 计量单位 相关数据元素及数据结构 描述数据变换名称 编号 激活条件 变换逻辑 执行频率 步骤2 6利用数据字典描述DFD中的元素 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 描述数据流 数据流名 报名单别名 无简述 学生报名时填写的项目来源 学生去向 数据变换 审查报名单 组成 学号 姓名 生源地数据流量 1000次 周高峰值 报名开始期间1000次 天 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 描述数据流 数据流名 准考证别名 无简述 学生考试凭证来源 考务处理系统去向 学生组成 准考证号 姓名 生源地 照片数据流量 1000次 周高峰值 报名期间1000次 天 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 描述数据存储 文件名 考生名册表别名 无简述 存放考生信息信息组成 准考证号 姓名 性别 出生年月 生源地 照片组织方式 索引文件 以学号为关键字查询要求 要求能够立即查询 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 描述数据项 数据项名 准考证号别名 ZK No ZK num简述 准考证编号 主关键字类型 字符串长度 10取值范围及含义 第1 3位 生源地代码第4位 性别标志 1 男0 女第5 10位 00001 99999 具体编号 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 描述数据变换 数据变换名 登记报名单编号 1激活条件 收到报名单变换逻辑 1 1检查报名单 1 2编准考证号 1 3登记考生 执行频率 2000次 日 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 获取原始需求 功能建模 数据流图DFD 数据字典DD 指明数据如何在系统内被变换 数据建模 实体关系图ERD 定义数据对象 属性和关系 需求分析规格说明书 分析总结 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 需求文档要点 需求文档可以使用自然语言或形式化语言来描述 还可以添加图形的表述方式和模型表征的方式 编写目的 为项目开发提供软件总体要求 作为用户和软件开发人员之间了解的基础 提出功能 性能 接口和可靠性的要求 作为软件人员进行设计和编码的基础 提供验收标准 作为用户确认测试的依据 需求文档完成后 需要经过正式评审 以便作为下一阶段工作的基础 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 需求文档要点 开发人员常常写不出好的需求文档需求调查工作不充分 获取的需求信息太少或者太乱 以至于写不成需求文档 开发人员写作能力比较差 解决方法是 提高开发人员写作能力的根本办法就是多练习写文档 熟能生巧 另外 合适的文档模板以及比较好的示例文档能有效地降低写作难度 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 高质量需求叙述的特性 1 1 正确需求规格说明书应当正确地反映用户的真实意图 2 清楚清楚的需求让人易读易懂 清楚的反义词是 难读 难理解 可以用设问的方式来判断需求文档是否清楚 文档的结构 段落是否乱七八糟 上下文是否不连贯 文档的语句是否含糊其词 罗里罗嗦 看了半天是否还不明白需求究竟是什么 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 高质量需求叙述的特性 2 3 无二义性 无二义性 是指每个需求只有唯一的含义 如果一个人说的话 不同的人可能有不同的理解 那么这句话就有二义性 如果需求存在二义性 将会导致人们误解需求而开发出偏离需求的产品 为了使需求无二义性 人们在写文档时措词应当准确 切勿模棱两可 使用术语表的形式进行解释 4 一致 一致 Consistent 是指 需求文档 中各个需求之间不会发生矛盾 矛盾常常潜伏在需求文档的上下文中 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 高质量需求叙述的特性 3 5 必要 需求文档 中的各项需求对用户而言应当都是必要的 画蛇添足 或 锦上添花 6 完备 完备 Complete 是指 需求文档 中没有遗漏一些必要的需求 不完备的 需求文档 将导致产生功能不完整的软件 用户在使用该软件时可能无法完成预期的任务 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 高质量需求叙述的特性 4 7 可实现各项需求对开发方而言应当都是可实现的 可实现 意味着在技术上是可行的 并且满足时间 费用 质量等约束 8 可验证各项需求对用户方而言应当都是可验证的 如果需求是不可验证的 那么用户就无法验收软件 可能会发生商业纠纷 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 不合格的需求叙述 1 例1 主要功能要求 提供娱乐休闲 难理解 不清楚 不具体 例2 BBS功能需求 可以进行信息的交流 可以进行文章的发表 可以进行文章的回复 不限制的论坛内容的浏览 以上功能的操作步骤和通常的BBS论坛的一般步骤相同 画蛇添足 例3 故障处理 可采用双机备份机制 不完备 双机备份能处理所有故障 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 不合格的需求叙述 2 例4 时间特性 在峰值负载期 与所规定的发送成功响应时间的允许偏离范围 2秒 发送成功响应时间是多少 例5 非功能需求 界面设计良好 由于该系统是面向某学校的学籍 成绩管理 以及提供学生和老师查询信息 所以主要的是响应查询 一般不会有大的问题 什么情况下不会有问题 2008 4唐金文E mial tangjw 192 168 136 16下载本讲座相关资料 不合格的需求叙述 3 例6 灵活性 为适应需求

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论