出行小貼士APP 概要設(shè)計說明書_第1頁
出行小貼士APP 概要設(shè)計說明書_第2頁
出行小貼士APP 概要設(shè)計說明書_第3頁
出行小貼士APP 概要設(shè)計說明書_第4頁
出行小貼士APP 概要設(shè)計說明書_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、.1引言31.1編寫目的31.2背景31.3定義31.4參考資料42總體設(shè)計42.1需求規(guī)定42.2運行環(huán)境52.3基本設(shè)計概念和處理流程52.4結(jié)構(gòu)52.5功能器求與程序的關(guān)系72.6人工處理過程72.7尚未問決的問題73接口設(shè)計83.1用戶接口83.2外部接口83.3內(nèi)部接口84運行設(shè)計84.1運行模塊組合84.2運行控制84.3運行時間85系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計95.1邏輯結(jié)構(gòu)設(shè)計要點95.2物理結(jié)構(gòu)設(shè)計要點95.3數(shù)據(jù)結(jié)構(gòu)與程序的關(guān)系96系統(tǒng)出錯處理設(shè)計106.1出錯信息106.2補救措施106.3系統(tǒng)維護設(shè)計107天氣信息功能模塊設(shè)計說明107.1程序描述107.2功能117.3性能117

2、.4輸人項117.5輸出項117.6算法117.7流程邏輯117.8接口117.9存儲分配117.10注釋設(shè)計127.11限制條件127.12測試計劃127.13尚未解決的問題128萬年歷功能模塊設(shè)計說明128.1程序描述128.2功能128.3性能138.4輸人項138.5輸出項138.6算法138.7流程邏輯138.8接口138.9存儲分配138.10注釋設(shè)計138.11限制條件148.12測試計劃148.13尚未解決的問題149日程表功能模塊設(shè)計說明149.1程序描述149.2功能149.3性能149.4輸人項149.5輸出項159.6算法159.7流程邏輯159.8接口159.9存儲分

3、配159.10注釋設(shè)計159.11限制條件159.12測試計劃159.13尚未解決的問題16.概要設(shè)計說明書1引言1.1編寫目的1.1.1 目的經(jīng)過對“出行小貼士”項目進行詳細調(diào)查研究,初步擬定項目實現(xiàn)報告,明確開發(fā)風(fēng)險及其所帶來的經(jīng)濟效益,對軟件開發(fā)中將要面臨的問題及其解決方案進行可行性分析。1.1.2預(yù)期讀者程序開發(fā)人員,小組成員,指導(dǎo)老師,以及對本“出行小貼士”有興趣的愛好者。1.2背景1.2.1 項目名稱:出行小貼士1.2.2 用戶:任何需要即時獲取天氣和日歷信息的android智能手機用戶1.2.3工程組織者:指導(dǎo)教師-張強老師,開發(fā)小組-肖立坤及小組各成員1.2.4 說明:現(xiàn)在的a

4、ndroid應(yīng)用市場中有眾多的天氣預(yù)報軟件和萬年歷APP,其中只有少數(shù)APP將二者相結(jié)合,但是對于這兩個方面的實現(xiàn)程度都并不夠精細(作為一個信息提供平臺但是信息提供不夠詳細)。也就是說目前的所有APP并不能滿足用戶對于詳細天氣信息和萬年歷信息的隨時隨地的獲取,需要有一個精細,方便,簡單的萬年歷/天氣預(yù)報獲取APP。1.3定義安卓APP:基于安卓系統(tǒng)的移動開發(fā)應(yīng)用程序。1.4參考資料軟件工程導(dǎo)論(第6版) 張海潘 牟永敏 編著 清華大學(xué)出版社2總體設(shè)計2.1需求規(guī)定出行小貼士分為三大功能模塊:天氣信息功能模塊、萬年歷功能模塊、日程表功能模塊。天氣信息功能模塊主要用于實現(xiàn)天氣信息的及時提供,以及之

5、后為日程表模塊提供一部分數(shù)據(jù)。它的輸入為用戶的地理信息,輸出為天氣信息。為日程表模塊中天氣判斷功能提供數(shù)據(jù)。萬年歷功能模塊主要用于實現(xiàn)基本的日歷提醒(包括公歷和農(nóng)歷),以及日程表中時間的提供。它基于一部分android的系統(tǒng)函數(shù),輸入為當(dāng)前的日期,輸出為農(nóng)歷日期以及部分節(jié)氣、傳統(tǒng)節(jié)日距現(xiàn)在天數(shù)。日程表功能模塊用于實現(xiàn)在用戶事先設(shè)定日程表的前提下,對用戶進行時間的提醒,事件天氣的提醒(若設(shè)定事件進行需要晴天,當(dāng)天氣預(yù)報為陰或者雨雪天時會進行提醒)。該模塊的實現(xiàn)依賴于前兩個功能模塊提供的數(shù)據(jù)。INPUT輸入PROCESS處理OUTPUT輸出LOAD負載量用戶地理信息(通過GPS定位獲取)提交到服務(wù)

