软件工程总结.ppt

上传人:王** 文档编号:168448 上传时间:2023-03-10 格式:PPT 页数:12 大小:270.50KB
下载 相关 举报
软件工程总结.ppt_第1页
第1页 / 共12页
软件工程总结.ppt_第2页
第2页 / 共12页
软件工程总结.ppt_第3页
第3页 / 共12页
软件工程总结.ppt_第4页
第4页 / 共12页
软件工程总结.ppt_第5页
第5页 / 共12页
软件工程总结.ppt_第6页
第6页 / 共12页
软件工程总结.ppt_第7页
第7页 / 共12页
软件工程总结.ppt_第8页
第8页 / 共12页
软件工程总结.ppt_第9页
第9页 / 共12页
软件工程总结.ppt_第10页
第10页 / 共12页
亲,该文档总共12页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《软件工程总结.ppt》由会员分享,可在线阅读,更多相关《软件工程总结.ppt(12页珍藏版)》请在优知文库上搜索。

1、软件软件 = 程序程序+数据数据+文档文档 程序程序 = 算法算法+数据结构数据结构神话2:如果我们没能按时完成计划,可以通过增加程序员人数而赶上进度。(X)神话5:当我们完成程序并将其交付使用后,我们的任务就完成了。 (X)神话6:对于一个成功的软件项目,可执行程序是唯一可交付的成果(X)3、质量的观点质量的观点超越的观点超越的观点(Transcendental view):质量是可以认识而不能定义的用户的观点用户的观点(User view ):质量是恰好达到目的制造的观点制造的观点( Manufacturing view):质量是与需求说明的一致产品的观点产品的观点( Product vi

2、ew):质量是与产品的内在特性相联系的基于价值的观点基于价值的观点( Value-based view):质量取决于顾客愿意支付的金额4、至少得从三个方面考虑、至少得从三个方面考虑产品质量、过程质量、商业环境中的质量(1)定义系统边界:边界指出了项目包含的内容和不包含的内容(2)确定活动和对象 活动活动:触发器引发的事件和行为,活动将改变事物 对象:对象:活动中涉及的所有要素,系统中对象是有联系的(3)考虑嵌套的系统、相互关联的系统 (1)交付时间的重要性 (2)计算行业经济的变化趋势 (3)功能强大的桌面运算 (4) 互联网络 (5)面向对象的技术 (6)图形用户界面 (7)瀑布模型的不可预

3、知性抽象:从复杂且多样性的现象得到事物的本质特性分析、设计方法和符号:标准化的方法和符号避免歧义用户界面原形:帮助用户捕获真实的需求 验证设计或方法的可行性软件过程:软件过程保证了系统的可控性软件体系结构:体系结构是解决方案的分解,系统如何分解为若干单元,这些单元间是如何联系的及单位的外部可见性。 (系统分解方法:基于模块的分解、面向数据的分解、面向事件的分解、由外到内的设计、面向对象的设计)复用:如何利用不同应用程序中的共性? 复用度量:必须对目标和完成工作进行量化工具和集成环境:任何工具和集成环境必须处理的5个问题- 平台集成、数据集成、表示集成、控制集成、过程集成 1、“科学和数学的应用

4、,通过这种应用将自然界中的物质属性和能量源变得对人类有用” 2、工程化的基本概念是以可重复的一致的方式来解决问题 软件工程软件工程 Fritz Bauer 为了经济的获得可靠的,在实际机器上高效运行的软件,而建立和使用的好的工程原则。软件工程软件工程IEEE93软件工程是(1)将系统的、规范的、可度量的方法应用于软件的开发、运行和维护的过程。即工程化方法应用于软件。(2)在(1)中所述方法的研究使用方法、工具、过程提高质量 目的:目的:为了按照进度和预算完成软件开发计划 内容:内容:成本估算、进度安排、人员组织、质量保证 计算机科学: 研究计算机相关的理论 软件工程:把计算机技术看作工具,用以

5、解决问题软件过程模型是软件开发全过程、软件开发活动以及它们之间关系的结构框架;它会使软件开发变得可控可行性研究可行性研究需求分析需求分析概要设计概要设计详细设计详细设计实现实现任务了解用户要求和现实环境。确定用户对软件系统的需求根据SRS建立目标软件系统的总体结构、设计全局数据库和数据结构,规定设计约束,等。细化概要设计所生成的各个模块, 并详细描述程序模块的内部细节根据详细设计规格说明书编写源程序,并对程序进行调试、单元测试、系统集成,验证程序与详细设计文档的 一致性过程/原则/方法技术可行性 操作可行性 经济可行性 需求分析人员必须与用户不断、反复地交流和商讨,使用户需求逐步准确、一致、完

