開心旅行社網(wǎng)站的建設(shè)與實(shí)現(xiàn)-論文.doc_第1頁
開心旅行社網(wǎng)站的建設(shè)與實(shí)現(xiàn)-論文.doc_第2頁
開心旅行社網(wǎng)站的建設(shè)與實(shí)現(xiàn)-論文.doc_第3頁
開心旅行社網(wǎng)站的建設(shè)與實(shí)現(xiàn)-論文.doc_第4頁
開心旅行社網(wǎng)站的建設(shè)與實(shí)現(xiàn)-論文.doc_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 裝 訂 線 開心旅行社網(wǎng)站的建設(shè)與實(shí)現(xiàn)開心旅行社網(wǎng)站的建設(shè)與實(shí)現(xiàn) 摘要摘要 本文介紹了開心旅行社網(wǎng)站的建設(shè)與實(shí)現(xiàn)過程。系統(tǒng)應(yīng)用 asp 動態(tài)網(wǎng)絡(luò) 編程技術(shù),嵌套 javascript 特效代碼,通過 access 數(shù)據(jù)庫實(shí)現(xiàn)了對數(shù)據(jù)信息 的存儲,并由 iis 服務(wù)器實(shí)現(xiàn)了對網(wǎng)站信息的瀏覽。本網(wǎng)站通過 ado 技術(shù)實(shí)現(xiàn) 與 access 數(shù)據(jù)庫建立連接,并由 sql 語句實(shí)現(xiàn)了對數(shù)據(jù)的各種操作,使網(wǎng)站 更具靈活性。 系統(tǒng)主要實(shí)現(xiàn)了六個(gè)功能。包括簡介、旅游路線、經(jīng)典介紹、酒店信息、 出團(tuán)計(jì)劃和客戶留言等。開心旅行社網(wǎng)站是一個(gè)綜合性旅游信息網(wǎng)站。其建設(shè) 目的在于幫助廣大旅游愛好者得到有效的交流等等。其內(nèi)容緊密圍繞“旅游” 這一中心,以旅友的使用體驗(yàn)為目的,展開多方面多系統(tǒng)的功能模塊,為廣大 旅游愛好者提供一個(gè)安全、有效、快速的平臺。 關(guān)鍵詞關(guān)鍵詞 旅游網(wǎng)站 搜索 瀏覽 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 裝 訂 線 happyhappy traveltravel websitewebsite constructionconstruction andand implementationimplementation abstractabstract this paper introduces implementation of e-tourism website of happy travel, the construction and realization of the process. system dynamic network programming asp, javascript effects nested code, through the access database for data storage, by the iis server information on the site visit. this site through ado with access database technology to establish a connection, by the sql statement to achieve a variety of data operations, so that a more flexible site. system has six main functions. including tourist information, tourist routes, tourist transportation, hotel accommodation, travel and associated friends of the discussion we waited. implementation of e-tourism website of changchun city. the building is designed to help the majority of travel enthusiasts to be effective communication and so on. closely around the contents of “travel“ the center to trip the friends for the purpose of the use of experience to start multi-system multi-function modules for the large number of travel enthusiasts to provide a safe, effective, fast platform. keykey wordswords tourism website;search;browse 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 裝 訂 線 目目 錄錄 1 引 言 .1 2 網(wǎng)站需求分析 .2 2.1 問題定義 .2 2.3 需求分析 .2 3 系統(tǒng)開發(fā)技術(shù)簡介 .3 3.1 動態(tài)網(wǎng)站介紹 .3 3.2 asp 簡介3 3.2.1 asp 工作原理 .4 3.3 javascript簡介 4 3.4 b/s 模式簡介5 3.5 開發(fā)過程概述 .5 3.6 開發(fā)模式分析 .7 3.7 開發(fā)模式選擇 .9 3.8 面向?qū)ο蟮拈_發(fā)與架構(gòu)設(shè)計(jì) 11 3.9 多層設(shè)計(jì)思想 12 3.10 軟件開發(fā)模式與開發(fā)過程管理 .13 4 數(shù)據(jù)庫簡介 14 4.1 數(shù)據(jù)庫概論 14 4.2 access簡介.14 5 系統(tǒng)開發(fā)環(huán)境 16 5.1 開發(fā)工具及運(yùn)行環(huán)境 16 5.2 iis 簡介.16 5.3 開發(fā)工具 17 6 總體設(shè)計(jì) 18 6.1 系統(tǒng)模塊設(shè)計(jì) 18 6.2 數(shù)據(jù)庫表的設(shè)計(jì) 19 6.2.1 數(shù)據(jù)庫表的分類 19 6.2.2 數(shù)據(jù)庫表的具體設(shè)計(jì) 19 6.3 功能設(shè)計(jì) 22 6.3.1 景點(diǎn)介紹 23 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 裝 訂 線 6.3.2 旅游線路 23 6.3.3 出團(tuán)計(jì)劃 23 6.3.4 酒店信息 23 6.3.5 旅友留言 23 6.3.6 聯(lián)系我們 23 7 詳細(xì)設(shè)計(jì) 24 7.1 首頁設(shè)計(jì) 24 7.1.1 投票設(shè)計(jì) 25 7.1.2 景點(diǎn)快速導(dǎo)航 26 7.2 公司簡介設(shè)計(jì) 27 7.3 旅游線路設(shè)計(jì) 28 7.4 景點(diǎn)介紹模塊設(shè)計(jì) 29 7.5 出團(tuán)計(jì)劃模塊設(shè)計(jì) 30 7.6 客戶留言模塊設(shè)計(jì) 33 7.7 聯(lián)系我們模塊設(shè)計(jì) 35 7.8 后臺功能設(shè)計(jì) 35 7.9 景點(diǎn)庫管理模塊 37 7.10 開心旅行社留言本管理模塊設(shè)計(jì) .41 7.11 其他模塊設(shè)計(jì) .42 8 系統(tǒng)測試 44 9 總 結(jié) 47 致 謝 48 參考文獻(xiàn) 49 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 1 頁 裝 訂 線 1 1 引引 言言 網(wǎng)站(website)是指在因特網(wǎng)上,根據(jù)一定的規(guī)則,使用 html 等工具制作 的用于展示特定內(nèi)容的相關(guān)網(wǎng)頁的集合。簡單地說,網(wǎng)站是一種通訊工具,就 像布告欄一樣,人們可以通過網(wǎng)站來發(fā)布自己想要公開的資訊,或者利用網(wǎng)站 來提供相關(guān)的網(wǎng)絡(luò)服務(wù)。人們可以通過網(wǎng)頁瀏覽器來訪問網(wǎng)站,獲取自己需要 的資訊或者享受網(wǎng)絡(luò)服務(wù)。 在因特網(wǎng)的早期,網(wǎng)站還只能保存單純的文本。經(jīng)過幾年的發(fā)展,當(dāng)萬維 網(wǎng)出現(xiàn)之后,圖像、聲音、動畫、視頻,甚至 3d 技術(shù)開始在因特網(wǎng)上流行起 來,網(wǎng)站也慢慢地發(fā)展成我們現(xiàn)在看到的圖文并茂的樣子。通過動態(tài)網(wǎng)頁技術(shù), 用戶也可以與其他用戶或者網(wǎng)站管理者進(jìn)行交流。也有一些網(wǎng)站提供電子郵件 服務(wù)。 許多公司都擁有自己的網(wǎng)站,他們利用網(wǎng)站來進(jìn)行宣傳、產(chǎn)品資訊發(fā)布、 招聘等等。隨著網(wǎng)頁制作技術(shù)的流行,很多個(gè)人也開始制作個(gè)人主頁,這些通 常是制作者用來自我介紹、展現(xiàn)個(gè)性的地方。也有以提供網(wǎng)絡(luò)資訊為盈利手段 的網(wǎng)絡(luò)公司,通常這些公司的網(wǎng)站上提供人們生活各個(gè)方面的資訊如時(shí)事新聞、 旅游、娛樂、經(jīng)濟(jì)等。 asp(active server pages)是目前最為流行的開放式的 web 服務(wù)器應(yīng)用程 序開發(fā)技術(shù)。使用它可以將 html 語言,腳本語言和 active 控件組合一起,產(chǎn) 生動態(tài)、交互、具有數(shù)據(jù)庫訪問功能,且高效率的基于 web 的應(yīng)用程序。下面 各章節(jié)中我以蓬勃發(fā)展的 web server 的 asp(active server pages)技術(shù)作 為 web 應(yīng)用程序?yàn)橹匾_發(fā)工具來開發(fā)一個(gè)門戶網(wǎng)站系統(tǒng)為例,談?wù)勂溟_發(fā)過 程和所涉及到的問題及解決方法。 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 2 頁 裝 訂 線 2 2 網(wǎng)站需求分析網(wǎng)站需求分析 2.12.1 問題定義問題定義 旅游信息綜合網(wǎng)站是一個(gè)集旅游資訊、旅團(tuán)信息、景點(diǎn)交通、酒店住宿、 旅友討論等多功能于一體的綜合性旅游信息網(wǎng)站。其建設(shè)的目的在于幫助廣大 旅游愛好者得到快速、詳實(shí)的旅游新聞,旅游團(tuán)信息,自助游輔助信息,以及 旅友之間快速有效的交流等等。其內(nèi)容緊密圍繞“旅游”這一中心,以旅友的 使用體驗(yàn)為目的,展開多方面多系統(tǒng)的功能模塊,力圖為廣大旅友愛好者提供 一個(gè)安全、有效、快速的平臺。 2.22.2 可行性分析可行性分析 旅游網(wǎng)站作為一個(gè)綜合性的信息類網(wǎng)站,目的為滿足廣大旅游愛好者的需 求,提供旅游咨詢,方便旅友交流。它的適應(yīng)范圍則是面對廣大的旅游愛好者。 網(wǎng)站致力于推廣旅游文化,傳播旅游咨詢,并以提供旅游套餐,預(yù)訂線路為輔, 使網(wǎng)站更具即時(shí)、實(shí)效性。 2.32.3 需求分析需求分析 需求分析是建設(shè)一個(gè)網(wǎng)站的第一步驟,也是至關(guān)重要的環(huán)節(jié),明確了需求 關(guān)系,才能完成對網(wǎng)站的架構(gòu)設(shè)計(jì)。需求分析要注意的問題,是讓用戶和開發(fā) 者共同明確將要開發(fā)的是一個(gè)什么樣的網(wǎng)站。該網(wǎng)站主要針對人們對旅游信息 的需要,采用 asp 技術(shù)使人們實(shí)現(xiàn)網(wǎng)上瀏覽旅游咨詢、旅游套餐、在線預(yù)定和 查看訂單等功能,并且可以方便的在上通過查詢了解旅游景區(qū)附近的乘車及住 宿情況。完成旅游愛好者對旅游信息的全部需求。 如何使旅游愛好者實(shí)現(xiàn)快速的網(wǎng)上訂制旅游線路套餐呢?這是旅游網(wǎng)站設(shè) 計(jì)部分關(guān)鍵的一個(gè)問題。網(wǎng)站為旅游愛好者提供了線路套餐列表,瀏覽者可點(diǎn) 擊查看每條線路套餐的詳細(xì)內(nèi)容,并可在線預(yù)訂此線路套餐,填寫訂單信息, 訂單中要求填寫顧客姓名、聯(lián)系方式、聯(lián)系地址等信息??紤]到顧客預(yù)訂后很 可能想再確認(rèn)一下自己的訂單信息是否填錯(cuò),所以在線路套餐頁面設(shè)計(jì)了搜索 版塊,使顧客可以通過姓名搜索,查看之前預(yù)訂訂單的詳細(xì)內(nèi)容。如何方便旅 游愛好者了解旅游資訊,需要把資訊新聞以列表的形式展示出來,供瀏覽者點(diǎn) 擊查看。那么如果瀏覽者對于想去的景區(qū)的各種情況不了解,網(wǎng)站需要設(shè)立搜 索功能模塊,瀏覽者通過輸入景區(qū)名稱可查詢到景區(qū)附近的乘車交通信息及酒 店住宿的信息,可以更加方便旅游愛好者出行旅游。 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 3 頁 裝 訂 線 3 3 系統(tǒng)開發(fā)技術(shù)簡介系統(tǒng)開發(fā)技術(shù)簡介 3.13.1 動態(tài)網(wǎng)站介紹動態(tài)網(wǎng)站介紹 隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,單純的靜態(tài)頁面已經(jīng)不能滿足發(fā)展的需要,因?yàn)?靜態(tài)頁面是用單純的 html 語言組成的,它沒有交互性.因此,為了滿足實(shí)際的需 要,許多網(wǎng)頁文件擴(kuò)展名不再只是“htm”,“html”,出現(xiàn)了以“php”, “asp”,“jsp”,“shtml”等為后綴的網(wǎng)頁文件,這些都是采用動態(tài)網(wǎng)頁技術(shù) 制作出來的。 動態(tài)網(wǎng)站和靜態(tài)網(wǎng)站看不出有什么區(qū)別:靜態(tài)網(wǎng)頁也可以有各種動畫、滾 動字幕等“動態(tài)效果” ;而動態(tài)網(wǎng)頁完全可以是純文本的內(nèi)容,不一定就有動 畫和滾動字幕。實(shí)際上,判斷一個(gè)網(wǎng)站是動態(tài)網(wǎng)站還是靜態(tài)網(wǎng)站,不是看網(wǎng)頁 會不會動,而是要看它是否應(yīng)用了建立在瀏覽器/服務(wù)器(b/s)架構(gòu)上的服務(wù) 器端腳本程序。 動態(tài)網(wǎng)站可以實(shí)現(xiàn)交互功能,如用戶注冊、信息發(fā)布、產(chǎn)品展示、訂單管 理等等。它并不是獨(dú)立存在于服務(wù)器的網(wǎng)頁文件,而是瀏覽器發(fā)出請求時(shí)才反 饋網(wǎng)頁。動態(tài)網(wǎng)頁中包含有服務(wù)器端腳本,所以頁面文件名常以 asp、jsp、php 等為后綴。需要數(shù)據(jù)庫處理,所以動態(tài)網(wǎng)站的訪問速度大大減 慢。由于存在特殊代碼,所以不易被搜索引擎檢索。 3.23.2 aspasp 簡介簡介 asp 是 active server page 的縮寫,意為“動態(tài)服務(wù)器頁面” 。asp 是微 軟公司開發(fā)的代替 cgi 腳本程序的一種應(yīng)用,它可以與數(shù)據(jù)庫和其它程序進(jìn)行 交互,是一種簡單、方便的編程工具。asp 的網(wǎng)頁文件的格式是.asp,現(xiàn)在常 用于各種動態(tài)網(wǎng)站中。 asp 是一種服務(wù)器端腳本編寫環(huán)境,可以用來創(chuàng)建和運(yùn) 行動態(tài)網(wǎng)頁或 web 應(yīng)用程序。asp 網(wǎng)頁可以包含 html 標(biāo)記、普通文本、腳本命 令以及 com 組件等。利用 asp 可以向網(wǎng)頁中添加交互式內(nèi)容(如在線表單) , 也可以創(chuàng)建使用 html 網(wǎng)頁作為用戶界面的 web 應(yīng)用程序。 與 html 相比,asp 網(wǎng)頁具有以下特點(diǎn): (1)利用 asp 可以實(shí)現(xiàn)突破靜態(tài)網(wǎng)頁的一些功能限制,實(shí)現(xiàn)動態(tài)網(wǎng)頁技術(shù)。 (2)asp 文件是包含在 html 代碼所組成的文件中的,易于修改和測試。 (3)服務(wù)器上的 asp 解釋程序會在服務(wù)器端執(zhí)行 asp 程序,并將結(jié)果以 html 格式傳送到客戶端瀏覽器上,因此使用各種瀏覽器都可以正常瀏覽 asp 所 產(chǎn)生的網(wǎng)頁。 (4)asp 提供了一些內(nèi)置對象,使用這些對象可以使服務(wù)器端腳本功能更強(qiáng)。 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 4 頁 裝 訂 線 例如可以從 web 瀏覽器中獲取用戶通過 html 表單提交的信息,并在腳本中對 這些信息進(jìn)行處理,然后向 web 瀏覽器發(fā)送信息。 (5)asp 可以使用服務(wù)器端 activex 組件來執(zhí)行各種各樣的任務(wù),例如存取 數(shù)據(jù)庫、發(fā)現(xiàn)和那個(gè) email 或訪問文件系統(tǒng)等。 (6)由于服務(wù)器是將 asp 程序執(zhí)行的結(jié)果以 html 格式傳回客戶端瀏覽器, 因此使用者不會看到 asp 所編寫的原始程序代碼,可防止 asp 程序代碼被竊取。 asp 的程序比 html 更方便而更富有靈活性.是在 web 服務(wù)器端運(yùn)行,運(yùn)行后 再將運(yùn)行結(jié)果以 html 格式傳送至客戶端的瀏覽器。因此 asp 與一般的腳本語 言相比要安全得多。asp 最大的好處就是可以包含 html 標(biāo)簽,也可以直接存取 數(shù)據(jù)庫及使用無限擴(kuò)充的 activex 控件,用戶可以直接使用 activex 控件,調(diào)用 對象方法和屬性,以簡單的方式實(shí)現(xiàn)強(qiáng)大的交互功能。但 asp 技術(shù)也并非完美 無缺,由于它基本上是局限于微軟的操作系統(tǒng)平臺,主要的工作環(huán)境是微軟的 iis 應(yīng)用程序結(jié)構(gòu),又因 activex 對象具有平臺特性,所以 asp 技術(shù)要實(shí)現(xiàn)在跨 平臺 web 服務(wù)器上工作,不是很容易.microsoft 的 asp 技術(shù)目前已發(fā)展到.net 版.對很多人來說,用 asp 來創(chuàng)建 windows 服務(wù)器平臺上的動態(tài) web 網(wǎng)頁,整個(gè) 站點(diǎn)和基于 web 的應(yīng)用程序已經(jīng)成為及其自然的方法。在瀏覽器地址欄中,文 件擴(kuò)展名.asp 同表示動態(tài)創(chuàng)建的網(wǎng)頁的文件擴(kuò)展名.pl 或.cgi 一樣,已被瀏覽 者所接受.開發(fā) asp 程序,常常先設(shè)計(jì)靜態(tài)網(wǎng)頁的欄目格式和排版形成 html 語 言,接著在 html 的基礎(chǔ)上添加腳本程序,形成 asp 程序后再實(shí)現(xiàn)動態(tài)的 web 網(wǎng) 頁.在 asp 的程序開發(fā)中,它所用的腳本語言是 javascript 和 vbscript,在默認(rèn) 情況下使用的是 vbscript,它是 vb 程序設(shè)計(jì)語言的一個(gè)子集,語法與 vb 基本相 同.asp 中的 ado 對象用來執(zhí)行與數(shù)據(jù)庫相關(guān)的操作,ado 再以 oledb 或 odbc 的 方式訪問數(shù)據(jù)庫,在.net 版本中這一對象稱為 ado.net。 .1 aspasp 工作原理工作原理 當(dāng)在 web 站點(diǎn)中融入 asp 功能后,將發(fā)生以下事情: (1)用戶向?yàn)g覽器地址欄輸入網(wǎng)址,默認(rèn)頁面的擴(kuò)展名是.asp。 (2)瀏覽器向服務(wù)器發(fā)出請求。 (3)服務(wù)器引擎開始運(yùn)行 asp 程序。 (4)asp 文件按照從上到下的順序開始處理,執(zhí)行腳本命令,執(zhí)行 html 頁 面內(nèi)容。 (5)頁面信息發(fā)送到瀏覽器。 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 5 頁 裝 訂 線 3.33.3 javascriptjavascript 簡介簡介 能夠具有交互性,能夠包含更多活躍的元素,就有必要在網(wǎng)頁中嵌入其它 的技術(shù)。如:javascript、vbscript、document object model(dom,文檔對 象模型) 、layers 和 cascading style sheets(css,層疊樣式表) ,這里主要 講 javascript。那么 javascript 是什么東東?javascript 就是適應(yīng)動態(tài)網(wǎng)頁 制作的需要而誕生的一種新的編程語言,如今越來越廣泛地使用于 internet 網(wǎng)頁制作上。 javascript 是由 netscape 公司開發(fā)的一種腳本語言 (scripting language) ,或者稱為描述語言。在 html 基礎(chǔ)上,使用 javascript 可以開發(fā)交互式 web 網(wǎng)頁。javascript 的出現(xiàn)使得網(wǎng)頁和用戶之 間實(shí)現(xiàn)了一種實(shí)時(shí)性的、動態(tài)的、交互性的關(guān)系,使網(wǎng)頁包含更多活躍的元素 和更加精彩的內(nèi)容。 運(yùn)行用 javascript 編寫的程序需要能支持 javascript 語言的瀏覽器。netscape 公司 navigator 30 以上版本的瀏覽器都能支持 javascript 程序,微軟公司 internet explorer 30 以上版本的瀏覽器基本 上支持 javascript。微軟公司還有自己開發(fā)的 javascript,稱為 jscript。 javascript 和 jscript 基本上是相同的,只是在一些細(xì)節(jié)上有出入。 javascript 短小精悍, 又是在客戶機(jī)上執(zhí)行的,大大提高了網(wǎng)頁的瀏覽速度 和交互能力。 同時(shí)它又是專門為制作 web 網(wǎng)頁而量身定做的一種簡單的編程 語言。 javascript 使網(wǎng)頁增加互動性。javascript 使有規(guī)律地重復(fù)的 html 文 段簡化,減少下載時(shí)間。javascript 能及時(shí)響應(yīng)用戶的操作,對提交表單做 即時(shí)的檢查,無需浪費(fèi)時(shí)間交由 cgi 驗(yàn)證。javascript 的特點(diǎn)是無窮無盡的, 只要你有創(chuàng)意。 3 3.4.4 b/sb/s 模式簡介模式簡介 b/s(browser/server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著 internet 技術(shù)的興起,對 c/s 結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工 作界面是通過 www 瀏覽器來實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(browser)實(shí)現(xiàn), 但是主要事務(wù)邏輯在服務(wù)器端(server)實(shí)現(xiàn),形成所謂三層 3-tier 結(jié)構(gòu)。 這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級的成本和工作量, 降低了用戶的總體成本(tco) 。以目前的技術(shù)看,局域網(wǎng)建立 b/s 結(jié)構(gòu)的網(wǎng)絡(luò) 應(yīng)用,并通過 internet/intranet 模式下數(shù)據(jù)庫應(yīng)用,相對易于把握、成本也 是較低的。它是一次性到位的開發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不 同的接入方式(比如 lan,wan,internet/intranet 等)訪問和操作共同的數(shù)據(jù) 庫;它能有效地保護(hù)數(shù)據(jù)平臺和管理訪問權(quán)限,服務(wù)器數(shù)據(jù)庫也很安全。特別 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 6 頁 裝 訂 線 是在 java 這樣的跨平臺語言出現(xiàn)之后,b/s 架構(gòu)管理軟件更是方便、快捷、高 效。維護(hù)和升級方式簡單。 3.53.5 開發(fā)過程概述開發(fā)過程概述 應(yīng)用軟件的開發(fā)日益趨向大型化、復(fù)雜化的方向發(fā)展,因此,在多人協(xié)作 開發(fā)的情況下,工程化的開發(fā)和管理顯得越來越重要,并且決定了軟件的質(zhì)量。 軟件工程即因此而提出的計(jì)算機(jī)理論,并廣泛應(yīng)用于軟件開發(fā)的實(shí)際中。 傳統(tǒng)的軟件工程的核心思想是將軟件開發(fā)過程階段化、工程化,其中以為“瀑 布模型”為核心的開發(fā)模式為代表,將軟件開發(fā)分為若干階段進(jìn)行。 對于工程化的軟件開發(fā),國內(nèi)外均有一系列標(biāo)準(zhǔn)或規(guī)范,例如 ieee 的若 干標(biāo)準(zhǔn)以及我國的相應(yīng)的系列國標(biāo)。 90 年代以來,軟件工程逐漸側(cè)重于開發(fā)過程的管理(software process)和 開發(fā)質(zhì)量的控制,即軟件開發(fā)的管理應(yīng)該是建立在質(zhì)量保障體系上的過程化管 理。其中,代表性的規(guī)范有 iso 9000 系列標(biāo)準(zhǔn)中關(guān)于軟件過程管理的相關(guān)標(biāo) 準(zhǔn),以及業(yè)界普遍推崇的 sei 的 sw-cmm 和之后的 cmmi 軟件成熟度模型。 可以說,當(dāng)今的應(yīng)用軟件開發(fā)已經(jīng)脫離了早期僅限于語言編程的范疇,也 超越了以個(gè)人行為為主的軟件實(shí)現(xiàn),取而代之的是團(tuán)體性的協(xié)作、規(guī)范化的運(yùn) 作以及一定能力的過程控制。實(shí)際上,這也可以理解為軟件本身復(fù)雜性的增強(qiáng), 對軟件開發(fā)提出了更高的要求。 一個(gè)成功的軟件開發(fā)工程必須有可靠的體系保障,當(dāng)前的軟件工程發(fā)展已 經(jīng)將質(zhì)量保障(quality assurance)體系作為軟件開發(fā)管理的核心體系,軟件 開發(fā)過程(software process)必須建立在質(zhì)量保障體系的基礎(chǔ),即以一系列的 規(guī)范和可控制的措施確保整個(gè)流程;在軟件開發(fā)過程的實(shí)施中,則必須明確軟 件開發(fā)模式(model);遵循一定的開發(fā)模式的基礎(chǔ)上,使用合適的方法來進(jìn)行 具體的開發(fā)活動。它們的關(guān)系,如圖 3-1 所示: 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 7 頁 裝 訂 線 軟件開發(fā)方法與活動 (分析,設(shè)計(jì),編碼,測試) 軟件開發(fā)模式(models for software development) (傳統(tǒng)模式,迭代模式) 軟件開發(fā)過程(software processes) (軟件開發(fā)過程管理實(shí)例) 軟件開發(fā)質(zhì)量保障體系(qa) (cmm/cmmi, iso 9000, metrics) 軟件開發(fā)方法與活動 (分析,設(shè)計(jì),編碼,測試) 軟件開發(fā)模式(models for software development) (傳統(tǒng)模式,迭代模式) 軟件開發(fā)過程(software processes) (軟件開發(fā)過程管理實(shí)例) 軟件開發(fā)質(zhì)量保障體系(qa) (cmm/cmmi, iso 9000, metrics) 圖 3-1 軟件工程體系 可以說,軟件開發(fā)質(zhì)量保障體系是所有軟件開發(fā)的基礎(chǔ),而軟件開發(fā)過程 則應(yīng)當(dāng)以明確的流程和規(guī)范,在整個(gè)軟件開發(fā)的生命周期中貫徹質(zhì)量保障。 軟件開發(fā)過程的管理也代表了軟件開發(fā)的整體水平,對開發(fā)商來說也是一 個(gè)不斷上升、提高的過程;同時(shí),隨著組織機(jī)構(gòu)設(shè)置、流程和規(guī)范的定義的不 同,開發(fā)過程管理在實(shí)踐上也會有所差異,即使對同一水平的開發(fā)商來說也是 如此。 在開發(fā)模式和開發(fā)方法方面,則更需要針對軟件開發(fā)項(xiàng)目的特性,使用合 適的模式,使用恰當(dāng)?shù)姆椒ā?一般來說,軟件大致可以分為通用型軟件和應(yīng)用軟件兩大類。通用型軟件 適用于大部分用戶,例如操作系統(tǒng)、辦公軟件等;而應(yīng)用軟件往往針對特定用 戶,例如行業(yè)應(yīng)用軟件。針對不同類別的軟件,在開發(fā)過程管理、開發(fā)模式以 及方法上,應(yīng)該有所區(qū)別,有針對性的開發(fā)管理才能確保軟件的質(zhì)量和可用性。 3.63.6 開發(fā)模式分析開發(fā)模式分析 傳統(tǒng)的軟件工程按照“瀑布模型”進(jìn)行,工程包括前期的軟件可行性分析, 和軟件需求分析、軟件概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼和調(diào)試、測試、維護(hù)等七個(gè) 階段。各個(gè)階段順序進(jìn)行,且前一階段是否成功決定了后續(xù)階段的進(jìn)行。 隨著當(dāng)前軟件開發(fā)趨向于大型化和復(fù)雜化,“瀑布模型”已經(jīng)暴露出其缺 陷。由于“瀑布模型”只是簡單地往下一個(gè)階段前進(jìn),很容易將潛在的錯(cuò)誤推 遲到下一階段,尤其在需求和設(shè)計(jì)階段的缺陷,往往是在集成測試階段才會被 發(fā)現(xiàn),從而增加了開發(fā)風(fēng)險(xiǎn)。如圖所示 3-2: 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 8 頁 裝 訂 線 圖 3-2 瀑布模型的開發(fā) 采用“瀑布模型”開發(fā)面臨的問題可以歸納為: (1)滯后了關(guān)鍵風(fēng)險(xiǎn)的解決; (2)難于準(zhǔn)確衡量項(xiàng)目的進(jìn)度; (3)延遲并加重了集成和測試的工作; (4)無法滿足盡早部署的要求; (5)往往導(dǎo)致未計(jì)劃的迭代。 采用“迭代式開發(fā)模式”(iterative development model)是目前主流的 軟件開發(fā)模式。迭代式開發(fā)最初也是針對解決軟件開發(fā)的風(fēng)險(xiǎn)而提出的,迭代 式開發(fā)要求每個(gè)迭代過程生成可執(zhí)行的軟件版本,并將集成與測試包含在迭代 過程中。 迭代式開發(fā)并不直接實(shí)現(xiàn)整個(gè)軟件,而往往根據(jù)優(yōu)先級、風(fēng)險(xiǎn)系數(shù)來選擇 性地先實(shí)現(xiàn)軟件的部分,然后以增量方式不斷地實(shí)現(xiàn)其他部分,從而完成整個(gè) 開發(fā)。迭代式開發(fā)的優(yōu)點(diǎn)包括: (1)可以盡可能早發(fā)現(xiàn)關(guān)鍵風(fēng)險(xiǎn)因素并加以解決; (2)可以盡量早得到用戶反饋,可以適應(yīng)需求的變化; (3)使得集成和測試工作可以并行進(jìn)行,并更為持續(xù)有效; (4)開發(fā)項(xiàng)目組可以更明確短期目標(biāo); (5)開發(fā)管理和任務(wù)分配也將更有效。 因此,迭代式開發(fā)模式是風(fēng)險(xiǎn)驅(qū)動的。比較“瀑布模型”,它的主要優(yōu)勢 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 9 頁 裝 訂 線 也就是降低整個(gè)開發(fā)過程的風(fēng)險(xiǎn)。 迭代式開發(fā)中,又可以分為“螺旋式”(spiral)、“階段式”(staged delivery)、“漸進(jìn)式”(或進(jìn)化原型機(jī),evolutionary prototyping),以及 “快速應(yīng)用開發(fā)法”(rapid application development - rad)和 rational 所 提倡的“統(tǒng)一開發(fā)模型”(rational unified process rup)等幾種模式。 “螺旋式”模型通常以笛卡兒座標(biāo)表示,四個(gè)象限為以下的四方面的活動: 制訂計(jì)劃、風(fēng)險(xiǎn)分析、開發(fā)與實(shí)現(xiàn)、評估并改進(jìn)?!奥菪健遍_發(fā)通常以一個(gè) 較小規(guī)模的定義開始,通過上述四方面的活動,以螺旋式不斷迭代得到最后結(jié) 果。 “階段式”模型是將整個(gè)開發(fā)劃分為若干個(gè)迭代階段,每個(gè)階段實(shí)現(xiàn)一個(gè) 可執(zhí)行的軟件內(nèi)部版本。其中階段的劃分必須根據(jù)對軟件需求的分析來確定, 并且具有相對明確的里程碑(milestone);階段劃分同時(shí)結(jié)合風(fēng)險(xiǎn)分析,在靠 前的階段解決具有較大風(fēng)險(xiǎn)的問題。 “漸進(jìn)式”模型從較早的快速原型機(jī)方法衍生而來,即需要快速生成軟件 原型,通過與用戶的交互,確定對軟件的改進(jìn),然后通過多次原型迭代得到結(jié) 果。 “快速應(yīng)用開發(fā) rad”是“階段式”和“漸進(jìn)式”的結(jié)合,采用迭代中增 量開發(fā)、逐步接近的方法來實(shí)現(xiàn)軟件,并使用軟件工程輔助 (computer aided software engineering case)工具進(jìn)行編碼等實(shí)現(xiàn)工作,和采用交互式的 聯(lián)合應(yīng)用設(shè)計(jì)方法(interactive joint application desing jad)。 “統(tǒng)一開發(fā)模型 rup”是一個(gè)以用例驅(qū)動為基礎(chǔ)的、帶有增量實(shí)現(xiàn)特性的 迭代模型。rup 將整個(gè)迭代過程分為先啟、精化、構(gòu)建和產(chǎn)品化四個(gè)階段,而 將工作流程分為業(yè)務(wù)建模、需求、分析設(shè)計(jì)、實(shí)施、測試、和部署等六個(gè)核心 工作流程,以及環(huán)境、項(xiàng)目管理、配置與變更管理等三個(gè)核心支持工程流程。 rup 相對復(fù)雜和模式化,提倡以 uml 和面向?qū)ο鬄楹诵牡拈_發(fā)方法,提倡使用 一系列工具進(jìn)行軟件開發(fā)。 除上述的迭代式開發(fā)模式外,軟件開發(fā)也還有噴泉模型、轉(zhuǎn)換模型、構(gòu)建 集成模型等,以及近年來所提出的以適應(yīng)小型軟件開發(fā)為主的水晶模型、適應(yīng) 模型、極限編程等。其中極限編程(extreme programming)較有代表性,提倡 溝通、簡化、反饋及勇氣。但相對而言,采用傳統(tǒng)的“瀑布模型”以及“迭代 式開發(fā)模式”的軟件過程,可以更好地在軟件質(zhì)量保障體系的基礎(chǔ)上,進(jìn)行有 管理的開發(fā)。 一般來說,并不存在某個(gè)萬能的最佳開發(fā)模式,而不同的開發(fā)模式則通常 具有自身的針對性,也就是說,成功的軟件開發(fā),需要結(jié)合軟件項(xiàng)目的需求、 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 10 頁 裝 訂 線 規(guī)模、用戶情況、項(xiàng)目特點(diǎn)來進(jìn)行。 從近幾年的軟件工程發(fā)展來說,迭代式開發(fā)模式已經(jīng)被實(shí)踐證明可以降低 軟件開發(fā)的風(fēng)險(xiǎn),同時(shí)也由于其所具有的并行任務(wù)安排等優(yōu)勢,被證明是更有 效的。 在迭代式開發(fā)的多種模式中,幾種模式雖然存在一些差別,但必須遵循一 些通用性的原則,包括:要首先考慮風(fēng)險(xiǎn)及風(fēng)險(xiǎn)的依存因素,盡可能在迭代早 期處理風(fēng)險(xiǎn)大的部分;迭代過程中的計(jì)劃要考慮工作的并行性以提高效率;通 過對迭代中間結(jié)果的評估來確認(rèn)新的目標(biāo),包括變更、增補(bǔ)以及妥協(xié)。 對于某個(gè)軟件開發(fā)項(xiàng)目,多種迭代式開發(fā)模式也并不沖突,是允許并在需 要的時(shí)候結(jié)合運(yùn)用,尤其對一個(gè)周期相對較長的復(fù)雜的開發(fā)項(xiàng)目。例如,可以 使用“螺旋式”來處理相對嚴(yán)重的風(fēng)險(xiǎn)部分,然后改用“階段式”來完善其他 部分的開發(fā)。 3.73.7 開發(fā)模式選擇開發(fā)模式選擇 首先,我們認(rèn)為針對“旅游信息網(wǎng)站”的開發(fā),應(yīng)該選用先進(jìn)的迭代式開 發(fā)模式;其次,我們認(rèn)為以“階段式”的迭代開發(fā)模式為主,并結(jié)合其他開發(fā) 模式的案更為適合該軟件的開發(fā)。 以下首先分析本網(wǎng)站開發(fā)的相關(guān)特點(diǎn),然后對軟件開發(fā)模式的選擇進(jìn)行說 明。 從軟件開發(fā)過程管理角度,的軟件開發(fā)具有以下的特點(diǎn): (1)相對復(fù)雜的業(yè)務(wù)需求; (2)用戶需求具有專業(yè)性; (3)應(yīng)用軟件開發(fā)周期短; (4)最終用戶多,用戶使用情況復(fù)雜。 在業(yè)務(wù)需求覆蓋案件審判業(yè)務(wù)整個(gè)流程的信息管理,涉及信訪、立案、辦 案、監(jiān)察、歸檔等多個(gè)部門,需求的復(fù)雜性包括在不同流程中對信息的分類處 理、涉及不同部門和崗位的信息管理等。這種業(yè)務(wù)需求的復(fù)雜性往往導(dǎo)致潛在 的需求變化特性,包括業(yè)務(wù)流程調(diào)整、信息授權(quán)調(diào)整、具體信息內(nèi)容調(diào)整、不 同環(huán)節(jié)的信息展示變化、查詢統(tǒng)計(jì)等關(guān)聯(lián)信息項(xiàng)的變更等等。 在需求的專用性方面,由于具有行業(yè)性的業(yè)務(wù)特征,使得軟件需求不能等 同于一般的流程性信息管理?,F(xiàn)有的軟件輔助開發(fā)工具或者現(xiàn)有信息流程管理 的工具型軟件往往很難直接根據(jù)這種專業(yè)的需求快速開發(fā)應(yīng)用軟件。 信息技術(shù)本身就是一種業(yè)務(wù)輔助手段,行業(yè)性應(yīng)用軟件開發(fā)通常必須與業(yè) 務(wù)管理要求相一致,因此,相對較短開發(fā)周期的要求在行業(yè)應(yīng)用開發(fā)中很具普 遍性。 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 11 頁 裝 訂 線 因此,為更好地降低由于軟件所本身特性帶來的風(fēng)險(xiǎn),采用迭代式軟件開 發(fā)模式是合適并且是必要的。 在迭代式開發(fā)的幾種開發(fā)模式中,一般來說具有這樣的針對性: 應(yīng)用軟件如果具有很大的潛在風(fēng)險(xiǎn),軟件需求難以統(tǒng)一定義,并且需求可 能有很大變化的情況下,“螺旋式”開發(fā)會更為合適,但同時(shí)對軟件開發(fā)管理 有很高的要求,在迭代的評估改進(jìn)等環(huán)節(jié),對軟件階段性成果的有效預(yù)計(jì)相對 困難。 對于具備一定規(guī)模、同時(shí)又具有相對明確的定義的軟件開發(fā)項(xiàng)目,則可以 考慮使用“階段式”開發(fā)模式,該模式的對階段性成果要求的特點(diǎn),可以幫助 用戶增加對項(xiàng)目的參與,用戶可以通過“可見”的階段式軟件成果來更好地進(jìn) 行改進(jìn)。 如果一個(gè)軟件的需求難以確定,則可以考慮采用“漸進(jìn)式”模式,以原型 機(jī)方式來提出并修正需求。 如果軟件需求難以確定,同時(shí)又希望能劃分相對明確的階段,則可以采用 “階段式”和“漸進(jìn)式”相結(jié)合的開發(fā)方式。如果軟件實(shí)現(xiàn)內(nèi)容比較模式化, 可以采用輔助開發(fā)工具,即“快速應(yīng)用開發(fā) rad”模式。 “統(tǒng)一開發(fā)模型 rup”比較適合于大型、對過程配置管理要求嚴(yán)格的軟件 項(xiàng)目。最好軟件項(xiàng)目適合采用面向?qū)ο蟮慕?、分析和設(shè)計(jì)方法,并借助管理 和開發(fā)工具來開發(fā),這樣可以發(fā)揮 uml 以及軟件開發(fā)輔助工具的功效。 首先,對于旅游網(wǎng)站,根據(jù)項(xiàng)目相關(guān)情況,我們知道該系統(tǒng)具有相對明確 的業(yè)務(wù)需求,用戶對應(yīng)用軟件開發(fā)也具有清晰的定義,因此沒有必要采用“螺 旋式”;同時(shí),“螺旋式”開發(fā)對管理控制的難度在對軟件開發(fā)周期的風(fēng)險(xiǎn)控 制方面會有不足。 其次,由于系統(tǒng)業(yè)務(wù)需求的復(fù)雜性和專業(yè)性,對這樣的行業(yè)應(yīng)用軟件采用 case 等工具往往難以做到對需求的良好滿足。在建模、設(shè)計(jì)方面,針對該系統(tǒng) 的軟件開發(fā),既要考慮用例(use case),同時(shí)也要考慮用戶業(yè)務(wù)流程,因此采 用 rad 或者完全的 rup 模式不一定會有明顯的成效,同時(shí)將肯定增加開發(fā)成本。 因此,我們認(rèn)為以“階段式”的迭代開發(fā)模式為主,并結(jié)合其他開發(fā)模式 的方案更為適合該軟件的開發(fā),其中其他開發(fā)模式主要結(jié)合對軟件原型的使用。 以下針對該項(xiàng)目可能的風(fēng)險(xiǎn)簡要說明: (1)在迭代式開發(fā)的早期階段,可以通過以“需求工程”的方式明確業(yè)務(wù) 需求(business requirement)和軟件需求(software requirement),并通過階 段性的成果和用戶的參與,確保軟件對需求的滿足。 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 12 頁 裝 訂 線 (2)由于行業(yè)應(yīng)用軟件更多的開發(fā)工作量往往在于對功能需求的滿足而不 是性能的提高,因此以階段式的劃分,尤其是以功能為主劃分迭代階段,可以 更好地控制開發(fā)周期。 (3)為確保軟件在實(shí)際環(huán)境中的順利運(yùn)行,充分的測試是必要的,也就要 求有足夠的測試時(shí)間。階段式開發(fā)可以盡可能早開始測試,并將測試發(fā)現(xiàn)問題 和解決問題的時(shí)間提前,從而保障軟件質(zhì)量。 (4)采用“階段式”并非簡單的在不同階段逐步累加軟件功能,而是結(jié)合 “漸進(jìn)式”對軟件需求進(jìn)行評估和修訂,這樣使得在整個(gè)開發(fā)周期具備對需求 變更的適應(yīng)能力,這種能力也將延續(xù)到軟件維護(hù)階段。 階段性迭代開發(fā)并結(jié)合原型機(jī),這樣對用戶來說,可以更早“看見”軟件 的樣子,更多參與軟件實(shí)現(xiàn),從而提高軟件可用性。 3.83.8 面向?qū)ο蟮拈_發(fā)與架構(gòu)設(shè)計(jì)面向?qū)ο蟮拈_發(fā)與架構(gòu)設(shè)計(jì) 軟件開發(fā)方法往往更多圍繞軟件設(shè)計(jì)與實(shí)現(xiàn)來提出。傳統(tǒng)的軟件開發(fā)方法 包括結(jié)構(gòu)化方法、jackson 方法、面向?qū)ο?object oriented - oo )的方法等。 其中面向?qū)ο蟮拈_發(fā)方法經(jīng)過多年的發(fā)展應(yīng)用已經(jīng)日趨成熟。 面向?qū)ο蟮拈_發(fā)又可以根據(jù)不同階段分為面向?qū)ο蟮姆治?ooa)、面向?qū)?象的設(shè)計(jì)(ood)、面向?qū)ο蟮木幊?oop)等。目前軟件工程發(fā)展的主流技術(shù)是采 用基于軟件架構(gòu)(architecture)的面向?qū)ο箝_發(fā)。我們認(rèn)為對于旅游網(wǎng)站的設(shè) 計(jì)開發(fā)應(yīng)該采用這種主流的開發(fā)方法。 軟件架構(gòu)是指對軟件開發(fā)在體系上進(jìn)行以下方面的定義: (1)定義軟件的軟硬件以及網(wǎng)絡(luò)環(huán)境; (2)定義子系統(tǒng)以及接口; (3)定義高層的過程、協(xié)議和接口; (4)定義數(shù)據(jù)管理規(guī)則; (5)對連接、連接管理以及存儲等進(jìn)行設(shè)計(jì)。 架構(gòu)分析和設(shè)計(jì)通常由系統(tǒng)分析人員或者軟件架構(gòu)師來進(jìn)行。在架構(gòu)分析 和設(shè)計(jì)的基礎(chǔ)上,采用面向?qū)ο蟮姆治觥⒃O(shè)計(jì)和實(shí)現(xiàn)進(jìn)行軟件開發(fā)。 針對旅游網(wǎng)站的開發(fā),架構(gòu)分析的主要任務(wù)包括: (1)劃分子系統(tǒng)及模塊,并明確系統(tǒng)邊界、定義接口; (2)對開發(fā)的 framework、環(huán)境、語言等技術(shù)進(jìn)行定義; (3)對應(yīng)用軟件運(yùn)行環(huán)境進(jìn)行界定; (4)分析設(shè)計(jì)主要數(shù)據(jù)管理; (5)分析設(shè)計(jì)主要對象體系(對象表述、封裝及繼承關(guān)系等); (6)在迭代過程中改進(jìn)構(gòu)架設(shè)計(jì)。 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 13 頁 裝 訂 線 在面向?qū)ο蟮拈_發(fā)方面,針對旅游網(wǎng)站的開發(fā),建議采用以下的相關(guān)開發(fā) 方法:以動態(tài)元素(dynamic elements)為主的 ooa,采用用例(use case)法在 需求的基礎(chǔ)上進(jìn)行實(shí)體關(guān)系分析;采用 uml,從對象、序列、活動、狀態(tài)等多 方面進(jìn)行完善的面向?qū)ο笤O(shè)計(jì)(ood)。 3.93.9 多層設(shè)計(jì)思想多層設(shè)計(jì)思想 對旅游信息網(wǎng)站系統(tǒng),數(shù)據(jù)是一項(xiàng)核心元素,應(yīng)用軟件的價(jià)值在很大程度 上體現(xiàn)在對數(shù)據(jù)的管理和使用。同時(shí),旅游信息網(wǎng)站系統(tǒng)是用于游玩的工具, 對軟件的可用性、易用性要求高。因此,軟件開發(fā)的分層設(shè)計(jì)思想將對軟件整 體能力有所幫助。 軟件分層設(shè)計(jì)實(shí)現(xiàn)是與目前主流的多層體系結(jié)構(gòu)(n-tier)一脈相承。著名 的一種設(shè)計(jì)模式是“model-view-controller,即 mvc”模式。mvc 是一種適用 于交互式應(yīng)用開發(fā)的構(gòu)架設(shè)計(jì)模式(architectural design pattern),它將應(yīng) 用實(shí)現(xiàn)分為三部分:第一部分為數(shù)據(jù)組織和業(yè)務(wù)邏輯(application model), 第二部分為數(shù)據(jù)表示和用戶輸入(view),第三部分為請求分發(fā)和流程控制 (controller)。 在面向?qū)ο蟮脑O(shè)計(jì)中,一項(xiàng)難點(diǎn)之處是如何將可視化開發(fā)工具的用戶界面 設(shè)計(jì)和數(shù)據(jù)庫訪問接口融合到面向?qū)ο蟮捏w系中。 通常,可視化的開發(fā)環(huán)境一般提供了和數(shù)據(jù)庫相關(guān)的界面構(gòu)造元素,并可 以采用數(shù)據(jù)綁定等方式實(shí)現(xiàn)數(shù)據(jù)庫訪問。這種方式雖然為數(shù)據(jù)訪問提供了快捷 方便的手段,但在數(shù)據(jù)表示上卻限制了數(shù)據(jù)結(jié)構(gòu)的含義,也削弱了程序?qū)?shù)據(jù) 訪問的控制能力,從面向?qū)ο蠼嵌葎t無法方便地表達(dá)對象的操作特性。 因此,在分層設(shè)計(jì)與面向?qū)ο蟮慕Y(jié)合上,可以以面向?qū)ο蟮臄?shù)據(jù)結(jié)構(gòu)層作 為對象體系的核心,為對象為基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)驅(qū)動數(shù)據(jù)庫訪問接口,并完成數(shù) 據(jù)到用戶界面的映射。 和傳統(tǒng)的靜態(tài)數(shù)據(jù)結(jié)構(gòu)相比,以對象類為主體的數(shù)據(jù)結(jié)構(gòu)部分具備了對象 所擁有的操作能力,而不是通過程序讓界面元素直接操作數(shù)據(jù);同時(shí),從用戶 操作角度看,分離的界面數(shù)據(jù)顯示、界面操作和內(nèi)部數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)處理,可 以很好地控制相應(yīng)的錯(cuò)誤,從數(shù)據(jù)庫訪問角度,則保證了數(shù)據(jù)訪問的合法性和 一致性。 3.103.10 軟件開發(fā)模式與開發(fā)過程管理軟件開發(fā)模式與開發(fā)過程管理 建立有效的軟件開發(fā)質(zhì)量管理系統(tǒng)是開發(fā)過程管理的保障。軟件開發(fā)質(zhì)量 體系包括體系相關(guān)文件和體系的運(yùn)行。 質(zhì)量體系文件包括質(zhì)量手冊、相關(guān)程序文件、質(zhì)量記錄文件、有關(guān)規(guī)則/ 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 14 頁 裝 訂 線 慣例/約定、相關(guān)文件模板等等。體系的運(yùn)行是指整個(gè)活動中,對質(zhì)量要求的 遵循、質(zhì)量活動的執(zhí)行以及相關(guān)記錄。 針對旅游信息網(wǎng)站的開發(fā),涉及的質(zhì)量要素主要包括以下部分: (1)劃分軟件質(zhì)量階段,明確軟件過程的程序,形成質(zhì)量環(huán)。其中軟件過 程的質(zhì)量活動包括計(jì)劃、需求分析、軟件設(shè)計(jì)、軟件實(shí)現(xiàn)、測試、發(fā)布等環(huán)節(jié), 對于迭代式開發(fā),各環(huán)節(jié)在時(shí)間上會有重合段。 (2)明確質(zhì)量相關(guān)崗位的職責(zé),涉及管理部門、銷售部門、開發(fā)組、質(zhì)量 管理部門、測試組、發(fā)布和實(shí)施部門、服務(wù)部門等。 (3)約定質(zhì)量活動中對結(jié)果的確認(rèn),明確各質(zhì)量活動需要得到的文檔、程 序及源代碼、質(zhì)量記錄等結(jié)果。 (4)約定審核活動,包括評審、復(fù)查、測試、工作匯報(bào)、工作總結(jié)等。 在采用迭代式軟件開發(fā)模式時(shí),質(zhì)量相關(guān)活動必須和軟件迭代并行進(jìn)行, 并在關(guān)鍵點(diǎn)和里程碑之處加以必要的質(zhì)量控制。 在軟件計(jì)劃中,包括了開發(fā)計(jì)劃和開發(fā)過程的質(zhì)量計(jì)劃,計(jì)劃在整個(gè)開發(fā) 過程中必須不斷進(jìn)行修訂。質(zhì)量計(jì)劃覆蓋了評審、復(fù)查、配置管理和變更控制, 但必須在開發(fā)過程的關(guān)鍵點(diǎn)上執(zhí)行質(zhì)量保障活動。 長 春 大 學(xué) 畢業(yè)設(shè)計(jì)(論文紙) 共 40 頁 第 15 頁 裝 訂 線 4 4 數(shù)據(jù)庫數(shù)據(jù)庫簡介簡介 4.14.1 數(shù)據(jù)庫概論數(shù)據(jù)庫概論 本系統(tǒng)的關(guān)鍵在于 asp 數(shù)據(jù)庫的開發(fā)應(yīng)用技巧和流程。為了與數(shù)據(jù)庫更好 的配合工作,我們采用了 ado 對象。使用 activex 數(shù)據(jù)對象 ado,可以對來自 許多數(shù)據(jù)提供者的數(shù)據(jù)進(jìn)行讀取和寫入操作。例如,可以使用 ado 訪問 microsoft access、microsoft sql server 和 oracle 數(shù)據(jù)庫中的信息。 微軟公司的 access 數(shù)據(jù)庫本身不是一個(gè)數(shù)據(jù)庫 m 服務(wù)器,它不能用服務(wù) 器來運(yùn)行查詢。對于數(shù)據(jù)龐大的情況,access 本身不是一個(gè)好的選擇,另外一 個(gè)要考慮的是數(shù)據(jù)庫的安全問題,access 比起 sql server 而言,總體的安全 性要差。 對于 asp 而言,與它搭配的最常用的數(shù)據(jù)庫

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論