软件工程和软件过程改进

上传人:公**** 文档编号:379406869 上传时间:2022-10-09 格式:DOCX 页数:20 大小:36.25KB
返回 下载 相关 举报
软件工程和软件过程改进_第1页
第1页 / 共20页
软件工程和软件过程改进_第2页
第2页 / 共20页
软件工程和软件过程改进_第3页
第3页 / 共20页
软件工程和软件过程改进_第4页
第4页 / 共20页
软件工程和软件过程改进_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《软件工程和软件过程改进》由会员分享,可在线阅读,更多相关《软件工程和软件过程改进(20页珍藏版)》请在金锄头文库上搜索。

1、软件开发方法1.开发方法分类1.自顶向下开发方法和自底向上开发方法2.形式方法和非形式方法3.整体性方法和局部行方法4.软件自动化方法2.软件开发模型瀑布模型演化模型:增量模型,螺旋模型,构件组装模型,并发开发模型喷泉模型对软件复用和生存周期中多项开发活动的集成提供了支持,主要面对对象的开发方法。无间隙是指在开发活动,即分析,设计和编码之间不存在明显的边界。智能模型基于知识的软件开发模型。应用基于规则的系统,采用规约和推理机制。RAD模型线性顺序模型,强调极短的开发周期和可复用程序构件的开发。RAD方法包含业务建模,数据建模,处理建模,应用生成,测试及反复五个阶段。并非所用应用软件都适合使用R

2、AD。原型模型3.第4代技术能使软件工程师在较高级别上说明软件的某些特征,然后利用工具根据开发者的说明自动生成源代码。关键在于说明软件的能力,它用特定的语言来完成或者以一种用户可以理解的问题描述方法来描述待解决的图形来表示。开发者还必须进行测试,写成有意义的文档,并完成其他软件工程范型中同样要求的所有集成活动。必须考虑维护是否能够迅速实现。4.原型化方法(用户没有明确的需求)原型的分类水汽原型和垂直原型(结构化,行为化)抛弃型原型和演化型原型(解决需求不确定)实验型,探索型和演化型抛弃式原型,演化式原型和递增式原型哪些系统适合原型法(系统结构,逻辑结构,用户特征,应用约束,项目管理,项目环境)

3、原型生命周期原型法的准则大多数的应用系统都能从一个小的系统结构集合(批处理,联机处理)中导出。多数系统使用一个常用和熟悉的功能集合。大多数的输入编辑能从一个小的编辑模型集合中导出。基于一个4步的报表模型生成应用系统的报表。有一个正确的设计结构集合,对原型将会产生积累作用。原型法的策略用第三范式规范数据,建立应用系统的数据模型。大多数富有成效的建立模型的途径是利用组合工程最有成效的建立模型的途径是“裁剪和粘贴”。用系统举例。字典驱动的软件结构。文档的自动化。小的原型化队伍。(2-3人)交互式的和综合的原型开发者的工作台。陈述性规格说明。终端用户报表生成器。专业的原型化人员。开发人员参加原型化。混

4、合原型化策略只对屏幕的原型化使用购买到的应用系统作为初始原型。可行性分析中的原型化子系统原型化原型与需求建议最终用户进行原型化。原型化中心开发,生产,信息,原型化中心原型化与项目管理过程估计,费用重新分配,变化控制,活动停止5.敏捷方法XP中每次发布的内容不是演示版,而是实用版。XP的核心是其总结的沟通,简单,反馈,勇气四大价值观。XP方法论属于轻量级,也就是文档量少,遵从“代码就是文档”的思想。XP是适合于中小型团队在需求不明确或者迅速变化的情况下进行软件开发。XP的12中最佳实践计划游戏,小型发布,隐喻,简单设计,测试先行,重构,结对编程,集体代码所有制,持续集成,每周工作40小时,现场客

5、户,编程标准。6.净室软件工程使用盒结构规约(或形式化方法)进行分析和设计建模,并且强调将正确性验证,而不是测试,作为发现和消除错误的主要机制。使用统计的测试来获取认证被交付的软件的可靠性所必需的出错率信息。总体规划与软件定义1. 任务制定软件的开发战略确定组织的主要信息需求,形成软件的总体结构方案,安排项目开发计划。制定系统建设的资源分配计划。2. 步骤1. 对当前系统进行初步的调查。2. 分析和确定系统目标。3. 分析子系统的组成以及基本功能。4. 拟定系统的实施方案。5. 进行系统的可行性分析。6. 变形可行性报告。3. 方法关键成功因素法。战略目标集转化法。企业系统规划方法。4. 目标

6、系统框架分析分析管理目标和系统目标1. 根据系统调查的结果进行分析,总结出现行系统中的关键问题,做出问题表。2. 根据问题表,构造目标的层次结构3. 对目标树种的各项分目标进行分析。4. 将目标树按各层分目标在系统中所起的作用重新绘制。确定系统范围和功能1. 绘制出系统的总数据流程图。2. 根据系统方案的要求,用户的要求和现行系统的环境及确定系统边界的原则,在总数据流图上圈出系统范围。3. 与用户讨论,协商修改有关内容。4. 确定系统范围,并做分析说明。确定系统总体结构和投资概算1. 计算机系统软硬件设备投资2. 系统开发费3. 系统安装4. 维护费用5. 人员培训费5.可行性分析经济可行性技

