鐵大課表
概要設計說明書
第七小組:閆立新、曹錦鋒、李夏蕾、
蘇海岩、王偉光、楊世超
2014年4月8日
1引言... 2
1.1編寫目的... 2
1.2背景... 2
1.3定義... 2
1.4參考資料... 2
2總體設計... 2
2.1需求規定... 2
2.2執行環境... 2
2.3基本設計概念和處理流程... 3
2.4結構... 3
2.5功能器求與程式的關係... 3
2.6人工處理過程... 3
2.7尚未問決的問題... 3
3介面設計... 3
3.1使用者介面... 3
3.2外部介面... 3
3.3內部介面... 4
4執行設計... 4
4.1執行模組組合... 4
4.2執行控制... 4
4.3執行時間... 4
5系統資料結構設計... 4
5.1邏輯結構設計要點... 4
5.2物理結構設計要點... 4
5.3資料結構與程式的關係... 4
6系統出錯處理設計... 5
6.1出錯資訊... 5
6.2補救措施... 5
6.3系統維護設計... 5
概要設計主要是利用比較抽象的語言對整個需求進行概括,確定對系統的物理配置,確定整個系統的處理流程和系統的資料結構,介面設計,人機介面,實現對系統的初步設計。我們根據需求分析得到的資料流圖,將之轉化為軟體結構和資料結構,建立起目標系統的邏輯模型。使軟體程式設計人員能對目標系統有一致的認識。
a. 所建議開發的軟體系統的名稱:鐵大課表;
b.本專案的任務提出者、開發者:閆立新、曹錦鋒、李夏蕾、蘇海岩、王偉光、楊世超
使用者:石家莊鐵道大學在校學生
實現該軟體的計算中心或計算機網路:學生android手機;
c. 該軟體系統同其他系統或其他機構的基本的相互來往關係:該軟體系統與手機作業系統、與android內建sqlite資料庫系統。
課表:只學校對學生上課過程中的課程安排,具體指什麼時候在哪兒上什麼課。
curriculum schedule課程表
《軟體工程》 孫家廣, 高等教育出版社;
《軟體工程及軟體開發應用》 施一萍,清華大學出版社;
《android手機程式設計入門、應用到精通》孫巨集明,中國水利出版社;
《瘋狂android講義》(第2版)李剛,電子工業出版社。
a.
軟體應支援使用者檢視課表的詳細資訊;
b.
軟體支援記錄隨堂記事或者作業;
c.
靈活地對作業以及課程資訊(課程名稱,上課地點等)的編輯,更新;
d.
軟體應具有一定的容錯能力和抗干擾能力,在非硬體故障或非通訊故障時,系統能夠保證軟體功能能正常執行;
e.
軟體應能夠在原始版本的基礎上不斷新增新功能;
f.
軟體應支援所有使用android
4.0作業系統的手機、平板等移動裝置;
g.
軟體的實現過程中,**編寫應符合規範,在軟體設計及編寫的過程中,應隨時更新相關軟體文件。
本款軟體的硬體平台為android4.0以上手機,cpu為1g hz以上,ram為256mb以上,rom為256mb以上。輸入輸出必須保證在0-3秒之間完成。
本款軟體基於android平台,是以linux為核心的手機作業系統,是標準的linux2.6核心。所涉及資料庫為android自帶的sqlite資料庫,支援具有android軟體的手機安裝使用。
用一覽表及框圖的形式說明本系統的系統元素(各層模組、子程式、公用程式等)的劃分,扼要說明每個系統元素的識別符號和功能,分層次地給出各元素之間的控制與被控制關係.
本條用一張如下的矩陣圖說明各項功能需求的實現同各塊程式的分配關係:
顯示模組
資料庫模組
新增模組
清空資料模組
新增課表√√
新增作業√√
顯示課表/作業√√
清空表中資料√√
a.
由於學校不提供教務處訪問介面,不能通過使用者登入自動匯入課表,使用者不得不手動新增自己的課表;
b.
作業具有靈活性,隨堂的作業也需要通過手動輸入。
a.
沒有具體針對不同解析度的手機設定不同的顯示模式;
b.
存在這一些不得不手工實現的問題。
a.
鍵盤:在使用者輸入課表或新增作業時,系統自動彈出鍵盤;
b.
對話方塊:允許系統一對話方塊的方式向使用者傳達資訊;
c.
其他選項:允許使用者在提供的各種按鈕和選項中選擇。
a.
與硬體的藉口:本軟體基於android平台,使用的函式完全由android api提供,與手機硬體介面由android平台本身封裝;
b.
與android系統介面:本軟體基於android平台,使用android提供的各種api函式,處於系統架構最上層的應用層;
c.
與資料庫的介面:本軟體通過android自帶的sqlite資料庫對本地資料庫進行查詢和讀寫,設定了乙個基本的sqlitedatabase類來幫助實現這些功能。
第一次開啟軟體時通過呼叫oncreate類建立資料庫表;
mysqliteopenhelper和sqlitedatabase共同實現資料庫的訪問;
通過呼叫delete函式清除表中的資料。
本課表軟體主要以每個activity為乙個功能模組,一般乙個activity完成乙個特定的功能,通過主activity中事件的觸發啟動另外的activity,運用intent等訊息傳遞機制實現每個模組之間的鏈結與組合。各模組之間相對獨立,程式的可移植性好。各個模組之間主要以傳遞資料和訊息來實現模組之間的合作與資料共享。
執行控制將嚴格按照個模組間的函式呼叫關係來實現,使用者通過啟動軟體進入本軟體的主介面,將有一系列的功能選項,每個事件源將引起程式的不同響應。各事務中心模組中,需要對執行控制進行正確的判斷,選擇正確的執行控制路徑。本軟體系統只用兩種外界控制方式:
按鍵控制:在切換課表星期數時,點選上面的「←」和「→」進行選擇;
課程詳細資訊模組:詳細資訊需要乙個activity專門顯示,點選分享按鈕將呼叫系統的簡訊服務,因此將占用一定的系統資源。
本系統內所使用的資料結構
名稱識別符號
資料項型別定義
課程資訊
class
string
字串class(string)
對映表mapkey,value
鍵值關係
map(string,string)
資料項儲存位置
訪問方法
訪問單位
訪問長度
是否私有
class_name
課程表查詢資料庫
string
private
class_address
課程表查詢資料庫
string
private
class_no
課程表查詢資料庫
string
private
auto_update_frequency_title
課程表查詢資料庫
string
private
operation
課程表查詢資料庫
string
private
資料結構
課程類
資料庫類
解析類
class
map用一覽表的方式說朗每種可能的出錯或故障情況出現時,系統輸出資訊的形式、含意及處理方法。
錯誤資訊
輸出形式
處理方法
編輯課表失敗
提示欄提示「**不能為空
獲取作業資訊失敗
提示欄提示「獲取作業失敗,請重試「
非法操作錯誤
提示欄提示「非法操作」
資訊丟失
本地校驗
提示「資訊可能丟失」
說明故障出現後可能採取的變通措施,包括:
當課表程式被意外終止時,強制退出前系統將cpu及各個暫存器當前的資料壓棧儲存,當使用者再次啟動課表程式時,提示使用者上次退出是意外終止,將儲存的暫存器資訊還原;
如遇未知錯誤導致時鐘軟體安裝時出錯,則系統將儲存錯誤資訊,恢復原暫存器內容,釋放記憶體已使用的空間;
當課表軟體意外地訪問到了系統檔案,收到作業系統的拒絕資訊時,將終止當前操作,並恢復操作之前的各暫存器。
暫時沒有考慮。
概要設計說明書
1 引言 1 1編寫目的 說明編寫這份概要設計說明書的目的,指出預期的讀者。1 2背景 說明 a 待開發軟體系統的名稱 b 列出此專案的任務提出者 開發者 使用者以及將執行該軟體的計算站 中心 1 3定義 列出本檔案中用到的專門術語的定義和外文首字母組詞的原片語。1 4參考資料 a 本專案的經核准的...
概要設計說明書
關鍵字 需求分析 xx系統概要設計 說明書目錄 1.文件介紹 1 1.1 文件目的 1 1.2 文件範圍 1 1.3 讀者物件 1 1.4 參考文獻 1 1.5 術語與縮寫解釋 1 2.系統概述 2 3.設計約束 2 3.1需求約束 2 3.2隱含約束 2 4.設計策略 3 4.1擴充套件策略 3 ...
概要設計說明書
概要設計說明書 1引言1.1編寫目的 說明編寫這份概要設計說明書的目的,指出預期的讀者。1.2背景 說明 a.待開發軟體系統的名稱 b.列出此專案的任務提出者 開發者 使用者以及將執行該軟體的計算站 中心 1.3定義 列出本檔案中用到的專門術語的定義和外文首字母組詞的原片語。1.4參考資料 a.本專...