软件架构的时间和情感因素-创新互联
质量属性是软件架构的一个重要方面,而质量属性中也包含了时间和情感的因素。
成都创新互联公司专注于朗县网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供朗县营销型网站建设,朗县网站制作、朗县网页设计、朗县网站官网定制、微信平台小程序开发服务,打造朗县网络公司原创品牌,更为您提供朗县网站排名全网营销落地服务。创新互联专注于霍城网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供霍城营销型网站建设,霍城网站制作、霍城网页设计、霍城网站官网定制、成都微信小程序服务,打造霍城网络公司原创品牌,更为您提供霍城网站排名全网营销落地服务。成都创新互联公司专注于乌尔禾网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供乌尔禾营销型网站建设,乌尔禾网站制作、乌尔禾网页设计、乌尔禾网站官网定制、小程序制作服务,打造乌尔禾网络公司原创品牌,更为您提供乌尔禾网站排名全网营销落地服务。创新互联公司专注于佛坪网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供佛坪营销型网站建设,佛坪网站制作、佛坪网页设计、佛坪网站官网定制、成都小程序开发服务,打造佛坪网络公司原创品牌,更为您提供佛坪网站排名全网营销落地服务。公元前1世纪,古罗马御用工程师、建筑师Marcus Vitruvius Pollio在其《建筑十书》中最早提出了建筑的三要素“坚固、实用、美观”。英文的表述为Firmitas,Utilitas, Venustas,通俗的说也就是Solid,Useful, Beautiful。软件架构同样需要具备这三个要素,用计算机的术语表述就是:
· Firmness: Achieve asatisfactory level of freedom from damaging failure.
· Commodity: Utility toaccomplish the tasks it is purported to be for.
· Delight: Pleasure in use.
马尔库斯·维特鲁威·波利奥是古罗马的作家、建筑师和工程师,他的创作时期在公元前1世纪,他的生平不详,连他的名字马尔库斯和姓波利奥也只是由伐温提努斯提到过,他的生平年代主要是根据他的作品确定的。
时至今日,这三个要素仍然是成功软件设计的重要组成部分。这三个方面谈的都是架构的质量属性。如何理解呢?
无论从架构设计还是工程实施的角度,时间都是软件设计的重要因素。架构在时间推进的过程中演化,其实现在一个个PDCA循环中迭代,软件也在与用户的磨合中生死。
统计质量控制 (SQC) 之父,沃特·阿曼德·休哈特在1931年就指出过质量评价的主观性——质量包含了人对客观现实的思考,感受,感知。
"There are two common aspects of quality: One of them has to do with the consideration of the quality of a thing as an objective reality independent of the existence of man.The other has to do with what we think, feel, or sense as a result of the objective reality. In other words, there is a subjective side of quality." —W.A. Shewart, 1931
2016年9月份《美国计算机学会通讯》上刊登了Peter J. Denning博士的文章《Software Quality》,介绍了软件质量评价从代码视角向用户视角的演化,很好的诠释了软件质量的Firmness,Commodity和Delight三个要素。
软件质量的评价已经明显的从上世纪70年代代码视角的评估演化到今天用户视角的评估。——Peter J. Denning博士
1.1 代码视角
根据Peter J. Denning博士的观点,传统的软件质量评价体系都是从代码视角出发的。其基本原则是制定客观的测量指标,监测软件的所有属性,量化软件本身。比如我们经常说的UT覆盖率,TA覆盖率,代码静态检查(Sonar)指标,在软件设计开发过程中制定详细的规范,ISO 9216,ISO-25010:2011等等。这些软件质量评价方法一般都包括correctness,reliability,integrity,usability,efficiency,maintainability,testability,interoperability,flexibility,reusability,portability,clarity,modifiability,documentation,resilience,understandability,validity,functionality,generality,economy等指标,每一个指标都可以展开成一套程序员必须遵循的规则。没人敢说软件质量是一件简单的事情!
1.2 用户视角
从用户的角度看,用户不会问“软件是不是有很好的架构并且通过了ISO9126标准?”,用户关心的是“软件是否能够帮助完成我工作?”,“我可以依靠它吗?”。这说明用户体验的满意度影响到用户对软件质量的评价。Peter J. Denning博士在文章中提出了6个级别来评估用户视角的软件质量。
· Level -1: No trust. 用户不信任该软件。软件可能包含很多bug、引起系统崩溃或带有恶意插件。
· Level 0: Cynical satisfaction.无忠诚度的满意。用户不信任软件提供商的所有声明。
· Level 1: Software fulfills allbasic promises.软件满足所有基本承诺。ISO软件量标准定义就在这个级别。
· Level 2: Software fits environment.软件适应用户环境。什么意思呢?软件提高了用户完成重要工作的能力。
· Level 3: Software produces nonegative consequences.软件不会有任何负面影响。这包括两方面:第一,软件能够处理用户没能预见的错误场景;第二,软件可以满足用户未来的需求。
· Level 4: Software delights.软件愉悦。这个级别的产品远远超出用户的期望,并产生新的,意想不到的,有时令人惊讶的积极作用。用户在该软件上收获了极大的愉悦并愿意推广给其他的用户。用户感觉软件设计者是理解了用户的真实世界并认为软件改善了他们的生活。
文献《Software Quality Models and Philosophies》总结软件质量具备以下两个属性:
The meaning and definition of software quality:
· Conformance to specification:Quality that is defined as a matter of products and services whose measurable characteristics satisfy a fixed specification – that is, conformance to an inbeforehand defined specification.
· Meeting customer needs: Quality that is identified independent of any measurable characteristics. Thatis,quality is defined as the products or services capability to meet customer expectations – explicit or not.
从上面的定义可以很容易推导出软件开发过程中常用的两个重要质量保证框架:DoD和CoS。正如Peter J. Denning博士所说:最高级别的软件愉悦出现在客户和开发者之间美好的互动关系中。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
本文名称:软件架构的时间和情感因素-创新互联
网页URL:http://ybzwz.com/article/cehssd.html