7、术可行性管理上的可行性开发环境的可行性可行性分析的步骤1.核实问题定义与目标。2.研究分析现有系统。现有系统的物理模型(怎么做)现有系统的逻辑模型(做什么)新系统的逻辑模型新系统的物理模型3.为新系统建模。系统上下文关系范围图实体关系图用例模型域模型IPO表4.用户复核。5.提出并评价解决方案6.确定最终推荐的解决方案7.草拟开发计划8.提交可行性分析报告6.成本/效益分析项目的成本:基础建设支出,一次性支出和运行维护费用。项目的收益:一次性继续收益,非一次性的经济收益,非经济收益。7.详细调查原则自顶向下全面展开存在的不一定是合理的分工和协助相结合点面相结合展开调查主动沟通的工作方式方法收集

8、资料开调查会个别访问书面调查参加业务实践发电子邮件注意事项事先计划调查态度调查顺序研究分析8.新旧系统的分析和比较目的评估旧系统存在的问题,评估升级旧系统的价值和升级的代价寻找旧系统中存在的主要问题,为新系统的设计目标提供参考在新系统方案确定后,进行新旧系统的比较以便验证新系统的设计是否完备理解新旧系统之间的差异,确定新旧系统转换的技术路线原则比较新旧系统复杂问题控制规模转换策略直接转换逐步转换并行转换需求分析目标是深入描述软件的功能和性能,确定软件设计的约束和软件同其他系统元素的借口细节,定义软件的其他有效性要求。任务就是借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决目标系统的“做什么

9、”的问题。在系统需求分析阶段,就要拟定系统的目标、范围和需求,明确项目视图和范围。工具主要有数据流图、数据词典、结构化语言、判定表及判定树等。1. 需求工程需求开发需求定义需求获取需求分析需求验证需求管理2. 需求分类业务需求用户需求功能需求非功能需求3. 需求定义方法严格定义方法所有需求都能够被预先定义开发人员与用户之间能够准确清晰的交流采用图形模型/文字可以充分体现最终系统修改定义不完善的系统代价昂贵且实施困难严格方法的生命周期的各个阶段的划分都是正确的原型定义方法并非所有的需求都能在系统开发前都被准确的说明。项目参加者之间通常都存在交流上的困难,原型提供了克服该困难的一个手段。需要实际的

10、、可供用户参与的系统模型。有合适的系统开发环境和快速的系统建造工具。反复是完全需要和值得提倡的,但需求一旦确定,就应遵从严格的方法。需求捕获方法用户访谈用户调查现场观摩阅读历史文档联合讨论会4. 需求分析方法结构化分析方法面向对象分析方法面向问题域的分析5. 业务流程分析1.通过调查掌握基本情况2.描述现有业务流程(绘制业务流程图)业务处理单位,业务处理,表格制作,数据收集,储存,业务流向3.确认现有业务流程4.对业务流程进行分析5.发现问题,提出解决方案6.提出优化后的业务流程6. 业务流程再造(BPR)有一个明确的、具有启发性的目标,即共同远景。充分考虑客户的价值必须服务统一指挥充分做好横

11、向及纵向沟通认识流程再造的2大要素:信息技术/信息系统和人员组织管理树立典型,逐步推进,充分利用变革的涟漪效应7. 数据流图数据流,加工,数据存储,外部实体原则明确系统边界自顶向下,逐层分解在局部上循环由外向里的原则步骤a) 识别系统的输入和输出b) 绘制系统的内部数据流c) 对复杂的加工进行分解d) 就草图进行检查和合理布局e) 和用户交流f) 检查、修改和完善注意事项数据流图上所有图像符号只限于4中基本图形元素顶层数据流图必须包括4种基本元素,缺一不可顶层数据流图上的数据流必须封闭在外部实体之间每个加工至少有一个输入数据流和一个输出数据流,一个加工的输出数据流只由他的输入数据流确定数据流必

12、须经过加工,即必须进入加工或从加工中流出在数据流图中,需按层给加工框编号,编号表明该加工处在那一层,以及上下层的父图与子图的对应关系规定任何一个数据流子图必须与它上一层的一个加工对应,两者的输入数据流和输出数据流必须一致可以在数据流图中加入物质流,帮助用户理解数据流图图上每个元素都必须有名字数据流图中不可夹带控制流8. 数据字典数据元素数据结构数据流数据储存外边实体加工(处理)9. 软件需求说明书用好的结构化和自然语言编写文本型文档。建立图形化模型,这些模型可以描绘装换过程、系统状态和它们之间的变化、数据关系、逻辑流或对象类和他们的关系。编写形式化规格说明,这可以通过使用数学上的精确的形式化逻辑语言来定义需求。总体结构设计模块是组成系统的基本单位,它的特点是可以组合、分解和更换。一个模块应该具备4个要素,分别是输入和输出、处理功能、内部数据和程序代码。模块独立性是指软件系统中每个模块只设计软件要求的具体子功能,而和软件系统中其他的模块接口是简单的。模块独立的概念是模块化、抽象、信息隐藏和局部化概念的直接结果。1. 内聚内聚性:高 低功能内聚 顺序内聚 通信内聚 过程内聚 时间内聚 逻辑内聚 巧合内聚模块独立性:强 弱功能单一 功能分散2. 耦合耦合性:低 高非直接耦合 数据耦合 标记耦合 控制耦合 外部耦合 公共耦合 内容耦合模块独立性:强

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号