規格化歷史的發展主要以下:java
1975年,Liskov等人發表了論文Specification Techniques for Data Abstractions,從數據抽象的角度論述了規格的優勢、特性及重要性。數組
1976年,在第二屆國際軟件工程會議上,Belford等人在Specifications a key to effective software development一文中從開發複雜系統的角度論證了完整的、一致的規格的重要性。在系統研發週期中,規格提供了在概念和定義階段的過渡。一個清楚、無歧義的規格是取得成功的關鍵,同時能減小開發過程當中的開銷。軟件需求自己具備模糊的特色,因此須要一個定義明確的規格來開發出可靠的軟件。測試
1993年,Liskov等人發表了Specifications and their use in defining subtypes,從類型層次的角度進一步論證了規格的重要性。spa
自此,規格開始成爲程序必不可少的一部分。3d
Bug記錄表:blog
類型ci |
方法行數開發 |
產生緣由io |
紅綠燈合法入門 |
48 |
沒有忽略在非法路口進行紅綠燈放置 |
車輛遇紅綠燈轉彎 |
37 |
沒有存車頭方向 |
道路開關 |
56 |
由於實現問題,有個地方數組開小了,致使最右下角的邊不能盡心操做。 |
Jsf |
3 |
用了一些天然語言,邏輯不清晰 |
repok |
20 |
沒有寫清楚,有的是直接return true |
缺乏前置條件
改進後:
缺乏後置條件:
改進後:
後置條件格式不對:
改進後:
Modifies缺失:
改進後:
此次做業的結束也標誌着OO代碼做業完美落下了帷幕。首先這幾回做業讓咱們學會了撰寫規格,其次還要求咱們根據規格補全代碼,這是很是有用的。在測試別人程序時,有一個好的規格能讓咱們快速瞭解他的想法,方便測試,更是方便他人查看理解。因此說,規格是很是必要的。感慨本身一路跌跌撞撞的走來,本身從java白癡到堪堪入門,也是有了不小的進步了,有過bug少的開心,有過bug多的苦惱,但這都是一種成長吧。OO還沒有結束,吾輩仍需努力。