[IT計算機(jī)]嵌入式專業(yè)項(xiàng)目文檔模板完成版_第1頁
[IT計算機(jī)]嵌入式專業(yè)項(xiàng)目文檔模板完成版_第2頁
[IT計算機(jī)]嵌入式專業(yè)項(xiàng)目文檔模板完成版_第3頁
[IT計算機(jī)]嵌入式專業(yè)項(xiàng)目文檔模板完成版_第4頁
[IT計算機(jī)]嵌入式專業(yè)項(xiàng)目文檔模板完成版_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 密級 公開 組號 湖南科技職業(yè)學(xué)院軟件學(xué)院項(xiàng)目文檔項(xiàng) 目 題 目 簡易計算器 專 業(yè) 軟件技術(shù)(嵌入式工程師方向)班 級 嵌入式3092 學(xué) 生 姓 名 戴高樂 指 導(dǎo) 老 師 文光明 2011年6月課程設(shè)計文檔編寫模板 湖南科技職業(yè)學(xué)院軟件學(xué)院項(xiàng)目文檔編寫模板文檔信息 文檔名稱:項(xiàng)目文檔編寫模板負(fù)責(zé)人:戴高樂文檔版本編號:tech-spec-docu密級:普通文檔版本日期:2011-5-21起草人:戴高樂起草日期:2011-5-21復(fù)審人:戴高樂 復(fù)審日期:2011-6-11任務(wù)分配表來自from日期電話 / 傳真戴高樂2011-5-2013507489874模塊名稱負(fù)責(zé)人截止日期完成日期

2、軟件需求說明書戴高樂2011-5-252011-5-30需求分析報告戴高樂2011-5-312011-6-4軟件設(shè)計書戴高樂2011-6-52011-6-7程序設(shè)計說明書戴高樂2011-6-82011-6-11軟件測試說明書戴高樂2011-6-122011-6-15用戶手冊戴高樂2011-6-162011-6-18版本記錄版本編號版本日期修改者說明1.02011-5-30戴高樂草案2.02011-6-10戴高樂初步方案3.02011-6-18戴高樂最終方案第28頁目錄一軟件需求說明書(軟件計劃書,確定軟件的總體功能)11.1引言11.2業(yè)務(wù)流程整體說明11.3特殊說明21.4原始資料2二需求分

3、析報告32.1引言32.2任務(wù)概述32.3功能需求32.4性能需求32.5運(yùn)行環(huán)境描述3三軟件設(shè)計書(詳細(xì)設(shè)計說明書,建立軟件結(jié)構(gòu))53.1引言53.2硬件結(jié)構(gòu)設(shè)計53.3軟件結(jié)構(gòu)設(shè)計53.4硬件描述53.4.1觸摸屏63.4.2lcd顯示83.5程序描述83.5.1加法運(yùn)算83.5.2減法運(yùn)算93.5.3乘法運(yùn)算103.5.4除法運(yùn)算123.5.5清零13四程序設(shè)計說明書144.1引言144.2各功能核心代碼和界面說明144.2.1界面初始化144.2.2加減乘除運(yùn)算154.2.3清零22五軟件測試說明書235.1引言235.2計劃235.3測試項(xiàng)目說明235.4測試計劃執(zhí)行情況245.5評

4、價24六用戶手冊266.1引言266.2系統(tǒng)功能介紹266.3運(yùn)行環(huán)境說明266.4運(yùn)行前的準(zhǔn)備266.5輸入輸出說明和操作說明266.6安全與保密266.7常見問題的處理276.8附錄:安裝與初始化27一 軟件需求說明書(軟件計劃書,確定軟件的總體功能)1.1 引言 編寫目的本文主要描述科學(xué)計算器系統(tǒng)需求,目的是清晰地描述用戶使用本軟件必須要完成的任務(wù)和定義開發(fā)人員必須實(shí)現(xiàn)的軟件功能,使用戶利用系統(tǒng)能夠完成他們的任務(wù)。 項(xiàng)目背景 項(xiàng)目委托單位:湖南科技職業(yè)學(xué)院 開發(fā)人員:戴高樂 主管部門:湖南科技職業(yè)學(xué)院軟件學(xué)院1.2 業(yè)務(wù)流程整體說明1.3 特殊說明本系統(tǒng)使用方便,兼容性優(yōu)異。1.4 原始

