注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

VB.net

专注于与VB.net学习爱好者一起学习、交流,共同进步!

 
 
 

日志

 
 

编程方法/习惯/思想学习专篇---软件的内在质量特性  

2012-04-30 08:21:35|  分类: 相关经典文章 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

一直以来,对于我们这些自学编程、编程爱好者以及编程初学者,大家都是注重寻找源代码示例、学习资料方面的资源;慢慢的我自己亲身体会到;这种方式不是不行,但欠缺很多重要的东西;学出来的基本上都是“非正规程序员”,或者直白一些讲就像我们是“游击队”,不是“正规军”。

编程方法和良好的编程习惯以及编程思想也是非常的重要! 不知道大家是否用相同的看法;或者我没有把意思表达清楚。

因此我想,在我的博客里面发布一些讲编程方法、编程思想、编程习惯方面的内容,和大家一起讨论。

欢迎大家进行留言讨论,感谢!

 

接上篇:编程方法/习惯/思想学习专篇---软件的外在质量特性 

程序员除了关心软件的外在特性外,还要关心他的内在特性,以下是程序的内在特性,也是我们最关心的。

可维护性

指是否很容易的对系统进行修改,改变或者增加功能,提高性能,以及修正缺陷。

灵活性

是指假如一个系统是为特定用途或者环境而设计的,那么当系统被用于其它用途和环境的时候,需要对系统修改的程度。

可移植性

指为了在原来的设计环境之外运行,对系统所进行修改的难易程度。

可重用性

指系统的某些部分可被应用到其它系统中程度,以及此项工作的难易程度。

可读性

指阅读并理解系统代码的难易程度,尤其是细节语句的层次上。

可测试性

指的是可以进行何种程度的单元测试或者系统测试,以及在何种程度上验证系统是否符合要求。

可理解性

指在系统组织和细节语句的层次上理解整个系统的难易程度。与可读性相比,可理解性对系统提出了更高的内在一致性要求。

同外在质量特性相仿,一些内在质量特性之间也是有所重叠的,同样,他们中的每一个在特定场合中有着不同的重要性。

内在和外在特性并不能完全的割裂开来,因为在某些层次上,内在特性会影响到外在特性。一个无法从系统内部理解或者维护的软件,其缺陷也是很难修正的,而这有会影响到正确性和可靠性等外在特性。一个刻板的软件无法根据用户需要进行改进,这就影响了可用性这一个外在特性。关键在于,某些特性则强调软件让用户用起来方便,而另一些特性则强调软件让程序员维护起来方便。我们需要搞清楚的问题是:哪一种特性是什么,什么时间这些特性之间会发生什么样的相互作用。

要让所有特性都能表现的尽善尽美是绝不可能的。需要根据一组互相竞争的目标寻找出一套优化的解决方案,正式这种情况使软件开发成为一个真正的工程学科。下图显示出了关注某些外在特性会如何影响另一些外在特性。软件质量的内在特性之间也存在类似的相互关系。

 

编程方法/习惯/思想学习专篇---软件的内在质量特性 - Trevan - VB.net资源博客

 

 

这个图里面最有趣的是;关注某一个特性意味着牺牲另一个特性。有时一个特性会对另一个特性有所损害,有时候两者相互促进,而有时候他们毫不相干。举一个例子,正确性是描述实际功能与说明是否完全一致的特性,健壮性是指系统即使遭遇了预料之外的的条件,它仍然能够发挥功能的特性。强调正确性会损害健壮性,反之亦然。与此相反,关注适应性却会对健壮性有所帮助,反之亦然。

上图所示的仅仅是一些质量特性之间的典型关系。在任何一个项目中,两个特性之间的关系可能会与典型的关系不同。思考一下软件的特定质量目标,以及每一对目标之间的相互关系,是相互促进还是相互制约,这将是很有意义的一件事.

更多内容整理中,近期发布,敬请期待!

  评论这张
 
阅读(375)| 评论(1)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017