1. 舉例說明形式化說明技術和欠形式化方法的優缺點,
以下是簡單總結,具體看這里
| 優點 | 缺點 | |
|---|---|---|
| 形式化說明技術 | 簡潔準確的描述;平滑的過度;高層確認 | 大多關注系統的功能資料,時序的問題,控制行為等需求難以表示 |
| 非形式化 | 書寫表達難度較低 | 可能存在矛盾,二義性,含糊性,不完整性級抽象層次混亂等問題 |
舉例說明就先past拉,要不學學課本電梯的例子,
2. 在什么情況下應該使用形式化說明技術?使用形式化說明技術應遵守哪些規則?
- 在使用非形式化的說明方式存在矛盾,二義性,含糊性,不完整性和抽象層次混亂等問題的時候,就需要采用形式化說明技術,
- 應該遵守的規則(10個,表形本問傳,檔質賴測重)
- 應該選用適當的表示方法,
- 應該形式化,但不要過分形式化(中庸形式化),
- 應該估算成本,
- 應該有形式化方法顧問隨時提供咨詢,
- 不應該放棄傳統的開發方法(不放棄傳統),
- 應該建立詳盡的檔案,
- 不應該放棄質量標準(不放棄質量標準),
- 不應該盲目依賴形式化方法(不盲目依賴),
- 應該測驗、測驗再測驗,
- 應該重用,
3.假設有這樣一個有窮狀態機:以一串字符為輸入,判斷字串中是否含有合法的浮點二進制數,試對這個有窮狀態機進行規格說明,
有窮狀態機


4 試用有窮狀態機說明上述的圖書流通系統
考慮下述的自動化圖書館流通系統:每本書都有一個條形碼,每個人都有一個帶條形碼的卡片,但一個借閱人想借一本書時,圖書管理員掃描書上的條形碼和借閱人卡片的條形碼,然后在計算機終端上輸入 C;當歸還一本書時,圖書管理員將再次掃描,并輸入 R,圖書管理員可以把一些書加到( +)圖書集合中,也可以洗掉(—)它們,借閱人可以再終端上查找到某個作者所有的書(輸入“ A=”和作者名字) ,或具有指定標題的所有書籍(輸入“ T= ”和標題),或屬于特定主題范圍內的所有圖書(輸入“ S=”加主題范圍) ,最后,如果借閱人想借的書已被別人借走,圖書管理員將給這本書設定一個預約,以便書歸還時把書留給預約的借閱人(輸入“ H=”加書號),
4.1 圖書狀態的有窮狀態機描述
狀態機J:{ 書在圖書館 S1,書被借出 S2,書被預約 S3}
輸入集K :{ 書上條形碼,借閱卡條形碼,終端輸入各種命令 }
初始態S:{ 書在圖書館 S1,書被借出 S2}
終態集F:{ 書被借出 S2,書被預約 S3}
轉換函式T:

4.2 圖書館終端管理員模式的有窮狀態機描述
狀態機J:{ 管理員設定狀態,書入庫,書出庫(洗掉) ,預約 }
輸入集K :{ 終端輸入管理員命令,書的各種狀態( S1,S2,S3}
初始態S:{ 管理員設定狀態 }
終態集F:{ 書入庫,書出庫(洗掉) ,預約, }
轉換函式T:如圖 4.4.2 所示

4.3 圖書館終端用戶模式的有窮狀態機描述
狀態機J:{ 讀者查詢狀態,查詢結果 }
輸入集K :{ 終端輸入用戶查詢命令,書的各種狀態( S1,S2,S3)}
轉換函式T:如圖 4.4.3 所示
初始態S:{ 讀者查詢狀態 }
終態集F:{ 查詢結果 }

5 試用 Petri 網說明第四題所述圖書館中一本書的回圈程序,在規格說明中應該包括操作 H、C及 R,
Petri網特別是禁止線要看一下
其中 P1表示書在圖書館;P2表示書在讀者手上; P3書被預約

上圖解讀:
只有P3沒有權標,也就是沒有預約,P1到P2的轉換才被允許,
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/278507.html
標籤:其他
上一篇:學會LeetCode三道題
下一篇:單鏈表帶環問題歸納總結
