高质量程序设计指南(C/C++语言)10/19 - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 技术分享 >

高质量程序设计指南(C/C++语言)10/19

发表时间:2020-10-18

发布人:葵宇科技

浏览次数:45

这是c++的书?我怀疑人生了。

质量,生产率和成本之间的关系

质量是客户最关心的问题
质量与生产率存在相辅相成的关系,高生产率必须以质量合格为前提
质量不合格,生产率变得没有意义
短期效益上,追求质量会降低生产率,长期效益上,高质量最终会导致高生产率和公司的高信誉

所以,质量和生产率不存在根本的对立
软件过程能力低的企业,应将质量放在第一位,这样才能持久的提高质量和生产率

质量与成本的关系
先阐释一下 市场价 和 成本价
市场价:市场上尚未形成竞争格局的几个产品时,产品是由厂商自己制定的。
由于缺乏竞争,无论成本多高,产品总能获得高额利润
成本价:产品形成竞争时,这时产品的价格称为成本价

IT大公司都想吃 市场价的肥肉。他们资金雄厚,销售能力强,怎么才能达到目的呢
一:从别处购买快成型的产品,
二:自行开发新产品,
无论哪种方式,前提条件都要产品的质量合格

只有少数大公司能够享受到 市场价的利益,所以树立降低开发成本 的理念十分重要

软件过程改进的基本理念
经典软件工程:需求分析,系统设计,编程测试,维护等领域的方法,技术,和工具
由于机构管理软件过程的能力比较弱,导致项目处于混乱的状态,过程的混乱是的新技术,新工具的优势难以展现
软件过程改进成为重要的研究方向,其中cMM和CMMI是重大成果
首先,解释过程:使用相应的工具等将原始材料转化成用户需要的产品
过程和产品存在因果关系,即好的过程才能得到好的产品

CMM(Capability Maturiy Model)用于衡量软件过程能力的事实上的标准。同时也是目前软件过程改进最好的参考标准
CMM 后来 发展并 溶于 CMMI
CMM将如那件过程能力分成5个等级,最低为1 最高为5
CMM受欢迎超过了ISO标准
企业做一次CMM2-3级的评估大约要60-100万元
但CMM咨询师只能起到参谋师的作用,解决问题要靠自己。
需要建立软件工程工作小组SEPG
但是国内的CMM评估其实水分有点大

高质量软件开发的基本方法

  1. 建立软件过程规范
    若想顺利开发出高质量的软件产品,必须有条理地组织技术开发活动和项目管理活动。把这些活动地组织形式成为过程模型
    企业应当根据产品的特征,建立一套企业范围内通用的软件过程模型和规范,并形成制度,这样开发人员与管理人员就可以依照过程
    规范有条不紊的开展工作
    国内“游击队”开发模式到处可见
    软件开发的模型:瀑布模型,喷泉模型,增量模型,快速还原模型,螺旋模型,迭代模型
    企业选择模型的标准是 “实用好用”为准
    如今瀑布模型已被学术界嫌弃
    瀑布模型的精髓是线性顺序,作者推崇 瀑布模型的 线性解决方式
    作者提出SPP(精简并行过程)
    分为6个过程:
    产品概念阶段
    产品定义阶段
    产品开发阶段
    产品验证阶段
    用户验收阶段
    产品维护阶段

有最好的编程语言吗
能很好的坚决问题的编程语言就是好语言
编程是一门艺术吗
水平高了,干啥都是艺术
编程应该多使用技巧吗
作者建议用自然的方式编程
一个局部的优点对整个系统是微小的,一个错误对一个系统是致命的
换更快的计算机还是更快的算法
如果是为了学习和研究,那么应该设计更好的算法
如果已经用于商业,若换计算机能解决问题,则是最快的解决方案
改进算法可能会引入错误延误进度

错误的等级
一级严重:错误导致软件崩溃
二级严重:错误导致一个特性不能运行并且没有替代方案
三级严重:错误导致一个特性不能运行但有替代方案
四级严重:错误是表面化的或是微小的
开发人员应该认识到:所有的错误都是严重的,不存在微不足道的错误

一些错误的挂念:
一:我们拥有一套讲述如何开发软件的书籍,充满了标准和示例,可以帮助解决开发中遇到的任何问题
作者的观点:好的书籍可以指导工作。充分利用书籍可以结缘大量常见的问题,到那时实践者不能依赖书籍
(1)即使相当成熟的软件工程规范,也常常无法套用
(2)计数日新月异,没有哪一种标准能长盛不衰。
二:充足的资源 != 优秀的软件产品
不用解释吧
三:进度落后于计划,可以增加更多的程序员解决问题
作者的观点:给项目添加新手,可能更加延误项目
(1)新生会产生新的错误
(2)老手向新手解释工作及交流思想要花费时间
四:干活小心点,就能提高软件质量
程序员必须了解软件质量的方方面面,异地你个要先搞清楚怎样提高质量,才可以在进行需求开发
系统设计,编程,测试时将高质量内建其中

研究软件工程永远做不到像理论家那样潇洒:定理证明了,就完事儿了。

相关案例查看更多