6、器,在數(shù)據(jù)庫查詢對應(yīng)地區(qū)的天氣信息根據(jù)服務(wù)器性能而定日程信息存儲在本地數(shù)據(jù)庫,在天氣等信息更新時進行判斷處理在對應(yīng)條件成立時使用toast進行提醒在本地進行數(shù)據(jù)處理,在數(shù)據(jù)更新時會對所有條件進行判斷出行小貼士需要輸入的模塊有天氣信息模塊和日程表模塊。天氣信息模塊在用戶需求或者服務(wù)器提示信息更新時會發(fā)送用戶地理信息到服務(wù)器,經(jīng)過服務(wù)器處理后,返回當(dāng)?shù)氐臍庀笮畔?。日程表模塊則根據(jù)用戶事先輸入的日程表信息和一部分條件,當(dāng)天氣、時間等信息更新時進行判斷,并返回判斷結(jié)果以及其對應(yīng)的處理方式。2.2運行環(huán)境a 出行小貼士的運行平臺是android系統(tǒng)平臺,同時最低運行版本為android 4.0.3,故需

7、要一臺系統(tǒng)版本在android 4.0.3以上的手機才可運行外存容量、聯(lián)機或脫機、媒體及其存儲格式,設(shè)備的型號及數(shù)量。b 由于部分功能依賴于網(wǎng)絡(luò)數(shù)據(jù),故需要良好的網(wǎng)絡(luò)環(huán)境。2.3基本設(shè)計概念和處理流程2.4結(jié)構(gòu)1) 天氣信息功能模塊天氣信息功能模塊包括:天氣信息獲取,天氣信息顯示,定位三部分。a) 定位:通過調(diào)用Android的GPS功能獲取當(dāng)前所在位置。b) 天氣信息獲?。和ㄟ^向服務(wù)器發(fā)出請求獲取對應(yīng)位置天氣信息。c) 天氣信息顯示:向用戶顯示對應(yīng)天氣信息。2) 萬年歷功能模塊萬年歷功能模塊包括獲取系統(tǒng)日期時間,計算萬年歷信息,顯示萬年歷信息三部分。a) 獲取系統(tǒng)日期時間:通過函數(shù)調(diào)用獲取當(dāng)

8、前的系統(tǒng)時間和日期。b) 計算萬年歷信息:通過一定的算法獲取對應(yīng)日期的萬年歷信息。c) 顯示萬年歷信息:將處理完畢的萬年歷信息顯示出來。3) 日程表功能模塊日程表功能模塊包括創(chuàng)建日程表,修改日程表,判斷日程表條件。a) 創(chuàng)建日程表:創(chuàng)建某天的日程表。b) 修改日程表:更改日程表的內(nèi)容。c) 判斷日程表條件:通過天氣信息等條件,對即將發(fā)生的日程表事件進行判斷,判斷是否適合進行該事件。2.5功能器求與程序的關(guān)系天氣信息獲取萬年歷地址信息獲取日程表信息錄入天氣信息提示萬年歷信息日程表2.6人工處理過程本軟件系統(tǒng)的工作過程中,唯一需要的人工操作是定期的對服務(wù)器和軟件進行維護和更新。2.7尚未問決的問題

