2020軟體工程作業03

2022-02-21 10:46:31 字數 2528 閱讀 2094

這個作業屬於哪個課程

這個作業要求在**

/homework/10494

這個作業的目標

實現乙個命令列程式sudoku

作業正文

如下其他參考文獻

2.psp**:

psp2.1

personal software process stages

預估耗時(分鐘)

實際耗時(分鐘)

planning

計畫60

60estimate

估計這個任務需要多少時間

8001200

development

開發140

140analysis

需求分析 (包括學習新技術)

6080

design spec

生成設計文件

3030

design review

設計複審

3030

coding standard

**規範 (為目前的開發制定合適的規範)

4045

design

具體設計

6080

coding

具體編碼

480600

code review

**複審

120150

test

測試(自我測試,修改**,提交修改)

90120

reporting

報告30

30test repor

測試報告

3030

size measurement

計算工作量

3060

postmortem & process improvement plan

事後總結, 並提出過程改進計畫

4560

合計2045

2715

3.思路分析:一看到這個題目壓根看不懂題目意思,題目要求:

1.程式能生成不重複的數獨終局至檔案;

2.程式能讀取檔案內的數獨問題,求乙個可行解並將結果輸出到檔案;

在了解了題目要求和規則以後,我馬上想到的一種演算法就是回溯法:對於生成數獨終局,我們只要按順序乙個個填數字就好了,每填完乙個數字都檢查它所在的行,列和宮是否滿足數獨的規則,若滿足則填下乙個數字,若不滿足則回溯。並且由於題目要求中的第二點只要求乙個可行解,因此1、2兩個要求感覺實質上是一樣的。當然還有一種更簡單的演算法叫矩陣生成法,可是由於能力有限,學習完回溯腦袋就大了,還是老老實實用回溯吧。

void sd(int a[9][9],int n)//求解}

}

4.實現結果:

5.效能分析,**改進:

第一次除錯報錯c4996,這是vs的版本問題,scanf返回值被忽略,在專案屬性新增:_crt_secure_no_warnings,這樣除錯結果就沒問題了。

對**進行效能分析,探測cpu的利用率,可以看出外部**占用最多,達到百分之九十七,其次是_src_common_main和_src_common_main_sesh函式,這兩個函式沒有可以優化的地方所有沒有進行更改。

6.單元測試:

7.實驗總結:這次個人專案做的非常坎坷,一大把原因就是對vs和c++都不熟悉,在效能測試和單元測試階段我的vs出了很多問題,讓我整個人心態都不太好了。不過也學習到了回溯法,我之前從來沒有想過對乙個**進行優化,也不知道僅僅io上的改變能對乙個程式的效能造成如此大的影響,越發讓我感覺自己還需要不斷提高,差的實在是遠。

自我評分:

作業頭github專案位址

**要求經過code quality analysis工具的分析並消除所有警告

psp**估計

psp**實際

解題思路描述

**如何組織

關鍵函式畫出流程圖

單元測試的設計

找出效能瓶頸

改進展示關鍵**

解釋思路與注釋說明

結合構建之法心路歷程和思想總分2

120.50.5

10.500

0.50

0.50.5

0.59.5

2020軟體工程作業03

這個作業屬於哪個課程 這個作業要求在 homework 11354 這個作業的目標 畫出阿里雲的原型圖 其他參考文獻 碼雲位址 本次作業採用的原型工具 墨刀 登入頁面實現過程主要採用了乙個圖示導航欄 兩個單行輸入框實現賬號與密碼的輸入 乙個登入按鈕乙個註冊 按鈕實現登入 使用者也可以點選 或支付寶兩...

2020軟體工程作業03

軟體需求分析與系統設計 作業要求 homework 11354 作業目標 碼雲位址 學號20189667 使用工具 原型效果圖 點選 管控 頁面登陸註冊按鈕可跳轉到 登陸 頁面 在 登陸 頁面中輸入賬號密碼點選登陸 可跳轉到 我的 頁面 在 我的 頁面中點選下方發現可 跳轉到 雲產品 頁面 設計截圖...

2020軟體工程作業03

這個作業屬於哪個課程 2018軟體工程3班 這個作業要求在 現代軟體工程 作業 第三次部落格作業 這個作業的目標 其他參考文獻 阿里雲本次作業碼雲位址 碼雲位址 本作業使用 墨刀 完成 思路說明 墨刀直接提供了原生輪播圖控制項,這樣實現起來就非常方便了,想要設定幾張就可以設定幾張,不過記得要關閉指示...