軟件工程第一次我的編程做業

1.1 Github連接

Github連接:https://github.com/universe-tong/03170262python

2.1PSP

使用PSP的目的是記錄如何實現需求所須要消耗的時間,以及完成整個項目所須要的時間。git

PSP2.1 Personal Software Process Stages 預估耗時(分鐘) 實際耗時(分鐘)
Planing 計劃 30min 25min
Estimate 估計這個任務須要多少時間 20min 20min
Development 開發 30min 40min
Analysis 需求分析(包括學習新技能) 100min 90min
Design Spec 生成設計文檔 50min 50min
Design Review 設計複審 20min 30min
Coding Standard 代碼規範(爲目前的開發制定合適的規範) 20min 40min
Design 具體設計 20min 20min
Coding 具體編碼 100min 120min
Code Review 代碼複審 10min 20min
Test 測試(自我測試、修改代碼) 10min 15min
Reporting 報告 20min 40min
Test Repor 測試報告 20min 30min
Size Measurement 計算工做量 40min 20min
Postmortem & Process Improvement Plan 過後總結,並提出過程改進計劃 30min 35min
Total 合計 620min 595min

3.1計算模塊接口的設計與實現的過程

3.2如下是所用到的函數和類

導入兩個初始化列表,一個是全國各個省份的名稱,再一個是各個省份包括的市github

def Provincelist()
def Citylist()

而後是程序的幾個重要函數
講輸入的字符串中的名字和電話號碼提取出來,以後再返回一個剩下的地址字符串函數

def GetNameAndNumber(str,list,index)

在字符串提取出省份工具

def findprovicne(str,list,index)

在字符串中提取出城市名字性能

def findcity(str,list,index)

在字符串中提取出縣/區/鄉單元測試

def findtown(str,list,index)

3.3獨到之處

導入了省份和城市的庫,匹配的結果更爲準確。學習

3.2計算模塊接口部分的性能改進

使用Pycharm裏的性能測試工具,測試性能及函數的使用狀況,以及覆蓋率
函數調用圖

時間開銷圖:

代碼的覆蓋率:
測試

3.3計算模塊部分單元測試展現

輸入:
1!魯胞,上海長寧區周18951233466家橋街道長寧路999號春天花園.
1!臧街經,北京市東城區北新橋街道東直門內大街民15679601503安小區8號樓.
1!雙韻,安徽黃山市歙縣雄村鎮006縣道與G56杭瑞高速歙縣雄村鄉防保站13575634949.
1!苗朽蕾,13884441418湖北省孝感市雲夢縣方廟村村委會.
1!晏孔,重慶巫山13097181946縣大昌鎮洋溪村便民超市.
1!荊麻,13282875332天津市北淮澱鎮樂善莊村樂善莊小學.
1!諸葛寧盛,河南省15613629652焦做市山陽區定和街道塔南路287號新興日化.
1!馮昔唉,安徽省合肥市廬江縣郭河鎮G3京臺高18835354291速合肥市廬江縣廣寒橋街道.
1!百里屏悶,廣西壯族自治區桂林市靈川縣潭13315249688下鎮004鄉道靈川縣潭下鎮大義村民委員會.
1!徐扼負,天津市河北區月牙河街道大江裏58號樓13289199578.
1!婁纏壯,山東省煙臺萊山14732355817區萊山街道南陳家疃小區10棟.
1!曹持,江蘇泰州13066409994市海陵區迎賓路88號春蘭商務酒店.
輸出:
{
"level": 1,
"姓名": "魯胞",
"手機": "18951233466",
"地址": [
"上海",
"上海市",
"長寧區",
"周家橋街道",
"長寧路999號春天花園"
]
},
{
"level": 1,
"姓名": "臧街經",
"手機": "15679601503",
"地址": [
"北京",
"北京市",
"東城區",
"北新橋街道",
"東直門內大街民安小區8號樓"
]
},
{
"level": 1,
"姓名": "雙韻",
"手機": "13575634949",
"地址": [
"安徽省",
"黃山市",
"歙縣",
"雄村鎮",
"006縣道與G56杭瑞高速歙縣雄村鄉防保站"
]
},
{
"level": 1,
"姓名": "苗朽蕾",
"手機": "13884441418",
"地址": [
"湖北省",
"孝感市",
"雲夢縣",
"",
"方廟村村委會"
]
},
{
"level": 1,
"姓名": "晏孔",
"手機": "13097181946",
"地址": [
"重慶",
"重慶市",
"巫山縣",
"大昌鎮",
"洋溪村便民超市"
]
},
{
"level": 1,
"姓名": "荊麻",
"手機": "13282875332",
"地址": [
"天津",
"天津市",
"",
"北淮澱鎮",
"樂善莊村樂善莊小學"
]
},
{
"level": 1,
"姓名": "諸葛寧盛",
"手機": "15613629652",
"地址": [
"河南省",
"焦做市",
"山陽區",
"定和街道",
"塔南路287號新興日化"
]
},
{
"level": 1,
"姓名": "馮昔唉",
"手機": "18835354291",
"地址": [
"安徽省",
"合肥市",
"廬江縣",
"郭河鎮",
"G3京臺高速合肥市廬江縣廣寒橋街道"
]
},
{
"level": 1,
"姓名": "百里屏悶",
"手機": "13315249688",
"地址": [
"廣西壯族自治區",
"桂林市",
"靈川縣",
"潭下鎮",
"004鄉道靈川縣潭下鎮大義村民委員會"
]
},
{
"level": 1,
"姓名": "徐扼負",
"手機": "13289199578",
"地址": [
"天津",
"天津市",
"河北區",
"月牙河街道",
"大江裏58號樓"
]
},
{
"level": 1,
"姓名": "婁纏壯",
"手機": "14732355817",
"地址": [
"山東省",
"煙臺市",
"萊山區",
"萊山街道",
"南陳家疃小區10棟"
]
},
{
"level": 1,
"姓名": "曹持",
"手機": "13066409994",
"地址": [
"江蘇省",
"泰州市",
"海陵區",
"",
"迎賓路88號春蘭商務酒店"
]
},編碼

3.4計算模塊部分異常處理說明

當輸入第三檔難度時,例如3!孫旗乖,13366755810白城市洮北區長慶南街65號沒法將其前面補齊,解決的方法是導入城市庫去匹配省份。

相關文章
相關標籤/搜索