9、尚未解決的問題主要是:天氣信息的獲取渠道,目前指定的方案有:從一部分天氣信息網(wǎng)上扒取信息;獲取一定的接口,從接口中獲取數(shù)據(jù)。3接口設(shè)計3.1用戶接口用戶在使用該軟件時,可以直接通過點擊界面中的對應(yīng)按鈕進行操作,只有當(dāng)用戶當(dāng)前網(wǎng)絡(luò)不可用以及GPS定位服務(wù)不可用的情況下會進行錯誤提示,其他可能的錯誤操作都會在進行設(shè)計時進行避免。3.2外部接口本軟件并不調(diào)用其他的Android應(yīng)用,同時在服務(wù)器方面只是進行對于天氣信息的獲取以及更新相應(yīng)的數(shù)據(jù)庫條目??蛻舳苏{(diào)用了百度提供的定位SDK。3.3內(nèi)部接口天氣信息模塊和萬年歷模塊都會在日程表模塊調(diào)用時提供所需的數(shù)據(jù),同時在天氣信息模塊進行信息更新時,會訪問保

10、存在本地數(shù)據(jù)庫中的日程表中對應(yīng)的信息進行條件判斷。4運行設(shè)計4.1運行模塊組合不同的模塊除了在主界面會顯示縮略信息外,其他情況下同一時間用戶只能使用一個功能模塊。但是各個模塊在內(nèi)部功能實現(xiàn)時具有相互調(diào)用的關(guān)系。4.2運行控制運行控制方面,在Android端會通過界面引導(dǎo)使用戶執(zhí)行正確的操作,在用戶做出可能的錯誤操作時也能進行對應(yīng)的響應(yīng)和提示。4.3運行時間說明每種運行模塊組合將占用各種資源的時間。APP運行占用時間最多的是。5系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計5.1邏輯結(jié)構(gòu)設(shè)計要點服務(wù)器天氣數(shù)據(jù)字典:屬性名存出代碼類型備注省ProvinceInt省代碼市CityInt市代碼天氣WeatherInt天氣代碼最低溫

11、度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é)束時間活動名NameVarchar活動名稱活動地點E_Locationvarchar活動發(fā)生地點5.2物理結(jié)構(gòu)設(shè)計要點服務(wù)器天氣數(shù)據(jù)保存在服務(wù)器端的數(shù)據(jù)庫中,每過一定周期進行更新。在用戶需求數(shù)據(jù)時,數(shù)據(jù)進行加密傳輸??蛻羧粘瘫碜值浔4嬖谟脩舯镜財?shù)據(jù)庫,

12、根據(jù)用戶需求進行變更。5.3數(shù)據(jù)結(jié)構(gòu)與程序的關(guān)系用戶通過天氣信息功能模塊獲取天氣信息(從服務(wù)器獲取數(shù)據(jù)),用戶在日程表功能模塊更改日程表信息。同時在客戶端在判斷條件成立時會進行事件是否合適的提示(天氣、時間等因素的不合適時會進行提示)。6系統(tǒng)出錯處理設(shè)計6.1出錯信息錯誤類型原因解決方法網(wǎng)絡(luò)連接失敗用戶端網(wǎng)絡(luò)連接出現(xiàn)問題提示用戶檢查網(wǎng)絡(luò)連接定位失敗用戶GPS功能未開啟提示用戶打開GPS功能6.2補救措施我們對于本程序可能發(fā)生的錯誤進行了分析,分別進行了不同的處理。主要的錯誤可能有:a. 網(wǎng)絡(luò)連接失?。撼诉B接失敗外,還有可能出現(xiàn)連接超時,有可能是用戶關(guān)閉了網(wǎng)絡(luò)連接功能或者處在信號差的環(huán)境中,提

13、示用戶打開網(wǎng)絡(luò)連接功能或者提示用戶重試。b. 定位失?。河锌赡苁怯脩籼幱诓豢啥ㄎ坏奈恢没蛘呶创蜷_GPS功能,提示用戶打開GPS功能或者重試。6.3系統(tǒng)維護設(shè)計服務(wù)器端數(shù)據(jù)庫每過一定的周期進行更新,并且在一定時間后進行備份。這樣有利于服務(wù)器維護的自動化和簡單化??蛻舳吮镜財?shù)據(jù)庫管理依賴于用戶的使用習(xí)慣。當(dāng)客戶端卸載時,數(shù)據(jù)庫會刪除,防止數(shù)據(jù)被泄露。7天氣信息功能模塊設(shè)計說明7.1程序描述該模塊主要用于獲取用戶所在位置的天氣信息(包括溫度,濕度,天氣,風(fēng)級等信息),一方面向用戶提供完整及時的信息,另一方面為之后的功能模塊提供部分重要信息。在獲取信息方面,是在后臺進行信息的發(fā)送和獲取。7.2功能說明

14、該程序應(yīng)具有的功能,可采用IPO圖(即輸入一處理一輸出圖)的形式。7.3性能說明對該程序的全部性能要求,包括對精度、靈活性和時間特性的要求。7.4輸人項給出對每一個輸入項的特性,包括名稱、標(biāo)識、數(shù)據(jù)的類型和格式、數(shù)據(jù)值的有效范圍、輸入的方式。數(shù)量和頻度、輸入媒體、輸入數(shù)據(jù)的來源和安全保密條件等等。7.5輸出項給出對每一個輸出項的特性,包括名稱、標(biāo)識、數(shù)據(jù)的類型和格式,數(shù)據(jù)值的有效范圍,輸出的形式、數(shù)量和頻度,輸出媒體、對輸出圖形及符號的說明、安全保密條件等等。7.6算法詳細說明本程序所選用的算法,具體的計算公式和計算步驟。7.7流程邏輯用圖表(例如流程圖、判定表等)輔以必要的說明來表示本程序的