5、資料 資料收集: a. linux組件應(yīng)用b.linux中系統(tǒng)設(shè)置常用命令c. gui.qt.4d. qt信號與槽e. arm嵌入式c編程標(biāo)準(zhǔn)教程f. 學(xué)習(xí)筆記widget,mainwindow和dialog的選擇使用g. qt控制對象繼承關(guān)系h. 嵌入式linux與應(yīng)用開發(fā) 原始單據(jù)、原始報表等:以列表的方式列出原始資料的名稱,而且要與原有業(yè)務(wù)流程概述的內(nèi)容相對照,并將實(shí)際的原始資料附在業(yè)務(wù)分析書的后面。原始資料名稱對應(yīng)于原有業(yè)務(wù)流程概述的哪一部分內(nèi)容嵌入式linux應(yīng)用程序開發(fā)qt圖形編程基礎(chǔ)二 需求分析報告2.1 引言 編寫目的大二了,軟件學(xué)院的學(xué)生即將進(jìn)入社會壓力巨大,專業(yè)沒學(xué)好信心大

6、失,該軟件宗旨幫同學(xué)們找回自信,告訴他們沒學(xué)好也能編出東西。自信滿滿的迎接挑戰(zhàn)。2.2 任務(wù)概述 目標(biāo)我們在學(xué)習(xí)生活中,常會遇到一些繁雜的數(shù)值運(yùn)算,尤其是遇到正弦、余弦、對數(shù)等手算困難的運(yùn)算時,這時候我們就必須用到科學(xué)計算器,所以我便著手開發(fā)了這個計算器程序,以便用于自己的學(xué)習(xí)工作。2.3 功能需求 功能劃分 功能描述對最底層的功能所要完成的功能進(jìn)行詳細(xì)描述,填入下表中:功能名稱功能標(biāo)識符功能詳細(xì)描述加減乘除“+”,“-”,“*”,“/”數(shù)字的加減乘除運(yùn)算數(shù)字1234567890輸入數(shù)字清零init數(shù)字清零2.4 性能需求 時間要求軟件可實(shí)現(xiàn)隨時更新,及時運(yùn)行及操作的執(zhí)行。 適應(yīng)性(在操作方式

7、、運(yùn)行環(huán)境、與其他軟件的接口等發(fā)生變化時,所具有的適應(yīng)能力。)2.5 運(yùn)行環(huán)境描述 硬件設(shè)備arm開發(fā)板,計算機(jī)電腦 支持軟件linux qt , window xp qt 接口usb硬件接口 控制界面控制 用戶界面 其他需求 如可用性、安全保密、可維護(hù)性、可跨平臺性等。(分高、中、低定性詳細(xì)描述)三 軟件設(shè)計書(詳細(xì)設(shè)計說明書,建立軟件結(jié)構(gòu))3.1 引言 編寫目的軟件設(shè)計說明書是為程序設(shè)計進(jìn)行指導(dǎo)的文檔,主要功能是建立軟件的結(jié)構(gòu),詳細(xì)說明每個功能的上下功能模塊和輸入輸出接口。3.2 硬件結(jié)構(gòu)設(shè)計 描述硬件功能結(jié)構(gòu)圖 3.3 軟件結(jié)構(gòu)設(shè)計 軟件功能結(jié)構(gòu)圖通過qt軟件調(diào)用的程序源代碼arm開發(fā)板

8、,網(wǎng)線,源代碼可執(zhí)行,在arm開發(fā)板顯示可觸屏軟件,同步軟件3.4 硬件描述 硬件功能結(jié)構(gòu)圖如下:圖 觸摸屏作用原理圖 觸摸屏電路圖圖 觸摸屏輸入系統(tǒng)3.4.1 觸摸屏 功能系統(tǒng):簡易計算器 設(shè)計人:戴高樂模塊:可觸摸屏 日期:2011-06-11上層調(diào)用模塊:ad轉(zhuǎn)換 可調(diào)用的下層模塊:lcd顯示 輸入鍵盤輸入 輸出通過顯示屏輸出信息 硬件模塊說明:觸摸操作時,薄膜下層的ito會接觸到玻璃上層的ito,經(jīng)由感應(yīng)器傳出相應(yīng)的電信號,經(jīng)過轉(zhuǎn)換電路送到處理器,通過運(yùn)算轉(zhuǎn)化為屏幕上的x、y值,而完成點(diǎn)選的動作,并呈現(xiàn)在屏幕上局部注釋項(xiàng):無 接口:ad轉(zhuǎn)換寄存器、觸摸屏控制寄存器。 限制條件:無 測試

