试析c语言零缺陷编程方法研究

试析c语言零缺陷编程方法研究

ID:9630986

大小:53.50 KB

页数:4页

时间:2018-05-04

试析c语言零缺陷编程方法研究_第1页
试析c语言零缺陷编程方法研究_第2页
试析c语言零缺陷编程方法研究_第3页
试析c语言零缺陷编程方法研究_第4页
资源描述:

《试析c语言零缺陷编程方法研究》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、试析C语言零缺陷编程方法研究 摘要:C语言是一种用途广泛、使用方便的编程语言。但是它也存在着语法检验不够严格等问题。该文章根据软件编程方法并结合C语言的特点创设零缺陷编程方法,以供广大编程爱好者借鉴。  关键词:C语言;编程规范;零缺陷;测试    C语言简单、易用,是许多编程爱好者的首选语言。但由于C语言的语法不是很严格,许多程序设计者在编程过程中会遇到许多错误,在程序设计方法上,国外有许多学者对程序零缺陷程序设计提出了自已的观点和方法。如美国管理学家philipb。croby的“零缺陷”思想引进来,用以提高编程的质量,增大软件中的验证力度。

2、IBM公司70年代末和80年代初提出的“净室软件工程”(cleanroomsoftsoftp;)和二进制与()运算之间的区别  逻辑运算,就是“布尔代数”意义上的运算。运算结果只有两种情况,0和非0,即false与true。从中可以建立起一种判断逻辑表达式是否为“真”的语句。而按位运算,则是二进制意义上的运算。  如(11)十进制=(1011)二进制  (5)十进制=(0101)二进制  则115为  1011  0101  =(0001)二进制=(1)十进制  逻辑或(

3、

4、)和二进制或(

5、)运算与上述相同。  2.3自加或自减  简单的来说,

6、++i和i++,在单独使用时,就是i=i+1。  而a=++i,相当于i=i+1;a=i;  而a=i++,相当于a=i;i=i+1;  i++是先赋值后加减,++i是先加减后赋值。所以我们在使用自加或自减进行赋值时,一定要注意变量使用的先后次序。  C语言编程时的注意事项还有很多,这里由于篇幅的原因就不再一一列举了。    3“净室”化的程序设计方法  净室(Cleanroom,无尘室或洁净室)是指一个具有低污染水平的环境,这里所指的污染来源有灰尘、空气传播的微生物、悬浮颗粒和化学挥发性气体。更准确地讲,一个净室具有一个受控的污染级别,污染级

7、别可用每立方米的颗粒数,或者用最大颗粒大小来厘定的。净室被广泛地应用在对环境污染特别敏感的行业,例如半导体生产、生化技术、生物技术等。我们这里为了提高软件编程的水平引入了净室软件工程的方法,总体说来是采用传统的软件工程建模、形式化方法、程序验证(正确性证明)以及统计SQA的集成使用已经组合成一种可以导致极高质量软件的技术。净室软件工程(Cleanroomsoft. 净室过程强调在规约和设计上的严格性,以及使用基于数学的正确性证明来对结果设计模型的每个元素进行形式化验证。作为对形式化方法中采用的方法的扩展,净室方法还强调统计质量控制技术,包括基于

8、客户对软件预期的使用的测试。当现实世界中软件失败时,则充满了立即的和长期的危险。这些危险可能和人的安全、经济损失、或业务和社会基础设施的有效运作相关。净室软件工程是一个过程模型,它在可能产生严重的危险前消除错误。  净室方法使用增量软件模型的一个专门版本。一个“软件增量的流水线”被若干小的、独立的软件工程小组开发,一旦每个增量被认证通过,它将被集成为一个整体。因此,系统的功能随时间增加。开发一个采用增量策略的项目计划,建立每个增量的功能、它的项目大小、以及净室开发进度表。必须特别小心以保证通过认证的增量将被定时集成。使用一个运用盒结构的规约方法

9、来描述功能规约。盒结构“在每一个精化级别上分离和分开行为、数据及过程的创造性定义”。使用盒结构方法,净室设计是规约的自然的无缝的扩展。  4严密的测试方法  净室过程的测试方法描述通过箱式结构和统计质量验证(statisticalqualitycertification)箱式结构来完成的。它是通过形式化方法来保证证软件是完美无缺陷的。它是将程序的初始状态、运行状态和结果以状态图的形式表出,它能够很严格发现程序运行中出现的问题。在程序完成后进行测试,其主要是测试质量,次要目的是发现那些在验证中没有被发现的缺陷。这种程序验证由程序员本人完成是不够的

10、,应该由小组成员在验证回顾会议上进行验证。合理的验证小组成员3-8人,特别是新程序员要参加讨论,主持者最重要的任务是使团队的每一个成员都理解验证每一步并同意其正确性。  验证的主要目的是:  a是否程序做了不合理的假设;  b是忘记了编程语言中的某些细节;  c是否忽略了某些程序逻辑中的可疑部分。  通过这种方式用全新的眼光来看待工作,他们常常会提出自己发现不了的问题。  验证的方式上可以采用“黑盒”、“白盒”或“灰盒”的检查模式。  黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测

11、试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。