哈工大軟體構造實驗lab6

2021-10-01 01:34:31 字數 2044 閱讀 9571

3.1 adt設計方案

設計了哪些adt、各自的作用、屬性、方法;

給出每個adt的specification;

(可選)以類圖形式給出多個類之間的關係。

//梯子類

public class ladder

public vectorgenerator(int t,int k,int mv,int h)

//猴子產生器,根據輸入產出猴子public class strategy1 ,其取值範圍 為[−1,1]

3.7 輸出方案設計

日誌用log日誌來記錄下三種情況: ⚫ 正在左(右)岸等待,離出生已?秒 ⚫ 正在第?架梯子的第?個踏板上,自左向右(自右向左)行進,離出 生已?秒 ⚫ 已從左(右)岸抵達右(左)岸,共耗時?秒

gui用視覺化來實現,最後在gui上輸出吞吐率和公平性

視覺化(可選)

3.8 猴子過河模擬器v1

3.8.1 引數如何初始化

採用手動輸入的方式

3.8.2 使用strategy模式為每只猴子選擇決策策略

設計strategy設計模式,根據選擇裡呼叫不同的猴子選擇策略。

3.9 猴子過河模擬器v2

在不同引數設定和不同「梯子選擇」模式下的「吞吐率」和「公平性」實驗結果及其對比分析。

3.9.1 對比分析:固定其他引數,選擇不同的決策策略

3.9.2 對比分析:變化某個引數,固定其他引數

讓ℎ = 20,? = 3,? = 10,? = 3,?? = 5,變化?分別 為 1、2、3、4、5

讓n=6,h=20,? = 3,? = 10,? = 3,?? ,變化mv,進行五次實驗,對比五次的效能。

讓n=6,h=20,mv= 3,? = 10,? = 3,?? ,變化t,進行五次實驗,對比五次的效能。

讓ℎ = 20,? = 3,? = 10,? = 3,?? = 5,n=6,變化k分別 為 1、2、3、4、5,進行五次實驗,對比五次的效能。

讓ℎ = 20,? = 3,? = 10,? = 3,?? = 5,n=6,變化n,進行五次實驗,對比五次的效能

3.9.3 分析:吞吐率是否與各引數/決策策略有相關性?

沒有,吞吐率顯然與引數無關,與決策有關

3.9.4 壓力測試結果與分析

大量猴子的情況下

simulator1 asimulator1 =new simulator1(6,10, 3, 50, 3,6);

吞吐率=1.2820512820512822

公平性=0.05061224489795919

猴子的吞吐率邊高,因為大量猴子時會有很多猴子在岸邊等待

速度很快時

simulator1 asimulator1 =new simulator1(6,20,3, 25, 5,15);

吞吐率=0.5555555555555556

公平性=0.47619047619047616

會有很多猴子在梯子上面停留的時間很短。

3.10 猴子過河模擬器v3

針對教師提供的三個文字檔案,分別進行多次模擬,記錄模擬結果。

吞吐率 公平性

competiton_1.txt

第1次模擬 0.47619 -0.13333

第2次模擬 0.476190476

0.4…

第10次模擬 0.357143

0.933333333

平均值 0.436508

0.400001

competiton_2.txt

第1次模擬 0.238095 -0.488888889

第2次模擬 0.4761904 0.0952

… 第10次模擬 0.5 -0.21333

平均值 0.404762

-0.20233963

competiton_3.txt

第1次模擬 0.263158

0.133333

第2次模擬 0.30303

-0.04444

… 第10次模擬 0.416667

0.488889

平均值 0.327618

0.192593

哈工大軟體構造Lab4實驗心得

這次實驗基於lab3對 進行修改,處理各種異常,保證健壯性和正確性。之前在lab3中已經很注意防禦性程式設計了,但是這次改動還是特別大。太難了。健壯性更多的是對使用者友好,而正確性是對程式設計師友好,健壯性考慮的是輸入有問題的時候,程式能優雅的繼續進行,或者提示錯誤,正確性是保證程式正確輸入的時候能...

哈工大軟體構造lab3

3.1 待開發的三個應用場景 首先請列出你要完成的具體應用場景 至少3個,1和2中選一,3必選,4和5中選一,鼓勵完成更多的應用場景 行星系統 原子系統 社交網路 分析你所選定的多個應用場景的異同,理解需求 它們在哪些方面有共性 哪些方面有差異。他們都具有軌道,中心物體,軌道物體等屬性,但是各自具體...

哈工大軟體構造lab3總結

軟構的課程已經結束一段落了,如今回顧起來,收穫頗豐。這篇部落格主要是回顧一下lab3自己出現的一些問題,總結一下教訓,幫接下來需要做實驗的同學們避避坑。第一點 不要拖延症,不要拖延症,不要拖延症。不要開始的時候覺得時間還很長,不抓緊。拖延症晚期的同學要注意!不要等最後一周的時候才開始寫 這樣會導致你...