9、要點(diǎn): 校正觸摸屏以及觸摸點(diǎn)的可行性 尚未解決的問題:無3.4.2 lcd顯示系統(tǒng):計算器 設(shè)計人:戴高樂模塊:lcd顯示 日期:2011-06-05上層調(diào)用模塊:觸摸屏下層調(diào)用模塊:無輸入:無輸出:顯示屏硬件模塊說明:lcd控制器和lcd驅(qū)動器之間的幀同步信號,比led有更好的顯示效果。局部注釋項(xiàng):無 接口:控制器及驅(qū)動器 限制條件:無 測試要點(diǎn):是否正常顯示 尚未解決的問題:無3.5 程序描述3.5.1 加法運(yùn)算 功能系統(tǒng):計算器 設(shè)計人:戴高樂模塊:加法運(yùn)算 日期:2011-06-01無 界面函數(shù) 輸入:鍵盤輸入 輸出:通過顯示屏達(dá)到輸出信息 處理過程說明: 主要是操作加的算法 算法n=

10、a.todouble(); /如果上一次已經(jīng)有運(yùn)算符,那么將a,b都轉(zhuǎn)換成浮點(diǎn)數(shù)m=b.todouble();if(c=+) n=n+m;if(c=-) n=n-m;if(c=*) n=n*m;if(c=/) n=n/m; 接口:按鍵 限制條件:無 測試要點(diǎn):是否有反應(yīng) 尚未解決的問題:無3.5.2 減法運(yùn)算 功能系統(tǒng):計算器 設(shè)計人:戴高樂模塊:減法運(yùn)算 日期:2011-06-02 無 界面函數(shù) 輸入鍵盤輸入 輸出通過顯示屏達(dá)到輸出信息 處理過程說明:無 主要是操作減的算法 算法 n=a.todouble(); /如果上一次已經(jīng)有運(yùn)算符,那么將a,b都轉(zhuǎn)換成浮點(diǎn)數(shù)m=b.todouble()

11、;if(c=+) n=n+m;if(c=-) n=n-m;if(c=*) n=n*m;if(c=/) n=n/m; 接口:按鍵 限制條件:無 測試要點(diǎn):是否有反應(yīng) 尚未解決的問題:無3.5.3 乘法運(yùn)算 功能系統(tǒng):計算器 設(shè)計人:戴高樂模塊:乘法運(yùn)算 日期:2011-06-05 無 界面函數(shù) 輸入鍵盤輸入 輸出通過顯示屏達(dá)到輸出信息 處理過程說明:無 主要是操作乘的算法 算法 n=a.todouble(); /如果上一次已經(jīng)有運(yùn)算符,那么將a,b都轉(zhuǎn)換成浮點(diǎn)數(shù)m=b.todouble();if(c=+) n=n+m;if(c=-) n=n-m;if(c=*) n=n*m;if(c=/) n=n

12、/m; 接口:按鍵 限制條件:無 測試要點(diǎn):是否有反應(yīng) 尚未解決的問題:無3.5.4 除法運(yùn)算 功能系統(tǒng):計算器 設(shè)計人:戴高樂模塊:加法運(yùn)算 日期:2011-06-07 無 界面函數(shù) 輸入鍵盤輸入 輸出通過顯示屏達(dá)到輸出信息 處理過程說明:無 主要是操作除的算法 算法 n=a.todouble(); /如果上一次已經(jīng)有運(yùn)算符,那么將a,b都轉(zhuǎn)換成浮點(diǎn)數(shù)m=b.todouble();if(c=+) n=n+m;if(c=-) n=n-m;if(c=*) n=n*m;if(c=/) n=n/m; 接口:按鍵 限制條件:無 測試要點(diǎn):是否有反應(yīng) 尚未解決的問題:無3.5.5 清零 功能系統(tǒng):計算器

13、 設(shè)計人:戴高樂模塊:清零 日期:2011-06-11無 界面函數(shù) 輸入鍵盤輸入 輸出通過顯示屏達(dá)到輸出信息 處理過程說明:所有都初始化主要是操作清零 算法void window:binit() /按了init鍵,所有都初始化a=0;b=0;c= ;l-settext(b); 接口:按鍵 限制條件:無 測試要點(diǎn):是否有反應(yīng) 尚未解決的問題:無四 程序設(shè)計說明書4.1 引言 編寫目的說明本軟件的各功能模塊實(shí)現(xiàn)技巧及核心代碼4.2 各功能核心代碼和界面說明4.2.1 界面初始化 實(shí)現(xiàn)技巧。調(diào)用qt內(nèi)庫 功能界面 核心代碼 resize(320,240); /重畫窗口大小a=0;b=0;c= ; /