6、全。结构化分析方法、面向对象的分析方法等原则:坚持功能模块内部高内聚,功能模块之间松耦合坚持与需求规格说明书的一致性以详细设计规格说明书为依据、基于某种程序设计语言进行编码结构化程序设计、面向对象程序设计工作产品可行性报告软件需求规格说明书SRS用户需求定义文档概要设计规格说明书数据库或数据结构设计说明书集成测试计划详细设计规格说明书, 单元测试计划源程序代码单元测试单元测试集成测试集成测试确认测试确认测试使用和维护使用和维护任务对模块进行测试组装测试应满足概要设计的要求根据软件需求规格说明书,测试软件系统是否满足用户的需求软件工作环境不断变化,软件也必然跟着变化,软件必须不断进化以满足客户的

7、需求变化,这是软件产品最根本的特性。过程/原则/方法黑盒测试白盒测试测试模块连接的正确性; 测试系统或子系统的I/O; 测试系统的功能和性能用户参与,以软件需求规格说明书为依据进行确认测试正确性维护 扩充性维护 适应性维护软件产品的新版本工作产品单元测试报告满足概要设计要求的程序、组装测试报告可供用户使用的软件产品(文档,源程序)统一软件开发过程统一软件开发过程(RUP)就是基于构件开发模型的代表。使用统一建模语言。就是基于构件开发模型的代表。使用统一建模语言。 RUP是一种以“用例驱动、以体系结构为核心、迭代及增量”的软件过程框架。由UML方法和工具支持,RUP是二维的先启:定义整个项目的范

8、围,用例建模,对某些重要元素进行需求分析精化:制定项目计划、描述功能、建立体系架构框架和可执行的“体系结构基线”,精化化阶段不是一个需求或设计阶段,而是一个迭代实现核心架构并降低高风险的阶段构建:构造软件产品产品化:将软件产品移交到最终用户手中阶阶段结束标志着重要的里程段结束标志着重要的里程碑碑24、管理由五项要素组成:计划、组织、指挥、协调和控制25、项目管理:项目的管理者,在有限的资源约束下,运用系统的观点、方法和理论,对项目涉及的全部工作进行有效地管理 26、生命周期目标里程碑生命周期 体系架构 里程碑初始可运行 能力里程碑 产品发布时间27、为什么要做WBS?软件的成本、进度、质量顺利

9、完成需要估算都需要且依赖WBS做项目管理28、WBS目的32、三种常见的组织形式、三种常见的组织形式具有不同的通信路径数核心程序员制小组(高结构化 ):高确定性,重复,大项目民主制小组(松散结构):不确定,新技术或工艺,小项目层次式小组(高结构化和松散结构两者之间) LOC:代码行可以分为无注释的源代码行(NCLOC)和注释的源代码行(CLOC),源代码的总行数LOC即为NCLOC与CLOC之和。利用LOC为指标进行估算 FP:功能点,根据事务信息处理程序的基本功能定义的,利用FP为指标进行估算。34、LOC与FP的优缺点LOC优缺点:优点: 用软件代码行数估算软件规模简单易行。缺点代码行数的

10、估算依赖于程序设计语言的功能和表达能力;采用代码行估算方法会对设计精巧的软件项目产生不利的影响;在软件项目开发前或开发初期估算它的代码行数十分困难;代码行估算只适用于过程式程序设计语言,对非过程式的程序设计语言不太适用等等。FP优缺点:优点与程序设计语言无关,它不仅适用于过程式语言,也适用于非过程式的语言;软件项目开发初期就能基本上确定系统的输入、输出等参数,功能点度量能用于软件项目的开发初期。缺点它涉及到的主观因素比较多,如各种权函数的取值;信息领域中的某些数据有时不容易采集; FP的值没有直观的物理意义。FP贯穿于整个软件周期,从用户的角度定义系统的能力35、如何识别、如何识别EQ、EO、

