西门子电线电缆中国授权一级代理商
上述的定义很抽象,我们还是根据经验,如果你想一股脑儿地把任何事情都做好,结果通常是什么都做不好,做事总是要分主次的。什么是重要的质量属性应当视具体产品的特征和应用环境而定,请读者不要受本书观点的限制。简单的判别方式就是考察该质量属性是否被用户关注(即卖点)。
其中,软件测试是软件的关键步骤和重要手段,下面介绍软件测试的概念。
1.2 软件测试的概念
软件测试是软件开发的重要、必要部分,是通过找出缺陷和问题评估产品质量并间接改进产品质量的手段。从软件工程的观点看,预防程序问题要比改正问题重要得多。因此,必须首先把软件测试看做是检验预防程序错误的机制是否有效的主要手段,同时又是找出程序异常的手段。很迷茫。软件的质量不容易说清楚,下面列举说明,就以健康作类比吧。早先人们以为长得结实、饭量大就其中,功能性质量属性有3个:正确性、健壮性和可靠性;非功能性质量属性有7个:性能、易用性、清晰性、安全性、可扩展性、兼容性和可移植性。
为什么“10大”里面不包括可测试性、可维护性、灵活性呢?它们不也是很重要的吗?
它们是很重要的,但不是软件产品的卖点,所以挤不进“10大”行列。我认为如果做好了前述“10大”质量属性,软件将会自然而然地具备良好的可测试性、可维护性。人们很少纯粹地去提高可测试性和可维护性,勿要颠倒因果。至于灵活性,它有益处也有坏处,该灵活的地方已经被其他属性覆盖,而不该灵活的地方就不要刻意去追求。是健康,这显然是不科学的。现代人总是通过考察多方面的生理因素来判断是否健康,如测量身高、体重、心跳、血压、血液、体温等。如果上述因素都合格,那么表明这人是健康的。如果某个因素不合格,则表明此人在某个方面不健康,医生会对症下药。同理,我们也可以通过考察软件的质量属性来评价软件的质量,并给出提高软件质量的方法。
1.1.4 质量属性快速问答
一提起软件的质量属性,人们首先想到的是“正确性”。“正确性”的确很重要,但运行正确的软件就是高质量的软件吗?
答:不见得,因为这个软件也许运行速度很低,并且浪费内存,甚至代码写得一塌糊涂,除了开发者本人谁也看不懂,也不会使用,这也是质量的问题。可见正确性只是反映软件质量的一个因素而已。
浔之漫智控技术(上海)有限公司(w)
是中国西门子的合作伙伴,公司主要从事工业自动化产品的集成,销售和维修,是全国的自动化设备公司。
公司坐落于中国城市上海市,我们真诚的希望在器件的销售和工程项目承接、系统开发上能和贵司开展多方面合作。
以下是我司主要代理西门子产品,欢迎您来电来函咨询,我们将为您提供优惠的价格及快捷细致的服务!
早在1976年,由Boehm等提出软件质量模型的分层方案。1979年,McCall等人改进Boehm质量模型又提出了一种软件质量模型。质量模型中的质量概念基于11个特性之上,而这11个特性分别面向软件产品的运行、修正、转移。它们与特性的关系如图1-1所示。McCall等认为,特性是软件质量的反映,软件质量可用做评价准则,定量化地度量软件属性克制软件质量的优劣,。在那次会议上次提出了软件工程(Software Engineering)这个概念。到今年(2013),软件工程整整走过了45年的历程。
在这段时间的发展中,人们针对软件危机的表现和原因,经过不断的实践和总结,越来越认识到:按照工程化的原则和方法组织软件开发工作,是摆脱软件危机的一个主要出路。
,尽管“软件危机”并未被彻底解决,但软件工程多年的发展仍可以说是硕果累累。下面给出一个软件工程的定义,然后简单讨论一下软件工程所包含的内容。
软件工程是一门研究如何使用系统化、规范化、数量化等工程原则和方法来进行软件的开发和维护的学科。
软件工程包括两方面的内容:软件开发技术和软件项目管理。
软件开发技术包括软件开发方法学、软件工具和软件工程环境。软件项目管理包括软件度量、项目估算、进度控制、人员组织、配置管理、项目计划等。
统计数据表明,大多数软件开发项目的失败,并不是由于软件开发技术方面的原因。他们的失败是由于软件项目管理的不当所造成的。遗憾的是,尽管人们对软件项目管理重要性的认识有所提高,但在软件管理方面的进步远比在设计方法学和实现方法学上的进步小,至今还提不出一套管理软件开发的通用指导原则。下工夫。
③ 软件在使用过程中,没有磨损、老化的问题。软件在生存周期后期不会因为磨损而老化,但会为了适应硬件、环境以及需求的变化而进行修改,而这些修改有不可避免的引入错误,导致软件失效率升高,从而使软件退化。当修改的成本变得难以接受时,软件就会被抛弃。
④ 软件对硬件和环境有着不同程度的依赖性。这导致了软件移植的问题。
⑤ 软件的开发至今尚未完全摆脱手工作坊式的开发方式,生产效率低。
⑥ 软件是复杂的,而且以后会更加复杂。软件是人类有史以来生产的复杂度高的工业产品。软件涉及人类社会的各种行业,软件开发常常涉及其他领域的知识,这对软件工程师提出了很高的要求。
⑦ 软件的成本相当昂贵。软件需要投入大量、高强度的脑力劳动,成本非常高,风险也大。现在软件的开销已大大超过了硬件的开销。
⑧ 软件工作牵涉很多社会因素。许多软件的开发运行涉及机构、体制和管理方式等问题,还会涉及人们的观念和心理。这些人的因素,常常成为软件开发的困难所在,直接影响到项目的成败。
软件与所见即所得的硬件区别明显,其中明显的是硬件有老化耗损现象,硬件失效是物理故障,是器件物理变化的必然结果,有浴盆曲线现象;软件不发生变化,没有磨损现象,有陈旧落后的问题,没有浴盆曲线现象。