- 1、本文档共94页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 结构化分析与设计 需求分析 结构化系统分析 模块化设计思想 结构化系统设计 模块设计 3.1 需求分析 准确、完整、规范化的软件需求是软件开发成功的关键 软件项目中40-60%的问题是在需求阶段埋下的祸根 需求分析的任务 让用户和开发者共同明确将要开发的是一个什么样(what)的系统 第一:建立分析模型 描述软件需求的一组模型,是形成需求说 明、进行软件设计的基础 第二:得到《软件需求规格说明书》 准确、一致、清晰、无二义、直观易读 需求分析的步骤 需求获取(调研) 形式:联合分析小组 手段:客户访谈、问答、原件收集 目标:功能、界面、质量... 需求分析的步骤 需求提炼:分析建模 需求分析的步骤 需求描述:撰写软件需求规格说明书(Software Requirement Specification SRS) 在标准模板基础上剪裁 需求验证(复审) 组成复审小组:用户方+外来专家 实例(教材购销系统) 需求获取的常用方法 常规需求获取方法 联合分析小组、客户访谈、问题分析与确认 快速原型法在需求分析中的应用 两个层次:联机屏幕、外部特征 过程:规格说明→检查→生成/修改原型→用户评估 基础:快速开发技术和工具(4GT) 分析建模 软件分析模型:信息(数据)模型、功能模型、行为模型 分类:结构化分析(SA)、面向对象分析(OOA) 方式:图形+自然语言 3.2结构化系统分析 3.2.1结构化分析模型的组成 数据流图(DFD) 数据字典(DD) 加工说明(PSPEC) 实体关系图(E-R) (1)数据流图(DFD) 数据流图(DFD) DFD不同于程序流程图。 DFD可以表现大到整个系统,小到一个模块 分层数据流图 (2)数据字典(DD) 对软件中的每个数据规定一个定义条目,以保持数据在系统中的一致性 数据流 发票=(学号)+姓名+{书号+单价+数量+总价}+书费合计 数据文件 学生用书表= {系编号+专业和班编号+年级+{书号}} 系编号=2{数字}2 数据项 年级= [F/M/J/S] 数据字典例题 请给出安徽汽车的车牌号码的数据字典定义,如合肥的车牌是“皖A-23002”,芜湖的车牌是“皖B-00235”等,只考虑后面五位是数字的情况 某个航空售票系统需要保存所有的航班信息,每个航班的属性包括航班号、出发地、目的地、若干个中途停靠站、头等舱座位数量及价格(固定)、公务舱座位数量及价格、普通舱座位数量及价格。有些航班没有头等舱。采用数据字典描述航班信息 例题 请给出购书申请的数据字典定义:一份申请对应一个学生,内容包括学生的学号、姓名、班级和他(她)所领全部教材的书号、书名和数量。其中学号由阿拉伯数字组成,姓名可选。 (3)加工说明(PSPEC) 三部分:输入数据、加工逻辑、输出数据 描述不宜过细,过细就变成了设计 结构化语言描述加工说明 判定表描述加工说明 判定树描述加工说明 例题 一个加工用来完成商店促销活动中的金额计算,规定:消费不超过100元,享受8折;消费100-500,享受7折;消费超过500享受6折。且如果是会员则再减20。 用判定树描述该加工说明 (4)E-R图 备注:若关系没有属性,则可以省略 E-R图向数据表的转换 一对一:两个实体可合并成一个表 E-R图向数据表的转换 一对多:两个实体分别转换成两个表,在“多”的标中建立指向“1”的表中的外关键字 E-R图向数据表的转换 多对多:两个实体分别转换成两个表,另建立一个新表保存它们之间的关系,新表中应包括这两个表的关键字及关系的属性 例题 以我校为例,画出学生、班级、课程、教师的E-R图 3.2.2结构化分析方法 结构化分析(SA):一种面向数据流的分析方法 基本步骤:由顶向下对系统进行功能分解,画出分层数据流图;由后向前定义系统的数据和加工,编制DD和PSPEC;最终写出SRS。 (1)画分层数据流图 从基本模型开始(整个系统是一个加工) 逐层分解 重复这种分解,直到加工足够简单(基本加工) 由顶向下、逐步细化(求精) 顶层数据流图 二层数据流图 三层数据流图—销售子系统 三层数据流图—采购子系统 分层DFD的优点 便于实现 逐步细化,避免一次引入过多细节,有利于控制问题的复杂度 便于使用 便于阅读,有针对性 (2)确定数据定义与加工策略 从数据的终点开始,由后向前 确定数据定义和加工策略 有效购书单=学号+姓名+{书号+数量} (3)需求分析的复审 父图和子图的不平衡 父图和子图的输入数据和输出数据应分别保持一致,称为父子平衡。 可以有“例外”
文档评论(0)