14、初始化。注意c初始化為空格鍵l=new qlineedit(this);l-settext(b);l-setreadonly(true); /添加文本編輯框并且設(shè)置為不可更改b1=new qpushbutton(1,this);b2=new qpushbutton(2,this);b3=new qpushbutton(3,this);b4=new qpushbutton(4,this);b5=new qpushbutton(5,this);b6=new qpushbutton(6,this);b7=new qpushbutton(7,this);b8=new qpushbutton(8,thi

15、s);b9=new qpushbutton(9,this);b0=new qpushbutton(0,this);bchen=new qpushbutton(*,this);bchu=new qpushbutton(/,this);bjia=new qpushbutton(+,this);bjian=new qpushbutton(-,this);b=new qpushbutton(.,this);bden=new qpushbutton(=,this);binit=new qpushbutton(init,this);ll=new qlabel(made by dai,this); /為各個

16、部件申請空間qfont f=qfont(times,18,qfont:bold); /設(shè)置qlabel的格式ll-setfont(f); /應(yīng)用格式/*以上處理各個部件在主窗口中的位置*/l-setgeometry(20,10,250,30);b1-setgeometry(20,40,30,30);b2-setgeometry(70,40,30,30);b3-setgeometry(120,40,30,30);b4-setgeometry(170,40,30,30);b5-setgeometry(220,40,30,30);b6-setgeometry(20,80,30,30);b7-setg

17、eometry(70,80,30,30);b8-setgeometry(120,80,30,30);b9-setgeometry(170,80,30,30);b0-setgeometry(220,80,30,30);bchen-setgeometry(20,120,30,30);bchu-setgeometry(70,120,30,30);bjia-setgeometry(120,120,30,30);bjian-setgeometry(170,120,30,30);b-setgeometry(220,120,30,30);bden-setgeometry(20,160,30,30);bini

18、t-setgeometry(70,160,30,30);ll-setgeometry(120,160,200,40);4.2.2 加減乘除運(yùn)算 實(shí)現(xiàn)技巧。實(shí)現(xiàn)運(yùn)算功能 功能界面 核心代碼 void window:b1() /數(shù)字按鍵“1”的槽函數(shù)if(b=0) b=1; /如果b為0直接進(jìn)行替代,想象下計算器,按了“1”鍵總不能顯示的是“01”吧.elseb=l-text(); /如果不是,先獲取當(dāng)前文本編輯框的內(nèi)容,如b=23,再按一下那么在后面追加1.b.append(1);l-settext(b); /將b再次送到文本編輯框進(jìn)行顯示.void window:b2() /同上if(b=0)

19、 b=2;elseb=l-text();b.append(2);l-settext(b);void window:b3() /同上.if(b=0) b=3;elseb=l-text();b.append(3);l-settext(b);void window:b4()if(b=0) b=4;elseb=l-text();b.append(4);l-settext(b);void window:b5()if(b=0) b=5;elseb=l-text();b.append(5);l-settext(b);void window:b6()if(b=0) b=6;elseb=l-text();b.a

20、ppend(6);l-settext(b);void window:b7()if(b=0) b=7;elseb=l-text();b.append(7);l-settext(b);void window:b8()if(b=0) b=8;elseb=l-text();b.append(8);l-settext(b);void window:b9()if(b=0) b=9;elseb=l-text();b.append(9);l-settext(b);void window:b0()if(b=0) b=0;elseb=l-text();b.append(0);l-settext(b);void w

21、indow:bpoi() /這個是小數(shù)點(diǎn)鍵對應(yīng)的slot函數(shù),比較特殊,直接追加就可以了if(b=0) b.append(.);elseb=l-text();b.append(.);l-settext(b);void window:badd() /加法鍵double n,m;b=l-text();if(c= ) /如果c為空格鍵,說明現(xiàn)在是第一次運(yùn)算,那么不進(jìn)行任何操作,只是將b復(fù)制給a(注意a原來是“0”) /同時保存這一次的操作符,以便下一次計算.a=b;b=0;c=+;elsen=a.todouble(); /如果上一次已經(jīng)有運(yùn)算符,那么將a,b都轉(zhuǎn)換成浮點(diǎn)數(shù)m=b.todouble()

22、;if(c=+) n=n+m;if(c=-) n=n-m;if(c=*) n=n*m;if(c=/) n=n/m; /實(shí)現(xiàn)運(yùn)算a=qstring:number(n,f,10); /再轉(zhuǎn)換回字符形式b=0; /將b重新初始化c=+;l-settext(a); /顯示中間結(jié)果void window:bdel() /同上double n,m;b=l-text();if(c= )a=b;b=0;c=-;elsen=a.todouble();m=b.todouble();if(c=+) n=n+m;if(c=-) n=n-m;if(c=*) n=n*m;if(c=/) n=n/m;a=qstring:n

