1. 程式人生 > >第四次面向對象博客_最後一次

第四次面向對象博客_最後一次

系統 作用 表示 檢查 即使 一個 針對 bsp 完全

一. 論述測試與正確性論證的效果差異,比較其優缺點

軟件測試是用於保證軟件質量的測試。它的作用是檢查程序所能完成的功能。測試手段包括等價劃分和邊界值分析。軟件測試不能夠保證覆蓋面完全。

正確性論證是對代碼進行輸入的劃分,依次對輸入與輸出進行解釋。但是對於大型的程序,也許能保證單元測試內部滿足代碼要求,無法滿足在大型程序的不同方法之間傳遞的內容滿足requirement需求。

二. 調研OCL語言,並比較其與課程所介紹的JSF規格之間的相似和不同之處

The Object Constraint Language (OCL) is a declarative language describing rules applying to Unified Modeling Language (UML) models developed at IBM and is now part of the UML standard.

維基百科是這麽定義的。翻譯一下就是:

OCL是用來描述IBM開發的UML的語言。

OCL有如下的特色:

1、OCL是一種精確的,無二義性的語言。

2、OCL是一種規範說明性語言,所有有關實現的問題都不能用OCL來表達。

3、OCL是一種純表達式語言,它是具有沒有任何副作用的申明性語言。

4、OCL是一種類型化語言,即OCL中的每一個表達式都是具有類的。

5、OCL不是一種程序設計語言,不能用OCL編寫程序邏輯和控制流程。

我認為,OCL是嚴格的語言,而我們所寫的JSF是給人讀的不精確的語言。JSF的作用很難嚴格的完全表達全部,因此二義性一定存在。

三. 根據第十四次作業的單電梯系統,針對調度器、電梯、請求隊列和請求,至少整理出一幅UML類圖、一幅順序圖和一幅狀態圖,並使用圖(graph)類表示出模型

技術分享圖片

技術分享圖片

技術分享圖片

四. 整理總結一個學期所學所練

a) 闡述四個單元模塊知識點之間的關系

第一個單元是熟悉java與學習如何使用java,eclipse。

第二個單元是學習使用多線程與線程安全

第三個單元是學習使用規格化的設計方式

第四個單元是學習程序論證及程序測試。

對於工程化的設計,我認為主要目的在於更好的維護代碼與更廣泛的使用代碼。

更好的維護代碼是為了在未來可以進行相關的修改,在debug的過程中及運行環境中針對反映出來的問題進行相關的修改及修正。此外,在其他人閱讀你的代碼,比如結對編程的過程中,能夠對你的代碼進行差錯及勘誤。

更廣泛的使用代碼包括代碼重用(減少代碼行數)及模板類設計。采用模板類設計可以在用戶更改需求的時候(例如重新提出了一些issue等)的情況下進行更加容易的修改。

b) 建議

即使我們電腦帶的動,我希望能夠對代碼復雜度作一定限制。不要一個紅綠燈一個線程。

第四次面向對象博客_最後一次