Web打字原型系統

學識都 人氣:4.33K

一、選題目的和意義
 近年來,互聯網在國際上得到了迅猛的發展,基於互聯網的各種應用也日益受到人們的重視,目前流行的打字測試系統經常會用在一些計算機考試中,但大多打字測試系統只是對單一用戶的測試系統,這種測試形式大多隻是在單機上實現,它不支持遠程異地考試。在測試環節中,我們仍然過分依賴於傳統的測試模式,目前的單機化測試,仍然存在着過程的繁瑣和浪費:測試之前,需要下載或購買測試軟件,接着需要對機器安裝測試系統,然後纔可以使用,而且這種軟件不經常使用,可見是一種資源浪費。所以,這種在Web中在線的測試及考試是一種發展趨勢,人們只需要打開網頁即可進行測試,使用方便。
二、本選題在國內外的研究現狀和發展趨勢
 隨着社會的發展與計算機的普及,人們對電子計算機不再感到神祕。全民學習計算機的熱情很高,打字對於計算機初學者來說是最基本的需要掌握的技術,因此各種打字系統也隨之產生。現在存在的打字系統一般都是各種軟件,需要用戶安裝到機器上,這種測試形式大多隻是在單機上實現,它不支持遠程異地考試。在測試環節中,我們仍然過分依賴於傳統的測試模式,目前的單機化測試,仍然存在着過程的繁瑣和浪費:測試之前,需要下載或購買測試軟件,接着需要對機器安裝測試系統,然後纔可以使用,而且這類軟件不經常使用,可見是一種浪費。所以,這種在Web中在線的測試及考試是一種發展趨勢。
三、課題設計方案  [主要說明:研究(設計)的基本內容、觀點及擬採取的研究途徑。]
 編寫的一個Web打字原型系統。此係統是採用java script編寫,對用戶所輸入的文字進行測試,測試的方面主要包括:錄入文字的速度、錄入文字的錯誤率、在文字錄入時出現的錯誤能夠及時標記出來、對測試結果的保存。本文也是主要在上述幾方面進行編碼設計。此係統在Web中發佈以後,會大大方便用戶,使用戶在何時何地都能進行此種測試及練習。
四、計劃進度安排  [主要說明:起止時間及分階段的進度要求。]
 
 第一階段:      起止時間:2005.11.1-2005.11.20
                  進度要求:熟悉開發工具,蒐集相關資料;
 第二階段:      起止時間:2005.11.21-2005.12.1
                   進度要求:撰寫開題報告書;
 第三階段:      起止時間:2005.12.2-2006.12.19
                   進度要求:確定設計具體要實現的內容,進行可行性分析;編寫程序並基本實現系統功能;撰寫設計文檔;
 第四階段:      起止時間:2005.12.20-2006.1.15
 進度要求:將論文交與指導老師,進一步修改,準備答辯。
五、主要參考文獻
1 馮博琴,呂軍.計算機網絡.高等教育出版社.2002
2 雷學生 script語言程序設計教程.中國水利水電出版社.2004
3 張洪斌 script程序設計.清華大學出版社.2001
4 Douglas Dunn  java script Rules 中文版(譯)中國電力出版社.2003
5 廖若雪 script高級編程 機械工業出版社.2001
6 薩師煊,王珊.數據庫系統概論.第3版.高等教育出版社.2000
7 張海藩.軟件工程導論.第4版 清華大學出版社.2003
8 湯庸,葉小平,湯娜.數據庫理論及應用基礎.清華大學出版社.2004
 
指導教師意見及建議

Web打字原型系統

 

 年 月 日

教學單位領導小組審批意見:


籤  名:

年 月 日

