关闭

紧张的世界

标签: 数据结构出版平台算法
1286人阅读 评论(0) 收藏 举报
分类:

紧张的世界

如果所有的质量特征都是很容易彼此调和的,那么软件工程师可能(几乎)就是多余的了。管理互相冲突的需求和约束是工程学中需要研究的问题,在软件质量问题中,冲突和约束也非常之多。图1-3中,使用弹簧弹力模型描述了各种质量特征之间最显著的冲突。每条连线都表示其端点的两个特征之间无法融洽共存:对其中任何一个进行改进,往往都会破坏另一个。

值得注意的是,6个主要特征中的每一个都与其他5个主要特征有冲突。以可用性为例,存在极少数的情况,程序实在写得太糟糕,只要简单地删除一些代码元素就可以改善程序的可用性。而在大多数情况下,改善可用性需要增加代码:这里加点儿自动化功能,那里加点儿时髦的GUI元素,在其他什么地方再加点儿特殊处理。因此,改善软件的可用性通常会导致程序的效率表现下滑:程序更大也更慢。而且,额外增加的代码会导致程序更难维护,可靠性下降。此外,很多可用性好的窗口小程序通常都是在特定平台上才能运行的,因此会导致程序更难以移植。最后,功能性与可用性之间通常需要权衡:通常特性越多程序越复杂,而各种安全部件总是让用户困惑。功能性的情况与可用性是类似的:更多的特性意味着更多的代码,这意味着增加了维护、可靠性、可用性、兼容性及效率方面的问题。

效率冲突背后的基本原理有所不同。高效率的算法与数据结构通常都是复杂的,结果将导致相应的代码在可维护性与可靠性上表现不足。此外,有些效率度量只适用于特定平台,因此就限制了软件的可移植性。效率与准确性之间亦存在冲突:精确的计算耗时更多,精确的表示需要更多空间。

对于可移植性,道理很简单:任何比在控制台输出“hello world”更复杂的程序都要面对可移植性问题,围绕这些问题来编码会影响软件的高效性、可维护性、可靠性、可用性及功能性。

在大多数情况下,可维护性与可靠性会被其他因素影响,而不是反过来影响其他因素。然而,可靠性的要素之一——容错性,会因其复杂性而直接从整体上直接影响软件的成熟性与可维护性,尤其会影响易测性。

另一个有趣的关系是安全性和稳定性之间的关系。安全保障通常是很脆弱的:对软件进行小小的改动都有可能导致重大的安全问题。因此,安全特性丰富的软件很容易被改动所影响。

最后,图1-3说明了前面讨论的其他两种关系:空间与时间特性之间的反向互补关系,质量、成本和时间三者之间互相纠缠的关系。

1-3  质量特征间的冲突

 

 

本文节选自《代码质量》一书

(希)斯宾耐立思(Spinellis,D.)著

左飞,吴跃,李洁译

电子工业出版社出版

 图书详细信息:http://blog.csdn.net/broadview2006/article/details/7912843

 

0
0
查看评论

项目管理中资源和时间紧张如何让项目正常实施

项目过程中遇到时间和资源紧张的问题时,建议考虑以下几个方面同时入手: 1、合理的缩小项目的工作范围 在不影响项目整体目标的条件下,与甲方进行深入沟通,对项目中的非主要内容进行合理的裁剪,减少资源的投入。 2、调整工作优先级,优化项目计划 重新调整项目中的工作优先级,进一步优化项目计划,保证重...
  • jiangfei1999
  • jiangfei1999
  • 2017-10-24 22:53
  • 107

第一次作为面试官,我很紧张

我作为应聘者,从来不紧张,哪怕是第一次应聘的时候,但在前几天作为面试官的时候,我很紧张。 为什么紧张呢。因为作为应聘者我只要为我自己负责。但是作为一个面试官,我不是在为自己负责,而是在为应聘者与公司负责。当肩负这样的使命后,就感觉有一定的担子。 可以说面试是一个人的基本技能,以后面试的机会肯定有...
  • bxyz1203
  • bxyz1203
  • 2011-11-18 13:05
  • 3031

紧张而忙碌的工作

毕业设计,我的毕业设计!!当我听说导师也曾经一走进她的实验楼就压抑的想跳楼的时候,我现在的压抑似乎 减轻了
  • pretty_love
  • pretty_love
  • 2008-03-03 15:58
  • 227

要考驾照科目二了,好紧张

马上要考驾照的科目二了,心情却莫名的紧张起来,而且只要一想到考试,心里有一只小鹿就开始慌慌张张,尽管我告诉它没什么可担心的,但是它似乎不怎么听话,始终盘踞在内心最不舒服的角落,不想安静的离去
  • qing_gee
  • qing_gee
  • 2016-09-18 16:55
  • 466

好紧张好紧张

明天tencent的一面好紧张好紧张
  • nanalin805
  • nanalin805
  • 2010-10-11 09:20
  • 612

HDU - 2031 进制转换 (water)

Discription输入一个十进制数N,将它转换成R进制数输出。Input输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R(2<=R<=16, R<>10)。 Output为每个测试实例输出转换后的数,每个输出占一行。如果R大于10,则对应的数字规则参...
  • sunlanchang
  • sunlanchang
  • 2017-12-31 13:42
  • 30

hdu1847——Good Luck in CET-4 Everybody!(巴什博奕)

Problem Description 大学英语四级考试就要来临了,你是不是在紧张的复习?也许紧张得连短学期的ACM都没工夫练习了,反正我知道的Kiki和Cici都是如此。当然,作为在考场浸润了十几载的当代大学生,Kiki和Cici更懂得考前的放松,所谓“张弛有道”就是这个意思。这不,Kiki和C...
  • blue_skyrim
  • blue_skyrim
  • 2016-05-11 17:05
  • 972

中国劳动力输出让世界紧张

当中国公司和日本公司决定在一个越南村庄共同建造一座火力发电厂时,当地居民好比发现了金矿,他们以为这将带来数以千计的就业机会。4年之后,海防火电项目已接近完工。但是只有几百名越南人得到了工作、大多数工人都来自中国,最多时达到约1500人。现在仍有成百上千人在这里,他们白天在建筑工地上忙碌,晚上就住在昏...
  • thy822
  • thy822
  • 2010-01-05 13:37
  • 1468

为什么就不紧张呢?

       时间过得真够快,自我感觉什么东西都还没有学到,大学生涯中又要和一个学期say goodbye 了.这学期剩下的也就考试和数据库系统概论的一个课程设计了.      这几天,我发现很多人都...
  • DongloveRen
  • DongloveRen
  • 2008-06-23 22:59
  • 547

紧张!!

    呵呵,这周就要考试了,想想还有那么多要背的,唉.........这研究生的生活真得和大学不一样啦,想混跟本不可能,只有自己好好学了,刚开始还行吧,全都是公共课,署假进了实验室呀一定一定要好好学了,应该在这阶段学点真格的啦!!我会努力的,加油哦!!!
  • wangfei2008
  • wangfei2008
  • 2006-06-19 17:07
  • 284
    个人资料
    • 访问:3924149次
    • 积分:56502
    • 等级:
    • 排名:第57名
    • 原创:1462篇
    • 转载:83篇
    • 译文:1篇
    • 评论:3786条
    博客专栏
    文章存档
    最新评论