前言:
经鹏哥推荐,在图书馆找《高质量的C/C++编程》没有找到,后在网上发现另一个名字《高质量程序设计指南》,于是终于找到了。
我看的这本是第三版,本书一共397页,共分为17大章。
本次系列包含我私自认为书中比较实用且重要的内容和操作展示。
第一章
1.1软件质量基本概念
十大质量属性:
功能性:正确性 健壮性 可靠性
非功能性:性能 易用性 清晰性 安全性 可发展性 兼容性 可移植性
1.2细说软件质量属性
健壮性有两层含义:
1.容错能力
2.恢复能力
一般来说,“错误”是可预料的,“故障”是不可预料的(例如:千年虫)
软件的易用性要让用户评价。
兼容性的商业规则:弱者设法与强者兼容,否则无容身之地;强者设法避免被兼容,否则市场将被瓜分。
1.3人们关注的不仅仅是质量
一般的,软件工程能力比较低的企业,应该将质量放在第一位,生产率放在第二位,只有这样才可能持久的提高质量和生产率。
“过程”的三个基本要素是:人,方法与规程,技术与工具。
1.4高质量软件开发的基本方法
SSP模型:
SPP过程域分类:
勤劳且聪明的人应该把大部分的时间用在小比例的创新工作上,把小部分的时间用在大比例的成熟工作中。
所以我建议:随时随地尽可能复用你能复用的东西。
测试的主要目的是:发现尽可能多的缺陷。
千万不要把“测试”和“演示”混为一谈。
成功的测试在于发现了迄今为止尚未发现的缺陷。
修改错误代码时注意事项:
——修改前思考:会不会引起其他问题
——软件中可能潜伏同一类型的许多错误,逮住一个,乘胜追击,全部歼灭
——修改后马上进行回归测试
——反思
1.5关于软件开发的一些常识与思考
若在程序中使用太多技巧,可能留下错误隐患,还会让人难以理解
错误的分级的好处是便于统计,仅此而已
所有的错误都是严重的,不存在微不足道的错误
精确的制定计划很重要,不在乎计划中的进度看起来有多么的快,计划要恰如其分
1.6小结
我们不可以把软件工程方法看做诸葛亮的锦囊妙计——再出了问题之后打开看看,应该实现预料要出现的问题,控制每个实践环节,防患于未然