版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 本科畢業(yè)論文</b></p><p><b> ?。?0 屆)</b></p><p> 教學(xué)科研表格自主生成系統(tǒng)的設(shè)計與實現(xiàn)</p><p> Design and Implementation of The Autonomously Generate Scientific Resea
2、rch Form System</p><p><b> 摘 要</b></p><p> 隨著近年來計算機(jī)技術(shù)的快速發(fā)展,使用計算機(jī)辦公的教育人員和科研人員不斷地增多,各種計算機(jī)軟件越來越多的出現(xiàn)了。各種教育機(jī)構(gòu)和科研機(jī)構(gòu)日漸規(guī)范化,科研密度隨課程種類和數(shù)量的增多不斷加大。與此同時,身為教師和科研人員,需要填寫越來越多的科研表格和科研申請書。</p>
3、;<p> 因此,一套先進(jìn)的科研信息采集的軟件系統(tǒng),以用于面向科研信息管理和科研表格生成的研發(fā)就顯得日益重要。本論文首先對基于數(shù)據(jù)表格的模式匹配技術(shù)進(jìn)行了詳細(xì)的論述,對此技術(shù)的研究現(xiàn)狀進(jìn)行分析。在對相關(guān)技術(shù)有所了解的基礎(chǔ)上,又結(jié)合本課題的要求,對本系統(tǒng)進(jìn)行了需求分析,對系統(tǒng)實現(xiàn)使用的環(huán)境,技術(shù)和工具進(jìn)行說明,并完善系統(tǒng)的功能。根據(jù)需求分析,實現(xiàn)系統(tǒng)的總體設(shè)計并開發(fā)了系統(tǒng)地數(shù)據(jù)庫。通過信息采集模塊,教師向數(shù)據(jù)庫中添加信息;
4、通過數(shù)據(jù)庫管理模塊實現(xiàn)對科研信息的時時更新;通過信息組合查詢和信息抽取傳輸模塊,實現(xiàn)向空白表中科研信息的添加,最終實現(xiàn)教學(xué)科研表格的自主生成。</p><p> 本系統(tǒng)采用UML建模語言,利用Visio建模工具建立系統(tǒng)功能圖、活動圖等,分析設(shè)計了系統(tǒng)需求。在.NET平臺下,采用當(dāng)前較為流行的B/S模式實現(xiàn)了本系統(tǒng)。經(jīng)過系統(tǒng)測試,系統(tǒng)運(yùn)行穩(wěn)定,基本實現(xiàn)系統(tǒng)的功能。</p><p> 關(guān)鍵
5、詞:C#編程;.NET平臺;自主生成系統(tǒng)</p><p><b> ABSTRACT</b></p><p> With the rapid development of computer technology in recent years, the number of education staff and researchers who use comput
6、er to work continue to increase, Appearing more and more variety of computer software. Various educational institutions and research institutions standardized increasingly, the density of scientific research continuously
7、 increased with the number and types of courses become large. At the same time, being teachers and researchers, need to fill out a large number of forms</p><p> So, An advanced software related to informat
8、ion collection systems to be used for scientific research information management and scientific research forms generation become increasingly important. In this thesis, pattern matching technology which based on data tab
9、les be detailed discussed firstly, analyzing the current situation of this technology. Based on an understanding of the relevant technology, and combined with the requirements of this project, carrying out on the system
10、requirements ana</p><p> This system adopts the UML modeling language, the system function is established based on modeling tools Visio diagram, activity diagram, etc., analysis and design the system requir
11、ements. In the. NET platform, using the more popular B / S model to achieve this system. After system testing, the system is stable, achieving the basic functions of the system. </p><p> Key words: Car Club
12、 Management; .NET platform; slef-generating System</p><p><b> 目 錄</b></p><p><b> 摘 要I</b></p><p> ABSTRACTII</p><p><b> 第1章 緒論1&l
13、t;/b></p><p> 1.1 選題背景及意義1</p><p> 1.1.1課題研究背景1</p><p> 1.1.2 課題研究的目的和意義1</p><p> 1.2 精確單模式匹配研究現(xiàn)狀2</p><p> 1.3 論文內(nèi)容和作者的主要工作3</p><p&
14、gt; 1.3.1 論文內(nèi)容3</p><p> 1.3.2 作者的主要工作3</p><p> 1.3論文的組織結(jié)構(gòu)4</p><p> 第2章 系統(tǒng)需求分析5</p><p> 2.1 系統(tǒng)開發(fā)平臺和語言5</p><p> 2.1.1 系統(tǒng)的開發(fā)平臺5</p><p&g
15、t; 2.1.2 系統(tǒng)的開發(fā)語言6</p><p> 2.2 系統(tǒng)需求分析7</p><p> 2.2.1 系統(tǒng)目標(biāo)7</p><p> 2.2.2 系統(tǒng)總體業(yè)務(wù)描述8</p><p> 2.2.3 系統(tǒng)功能需求8</p><p> 2.2.4 系統(tǒng)用例分析10</p><p
16、> 2.3 本章小結(jié)11</p><p> 第3章 系統(tǒng)的總體設(shè)計12</p><p> 3.1 總體設(shè)計12</p><p> 3.1.1 系統(tǒng)設(shè)計準(zhǔn)則12</p><p> 3.1.2 系統(tǒng)開發(fā)模式12</p><p> 3.1.3 系統(tǒng)流程分析14</p><p&
17、gt; 3.1.4 系統(tǒng)功能模塊分析16</p><p> 3.2 系統(tǒng)體系結(jié)構(gòu)17</p><p> 3.3 數(shù)據(jù)庫設(shè)計20</p><p> 3.3.1 數(shù)據(jù)庫概念模型設(shè)計20</p><p> 3.3.2 數(shù)據(jù)庫邏輯模型設(shè)計21</p><p> 3.4 本章小結(jié)23</p>
18、<p> 第4章 系統(tǒng)實現(xiàn)與測試24</p><p> 4.1 系統(tǒng)實現(xiàn)和運(yùn)行環(huán)境24</p><p> 4.2 后臺程序的實現(xiàn)24</p><p> 4.2.1 建立數(shù)據(jù)庫連接24</p><p> 4.2.2 Web.config配置文件25</p><p> 4.3核心模塊的實
19、現(xiàn)26</p><p> 4.3.1 設(shè)計目標(biāo)空白表模塊26</p><p> 4.3.2 信息采集模塊和表格查看模塊27</p><p> 4.5 系統(tǒng)測試29</p><p> 4.4.1 測試環(huán)境30</p><p> 4.4.2 科研信息添加測試30</p><p>
20、; 4.4.3 刪除、編輯測試30</p><p> 4.4.4 科研源表導(dǎo)入測試31</p><p> 4.4.5 測試總結(jié)31</p><p> 4.6 本章小結(jié)31</p><p><b> 結(jié) 論32</b></p><p><b> 參考文獻(xiàn)33<
21、;/b></p><p> 攻讀學(xué)士學(xué)位期間發(fā)表的論文和取得的科研成果35</p><p><b> 致 謝36</b></p><p><b> 第1章 緒論</b></p><p> 1.1 選題背景及意義</p><p> 1.1.1課題研究背景&
22、lt;/p><p> 中國在科研領(lǐng)域的投入以十分驚人的速度增長,在全球已經(jīng)成為繼美國之后發(fā)表科研論文第二多的國家。近十年,中國在科研的投入,中國研發(fā)投入在GDP的比例穩(wěn)步上升,人力資源的投入也顯現(xiàn)出增長趨勢。中國本土每年有超過5萬名的博士畢業(yè)生,已經(jīng)成為全球博士培養(yǎng)的第二大國,他們中的大多數(shù)被研究機(jī)構(gòu)吸收[1]。中國在科研領(lǐng)域取的進(jìn)步非常顯著,發(fā)展速度甚至超過了美國、日本等科研大國。中國對科研的扶持和投入大力促進(jìn)了
23、經(jīng)濟(jì)的發(fā)展,隨著國家進(jìn)一步鼓勵國際合作以及人才流動,中國科研的國際認(rèn)知度會更高,前景也更加燦爛。</p><p> 然而在現(xiàn)代綜合型大學(xué)中,作為教育工作者和科研人員,科研密度隨課程種類和數(shù)量增多不斷加大。而作為教師,對于內(nèi)容基本一致的不同的科研表格和項目申請書,從不同的個人信息和項目經(jīng)歷中抽取幾乎相同的內(nèi)容,而人共完成全部工作任務(wù)變得越來越困難,從而需要一套軟件協(xié)助選取最適宜的內(nèi)容插入對應(yīng)的科研表格中。本課題旨
24、在建立一套先進(jìn)的科研信息采集與主動信息抽取的軟件系統(tǒng),用于面向科研信息管理、工作排序和科研表格生成等的研發(fā)、設(shè)計與應(yīng)用。</p><p> 1.1.2 課題研究的目的和意義</p><p> 管理教育工作者和科研人員的各種科研信息,是檢驗和保證教學(xué)科研表格自主生成系統(tǒng)質(zhì)量的最有力的措施。建立一套先進(jìn)的科研信息采集與主動信息抽取的軟件系統(tǒng),能夠獲取海量的信息(包括圖片等信息),并且通過數(shù)
25、據(jù)庫存儲這些信息;通過管理數(shù)據(jù)庫,系統(tǒng)能夠自動地、精確可靠地處理這些科研信息并能夠及時的把有用的科研信息按照內(nèi)容進(jìn)行分類、管理、檢索;運(yùn)用組合查詢技術(shù),最終通過表格查看的方式將所有已經(jīng)采集的科研信息顯示出來,最終達(dá)到高效、實用地管理科研信息的目的。</p><p> 本課題旨在建立一套科研信息采集和主動信息抽取的軟件系統(tǒng),以用于面向科研信息管理、工作排序和科研表格生成的的研發(fā)、設(shè)計與應(yīng)用。</p>
26、<p> 本課題的主要意義有:</p><p> 1) 有利于教師更好、更方便的管理科研信息。通過教學(xué)科研表格自主生成系統(tǒng),教師和科研人員可以系統(tǒng)的對科研信息如個人基本信息、學(xué)位、工作經(jīng)歷等進(jìn)行分類管理。在查找、增加、修改、刪除教師信息時也可以快速、高效的完成,從而可以節(jié)省許多人力和財力。</p><p> 2) 非常方便的表格查看功能。通過科研表格自主生成系統(tǒng),教師上傳
27、的信息都可以通過表格查看功能更加直觀的顯示出來。</p><p> 3) 為模式匹配和表格轉(zhuǎn)換系統(tǒng)提供借鑒和參考。本課題研究制定科學(xué)合理的管理方法,網(wǎng)上操作的技術(shù)手段為模式匹配和表格轉(zhuǎn)換系統(tǒng)提供了一種思路和方法,值得借鑒和參考,為不斷開發(fā)和完善更加高效和實用的表格自主生成系統(tǒng)做出貢獻(xiàn)。</p><p> 1.2 精確單模式匹配研究現(xiàn)狀</p><p> 精確單
28、模式匹配是字符串匹配各研究領(lǐng)域的基礎(chǔ),得到了最為廣泛和深入的研究。其他的研究領(lǐng)域中的算法均由精確單模式匹配算法擴(kuò)展而來。因此,對精確單模式匹配的研究非常重要。</p><p> 在文本和模式中,各字符出現(xiàn)相互獨(dú)立,并且字符集中每個字符出現(xiàn)概率相同的模型為等概率模型。1979年,姚期智證明在等概率模型下,精確單模式字符串匹配中,最差、最優(yōu)、平均時間復(fù)雜度下界分別為:O(n)、O(n/m)、,這些下界均已經(jīng)達(dá)到。1
29、970年MP算法,1977年BM算法,1994年BDM算法分別是首個達(dá)到最差、最優(yōu)和平均時間復(fù)雜度下界的算法。目前已有眾多算法同時達(dá)到最差、最優(yōu)和平均時間復(fù)雜度下界,如WW,LNDM,DFDM,TueboBDM等[2]。因通常模式和文本都滿足一定的概率分布模型,很難使匹配達(dá)到最優(yōu)或最差情況,最優(yōu)和最差時間復(fù)雜度對算法性能的影響不大。在模式長度足夠長的時候,對匹配性能影響最大的是平均時間復(fù)雜度。目前,已知高性能精確單模式字符串匹配算法大多
30、都具有或被猜測具有最優(yōu)的平均時間復(fù)雜度。</p><p> 近年來,本領(lǐng)域涌現(xiàn)了大量的高性能算法。S.Faro和T.Lecroq于2010年發(fā)表的綜述文章列出了目前已知的采用英文發(fā)表的超過80個精確單模式字符串匹配算法,并進(jìn)行了完整的對比實驗。將已知算法按匹配方式的不同分為根據(jù)字符比較的匹配算法、根據(jù)自動機(jī)進(jìn)行匹配的算法和位并行串匹配算法三類。其中基于比較的匹配算法需要維護(hù)一個表來記錄每個可能讀入的字符串在模式
31、中位置,并根據(jù)讀入字符串在模式中的位置實現(xiàn)跳躍或線性最差時間復(fù)雜度;基于自動機(jī)的算法維護(hù)一個能識別模式中所有子串的確定性自動機(jī),根據(jù)讀入字符串是否是,歐式的子串進(jìn)行跳躍;位并行算法通過計算機(jī)機(jī)器字位運(yùn)算的內(nèi)在并行實現(xiàn)模擬非確定性自動機(jī),根據(jù)已讀入串是否為模式的子串進(jìn)行跳躍或線性時間復(fù)雜度匹配。</p><p> 分析關(guān)于近年來關(guān)于單模式匹配各算法提出時間分布情況,可以明顯看出,近10年來,字符串匹配領(lǐng)域的研究有
32、明顯的升溫,這與目前對高性能字符串匹配的強(qiáng)勁需求吻合。在所有算法中,基于比較的算法占了半數(shù)左右,而在最近的研究中,為并行算法的研究比較熱門。</p><p> 1.3 論文內(nèi)容和作者的主要工作</p><p> 1.3.1 論文內(nèi)容</p><p> 在本論文中,先是依據(jù)查閱的資料分析了國內(nèi)外關(guān)于模式識別的發(fā)展和特點(diǎn),進(jìn)而分析了教學(xué)科研表格自主生成系統(tǒng)的功能和
33、需要解決的問題;其次對整個系統(tǒng)做了詳細(xì)的需求分析,明白了系統(tǒng)要實現(xiàn)的主要功能;然后通過需求分析,選擇合適的開發(fā)平臺、語言、工具對系統(tǒng)進(jìn)行功能實現(xiàn);最后對系統(tǒng)的安全性、可靠性、完整性做了系統(tǒng)測試。</p><p> 本論文的內(nèi)容涵蓋了信息系統(tǒng)從其開發(fā)的目的、意義一直到最后的系統(tǒng)測試的全部過程,符合一篇完整論文的要求。</p><p> 1.3.2 作者的主要工作</p>&
34、lt;p> 作者通過查閱各類有關(guān)文獻(xiàn),學(xué)習(xí)有關(guān)基于表格的模式匹配技術(shù)和表格轉(zhuǎn)換技術(shù),以及基于作者自身對課題的理解,在需求分析的指導(dǎo)下,完成了所有的工作,在此只對作者的主要工作進(jìn)行論述:</p><p> 1) 根據(jù)科研源表和實際的情況,設(shè)計一張空白的科研表格。</p><p> 2) 對進(jìn)教師上傳的如工作經(jīng)歷、發(fā)表論文等科研信息進(jìn)行采集,教師可以手動添加這些科研信息。</
35、p><p> 3) 對存儲在數(shù)據(jù)庫中的教師相關(guān)科研信息如工作經(jīng)歷、學(xué)位情況等進(jìn)行組織、管理。</p><p> 4) 將科研源表導(dǎo)入到系統(tǒng)的數(shù)據(jù)庫中,以另一種更加方便和簡單的方式完成對教師科研信息的采集。</p><p> 5) 通過組合查詢技術(shù),篩選出所需的信息后,抽取相應(yīng)的信息,填充空白的目標(biāo)表格中,自主生成科研表格。</p><p>
36、 1.3論文的組織結(jié)構(gòu)</p><p> 本文共分4章,按如下方式組織:</p><p> 第1章綜述國內(nèi)外有關(guān)模式匹配技術(shù)的研究現(xiàn)狀,進(jìn)而引出科研表格自主生成系統(tǒng)的功能和發(fā)展;介紹了本課題的目的和意義;闡述了作者在本次開發(fā)設(shè)計中的主要工作;提出了論文的結(jié)構(gòu)層次。</p><p> 第2章介紹了系統(tǒng)開發(fā)的平臺和所用的語言,對教學(xué)科研表格自主生成系統(tǒng)的需求進(jìn)行
37、了詳細(xì)的分析。</p><p> 第3章給出了教學(xué)科研表格自主生成系統(tǒng)的詳細(xì)功能分析,以及數(shù)據(jù)庫的設(shè)計方案。</p><p> 第4章詳細(xì)描述教學(xué)科研表格自主生成系統(tǒng)的實現(xiàn),給出了各個功能模塊的形式化描述。最后對系統(tǒng)進(jìn)行了系統(tǒng)測試工作。</p><p> 第2章 系統(tǒng)需求分析</p><p> 系統(tǒng)的需求分析對系統(tǒng)的開發(fā)是非常地重要的
38、,是系統(tǒng)開發(fā)的起點(diǎn)。系統(tǒng)的需求分析是系統(tǒng)概要設(shè)計、詳細(xì)設(shè)計、系統(tǒng)實現(xiàn)、系統(tǒng)測試的基礎(chǔ)。本章確定了系統(tǒng)的需求,明確了哪些功能是系統(tǒng)需要的,哪些功能是不需要的。在明確地分析出這些需求之后,又通過查閱相關(guān)的資料,分析這些功能在現(xiàn)實條件下是否能夠?qū)崿F(xiàn),以及需要哪些技術(shù)、通過什么語言才能夠?qū)崿F(xiàn)相應(yīng)的功能。</p><p> 2.1 系統(tǒng)開發(fā)平臺和語言</p><p> 2.1.1 系統(tǒng)的開發(fā)平臺
39、</p><p> 在此先簡單的介紹一下ASP.NET ,然后就三層架構(gòu)和C#編程做簡單的介紹。</p><p> 1) ASP.NET 平臺</p><p> 提到ASP.NET,先介紹一下.NET Framework平臺。.NET Framework(最新的版本是.NET Framework 4.0)是Microsoft為開發(fā)應(yīng)用程序而創(chuàng)建的一個具有革命意
40、義的平臺。它提供了一個生產(chǎn)率高且基于標(biāo)準(zhǔn)的多語言環(huán)境,用于將現(xiàn)有投資與下一代應(yīng)用程序和服務(wù)集成,同時提供了解決Internet規(guī)模應(yīng)用程序的部署和操作難題的靈活性。.NET Framework由三個主要部分組成:通用語言運(yùn)行時環(huán)境(Common Language Runtime,CLR)、統(tǒng)一類庫的分層集合(.NET類庫)和成為ASP.NET的Active Server Pages組件化版本。它既是.NET應(yīng)用軟件開發(fā)的基礎(chǔ)類庫,也是.
41、NET平臺本身的實現(xiàn)基礎(chǔ)[6]。這樣增加了系統(tǒng)的延伸性,開發(fā)人員可以非常方便的開發(fā)Web服務(wù)組件,提高整體的可靠及安全性。另外,.NET Framework定義并未限制應(yīng)用程序的類型,可以使用.NET Framework創(chuàng)建Windows應(yīng)用程序、Web服務(wù)和其他各種類型的應(yīng)用程序。同時,對于Web應(yīng)用程序,它們是多平臺的應(yīng)用程序,只要系統(tǒng)帶Web瀏覽器,就</p><p> ASP.NET是一種建立動態(tài)Web
42、應(yīng)用程序的技術(shù)。它是.NET框架的一部分,可以是用任何.NET兼容的語言編寫ASP.NET應(yīng)用程序[12]。ASP.NET技術(shù)與Java、PHP等相比,其具有方便、靈活、性能優(yōu)越、生產(chǎn)效率高、完整性強(qiáng)及面向?qū)ο蟮忍匦?,是目前主流的網(wǎng)絡(luò)編程技術(shù)[7]。ASP.NET還提供程序模型為不同的數(shù)據(jù)源提供插入支持,這樣減少開發(fā)人員編寫的代碼,并使應(yīng)用程序的安全性得到了很大程度的提高。</p><p><b>
43、2) 三層架構(gòu)</b></p><p> 通常意義上的三層架構(gòu)就是將整個業(yè)務(wù)應(yīng)用劃分為:表現(xiàn)層(UI)、業(yè)務(wù)邏輯層(BLL)、數(shù)據(jù)訪問層(DAL)。區(qū)分層次的目的即為了“高內(nèi)聚,低耦合”的思想。</p><p> (1)表示層:展現(xiàn)給用戶的界面,也就是一個用戶在操作系統(tǒng)時他的所見所得,用于接收用戶輸入的數(shù)據(jù)和顯示處理后用戶需要的數(shù)據(jù)。表示層一般由WEB方式來實現(xiàn),WEB方式
44、通常也可以表現(xiàn)成:aspx。</p><p> ?。?)業(yè)務(wù)邏輯層:連接表示層和數(shù)據(jù)訪問層的渠道。這一層是針對具體問題的操作,也可以說是對數(shù)據(jù)層的操作,對數(shù)據(jù)業(yè)務(wù)邏輯處理[3]。如果說數(shù)據(jù)層是砂礫,邏輯層就是對這些砂礫的堆積。</p><p> ?。?)數(shù)據(jù)訪問層:與數(shù)據(jù)庫打交道。主要實現(xiàn)對原始數(shù)據(jù)(數(shù)據(jù)庫或文本文件)的操作,也就是對數(shù)據(jù)的增加、刪除、修改、查找等。將存儲在數(shù)據(jù)庫中的數(shù)據(jù)提
45、交給業(yè)務(wù)邏輯層,具體為業(yè)務(wù)邏輯層或表示層提供數(shù)據(jù)服務(wù),同時將業(yè)務(wù)層處理的數(shù)據(jù)保存到數(shù)據(jù)庫。</p><p><b> 圖2.1 三層構(gòu)架</b></p><p> 2.1.2 系統(tǒng)的開發(fā)語言</p><p> C#是微軟公司推出的一種面向?qū)ο蟮拈_發(fā)語言,經(jīng)歷了10年的發(fā)展,已經(jīng)廣泛應(yīng)用于各種生產(chǎn)領(lǐng)域。以它為基礎(chǔ)語言的ASP.NET已經(jīng)成為
46、主流網(wǎng)站開發(fā)技術(shù)。同時,C#已經(jīng)應(yīng)用于Windows Phone、平板電腦等嵌入式設(shè)備中。微軟在2102年推出C#的最新版本C#5.0。</p><p> C#(讀做 "C sharp")由C和C++衍生出來的面向?qū)ο蟮木幊陶Z言,雖然簡單,但是具有安全、功能強(qiáng)大的特點(diǎn)。它繼承C和C++強(qiáng)大功能,去掉了它們的復(fù)雜特性,同時它綜合了VB簡單的可視化操作和C++的高運(yùn)行效率,強(qiáng)大的操作能力和便捷的
47、面向組件編程的支持成為.NET開發(fā)的首選語言的原因。</p><p> C#并沒有以放棄C和C++的各種特性帶來對應(yīng)用程序的快速開法。它忠實地繼承了C和C++的優(yōu)點(diǎn)。同時使用C#開發(fā)應(yīng)用程序比使用C++簡單。在缺省的情況下,C#的代碼在.NET框架提供的“可操縱”環(huán)境下運(yùn)行,不允許直接的內(nèi)存操作[5]。它所帶來的最大特色是沒有了指針。在C++中被瘋狂使用的操作符已經(jīng)不再出現(xiàn),每種C#操作符在.NET類庫中都有了
48、新的名字。C#簡化了在C++種常見的語法冗余問題,比如“const”和各種各樣的字符類型等等,只保留了常見的形式,而別的冗余形式從它的語法結(jié)構(gòu)中清除出去。</p><p> 雖然C#簡化了語法,但仍然十分靈活。盡管它不是一種無限制的語言,比如它不能用來開發(fā)硬件驅(qū)動程序,在默認(rèn)狀態(tài)下沒有指針等,但是它仍然很靈巧。如果需要,C#允許你將某些類或者類的某些方法聲明為非安全的[20]。這樣,你調(diào)用指針、靜態(tài)數(shù)組和結(jié)構(gòu)等
49、非安全代碼不會帶來任何其他的問題。</p><p> 正是由于其靈活性,C#允許與C風(fēng)格相似的需要傳遞指針型參數(shù)的API進(jìn)行交互操作,DLL的任何入口點(diǎn)都可以在程序中進(jìn)行訪問[8]。C#遵守.NET公用語言規(guī)范,從而保證了C#組件與其他語言組件間的互操作性。</p><p> C#只是用于.NET開發(fā)的一種語言,但它是最好的一種語言,綜合以上C#的優(yōu)點(diǎn),科研表格自主生成系統(tǒng)選取了C#語
50、言作為開發(fā)語言。</p><p> 2.2 系統(tǒng)需求分析</p><p> 一個成熟的科研表格自主生成系統(tǒng)應(yīng)該是高效的且可靠的,并且還應(yīng)具有完善的功能滿足用戶對系統(tǒng)功能的需求,同時還要保證用戶以及系統(tǒng)的數(shù)據(jù)安全。在操作上,界面應(yīng)該簡單、友好,使用戶能夠方便的操作,各個界面之間的切換十分的流暢。對用戶操作有足夠的提示信息和安全控制,防止用戶誤操作產(chǎn)生不好的影響。</p>&
51、lt;p> 2.2.1 系統(tǒng)目標(biāo)</p><p> 教學(xué)科研表格自主生成系統(tǒng),是為了實現(xiàn)教學(xué)科研表格的自動生成。系統(tǒng)的目標(biāo)是:以計算機(jī),因特網(wǎng)絡(luò)為主要硬件基礎(chǔ),建成一個科研表格自主生成系統(tǒng),從而實現(xiàn)對教師科研信息的自動化填充和教師信息的信息化采集。本系統(tǒng)的具體目標(biāo)如下:</p><p><b> 1) 易用性</b></p><p>
52、; 本系統(tǒng)應(yīng)考慮用戶的電腦操作水平,為用戶提供最為簡單、方便的人機(jī)交互界面,同時各個功能盡可能的集中在一起,減少用戶的操作和頁面的切換,使其能夠簡單快速的完成業(yè)務(wù)操作。</p><p><b> 2) 靈活可擴(kuò)充性</b></p><p> 從體系結(jié)構(gòu)和實現(xiàn)技術(shù)方面,充分考慮系統(tǒng)業(yè)務(wù)的可擴(kuò)展性和可修改性。使得當(dāng)前業(yè)務(wù)或者業(yè)務(wù)規(guī)則發(fā)生改變時,不會一起系統(tǒng)整體地劇烈
53、地變化。</p><p><b> 3) 安全性</b></p><p> 為了防止系統(tǒng)數(shù)據(jù)被破壞,該系統(tǒng)用戶使用嚴(yán)格的權(quán)限管理,只有擁有相應(yīng)權(quán)限的用戶才能對數(shù)據(jù)進(jìn)行操作,從而防止數(shù)據(jù)被篡改。</p><p><b> 實用性</b></p><p> 本系統(tǒng)能為廣大的科研工作者和教師減少繁
54、重的科研表格填寫工作,使其從枯燥的填寫工作中解脫出來。</p><p> 2.2.2 系統(tǒng)總體業(yè)務(wù)描述</p><p> 教學(xué)科研表格自主生成系統(tǒng)是根據(jù)教師的科研信息填充需求而開發(fā)的,所以首先要明確系統(tǒng)的需求是非常必要的。經(jīng)過調(diào)研總結(jié)為以下幾個方面:</p><p> 1) 系統(tǒng)可以允許教師添加科研項目、發(fā)表論文等個人科研信息。同時可以編輯已經(jīng)添加的信息,而且
55、能以更加直觀的方式查看。</p><p> 2) 系統(tǒng)應(yīng)該允許教師根據(jù)提供的科研源表中的科研信息,自主設(shè)計目標(biāo)空表表。</p><p> 3) 系統(tǒng)應(yīng)該滿足教師上傳科研表格到服務(wù)器,并對其進(jìn)行數(shù)據(jù)清理后將數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫中。</p><p> 4) 系統(tǒng)應(yīng)滿足教師管理數(shù)據(jù)的功能:教師能查看科研信息,包括對教師科研信息的組合查詢,即按照某種方式或者某種符合條件查
56、詢等。</p><p> 5) 系統(tǒng)在教師添加成功完全部的科研信息后,在表格查看界面中,所有輸入的科研信息能夠插入空白的目標(biāo)表格中的對應(yīng)位置。</p><p> 2.2.3 系統(tǒng)功能需求</p><p> 計算機(jī)系統(tǒng)的目的是服務(wù)于用戶,因此系統(tǒng)開發(fā)的關(guān)鍵就是了解用戶對系統(tǒng)的需求。根據(jù)對系統(tǒng)的分析可知,教師應(yīng)該有設(shè)計目標(biāo)表,上傳科研信息,數(shù)據(jù)庫管理,更新科研信息
57、和上傳源表功能。教師的功能如圖2.1所示。</p><p> 圖2.1 教師功能分析圖</p><p> 系統(tǒng)的主要功能是表格查看。教師在成功添加科研信息以后,系統(tǒng)會自動的向教師設(shè)計好的目標(biāo)表中添加對應(yīng)的科研信息。同時系統(tǒng)還具有格式、內(nèi)容限制。系統(tǒng)的功能如圖2.2所示。</p><p> 圖2.2 系統(tǒng)功能分析圖</p><p> 通
58、過分析,將系統(tǒng)各個功能需求細(xì)化,對每個細(xì)化的部分進(jìn)行相應(yīng)的描述并,以達(dá)到用戶的需求,系統(tǒng)角色的功能也就是教師的功能如表2.1所示:教師應(yīng)具有查看、編輯、添加和刪除其科研信息的功能,作為上傳科研信息的方式。同時,教師可以上傳科研源表到數(shù)據(jù)庫,作為設(shè)計目標(biāo)空白表的參照;根據(jù)源表,教師結(jié)合實際情況設(shè)計目標(biāo)表作為自動生成的對象。系統(tǒng)的頁面管理在教師實現(xiàn)以上功能時連帶完成。</p><p> 系統(tǒng)功能分析如表2.2所示:
59、添加限制、內(nèi)容限制和格式限制是每一個常規(guī)的系統(tǒng)都具有的功能。本系統(tǒng)獨(dú)具的是表格查看功能,在教師完成成功上傳科研信息到數(shù)據(jù)庫以后,系統(tǒng)根據(jù)組合查詢技術(shù),抽取對應(yīng)信息填充目標(biāo)表,自主生成科研表格,并在一個獨(dú)立的界面中顯示。</p><p> 表2.1 教師功能分析表</p><p> 表2.2 系統(tǒng)功能分析表</p><p> 2.2.4 系統(tǒng)用例分析</p
60、><p> 1) 確定系統(tǒng)行動者</p><p> 行動者是直接參與系統(tǒng)操作的一個角色(Role),行動者的圖形是個人形[9]。行動者分為人行動者和外部系統(tǒng)行動者,二者的區(qū)別在于,前者為直接與系統(tǒng)交互的具體人員,后者為直接與系統(tǒng)進(jìn)行交互的外部系統(tǒng)[4]。二者共同點(diǎn)都是與系統(tǒng)進(jìn)行交互。一個行動者可以運(yùn)行多個用例,而一個用例可以有多個行動者運(yùn)行。</p><p><
61、;b> 2) 構(gòu)建用例模型</b></p><p> 根據(jù)上面分析的系統(tǒng)行動者和詳細(xì)的系統(tǒng)功能需求,從行動者的角度出發(fā)來確定系統(tǒng)的用例模型。如圖2.4至圖2.5所示。</p><p> 圖為2.4為教師做為行動者的用例圖,主要體現(xiàn)了教師作為系統(tǒng)的使用者與系統(tǒng)進(jìn)行的交互,主要包括上傳個人信息、操作數(shù)據(jù)庫和上傳源表用例,而操作數(shù)據(jù)庫包括添加、編輯、刪除科研信息。<
62、/p><p> 圖2.4 教師用例圖</p><p><b> 2.3 本章小結(jié)</b></p><p> 本章從系統(tǒng)不同的角色出發(fā),通過功能分析圖和用例圖分別詳細(xì)的介紹了教師和系統(tǒng)的各個功能,討論不同功能模塊的需求分析以及相應(yīng)的功能設(shè)計,為接下來系統(tǒng)的總體設(shè)計做準(zhǔn)備。</p><p> 第3章 系統(tǒng)的總體設(shè)計<
63、;/p><p> 在上一章中,主要是對教師和系統(tǒng)的功能進(jìn)行了詳細(xì)的需求分析。在上一章的基礎(chǔ)上,本章主要完成對系統(tǒng)的總體設(shè)計和數(shù)據(jù)庫設(shè)計。</p><p><b> 3.1 總體設(shè)計</b></p><p> 3.1.1 系統(tǒng)設(shè)計準(zhǔn)則</p><p> 本系統(tǒng)在設(shè)計時依據(jù)以下基本準(zhǔn)則:在系統(tǒng)的總體框架,安全性和權(quán)限管理
64、方面有著統(tǒng)一的設(shè)計規(guī)定。</p><p> 考慮到以后系統(tǒng)的發(fā)展,系統(tǒng)應(yīng)該是易于維護(hù)和擴(kuò)展的。在開發(fā)過程中遵循著方便開發(fā)、部署、和運(yùn)行的原則。</p><p> 3.1.2 系統(tǒng)開發(fā)模式</p><p> 目前在應(yīng)用開發(fā)領(lǐng)域中,管理軟件的開發(fā)平臺結(jié)構(gòu)主要有B/S(瀏覽器/服務(wù)器)模式和C/S (客戶機(jī)/服務(wù)器)模式。在此對這兩種開發(fā)模式的特點(diǎn)進(jìn)行分析探討。&l
65、t;/p><p> 1) Client/Server模式</p><p> Client/Server(客戶機(jī)/服務(wù)器)模式即客戶端和服務(wù)端模式[9]。客戶應(yīng)用程序是系統(tǒng)中用戶與數(shù)據(jù)進(jìn)行交互的部件。服務(wù)器程序負(fù)責(zé)有效的管理系統(tǒng)資源,對這些資源進(jìn)行最優(yōu)化管理。中間件負(fù)責(zé)聯(lián)結(jié)客戶應(yīng)用程序與服務(wù)器管理程序,協(xié)同完成一個作業(yè),以滿足用戶查詢管理數(shù)據(jù)的要求。</p><p>
66、 典型的C/S模式應(yīng)用網(wǎng)絡(luò)結(jié)構(gòu)如圖3.1所示</p><p> 圖3.1 典型的C/S模式應(yīng)用結(jié)構(gòu)圖</p><p> 由于教學(xué)科研表格自主生成系統(tǒng)選擇使用的是B/S模式,所以對C/S模式簡單介紹,下面詳細(xì)介紹B/S模式。</p><p> 2) Browser/Server模式</p><p> Browser/Server(瀏覽
67、器/服務(wù)器)模式是Web興起后的一種網(wǎng)絡(luò)結(jié)構(gòu)模式,一種以Web技術(shù)為基礎(chǔ)的新型的MIS系統(tǒng)平臺模式。這種模式之所以簡化了系統(tǒng)的開發(fā)、維護(hù)和使用,是因為其將系統(tǒng)功能實現(xiàn)的核心部分集中到服務(wù)器上,統(tǒng)一了客戶端。把傳統(tǒng)的C/S模式中的服務(wù)器部分分解為一個數(shù)據(jù)服務(wù)器和一個或多個應(yīng)用服務(wù)器(Web服務(wù)器),從而構(gòu)成一個三層架構(gòu)的客戶服務(wù)器體系。</p><p> 第一層客戶機(jī)是用戶與整個系統(tǒng)的接口??蛻舻膽?yīng)用程序精簡到一
68、個通用的瀏覽器軟件,如微軟公司的IE,搜狐公司的搜狗等。瀏覽器將HTML代碼轉(zhuǎn)化成圖文并茂的網(wǎng)頁。網(wǎng)頁具備一定的交互功能,允許用戶在網(wǎng)頁的特定位置鍵入信息后交給后臺,并提出處理請求。這個后臺就是第二層的Web服務(wù)器。</p><p> 第二層Web服務(wù)器將啟動相應(yīng)的進(jìn)程來響應(yīng)這一請求,將動態(tài)生成的一串嵌入處理結(jié)果HTML代碼返回給客戶機(jī)的瀏覽器。如果客戶機(jī)提交的請求包括數(shù)據(jù)的處理,Web服務(wù)器還需要與數(shù)據(jù)庫服務(wù)
69、器協(xié)同完成這一處理工作。</p><p> 第三層數(shù)據(jù)庫服務(wù)器的任務(wù)類似C/S模式,負(fù)責(zé)協(xié)調(diào)不同的Web服務(wù)器發(fā)出的SQ請求管理數(shù)據(jù)庫。</p><p> 典型的B/S模式應(yīng)用系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)如圖3.2所示</p><p> 圖3.2 典型的B/S模式結(jié)構(gòu)應(yīng)用圖</p><p> Browser/Server模式有如下優(yōu)點(diǎn):</p&
70、gt;<p> 首先它簡化了客戶端。它無需像C/S模式那樣在不同的客戶機(jī)上安裝不同的客戶應(yīng)用程序,而只需要安裝通用的瀏覽器軟件。這樣不但可以節(jié)省客戶機(jī)的硬盤空間域內(nèi)存,而且使安裝過程更加簡便、網(wǎng)絡(luò)結(jié)構(gòu)更加靈活。</p><p> 它簡化了系統(tǒng)的開發(fā)與維護(hù)。系統(tǒng)的開發(fā)者無須再為不同級別的用戶設(shè)計開發(fā)不同的客戶應(yīng)用程序,只需把所有的功能都實現(xiàn)在web服務(wù)器上,并就不同的功能為各個組別的用戶設(shè)置權(quán)限就
71、可以了。相對于C/S,B/S的維護(hù)具有更強(qiáng)大靈活性。當(dāng)形勢變化時,它只需對web服務(wù)器上的服務(wù)處理程序進(jìn)行修訂,而無須再為每一個現(xiàn)有的客戶應(yīng)用程序升級。這樣不但可以提高公司的運(yùn)作效率,還省去了維護(hù)時協(xié)調(diào)工作的不少麻煩。</p><p> 它是用戶的操作變得更簡單。對于C/S模式,使用者需要接受專門的培訓(xùn)才能熟練使用程序有自己特定的規(guī)格,使用者需要接受專門培訓(xùn)。而采用B/S模式時,客戶端只是一個簡單的瀏覽器軟件。
72、</p><p> B/S特別適用于網(wǎng)上信息發(fā)布,使得傳統(tǒng)的MIS的功能有所擴(kuò)展,這是C/S所無法實現(xiàn)的。而這種新增的網(wǎng)上信息發(fā)布功能恰是現(xiàn)代企業(yè)所需要的。這使得企業(yè)大部分書面文件可以被電子文件取代,從而提高了企業(yè)的工作效率,使企業(yè)行政手續(xù)簡化,節(jié)省人力物力。</p><p> 綜合考慮B/S結(jié)構(gòu)與C/S結(jié)構(gòu)的優(yōu)缺點(diǎn),本系統(tǒng)選擇使用B/S模式作為系統(tǒng)的開發(fā)模式。</p>
73、<p> 3.1.3 系統(tǒng)流程分析</p><p> 由系統(tǒng)需求分析可知,科研信息的采集是實現(xiàn)本系統(tǒng)的基石??蒲行畔⒌牟杉诒鞠到y(tǒng)中由兩種方式實現(xiàn)。一是教師上傳科研信息,教師通過向各個科研分表中添加相應(yīng)的科研信息,保存成功以后,實現(xiàn)科研信息存儲到數(shù)據(jù)庫。另一種方式是上傳科研源表到系統(tǒng),讀取表格后通過模式匹配技術(shù)和數(shù)據(jù)清理技術(shù),清理不合適的數(shù)據(jù),抽取相應(yīng)的信息。</p><p>
74、; 因此以下主要對教師上傳信息活動、科研源表信息導(dǎo)入數(shù)據(jù)庫流程進(jìn)行分析。</p><p><b> 教師上傳信息活動</b></p><p> 系統(tǒng)采集信息的方式是教師上傳科研信息到數(shù)據(jù)庫,上傳信息包括添加科研信息、編輯科研信息和查看信息等具體活動。同時,上傳的過程中具有多種操作的選擇,還有格式、內(nèi)容的限制,具體的活動圖如圖3.3所示。</p>&
75、lt;p> 圖3.3 教師上傳信息活動圖</p><p> 2) 科研源表信息導(dǎo)入數(shù)據(jù)庫流程</p><p> 作為科研信息采集的一種方式,將已填寫完成的科研表格作為科研源表上傳到數(shù)據(jù)庫中保存。通過信息組合查詢技術(shù),根據(jù)設(shè)計的目標(biāo)表,將科研源表中的信息讀取出來;對讀取的信息進(jìn)行數(shù)據(jù)清理,清洗不合理的數(shù)據(jù);數(shù)據(jù)清理完成后,根據(jù)模式匹配技術(shù),經(jīng)對應(yīng)的信息填充到目標(biāo)表的對應(yīng)位置。&l
76、t;/p><p> 這個過程的具體流程如下:</p><p> ?。?)教師將科研表格上傳到服務(wù)器端指定的文件夾;</p><p> ?。?)將上傳到服務(wù)器端的科研表格中的數(shù)據(jù)讀取出來;</p><p> ?。?)對讀取出來的數(shù)據(jù)進(jìn)行數(shù)據(jù)清理,對不符合數(shù)據(jù)庫要求的部分進(jìn)行修改;</p><p> ?。?)將處理后的數(shù)據(jù)導(dǎo)
77、入到目標(biāo)表中。</p><p> 該流程如圖3.4教師導(dǎo)入科研源表流程圖所示。</p><p> 圖3.4 教師導(dǎo)入科研源表流程圖</p><p> 3.1.4 系統(tǒng)功能模塊分析</p><p> 在上一章需求分析的基礎(chǔ)上,同時考慮系統(tǒng)必須的輔助功能,確定了本系統(tǒng)功能框圖如圖3.5系統(tǒng)功能框圖所示。系統(tǒng)共分為6個子模塊。每個子模塊中
78、都包含有多個功能模塊。多模塊之間相互約束,滿足系統(tǒng)的基本要求。</p><p> 圖3.5 系統(tǒng)模塊框圖</p><p><b> 1) 信息采集</b></p><p> 科研表格自主生成系統(tǒng)需要采集教師的科研信息,包括基本個人信息如姓名、性別、出生日期、國籍、民族,還要包含教師的科研信息,其中包括:學(xué)位情況、研究工作、獲得獎勵信息、科
79、研項目、發(fā)表論文、專利情況、項目信息8項內(nèi)容。除基本信息必填以外,教師根據(jù)個人的實際情況填寫其余的科研信息內(nèi)容。有兩種信息采集的方式,一是直接操作數(shù)據(jù)庫,將教師的個人信息和科研情況添加到數(shù)據(jù)庫中;二是將科研源表上傳至服務(wù)器,讀取其中的信息,導(dǎo)入到數(shù)據(jù)庫。</p><p><b> 2) 設(shè)計目標(biāo)表</b></p><p> 根據(jù)源表中的個人信息和科研信息,教師設(shè)計
80、一張與源表結(jié)構(gòu)相似、不同的目標(biāo)空白表作為填充的對象。目標(biāo)表中各個分表要填充到內(nèi)容與源表中分表的內(nèi)容相對應(yīng),兩張表格分表的位置可以不同,但是其中的信息是相同的。設(shè)計出的目標(biāo)空白表盡量包含所有的科研信息。</p><p><b> 3) 數(shù)據(jù)庫管理</b></p><p> 對采集到的信息,教師進(jìn)行整理,分類存儲,不同的科研信息存儲到不同的分表中。由于數(shù)據(jù)庫中數(shù)據(jù)的格
81、式已做了規(guī)定,所以客戶端要寫入數(shù)據(jù)庫的數(shù)據(jù)必須要按照一定的格式來填寫。例如出生日期和入站時間的固定格式為“XXX.XX.XX”,如“2013.06.08”。</p><p><b> 4) 信息組合查詢</b></p><p> 系統(tǒng)自動在數(shù)據(jù)庫中對添加的信息和目標(biāo)表中的信息進(jìn)行組合查詢,篩選出需要的信息。</p><p> 5) 信息抽
82、取和傳輸</p><p> 篩選出所需的信息后,抽取相應(yīng)的信息,根據(jù)模式識別和模式匹配技術(shù),抽取篩選出的信息,填充的目標(biāo)空白表相應(yīng)的位置。</p><p><b> 6) 表格查看</b></p><p> 根據(jù)設(shè)計的目標(biāo)空白表,系統(tǒng)中有一個獨(dú)立的界面顯示填充完成后的表格,教師可以查看該表格,并根據(jù)實際情況手動修改。</p>
83、<p> 3.2 系統(tǒng)體系結(jié)構(gòu)</p><p> 系統(tǒng)的體系結(jié)構(gòu)從上到下共分為三層,分別為:</p><p><b> 1) 表現(xiàn)層設(shè)計</b></p><p> 表現(xiàn)層位于三層架構(gòu)的最外層或者是最上層,最接近用戶。用于顯示數(shù)據(jù)和接收用戶輸入的數(shù)據(jù),為用戶提供一種交互式操作的界面。對于應(yīng)用系統(tǒng)來說,一個基本的現(xiàn)實就是:用戶界
84、面面向用戶的,用戶需要的是開發(fā)者開發(fā)的系統(tǒng)滿足其需求,并且易于使用,而不是越花哨越好,好的用戶界面使得人們不用閱讀用戶手冊或接受培訓(xùn)就能使用。</p><p> 根據(jù)系統(tǒng)分析可知,本系統(tǒng)能夠完成對教師科研信息的管理,包括向各個分表中添加科研信息、刪除科研信息、編輯科研信息,刪除科研信息等。系統(tǒng)的主要界面包括系統(tǒng)的總體界面、添加科研信息界面、表格查看界面、和詳情查看界面。由于表格是一種十分規(guī)范的結(jié)構(gòu),所以界面主要
85、是VS2010的Form控件和C#編程完成。雖然系統(tǒng)界面不華麗,但是保證了用戶界面運(yùn)作的一致性,界面間的切換很流暢,一個屏幕轉(zhuǎn)換到另個一屏幕很輕松。同時,界面布局符合人們的閱讀習(xí)慣,屏幕小部件的布局也是以用戶熟悉的方式進(jìn)行。</p><p> 2) 業(yè)務(wù)邏輯層設(shè)計</p><p> 業(yè)務(wù)邏輯層無疑是系統(tǒng)架構(gòu)中體現(xiàn)核心價值的部分,它的關(guān)注點(diǎn)主要集中在業(yè)務(wù)的而制定、業(yè)務(wù)流程的實現(xiàn)等與業(yè)務(wù)需
86、求有關(guān)的系統(tǒng)設(shè)計。它在體系架構(gòu)中的位置也很關(guān)鍵,它位于表現(xiàn)層和數(shù)據(jù)層之間,起到了數(shù)據(jù)交換中承上啟下的作用。業(yè)務(wù)層主要是編寫代碼以實現(xiàn)各種功能,考慮到Visual Studio 2010在C#編程以及系統(tǒng)實現(xiàn)很方便 ,所以在科研表格自主生成系統(tǒng)中借助于Visual Studio 2010來實現(xiàn)。</p><p> Visual Studio 是微軟推出的開發(fā)平臺,是目前最流行的windows平臺應(yīng)用程序開發(fā)環(huán)境。
87、Visual Studio 2010集成開發(fā)環(huán)境(IDE)的界面被重新設(shè)計和組織,變得更加簡單明了。除了SQL Server,他還支持IBM DB2和Oracle數(shù)據(jù)庫。</p><p> Visual Studio 2010相比于以前的版本,增加了更多的新功能或者對過去版本的一些功能進(jìn)行了增強(qiáng),主要表現(xiàn)在一下方面:</p><p> ?。?)新的代碼編輯器使代碼更容易閱讀。</p
88、><p> ?。?)C#4.0中動態(tài)類型和動態(tài)編程。</p><p> (3)通過重新設(shè)計IDE,提高了可讀性,冗余的行和漸變都已刪除,減少了雜亂,提高了可讀性。</p><p> ?。?)通過“并行堆棧”和“并行任務(wù)”窗口,開發(fā)人員用 C++、C#或Visual Basic 編寫的并行代碼能直觀的顯示出來。 </p><p> (
89、6)高效的開發(fā)環(huán)境。Visual Studio 2010采用拖曳式便能完成軟件的開發(fā)。簡單的操作便可以實現(xiàn)一個界面的生成。但拖曳的界面,也有相應(yīng)的代碼來實現(xiàn)功能,Visual Studio 2010可以快速實現(xiàn)相應(yīng)的功能。</p><p> ?。?)跨部門應(yīng)用??蛻魧⒃诓煌?guī)模的組織內(nèi)創(chuàng)建應(yīng)用,跨度從單個部門到整個企業(yè)。Visual Studio 2010將確保在這么寬泛的范圍內(nèi)的應(yīng)用開發(fā)都得到支持。</p
90、><p> Visual Studio 2010作為一款經(jīng)典的應(yīng)用程序開發(fā)平臺,還有很多新的和改進(jìn)的功能,在這里就不一一介紹了。</p><p><b> 3) 數(shù)據(jù)層設(shè)計</b></p><p> 數(shù)據(jù)層是直接操縱系統(tǒng)數(shù)據(jù)庫的層次,是知道如何操作存儲介質(zhì)的入口,本系統(tǒng)采用ORM映射策略設(shè)計開發(fā)數(shù)據(jù)層,用來維護(hù)、更新、保存和讀取數(shù)據(jù)并滿足和
91、管理應(yīng)用對數(shù)據(jù)的請求。ORM映射提供了概念性的、易于理解的模型化數(shù)據(jù)的方法,簡化了數(shù)據(jù)庫查詢過程。ORM把應(yīng)用程序世界表示為具有角色(關(guān)系中的部分)的一組對象,因此ORM有時也稱為基于事實的建模,因為它把相關(guān)的數(shù)據(jù)描述為基本事實,這些事實如果在分割為再小的事實就會丟失信息。同時數(shù)據(jù)庫應(yīng)該保護(hù)數(shù)據(jù)的安全,訪問數(shù)據(jù)中的一張表不會對其他的表造成影響。鑒于以上對數(shù)據(jù)庫設(shè)計的要求,同時考慮各種數(shù)據(jù)庫的缺點(diǎn)和優(yōu)點(diǎn),在本系統(tǒng)的數(shù)據(jù)庫設(shè)計中采用Micr
92、osoft的SQL Server2008數(shù)據(jù)庫。</p><p> SQL Server 2008在Microsoft的數(shù)據(jù)平臺上發(fā)布,可以管理任何數(shù)據(jù)。結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化文檔的數(shù)據(jù)(例如圖像和音樂)都可以直接存儲到數(shù)據(jù)庫中。SQL Server 2008提供一系列豐富的集成服務(wù),可以將結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化文檔的數(shù)據(jù)直接存儲到數(shù)據(jù)庫中,可以對數(shù)據(jù)進(jìn)行查詢、搜索、同步、報告和分析之類的操作[16]。
93、數(shù)據(jù)可以存儲在各種設(shè)備上,從數(shù)據(jù)中心最大的服務(wù)器一直到桌面移動設(shè)備和計算機(jī),管理人員可以控制數(shù)據(jù)而不用管數(shù)據(jù)存儲在哪里。</p><p> SQL Server 2008允許管理人員使用.NET和Visual Studio開發(fā)的自定義應(yīng)用程序中使用數(shù)據(jù),在面向服務(wù)的架構(gòu)(SOA)和通過Microsoft BizTalk Server進(jìn)行的業(yè)務(wù)流程中使用數(shù)據(jù)[15]。信息工作人員可以通過他們?nèi)粘J褂玫墓ぞ撸ɡ鏞
94、ffice Powerpoin)直接訪問數(shù)據(jù)。SQL Server 2008提供一個可信的、高效率智能數(shù)據(jù)平臺,可以滿足人員的所有數(shù)據(jù)需求。</p><p> 相比于SQL server2005這個不太成功的數(shù)據(jù)庫,SQL server2008有許多其無法比擬的有點(diǎn),所以科研表格自主生成系統(tǒng)在數(shù)據(jù)庫的選擇上舍棄SQL Server 2005不用而是選用了SQL Server 2008:</p>&
95、lt;p> ?。?)SQL server 2008可以對整個數(shù)據(jù)庫、數(shù)據(jù)文件和日志文件進(jìn)行加密,而不需要改動應(yīng)用程序[19]。同時,它為加密和秘鑰管理提供了一個全面的解決方案,通過支持第三方秘鑰管理和硬件安全模塊產(chǎn)品為這個需求提供了很好的支持。</p><p> (2)SQL Server 2008基于SQL server 2005改進(jìn)了數(shù)據(jù)庫鏡像,并提供了更加可靠的數(shù)據(jù)庫鏡像的平臺[14],新特性包括頁
96、面自動修復(fù),壓縮輸出的日志流以便數(shù)據(jù)庫鏡像所要求的網(wǎng)絡(luò)帶寬達(dá)到最小。</p><p> ?。?)SQL server 2008推出了比2005范圍更大的數(shù)據(jù)采集,一個用于存儲性能數(shù)據(jù)的新的集中的數(shù)據(jù)庫,以及新的報表和監(jiān)控工具給管理員提供全面的執(zhí)行洞察力,以減少性能調(diào)整和排除故障消耗的時間。</p><p><b> 3.3 數(shù)據(jù)庫設(shè)計</b></p>
97、<p> 系統(tǒng)設(shè)計中,數(shù)據(jù)庫設(shè)計占有很重要的位置,通過分析要找出數(shù)據(jù)的內(nèi)在聯(lián)系以及數(shù)據(jù)的在系統(tǒng)中的流動和存儲過程。在此,主要通過表間關(guān)系圖和實體聯(lián)系模型來分析各實體之間的聯(lián)系。</p><p> 3.3.1 數(shù)據(jù)庫概念模型設(shè)計</p><p> 數(shù)據(jù)模型是表示實體類型及實體類型間聯(lián)系的模型。它可分為兩種類型: 概念數(shù)據(jù)模型和邏輯數(shù)據(jù)模型。概念模型主要表示數(shù)據(jù)的邏輯特性,即只
98、是在概念上表示數(shù)據(jù)庫中將存儲什么信息,而不管這些信息在數(shù)據(jù)庫中怎么實現(xiàn)。</p><p> 由于擔(dān)心教師的名字中有重復(fù)的,所以用id作為教師信息表的主鍵,每添加一名教師信息,id便加一。作為研究工作,科研項目等分表,向其中添加信息的主體都是各個不同的教師,所以教師基本信息表和各個分表中的信息存在著關(guān)系,教師基本信息表中的id屬性作為其余科研信息表的外鍵。具體的基本信息表和研究工作信息表之間的表間關(guān)系圖如圖3.5
99、所示。</p><p> 圖3.5 基本信息-研究工作表間關(guān)系圖</p><p> 3.3.2 數(shù)據(jù)庫邏輯模型設(shè)計</p><p> E-R模型表示的概念模型是用戶的模型。它獨(dú)立于任何一種數(shù)據(jù)模型,獨(dú)立于任何一個具體的數(shù)據(jù)庫管理系統(tǒng)(DBMS),因此,需要把概念模型轉(zhuǎn)換為某個具體的DBMS所支持的數(shù)據(jù)模型,然后再建立用戶需要的數(shù)據(jù)庫[17]。本系統(tǒng)中數(shù)據(jù)表有教
100、師信息表、學(xué)位情況信息表、研究工作信息表、獲得獎勵信息表、科研信息表、發(fā)表論文表、專利情況表和項目信息表。在這里只列出了基本信息、學(xué)位情況、科研項目、申報項目信息表,剩余的表結(jié)構(gòu)類似,就不一一列出了。</p><p> 表3.1是教師基本信息表,主要包括id、姓名、性別、出生日期和國籍等基本信息。</p><p> 表3.1 基本信息信息表</p><p>
101、表3.2是學(xué)位情況信息表主要包括姓名、授予年月、授予單位、一級學(xué)科和導(dǎo)師等信息。</p><p> 表3.2 學(xué)位情況信息表</p><p> 表3.3是科研項目信息表,主要包括姓名、批準(zhǔn)時間、項目名稱、下達(dá)部門和項目性質(zhì)等。</p><p> 表3.3 科研項目信息表</p><p> 表3.4是申報項目信息表,主要包括姓名、項目名
102、稱、研究類別、項目來源和項目簡介等。</p><p> 表3.4 申報項目信息表</p><p><b> 3.4 本章小結(jié)</b></p><p> 本章主要對系統(tǒng)進(jìn)行了詳細(xì)、全面的設(shè)計,對系統(tǒng)按模塊進(jìn)行了詳細(xì)的劃分,并且詳細(xì)的分析了每一個模塊的具體功能。此外本章還完成了數(shù)據(jù)庫的設(shè)計工作,為接下來系統(tǒng)的實現(xiàn)做好基礎(chǔ)。</p>
103、<p> 第4章 系統(tǒng)實現(xiàn)與測試</p><p> 本章從系統(tǒng)的實現(xiàn)方面出發(fā),根據(jù)系統(tǒng)實施過程中所選用的平臺和技術(shù)對系統(tǒng)的實現(xiàn)進(jìn)行詳細(xì)的介紹,并對系統(tǒng)實現(xiàn)過程中的重點(diǎn)難點(diǎn)進(jìn)行詳細(xì)分析,最后對系統(tǒng)進(jìn)行測試。 </p><p> 4.1 系統(tǒng)實現(xiàn)和運(yùn)行環(huán)境</p><p> 1) 系統(tǒng)實現(xiàn)和工具</p><p> 本系統(tǒng)分
104、別用到Microsoft Visio2007進(jìn)行系統(tǒng)UML模型的構(gòu)建;Visual Studio 2010用于代碼編寫、調(diào)試和軟件界面設(shè)計;Sql Server2008用于建立系統(tǒng)數(shù)據(jù)庫。</p><p><b> 2) 系統(tǒng)運(yùn)行環(huán)境</b></p><p><b> 服務(wù)器端:</b></p><p> (1)操作
105、系統(tǒng):Windows7;</p><p> ?。?)數(shù)據(jù)庫:Sql Server2008;</p><p> ?。?)集成環(huán)境:.NET4.0;</p><p> ?。?)軟件結(jié)構(gòu):B/S結(jié)構(gòu)。</p><p><b> 客戶端:</b></p><p> ?。?)操作系統(tǒng):Windows 20
106、00/XP/2003或以上版本;</p><p> ?。?)瀏覽器:IntemetExplore 6.0或以上版本;</p><p> (3)推薦分辨率:1024*768或以上。</p><p> 4.2 后臺程序的實現(xiàn)</p><p> 在后臺的程序?qū)崿F(xiàn)中,首先要做的是連接數(shù)據(jù)庫。</p><p> 4.2.
107、1 建立數(shù)據(jù)庫連接</p><p> 建立數(shù)據(jù)庫連接只能在Visual Studio中,利用ADO.NET完成。ADO.NET是微軟公司新一代.NET數(shù)據(jù)庫的訪問架構(gòu),ADO是ActiveX Data Objects的縮寫。ADO.NET是數(shù)據(jù)庫應(yīng)用程序和數(shù)據(jù)源之間溝通的橋梁,主要提供一個面向?qū)ο蟮臄?shù)據(jù)訪問架構(gòu),用來開發(fā)數(shù)據(jù)庫應(yīng)用程序[7]。為了能更好的理解ADO.NET的架構(gòu)模型的各個組成部分,我們可以對AD
108、O.NET中的相關(guān)對象進(jìn)行圖示理解,如圖4.1所示。</p><p> 圖4.1 ADO.NET架構(gòu)圖</p><p> ADO.NET主要包括Connection、Command、DataReader、DataSet和DataAdapter5個對象,通過這5個對象可以對數(shù)據(jù)庫進(jìn)行查詢、添加、修改及刪除的處理操作[16]。下面分別對它們進(jìn)行介紹。</p><p>
109、; 1) Connection對象主要提供與數(shù)據(jù)庫連接的功能。</p><p> 2) Command對象用于返回數(shù)據(jù),修改數(shù)據(jù),運(yùn)行存儲過程以及發(fā)送或檢索參數(shù)信息的數(shù)據(jù)庫命令。</p><p> 3) DataReader對象通過Command對象提供數(shù)據(jù)庫檢索信息的功能。DataReader對象是以一種只讀的、向前的、快速的方式訪問數(shù)據(jù)庫。</p><p>
110、; 4) DataSet是ADO.NET的中心概念,是支持ADO.NET斷開式、分布式數(shù)據(jù)方案的核心方案。它是一個數(shù)據(jù)庫容器,可以把它當(dāng)作是存在于內(nèi)存中的數(shù)據(jù)庫。DataSet是數(shù)據(jù)的內(nèi)存駐留表示方式,無論數(shù)據(jù)源是什么,它都會提供一致的關(guān)系編程模型。它可以用于多種不同的數(shù)據(jù)源。例如,用于訪問XML數(shù)據(jù),或用于管理本地應(yīng)用程序的數(shù)據(jù)。</p><p> 5) DataAdapter對象提供鏈接DataSet對象
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)設(shè)計-教學(xué)科研表格自主生成系統(tǒng)的設(shè)計與實現(xiàn)
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文-工作方案自主生成系統(tǒng)的設(shè)計與實現(xiàn)
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)設(shè)計-工作方案自主生成系統(tǒng)的設(shè)計與實現(xiàn)
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文-資料管理系統(tǒng)設(shè)計與實現(xiàn)
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文-賓館管理系統(tǒng)的設(shè)計與實現(xiàn)
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文-教學(xué)公共空余時間抽取系統(tǒng)的設(shè)計與實現(xiàn)
- 計算機(jī)科學(xué)與技術(shù)專業(yè)網(wǎng)站設(shè)計與實現(xiàn)畢業(yè)論文
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文群體人臉檢測系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)論文計算機(jī)科學(xué)與技術(shù)
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文
- 計算機(jī)科學(xué)與技術(shù)畢業(yè)論文
評論
0/150
提交評論