在软件开发中质量一直是人们重点关注的,根据权威机构数据统计在整个软件行业中开发失败率极高,大约20%左右的软件是开发成功的,80%左右的软件开发是失败的(这当然包括功能开发完成而最终无法使用或者使用率极低的部分)。做好软件质量控制不仅关乎这个软件行业的发展而且对于社会资源的节约起到很大的作用,大部分政府项目,中下企业软件项目要么是中途停止,要么是做完了没人使用或者使用率不高,花费大量的人力物力开发一款软件最终使用率极低就是对社会资源的浪费。那么如何提高软件开发质量?让我们共同探讨。

软件开发质量控制要做好需求分析,软件质量控制计划,选择合适的软件开发模式,并加强软件研发干系人员的规范化管理。
需求分析阶段是软件开发的最重要阶段,对于软件完成后能否被频繁使用,并体现其价值这一阶段非常重要,如果将整个软件生命周期比作一条龙,那么需求分析和初设的形成就是龙头,起到决定成败的重要作用。为什么要开发一款软件?无非是该软件能解决某些问题,比如方便管理,节约生产或人力成本,提高或促进生产等等,这种初始的开发目的应该贯穿于整个软件生命周期,需求调研阶段就是要关注核心用户关注点,严格围绕这一目完成从解决方案到软件产品的初步设计,这一过程应该力求简洁,简单,直接。大部分软件在需求分析过程中都会受到这样或那样的因素导致偏离初衷或者,放大一些附加或无关需求,缩小软件开发的主要目的,导致软件开发偏离主题,最终的软件产品也会满足不了使用或者使用率低下。当然这款软件是否能解决某些问题,这是另外一个方面。

软件开发过程的质量控制主要是使开发过程可视化,软件工程区别其他工程,盖一座楼从打地基到完成装修肉眼可见;生产一部机器,其零部件和组装过程显而易见。软件开发则不然,编码,单元测试,方案的撰写,性能的调试等,最起码没有那么显而易见。如果要检查其优劣性就必须深入其中,文档,代码要彻度,测试要花大量的时间去亲自测试。所以整个开发过程制定科学合理的计划,并将过程可视化,是质量控制的关键。君子生非异也,善假与物也,过程可视化主要是利用工具,如甘特图,项目管理工具类软件,代码管理工具等。

软件开发质量控制要做好不符合项的处理,不符合项的处理主要是两个方面,一不符合项的定义,确立,二不符合项的追踪。

软件质量控制还要做好开发任务的细化,明确化各个阶段产出物,开发过程中对各个阶段的产出物进行严格审核。

文章来源:https://www.ixiera.com/web/kehu/rjkfgl/341.html

如何提高软件开发质量相关推荐

  1. 提高软件开发、软件维护的效率和质量的利器

    点击上方蓝字关注我们 提高软件开发.软件维护的效率和质量的利器 SnowGraph可将知识图谱融入机器对无结构文本的处理过程之中,进而为复用者提供准确.有效的智能问答服务,从而提高软件复用过程的效率与 ...

  2. 提高软件开发效率的方法

    一个开发任务下达以后,我们希望尽快的实现的,对软件开发工程师的要求是:多快好省 多--单位时间产量高 快--同样的产量所需的时间少 好--质量高 省--省钱,省时,省资源 这四个目标中最主要的又是&q ...

  3. CMMI中QA是如何检查过程和产品 保证软件开发质量?

    CMMI中QA是指检查过程和过程产品,通过构建全过程质量管理体系,从而保证软件开发质量. 1.构建了质量检查系统 为了保证软件开发质量,一般来说QA检查单按照检查阶段划分为:需求分析.系统设计.系统实 ...

  4. 软件开发质量的双保险 — 2.业务设计验证与业务用例

    设计验证的第一层是检验业务设计的质量.业务设计内容是软件的核心,解决了如何用信息化手段替代原来的手工作业. 业务设计验证重点包括:业务逻辑.管控规则是否正确?数据逻辑.来源.公式是否正确?等.检验的方 ...

  5. 软件开发质量的双保险 — 1.设计验证与软件测试

    提到对软件的质量检查,马上想到的是"软件测试",软件测试的目的主要是检查"开发程序"是否符合"软件设计"的要求,程序中是否有bug等,也就是 ...

  6. 关于提高软件开发知识的建议

    1.分享第一条经验:"学历代表过去.能力代表现在.学习力代表未来." 其实这是一个来自国外教育领域的一个研究果.相信工作过几年.十几年的朋友对这个道理有些体会吧.但我相信这一点也很 ...

  7. 提高前端开发质量和效率的脚手架和工具套件 - Uix Kit

    为什么80%的码农都做不了架构师?>>>    这个产品维护已经有一年了(由于业务需求不同,目前没有做中文版,产品本身是针对国外网站),自己本身是做UI出生,开发只是业余爱好,仅仅作 ...

  8. 软件开发质量的双保险 — 3.应用设计验证与应用用例

    设计验证的第二层是检验应用设计的质量.应用设计的检验是对软件"好用"的保证,它解决了如何用信息化手段提升客户的工作效率. 应用设计验证重点包括:业务设计的结果在系统中的落地是否顺利 ...

  9. 汽车ECU软件开发之应用层软件与底层软件

    随着汽车产品日渐趋向电子化,人们对各类先进的安全系统.高级驾驶辅助系统的接受程度日益提升.而原本昂贵的盲点检测.自动紧急制动等功能的成本下滑,使其快速获得了市场青睐.富士奇美拉研究所(Fuji Chi ...

最新文章

  1. npm出错的解决方案
  2. 基础回顾之List集合
  3. maven shade
  4. KMP Trie 例题讲解
  5. mysql 开启慢查明_mysql开启慢查询方法
  6. 《沟通的技术——让交流、会议与演讲更有效》一第一部分 建导准备
  7. 算法设计与分析(1)——基础知识
  8. 多看系统kindle最新版_更新到最新版微信后,我要吹爆这一功能!
  9. winform打印服务器上的pdf文件,c# winform 静默打印 PDF文件
  10. 错觉图片生成实验 - 隐形的黑点
  11. 基于ThinkPhp6+Vue+AntDesign前后端分离极速开发平台
  12. 老路MBA商学课|第004课:边际成本|飞机起飞前的座位,只卖一块钱?
  13. 自带RGB灯效,配备显卡专属风道,风行者DF700 Flux上手
  14. 免费云笔记软件哪个好?
  15. C#、winfrom打印pnl订单窗体
  16. 服务器报错 http error 503.the service is unavailable怎么解决
  17. DedeCMS插件自动采集发布文章插件
  18. 使用Hadoop MapReduce进行大数据分析
  19. 如何在微信小程序里使用Lottie动画库
  20. 1、英里与千米的转换

热门文章

  1. awd赛题的flag是什么意思_红帽杯线下赛AWD题目分析
  2. CEO们的智慧,塑造你领导力的5条重要品质
  3. 前端常见笔面--CSS
  4. vscode快捷键(Mac版)
  5. 智能+,见未来:「易观方舟智能用户运营产品套件」全新升级
  6. 从Android源码出发理解【易观】埋点
  7. 关于奥运会的首款“龙”服,原创设计师有话说
  8. DHCP与DHCP中继(理论)
  9. python入门基础(完整)
  10. 卷积神经网络学习路线(十七) | Google CVPR 2017 MobileNet V1