




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
高质量软件开发之道内建高质量而非修补质量的理念与方法林锐博士rui.linalcatel-论文来源,目录,1.IT企业面临的软件工程难题与对策2.软件过程改进:理念与解决方案3.细说软件质量4.高质量软件开发的理念:内建质量而非修补质量5.现场交流,请准备你关心的问题,写纸条、提问均可,1.IT企业长期面临的软件工程难题,1.1企业的目的根本目的:合法地赚钱,获取尽可能多的利润。第一推论:为了使利润最大化,产品开发应当“做得好、做得快并且少花钱”软件工程学科的目的:提高软件产品质量、提高生产率并且降低开发成本质量、生产率、成本之间的复杂关系成本重要还是TimetoMarket重要?1.2企业长期面临的软件工程难题产品质量低下、进度延误、费用超支(软件工程学科发展30年尚未彻底解决)经典软件工程:研究需求分析、系统设计、编程、测试、维护等领域的方法、技术和工具问题之源:人们逐渐意识到,由于企业管理软件过程的能力比较弱,常常导致项目处于混乱状态。过程混乱使得新技术、新工具的优势难以体现。经典的软件工程不是不好,而是不够用。用于提高软件过程能力的实践通称为软件过程改进。,2.软件过程改进:理念与解决方案,2.1软件过程改进理念提高软件过程能力可以比喻为“练内功”,“练内功”没有捷径可走,唯有走“规范化”之路,即“制定适合于本企业的软件过程规范,并按照此规范执行”。“规范化”不会抑止人们的创造力,相反地,它使得团队可以大规模地复用前人积累的智慧和财富。这种方法非常适合于现代的工业化生产。(麦当劳与中餐馆对比)业界实践已经证明,走“规范化”之路是“成本最低、见效最快、能持续发展”的软件过程改进方法,犹如人类的“养生之道”。任何IT企业(不论大小),都有办法以其承受得起的代价“走规范化之路”,从而有效地提高软件过程能力。2.2IT企业软件过程改进的需求首先制定适合于本企业的软件过程规范。对员工们进行培训,指导他们依据规范来开发产品。购买一些软件工程和项目管理工具,提高员工们的工作效率。2.3CMMI3级软件过程改进解决方案通用的CMMI3级软件过程改进方法与规范,命名为“精简并行过程”(SPP)。与SPP配套的软件工程和项目管理培训教材。一套基于Web的集成化软件项目管理工具,主要功能包括项目规划、项目监控、质量管理、配置管理、需求管理、工作流管理等,命名为Future。,CMMI3级精简并行过程SPP模型,软件工程著作,基于Web的集成化软件项目管理工具,3.细说软件质量,3.1如何描述质量用人的健康做类比如何判断人是否健康?体检因素:身高、体重、心跳、血压、血液、体温等运行正确的软件就是高质量的软件吗?不贪污的官就是好官吗?3.2十大软件质量因素功能性质量因素:正确性,健壮性,可靠性非功能性质量因素:性能,易用性,清晰性,安全性,可扩展性,兼容性,可移植性为什么是“十大”质量因素逐一解释“十大”质量因素(参见高质量程序设计指南C+/C语言)3.3正确性正确性是指软件按照需求正确执行任务的能力。“正确性”的语义涵盖了“精确性”。正确性无疑是第一重要的软件质量属性。技术评审和测试的第一关都是检查工作成果的正确性。机器不会主动欺骗人,软件运行出错通常都是人造成的,所以不要找借口埋怨机器有毛病。,3.细说软件质量,3.4健壮性健壮性是指在异常情况下,软件能够正常运行的能力。正确性描述软件在需求范围之内的行为,而健壮性描述软件在需求范围之外的行为。开发者往往把异常情况错当成正常情况而不作处理,结果降低了健壮性。用户才不管正确性与健壮性的区别,反正软件出了差错都是开发方的错。所以提高软件的健壮性也是开发者的义务。健壮性有两层含义:一是容错能力,二是恢复能力。3.5可靠性可靠性是指在一定的环境下,在给定的时间内,系统不发生故障的概率。可靠性本来是硬件领域的术语。比如某个电子设备在刚开始工作时挺好的,但由于器件在工作中其物理性质会发生变化(如发热),慢慢地系统的功能或性能就会失常。所以一个从设计到生产完全正确的硬件系统,在工作中未必就是可靠的。软件在运行时不会发生物理性质的变化,人们常以为如果软件的某个功能是正确的,那么它一辈子都是正确的。可是我们无法对软件进行彻底地测试,无法根除软件中潜在的错误。平时软件运行得好好的,说不准哪一天就不正常了,如有千年等一回的“千年虫”问题,司空见惯的“内存泄露”问题、“误差累积”问题等等。时隐时现的错误一般都属于可靠性问题,纠错的代价很高。,3.细说软件质量,3.6性能性能通常是指软件的“时间-空间”效率,而不仅是指软件的运行速度。人们总希望软件的运行速度高些,并且占用资源少些。性能优化的关键工作是找出限制性能的“瓶颈”可以通过优化数据结构、算法和代码来提高软件的性能。3.7易用性易用性是指用户使用软件的容易程度。现代人的生活节奏快,干啥事都想图个方便。所以把易用性作为重要的质量属性对待无可非议。导致软件易用性差的根本原因:理工科大学教育存在缺陷:没有开设人机工程学、美学、心理学这些必修课,大部分开发人员不知道如何设计易用的软件产品。开发人员犯了“错位”的毛病:他以为只要自己用起来方便,用户也就会满意。软件的易用性要让用户来评价。当用户真的感到软件很好用时,一股温暖的感觉油然而生,于是就用“界面友好”、“方便易用”等词来评价软件产品。,3.细说软件质量,3.8清晰性清晰意味者所有的工作成果易读、易理解,可以提高团队开发效率,降低维护代价。开发人员只有在自己思路清晰的时候才可能写出让别人易读、易理解的程序和文档。可理解的东西通常是简洁的。一个原始问题可能很复杂,但高水平的人就能够把软件系统设计得很简洁。如果软件系统臃肿不堪,它迟早会出问题。所以简洁是人们对工作“精益求精”的结果,而不是潦草应付的结果。千万不要把在学校里“造文章”的手法用于开发产品!3.9安全性这里安全性是指信息安全,英文是Security而不是Safety。安全性是指防止系统被非法入侵的能力,既属于技术问题又属于管理问题。“道高一尺,魔高一丈”,绝对安全的信息系统几乎不存在。开发商和客户愿意为提高安全性而投入的资金是有限的,他们要考虑值不值得。究竟什么样的安全性是令人满意的呢?一般地,如果黑客为非法入侵花费的代价(考虑时间、费用、风险等因素)高于得到的好处,那么这样的系统可以认为是安全的。,3.细说软件质量,3.10可扩展性可扩展性反映软件适应“变化”的能力。在软件开发过程中,“变化”是司空见惯的事情,如需求、设计的变化,算法的改进,程序的变化等等。由于软件是“软”的,是否它天生就容易修改以适应“变化”?关键要看软件的规模和复杂性。现代软件产品通常采用“增量开发模式”,不断推出新版本,获取增值利润。可扩展性越来越重要。可扩展性是系统设计阶段重点考虑的质量属性。3.11兼容性兼容性是指两个或两个以上的软件相互交换信息的能力。兼容性的商业规则:弱者设法与强者兼容,否则无容身之地;强者应当避免被兼容,否则市场将被瓜分。示例:中国联通和中国移动的手机互联互通问题金山软件公司的WPS与微软的Word之争3.12可移植性可移植性是指软件运行于不同软硬件环境的能力编程语言越低级,其程序越难移植,反之则容易。软件设计时应该将“设备相关程序”与“设备无关程序”分开,将“功能模块”与“用户界面”分开。,4.高质量软件开发理念,4.1质量与缺陷质量的死对头是缺陷(defect,bug),
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年鹤岗萝北县公开招聘农垦社区工作者26人考前自测高频考点模拟试题完整参考答案详解
- 2025年济宁金乡县事业单位公开招聘工作人员(教育类)(39人)模拟试卷完整参考答案详解
- 2025湖南省社会科学院湖南省人民政府发展研究中心招聘高层次人才14人考前自测高频考点模拟试题及答案详解(全优)
- 2025湖南娄底市骨伤医院招聘见习护士8人考前自测高频考点模拟试题及答案详解(夺冠系列)
- 浙江国企招聘2025宁波市水务环境集团股份有限公司招聘4人笔试历年参考题库附带答案详解
- 2025湖南长沙市财盛国际贸易有限公司招聘2人考前自测高频考点模拟试题及一套答案详解
- 浙江国企招聘2025宁波市轨道交通集团有限公司综合物业服务分公司招聘派遣制工作人员4人笔试历年参考题库附带答案详解
- 2025年4月四川成都师范学院考核招聘人员(第二批)模拟试卷及答案详解(名师系列)
- 2025重庆九洲智造科技有限公司招聘项目经理等岗位拟录用人员笔试历年参考题库附带答案详解
- 2025贵州黔南州都匀经济开发区水务有限责任公司招聘10人笔试历年参考题库附带答案详解
- 心理处方手册
- 2025年常州市规划馆公开招聘工作人员1人考试参考题库及答案解析
- 烟花爆竹考试题及答案
- 液压机搬迁改造工程方案(3篇)
- 特殊人才考核管理办法
- 压砂地欧李品种筛选与灌溉定额优化研究:基于生态适应性与水资源高效利用
- 巩固脱贫成果全面推进乡村振兴政策培训测试题(附答案)
- 2025年北森人才评估试题及答案
- 大学生心理健康教育(第二版)PPT全套完整教学课件
- 2023年高考英语总复习高中英语常用一百组固定搭配
- 八个有趣模型搞定外接球内切球问题(学生版)
评论
0/150
提交评论