2009
1.課程目的
在完成軟件工程課程后,需要應用軟件工程開發(fā)方法從需求分析、體系結構設計、詳細設計、測試等相關環(huán)節(jié)來實踐軟件系統(tǒng)開發(fā)過程。本課程提供了相關完成相關環(huán)節(jié)報告的模版,需要學生在完成相關軟件題目開發(fā)過程中,按照軟件工程學到的方法,在各個階段撰寫相關內(nèi)容。
2.課程內(nèi)容
2.1.課程要求
開發(fā)題目將按照高中低三個檔次來進行布置,每個題目的起評分依照項目難度的不同分別為90、85和80。如完成基本題目要求的功能為以上分數(shù),如缺少部分功能將減少5~10,如不能完成(缺少大部分功能)將減少20分,如提供比較完備的功能將在此基礎上增加5~10分。
提交的作業(yè)需包含以下內(nèi)容:
1.選擇以下題目或自擬一個題目,并提交與此題目對應的可執(zhí)行代碼和源代碼。(20~30分)
2.提交四個文檔,即產(chǎn)品需求規(guī)格說明書、體系結構設計說明書、模塊設計說明書、測試用例說明書(70~80分,以論文來替代此部分報告,將給零分)
3.將完成的文檔以壓縮包的格式上傳,不能上傳多個doc、docx文檔,以免造成文件的丟失。
2.2.開發(fā)題目及其驗收內(nèi)容
2.2.1.表格識別和內(nèi)容抽取
?難度
高
?實現(xiàn)內(nèi)容
在Windows平臺或Andorid/IOS平臺下實現(xiàn)圖片中表格內(nèi)容提取應用程序。這個程序能夠識別輸入圖像中的表格格式,抽取表格中內(nèi)容,并將獲得的表格及其內(nèi)容保存為Excel支持的表格文件。
2.2.2.手寫公式計算器App
?難度
高
?實現(xiàn)內(nèi)容
設計Andorid/IOS應用程序,能夠對用戶輸入的數(shù)字和公式進行識別;在識別結果基礎上,能夠對用戶錄入的公式進行計算,并獲得正確結果。同時支持用戶通過拍照的形式,對紙張上的公式進行識別,并進行計算(具體可以參考小猿搜題中計算功能)。
2.2.3.P2P分布式存儲
?難度
高
?實現(xiàn)內(nèi)容
使用Java下JXTA或自己設計P2P協(xié)議完成多個客戶機下的資源共享。此系統(tǒng)具有以下功能,每個用戶能夠配置自己的硬盤空間來供全網(wǎng)絡的用戶使用,每個用戶能夠看到全網(wǎng)絡下唯一的文件視圖(即能夠看到唯一文件目錄,此文件目錄下存儲著全網(wǎng)絡的共享文件),用戶能夠在此文件視圖下創(chuàng)建文件目錄、上傳文件和下載文件。其中上傳文件指的是將本地文件上傳到P2P文件存儲系統(tǒng)中,下載文件指的是將P2P文件存儲系統(tǒng)中的文件內(nèi)容下載到本地機。
2.2.4.工作流引擎的設計
?難度
高
?實現(xiàn)內(nèi)容
查閱工作流資料和分析現(xiàn)有的開源工作流引擎軟件,設計一套簡單的工作流描述語言,并對此語言建立解釋和運行引擎,以支持工作流系統(tǒng)的開發(fā)和運行。要求此語言能夠支持簡單形式的流程,如順序、分支和循環(huán)。在此基礎上實現(xiàn)工作流語言的可視化和圖形化編輯、生成(此內(nèi)容為加分)。
2.2.5.數(shù)據(jù)庫遷移工具設計與實現(xiàn)(ETL)
?難度
高
?實現(xiàn)內(nèi)容
查閱ETL相關軟件和開源工具,據(jù)此寫出ETL實現(xiàn)技術的分析報告。并按此完成相應的ETL軟件的分析、設計和開發(fā)。此題目要求的ETL功能具體為:支持Oracle和SQL Server數(shù)據(jù)庫平臺下數(shù)據(jù)表和數(shù)據(jù)的雙向遷移,支持Oracle到SQL Server的觸發(fā)器、存儲器、功能包的單向遷移(從Oracle到SQL Server或SQL Server到Oracle)
2.2.6.移動平臺下的五子棋程序設計
?難度
高
?實現(xiàn)內(nèi)容
實現(xiàn)五子棋對弈界面,能夠支持人機對弈過程,能夠判斷勝負。通過查閱人工智能中相關的搜索算法,來給出五子棋的存儲數(shù)據(jù)結構和相應的搜索算法,以及評估函數(shù)。使得機器具有一定水平的對弈能力。
2.2.7.機器人自動行走游戲
?難度
中
?實現(xiàn)內(nèi)容
使用Unity3D創(chuàng)建游戲場景以及自己設計的機器人模型,然后在場景中隨機生成多個障礙物;設計機器人的控制算法,讓機器人在上述場景中躲避障礙物,并向指定目標運動。
2.2.8.手機上自動換臉APP
?難度
中
?實現(xiàn)內(nèi)容
在Android/IOS上設計應用程序,能夠從手機攝像頭中獲得自己頭像視頻;通過構建深度學習模型(參考deepface),能夠將視頻中自己頭像改為指定目標人物的圖像。
2.2.9.手機上旅游信息APP
?難度
中
?實現(xiàn)內(nèi)容
在Android/IOS上設計應用程序,支持朋友之間對旅游線路討論(要有旅游線路地圖)、預訂酒店、旅游過程感悟發(fā)布、及相關經(jīng)驗討論等功能。除此以外,還能根據(jù)用戶旅游經(jīng)歷,向其推薦他可能喜歡旅游的信息。
2.2.10.手機/平板多媒體終端控制
?難度
中
?實現(xiàn)內(nèi)容
通過手機或平板來完成對電腦中PPT展示功能的控制。具體功能要求為,使得手機能夠控制電腦中PowerPoint軟件中的文件打開、文件播放、上一頁和下一頁等針對PPT文件的播放功能。在電腦針對指定PPT文件進行播放的過程中,手機屏幕應與電腦屏幕一致,并能夠控制播放。(如果實現(xiàn)對手機屏幕內(nèi)容進行標注編輯并同步顯示到投影中的功能,則此系統(tǒng)的難度升級為高)
。
2.2.11.Ajax技術的個人日歷系統(tǒng)
?難度
中
?實現(xiàn)內(nèi)容
實現(xiàn)個人日歷系統(tǒng),此系統(tǒng)能夠記錄個人日志安排,能夠對個人到期的事務進行定時提醒,通過Google地圖或Microsoft地圖,能夠反映出個人事務的發(fā)生地點。此系統(tǒng)的界面應類似于Outlook中的日歷功能(已有相應的Ajax組件來實現(xiàn)),并具有地圖查詢顯示功能(即通過地圖能夠看到將要發(fā)生的事件)。針對個人提醒功能,要求如果用戶在線,則通過系統(tǒng)彈出動態(tài)提示框來完成,如果用戶不在線,則通過發(fā)送電子郵件來完成。此系統(tǒng)能夠同時對多個人的事務安排進行管理。
2.2.12.電子詞典系統(tǒng)
?難度
中
?實現(xiàn)內(nèi)容
實現(xiàn)鼠標的動態(tài)取詞功能,根據(jù)鼠標指向的英文單詞,從Google的翻譯引擎接口(Web Service)得到相應的漢語內(nèi)容,并使用系統(tǒng)提示框進行顯示(可參考金山詞霸Google版來進行設計)。
2.2.13.局域網(wǎng)消息和文件傳遞系統(tǒng)
?難度
中
?實現(xiàn)內(nèi)容
在局域網(wǎng)內(nèi)能夠動態(tài)看到正在在線的系統(tǒng),能夠針對指定個人的在線系統(tǒng)發(fā)送消息或發(fā)送文件。要求能夠使用聊天模式與多個人同時進行消息發(fā)生,能夠同時發(fā)生和接受多個文件(包括針對文件夾內(nèi)所有文件的發(fā)生和接受)。具體可參考飛鴿傳書的程序功能。
2.2.14.在線商城銷售平臺
?難度
中
?實現(xiàn)內(nèi)容
此系統(tǒng)具有三種類型的用戶。系統(tǒng)用戶能夠管理所有的用戶權限及其發(fā)布的相關信息。商戶能夠根據(jù)系統(tǒng)用戶的審批來創(chuàng)建自己的網(wǎng)上商店,能夠對自己的商店主頁進行個性化顯示和布局,能夠上傳自己的商品圖片和價格,能夠統(tǒng)計自己的庫存貨物和已收貨物,能夠得到累計收入報表,能夠查詢購買貨物的帳號信息;普通用戶通過在線注冊,得到此系統(tǒng)的賬戶,能夠瀏覽此平臺下各個商店中的貨物,并能夠進行訂購,能夠管理自己訂單。要求此平臺的主頁能夠將商城中各個商戶的貨物按照類別和商戶級別進行相應的顯示(類似于淘寶網(wǎng)的首頁)。
2.2.15.排課軟件設計
?難度
中
?實現(xiàn)內(nèi)容
針對現(xiàn)有排課軟件做出分析,形成分析報告。并在此基礎上,設計排課軟件,此排課軟件應考慮以下限制條件:每個教師的開課情況,選課的學生所在的班級和專業(yè),選課的人數(shù),上課的時間,上課的地點等情況。根據(jù)上述約束條件,生成課表,并能夠根據(jù)實際要求進行手動課程調整,但是通過此系統(tǒng)能夠判斷調整后是否與其它課程安排沖突(比如安排在同一教室,同一教師或學生上兩門或多門課),并將相關信息進行顯示,并給出按照手動調整后的課程結果,如何來調整其它沖突的條件,來解決課程安排。(如考慮的因素多,并且能夠給出課程調整的完整解決方案,并且具有較高的執(zhí)行效率或較好的解決算法,則此項目難度可升級為高)
2.2.16.在線視頻網(wǎng)站設計
中
?實現(xiàn)內(nèi)容
用戶能夠上傳自己的視頻文檔,并對自己的視頻資料進行管理,其它用戶能夠瀏覽別人上傳的視頻資料并能夠書寫相關的評注內(nèi)容。系統(tǒng)管理員能夠對視頻內(nèi)容進行審核,網(wǎng)站首頁能夠對點擊率高的視頻鏈接進行顯示,能夠對視頻按照類型進行分類顯示
2.2.17.旅游網(wǎng)站的設計
?難度
中、高
?實現(xiàn)內(nèi)容
用戶能夠將自己的旅游圖片和相關信息發(fā)布到Google地圖中,使得其它用戶通過查詢能夠看到某個旅游景點的圖片資料或者是文字資料。并且驢友能夠組成固定的旅游聯(lián)盟論壇,在此聯(lián)盟論壇內(nèi)能夠通過Google地圖來發(fā)布旅游線路介紹,其它人能夠針對此旅游信息進行討論(類似于BBS)。此系統(tǒng)的主頁和頁面設計要求美觀(建議部分內(nèi)容使用Flash或者Silver Light技術來進行編程實現(xiàn))。
2.2.18.多平臺下應用場景共享
?難度
高
?實現(xiàn)內(nèi)容
在多個window平臺,或windows與linux平臺、或window與android平臺下,運行應用程序,多個平臺下的用戶均能夠控制和觀察到應用程序運行的情況。
2.2.19.移動平臺下自動點名程序設計
?難度
中、高
?實現(xiàn)內(nèi)容
利用移動平臺下的藍牙或Wifi熱點,能夠對處在課堂內(nèi)的學生實現(xiàn)自動點名,并能夠統(tǒng)計學生的日程出勤情況。要求能夠設計出簡單、有效點名進制,教師和學生只需打開相應的軟件即能夠完成點名,能夠支持利用學生的發(fā)過來的短信進行點名。要具有相應的驗證機制,防止學生在非課堂環(huán)境中完成點名。
2.2.20.其它
題目可以按照自己的研究方向自擬,要求內(nèi)容有創(chuàng)新性。難度和起評分準則為如下:
規(guī)則1. 創(chuàng)新性:有自己的Idea,目前沒有相關的應用實例,并且有一定的實用價值,此類系統(tǒng)判定為高;有自己的Idea,目前沒有相關的應用實例,但不能看到其實用價值,此類系統(tǒng)判定為中;其他為低
規(guī)則2 技術難度:較為復雜的數(shù)據(jù)結構、算法或涉及到操作系統(tǒng)內(nèi)核相關技術,此類系統(tǒng)為高;如果使用較新的技術(如Ajax、Flex、Web Services等,一般為近三年左右出現(xiàn)的新技術),則系統(tǒng)難度為中;其他為低。
規(guī)則3:通過以上兩個規(guī)則得到的難度(創(chuàng)新難度和技術難度),取其中較大的難度作為此項目的參考難度。
奧鵬,國開,廣開,電大在線,各省平臺,新疆一體化等平臺學習
詳情請咨詢QQ : 3230981406或微信:aopopenfd777