課程表APP的具體實(shí)現(xiàn).doc_第1頁(yè)
課程表APP的具體實(shí)現(xiàn).doc_第2頁(yè)
課程表APP的具體實(shí)現(xiàn).doc_第3頁(yè)
課程表APP的具體實(shí)現(xiàn).doc_第4頁(yè)
課程表APP的具體實(shí)現(xiàn).doc_第5頁(yè)
已閱讀5頁(yè),還剩61頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

天津大學(xué)Android項(xiàng)目實(shí)訓(xùn)文檔v1.0“云課堂”安卓應(yīng)用的設(shè)計(jì)與實(shí)現(xiàn)Design and Implementation of the Android Application“Class-In-Cloud” (CiC)項(xiàng)目作者 洪智 裘實(shí) 尹樹成 指導(dǎo)教師 學(xué)科專業(yè) 軟件工程 培養(yǎng)單位 中軟國(guó)際技術(shù)部二一三年五月摘 要摘 要近年來(lái),課程表的安卓應(yīng)用大量出現(xiàn),但這些軟件并沒(méi)有解決“學(xué)生對(duì)于該類軟件”不斷增長(zhǎng)的需求量的問(wèn)題。人工的課程表和普通的課程表應(yīng)用已經(jīng)顯得繁瑣且難以滿足大學(xué)生對(duì)于該類軟件的需求,針對(duì)于現(xiàn)狀,我們決定開發(fā)“云課堂”軟件,充分運(yùn)用“云”的特點(diǎn),將用戶手動(dòng)的輸入大量減少,真正實(shí)現(xiàn)教學(xué)的自動(dòng)化與信息化。云課堂的功能創(chuàng)新性是目前同類軟件所不具有的。利用“云”技術(shù),本應(yīng)用可從云端獲取個(gè)人課程表,無(wú)需人工輸入,省時(shí)省力又保證信息準(zhǔn)確;也可以從云端實(shí)時(shí)獲取最新的課程講義資料,資料有更新時(shí)會(huì)自動(dòng)推送通知,并提供本地個(gè)人資料共享功能。關(guān)于本應(yīng)用的文件管理功能,“云課堂”將時(shí)間管理功能(課程表)與文件管理(課程資料)相結(jié)合,方便易用,可將課堂抓拍與相關(guān)課程自動(dòng)關(guān)聯(lián)起來(lái),方便日后查看,還可以將手機(jī)本地的個(gè)人筆記等資料與相應(yīng)課程關(guān)聯(lián)。通過(guò)“云課堂”安卓應(yīng)用的研發(fā)及應(yīng)用,一方面解決目前安卓手機(jī)課程表應(yīng)用無(wú)法讀取網(wǎng)絡(luò)資源,需要用戶手動(dòng)輸入課程的問(wèn)題,提高了用戶使用的方便性與便捷性。另一方面對(duì)于面前的應(yīng)用混亂無(wú)章的本地文件管理模式來(lái)說(shuō),可以通過(guò)該系統(tǒng)平臺(tái),引入良好的文件管理模式,合理調(diào)用手機(jī)的各種接口,提高學(xué)習(xí)的水平和質(zhì)量。云課堂軟件可以廣泛地應(yīng)用于學(xué)習(xí)教學(xué)的各領(lǐng)域,有效地提高了學(xué)生對(duì)課程安排,時(shí)間安排進(jìn)行決策的可靠性、客觀性及合理性,該軟件可以作為學(xué)校教學(xué)系統(tǒng)的一種組成部分,從一個(gè)方面提高教學(xué)的自動(dòng)化信息化水平,另一方面可以通過(guò)各種評(píng)估機(jī)制提高學(xué)生的自理能力,自控能力。關(guān)鍵字:課程表 文件管理 大學(xué)生AbstractAbstractIn recent years, there has been a huge amount of Android applications about curriculum, but the software does not solve the problem of the growing demand of the student for such software. Paper-based curriculum tables and general curriculum table applications have become cumbersome and difficult to use and thus not meet the needs of students for such software for the status quo. So we decided to develop this cloud in class software, to making full use of the cloud feature. The user would never need to manually input his/her curriculum table, using state-of-the-art teaching automation and information technology.Class-in-Cloud features innovative functions which no similar applications now have. . With the cloud technology, the application can obtain personal curriculum information from the cloud server. No need for human input. That saves time and ensures accuracy of the information; you can also get the latest course notes from the cloud in real-time. Data updates will automatically push notifications, as well as providing local personal data management. About this applications file management features, Class-in-Cloud have time management features (curriculum table) and document management (course material) combined with easy to use. You can take a in-class picture and have the photo automatically associated with corresponding courses, facilitating future reviewing. You can also have your local personal notes and other files associated with corresponding courses.With the Class-in-Cloud Android application, we on one hand develop a solution to the current Android curriculum application not being able to read network resources, and requiring the user to manually enter informations problem, thus promoting the convenience and usability; on the other hand, for the chaos in the field of curriculum table and file management applications, it can improve the level and quality of the students study by using the universitys system platform, the introduction of a good document management mode, and making good use of various smart-phone features.The software can be widely used in all areas of learning to teach effectively improve the students curriculum, schedule reliability of decision-making, objectivity and rationality, the software system can be used as a teaching component from one aspect of automation to improve the teaching level of information on the other hand can be assessed through a variety of mechanisms to improve students self-care ability, self-control.Key Words: curriculum table document management college students目 錄目 錄第一章 緒論1第一節(jié)論文背景及研究意義11.1.1 論文背景11.1.2 論文解決方案11.1.3 論文研究意義2第二節(jié)論文研究目標(biāo)21.2.1 論文研究目標(biāo)21.2.2 論文研究?jī)?nèi)容31.2.3 論文解決問(wèn)題3第三節(jié)國(guó)內(nèi)外研究現(xiàn)狀41.3.1 安卓手機(jī)應(yīng)用發(fā)展現(xiàn)狀41.3.2 課程表相關(guān)應(yīng)用發(fā)展現(xiàn)狀5第四節(jié)同類系統(tǒng)分析對(duì)比5第五節(jié)系統(tǒng)開發(fā)意義6第六節(jié)論文主要研究工作6第二章 系統(tǒng)應(yīng)用技術(shù)介紹7第一節(jié)系統(tǒng)開發(fā)的生命周期72.1.1流程周期72.1.2循環(huán)周期8第二節(jié)系統(tǒng)開發(fā)的工具及技術(shù)82.2.1系統(tǒng)開發(fā)的客戶端技術(shù)82.2.2系統(tǒng)開發(fā)的云端應(yīng)用技術(shù)11第三節(jié)系統(tǒng)開發(fā)的方法和模型132.3.1系統(tǒng)基本的架構(gòu)思路(MVC模式)142.3.2云端管理模塊142.3.3通信模塊14第三章 系統(tǒng)需求分析16第一節(jié)軟件需求定義16第二節(jié)功能需求分析163.2.1 系統(tǒng)功能需求163.2.2 云端管理模塊183,2.3 通信模塊193.2.4 本地課程管理模塊193.2.5 本地文件管理模塊213.2.6 輔助支持模塊23第三節(jié)系統(tǒng)部署與實(shí)施分析23第四節(jié)系統(tǒng)可行性分析233.4.1 可行性研究233.4.2 技術(shù)可行性分析243.4.3 操作可行性24第五節(jié)本章小結(jié)24第四章 用戶界面設(shè)計(jì)25第一節(jié)界面設(shè)計(jì)工具介紹25第二節(jié)界面詳細(xì)設(shè)計(jì)264.2.1 主界面設(shè)計(jì)264.2.2 登陸界面設(shè)計(jì)274.2.3 課程資料界面本地資料設(shè)計(jì)284.2.4 課程資料界面云端資料設(shè)計(jì)294.2.5 課程資料界面云端詳情設(shè)計(jì)30第三節(jié) 界面詳細(xì)設(shè)計(jì)36第四節(jié) 本章小結(jié)37第五章 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)38第一節(jié)數(shù)據(jù)庫(kù)及建模工具介紹385.1.1 數(shù)據(jù)庫(kù)簡(jiǎn)介385.1.2 數(shù)據(jù)庫(kù)建模工具簡(jiǎn)介395.1.3 MySQL GUI Tools開發(fā)工具簡(jiǎn)介39第二節(jié)數(shù)據(jù)庫(kù)總體建模設(shè)計(jì)405.2.1 數(shù)據(jù)庫(kù)總體設(shè)計(jì)思路405.2.2 數(shù)據(jù)庫(kù)概念數(shù)據(jù)模型CDM(Conceptual Data Model)40第三節(jié)系統(tǒng)數(shù)據(jù)庫(kù)數(shù)據(jù)字典及ER圖415.3.1 數(shù)據(jù)庫(kù)設(shè)計(jì)的特色414.2.11數(shù)據(jù)表ER圖及數(shù)據(jù)字典41第四節(jié)本章小結(jié)45第六章 模塊詳細(xì)設(shè)計(jì)46第一節(jié) 模塊詳細(xì)設(shè)計(jì)與代碼實(shí)現(xiàn)466.1.1 云端管理模塊466.1.2 通信模塊486.1.3 本地課程管理模塊506.1.4 本地文件管理模塊536.1.5 輔助支持模塊56第二節(jié) 本章小結(jié)58第七章 總結(jié)與展望59第一章 緒論第一章 緒論隨著智能手機(jī)在大學(xué)生群體的廣泛普及和云技術(shù)的普遍應(yīng)用以及互聯(lián)網(wǎng)的發(fā)展,Wi-Fi熱點(diǎn)已經(jīng)能覆蓋很大部分的學(xué)校區(qū)域,人工的課程表和普通的課程表應(yīng)用已經(jīng)顯得繁瑣且難以滿足大學(xué)生對(duì)于該類軟件的需求。云課堂軟件(classes in cloud,簡(jiǎn)稱CIC)在信息化高度發(fā)展的今天為在校學(xué)生提供了更全面的幫助,將“云”技術(shù)融入課程表,將時(shí)間管理和文件管理結(jié)合為一體。第一節(jié) 論文背景及研究意義1.1.1 論文背景近年來(lái),課程表的安卓應(yīng)用大量出現(xiàn),但這些軟件并沒(méi)有解決“學(xué)生對(duì)于該類軟件”不斷增長(zhǎng)的需求量的問(wèn)題。人工的課程表和普通的課程表應(yīng)用已經(jīng)顯得繁瑣且難以滿足大學(xué)生對(duì)于該類軟件的需求,針對(duì)于現(xiàn)狀,我們決定開發(fā)“云課堂”軟件,充分運(yùn)用“云”的特點(diǎn),將用戶手動(dòng)的輸入大量減少,真正實(shí)現(xiàn)教學(xué)的自動(dòng)化與信息化。隨著智能手機(jī)在大學(xué)生群體的廣泛普及和云技術(shù)的普遍應(yīng)用以及互聯(lián)網(wǎng)的發(fā)展,Wi-Fi熱點(diǎn)已經(jīng)能覆蓋很大部分的學(xué)校區(qū)域,云課堂在信息化高度發(fā)展的今天為在校學(xué)生提供了更全面的幫助,將“云”技術(shù)融入課程表,將時(shí)間管理和文件管理結(jié)合為一體。在傳統(tǒng)的類似軟件中,用戶需要手動(dòng)輸入課程或者相關(guān)信息,這不僅需要用戶合理控制自己的輸入,還需對(duì)原有課程信息進(jìn)行檢查。這樣的處理一方面無(wú)法對(duì)課程管理行有效的監(jiān)控,同時(shí)也未達(dá)到該類軟件的核心功能。1.1.2 論文解決方案云課堂的功能創(chuàng)新性是目前同類軟件所不具有的。利用“云”技術(shù),本應(yīng)用可從云端獲取個(gè)人課程表,無(wú)需人工輸入,省時(shí)省力又保證信息準(zhǔn)確;也可以從云端實(shí)時(shí)獲取最新的課程講義資料,資料有更新時(shí)會(huì)自動(dòng)推送通知,并提供本地個(gè)人資料共享功能。關(guān)于本應(yīng)用的文件管理功能,“云課堂”將時(shí)間管理功能(課程表)與文件管理(課程資料)相結(jié)合,方便易用,可將課堂抓拍與相關(guān)課程自動(dòng)關(guān)聯(lián)起來(lái),方便日后查看,還可以將手機(jī)本地的個(gè)人筆記等資料與相應(yīng)課程關(guān)聯(lián)。通過(guò)“云課堂”安卓應(yīng)用的研發(fā)及應(yīng)用,一方面解決目前安卓手機(jī)課程表應(yīng)用無(wú)法讀取網(wǎng)絡(luò)資源,需要用戶手動(dòng)輸入課程的問(wèn)題,提高了用戶使用的方便性與便捷性。另一方面對(duì)于面前的應(yīng)用混亂無(wú)章的本地文件管理模式來(lái)說(shuō),可以通過(guò)該系統(tǒng)平臺(tái),引入良好的文件管理模式,合理調(diào)用手機(jī)的各種接口,提高學(xué)習(xí)的水平和質(zhì)量。1.1.3 論文研究意義 綜上所述,“云課堂”安卓應(yīng)用具有以下的意義: 1.共享性:云端存儲(chǔ),方便師生共享資料 2.實(shí)用性:需求迫切,可為大學(xué)生解決學(xué)習(xí)中的實(shí)際問(wèn)題 3.易用性:界面友好操作簡(jiǎn)單,自動(dòng)化智能化 4.創(chuàng)新性:突破傳統(tǒng)應(yīng)用模式束縛,整合了課程表與文件管理功能 5.合理調(diào)用安卓系統(tǒng)的多接口,做到基本覆蓋在校大學(xué)生的對(duì)于該類軟件的要求。 6.界面的友好性,教育類軟件的友好對(duì)于該類應(yīng)用的普及很關(guān)鍵,該應(yīng)用的實(shí)現(xiàn)也對(duì)于發(fā)布更多的適合大學(xué)生群體的應(yīng)用第二節(jié) 論文研究目標(biāo)1.2.1 論文研究目標(biāo)通過(guò)“云課堂”安卓應(yīng)用的研發(fā)及應(yīng)用,一方面解決目前安卓手機(jī)課程表應(yīng)用無(wú)法讀取網(wǎng)絡(luò)資源,需要用戶手動(dòng)輸入課程的問(wèn)題,提高了用戶使用的方便性與便捷性。另一方面對(duì)于面前的應(yīng)用混亂無(wú)章的本地文件管理模式來(lái)說(shuō),可以通過(guò)該系統(tǒng)平臺(tái),引入良好的文件管理模式,合理調(diào)用手機(jī)的各種接口,提高學(xué)習(xí)的水平和質(zhì)量。我們的開發(fā)過(guò)程將嚴(yán)格按照敏捷開發(fā)模式,注重按照項(xiàng)目的開發(fā)計(jì)劃,逐步完成相應(yīng)的功能。1.2.2 論文研究?jī)?nèi)容從大學(xué)生的實(shí)際需求出發(fā),為了有效提高課程表應(yīng)用的信息化水平,滿足日益增長(zhǎng)的大學(xué)生需求,因此將系統(tǒng)的核心功能大體分為五個(gè)功能模塊,分別是:云端管理模塊、通信模塊、本地課程管理模塊、本地文件管理模塊、輔助支持模塊。以下對(duì)該六個(gè)核心功能模塊進(jìn)行簡(jiǎn)要說(shuō)明: 模塊1:云端管理模塊管理員上傳,分享課程資源,確認(rèn)課程信息的完整性,有效性。在測(cè)試版本中,本應(yīng)用將選取2-3個(gè)專業(yè)作為實(shí)驗(yàn)。 模塊2:通信模塊本地信息與“云端”的交互。主要是用戶通過(guò)網(wǎng)絡(luò),連接到服務(wù)器,下載相對(duì)應(yīng)的資源,更新本地的課程信息,實(shí)現(xiàn)資源的同步。 模塊3:本地課程管理模塊根據(jù)下載的課程信息,整合本地課程表,并在合適時(shí)間對(duì)用戶做出適當(dāng)?shù)奶嵝选?模塊4:本地文件管理模塊包括本地的拍照管理和資料管理,會(huì)調(diào)用安卓系統(tǒng)攝像頭API 模塊5:輔助支持模塊系統(tǒng)的其他拓展功能。1.2.3 論文解決問(wèn)題系統(tǒng)從功能結(jié)構(gòu)上具有很多特色性的模塊,首先,對(duì)其進(jìn)行仔細(xì)的功能和流程分析是關(guān)鍵點(diǎn)之一;其次,有效地將各模塊數(shù)據(jù)進(jìn)行歸納、提取、匯總,并將有效的數(shù)據(jù)提供給其他模塊使用也是核心問(wèn)題之一;再次,數(shù)據(jù)庫(kù)的選取和表結(jié)構(gòu)的設(shè)計(jì)也是關(guān)鍵環(huán)節(jié),其奠定了功能的最終實(shí)現(xiàn)效果,也決定了編碼過(guò)程中的難度。因此將擬解決的問(wèn)題分為如下幾個(gè)方面進(jìn)行闡述:1) 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)問(wèn)題本應(yīng)用針對(duì)于安卓系統(tǒng)開發(fā)的一般性要求,采用B/S結(jié)構(gòu),對(duì)于安卓客戶端的開發(fā),注重將各模塊獨(dú)立。2) 系統(tǒng)功能設(shè)計(jì)問(wèn)題本系統(tǒng)功能相對(duì)分散,我們可通過(guò)詳細(xì)的UML建模進(jìn)行分析和明確,保證系統(tǒng)軟件的定義和設(shè)計(jì),為系統(tǒng)開發(fā)打下堅(jiān)實(shí)的基礎(chǔ)。3) 數(shù)據(jù)庫(kù)設(shè)計(jì)問(wèn)題通過(guò)建模工具對(duì)數(shù)據(jù)庫(kù)進(jìn)行建模分析,明確數(shù)據(jù)表的結(jié)構(gòu)和他們之間的映射關(guān)系,根據(jù)系統(tǒng)分析確定存儲(chǔ)過(guò)程等相關(guān)數(shù)據(jù)庫(kù)對(duì)象的設(shè)計(jì),形成明確的數(shù)據(jù)庫(kù)文檔,為開發(fā)提供有效的文字依據(jù)。綜上所述,“云課堂”的實(shí)現(xiàn)主要針對(duì)各功能模塊的主體實(shí)現(xiàn)代碼和系統(tǒng)實(shí)際操作,進(jìn)行了綜合介紹,采用了系統(tǒng)截圖、系統(tǒng)代碼和語(yǔ)言說(shuō)明結(jié)合的方式,全方位描述系統(tǒng)的實(shí)現(xiàn)。為系統(tǒng)的測(cè)試和正式使用提供了詳細(xì)的文檔支持。第三節(jié) 國(guó)內(nèi)外研究現(xiàn)狀1.3.1 安卓手機(jī)應(yīng)用發(fā)展現(xiàn)狀A(yù)ndroid系統(tǒng)自推出以來(lái),就以明顯的優(yōu)勢(shì)逐漸擴(kuò)大自大的市場(chǎng)份額,尤其在國(guó)外,其呼聲日高,可謂是如日中天,正處于蓬勃發(fā)展的開拓階段。據(jù)業(yè)內(nèi)人士分析,隨著Android系統(tǒng)相應(yīng)軟件的不斷開發(fā)應(yīng)用,選擇Android系統(tǒng)手機(jī)或者無(wú)線終端設(shè)備的人會(huì)越來(lái)越多,其市場(chǎng)霸主的地位在更新更好的系統(tǒng)出現(xiàn)之前是不可動(dòng)搖地。中國(guó)是世界上最大的手機(jī)銷費(fèi)國(guó)。由于3G業(yè)務(wù)的不斷推廣,對(duì)整個(gè)手機(jī)業(yè)起大了巨大的促進(jìn)作用,當(dāng)前國(guó)內(nèi)手機(jī)市場(chǎng)正在快速向智能手機(jī)推進(jìn),而Android系統(tǒng)無(wú)疑是最大的市場(chǎng)需求。各大中小型手機(jī)制造商近兩年都在引入Android工程師,開發(fā)基于Android系統(tǒng)的智能手機(jī)。1.3.2 課程表相關(guān)應(yīng)用發(fā)展現(xiàn)狀課程表的發(fā)展已經(jīng)經(jīng)歷從“手寫”到“手動(dòng)輸入”的跨越,國(guó)內(nèi)擁有著一批類似課程表或者是時(shí)間管理的的軟件,他們都分別實(shí)現(xiàn)了資源的在線分享以及實(shí)時(shí)教學(xué)等功能,但是這些系統(tǒng)都是片段性的系統(tǒng),不能與如今大學(xué)生最渴望最貼切的實(shí)際需求相符合,需要將這些系統(tǒng)的一些特色進(jìn)行綜合使用。我們?cè)O(shè)計(jì)的軟件將課程表從“手動(dòng)輸入“到”自動(dòng)輸入”的轉(zhuǎn)變,用戶從“云端”斷區(qū)相關(guān)信息。第四節(jié) 同類系統(tǒng)分析對(duì)比國(guó)內(nèi)擁有著一批類似課程表或者是時(shí)間管理的的軟件,他們都分別實(shí)現(xiàn)了資源的在線分享以及實(shí)時(shí)教學(xué)等功能,但是這些系統(tǒng)都是片段性的系統(tǒng),不能與如今大學(xué)生最渴望最貼切的實(shí)際需求相符合,需要將這些系統(tǒng)的一些特色進(jìn)行綜合使用。在國(guó)內(nèi),一些類似的軟件如課程格子,大學(xué)課程表,ES文件管理器等都是不錯(cuò)的軟件。 課程格子可以添加課程能夠按每日/全周瀏覽課程實(shí)現(xiàn)了同班同學(xué)課程信息共享的功能 大學(xué)課程表有時(shí)間和地點(diǎn)的課程表軟件!解決了紛繁復(fù)雜的課程和地點(diǎn)讓學(xué)生頭痛的問(wèn)題。有了這個(gè)課表軟件,不要再為今天在哪里上什么課發(fā)愁了。該小工具可以幫你記錄課表信息,編輯 修改 刪除等操作。 ES文件管理器點(diǎn)擊就可以播放音樂(lè),點(diǎn)擊就可以播放視頻, 點(diǎn)擊就可以查看圖片,點(diǎn)擊就可以閱讀文檔, 點(diǎn)擊就可以安裝應(yīng)用,點(diǎn)擊就可以查看壓縮, 點(diǎn)擊就可以進(jìn)行搜索,點(diǎn)擊就可以更改視圖.綜上所述,每個(gè)產(chǎn)品都有其各自的特色和功能。我們需要將其進(jìn)行整合,提起去優(yōu)秀的部分,并結(jié)合我們調(diào)查的大學(xué)生對(duì)于該類軟件的實(shí)際需求搭建一個(gè)符合自身的軟件。第五節(jié) 系統(tǒng)開發(fā)意義云課堂軟件可以廣泛地應(yīng)用于學(xué)習(xí)教學(xué)的各領(lǐng)域,有效地提高了學(xué)生對(duì)課程安排,時(shí)間安排進(jìn)行決策的可靠性、客觀性及合理性,該軟件可以作為學(xué)校教學(xué)系統(tǒng)的一種組成部分,從一個(gè)方面提高教學(xué)的自動(dòng)化信息化水平,另一方面可以通過(guò)各種評(píng)估機(jī)制提高學(xué)生的自理能力,自控能力。綜上所述,“云課堂”安卓應(yīng)用具有以下的意義:1.共享性:云端存儲(chǔ),方便師生共享資料2.實(shí)用性:需求迫切,可為大學(xué)生解決學(xué)習(xí)中的實(shí)際問(wèn)題3.易用性:界面友好操作簡(jiǎn)單,自動(dòng)化智能化4.創(chuàng)新性:突破傳統(tǒng)應(yīng)用模式束縛,整合了課程表與文件管理功能5.合理調(diào)用安卓系統(tǒng)的多接口,做到基本覆蓋在校大學(xué)生的對(duì)于該類軟件的要求。6.界面的友好性,教育類軟件的友好對(duì)于該類應(yīng)用的普及很關(guān)鍵,該應(yīng)用的實(shí)現(xiàn)也對(duì)于發(fā)布更多的適合大學(xué)生群體的應(yīng)用7.“云課堂”用戶目標(biāo)群體明確,大學(xué)生的創(chuàng)造力豐富,可以對(duì)于該應(yīng)用的功能和美化提出更多的合理化建議。第六節(jié) 論文主要研究工作在本次論文中遵循軟件工程的標(biāo)準(zhǔn)流程,從項(xiàng)目軟件定義、需求分析開始,深入了解相關(guān)流程并進(jìn)行分析,并運(yùn)用各種工具完成相關(guān)系統(tǒng)建模的工作,在明確需求后對(duì)數(shù)據(jù)庫(kù)的分析和設(shè)計(jì)進(jìn)行反復(fù)推敲,最終進(jìn)行項(xiàng)目框架及業(yè)務(wù)流程成的搭建和實(shí)現(xiàn),在開發(fā)過(guò)程中對(duì)各階段代碼進(jìn)行測(cè)試和調(diào)優(yōu)。6第二章 系統(tǒng)應(yīng)用技術(shù)介紹第二章 系統(tǒng)應(yīng)用技術(shù)介紹第一節(jié) 系統(tǒng)開發(fā)的生命周期開發(fā)一個(gè)新的系統(tǒng)或升級(jí)一個(gè)現(xiàn)有系統(tǒng)的過(guò)程叫做生命周期。在這個(gè)周期中,一個(gè)新的網(wǎng)絡(luò)或新的特征被設(shè)計(jì)、實(shí)現(xiàn)和維護(hù)。這個(gè)過(guò)程在升級(jí)后又重新開始??梢钥闯觯@種周期與軟件工程及系統(tǒng)分析的周期很相似。盡管沒(méi)有哪個(gè)生命周期能完美地描述所有項(xiàng)目,但有兩種基本的生命周期模型得到了軟件工程師們的認(rèn)可:流程周期和循環(huán)周期。它們對(duì)所有網(wǎng)絡(luò)工程項(xiàng)目都有一定程度的描述。2.1.1流程周期流程周期由不同的階段定義。不同的基于流程模型的過(guò)程在不同的階段有不同的名字,但它們?cè)谝欢ǔ潭壬献裱韵聨讉€(gè)步驟:(1)分析規(guī)劃,(2)設(shè)計(jì),(3)施工,(4)管理與測(cè)試,(5)運(yùn)行。這種生命周期叫做一個(gè)流程,工作從一個(gè)階段“流到”下一個(gè)階段。系統(tǒng)投入正式運(yùn)行后,生命周期就會(huì)因?yàn)楦露匦麻_始。但按照流程模型開發(fā)時(shí),每個(gè)階段必須在下一個(gè)階段開始之前完成,要回到前一個(gè)階段一般是不允許的。在當(dāng)前開發(fā)周期中,做不到的將被安排在下一個(gè)周期.當(dāng)不允許返回前面的階段時(shí),經(jīng)常會(huì)有一些不良影響:工期會(huì)被拖延,而且常常會(huì)帶來(lái)嚴(yán)重的超支。流程周期的主要好處是所有計(jì)劃在較早的階段完成,該系統(tǒng)所有角色都知道具體的情況以及工作進(jìn)展。這樣可以較早知道工期,協(xié)調(diào)起來(lái)更加簡(jiǎn)單。盡管流程方法的固定性得到了很多開發(fā)者的認(rèn)同,但管顯得死板,除非是做很小的項(xiàng)目。而且在項(xiàng)目完成之前,其需求往往會(huì)變化,流程周期不靈活的缺點(diǎn)使得開發(fā)變得困難。2.1.2循環(huán)周期循環(huán)周期是流程周期的變種。它比流程周期出現(xiàn)得晚,目的在于克服流程周期的限制。這種周期常用于多版本軟件開發(fā)項(xiàng)目中,但是它的一些原則也可以用于網(wǎng)絡(luò)工程的開發(fā)中。循環(huán)周期的指導(dǎo)性原則是變化管理。與流程周期不同,循環(huán)周期可以很快適應(yīng)新的需求。這是通過(guò)幾次重復(fù)所有階段來(lái)實(shí)現(xiàn)的,每個(gè)輪回產(chǎn)生一個(gè)新版本。通過(guò)在網(wǎng)絡(luò)工程設(shè)計(jì)中的每個(gè)輪回完成最終性能的一個(gè)子集,用戶就有機(jī)會(huì)在項(xiàng)目完成前反饋他們的意見,并在新的一輪中意見被考慮。在每次輪回中,都會(huì)有新的性能被加入,原先的問(wèn)題被修正。盡管循環(huán)生命周期在處理變化的需求方面優(yōu)于流程周期,但它也有明顯的不足。因?yàn)闆](méi)有辦法預(yù)知用戶會(huì)再要求什么,就很難估計(jì)最終經(jīng)費(fèi)和完成時(shí)間。而且,需要更長(zhǎng)時(shí)間來(lái)開發(fā),主要性能也很難完成。更重要的是,按循環(huán)周期法進(jìn)行開發(fā),很容易陷入無(wú)休止的更新中。第二節(jié) 系統(tǒng)開發(fā)的工具及技術(shù)2.2.1 系統(tǒng)開發(fā)的客戶端技術(shù)隨著智能手機(jī)在大學(xué)生群體的廣泛普及安卓應(yīng)用編程的推廣,越來(lái)越多的編程人員進(jìn)入該領(lǐng)域編寫代碼。在客戶端中,主要運(yùn)用android編程語(yǔ)言進(jìn)行編寫實(shí)現(xiàn)改部分的功能。云端(服務(wù)器端): 開發(fā)工具介紹 Photoshop圖形圖像處理工具Adobe Photoshop,簡(jiǎn)稱“PS”,是一個(gè)由Adobe Systems開發(fā)和發(fā)行的圖像處理軟件。Photoshop主要處理以像素所構(gòu)成的數(shù)字圖像。使用其眾多的編修與繪圖工具,可以更有效的進(jìn)行圖片編輯工作。2003年,Adobe將Adobe Photoshop 8更名為Adobe Photoshop CS。因此,最新版本Adobe Photoshop CS6是Adobe Photoshop中的第13個(gè)主要版本。從功能上看,該軟件可分為圖像編輯、圖像合成、校色調(diào)色及特效制作部分等。圖像編輯是圖像處理的基礎(chǔ),可以對(duì)圖像做各種變換如放大、縮小、旋轉(zhuǎn)、傾斜、鏡像、透視等。也可進(jìn)行復(fù)制、去除斑點(diǎn)、修補(bǔ)、修飾圖像的殘損等。這在婚紗攝影、人像處理制作中有非常大的用場(chǎng),去除人像上不滿意的部分,進(jìn)行美化加工,得到讓人非常滿意的效果。在項(xiàng)目開發(fā)過(guò)程中,我們隊(duì)PS的應(yīng)用主要是在于andriod應(yīng)用中各圖片的修飾與美觀。 Eclipse集成開發(fā)環(huán)境Eclipse 是一個(gè)開放源代碼的、基于Java的可擴(kuò)展開發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過(guò)插件組件構(gòu)建開發(fā)環(huán)境。幸運(yùn)的是,Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括Java開發(fā)工具(Java Development Kit,JDK)。雖然大多數(shù)用戶很樂(lè)于將 Eclipse 當(dāng)作 Java 集成開發(fā)環(huán)境(IDE)來(lái)使用,但 Eclipse 的目標(biāo)卻不僅限于此。Eclipse 還包括插件開發(fā)環(huán)境(Plug-in Development Environment,PDE),這個(gè)組件主要針對(duì)希望擴(kuò)展 Eclipse 的軟件開發(fā)人員,因?yàn)樗试S他們構(gòu)建與 Eclipse 環(huán)境無(wú)縫集成的工具。由于 Eclipse 中的每樣?xùn)|西都是插件,對(duì)于給 Eclipse 提供插件,以及給用戶提供一致和統(tǒng)一的集成開發(fā)環(huán)境而言,所有工具開發(fā)人員都具有同等的發(fā)揮場(chǎng)所。這種平等和一致性并不僅限于 Java 開發(fā)工具。盡管 Eclipse 是使用Java語(yǔ)言開發(fā)的,但它的用途并不限于 Java 語(yǔ)言;例如,支持諸如C/C+、COBOL、PHP等編程語(yǔ)言的插件已經(jīng)可用,或預(yù)計(jì)將會(huì)推出。Eclipse 框架還可用來(lái)作為與軟件開發(fā)無(wú)關(guān)的其他應(yīng)用程序類型的基礎(chǔ),比如內(nèi)容管理系統(tǒng)。基于 Eclipse 的應(yīng)用程序的一個(gè)突出例子是 IBM Rational Software Architect,它構(gòu)成了 IBM Java 開發(fā)工具系列的基礎(chǔ)。 Android SDK ToolsAndroid SDk Tool軟件開發(fā)工具包(software development kit)。被軟件開發(fā)工程師用于為特定的軟件包、軟件框架、硬件平臺(tái)、操作系統(tǒng)等建立應(yīng)用軟件的開發(fā)工具的集合,是Android專屬的軟件開發(fā)工具包。開發(fā)環(huán)境Eclipse IDEEclipse 3.3 (Europa), 3.4 (Ganymede)Eclipse JDT 插件 (大多數(shù)的 Eclipse IDE 包包含)WST (可選,但Android編輯器的功能需要,它被包含在most Eclipse IDE packages 中)JDK 5 或 JDK 6 (只有JRE是不夠的)Android Development Tools 插件 (可選 )不兼容GNU Java編譯器(gcj) 開發(fā)技術(shù)介紹 網(wǎng)絡(luò)通信技術(shù)通俗地說(shuō),網(wǎng)絡(luò)協(xié)議就是網(wǎng)絡(luò)之間溝通、交流的橋梁,只有相同網(wǎng)絡(luò)協(xié)議的計(jì)算機(jī)才能進(jìn)行信息的溝通與交流。這就好比人與人之間交流所使用的各種語(yǔ)言一樣,只有使用相同語(yǔ)言才能正常、順 網(wǎng)絡(luò)通信利地進(jìn)行交流。從專業(yè)角度定義,網(wǎng)絡(luò)協(xié)議是計(jì)算機(jī)在網(wǎng)絡(luò)中實(shí)現(xiàn)通信時(shí)必須遵守的約定,也就是通信協(xié)議。主要是對(duì)信息傳輸?shù)乃俾省鬏敶a、代碼結(jié)構(gòu)、傳輸控制步驟、出錯(cuò)控制等作出規(guī)定并制定出標(biāo)準(zhǔn)。 多線程技術(shù)在計(jì)算機(jī)編程中,一個(gè)基本的概念就是同時(shí)對(duì)多個(gè)任務(wù)加以控制。許多程序設(shè)計(jì)問(wèn)題都要求程序能夠停下手頭的工作,改為處理其他一些問(wèn)題,再返回主進(jìn)程。可以通過(guò)多種途徑達(dá)到這個(gè)目的。最開始的時(shí)候,那些掌握機(jī)器低級(jí)語(yǔ)言的程序員編寫一些“中斷服務(wù)例程”,主進(jìn)程的暫停是通過(guò)硬件級(jí)的中斷實(shí)現(xiàn)的。盡管這是一種有用的方法,但編出的程序很難移植,由此造成了另一類的代價(jià)高昂?jiǎn)栴}。中斷對(duì)那些實(shí)時(shí)性很強(qiáng)的任務(wù)來(lái)說(shuō)是很有必要的。但對(duì)于其他許多問(wèn)題,只要求將問(wèn)題劃分進(jìn)入獨(dú)立運(yùn)行的程序片斷中,使整個(gè)程序能更迅速地響應(yīng)用戶的請(qǐng)求。最開始,線程只是用于分配單個(gè)處理器的處理時(shí)間的一種工具。但假如操作系統(tǒng)本身支持多個(gè)處理器,那么每個(gè)線程都可分配給一個(gè)不同的處理器,真正進(jìn)入“并行運(yùn)算”狀態(tài)。從程序設(shè)計(jì)語(yǔ)言的角度看,多線程操作最有價(jià)值的特性之一就是程序員不必關(guān)心到底使用了多少個(gè)處理器。程序在邏輯意義上被分割為數(shù)個(gè)線程;假如機(jī)器本身安裝了多個(gè)處理器,那么程序會(huì)運(yùn)行得更快,毋需作出任何特殊的調(diào)校。根據(jù)前面的論述,大家可能感覺(jué)線程處理非常簡(jiǎn)單。但必須注意一個(gè)問(wèn)題:共享資源!如果有多個(gè)線程同時(shí)運(yùn)行,而且它們?cè)噲D訪問(wèn)相同的資源,就會(huì)遇到一個(gè)問(wèn)題。舉個(gè)例子來(lái)說(shuō),兩個(gè)線程不能將信息同時(shí)發(fā)送給一臺(tái)打印機(jī)。為解決這個(gè)問(wèn)題,對(duì)那些可共享的資源來(lái)說(shuō)(比如打印機(jī)),它們?cè)谑褂闷陂g必須進(jìn)入鎖定狀態(tài)。所以一個(gè)線程可將資源鎖定,在完成了它的任務(wù)后,再解開(釋放)這個(gè)鎖,使其他線程可以接著使用同樣的資源。多線程是為了同步完成多項(xiàng)任務(wù),不是為了提高運(yùn)行效率,而是為了提高資源使用效率來(lái)提高系統(tǒng)的效率。線程是在同一時(shí)間需要完成多項(xiàng)任務(wù)的時(shí)候?qū)崿F(xiàn)的。 SQL數(shù)據(jù)庫(kù)技術(shù)結(jié)構(gòu)化查詢語(yǔ)言(Structured Query Language)簡(jiǎn)稱SQL,結(jié)構(gòu)化查詢語(yǔ)言是一種數(shù)據(jù)庫(kù)查詢和程序設(shè)計(jì)語(yǔ)言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng);同時(shí)也是數(shù)據(jù)庫(kù)腳本文件的擴(kuò)展名。結(jié)構(gòu)化查詢語(yǔ)言是高級(jí)的非過(guò)程化編程語(yǔ)言,允許用戶在高層數(shù)據(jù)結(jié)構(gòu)上工作。它不要求用戶指定對(duì)數(shù)據(jù)的存放方法,也不需要用戶了解具體的數(shù)據(jù)存放方式,所以具有完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫(kù)系統(tǒng)可以使用相同的結(jié)構(gòu)化查詢語(yǔ)言語(yǔ)言作為數(shù)據(jù)輸入與管理的接口。結(jié)構(gòu)化查詢語(yǔ)言語(yǔ)句可以嵌套,這使他具有極大的靈活性和強(qiáng)大的功能。 Android手機(jī)端運(yùn)用的相關(guān)技術(shù)綜合利用android開發(fā)的各種技術(shù),如service,socket,notation等。2.2.2 系統(tǒng)開發(fā)的云端應(yīng)用技術(shù)云計(jì)算指服務(wù)的交付和使用模式,指通過(guò)網(wǎng)絡(luò)以按需、易擴(kuò)展的方式獲得所需服務(wù)。這種服務(wù)可以是IT和軟件、互聯(lián)網(wǎng)相關(guān),也可是其他服務(wù)。在服務(wù)器端中,我們將運(yùn)用java編程語(yǔ)言,其中重點(diǎn)實(shí)現(xiàn)“網(wǎng)絡(luò)通信”“多線程”等特點(diǎn)。云端主要有以下幾個(gè)對(duì)象層組成,其中包括數(shù)據(jù)訪問(wèn)層,數(shù)據(jù)訪問(wèn)層的核心作用是實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的各種增刪改查操作,也就是數(shù)據(jù)持久化操作,同時(shí)根據(jù)項(xiàng)目的實(shí)際需求完成對(duì)數(shù)據(jù)庫(kù)對(duì)象存儲(chǔ)過(guò)程的各種調(diào)用方法。 開發(fā)工具介紹Eclipse集成開發(fā)環(huán)境是本項(xiàng)目的核心開發(fā)平臺(tái),作為一個(gè)主流的Java開發(fā)環(huán)境,其將項(xiàng)目的開發(fā)、測(cè)試、部署和運(yùn)行完美地融合到整個(gè)平臺(tái)系統(tǒng)中。Eclipse有IBM核心開發(fā),其最為SUN公司Java語(yǔ)言的主流開發(fā)平臺(tái)廣泛地在各公司中應(yīng)用,其免費(fèi)的特性和豐富的插件成為了該平臺(tái)的主要特色。Eclipse以插件形式裝載各種使用開發(fā)功能,不僅支持Java語(yǔ)言的應(yīng)用開發(fā),開可以通過(guò)插件的更新和下載實(shí)現(xiàn)對(duì)C/C+以及PHP等語(yǔ)言的應(yīng)用開發(fā),同時(shí)在JavaWeb應(yīng)用開發(fā)中提供了豐富的中間件服務(wù)支持,只需在工具中配置相應(yīng)的中間件服務(wù)器,就可以快速一鍵式完成項(xiàng)目的部署與服務(wù)器的啟動(dòng),并且自動(dòng)開啟所默認(rèn)綁定的瀏覽器完成項(xiàng)目的功能預(yù)覽。其豐富的功能和強(qiáng)大的插件模式為開發(fā)人員快速的配置定制開發(fā)平臺(tái)提供有力的技術(shù)支撐。該平臺(tái)為開發(fā)者提供了測(cè)試模式運(yùn)行,快速便捷的定位的調(diào)試以及容錯(cuò)處理機(jī)制為快速開發(fā)和調(diào)試提供良好的平臺(tái)環(huán)境。同時(shí)利用豐富的快捷鍵機(jī)制幫助開發(fā)人員快速生成相關(guān)的代碼并付輔助編程人員對(duì)代碼進(jìn)行異常處理等操作。Eclipse切實(shí)地成為了Java程序員進(jìn)行項(xiàng)目開發(fā)良好的工具。 開發(fā)技術(shù)介紹 網(wǎng)絡(luò)通信技術(shù)通俗地說(shuō),網(wǎng)絡(luò)協(xié)議就是網(wǎng)絡(luò)之間溝通、交流的橋梁,只有相同網(wǎng)絡(luò)協(xié)議的計(jì)算機(jī)才能進(jìn)行信息的溝通與交流。這就好比人與人之間交流所使用的各種語(yǔ)言一樣,只有使用相同語(yǔ)言才能正常、順 網(wǎng)絡(luò)通信利地進(jìn)行交流。從專業(yè)角度定義,網(wǎng)絡(luò)協(xié)議是計(jì)算機(jī)在網(wǎng)絡(luò)中實(shí)現(xiàn)通信時(shí)必須遵守的約定,也就是通信協(xié)議。主要是對(duì)信息傳輸?shù)乃俾?、傳輸代碼、代碼結(jié)構(gòu)、傳輸控制步驟、出錯(cuò)控制等作出規(guī)定并制定出標(biāo)準(zhǔn)。 多線程技術(shù)在計(jì)算機(jī)編程中,一個(gè)基本的概念就是同時(shí)對(duì)多個(gè)任務(wù)加以控制。許多程序設(shè)計(jì)問(wèn)題都要求程序能夠停下手頭的工作,改為處理其他一些問(wèn)題,再返回主進(jìn)程??梢酝ㄟ^(guò)多種途徑達(dá)到這個(gè)目的。最開始的時(shí)候,那些掌握機(jī)器低級(jí)語(yǔ)言的程序員編寫一些“中斷服務(wù)例程”,主進(jìn)程的暫停是通過(guò)硬件級(jí)的中斷實(shí)現(xiàn)的。盡管這是一種有用的方法,但編出的程序很難移植,由此造成了另一類的代價(jià)高昂?jiǎn)栴}。中斷對(duì)那些實(shí)時(shí)性很強(qiáng)的任務(wù)來(lái)說(shuō)是很有必要的。但對(duì)于其他許多問(wèn)題,只要求將問(wèn)題劃分進(jìn)入獨(dú)立運(yùn)行的程序片斷中,使整個(gè)程序能更迅速地響應(yīng)用戶的請(qǐng)求。最開始,線程只是用于分配單個(gè)處理器的處理時(shí)間的一種工具。但假如操作系統(tǒng)本身支持多個(gè)處理器,那么每個(gè)線程都可分配給一個(gè)不同的處理器,真正進(jìn)入“并行運(yùn)算”狀態(tài)。從程序設(shè)計(jì)語(yǔ)言的角度看,多線程操作最有價(jià)值的特性之一就是程序員不必關(guān)心到底使用了多少個(gè)處理器。程序在邏輯意義上被分割為數(shù)個(gè)線程;假如機(jī)器本身安裝了多個(gè)處理器,那么程序會(huì)運(yùn)行得更快,毋需作出任何特殊的調(diào)校。根據(jù)前面的論述,大家可能感覺(jué)線程處理非常簡(jiǎn)單。但必須注意一個(gè)問(wèn)題:共享資源!如果有多個(gè)線程同時(shí)運(yùn)行,而且它們?cè)噲D訪問(wèn)相同的資源,就會(huì)遇到一個(gè)問(wèn)題。舉個(gè)例子來(lái)說(shuō),兩個(gè)線程不能將信息同時(shí)發(fā)送給一臺(tái)打印機(jī)。為解決這個(gè)問(wèn)題,對(duì)那些可共享的資源來(lái)說(shuō)(比如打印機(jī)),它們?cè)谑褂闷陂g必須進(jìn)入鎖定狀態(tài)。所以一個(gè)線程可將資源鎖定,在完成了它的任務(wù)后,再解開(釋放)這個(gè)鎖,使其他線程可以接著使用同樣的資源。多線程是為了同步完成多項(xiàng)任務(wù),不是為了提高運(yùn)行效率,而是為了提高資源使用效率來(lái)提高系統(tǒng)的效率。線程是在同一時(shí)間需要完成多項(xiàng)任務(wù)的時(shí)候?qū)崿F(xiàn)的。 SQL數(shù)據(jù)庫(kù)技術(shù)結(jié)構(gòu)化查詢語(yǔ)言(Structured Query Language)簡(jiǎn)稱SQL,結(jié)構(gòu)化查詢語(yǔ)言是一種數(shù)據(jù)庫(kù)查詢和程序設(shè)計(jì)語(yǔ)言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng);同時(shí)也是數(shù)據(jù)庫(kù)腳本文件的擴(kuò)展名。結(jié)構(gòu)化查詢語(yǔ)言是高級(jí)的非過(guò)程化編程語(yǔ)言,允許用戶在高層數(shù)據(jù)結(jié)構(gòu)上工作。它不要求用戶指定對(duì)數(shù)據(jù)的存放方法,也不需要用戶了解具體的數(shù)據(jù)存放方式,所以具有完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫(kù)系統(tǒng)可以使用相同的結(jié)構(gòu)化查詢語(yǔ)言語(yǔ)言作為數(shù)據(jù)輸入與管理的接口。結(jié)構(gòu)化查詢語(yǔ)言語(yǔ)句可以嵌套,這使他具有極大的靈活性和強(qiáng)大的功能。第三節(jié) 系統(tǒng)開發(fā)的方法和模型2.3.1系統(tǒng)基本的架構(gòu)思路(MVC模式)MVC是一種設(shè)計(jì)模式(Design Pattern),用以描述應(yīng)用程序的結(jié)構(gòu)以及結(jié)構(gòu)中各部分的職責(zé)和交互方式。它最先是在1979年的時(shí)候第一次被人提出,不過(guò),當(dāng)時(shí)環(huán)境有些不同,網(wǎng)絡(luò)應(yīng)用的概念在當(dāng)時(shí)還不存在。提姆伯納斯李在上世紀(jì)九十年代初期的時(shí)候播種下了萬(wàn)維網(wǎng)(WWW)的種子,并永遠(yuǎn)的改變了世界。應(yīng)用程序被分成了五個(gè)主要的模塊,每個(gè)部分負(fù)責(zé)掌管不同的任務(wù)。下面讓我們看看詳細(xì)的解釋。 模塊1:云端管理模塊管理員上傳,分享課程資源,確認(rèn)課程信息的完整性,有效性。在測(cè)試版本中,本應(yīng)用將選取2-3個(gè)專業(yè)作為實(shí)驗(yàn)。 模塊2:通信模塊本地信息與“云端”的交互。主要是用戶通過(guò)網(wǎng)絡(luò),連接到服務(wù)器,下載相對(duì)應(yīng)的資源,更新本地的課程信息,實(shí)現(xiàn)資源的同步。 模塊3:本地課程管理模塊根據(jù)下載的課程信息,整合本地課程表,并在合適時(shí)間對(duì)用戶做出適當(dāng)?shù)奶嵝选?模塊4:本地文件管理模塊包括本地的拍照管理和資料管理,會(huì)調(diào)用安卓系統(tǒng)攝像頭API 模塊5:輔助支持模塊系統(tǒng)的其他拓展功能。2.3.2云端管理模塊此部分側(cè)重對(duì)服務(wù)器端的教學(xué)資源和課程信息進(jìn)行管理,管理員上傳,分享課程資源,確認(rèn)課程信息的完整性,有效性。在此模塊中,運(yùn)用java編程語(yǔ)言與sql技術(shù),將項(xiàng)目文件與數(shù)據(jù)庫(kù)相聯(lián)系,進(jìn)行資源的控制處理。2.3.3 通信模塊在此模塊中,不僅是對(duì)服務(wù)器的端連接,也包括對(duì)安卓手機(jī)客戶端的socket編程。本地信息與“云端”的交互。主要是用戶通過(guò)網(wǎng)絡(luò),連接到服務(wù)器,下載相對(duì)應(yīng)的資源,更新本地的課程信息,實(shí)現(xiàn)資源的同步。在對(duì)教學(xué)信息上下行的實(shí)踐中,還需特別注意實(shí)現(xiàn)各部分的異步關(guān)系,決不能讓用戶間相互影響。業(yè)務(wù)邏輯層實(shí)際上是對(duì)DAO層的整合,應(yīng)為項(xiàng)目開發(fā)過(guò)程中Biz層的創(chuàng)建取決于業(yè)務(wù)的分析,而每個(gè)業(yè)務(wù)可能會(huì)有很多數(shù)據(jù)表的各種操作的隨意組合,而Biz層的重組直接為控制器層提供各種業(yè)務(wù)分析。本項(xiàng)目設(shè)計(jì)過(guò)程中Biz重點(diǎn)是對(duì)PO層實(shí)體類對(duì)象對(duì)數(shù)據(jù)庫(kù)CRUD操作的二次封裝,同時(shí)對(duì)項(xiàng)目的某些操作進(jìn)行DAO層重新組合,從而達(dá)到系統(tǒng)的統(tǒng)一和復(fù)用。2.3.4本地課程管理模塊在此模塊中,根據(jù)下載的課程信息,整合本地課程表,并在合適時(shí)間對(duì)用戶做出適當(dāng)?shù)奶嵝选4瞬糠謧?cè)重手機(jī)端應(yīng)用對(duì)于用戶的觀感,界面友好。2.3.5本地文件管理模塊包括本地的拍照管理和資料管理,會(huì)調(diào)用安卓系統(tǒng)攝像頭API。在此模塊中,用戶對(duì)于得到的資源(不管是從網(wǎng)上獲取還是從本地直接獲?。M(jìn)行類似于“ES文件管理器”一樣的歸檔分類等控制操作。2.3.6輔助支持模塊此模塊實(shí)現(xiàn)系統(tǒng)的其他拓展功能。包括界面的優(yōu)化,人際交互的通暢性以及確保應(yīng)用對(duì)于用戶的I/O的快速反應(yīng)。15第六章 模塊詳細(xì)設(shè)計(jì)第三章 系統(tǒng)需求分析本云課堂應(yīng)用主要為了是滿足當(dāng)今廣大學(xué)生利用手機(jī)對(duì)課堂資源進(jìn)行個(gè)性化管理的需求,而非是現(xiàn)在人們常用的時(shí)間管理軟件,針對(duì)于學(xué)生用戶最需要核心業(yè)務(wù)進(jìn)行開發(fā)。本章通過(guò)對(duì)個(gè)核心功能模塊的分析闡明具體的業(yè)務(wù)需求。第一節(jié) 軟件需求定義為了使本應(yīng)用更好地服務(wù)當(dāng)下學(xué)生用戶對(duì)于課程管理和資料管理的需求,本應(yīng)用CIC有機(jī)地將課程管理和課程資料結(jié)合在一起,為學(xué)生用戶提供方便快捷的服務(wù)。為了更加方便的開發(fā)本應(yīng)用,應(yīng)用采用MVC模式進(jìn)行開發(fā),將應(yīng)用程序劃分為多個(gè)模塊,以降低程序的耦合度,將系統(tǒng)結(jié)構(gòu)分為云端管理模塊、通信模塊、本地課程管理模塊、本地文件管理模塊,輔助支持模塊。通過(guò)模塊化,清晰明確各模塊的功能職責(zé),對(duì)項(xiàng)目今后開發(fā)的穩(wěn)定性提供有效的支持。數(shù)據(jù)庫(kù)選取MySQL數(shù)據(jù)庫(kù),該數(shù)據(jù)的并發(fā)處理能力符合當(dāng)前系統(tǒng)的應(yīng)用需求。Web服務(wù)器使用企業(yè)主流的開源免費(fèi)的Tomcat服務(wù)器,其負(fù)載均衡及并發(fā)處理量符合當(dāng)前系統(tǒng)的實(shí)際應(yīng)用需求。開發(fā)工具采用企業(yè)主流的Eclipse IDE工具,在建模方面使用PowerDesinger和Rational Rose分別進(jìn)行數(shù)據(jù)庫(kù)建模以及系統(tǒng)功能和流程建模。第二節(jié) 功能需求分析3.2.1 系統(tǒng)功能需求本應(yīng)用共分為五大模塊:云端管理模塊、通信模塊、本地課程管理模塊、本地文件管理模塊,輔助支持模塊。本云課堂應(yīng)用可以滿足當(dāng)今廣大學(xué)生利用手機(jī)對(duì)課堂資源進(jìn)行個(gè)性化管理的需求。圖3.1:系統(tǒng)頂層數(shù)據(jù)流圖系統(tǒng)的使用者大體分為三類,從而決定的系統(tǒng)的參與者總共有三類,一類是管理員,一類是學(xué)生,一類是老師,由于身份不同因此權(quán)限不同,從而導(dǎo)致每類參閱這的操作動(dòng)作也有所不同,下面通過(guò)用例圖闡述系統(tǒng)的參與者及各類操作之間的關(guān)系。圖3.2:系統(tǒng)用例圖分析3.2.2 云端管理模塊具體功能分為以下幾個(gè)部分:1) 資源上傳:管理員上傳分享資料2) 資源驗(yàn)證:管理員確認(rèn)課程信息的完整性3) 刪除課程4) 設(shè)定課程教師5) 瀏覽課程6) 添加課程 在云端主要操作由管理員完成,模塊用例圖如下:圖3.3:云端數(shù)據(jù)用例圖3,2.3 通信模塊本地信息與“云端”的交互。主要是用戶通過(guò)網(wǎng)絡(luò),連接到服務(wù)器,下載相對(duì)應(yīng)的資源,更新本地的課程信息,實(shí)現(xiàn)資源的同步。核心功能分為以下幾個(gè)部分:1) 連接網(wǎng)絡(luò):用戶通過(guò)網(wǎng)絡(luò)連接到服務(wù)器。2) 資源下載:用戶在服務(wù)器上選擇并下載所需要自己的資料。3) 資源同步:更新用戶可以訪問(wèn)到的數(shù)據(jù)。 該模塊的主要是學(xué)生通過(guò)課程名稱在云端下載資料文件。數(shù)據(jù)流圖如下:圖3.4:數(shù)據(jù)流圖3.2.4 本地課程管理模塊根據(jù)下載的課程信息,整合本地課程表,并在合適時(shí)間對(duì)用戶做出適當(dāng)?shù)奶嵝?,具體的功能分為以下幾個(gè)部分:1) 下載課程2) 整合本地課程表:可以根據(jù)具體需求對(duì)知識(shí)庫(kù)內(nèi)容進(jìn)行定期的更新。3) 實(shí)時(shí)提醒:根據(jù)課程時(shí)間以及用戶的自定義設(shè)置,應(yīng)用在適當(dāng)時(shí)間對(duì)用戶進(jìn)行提醒。 該模塊主要為了完成文件在本地的管理,主要有兩項(xiàng)操作可以選擇,瀏覽和添加信息,流程圖如下:圖3.5:本地管理流程圖該模塊的數(shù)據(jù)交互過(guò)程主要是查詢和添加信息。數(shù)據(jù)流圖如下:圖3.6:本地管理模塊數(shù)據(jù)流圖3.2.5 本地文件管理模塊該模塊的主要完成包括本地的拍照管理和資料管理,會(huì)調(diào)用安卓系統(tǒng)攝像頭API。具體的功能如下:1) 本地拍照:在課上通過(guò)應(yīng)用拍照2) 照片管理:將拍的照片根據(jù)時(shí)間,課程自動(dòng)分類管理,便于日后查看。 該模塊是本應(yīng)用一個(gè)很重要的功能,智能對(duì)在不同課程上所拍的照片進(jìn)行分類管理,以達(dá)到減輕了學(xué)生用戶在查找過(guò)去課上所拍照片的記憶負(fù)擔(dān)和時(shí)間負(fù)擔(dān)。流程圖如下:圖3.7:本地文件管理流程圖圖圖3.8:本地?cái)?shù)據(jù)管理流程圖3.2.6 輔助支持模塊此模塊實(shí)現(xiàn)系統(tǒng)的其他拓展功能。包括界面的優(yōu)化,人際交互的通暢性以及確保應(yīng)用對(duì)于用戶的I/O的快速反應(yīng)。第三節(jié) 系統(tǒng)部署與實(shí)施分析該應(yīng)用采用C/S結(jié)構(gòu)進(jìn)行設(shè)計(jì),方便系統(tǒng)的部署和運(yùn)維,數(shù)據(jù)管理系統(tǒng)中,通過(guò)數(shù)據(jù)表和表間關(guān)系建立有力的數(shù)據(jù)結(jié)構(gòu)并對(duì)系統(tǒng)提供高效數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)檢索等相關(guān)操作。將應(yīng)用項(xiàng)目部署到應(yīng)用服務(wù)器中,使得安裝和部署簡(jiǎn)化,大幅度降低了項(xiàng)目運(yùn)維的復(fù)雜度,各客戶端通過(guò)TCP/IP網(wǎng)絡(luò)協(xié)議進(jìn)行數(shù)據(jù)交互。第四節(jié) 系統(tǒng)可行性分析隨著智能手機(jī)在大學(xué)生群體的廣泛普及和云技術(shù)的普遍應(yīng)用以及互聯(lián)網(wǎng)的發(fā)展,Wi-Fi熱點(diǎn)已經(jīng)能覆蓋很大部分的學(xué)校區(qū)域,人工的課程表和普通的課程表應(yīng)用已經(jīng)顯得繁瑣且難以滿足大學(xué)生對(duì)于該類軟件的需求。云課堂軟件(classes in cloud,簡(jiǎn)稱CIC)在信息化高度發(fā)展的今天為在校學(xué)生提供了更全面的幫助,將“云”技術(shù)融入課程表,將時(shí)間管理和文件管理結(jié)合為一體,有效地解決了學(xué)生用戶對(duì)于課程管理的需求。3.4.1 可行性研究開發(fā)一個(gè)基于C/S網(wǎng)絡(luò)信息化應(yīng)用平臺(tái)會(huì)受到很多客觀因素的限制(如適

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論