15、邏輯流程。7.8接口用圖的形式說明本程序所隸屬的上一層模塊及隸屬于本程序的下一層模塊、子程序,說明參數(shù)賦值和調(diào)用方式,說明與本程序相直接關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù)庫、數(shù)據(jù)文卷)。7.9存儲分配根據(jù)需要,說明本程序的存儲分配。7.10注釋設(shè)計說明準備在本程序中安排的注釋,如:a 加在模塊首部的注釋;b 加在各分枝點處的注釋;c 對各變量的功能、范圍、缺省條件等所加的注釋;d 對使用的邏輯所加的注釋等等。7.11限制條件說明本程序運行中所受到的限制條件。7.12測試計劃說明對本程序進行單體測試的計劃,包括對測試的技術(shù)要求、輸入數(shù)據(jù)、預(yù)期結(jié)果、進度安排、人員職責(zé)、設(shè)備條件驅(qū)動程序及樁模塊等的規(guī)定。7.13

16、尚未解決的問題說明在本程序的設(shè)計中尚未解決而設(shè)計者認為在軟件完成之前應(yīng)解決的問題。8萬年歷功能模塊設(shè)計說明從本章開始,逐個地給出各個層次中的每個程序的設(shè)計考慮。以下給出的提綱是針對一般情況的。對于一個具體的模塊,尤其是層次比較低的模塊或子程序,其很多條目的內(nèi)容往往與它所隸屬的上一層 模塊的對應(yīng)條目的內(nèi)容相同,在這種情況下,只要簡單地說明這一點即可。8.1程序描述給出對該程序的簡要描述,主要說明安排設(shè)計本程序的目的意義,并且,還要說明本程序的特點(如 是常駐內(nèi)存還是非常駐?是否子程序?是可重人的還是不可重人的?有無覆蓋要求?是順序處理還是并發(fā)處理等)。8.2功能說明該程序應(yīng)具有的功能,可采用IP

17、O圖(即輸入一處理一輸出圖)的形式。8.3性能說明對該程序的全部性能要求,包括對精度、靈活性和時間特性的要求。8.4輸人項給出對每一個輸入項的特性,包括名稱、標(biāo)識、數(shù)據(jù)的類型和格式、數(shù)據(jù)值的有效范圍、輸入的方式。數(shù)量和頻度、輸入媒體、輸入數(shù)據(jù)的來源和安全保密條件等等。8.5輸出項給出對每一個輸出項的特性,包括名稱、標(biāo)識、數(shù)據(jù)的類型和格式,數(shù)據(jù)值的有效范圍,輸出的形式、數(shù)量和頻度,輸出媒體、對輸出圖形及符號的說明、安全保密條件等等。8.6算法詳細說明本程序所選用的算法,具體的計算公式和計算步驟。8.7流程邏輯用圖表(例如流程圖、判定表等)輔以必要的說明來表示本程序的邏輯流程。8.8接口用圖的形式

18、說明本程序所隸屬的上一層模塊及隸屬于本程序的下一層模塊、子程序,說明參數(shù)賦值和調(diào)用方式,說明與本程序相直接關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù)庫、數(shù)據(jù)文卷)。8.9存儲分配根據(jù)需要,說明本程序的存儲分配。8.10注釋設(shè)計說明準備在本程序中安排的注釋,如:e 加在模塊首部的注釋;f 加在各分枝點處的注釋;g 對各變量的功能、范圍、缺省條件等所加的注釋;h 對使用的邏輯所加的注釋等等。8.11限制條件說明本程序運行中所受到的限制條件。8.12測試計劃說明對本程序進行單體測試的計劃,包括對測試的技術(shù)要求、輸入數(shù)據(jù)、預(yù)期結(jié)果、進度安排、人員職責(zé)、設(shè)備條件驅(qū)動程序及樁模塊等的規(guī)定。8.13尚未解決的問題說明在本程序的設(shè)計中尚未解決而設(shè)計者認為在軟件完成之前應(yīng)解決的問題。9日程表功能模塊設(shè)計說明從本章開始,逐個地給出各個層次中的每個程序的設(shè)計考慮。以下給出的提綱是針對一般情況的。對于一個具體的模塊,尤其是層次比較低的模塊或子程序,其很多條目的內(nèi)容往往與它所隸屬的上一層 模塊的對應(yīng)條目的內(nèi)容相同,在這種情況下,只要簡單地說明這一點即可。9.1程序描述給出對該程序的簡要描述,主要說明安排設(shè)計本程序的目的意義,并且,還要說明本程序的特點(如 是常駐內(nèi)存還是非常駐?是否子程序?是可重人的還是不可重人的?有無覆蓋要求?是順序處理還是并發(fā)處理等)。9.2功能說明該程序應(yīng)具有的功能,

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論