Web打字原型系統
張森
(德州學院計算機系,山東德州 253023)
摘要:本文介紹的是基於對現在流行的單機打字測試系統所帶來的不便,從而編寫的一個Web打字原型系統。此係統是採用java script編寫,對用戶所輸入的文字進行測試,測試的方面主要包括:錄入文字的速度、錄入文字的錯誤率、在文字錄入時出現的錯誤能夠及時標記出來、對測試結果的保存。本文也是主要在上述幾方面進行編碼設計。
此係統在Web中發佈以後,會大大方便用戶,使用戶在何時何地都能進行此種測試及練習。
關鍵詞:原型,java script,文字測試,算法分析
1  引言
 近年來,互聯網在國際上得到了迅猛的發展,基於互聯網的各種應用也日益受到人們的重視,目前流行的打字測試系統經常會用在一些計算機考試中,但大多打字測試系統只是對單一用戶的測試系統,這種測試形式大多隻是在單機上實現,它不支持遠程異地考試。在測試環節中,我們仍然過分依賴於傳統的測試模式,目前的單機化測試,仍然存在着過程的繁瑣和浪費:測試之前,需要下載或購買測試軟件,接着需要對機器安裝測試系統,然後纔可以使用,而且這軟件不經常使用,可見是一種浪費。所以,這種在Web中在線的測試及考試是一種發展趨勢,人們只需要打開網頁即可進行測試,使用方便,而且還能根據自己的愛好更換文章測試類型。
2  打字系統的需求分析
 需求分析的基本任務是準確地回答“系統必須做什麼”這個問題,分析出系統的數據要求。用戶需要的打字系統要具有顯示打字速度、統計總數、進行錯誤提示等功能,在測試中用戶可以根據要求更換文章及類型等。在具體設計時要體現人性化的要求,滿足大多數用戶的要求。本系統是針對一般初級用戶進行打字測試的,無需安裝專門的安裝程序;只需打開網頁即可進行測試,因此本系統採用java script角本語言,java script是網景公司開發的一種瀏覽器解釋執行的角本語言,現在所有的瀏覽器都有執行,因此具有跨平臺跨系統性。
2.1 瞭解java script
 java script是一種基於對象(Object)和事件驅動(Event Driven)並具有安全性能的腳本語言,有了java script,可使網頁變得生動。使用它的目的是與HTML超文本標識語言、Java 腳本語言一起實現在一個網頁中鏈接多個對象,與網絡客戶交互作用,從而可以開發客戶端的應用程序。它是通過嵌入或調入在標準的HTML語言中實現的。java script是一種基於客戶端瀏覽器的語言,用戶在瀏覽中填表、驗證的交互過程只是通過瀏覽器對調入HTML文檔中的java script源代碼進行解釋執行來完成的。java script是一種解釋性編程語言,其源代碼在發往客戶端執行之前不需經過編譯,而是將文本格式的字符代碼發送給客戶編譯,由瀏覽器解釋執行。
2.2 java script的特點
java script具有很多優點:
 (1)簡單性。java script是一種腳本編寫語言,它採用小程序段的方式實現編程,像其它腳本語言一樣,java script同樣也是一種解釋性語言,它提供了一個簡易的開發過程;
 (2)動態性。java script是動態的,它可以直接對用戶或客戶的輸入做出響應,無須經過Web服務程序;
 (3)跨平臺性。java script是依賴於瀏覽器本身,與操作環境無關,只要能運行瀏覽器的計算機,並支持java script的瀏覽器就可以正確執行。
 java script是一種對數據類型變量要求不太嚴格的語言,所以不必聲明每一個變量的類型,變量聲明儘管不是必須的,但在使用變量之前先進行聲明是一種好的習慣。可以使用 var 語句來進行變量聲明。java script 是一種區分大小寫的語言,因此將一個變量命名爲 computer 和將其命名爲 Computer是不一樣的。
 綜上所述,java script 是一種新的描述語言,它可以被嵌入到 HTML 的文件之中。 java script語言可以做到迴應使用者的需求事件 (如: form 的輸入) ,而不用任何的網絡來回傳輸資料,所以當一位使用者輸入一項資料時,它不用經過傳給服務器端 (Server)處理,再傳回來的過程,而直接可以被客戶端 (Client) 的應用程式所處理。所以,我選擇java script語言來作爲我做此設計的語言。
