- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
再工程过程示意图 需求 新需求 设计 设计 代码 代码 正 向 工 程 反 向 工 程 (重构) (重构) (重构) 逆向工程(反向工程reverse engineering) 设计的 恢复过程 非结构化、无文档 的源代码或目标代码 软件的文档 通过检验产品的实际样品,获得产品的有关设计或制造的规格说明 逆向工程过程 将要再工程 的系统 自动分析 手工加注释 系统 信息库 文档生成 数据 结构图 程序 结构图 可追溯 矩阵 逆向工程恢复信息的级别: (1)实现级:程序的抽象语法树、符号表等信息 (2)结构级:反映程序分量之间相互依赖关系的信息,如调用图、结构图等. (3)功能级:反映程序段功能和段间关系的信息 (4)领域级:反映程序分量与应用领域概念间对应关系的信息 抽 象 级 别 低 高 信息的抽象级别越高, 它与代码距离越远, 通过逆向工程恢复的难度越大, 自动工具支持的可能性变小 逆向工程 源程序 目标代码 反汇编、反编译 程序分析技术:程序结构分析工具 程序功能分析工具 源程序 概要设计 详细设计 概要设计 需求分析 补充:软件工程管理技术 一、软件工程管理的重要性 先进的管理技术往往是大型软件开发成功的关键。 二、软件工程管理技术 1、成本估算 2、开发计划 开发计划安排 人员组织管理 开发计划安排 表达计划安排的三种主要工具: (1)一般表格工具——进度表 (2)甘特图(Gantt Chart) 实线 — 已完成 虚线 — 未完成 任务 时 间 A B C 5 10 15 20 时标网状图— 改进的 Gantt Chart 任务 A B C 5 10 15 20 A1 ① ② ⑤ ③ ④ B1 B2 (3)PERT图 Program Evaluation Review Technique 进度计划与评审技术,是一种网络图。 1 2 3 4 5 6 7 8 9 10 11 调查研究 20天 系统分析 30天 系统设计 60天 系统调试 30天 子系统1编调40天 建立文件库 30天 子系统2编调30天 用户培训 20天 建立硬件系统30天 通过计算可以找出一条关键路径,计算出完成系统总时间。 界面设计 25天 界面调试10天 … … 人员组织安排 一、人员组织原则 1、专人负责、有责、有权。 2、切忌开发过程中增加人员。 例:一组4个软件工程师,独立开发 5000行/年,每条联系路径降低工作生产率250行/年。小组生产率为: 20000-250?6=18500行/年 新增加2人,生产率为840行/年, 联系路径增加到15条。小组生产率为:20000+840 ? 2-250 ?15=17930 6条联系路径 15条联系路径 二、组织模式 1、按课题划分小组。 2、按工作阶段划分小组。 3、矩阵型模式 负责 工作 项目1 经理1 项目2 经理2 项目3 经理3 项目4 经理4 信息采集 Y Y Y 信息系统 Y Y 图形处理 Y Y Y 软件测试 Y Y Y Y 软件维护 Y Y Y 三、按开发进度进行人员配置 1、按 40 —20 — 40 模式 前 编码 后 2、按 Putnam—Norden 曲线 软件计划 5 - 6% 需求分析 10-20% 软件设计 20-30% 编 码 10-20% 软件测试 30-50% 高 低 计划 需求分析 初步设计 详细设计 编码 单元测试 整体测试 功能测试 高级技术人员 初级技术人员 管理人员 三、系统评价 1、经济指标评价 2、性能指标评价 3、管理指标评价 第八章 系统的维护 什么是维护 所谓软件维护就是在软件已经交付使用之后,为了改正错误或满足新的需求而修改软件的过程。 维护的目的 保证软件系统能持续的与用户环境、数据处理操作、政府或其他有关部门的请求取得协调。 8.1 软件维护的类型 软件维护是指软件系统交付使用以后,为了改正错误或满足新的需求而修改软件的过程。按照不同的维护目的,维护工作可分成4类。 完善性维护(Perfective Maintenance) 扩充原有系统的功能,提高原有系统的性能,满足用户的实际需要。 纠错性维护(Corrective Maintenance) 对在测试阶段未能发现的,在软件投入使用后才逐渐暴露出来的错误的测试、诊断、定位、纠错以及验证、修改的回归测试过程。 一、软件维护的类型 软件维护的
文档评论(0)