欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载
     

    第一章软件工程概述.ppt

    • 资源ID:2563188       资源大小:5.02MB        全文页数:981页
    • 资源格式: PPT        下载积分:30
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要30
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第一章软件工程概述.ppt

    第一章 软件工程概述,§1.1 软件工程的背景和历史 1968年由NATO (北大西洋公约组织)在德国Garmish召开的学术会议上,Feitz Bauer首先提出了“软件工程”概念。,Evolution of software,早期 第二阶段 第三阶段 第四阶段 面向批处理 多用户 分布式系统 强大的桌面系统 有限的分布 实时 嵌入“智能” 面向对象技术 自定义软件 数据库 低成本硬件 专家系统 软件产品 消费者的影响 人工神经网络 并行计算 网络计算机,1950,1960,1970,1980,1990,2000,软件技术面临的问题,复杂性 生产率,例:Windows95有1000万行代码 Windows2000有5000万行代码 Exchange2000和 Windows2000开发人员结构,软件危机的主要特征,软件开发周期大大超过规定 日期; 软件开发成本严重超标; 软件质量难于保证。,改正一个问题需付出的代价,需 求 分 析,结构设计,详细设计,编码,集成测试,系统测试,现场,改正一个问题的估计费用,改正一个问题估计的工作量,20,200,2000,1000,5.0,2.5,0.05,0.5,(美元),(人天),yet, Success Hasnt Come Easily,31%,53%,16%,Successfully,Challenged,Canceled,成功的标准:,用户在用 用户可很容易做完要做的事 失败的根本原因: 开发人员写出的东西达不到 用户要求(人的问题.技术问题),处在十字路口的中国软件产业,主权大国必须建立基于自主技术的、 完整的软件产业体系。 软件本国提供率:中国1/3左右,美国97% “印度模式”还是“中国模式” 软件人才结构不合理,缺乏中高级软 件人才 软件人员缺乏软件工程化的概念。,软件工程的定义,Fritz Bauer在NATO会议上给出的定义: “软件工程是为了经济地获得可靠的和能在实际机器上高效运行的软件而确立和使用的健全的工程原理(方法)。”,软件工程的定义,IEEE【IEE83】给出的软件工程定义: “软件工程是开发、运行、维护和修复软件的系统方法。”,软件工程的定义,IEEE【IEE93】给出了一个更加综合的定义: “将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护的过程,即将工程化应用于软件中。”,软件工程的定义,软件工程是应用计算机科学、数学及管理科学等原理开发软件的工程。它借鉴传统工程的原则、方法,以提高质量,降低成本为目的。,软件工程是一门交叉学科,软件工程的主要研究内容 软件开发技术:软件开发方法学 软件开发过程 软件工具和软件工程环境 软件工程管理:软件管理学 软件经济学 软件心理学 软件工程所包含的内容不是一成不变的, 随着人们对软件系统的研制开发和生产的理解。 应用发展的眼光看待它。,软件工程 一种层次化技术,工具,方法,过程,质量焦点,Software engineering layers,软件工程三个要素:方法、工具、过程,软件工程框架,可,用,性,性,性,确,正,合,算,选取适宜的开发模型,采用合适的设计方法,提供高质量的工程支持,重视软件工程的管理,基本过程,原则,目标,过,程,支 持 过 程,组 织 过 程,软件工程与一般工程的差异,软件是逻辑产品而不是实物产品 软件的功能依赖于硬件和软件的运行环境以及人们对它的操作 软件设计的复杂性 软件特征: 功能的多样性 实现的多样性 能见度低 软件结构合理性差 智力密集及知识产权保护,软件工程知识结构,2001年5月ISO/IEC JTC 1(ISO和IEC的第一联合技术委员会)发布了 SWEBOK指南V0.95(试用版) (Guide to the Software Engineering Body of Knowledge,简称SWEBOK) SWEBOK把软件工程学科的主体知识分为10个知识领域。,软件工程知识结构,软件需求 软件设计 软件构造 软件测试 软件维护 软件配置管理 软件工程管理 软件工程过程 软件工程工具和方法 软件质量,“软件工程”课程 与其它软件专业课的区别,(1) 立足于系统的整体。 (2) 讲授系统分析、系统设计、 测试及维护的理论和方法。 (3) 构筑一个软件系统,实践 软件开发全过程。,“软件工程”课程教学与实践的目标,转变对软件的认识: 上升 程序 系统 转变思维定式: 上升 程序员 系统工程师 (系统分析员) 工程化训练,系统分析员的地位,用户,分析员,程序员,“一个好的工业,应有一套 良好的标准来配套”,软件的工业化生产过程应具备的特点: 明确的工作步骤 详细具体的规范化文档 明确的质量评价标准,软件产品的标准化,软件开发过程的标准化,软件工程技术的两个明显特点:,强调规范化 强调文档化,§1.2 软件生存周期,1.2.1 软件生存周期 (Software Life Cycle) 软件产品或软件系统从设计、投入使用到被淘汰的全过程。,1.2.1 软件生存期的阶段划分,(1)可行性研究与计划 (2)需求分析 (3)总体设计 上游 (4)详细设计 (5)实现 (6)集成测试 (7)确认测试 下游 (8)使用和维护 (根据国标计算机软件开发规范),只考虑 编写程序,涉及整个 软件生存 周期,扩展到,软件工作的范围,1.2.2 软件开发模型,软件开发模型是软件开发全部过程、活动和任务的结构框架。它能直观表达软件开发全过程,明确规定要完成的主要活动、任务和开发策略。 软件开发模型也常称为: 软件过程模型 软件生存期模型 软件工程范型,1. 瀑布模型 (线形顺序模型),可行性研究与计划,需求分析,设计,编码,运行维护,测试,定义 阶段,开 发 阶 段,维护阶段,按照传统瀑布模型开发软件的特点,1.阶段间具有顺序性和依赖性。 2.推迟实现的观点。 3.每个阶段必须完成规定的文档; 每个阶段结束前完成文档审查, 及早改正错误。,2. 原型模型(快速成型模型),建造/修改 原型,用户测试 运行原型,听取用 户意见,原型范型,采用原型模型的软件生存周期,分析定义 系统需求,生成 原型,系统 设计,程序 设计,编码,测试,运 行 和维护,原型化,含原型化的 软件生存期,3. 演化模型,3.1 增量模型(递增模型),先完成一个系统子集的开发,再按同样的开发步骤增加功能 (系统子集),如此递增下去直至满足全部系统需求。 系统的总体设计在初始子集设计阶段就应作出设想。,分析,增量模型,设计,编码,测试,分析,设计,编码,测试,分析,设计,编码,测试,分析,设计,编码,测试,增量1,增量2,增量3,增量n,增量1 交付客户,增量2 交付客户,增量3 交付客户,增量n 交付客户,日历时间,3.2 螺旋模型,风险 分析,工程 实施,用户通信,用户 评估,产品维护项目,产品增强项目,新产品开发项目,概念开发项目,计划,建造及发布,“基于版本发布”的特点,V1.0,功 能,时间,V2.0,V1.1,Trade-off Decision (折中决定),可 靠 性,发布日期,功 能,最优,约束范围,可接受,正确的Trade-off 决定,4. 面向对象模型,4.1 喷泉模型,进一步开发,实现和集成阶段,运行状态,实现阶段,面向对象设计阶段,计划阶段,面向对象分析阶段,需求阶段,维护期,喷泉模型特点,主要用于支持面向对象开发过程体现了软件创建所固有的迭代和无间隙的特征,4.2 可重用部件组装模型,使用重用技术的软件工程模型 构件(components):可重用的软件成份 可复用性(Reusability) (可重用性) 集成化软件开发环境(ISEE),可重用部件组装模型,系统A的 软件构成,系统C的 软件构成,系统B的 软件构成,可重用 部 件,可重用 部 件,软件生产线,应用构件 提取车间,应用 构件库,构件生 产车间,构件库,组装 车间,领域 1,领域 2,应用 系统,.,1,2,3,4,1基础构件,2功能构件 3接口构件,4用户界面构件,第三章 软件需求分析,§3.1 需求分析的任务 准确地定义未来系统的目标,确定为了满足用户的需求系统必须做什么。用 规范的形式准确地表达用户的需求。,思考、涉及的几个问题,如何定义系统需求? 如何识别、获取需求? 你能够采取何种手段与用户进行交流沟通? 何为需求建模? 你如何理解模型与建模?,软件需求分析的几个阶段,问题分析 问题评估和方案综合 建模 规约 复审 系统分析员的主要焦点是 “做什么(what)” ,不是 “怎样做(how)”,§3.2 需求获取,3.2.1 需求获取的目的 清楚地理解所要解决的问题 完整地获取用户需求,需求获取面临的挑战:,(1)问题空间理解 (2)人与人之间的通信 (3)需求的不断变化,某出版社系统调查表,某出版社系统调查表,3.2.2 需求获取的内容,1.用户需求分类 (1)功能性需求: 定义了系统做什么(描述系统必须支持 的功能和过程) (2)非功能性需求(技术需求): 定义了系统工作时的特性 (描述操作环境和性能目标),2. 两类需求包括的内容,(1) 功能 (2) 性能 (3) 环境 (4) 界面 (5) 用户或人的因素 (6) 文档 (7) 数据 (8) 资源 (9) 安全保密 (10)软件成本消耗与开发进度 (11)质量保证,(1) 功能需求,系统做什么? 系统何时做什么? 系统何时及如何修改 或升级?,(2) 性能需求,软件开发的技术性指标 例如: 存储容量限制 执行速度、相应时间 吞吐量,(3) 环境需求,硬件设备:机型、外设、接口、 地点、分布、温度、 湿度、磁场干扰等 软件: 操作系统 网络 数据库,(4) 界面需求,有来自其它系统的输入吗? 到自其它系统的输出吗? 对数据格式有规定吗? 对数据存储介质有规定吗?,(5) 用户或人的因素,用户类型? 各种用户熟练程度? 需受何种训练? 用户理解、使用系统的难度? 用户错误操作系统的可能性?,(6) 文档需求,需哪些文档? 文档针对哪些读者?,(7) 数据需求,输入、输出数据的格式? 接收、发送数据的频率? 数据的准确性和精度? 数据流量? 数据需保持的时间?,(8) 资源需求,软件运行时所需的数据、软件。 内存空间等资源。 软件开发、维护所需的人力、 支撑软件、开发设备等。,(9) 安全保密要求,需对访问系统或系统信息加以控 制吗? 如何隔离用户之间的数据? 用户程序如何与其它程序和操作 系统隔离? 系统备份要求?,(10) 软件成本消耗 与开发进度需求,开发有规定的时间表吗? 软硬件投资有无限制?,(11) 质量保证,系统的可靠性要求? 系统必须监测和隔离错误吗? 规定系统平均出错时间? 出错后,重启系统允许的时间? 系统变化如何反映到设计中? 维护是否包括对系统的改进? 系统的可移植性?,3.3 需求建模,计算机学科的发展,计算机科学 (CS),计算机科学 (CS),计算机工程 (CE),软件工程 (SE),信息系统 (IS),计算学科 (computing discipline),计算学科是研究通过在计算机上建立模型 并模拟物理过程来进行科学调查和研究的学科.,计算机科学与技术学科的方法论,学科的3个形态 理论 抽象(模型化) 设计 重复出现的概念 绑定(binding) 概念与形式模型 一致性和完备性 抽象层次 重用 典型的学科方法: 数学方法 系统科学方法 ,计算中抽象的本质和使用。在处理复杂事务、构造系统、隐藏细节和获取重复模式方面使用抽象,通过具有不同层次的细节和指标的抽象,能够表达一个实体和系统,抽象(模型化),源于实验科学,主要要素为数据采集方法和假设的形式说明,模型的构造与预测实验分析结果分析. 在为可能的算法数据结构和系统结构等构造模型时使用此过程. 抽象的结果是概念符号模型,模型(model),模型: 现实世界某些重要方面的表示。 有时我们使用术语“抽象”来表示模型,因为我们从现实世界中抽象出对我们特别有用的东西。,需求分析的步骤,当前 系统,目标 系统,物理 模型,逻辑 模型,逻辑 模型,物理 模型,模型化,抽象化,具体化,实例化,怎 么 做,做 什 么,当前 系统,目标 系统,需 求 定 义,逻辑模型和物理模型 模型是对对象系统的形式化的特征 抽象,概括性或近似地表示; 构造模型的过程是一个抽象、分 析的过程。,对象 系统,模型 系统,抽象(映射),模型应用,模型构造的过程,逻辑模型 物理模型 (本质模型、概念模型) (实施模型、技术模型),现 行 系 统,目 标 系 统,描述重要的业务功能,无论系统是如何实施的。,描述现实系统是如何在物理上实现的。,描述新系统的主要业务功能和用户新的需求,无论系统应如何实施。,描述新系统是如何实施的(包括技术)。,3.3 需求建模,模型的作用,建模的原因: 在建模过程中了解系统 通过抽象降低复杂性 有助于回忆所有的细节 有助于开发小组间的交流 有助于与用户的交流 为系统的维护提供文档,模型化或模型方法是通过抽象、概括和一般化,把研究的对象或问题转化为本质(关系或结构)相同的另一对象或问题,从而加以解决的方法。模型化方法要求所建立的模型能真实反映所研究对象的整体结构、关系或某一过程、某一局部、某一侧面的本质特征和变化规律。,模型的类型,数学模型 描述模型 图形模型,需求分析的步骤,当前 系统,目标 系统,物理 模型,逻辑 模型,逻辑 模型,物理 模型,模型化,抽象化,具体化,实例化,怎 么 做,做 什 么,当前 系统,目标 系统,需 求 定 义,逻辑模型和物理模型 模型是对对象系统的形式化的特征 抽象,概括性或近似地表示; 构造模型的过程是一个抽象、分 析的过程。,对象 系统,模型 系统,抽象(映射),模型应用,模型构造的过程,逻辑模型 物理模型 (本质模型、概念模型) (实施模型、技术模型),现 行 系 统,目 标 系 统,描述重要的业务功能,无论系统是如何实施的。,描述现实系统是如何在物理上实现的。,描述新系统的主要业务功能和用户新的需求,无论系统应如何实施。,描述新系统是如何实施的(包括技术)。,需求分析过程示意,学 生,(1) 通过对现实环境的调查, 获得当前系统的物理模型,学 生,购 书 申 请,购书 单,发 票,领 书 单,书,107 张,教务科,206 王,会计室,206 李,出纳员,303 赵,教材科,学生购买教材的物理模型,需求分析过程示意,(2) 去掉具体模型中的非本质因素, 抽象出当前系统的逻辑模型,学生购买教材的逻辑模型,学 生,学 生,购 书 申 请,购书 单,发 票,领 书 单,书,审查 有效性,开发票,开领 书单,发书,需求分析过程示意,(3) 分析当前系统与目标系统的差别, 建立目标系统的逻辑模型,计算机售书系统的逻辑模型,学 生,学 生,购书单,发票,领书单,审查并 开发票,开领,书单,无效书单,分析阶段中常用的模型(逻辑模型),数据流图(DFD) 实体联系图( ERD ) 类图 实例图 时序图 状态图 协作图 事件列表 数据流定义 数据元素定义 ,SafeHomede的第1层DFD,控制 面板,与用户 交互,控制 面板 显示,密码,电话号码拨音,传感器状态,显示信息,配置请求,用户命令 和数据,配置 系统,警 铃,电 话 线,传感器,配置信息,显示信息 和状态,监控 传感器,激活不 激活系统,传感器信息,密码 处理,警告类型,检验id信息,开始 停止,状态信息,客户,保险销售人员,签订一份 保险单,销售统计,客户统计,使用用例图举例,状态图 例:,状态1,Do:活动1,状态2,.,事件1条件1 / 动作1,结束 事件,初始 事件,空闲,可视菜单,左边按钮按下/显示弹出菜单,左边按钮弹起/擦除弹出菜单,光标移动/高亮菜单项,弹出菜单动作,接电话的顺序图 :,受话者,交换机,远程交换机,受话者,拿起话筒,听通话声,拨号码,铃响信号,铃响,铃响停止信号,拿起话筒,铃响停止,10 ,d,e,a,b,c,b-a1,e-d5,c-b10,路径,合作图举例,打印机忙 保存打印文件,队列,计算机,打印机空闲,打印文件,打印机,打印服务器,打印文件,电梯状态图举例,在一楼,上升,停滞,下降,回到一楼,回一楼,想要到 达楼层,想要到 达楼层,电梯行程,开始,向上,向上,向下,F1:航班信息文件航空公司名称航班号 起点终点日期 起飞时间降落时间 航空公司名称2字母4 航班号3十进制数字3 字母“A”“Z” 十进制数字“0”“9” 起点终点1汉字10 起飞时间降落时间时分 时“00”“23” 分“00”“59” 日期年月日 年2000200120022004 月“01”“12” 日“01”“31”,§3.4 分析建摸方法,结构化分析(传统建模方法) 面向对象分析,§3.4.1 结构化分析方法,(Structured Analisys, SA) 基于数据流技术的分析方法 需求获取应遵循的三条基本原则: 分解 抽象 投影,分析模型的主要目标,描述用户需要 建立创建软件设计的基础 定义软件完成后可被确认的一组需求,分析模型的结构,数据 字典,数据 流图,E-R图,状态变迁图,加,工,规,约,控制规约,数,据,对 象,描 述,分析模型的元素,数据字典(DD):模型核心(中心库) E-R图(ERD): 数据流图(DFD) 指明数据在系统中移动时如何被变换; 描述对数据流进行变换的功能; DFD中每个功能的描述包含在加工规约 (小说明)。 状态变迁图(STD) 指明作为外部事件的结果,系统将如何 动作。,3.4.3 数据建模,E-R图是数据建模的基础,将分析模型转换为软件设计,数据 字典,数据 流图,E-R图,状态变迁图,加,工,规,约,控制规约,数,据,对,描 述,象,数 据 设 计,体系结构设计,接口设计,过程设计,分析模型,设计模型,将设计模型 金字塔倒立 的后果是什么?,数 据 设 计,体系结构设计,接口设计,过程设计,讨论要点,SA方法建立功能模型的描述方法 DFD DD 其他描述方法,3.4.4 功能建模和信息流,基于 计算机 的系统,输入信息,信息流模型,输出信息,外部实体,外部实体,外部实体,输入信息,外部实体,外部实体,输出信息,输出信息,一. 数据流图,(DFD,Data Flow Diagram) 描述逻辑模型的图形工具, 表示数据在系统内的变化。,实例 考务处理系统功能,(1)对考生送来的报名单进行检查; (2)对合格的报名单编好准考证号后将准考证送给考生,并将汇总后的考生名单送给阅卷站; (3)对阅卷站送来的成绩单进行检查,并根据考试中心制定的合格标准审定合格者; (4)制作考生通知单(含成绩及合格/不合格标志)送给考生; (5)按地区进行成绩分类统计和试题难度分析,产生统计分析表。,考务处理系统的分层DFD,顶层数据流图,考 生,考务 处理系统,考 试 中 心,阅卷站,不合格报名单,报名单,准考证,考生通知单,成 绩 清 单,合格标准,错误成绩 清单,考生名 单,统计分析表,登记 报名单,报名单,准考证,1,统计成绩,2,不合格 报名单,考生通知单,成,统计分析表,0层数据流图,考生名册,绩,清,单,合 格 标 准,考生名 单,成,绩,清,单,错,误,一层数据流图 (a),检查 报名单,报名单,准考证,1.1,编准考证号,1.2,不合格 报名单,考生名册,考生名单,合格 报名单,登记 考生,1.3,一层数据流图 (b),检查 成绩清单,2.1,审定 合格者,2.2,考生名册,正确 成绩清单,制作 通知单,2.3,分析 统计成绩,2.4,分析 试题难度,2.5,试题得分清单,考生 通知单,难度 分析表,合格 标准,分类 统计表,成绩清单,错误 成绩清单,经审定的 成绩清单,DFD可以用来表示一个系统或软件在任何层次上的抽象。 较大型软件系统DFD分成多层(子图、父图概念),可以表示数据流和功能的进一步的细节。,S,2,1,3,2.2,2.1,2.3,3.1,3.2,顶层 (不编号),0层,1层,数据流和控制流举例 (使用Ward和mellor符号),监控固件和 操作接口,每个固件状态,动作 警告,机器人初始化控制,操作命令,部件状态缓冲器,位置 命令,开始/停止,处理 机器人命令,机器人命令文件,操作 设置,处理活动,记录机器人动作,位串,数据和控制模型的关系,DFD,加工规约,加工模型,DFD,控制规约,控制模型,数据输出,数据条件,数据输入,控制输入,控制输出,加工 激活者,SafeHomede控制面板,与用户 交互,SAFEHOME,ARMED POWER,01,1,2,3,4,5,6,7,8,9,*,0,#,OFF ARAY STAY,MAX TEST BYPASS,INSTANT CODE CHIME,READY,panic,alarm check fire,away stay instant bypass not ready,SafeHomede的第0层,SafeHomede 软件系统,用户命令 和数据,显示信息,控制面板,传感器,传感器 状态,警铃,电话线,警告类型,电话号码 拨音,控制面板显示,SafeHomede的第1层,控制 面板,与用户 交互,控制 面板 显示,密码,电话号码拨音,传感器状态,显示信息,配置请求,用户命令 和数据,配置 系统,警 铃,电 话 线,传感器,配置信息,显示信息 和状态,监控 传感器,激活不 激活系统,传感器信息,密码 处理,警告类型,检验id信息,开始 停止,状态信息,监控传感器的第2层,电话号码拨音,传感器状态,配置数据,显示格式,配置信息,产生警告 信息,拨号,评估设置,传感器信息,读传感器,警告类型,传感器id类型,传感器id 类型定位,SafeHomede的第一层,控制 面板,与用户 交互,控制 面板 显示,显示活动状态(完成、在处理中),配置 系统,警 铃,电 话 线,传感器,配置信息,显示信息 和状态,监控 传感器,激活不 激活系统,警告 信号,密码 处理,传感器 事件,警告 状态,超时,闪烁标志,开关切换,SafeHomede的状态变迁图,读用户 输入,超时,监视系统 状态,传感器 事件行为,显示用户反馈,与“用户交互”有关,开关/切换,与“监视&控制系统”有关,显示活动状态,与“用户交互”有关,传感器事件,与“显示信息&状态”有关,与“监视&控制系统”有关,传感器事件,传感器事件,与“监视&控制系统”有关,传感器事件,与“显示信息 &状态”有关,闪烁,与“显示信息&状态”有关,二.数据字典(DD,DataDictionary),DD是对所有与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算有共同的理解,数据字典的作用,DFD中的数据流、数据存储表示某个有组织的数据集合,它们要由SA的其他描述工具-需求字典(数据字典)来描述,包括: 词条描述 数据结构描述 加工逻辑说明,DD中数据结构的描述方式 定义式 Warnier图 巴科斯范式(BNF),F1:航班信息文件航空公司名称航班号 起点终点日期 起飞时间降落时间 航空公司名称2字母4 航班号3十进制数字3 字母“A”“Z” 十进制数字“0”“9” 起点终点1汉字10 起飞时间降落时间时分 时“00”“23” 分“00”“59” 日期年月日 年2000200120022004 月“01”“12” 日“01”“31”,重复项:起点终点1汉字10 航空公司名称2字母4 航班号3十进制数字3 组合项:日期年月日 起飞时间降落时间时分 选择项:年2000200120022004 原数据项:字母“A”“Z” 十进制数字“0”“9” 时“00”“23” 分“00”“59” 月“01”“12” 日“01”“31”,定义式中使用的符,操作符 含义描述 定义为 与(顺序结构) . 重复(循环结构) 或(选择结构) , ( . ) 任选 mn 界域 ., 注释符,限制重复次数举例:,3,5 或,5,3, 表示允许重复3-5次, ,3,3 或,3,3, 表示恰好重复 3 次, , , ,1,表示至少出现 1 次,表示允许重复0至任意次,数据流条目,给出DFD中某个数据流的定义, 通常包括: 数据流标识 数据流来源 数据流去向 数据流的数据组成 流动属性描述:频率、数据量,购 书 单,发票,领书单,审查并 开发票,开领 书单,无效书单,学生,1,2,各班学生 用 书 表,举例:,学生,教材存量表,数据流条目说明举例,数据流名:发票 别名: 无 简述: 学生购书时填写的项目 来源: 学生 去向: 加工1“审查并开发票” 组成: (学号)姓名书号数量 数据流量:1000次/周 高峰值:开学期间1000次/天,数据存储条目(数据文件词条),对某个文件的定义,包括: 文件名 描述 数据结构 数据存储方式 关键码 存取频率和数据量 安全性要求,数据存储条目说明举例,文件名:库存记录 别名: 无 简述:存放库存所有可供货物的信息 组成:货物名称编号生产厂家 单价库存量 组织方式:索引文件,以货物编号为 关键字 查询要求:要求能够立即查询,数据项条目(数据元素词条),不可再分解的数据单位,包括: 名称 描述 数据类型 长度(精度) 取值范围及缺省值 计量单位 相关数据元素及数据结构,数据项条目说明举例,数据项名:货物编号 别名:G-No,G-num 简述:本公司的所有货物的编号 类型:字符串 长度:10 取值范围及含义: 第1位:JG (进口/国产) 第24位:LB01 LB29 (类别) 第57位:“A00”“A99” (规格) 第810位:“001”“999”(品名编号),F1:航班信息文件航空公司名称航班号 起点终点日期 起飞时间降落时间 航空公司名称2字母4 航班号3十进制数字3 字母“A”“Z” 十进制数字“0”“9” 起点终点1汉字10 起飞时间降落时间时分 时“00”“23” 分“00”“59” 日期年月日 年“00”“99” 月“01”“12” 日“01”“31”,存折户名所号帐号开户日期性质 (印密)1存取行50 户名2字母24 所号“001”“999”(注:储蓄所编码, 规定三位数字) 帐号“00000001”“99999999” (注:帐号规定由八位数字组成) 开户日期年月日 性质“1”“6”(注:“1”表示普通户, “5”表示工资户等) 印密“0”(注:印密在存折上不显示) 存取行日期(摘要)指出存入余额 操作复核,年2001200220032004 月“01”“12” 日“01”“31” 摘要1字母4(注:表明该存取是存?是取? 还是换?) 支出金额(注:金额规定不超过9999999.99元) 存入金额 余额金额 金额“0000000.01”“9999999.99” 操作“00001”“99999” 复核“00001”“99999” 字母“a”“z”“A”“Z”,购书单,缺书单,销售,采购,1,2,第二层DFD(层) 教材购销系统,教材存量表,学 生,F1,缺书登记表,F2,书库 保 管 员,进书通知,教材入 库信息,领书单,DF01-10,DF20-02,销售,采购,1.0,2.0,第二层DFD(层) 教材购销系统,教材存量表,学 生,F1,缺书登记表,F2,书库 保 管 员,DF02-20,DF20-10,DF10-01,1,2,XSMD,CGMD,DD数据流条目说明举例,图号 DF01-10 /*有效购书单*/ DF01-10 = 学号姓名 书号数量,加工条目(加工逻辑说明),加工类条目即数据处理描述,也称为小说明。描述实现加工的策略而不是实现加工的细节。 小说明可认为是DD的组成部分。 也可在DD中定义只说明每个加工的组 成(每个处理分解成多少小处理),而在 小说明中详细描述它的处理逻辑.,加工条目(加工逻辑说明),加工逻辑名:登记报名单 编号:1.0 激活条件:收到报名单 加工逻辑:1.1 检查报名单 + 1.2 编准考证号 + 1.3 登记考生 执行频率:2000次/日,定义方法,找出所有数据元素 (数据流,数据存储,数据项,加工) 对数据项分类 作结构定义 排序 DD的分类 DD中的命名(遵守系统开发规范规定),DD的实现,(1)人工方法 (2)自动方法(利用字典管理程序) DD应具特点 (1)通过名字可方便查阅数据定义 (2)无冗余 (3)易更新修改,3.小说明(加工逻辑说明的另一种形式),描述的内容: (1) 处理逻辑 描述基本加工如何把输入数据流变化为输出数据流的加工原则,不涉及具体处理方法。 (2) 执行条件 (3) 输入 (4) 输出 (3) 优先级 (4) 执行频率 (5) 出错处理对策,小说明举例,加工名: 分类采购(CG111MD) 编号: 1.1.1 加工激活条件: 受到图书采购员分类 采购操作命令 加工逻辑: (1) 1.1.1.1 预定图书 (2) 1.1.1.2 外采图书 (3) 1.1.1.3 赠送图书 执行频率: 随时,小说明举例,处理名:月票额统计(MHCW713MD) 编号: 7.1.3 激活条件:收到每日售票额信息 处理逻辑:1 统计月保险金总合 月保险金信息=每日日保险 金信息之和 2 统计月合计 月合计信息=每日日合计信息之和 执行频率: 1次/月,描述加工逻辑的工具:,结构化语言 判定表 判定树,结构化语言,介于自然语言和形式语言之间的语言 结构化语言的特点: 无确定语法 可分层、嵌套,处理名:核实订票处理(MHGP3200MD) 编号: 3.2 激活条件:收到取订票信息 处理逻辑:1读订票旅客信息文件 2搜索此文件中是否有与输入信息 中姓名及身份证号相符的项 IF 有 THEN 判断余项是否与文件中信 息相符 IF 是 THEN 输出已订票信息 ELSE 输出未订票信息 ELSE 输出未订票信息 执行频率: 实时,判定表(决策表),描述多条件、多目标动作的形式化工具,判定表举例 (计算机票折扣率),旅游时间,订 票 量,折 扣 量,79,12月,20,20, 20, 20,15%,5%,20%,30%,条件类别,四种条件组合,操作,条件组合下操作的执行,16,10,11月,处理名:计算折扣率(MHGP534MD) 编号: 5.3.4 激活条件:收到预订票信息 处理逻辑:计算折扣率 执行频率: 实时,旅游时间,订 票 量,折 扣 量,79,12月,16,10,11月,20,20, 20, 20,15%,5%,20%,30%,判定树(Decision 决策树),条件1 条件2 结果 计 79, 订票量20: 15% 算 12月 订票量20: 5% 折 扣 16, 订票量20: 30% 量 10,11月 订票量20: 5%,二. 结构化分析实施步骤,1. 确定系统边界, 画出系统环境图 2. 自顶向下,画出各层数据流图 3. 定义数据字典 4. 定义小说明,三. 需求规格说明书(SRS),(Software Requirement Specification) 需求分析阶段要完成的文档。 SRS的作用: 开发者与用户间事实上的技术合同书 开发者下一步设计和编码的基础 测试验收目标系统的依据,SRS大纲(模板),引言 任务概述(项目概述) 数据描述(DFD、DD) 功能描述 接口 性能需求 属性 其它需求,三. 需求验证,(1) 正确性 (2) 无二义性 (3) 完整性 (4) 可验证性 (5) 一致性 (6) 可理解性 (7) 可修改性 (8) 可被跟踪性 (9) 可跟踪性 (10)设计无关性 (11)注释,需求文档的陈述与改进举例(1),产品必须在固定的时间间隔内提供状态消息,并且每次时间间隔不得小于60秒。,后台任务管理器(BTM)应该在用户界面的指定区域显示状态消息。 a. 在后台任务进程启动之后,消息必须每隔60(10)秒更新一次,并且保持连续的可见性。 b. 如果正在正常处理后台任务进程,那么后台任务管理器(BTM)必须显示后台任务进程已完成的百分比。 c. 当完成后台任务时,后台任务管理器(BTM)必须显示一个“已完成”的消息。 d. 如果后台任务中止执行,那么后台任务管理器(BTM)必须显示一个出错信息。,需求不完整, 导致需求不可验证,改 进,需求文档的陈述与改进举例(2),产品必须在

    注意事项

    本文(第一章软件工程概述.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开