2.3打字系統的功能流程圖
 用戶進入測試界面以後,選擇測試的文章類型,然後選擇隨機(選擇隨機就是將選擇的文章打亂原有的順序),然後開始測試,測試過程中,文章的內容和用戶輸入的字符同步顯示,輸入完畢後,結束測試,然後統計出測試結果,測試結果包括:用戶打字的速度統計、字數統計、用時統計及正確率。如圖1:
 圖1  打字系統的功能流程圖

3打字系統的總體設計
3.1打字系統的功能模塊圖,
 打字系統的功能包括:文本框賦值、獲得選項值、取得隨機字符、顯示打字成績、刷新網頁、顯示用時、統計打字速度、選擇文章類型、結束打字,如圖2:

 
 圖2  打字系統的功能模塊圖
3.2 打字系統的用戶界面設計,如圖3:

圖3 用戶界面設計
4  打字系統的詳細設計
4.1程序的設計說明
 當用戶要進行打字的時候,點擊開始時系統不能立即進入打字狀態,需要有一段等待時間,若此時正行則用戶沒有準備時間,因此需要延遲一段時間。開始測試的時候系統還需要初始化一些變量,這些變量進入循環計算。本系統根據用戶的打字習慣,分爲英文文章打字測驗,中文文章測驗,英文單個字符測驗,數字測驗,四個選擇項,並且用戶可以根據要求選擇是否隨機,若隨機則取的時候打亂順序。本系統每次英文與數字是取60個字符,漢字是取30個字。當把文章讀出來後需要在指定地方顯示出來以方便用戶參照進行測試,並且用戶對照上邊打字若打錯後上一行能顯示紅字,打完這一行後,能夠自動跳轉到下一行,用戶也可以手動按回車鍵進行下一行的錄入。當開始打字的時候。記錄下開始時間,通過一定算法把耗費時間,打字正確率,打字速度,打字總數統計出來,並實時刷新。
4.2、功能設計
(1)獲得測驗打字系統的文章內容
 本系統根據用戶的打字習慣,分爲英文文章打字測驗,中文文章測驗,英文單個字符測驗,數字測驗,四個選擇項,並且用戶可以根據要求選擇是否隨機,若隨機則取的時候打亂順序。本系統每次英文與數字是取60個字符,漢字是取30個字。具體流程圖如4:
                                     
圖4  具體功能程序流程圖

(2)在網頁中顯示要打字的內容
 當把文章讀出來後需要在指定地方顯示出來以方便用戶參照進行測試,並且用戶對照上邊打字若打錯後上一行能顯示紅字,打完這一行後,能夠自動跳轉到下一行,用戶也可以手動按回車鍵進行下一行的錄入。如圖5:

 圖5獲取打字內容的程序流圖
(3)顯示時間與打字速度正確率
 當開始打字的時候。記錄下開始時間,通過一定算法把耗費時間,打字正確率,打字速度,打字總數統計出來,並實時刷新。如圖6:

 
 
圖6 獲取用時及正確率程序流圖
4)初始化及開始時間提示
 當用戶要進行打字的時候,點擊開始按鍵時系統不能立即進入打字狀態,需要有一段等待時間,若此時正行則用戶沒有準備時間,因此需要延遲一段時間。開始測試的時候系統還需要初始化一些變量,文本框變進入循環計算。如圖7:
 
 


圖7初始化程序流程圖
(5)監聽鍵盤
 當用戶進入測試的時候需要測試整篇文章,而一開始只能讀一行60個字符或者30漢字,輸入完一行後需要重新得到下一行的數據,因此要時刻監聽鍵盤的事件!當用戶按下回車鍵,或者輸入的文本框到了60個字符時,就要重新換行。另外,當用戶按下ESC鍵就停止,並統計出打字成績!如圖8:

  
