一.规格化设计对的发展历史程序员
在1968年,荷兰教授E.W.Dijkstra提出了“GOTO语句是有害的”观点,指出程序的质量与程序中所包含的GOTO语句的数量成反比,认为应该在一切高级语言中取消GOTO语句。这一观点在计算机学术界激起了强烈的反响,引起了一场长达数年的普遍的论战,其直接结果是结构化程序设计方法的产生。80年代中后期,面向对象程序设计逐渐成熟,被计算机界理解和接受,人们又开始进一步考虑面向对象的开发问题。这就是九十年代以Microsoft Visual系列OOP软件的流行的背景。1990年之后,面向对象分析、测试、度量和管理研究都获得长足的发展,规格化设计应运而生。规格化设计可以帮助编程者进行架构,以及在将来对其方便地维护。此外,由于规格化设计能使他人方便地理解代码含义,而使得程序员们在大型多人的开发中可以便捷地以他人的代码为基础进行开发工做,提升了工做效率。所以规格化设计获得了人们的重视。编程
二.规格bug统计架构
|
功能Bug测试 |
规格bugspa |
oo9线程 |
0设计 |
13d |
oo10对象 |
0blog |
0 |
oo11 |
0 |
0 |
oo第9次做业的bug分析
bug类别 |
bug内容 |
规格bug |
Main和Taxi以及sche的run()没写JSF |
三.缘由
我当时觉得线程方法不须要写JSF。
四.jsf的修改
前置:
1. 前置条件缺乏对传入参数的范围判断
修改前
修改后
2. 前置条件缺乏对参数存在性的判断
修改前
修改后
3.当没有前置条件时
修改前
修改后
4.前置条件判断应用“==”号
修改前
修改后
5.多余的前置条件
修改前
修改后
后置:
1. 在非必要状况下使用天然语言
修改前
修改后
2. 不是布尔表达式
修改前
修改后
3.改变值书写不规范
修改前
修改后
4. 后置条件没写全
修改前
修改后
5.将中间变量的修改写入到后置条件中
修改前
修改后
五.功能Bug与规格Bug的聚类关系
在现阶段,我认为JSF问题大可能是格式或者规范问题,也就是书写问题,和功能bug汇集关系并不大。
六.心得体会
最初写规格是很难上手的,但通过这么屡次写规格的训练,也积累了一些熟练度,写的更快了。此外,之前我一个方法写不少行代码,然而这样的方法是很难写出规格的,为了写好规格,也必须将代码缩减,使全部方法各司其职,变相的规范了个人代码风格,提升了代码可读性。