23、umber(n,f,10);b=0;c=-;l-settext(a);void window:bmul() /乘號double n,m;b=l-text();if(c= )a=b;b=0;c=*;elsen=a.todouble();m=b.todouble();if(c=+) n=n+m;if(c=-) n=n-m;if(c=*) n=n*m;if(c=/) n=n/m;a=qstring:number(n,f,10);b=0;c=*;l-settext(a);void window:bdiv() /除號double n,m;b=l-text();if(c= )a=b;b=0;c=/;els

24、en=a.todouble();m=b.todouble();if(c=+) n=n+m;if(c=-) n=n-m;if(c=*) n=n*m;if(c=/) n=n/m;a=qstring:number(n,f,10);b=0;l-settext(a);void window:bden() /等號鍵,同上類似double n,m;b=l-text();if(c= )a=b;b=0;l-settext(a);a=0;c= ;elsen=a.todouble();m=b.todouble();if(c=+) n=n+m;if(c=-) n=n-m;if(c=*) n=n*m;if(c=/) n

25、=n/m;a=qstring:number(n,f,10);b=0;c= ;l-settext(a);a=0;void window:binit() /按了init鍵,所有都初始化a=0;b=0;c= ;l-settext(b);4.2.3 清零 實(shí)現(xiàn)技巧。通過init初始化函數(shù) 功能界面 核心代碼 void window:binit() /按了init鍵,所有都初始化a=0;b=0;c= ;l-settext(b); 五 軟件測試說明書5.1 引言 編寫目的指導(dǎo)軟件測試并給出結(jié)果表以填寫測試結(jié)果5.2 計劃 測試方案用戶界面測試、功能流程測試、性能測試等。 測試項(xiàng)目測試名稱內(nèi)容目的進(jìn)度用戶界

26、面測試運(yùn)行程序,界面是否達(dá)到標(biāo)準(zhǔn)使界面達(dá)到客戶標(biāo)準(zhǔn)12-24合格,25號完成測試功能流程測試點(diǎn)擊功能按鈕,是否可實(shí)現(xiàn)其功能使功能能夠?qū)崿F(xiàn)其效果12-26合格,28號完成測試性能測試通過不斷運(yùn)行操作,其軟件的性能是否良好使本軟件更具可操作性12-28合格,29號完成測試 測試準(zhǔn)備 測試機(jī)構(gòu)及人員測試機(jī)構(gòu):湖南科技職業(yè)學(xué)院負(fù)責(zé)人:戴高樂職責(zé):全包5.3 測試項(xiàng)目說明 測試項(xiàng)目名稱及測試內(nèi)容用戶界面測試:運(yùn)行程序,界面是否達(dá)到標(biāo)準(zhǔn)。功能流程測試:點(diǎn)擊功能按鈕,是否可實(shí)現(xiàn)其功能。性能測試:通過不斷運(yùn)行操作,其軟件的性能是否良好。 測試用例1. 輸入數(shù)字,小數(shù)點(diǎn),加減乘除清零按鍵2. 輸出(預(yù)期的輸出數(shù)

27、據(jù)。)0-9都能準(zhǔn)確輸出,加減乘除可算出正確答案3. 步驟及操作 進(jìn)度目前為止能實(shí)現(xiàn)加減乘除清零功能 條件(給出項(xiàng)測試對資源的特殊要求,如設(shè)備、軟件、人員等。)開發(fā)人員,計算機(jī), 測試資料linux應(yīng)用程序開發(fā),arm標(biāo)準(zhǔn)教材 5.4 測試計劃執(zhí)行情況 測試項(xiàng)目 測試名稱內(nèi)容目的用戶界面測試運(yùn)行程序,界面是否達(dá)到標(biāo)準(zhǔn)使界面達(dá)到客戶標(biāo)準(zhǔn)功能流程測試點(diǎn)擊功能按鈕,是否可實(shí)現(xiàn)其功能使功能能夠?qū)崿F(xiàn)其效果性能測試通過不斷運(yùn)行操作,其軟件的性能是否良好使本軟件更具可操作性 測試機(jī)構(gòu)和人員(給出測試機(jī)構(gòu)名稱、負(fù)責(zé)人和參與測試人員名單。)測試機(jī)構(gòu):湖南科技職業(yè)學(xué)院軟件學(xué)院負(fù)責(zé)人:戴高樂測試人員:戴高樂 測試結(jié)果 戶界面運(yùn)行良好測試數(shù)據(jù)合格,功能流程順暢,數(shù)據(jù)合格,性能數(shù)據(jù)合格5.5 評價 軟件能力可運(yùn)行性強(qiá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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論