圖8監聽鍵盤的程序流程圖
5  測試
5.1 測試的`目標
測試是爲了發現程序中的錯誤而執行程序的過程;
好的測試方案是儘可能發現迄今爲止尚未發現的錯誤的測試方案;
成功的測試是發現了至今爲止尚未發現的錯誤的測試。
 測試任何產品都有兩種方法:如果已經知道了產品應該具有的功能,可以通過測試來檢驗是否每個功能都能正常使用;如果知道產品的內部工作過程,可以通過測試來檢驗產品內部動作是否按照規格說明書的規定正常進行。前一種方法稱爲黑盒測試,後一種方法稱爲白盒測試。
   對於軟件測試而言,黑盒測試法把程序看作一個盒子,完全不考慮程序的內部結構的處理過程。也就是說,黑盒測試是在程序接口進行的測試,它只檢查程序功能是否能按照規格說明書的規定正常使用,程序是否能適當地接收輸入數據併產生正確的輸出信息,程序運行過程中能否保持外部信息的完整性。黑盒測試又稱爲功能測試。
   白盒測試法與黑盒測試法相反,它的前提是可以把程序看成裝在一個透明的白盒子裏,測試者完全知道程序的結構和處理算法。這種方法按照程序內部的邏輯測試程序,檢測程序中的主要執行通路是否都能按預定要求正確工作。白盒測試又稱爲結構測試。
 在本系統中計算打字速度與統計打字數量等功能模塊都進行了黑盒測試,在本測試中發現了很多功能漏洞,但是在後來進一步完善改正了前面的錯誤。在不同的操作系統和瀏覽器中測試成功,並請很多同學幫助進行功能測試。在白盒測試中沒有專門的測試軟件,採用人工方式逐行閱讀代碼檢查可能存在的邏輯錯誤,並一一改正。
6 打字系統總結
 通過這次畢業設計本人在開發java script應用程序方面有了長足的進步,對java script的網絡編程有了深刻的體會。
 
 參 考 文 獻:
1 馮博琴,呂軍.計算機網絡.高等教育出版社,2002
2 雷學生,java script語言程序設計教程.中國水利水電出版社,2004
3 張洪斌,java script程序設計.清華大學出版社,2001
4 Douglas Dunn ,java script Rules 中文版(譯).中國電力出版社,2003
5 廖若雪,java script高級編程 機械工業出版社,2001
6 薩師煊,王珊.數據庫系統概論.第3版.高等教育出版社,2000
7 張海藩,軟件工程導論.第4版 .清華大學出版社,2003
8 湯庸,葉小平,湯娜.數據庫理論及應用基礎.清華大學出版社,2004

A Web-based typewriting prototype system
Zhang Sen
 (Department of Computer, DeZhou University, DeZhou, 200421001277)
Abstract:   This thesis introduces a Web-based typewriting prototype system which is based on the inconvenience of PC. The system is coded by java script language . This system tests users typewriting, the test mainly includes : the speed of writing, the error rate of writing, the preservation of the test results. This thesis also is mainly to carry on coding the design several aspects above. The system published on the Web would take it easy for user to do the tests and practices when and where they need.
Key words: prototype; java script; typewriting; algorithm analysis
 
  謝  辭
 此次畢業論文的順利完成受益於我的指導老師孫壽龍老師,劉建軍與任傳成老師的熱情指導和幫助,還有黃林同學在編碼設計中的幫助,他們細心不倦的指導使我通過這次嘗試,使我進一步對面向對象程序設計中java script語言程序設計和網絡編程、軟件構件複用與數據庫開發有了更深的理解,使我在軟件開發方面的能力有了很大的提高!在此我向他們表示真誠的感謝和真心的祝福。
 此次嘗試的確是一個很好的開端,通過它,我爲自己以後的繼續求學之路明確了方向,併爲以後的發展奠定了堅實的基礎!
 
 

TAGS:系統 Web 打字