




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、1引言31.1 編寫目的31.2 背景31.3 定義31.4 參考資料42總體設(shè)計41 需求規(guī)定41 運(yùn)行環(huán)境51 基本設(shè)計概念和處理流程51 結(jié)構(gòu)61 功能器求與程序的關(guān)系91 人工處理過程91 尚未問決的問題93接口設(shè)計101.1 用戶接口101.2 外部接口101.3 內(nèi)部接口104運(yùn)行設(shè)計104.1 運(yùn)行模塊組合104.2 運(yùn)行控制104.3 運(yùn)行時間105系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計111 邏輯結(jié)構(gòu)設(shè)計要點(diǎn)111 物理結(jié)構(gòu)設(shè)計要點(diǎn)111 數(shù)據(jù)結(jié)構(gòu)與程序的關(guān)系116系統(tǒng)出錯處理設(shè)計12出錯信息12補(bǔ)救措施12系統(tǒng)維護(hù)設(shè)計127天氣信息功能模塊設(shè)計說明12程序描述12功能13性能13輸人項13輸出項
2、13算法13流程邏輯13接口13存儲分配13注釋設(shè)計13限制條件14測試計劃14尚未解決的問題148萬年歷功能模塊設(shè)計說明14程序描述14功能14性能14輸人項15輸出項15算法15流程邏輯15接口15存儲分配15注釋設(shè)計15限制條件15測試計劃16尚未解決的問題169日程表功能模塊設(shè)計說明16程序描述16功能16性能16輸人項16輸出項16算法17流程邏輯17接口17存儲分配17注釋設(shè)計17限制條件17測試計劃17尚未解決的問題17概要設(shè)計說明書1引言編寫目的目的經(jīng)過對“出行小貼士”項目進(jìn)行詳細(xì)調(diào)查研究,初步擬定項目實(shí)現(xiàn)報告,明確開發(fā)風(fēng)險及其所帶來的經(jīng)濟(jì)效益,對軟件開發(fā)中將要面臨的問題及其解
3、決方案進(jìn)行可行性分析。預(yù)期讀者程序開發(fā)人員,小組成員,指導(dǎo)老師,以及對本“出行小貼士”有興趣的愛好者。背景項目名稱:出行小貼士用戶:任何需要即時獲取天氣和日歷信息的android智能手機(jī)用戶工程組織者:指導(dǎo)教師-張強(qiáng)老師,開發(fā)小組-肖立坤及小組各成員說明:現(xiàn)在的android應(yīng)用市場中有眾多的天氣預(yù)報軟件和萬年歷APP;其中只有少數(shù)APP將二者相結(jié)合,但是對于這兩個方面的實(shí)現(xiàn)程度都并不夠精細(xì)(作為一個信息提供平臺但是信息提供不夠詳細(xì))。也就是說目前的所有APP并不能滿足用戶對于詳細(xì)天氣信息和萬年歷信息的隨時隨地的獲取,需要有一個精細(xì),方便,簡單的萬年歷/天氣預(yù)報獲取APP定義安卓APP:基于安
4、卓系統(tǒng)的移動開發(fā)應(yīng)用程序參考資料軟件工程導(dǎo)論(第6版)張海潘牟永敏編著清華大學(xué)出版社2總體設(shè)計需求規(guī)定出行小貼士分為三大功能模塊:天氣信息功能模塊、萬年歷功能模塊、日程表功能模塊。天氣信息功能模塊主要用于實(shí)現(xiàn)天氣信息的及時提供,以及之后為日程表模塊提供一部分?jǐn)?shù)據(jù)。它的輸入為用戶的地理信息,輸出為天氣信息。為日程表模塊中天氣判斷功能提供數(shù)據(jù)。萬年歷功能模塊主要用于實(shí)現(xiàn)基本的日歷提醒(包括公歷和農(nóng)歷),以及日程表中時間的提供。它基于一部分android的系統(tǒng)函數(shù),輸入為當(dāng)前的日期,輸出為農(nóng)歷日期以及部分節(jié)氣、傳統(tǒng)節(jié)日距現(xiàn)在天數(shù)。日程表功能模塊用于實(shí)現(xiàn)在用戶事先設(shè)定日程表的前提下,對用戶進(jìn)行時間的提
5、醒,事件天氣的提醒(若設(shè)定事件進(jìn)行需要晴天,當(dāng)天氣預(yù)報為陰或者雨雪天時會進(jìn)行提醒)。該模塊的實(shí)現(xiàn)依賴于前兩個功能模塊提供的數(shù)據(jù)。INPUT輸入PROCESS處理OUTPUT輸出LOAD用戶地理信息(通過GPS定位獲?。┨峤坏椒?wù)器,在數(shù)據(jù)庫查詢對應(yīng)地區(qū)的天氣信息根據(jù)服務(wù)器性能而定日程信息存儲在本地數(shù)據(jù)庫,在天氣等信息更新時進(jìn)行判斷處理在對應(yīng)條件成立時使用toast進(jìn)行提醒在本地進(jìn)行數(shù)據(jù)處理,在數(shù)據(jù)更新時會對所有條件進(jìn)行判斷出行小貼土需要輸入的模塊有天氣信息模塊和日程表模塊。天氣信息模塊在用戶需求或者服務(wù)器提示信息更新時會發(fā)送用戶地理信息到服務(wù)器,經(jīng)過服務(wù)器處理后,返回當(dāng)?shù)氐臍庀筢苋障?#176
6、;日程表模塊則根據(jù)用戶事先輸入的日程表信息和一部分條件,當(dāng)天氣、時間等信息更新時進(jìn)行判斷,并返回判斷結(jié)果以及其對應(yīng)的處理方式。運(yùn)行環(huán)境a.出行小貼士的運(yùn)行平臺是android系統(tǒng)平臺,同時最低運(yùn)行版本為android4.0.3,故需要一臺系統(tǒng)版本在android4.0.3以上的手機(jī)才可運(yùn)行外存容量、聯(lián)機(jī)或脫機(jī)、媒體及其存儲格式,設(shè)備的型號及數(shù)量。b.由于部分功能依賴于網(wǎng)絡(luò)數(shù)據(jù),故需要良好的網(wǎng)絡(luò)環(huán)境?;驹O(shè)計概念和處理流程結(jié)構(gòu)出行小貼士日程表功能模塊萬年歷功能模塊日程表編輯日程表添加日程表提醒服務(wù)器天氣預(yù)報接口#求/接收并返回數(shù)天氣信息功能模塊包括:天氣信息獲取,天氣信息顯示,定位三部分。1)b
7、)天氣信息獲取:c)天氣信息顯示:2)萬年歷功能模塊a)定位:通過調(diào)用Android的GPS功能獲取當(dāng)前所在位置。通過向服務(wù)器發(fā)出請求獲取對應(yīng)位置天氣信息O向用戶顯示對應(yīng)天氣信息。萬年歷功能模塊包括獲取系統(tǒng)日期時間,計算萬年歷信息,顯示萬年歷信息三部分。a)獲取系統(tǒng)日期時間:通過函數(shù)調(diào)用獲取當(dāng)前的系統(tǒng)時間和日期。b)計算萬年歷信息:通過一定的算法獲取對應(yīng)日期的萬年歷信息。c)顯示萬年歷信息:將處理完畢的萬年歷信息顯示出來。3)日程表功能模塊日程表功能模塊包括創(chuàng)建日程表,修改日程表,判斷日程表條件。a)創(chuàng)建日程表:創(chuàng)建某天的日程表。b)修改日程表:更改日程表的內(nèi)容。c)判斷日程表條件:通過天氣信
8、息等條件,對即將發(fā)生的日程表事件進(jìn)行判斷,判斷是否適合進(jìn)行該事件。功能器求與程序的關(guān)系天氣信息獲取萬年歷地址信息獲取日程表信息錄入大入彳口息提小V萬年歷信息V日程表V7V7V7人工處理過程本軟件系統(tǒng)的工作過程中,唯一需要的人工操作是定期的對服務(wù)器和軟件進(jìn)行維護(hù)和更新。尚未問決的問題尚未解決的問題主要是:天氣信息的獲取渠道,目前指定的方案有:從一部分天氣信息網(wǎng)上扒取信息;獲取一定的接口,從接口中獲取數(shù)據(jù)。3接口設(shè)計用戶接口用戶在使用該軟件時,可以直接通過點(diǎn)擊界面中的對應(yīng)按鈕進(jìn)行操作,只有當(dāng)用戶當(dāng)前網(wǎng)絡(luò)不可用以及GPS定位服務(wù)不可用的情況下會進(jìn)行錯誤提示,其他可能的錯誤操作都會在進(jìn)行設(shè)計時進(jìn)行避免
9、。外部接口本軟件并不調(diào)用其他的Android應(yīng)用,同時在服務(wù)器方面只是進(jìn)行對于天氣信息的獲取以及更新相應(yīng)的數(shù)據(jù)庫條目??蛻舳苏{(diào)用了百度提供的定位SDK。內(nèi)部接口天氣信息模塊和萬年歷模塊都會在日程表模塊調(diào)用時提供所需的數(shù)據(jù),同時在天氣信息模塊進(jìn)行信息更新時,會訪問保存在本地數(shù)據(jù)庫中的日程表中對應(yīng)的信息進(jìn)行條件判斷。4運(yùn)行設(shè)計運(yùn)行模塊組合不同的模塊除了在主界面會顯示縮略信息外,其他情況下同一時間用戶只能使用一個功能模塊。但是各個模塊在內(nèi)部功能實(shí)現(xiàn)時具有相互調(diào)用的關(guān)系。運(yùn)行控制運(yùn)行控制方面,在Android端會通過界面引導(dǎo)使用戶執(zhí)行正確的操作,在用戶做出可能的錯誤操作時也能進(jìn)行對應(yīng)的響應(yīng)和提示。運(yùn)行
10、時間說明每種運(yùn)行模塊組合將占用各種資源的時間。APP運(yùn)行占用時間最多的是。5系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計邏輯結(jié)構(gòu)設(shè)計要點(diǎn)服務(wù)器天氣數(shù)據(jù)字典:屬性名存出代碼回備注省ProvinceInt省代碼市CityInt市代碼小WeatherInt天氣代碼最低溫度L_TempInt最低溫度最高溫度H_TempInt最高溫度風(fēng)級L_WindInt風(fēng)的級數(shù)濕度W_humidityInt空氣濕度客戶端日程表字典:屬性名存出代碼回備注省ProvinceInt省代碼市CityInt市代碼適宜天氣B_WeatherInt對應(yīng)活動最適宜的天氣開始時間S_timeDate活動開始時間結(jié)束時間E_timeDate活動結(jié)束時間活動名Nam
11、eVarchar活動名稱活動地點(diǎn)E_Locationvarchar活動發(fā)生地點(diǎn)物理結(jié)構(gòu)設(shè)計要點(diǎn)服務(wù)器天氣數(shù)據(jù)保存在服務(wù)器端的數(shù)據(jù)庫中,每過一定周期進(jìn)行更新。在用戶需求數(shù)據(jù)時,數(shù)據(jù)進(jìn)行加密傳輸。客戶日程表字典保存在用戶本地數(shù)據(jù)庫,根據(jù)用戶需求進(jìn)行變更。數(shù)據(jù)結(jié)構(gòu)與程序的關(guān)系用戶通過天氣信息功能模塊獲取天氣信息(從服務(wù)器獲取數(shù)據(jù)),用戶在日程表功能模塊更改日程表信息。同時在客戶端在判斷條件成立時會進(jìn)行事件是否合適的提示(天氣、時間等因素的不合適時會進(jìn)行提示)。6系統(tǒng)出錯處理設(shè)計由錯信息錯誤類型原因解決方法網(wǎng)絡(luò)連接失敗用戶端網(wǎng)絡(luò)連接出現(xiàn)問題提示用戶檢查網(wǎng)絡(luò)連接定位失敗用戶GPS功能未開啟提示用戶打開G
12、PS功能補(bǔ)救措施我們對于本程序可能發(fā)生的錯誤進(jìn)行了分析,分別進(jìn)行了不同的處理。主要的錯誤可能有:a.網(wǎng)絡(luò)連接失?。撼诉B接失敗外,還有可能出現(xiàn)連接超時,有可能是用戶關(guān)閉了網(wǎng)絡(luò)連接功能或者處在信號差的環(huán)境中,提示用戶打開網(wǎng)絡(luò)連接功能或者提示用戶重試。b.定位失敗:有可能是用戶處于不可定位的位置或者未打開GPS功能,提示用戶打開GPS功能或者重試。系統(tǒng)維護(hù)設(shè)計服務(wù)器端數(shù)據(jù)庫每過一定的周期進(jìn)行更新,并且在一定時間后進(jìn)行備份。這樣有利于服務(wù)器維護(hù)的自動化和簡單化??蛻舳吮镜財?shù)據(jù)庫管理依賴于用戶的使用習(xí)慣。當(dāng)客戶端卸載時,數(shù)據(jù)庫會刪除,防止數(shù)據(jù)被泄露。7天氣信息功能模塊設(shè)計說明7.1程序描述該模塊主要用
13、于獲取用戶所在位置的天氣信息(包括溫度,濕度,天氣,風(fēng)級等信息),一方面向用戶提供完整及時的信息,另一方面為之后的功能模塊提供部分重要信息。在獲取信息方面,是在后臺進(jìn)行信息的發(fā)送和獲取。7.2功能說明該程序應(yīng)具有白功能,可采用ipo圖(即輸入一處理一輸出圖)的形式。性能說明對該程序的全部性能要求,包括對精度、靈活性和時間特性的要求。輸入項給出對每一個輸入項的特性,包括名稱、標(biāo)識、數(shù)據(jù)的類型和格式、數(shù)據(jù)值的有效范圍、輸入的方式。數(shù)量和頻度、輸入媒體、輸入數(shù)據(jù)的來源和安全保密條件等等。輸由項給出對每一個輸出項的特性,包括名稱、標(biāo)識、數(shù)據(jù)的類型和格式,數(shù)據(jù)值的有效范圍,輸出的形式、數(shù)量和頻度,輸出媒
14、體、對輸出圖形及符號的說明、安全保密條件等等。算法詳細(xì)說明本程序所選用的算法,具體的計算公式和計算步驟。流程邏輯用圖表(例如流程圖、判定表等)輔以必要的說明來表示本程序的邏輯流程。接口用圖的形式說明本程序所隸屬的上一層模塊及隸屬于本程序的下一層模塊、子程序,說明參數(shù)賦值和調(diào)用方式,說明與本程序相直接關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù)庫、數(shù)據(jù)文卷)。存儲分配根據(jù)需要,說明本程序的存儲分配。注釋設(shè)計說明準(zhǔn)備在本程序中安排的注釋,如:a.加在模塊首部的注釋;b.加在各分枝點(diǎn)處的注釋;c.對各變量的功能、范圍、缺省條件等所加的注釋;d.對使用的邏輯所加的注釋等等。限制條件說明本程序運(yùn)行中所受到的限制條件。測試計劃說
15、明對本程序進(jìn)行單體測試的計劃,包括對測試的技術(shù)要求、輸入數(shù)據(jù)、預(yù)期結(jié)果、進(jìn)度安排、人員職責(zé)、設(shè)備條件驅(qū)動程序及樁模塊等的規(guī)定。尚未解決的問題說明在本程序的設(shè)計中尚未解決而設(shè)計者認(rèn)為在軟件完成之前應(yīng)解決的問題。萬年歷功能模塊設(shè)計說明從本章開始,逐個地給出各個層次中的每個程序的設(shè)計考慮。以下給出的提綱是針對一般情況的。對于一個具體的模塊,尤其是層次比較低的模塊或子程序,其很多條目的內(nèi)容往往與它所隸屬的上一層模塊的對應(yīng)條目的內(nèi)容相同,在這種情況下,只要簡單地說明這一點(diǎn)即可。程序描述給出對該程序的簡要描述,主要說明安排設(shè)計本程序的目的意義,并且,還要說明本程序的特點(diǎn)(如是常駐內(nèi)存還是非常駐?是否子程序
16、?是可重人的還是不可重人的?有無覆蓋要求?是順序處理還是并發(fā)處理等)。功能說明該程序應(yīng)具有白功能,可采用ipo圖(即輸入一處理一輸出圖)的形式。性能說明對該程序的全部性能要求,包括對精度、靈活性和時間特性的要求。輸入項給出對每一個輸入項的特性,包括名稱、標(biāo)識、數(shù)據(jù)的類型和格式、數(shù)據(jù)值的有效范圍、輸入的方式。數(shù)量和頻度、輸入媒體、輸入數(shù)據(jù)的來源和安全保密條件等等。輸由項給出對每一個輸出項的特性,包括名稱、標(biāo)識、數(shù)據(jù)的類型和格式,數(shù)據(jù)值的有效范圍,輸出的形式、數(shù)量和頻度,輸出媒體、對輸出圖形及符號的說明、安全保密條件等等。算法詳細(xì)說明本程序所選用的算法,具體的計算公式和計算步驟。流程邏輯用圖表(例
17、如流程圖、判定表等)輔以必要的說明來表示本程序的邏輯流程。接口用圖的形式說明本程序所隸屬的上一層模塊及隸屬于本程序的下一層模塊、子程序,說明參數(shù)賦值和調(diào)用方式,說明與本程序相直接關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù)庫、數(shù)據(jù)文卷)。存儲分配根據(jù)需要,說明本程序的存儲分配。注釋設(shè)計說明準(zhǔn)備在本程序中安排的注釋,如:e.加在模塊首部的注釋;f.加在各分枝點(diǎn)處的注釋;g.對各變量的功能、范圍、缺省條件等所加的注釋;h.對使用的邏輯所加的注釋等等。限制條件說明本程序運(yùn)行中所受到的限制條件。測試計劃說明對本程序進(jìn)行單體測試的計劃,包括對測試的技術(shù)要求、輸入數(shù)據(jù)、預(yù)期結(jié)果、進(jìn)度安排、人員職責(zé)、設(shè)備條件驅(qū)動程序及樁模塊等的規(guī)
18、定。尚未解決的問題說明在本程序的設(shè)計中尚未解決而設(shè)計者認(rèn)為在軟件完成之前應(yīng)解決的問題。功能模塊設(shè)計說明從本章開始,逐個地給出各個層次中的每個程序的設(shè)計考慮。以下給出的提綱是針對一般情況的。對于一個具體的模塊,尤其是層次比較低的模塊或子程序,其很多條目的內(nèi)容往往與它所隸屬的上一層模塊的對應(yīng)條目的內(nèi)容相同,在這種情況下,只要簡單地說明這一點(diǎn)即可。程序描述給出對該程序的簡要描述,主要說明安排設(shè)計本程序的目的意義,并且,還要說明本程序的特點(diǎn)(如是常駐內(nèi)存還是非常駐?是否子程序?是可重人的還是不可重人的?有無覆蓋要求?是順序處理還是并發(fā)處理等)。功能說明該程序應(yīng)具有白功能,可采用ipo圖(即輸入一處理一輸出圖)的形式。性能說明對該程序的全部性能要求,包括對精度、靈活性和時間特性的要求。輸入項給出對每一個輸入項的特性,包括名稱、標(biāo)識、數(shù)據(jù)的類型和格式、數(shù)據(jù)值的有效范圍、輸入的方式。數(shù)量和頻度、輸入媒體、輸入數(shù)據(jù)的來源和安全保密條件等等。輸由項給出對每一個輸出項的特性,包括名稱、標(biāo)識、數(shù)據(jù)的類型和格式,數(shù)據(jù)值的有效范圍,輸出的形式、數(shù)量和頻度,輸出媒體、對輸出圖形及符號的說明、安全保密條件等等。算法詳細(xì)說明本程序所選用的算法,具體的計算公式和計算步驟。流程邏輯用圖表(例如流程圖、判定表等)輔以必要的說明來表示本程序的邏輯流程。接口用圖的形式說明本程序所隸屬的上一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 服務(wù)外包合同履約金合同
- 清潔能源項目的預(yù)算及造價咨詢合同
- 城市交通改善工程設(shè)備投入計劃
- 2025年秋季心理健康教育安全防范計劃
- 幼兒園2025年活動組織與安排計劃
- 2025-2030中國豬濃縮飼料行業(yè)發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025-2030中國國債質(zhì)押貸款行業(yè)發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 房地產(chǎn)合同審查處理流程
- 一年級數(shù)學(xué)教育差異化教學(xué)計劃
- 酒店物業(yè)管理合同書
- 東南大學(xué)強(qiáng)基試題及答案
- 復(fù)雜應(yīng)用的C語言設(shè)計考題及答案
- 中華護(hù)理學(xué)會團(tuán)體標(biāo)準(zhǔn)|2024 針刺傷預(yù)防與處理課件
- 國家開放大學(xué)國開電大《健康管理實(shí)務(wù)》形考及期末終考題庫
- 2025安全生產(chǎn)月全員安全主題宣講課件二十六(41ye)
- 事故隱患內(nèi)部報告獎勵制度
- 2025新人教版英語七年級下不規(guī)則動詞表
- 2024年高考真題-地理(河北卷) 含答案
- JT-T-1180.2-2018交通運(yùn)輸企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化建設(shè)基本規(guī)范第2部分:道路旅客運(yùn)輸企業(yè)
- 西方文論經(jīng)典導(dǎo)讀智慧樹知到期末考試答案章節(jié)答案2024年浙江大學(xué)
- 初期流動管理計劃書
評論
0/150
提交評論