11、EI?(1)外部输出EO是指一个是指一个向应用边界之外发送数据或控制信息的基本处理,外部输出的基本目的是为了向用户展示一组经过了除提取之外的其他逻辑处理数据或者控制信息,这里的其他包括至少一个数学演算或对衍生数据的生成。也可能包括对内部逻辑文件的维护或者对系统行为的改变(2)外部查询也是指一个是指一个向应用边界之外发送数据或控制信息的基本处理,但它的目的是向用户展示提取的数据或控制信息,但并不包括EO中的其它处理36、一个应用程序中的EIF必然是其它应用程序中的EIF37、数据元素类型(Data Element Types DET)记录元素类型(Record Element Types RET

12、)FP计算:FP=CT*0.65+0.01*Fi 其中:CT为未调整功能点Fi 是复杂性调节值 Fi 取值 0,1,.,5 38、成本估算类型专家判定、算法模型、机器学习39、可靠性估算:与软件可靠性密切相关的程序中残留错误数的估算和平均故障间隔时间的估算 方法:错误植入法、分别测试法、软件平均故障间隔时间估算40、进度估算与管理(1)制订项目计划(2)在项目计划的过程中,进行监控与控制41、进度管理指导原则划分、相互依赖性、时间分配、工作量确认、定义责任、定义结果、定义里程碑:41、进度安排图表(1)网络图 展示项目中的各个活动以及活动之间的逻辑关系;网络图是活动排序的一个输出;网络图可以表

13、达活动的经历时间。常用网络图有PDM、ADM 1、完成对开始:后一活动的开始要等到前一活动的完成。2、完成对完成 3、开始对开始 4、开始对完成:(2)甘特图也称时间表(Timeline chart),用来建立项目进度表在甘特图中,每项任务的完成以必须交付的文档和通过评审为标准(3)里程碑图:里程碑显示项目进展中的重大工作完成(4)资源图43、进度编制的常见技术 关键路径法(CPM)正推法 + 逆推法 计划评审技术(PERT) 图形评审技术(GERT)44、计划评审技术(PERT)与CPM之间的区别PERT同CPM的主要差别在于PERT使用期望值来估算时间,而不使用CPM所用的最大可能估计。4

14、5、如何评价计划评审技术与实际工期的偏差?网络计划按规定日期完成的概率: =(Q-M)/ Q为网络计划规定的完工日期或目标时间;M为关键线路上各项工作平均持续时间的总和;为关键线路的标准差;为概率系数。46、什么是风险?风险管理分为那几步?风险:在给定情况下和特定时间内,那些可能发生的结果与预期结果之间的差异,差异越大,风险越大风险管理就是识别评估风险,建立、选择、管理和解决风险的可选方案和组织方法包括了风险标识、风险预测、风险评估和风险管理与监控四个活动风险的类别:项目风险、技术风险、商业风险一个有效的策略应考虑以下3个问题:1.风险避免(最好办法)2.风险监控3.风险管理及监控计划RMMP

15、48、高质量的软件应该具备以下条件:满足软件需求定义的功能和性能(用户观点)文档符合事先确定的软件开发标准(制造观点)软件的特点和属性遵循软件工程的目标和原则(产品观点)49、QA与QC的区别 质量控制(QC):为保证每一件工作产品都满足需求而应用于整个开发周期中的一系列审查、评审和测试,质量控制在创建工作产品的过程中包含一个反馈循环,所有工作产品都应该具有定义好的和可度量的规约。 质量保证(QA):建立一套有计划,有系统的方法,来向管理层保证拟定出的标准、步骤、实践和方法能够正确地被所有项目所采用。 50、软件质量控制(1)采用技术手段保证软件质量(2)组织技术评审(3)加强软件测试(4)推

16、行软件工程标准(5)对软件的修改、变更进行严格控制(6)对软件质量进行度量51、软件评审的方法:正式评审、非正式评审(informal reviews)-“走查”52、什么是软件配置?什么是软件配置管理?软件配置是由在软件工程过程中产生的所有信息项构成的,它可以看作该软件的具体形态(软件配置项)在某一时刻的瞬间影像;软件配置管理:协调软件开发使得混乱减到最小的技术叫做软件配置管理,它是一种标识、组织和控制修改的技术,目的是使错误达到最小并最有效地提高生产效率。”53、软件配置管理的目标:标识变更、控制变更、确保变更、报告变更54、软件配置管理的关键活动:状态报告、配置审计、变更控制、版本控制、配置空间管理、配置项识别55、配置项的操作权限应由CMO严格管理。基本原则是:基线配置项向软件开发人员开放读取得权限;非基线配置项向PM、CCB及相关人员开放。 (CMO-配置管理员-执行者,CCB-配置控制委员会-决策者

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 工作总结

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!