jsp團購網站ssh論文_第1頁
jsp團購網站ssh論文_第2頁
jsp團購網站ssh論文_第3頁
jsp團購網站ssh論文_第4頁
jsp團購網站ssh論文_第5頁
已閱讀5頁,還剩35頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

摘要網絡團購是消費者為滿足其特定需求,利用互聯網平臺便捷性的特點,自發組團、信息共享,共同采購,以降低交易成本和交易風險,獲取產品價值最大化的一種理性行為。目前,網絡團購在國內主要以同城團購為主,即發起人在網上召集有共同購買意愿的團眾,在線下組織見面交貨。本系統主要設計B/S模式的團購網站,實現團購網站的基本功能:用戶注冊登陸、團購信息介紹、今日團購信息、往日團購信息查詢、在線留言等功能關鍵字:團購網,信息管理,JSP

AbstractConsumerstobuythenetworktomeettheirspecificneeds,easeofuseoftheInternetplatform,thecharacteristicsofspontaneousgroups,informationsharing,jointprocurementtoreducetransactioncostsandtradingrisk,accesstomaximizethevalueofaproductofrationalbehavior.Atpresent,mainlyinthedomesticnetworkbuybuycity-based,thatthepromotershaveacommononlinepurchaseintentiontoconvenethepubliccorporation,organizedunderthelinetomeetdelivery.

ThesystemdesignofB/Smodebuywebsitebuywebsitestoachievethebasicfunctions:userregistrationlogin,commodityclassification,buyinformationsheets,onlinebuy,onlineforums,onlinemessageandotherfunctionsKeywords:Customers,Informationmanagement,JSP

目錄1緒論 11.1選題背景 11.2管理信息系統簡介 11.3計算機信息系統的發展 21.4管理信息系統的發展現狀 21.5開發管理信息系統應注意的問題 31.6可行性分析 31.7系統開發步驟 42開發環境 52.1軟件工程介紹 52.2開發環境及工具 52.1.1選擇JSP2.0作為開發語言 52.2.3選擇SQL2000作為后臺數據庫 62.3JSP數據庫開發技術 62.3.1.JDBC開發數據庫 62.3.2.BDE開發數據庫 72.4體系結構 82.4.1系統體系機構的一般闡述 82.4.2C/S模式與B/S模式的比較分析 82.4.3B/S模式的優勢 102.4.4C/S模式的優勢 102.5開發方法整體選擇 113系統分析 123.1模塊設計 123.2功能模塊圖 123.3數據庫設計概述 123.4數據庫設計周期 133.5SQL查詢語言及使用 143.6系統數據分析 143.7系統數據庫設計 154詳細設計 184.1用戶登錄界面 184.2添加團購信息 194.3團購商家管理 194.4管理員設置 204.5注冊會員管理 204.6會員信息管理 215系統調試與測試 225.1程序調試 225.2程序的測試 225.2.1測試的重要性及目的 225.2.2測試的步驟 235.2.3測試的主要內容 236結論 25致謝 27參考文獻 28PAGE281緒論1.1選題背景隨著計算機技術的飛速發展,計算機在企業管理中應用的普及,利用計算機實現團購網信息的管理勢在必行。目前團購網管理的借閱工作部分大多數還是手工管理,工作效率很低,并且不能及時了解團購網的種類和會員們比較需求的團購網等,不能更好的適應當前會員的借閱要求。手工管理還存在這許多弊端,由于不可避免的人為因素,造成數據的遺漏、誤報。計算機信息化管理有著儲存量大,速度快等許多優點,提供給我們的處理信息及時快捷,因此我們利用計算機提供給我們的信息對會員的借閱過程形成一整套動態的管理能夠極大地提高團購網管理管理的效率,這也是團購網管理的科學化、正規化管理,與世界接軌的重要條件。1.2管理信息系統簡介管理信息系統就是我們常說的MIS(ManagementInformationSystem),在強調管理,強調信息的現代社會中它變得越來越普及。MIS是一門新的學科,它跨越了若干個領域,比如管理科學、系統科學,運籌學、統計學以及計算機科學。在這些學科的基礎上,形成信息收集和加工的方法,從而形成一個縱橫交織的系統。管理信息系統是現代信息管理工作不可缺少的一部分,是適應現代高團購網信息管理尺度的要求、推動信息管理走向科學化、規范化的必要條件。只有信息管理規范了,才能給人們提供更好的生活環境及便利的生活空間。信息是管理上的一項極為重要的資源,管理工作的成敗取決于能否做出有效的決策,而決策的正確程度則在很大程度上取決于信息的質量。在21世紀,人類將步入知識經濟時代,知識經濟時代是團購網發展日新月異和知識、信息呈爆炸膨脹的時代。有所謂信息威脅之說,這是指人類面臨的要處理的信息量大到難以處理的地步,以至造成混亂的結果。計算機的出現解決了這個問題,由于計算機迅速、準確為信息收集、加工、使用、查詢提供可能。隨著以計算機技術、通信技術、網絡技術為代表的現代信息技術的飛躍發展,人類正在從工業時代向信息時代邁進,人們越來越重視信息資源的開發和利用,“信息化”已成為一個國家經濟和社會發展的關鍵環節,信息化水平的高低已成為衡量一個國家現代化水平和綜合國力的重要標志。管理信息系統是一個由人和計算機等組成的,能進行管理信息的收集、傳遞、加工、保存、維護和使用的系統,它能實測國民經濟和企業的行為、幫助實現其規劃目標。管理信息系統功能包括:信息收集、信息存儲、問題處理、對話及信息輸出、信息管理機構。1.3計算機信息系統的發展從1945年美國第一臺電子會員積分計算機ENIAC誕生以來,短短四、五十年,計算機技術發展異常迅速,應用日益廣泛。從硬件上由電子管、晶體管、集成電路、大規模、超大規模集成,價格降低、可靠性增強。計算機尤其是微型計算機逐漸普及,從開始4位微處理器的微型機到現今32位高檔微機,主頻速度越來越快。隨著硬件的發展,軟件也不斷更新,由2進制代碼到機器語言匯編語言、高級程序語言,到現今面對對象的非過程化語言,人們不必關心問題的解法和計算過程描述,只需告訴它干什么,至于如何干,則由軟件自動完成,這給軟件開發人員帶來及大的便利。軟件開發人員不必化大多時間和精力在描述程序的具體細節上,提高效率,減少手工編程中的誤差。計算機的應用也由原先單純的數值計算,到數據處理如辦公自動化,輔助教學,工業的自動控制、人工智能,可以說滲透到生產生活的各個領域。計算機的應用提高了效率,降低了成本,節省人力物力。但要發揮其巨大作用,還需提高人們的應用水平。1.4管理信息系統的發展現狀現代社會、社會化趨勢的擴大和社會產品需求使企業在生產經營活動中涉及的內外部信息積聚膨脹,隨著科學技術突飛猛進和生產迅速發展,使人類知識量增長速度不斷加快,信息量的增加,外部環境變化的變快,人工已無法勝任。如何收集足夠的信息資源,強有力的信息并加以利用,積極的開發和及時利用信息爆炸有效的信息資源,已成為現代社會的難題。計算機的出現解決了這個問題,由于計算機迅速、準確為信息收集、加工、使用、查詢提供可能。計算機技術與通信技術結合極大的促進現代信息技術的發展,各國加快信息進程,國際社會建設信息高速公路的熱潮和中國工人“金”字號工程為代表的國家信息工程項目的開展,使中國的企業信息化面臨新的形勢。電子計算機適應現代社會管理信息量迅速增長,信息壽命短,要求及時轉換的問題。信息系統由電子數據處理,信息報告系統,決策支持系統進一步發展到專家系統及支持領導層的決策執行信息程序,在競爭中支持戰略決策的戰略信息系統。當今社會現代信息技術廣泛迅速的滲透到社會生活的各領域但目前在管理信息系統應用還很不完善,屬于起步階段。計算機對管理工作的支持,不僅是數據處理、而且是輔助決策的工具,能夠從海量的信息中收集、整理,分析提供給管理者、決策有關的信息,相關的決策分析,甚至可和管理者交互對話,生成決策。目前各個行業的計算機處理信息管理,很大一部分仍停留在單項業務理,處在電子數據處理階段,各單位由事務處理到系統處理轉向支持系統還建立起真正的具有預測控制和支持決策功能的管理信息系統。雖然信息系統已有一定發展,在業務處理過程控制辦公自動化方面已有長足進步,但很不完善。要充分利用計算機處理信息,必須從目前情況入手,著眼于未來,開發適合本單位、行業的小型管理系統,甚至是其中一步分,如工資管理系統,然后逐步完善,不斷擴充。管理信息系統的特點之一就是數據集中統一,采用數據庫。利用數據庫技術可解決數據共享問題。數據庫用一定數據模型組織數據,使數據面向系統,程序獨立于數據,實現數據獨立性,減少數據冗余和不一致性,且易編程、擴充、移走。尤其20世紀70年代后期產生的分布式、面對對象數據庫,使數據和數據操作方法作為對象由數據庫管理,系統更好用,減少出問題的可能性.其屬性繼承性可在對象中共享數據和操作,極大的方便了用戶。總而言之管理信息系統是集科學化、計算機及系統方法為一體的綜合性邊緣性學科。1.5開發管理信息系統應注意的問題成功地開發一套管理信息系統,不僅需要具備一定的理論基礎,而且還需要對開發過程中所面臨的問題有一個充分、清醒的認識,例如:社會因素、文化背景、企業體制、起點環境等。特別是在中國當前IT行業飛速發展的形勢下,更要強調這些方面對管理信息系統開發的影響。1.6可行性分析經濟可行性研究是對組織的經濟現狀和投資能力進行分析,對系統建設運行和維護費用進行估算,對系統建成后可能取得的社會和經濟效益進行估計。由于公司XXXX團購網管理系統是作為畢業設計由我們會員自己開發的,在經濟上的投入甚微,系統建成之后將為今后實現公司團購網管理系統提供很大的方便,估算新系統的開發費用和今后的運行、維護費用,估計新系統將獲得的效益,并將費用與效益進行比較,看是否有利。開發、運行和維護費用主要包括:購買和安裝設備的費用:計算機硬件、系統軟件、機房、電源、空調等;軟件開發費用:若由實習單位的技術人員開發,則該項費用可以計入下面的人員費用一項;人員費用:系統開發人員、操作人員和維護人員的工資、培訓費用等;消耗品費用:系統開發所用材料、系統正常運行所用消耗品,例如水、電費,打印紙、軟盤、色帶等開支。技術可行性要考慮現有的技術條件是否能夠順利完成開發工作,軟硬件配置是否滿足開發的需求等。團購網管理系統用的是JSP開發語言,調試相對簡單,當前的計算機硬件配置也完全能滿足開發的需求,因此在技術上是絕對可行的。軟件方面:由于目前單機模式相對發展成熟,故軟件的開發平臺成熟可行,它們速度快、容量大、可靠性能高、價格低,完全能滿足系統的需求。運行可行性是對組織結構的影響,現有人員和機構和環境對系統的適應性及人員培訓補充計劃的可行性。當前我們公司信息化技術已經相當普及,各類操作人員水平都有相當的高度,所以在運行上是可行性的。根據新系統目標來衡量所需的技術是否具備,一般可從硬件、軟件的性能要求、環境條件、技術人員水平和數量等方面去考慮和分析,其中開發人員的技術力量應首先考慮能力與水平,并考慮近期內可以培養和發展的技術人員。運行可行性對新系統運行后給現行系統帶來的影響(包括組織機構、管理方式、工作環境等)和后果進行估計和評價。同時還應考慮現有管理人員的培訓、補充,分析在給定時間里能否完成預定的系統開發任務等。

按上述三方面進行可行性分析、研究后,就可整理并編制出新系統開發的可行性報告,它是總體規劃工作的階段性成果。使用本系統,能使公司加強對資金的管理,對其團購網中商品信息及時反饋。利于公司及時采取經營策略。本系統的開發,是典型的Mis開發,主要是對數據的處理,包括數據的收集,數據的變換,及數據的各種報表形式的輸出。采用流行的JSP+SQLServer2000體系,已無技術上的問題。1.7系統開發步驟一般說來,管理信息系統的建立與應用可以劃分成總體規劃、系統開發和系統運行三個階段,其中系統開發階段還可進一步分為系統分析、系統設計和系統實施等工作環節。上述各個階段排列成一個嚴格的線性開發序列,在每個工作階段均產生完整的技術文檔作為下一階段工作的指導和依據,每一階段都應對文檔進行評審,確信該階段工作已完成并達到要求后才能進入下一階段,同時在以后的工作中不能輕易改變前面經過評審的成果。上述開發方式的主要優點是便于開發工作的組織和管理,并且可大大降低管理信息系統開發的復雜性。國內外許多系統開發的實例都證明這是一種行之有效的開發方式。國外曾有人對一些軟件項目開發各階段的工作量進行了統計,結果表明,在開發過程中各工作階段所占全部工作量的比重分別達到系統分析:系統設計:編程:模塊調試:系統調試=20%:15%:20%:25%:20%。由此可見,程序編寫在開發工作中只占很小比例,而調試工作卻占整個開發工作量的一半左右,因此“系統開發就是編程”的習慣說法顯然是片面的。另據統計,在建立管理信息系統的三個階段中,總體規劃和系統開發階段的工作量約占整個工作量的2/3,而運行、維護階段要占1/3,這說明一個管理信息系統開發后,仍應十分重視它的維護工作,以便使系統不斷完善并充分發揮其作用。2開發環境2.1軟件工程介紹軟件工程是用科學知識和技術原理來定義、開發、維護軟件的一門學科。它涉及計算機科學、工程科學、管理科學、數學等領域,計算機科學著重于原理和理論,而軟件工程著重于如何建造一個軟件系統。軟件工程在軟件開發過程中占有不可動搖的重要地位,一個軟件從開始計劃起,到廢棄不用止,稱為軟件生存周期。一般來說,軟件生存周包括計劃、開發、運行三個時期,每一時期又可分為若干更小的階段。計劃時期的主要任務是分析用戶要求,分析新系統的主要目標以及開發該系統的可行性。開發時期要完成設計和實現兩大任務具體。具體分為需求分析、概要設計、詳細設計、編碼、測試。其中編碼和測試是軟件開發期的最后兩個階段。運行時期是軟件生存周期的最后一個時期,軟件人員在這一時期的工作,主要是做好軟件維護。“新華書店團購網管理系統”雖然只是一個比較小的項目,但是為了做的更規范,也盡量按照軟件工程的指導來做,事實上,不管一個多小的工程,都是離不開軟件工程的指導思想的。2.2開發環境及工具2.1.1選擇JSP2.0作為開發語言JSP(JavaServerPages)是由SunMicrosystems公司倡導、許多公司參與一起建立的一種動態網頁技術標準。JSP技術有點類似ASP技術,它是在傳統的網頁HTML文件)中插入Java程序段(Scriptlet)和JSP標記(tag),從而形成JSP文件用JSP開發的Web應用是跨平臺的,即能在Linux下運行,也能在其他操作系統上運行。

JSP技術使用Java編程語言編寫類XML的tags和scriptlets,來封裝產生動態網頁的處理邏輯。網頁還能通過tags和scriptlets訪問存在于服務端的資源的應用邏輯。JSP將網頁邏輯與網頁設計和顯示分離,支持可重用的基于組件的設計,使基于Web的應用程序的開發變得迅速和容易。JSP技術的強勢:1.一次編寫,到處運行。在這一點上Java比PHP更出色,除了系統之外,代碼不用做任何更改。

2.系統的多平臺支持。基本上可以在所有平臺上的任意環境中開發,在任意環境中進行系統部署,在任意環境中擴展。相比ASP/PHP的局限性是顯而易見的。

3.強大的可伸縮性。從只有一個小的Jar文件就可以運行Servlet/JSP,到由多臺服務器進行集群和負載均衡,到多臺Application進行事務處理,消息處理,一臺服務器到無數臺服務器,Java顯示了一個巨大的生命力。4.多樣化和功能強大的開發工具支持。這一點與ASP很像,Java已經有了許多非常優秀的開發工具,而且許多可以免費得到,并且其中許多已經可以順利的運行于多種平臺之下。2.2.3選擇mysql作為后臺數據庫SMySQL是一個多用戶、多線程的SQL數據庫,是一個客戶機/服務器結構的應用,它由一個服務器守護程序mysqld和很多不同的客戶程序和庫組成。SQL(StructuredQueryLanguage結構化查詢語言)是目前使用最廣的并且是標準的數據庫語言。SQL語言使得存取或更新信息變得十分容易,你可以直接使用SQL從網站上查詢信息。MySQL的快速和靈活性足以滿足一個網站的信息管理工作。數據庫與用戶端之間的接口程序可以使用CGI進行通信。新網ChinaDNS使用的是PHP,使用PHP和MySQL這兩樣東西加在一起,對于開發數據驅動的網站這項工作而言是最佳組合。PHP是一種用于服務器端執行程序解釋的腳本語言。如果你接觸過ASP的話,那么您對于在HTML頁面中嵌入代碼應該是比較熟悉了。PHP代碼在服務器一端被解釋、執行并轉變成普通的HTML頁面內容,送給瀏覽器一端。這種模式使得我們可以用它來完成相當復雜的功能。MySQL的功能特點如下:1、可以同時處理幾乎不限數量的用戶;2、處理多達50,000,000以上的記錄;3、命令執行速度快,也許是現今最快的;4、簡單有效的用戶特權系統。5、數據類型字段支持大量數據類型是件好事。通常的整數、浮點數、字符串和數字均以多種長度表示,并支持變長的BLOB(BinaryLargeOBject)類型。對?br>字段由自動增量選項,日期時間字段也能很好的表示。MySQL與大多數其他數據庫系統不同的是提供兩個相對不常用的字段類型:ENUM和SET。ENUM是一個枚舉類型,非常類適于Pascal語言的枚舉類型,它允許程序員看到類似于'red、'green'、'blue'的字段值,而MySQL只將這些值存儲為一個字節。SET也是從Pascal借用的,它也是一個枚舉類型,但一個單獨字段一次可存儲多個值,這種存儲多個枚舉值的能力也許不會給你一些印象(并可能威脅第三范式定義),但正確使用SET和CONTAINS關鍵字可以省去很多表連接,能獲得很好的性能提高。6、SQL兼容性MySQL包含一些與SQL標準不同的轉變,他們的大多數被設計成是對SQL語言腳本語言的不足的一種補償。然而,另一些擴展確實使MySQL與眾不同,例如,LINK子句搜索是自動地忽略大小寫的。MySQL也允許用戶自定義的SQL函數,換句話說,一個程序員可以編寫一個函數然后集成到MySQL中,并且其表現的與任何基本函數如SUM()或AVG()沒有什么不同。函數必須被編譯道一個共享庫文件中(.so文件),然后用一個LOADFUNCTION命令裝載。它也缺乏一些常用的SQL功能,沒有子選擇(在查詢中的查詢)。視圖(View)也沒了。當然大多數子查詢可以用簡單的連接(join)子句重寫,但有時用兩個嵌套的查詢思考問題比一個大連接容易。同樣,視圖僅僅為程序員隱蔽where子句,但這正是程序員們期望的另一種便利。7、存儲過程和觸發器MySQL沒有一種存儲過程(StoredProcedure)語言,這是對習慣于企業級數據庫的程序員的最大限制。多語句SQL命令必須通過客戶方代碼來協調,這種情形是借助于相當健全的查詢語言和賦予客戶端鎖定和解鎖表的能力,這樣才允許的多語句運行。8、參考完整性(ReferentialIntegrity-RI)MySQL的主要的缺陷之一是缺乏標準的RI機制;然而,MySQL的創造者也不是對其用戶的愿望置若罔聞,并且提供了一些解決辦法。其中之一是支持唯一索引。Rule限制的缺乏(在給釘字段域上的一種固定的范圍限制)通過大量的數據類型來補償。不簡單地提供檢查約束(一個字段相對于同一行的另一個字段的之值的限制)、外部關鍵字和經常與RI相關的“級聯刪除”功能。有趣的是,當不支持這些功能時,SQL分析器容忍這些語句的句法。這樣做目的是易于移植數據庫到MySQL中。這是一個很好的嘗試,并且它確實未來支持該功能留下方便之門;然而,那些沒有仔細閱讀文檔的的人可能誤以為這些功能實際上是存在的。9、安全性自始至終我對MySQL最大的抱怨是其安全系統,它唯一的缺點是復雜而非標準,另外只有到調用mysqladmin來重讀用戶權限時才發生改變。通常的SQLGRANT/REVOKE語句到最近的版本才被支持,但是至少他們現在有了。MySQL的編寫者廣泛地記載了其特定的安全性系統,但是它確實需要一條可能是別無它法的學習過程。10、備份和恢復、數據導入/導出強制參考一致性的缺乏顯著地簡化備份和恢復,單靠數據導入/導出就可完美復制這一功能。LOADDATAINFILE命令給了數據導入很大的靈活性。SELECTINTO命令實現了數據導出的相等功能。另外,既然MySQL不使用原始的分區,所有的數據庫數據能用一個文件系統備份保存。數據庫活動能被記載。與通常的數據庫日志不同(存儲記錄變化或在記錄映像之前/之后),MySQL記載實際的SQL語句。這允許數據庫被恢復到失敗前的那一點,但是不允許提交(commit)和回卷(rollback)操作。11、連接性MySQL客戶庫是客戶/服務器結構的C語言庫,它意味著一個客戶能查詢駐留在另一臺機器的一個數據庫。然而MySQL真正的強項處于該庫中的語言“包裝器(wrapper)”,Perl、Pathon和PHP只是一部分。Apache的Web服務器也有許多模塊例如目錄存取文件等允許各種各樣的Apache配置信息(例如目錄存取文件)使用MySQL,應用程序接口簡單、一致并且相但完整。另外、多平臺ODBC驅動程序可自由獲得。12、未來MySQL的開發繼續以快速進行著。事實上,開發步伐對大多數開放源代碼是一種挑戰。本文提到的幾個抱怨中有很多新功能正在解決,然而,我將不對還沒確實存在的特征做評價。開發者們向我表明了在未來的開發中把增加查詢功能和提高查詢速度作為最高優先級。13、總結Mysql是數據庫領域的中間派。它缺乏一個全功能數據庫的大多數主要特征,但是又有比類似Xbase記錄存儲引擎更多的特征。它象企業級RDBMS那樣需要一個積極的服務者守護程序,但是不能象他們那樣消費資源。查詢語言允許復雜的連接(join)查詢,但是所有的參考完整必須由程序員強制保證。MySQL在Linux世界里找到一個位置-提供簡潔和速度,同時仍然提供足夠的功能使程序員高興。數據庫程序員將喜歡其查詢功能和廣泛的客戶庫,數據庫管理員會覺得系統缺乏主要數據庫功能,他們會發覺它對簡單數據庫(在不能保證購買大牌數據庫時)是有價值的。2.3JSP數據庫開發技術2.3.1.JDBC開發數據庫JDBC(JavaDataBaseConnectivity,java數據庫連接)是一種用于執行SQL語句的JavaAPI,可以為多種關系數據庫提供統一訪問,它由一組用Java語言編寫的類和接口組成。JDBC為工具/數據庫開發人員提供了一個標準的API,據此可以構建更高級的工具和接口,使數據庫開發人員能夠用純JavaAPI編寫數據庫應用程序,同時,JDBC也是個商標名。

有了JDBC,向各種關系數據發送SQL語句就是一件很容易的事。換言之,有了JDBCAPI,就不必為訪問Sybase數據庫專門寫一個程序,為訪問Oracle數據庫又專門寫一個程序,或為訪問Informix數據庫又編寫另一個程序等等,程序員只需用JDBCAPI寫一個程序就夠了,它可向相應數據庫發送SQL調用。同時,將Java語言和JDBC結合起來使程序員不必為不同的平臺編寫不同的應用程序,只須寫一遍程序就可以讓它在任何平臺上運行,這也是Java語言“編寫一次,處處運行”的優勢。Java數據庫連接體系結構是用于Java應用程序連接數據庫的標準方法。JDBC對Java程序員而言是API,對實現與數據庫連接的服務提供商而言是接口模型。作為API,JDBC為程序開發提供標準的接口,并為數據庫廠商及第三方中間件廠商實現與數據庫的連接提供了標準方法。JDBC使用已有的SQL標準并支持與其它數據庫連接標準,如ODBC之間的橋接。JDBC實現了所有這些面向標準的目標并且具有簡單、嚴格類型定義且高性能實現的接口。

Java具有堅固、安全、易于使用、易于理解和可從網絡上自動下載等特性,是編寫數據庫應用程序的杰出語言。所需要的只是Java應用程序與各種不同數據庫之間進行對話的方法。而JDBC正是作為此種用途的機制。JDBC擴展了Java的功能。例如,用Java和JDBCAPI可以發布含有applet的網頁,而該applet使用的信息可能來自遠程數據庫企業也可以用JDBC通過Intranet將所有職員連到一個或多個內部數據庫中(即使這些職員所用的計算機有Windows、Macintosh和UNIX等各種不同的操作系統)。隨著越來越多的程序員開始使用Java編程語言,對從Java中便捷地訪問數據庫的要求也在日益增加。MIS管理員們都喜歡Java和JDBC的結合,因為它使信息傳播變得容易和經濟。企業可繼續使用它們安裝好的數據庫,并能便捷地存取信息,即使這些信息是儲存在不同數據庫管理系統上。新程序的開發期很短。安裝和版本控制將大為簡化。程序員可只編寫一遍應用程序或只更新一次,然后將它放到服務器上,隨后任何人就都可得到最新版本的應用程序。對于商務上的銷售信息服務,Java和JDBC可為外部客戶提供獲取信息更新的更好方法。2.3.2.BDE開發數據庫BDE是負責用戶和數據庫交流的中間媒介。事實上,應用程序是通過數據訪問組件和BDE連接,再由BDE去訪問數據庫,完成對數據庫的操作,而并非直接操作BDE。這樣用戶只需關心JSP中的數據組件即可,不用直接和BDE打交道。數據庫組件主要分為兩類:“數據訪問組件”和“數據控制組件”,它們和數據庫的關系如圖2-1所示:圖2-1數據庫組件與數據庫關系圖其中,數據訪問組件在JSP組件面板的DataSQL組件頁上。其中的Table、Query和Storedproc三個控件,它們稱為“數據集組件”,用于和數據庫連接。這些組件功能如下:1.DataSource控件是數據集組件和數據控制組件的連接媒介。數據控制組件是用戶操作數據庫中數據的界面,只有通過DataSource控件才能和數據集組件連接,從而對數據進行顯示、修改、維護等操作。2.Table控件是通過數據庫引擎——BDE來存取數據庫中的數據的。通過BDE將用戶對數據庫的操作(如添加、刪除、修改等)傳遞給數據庫。3.Query控件是利用SQL(StructuredQueryLanguage,結構化查詢語言)通過BDE來操作數據庫的,和Table控件完成的功能相似,它只是采用了SQL來實現。4.Storedproc控件是通過BDE對服務器數據庫進行操作的,常用于客戶/服務器(C/S)結構的數據庫應用程序。5.DataBase控件一般用于建立遠程的數據庫服務器——客戶/服務器結構的數據庫應用程序和數據庫之間的連接。6.Session控件是用于控制數據庫應用程序和數據庫連接的,主要用于復雜功能的實現,例如:多線程數據庫程序設計。而數據控制組件也可以稱為數據顯示組件或數據瀏覽組件。它們的主要功能是與數據訪問組件相配合,提供給用戶一個對數據進行瀏覽、編輯等操作的界面。數據控制組件在組件板上的DataControl頁上。從上圖可以看出,BDE負責與具體的數據庫相連,通過BDE,幾乎可以操作目前所有類型的數據庫。但是BDE也有很大的缺點,當然,在對于一些比較簡單的數據庫,例如ASCII,BDE可以直接訪問。另外它也可以通過一些相應的驅動,訪問特定的數據庫,例如通過DAO訪問SQL數據庫。不同類型的驅動程序都具有不同的特征,主要是表現在:數據庫的安全性,事務,數據字典和完整性驗證,存儲過程和觸發器。對于不能直接支持的數據庫,BDE還可以連接到ODBC,通過ODBC進行訪問,所以BDE有時效率很低。在JSP提供的所有數據庫訪問方式中,BDE的歷史最長,因此提供的功能也最多,包括大量的和數據庫交互的API。使用它訪問PARJDBCX和DBASE時效率最高。同時,針對Oracle的訪問也有專門的優化,效率也最高。JSP目前正逐步放棄BDE,已經不再為BDE增加新的功能,只是對現有的功能進行維護,排除BUG。BDE包含如下組件:TDATABASE,TTABLE,TQUERY,TSTOREDPROC,TSESSION,TBATCHMOVE,TUPDATESQL,TNESTEDTABLE。2.4體系結構2.4.1系統體系機構的一般闡述MIS系統平臺結構模式大體上分為4種:主機終端模式、文件服務器模式、客戶機/服務器模式(Clint/Server,簡稱C/S)、web瀏覽器/服務器模式(Browser/Server,簡稱B/S)。主機終端模式由于硬件選擇有限,已被逐步淘汰。而文件服務器模式由于硬件選擇有限,硬件投資得不到保證,已被逐步淘汰。而文件服務器模式只適合小規模的局域網,對于用戶多,數據量大的情況就會產生網絡瓶頸,特別是在互聯網上不能滿足用戶要求。因此,現代企業級平臺結構模式應主要考慮C/S模式和B/S模式。2.4.2C/S模式與B/S模式的比較分析C/S系統又被稱作分布式計算系統,它的含義是程序的數據處理并不像通常在基于小型機或基于主機的計算機系統(終端方式)中那樣在單個的計算機上發生,而是把程序的不同部分在多臺計算機上同時運行。例如,對于SQLServer來講,將數據存放在服務器計算機上,客戶端界面作為程序的另一部分(完成商業邏輯和顯示邏輯)存在于客戶端桌面計算機上。客戶/服務器系統的這兩個部件通過網絡連接相互通信,并且可以擴展到任意規模。SQLServer是一個真正的客戶/服務器關系型數據庫系統。它使企業可以設計出能夠滿足不斷改變的信息需求的分布式數據庫系統。客戶端通過網絡向服務器發送SQL語句,服務器返回客戶端結果集。對于Client/Server模式而言,其主要特點為:1.具有成熟的設計開發方法和工具。經過多年的研究和積累,基于Client/Server模式的系統設計開發方法已被用戶所熟悉和掌握。并且,眾多的數據庫和軟件生產商提供了各種可是化工具和編程語言來支持它的開發。相對而言,目前的基于Browse/Server模式的應用及其開發方法仍然處于發展階段。2.交互性強,界面友好。各個Client機上運行的應用程序是針對待定的用戶和任務設計,同時具有在線幫助和出錯提示等輔助功能。這些優勢是Browse/Server模式所不具備的。3.數據通信量小,安全性高。Client/Server模式中前后臺傳遞的僅僅是查詢請求SQL語言或查詢結果,而不象Browse/Server模式中在前臺的Browse和后臺Server之間傳遞程序或主頁模塊:Client/Server模式一般采用基于局域網點對點式的結構和安全性較好的網絡協議,而Browse/Server是一種開放式的結構,面向眾多的用戶,其防火墻技術并不能完全屏蔽網絡黑客和內部人員對系統的惡意侵襲。C/S模式主要由客戶應用程序(Client)、服務器管理程序(Server)和中間件(middleware)三個部件組成。客戶應用程序是系統中用戶與數據進行交互的部件。服務器程序負責有效地管理系統資源,如管理一個信息數據庫,其主要工作是當多個客戶并發地請求服務器上的相同資源時,對這些資源進行最優化管理。中間件負責聯結客戶應用程序與服務器管理程序,協同完成一個作業,以滿足用戶查詢管理數據的要求B/S模式即Brower/Server結構模式,是基于Internet/Intranet的結構模式,分為三層,第一層為表示層,用戶通過瀏覽器完成和后臺的交互及最終查詢結果的輸出功能。第二層為具有ODBC接口的WEB服務器,屬功能層,主要利用服務器完成客戶的應用功能。第三層為數據層,根據客戶的請求獨立地進行各種運算。即前臺客戶端采用瀏覽器,中間件服務器為Web服務器,后臺為數據庫服務器。此種結構由客戶端在Web頁面發出請求至WebSever,再由WebSever向數據庫服務器發出請求,而最后中間件服務器接受到數據庫服務器的應答后,最終返回給客戶端的仍然是頁面形式。這樣實現了客戶端不直接和數據庫服務器發生關系,保證了數據安全性。對Browse/Server模式而言,其主要特點為:1.其在邏輯上采用了3層結構,它在前臺Browse和后臺Server之間增加了一層WebServer層,所有的應用程序模塊都安裝在它上面,在Browse上只需安裝一個通用的瀏覽器軟件,因此,這種模式簡化了客戶端,使用戶的操作更加方便。2.開放性好,Intranet/Intenet完全兼容。3.擴展性好,根據發展需要,可對系統隨時進行擴展,降低了系統的開發和維護的開銷2.4.3B/S模式的優勢首先它簡化了客戶端。它無需象C/S模式那樣在不同的客戶機上安裝不同的客戶應用程序,而只需安裝通用的瀏覽器軟件。這樣不但可以節省客戶機的硬盤空間與內存,而且使安裝過程更加簡便、網絡結構更加靈活。再次,它使用戶的操作變得更簡單。對于C/S模式,客戶應用程序有自己特定的規格,使用者需要接受專門培訓。而采用B/S模式時,客戶端只是一個簡單易用的瀏覽器軟件。無論是決策層還是操作層的人員都無需培訓,就可以直接使用。B/S模式的這種特性,還使MIS系統維護的限制因素更少。最后,B/S特別適用于網上信息發布,使得傳統的MIS的功能有所擴展。這是C/S所無法實現的。而這種新增的網上信息發布功能恰是現代企業所需的。這使得企業的大部分書面文件可以被電子文件取代,從而提高了企業的工作效率,使企業行政手續簡化,節省人力物力。鑒于B/S相對于C/S的先進性,B/S逐漸成為一種流行的MIS系統平臺。各軟件公司紛紛推出自己的Internet方案,基于Web的財務系統、基于Web的ERP。一些企業已經領先一步開始使用它,并且收到了一定的成效。B/S模式的新穎與流行,和在某些方面相對于C/S的巨大改進,使B/S成了MIS系統平臺的首選,也使人忽略了B/S不成熟的一面,以及C/S所固有的一些優點。下面讓我們來看C/S相對于B/S的一些優勢。2.4.4C/S模式的優勢首先,交互性強是C/S固有的一個優點。在C/S中,客戶端有一套完整的應用程序,在出錯提示、在線幫助等方面都有強大的功能,并且可以在子程序間自由切換。B/S雖然由JavaScript、JSPScript提供了一定的交互能力,但與C/S的一整套客戶應用相比是太有限了。其次,C/S模式提供了更安全的存取模式。由于C/S是配對的點對點的結構模式,采用適用于局域網、安全性比較好的網絡協議(例如:NT的NetBEUI協議),安全性可以得到較好的保證。而B/S采用點對多點、多點對多點這種開放的結構模式,并采用TCP/IP這一類運用于Internet的開放性協議,其安全性只能靠數據服務器上管理密碼的數據庫來保證。現代企業需要有開放的信息環境,需要加強與外界的聯系,有的還需要通過Internet發展網上營銷業務,這使得大多數企業將他們的內部網與Internet相連。由于采用TCP/IP,他們必須采用一系列的安全措施,如構筑防火墻,來防止Internet的用戶對企業內部信息的竊取以及外界病毒的侵入。最后,采用C/S模式將降低網絡通信量。B/S采用了邏輯上的三層結構,而在物理上的網絡結構仍然是原來的以太網或環形網。這樣,第一層與第二層結構之間的通信、第二層與第三層結構之間的通信都需占用同一條網絡線路。而C/S只有兩層結構,網絡通信量只包括Client與Server之間的通信量。所以,C/S處理大量信息的能力是B/S所無法比擬的。2.5開發方法整體選擇根據用戶的實際情況和需要,最終決定采用在Windowsxp下使用JSP+SQL開發,采用B/S結構,使用JDBC連接數據庫。這樣的好處是:1.使用JSP+SQL靈活方便,可擴充性、可移植性較好。2.JDBC與SQL同為微軟開發,兼容性好,同時存取效率高,且較成熟,目前許多數據庫應用系統都采用這種方式。3.采用B/S結構是能充分發揮客戶端PC的處理能力,很多工作可以在客戶端處理后再提交給服務器。對應的優點就是客戶端響應速度快。JDBC是Microsoft主要數據存儲技術,JDBC主要讓應用程序或WEB應用程序存取各種不同的數據源。JDBC封裝了OLE-DB復雜的接口,以極為簡單的COM接口存儲數據,簡化了程序員數據存取的工作。JDBC架構圖如圖2-2所示:OLEDBOLEDBJDBCApplication/BrowserJDBCSQLDATA圖2-2JDBC架構圖3系統分析3.1模塊設計該系統平臺從功能模塊上分為五大模塊:團購商品管理模塊、商品查詢模塊,會員管理模塊和基礎維護模塊,普通用戶可以使用這個系統進行注冊、查詢、購買,而系統的管理員可以對商品的類別和詳細信息進行全面的管理,以及查詢用戶的購買情況,,還可以對系統的信息進行管理。前臺:今日團購:對日期在今日的商品信息進行團購信息的發布。往期團購:對以往的商品信息進行團購信息的發布。用戶注冊:對用戶信息進行管理,注冊等。我的信息:查看我的個人信息,并可以在線修改。網站留言板:對網站提出一些意見和建議,并進行留言。商品評價:對網站的團購商品進行評價。后臺管理:個人信息管理:對個人信息的密碼等進行修改設置。團購商品管理:對商品的團購信息進行添加以及對團購信息進行管理。會員訂單管理:對注冊的會員信息進行管理。并對用夠購買商品的訂單進行管理。系統公告管理:對系統的公告信息進行添加以及對公告信息進行管理。留言板:對網站的留言板信息進行在線的修改管理。商品評價管理:對前臺用戶的評價信息進行查看,并可以刪除評價信息。3.2功能模塊圖本題要開發的團購網站系統的主要功能模塊如圖3-1所示:團購網站系統用戶注冊登陸系統功能模塊商品查詢功能模塊團購商品管理模塊團購商品信息評價管理團購網站系統用戶注冊登陸系統功能模塊商品查詢功能模塊團購商品管理模塊團購商品信息評價管理留言公共管理模塊會員管理模塊圖3-1團購網館管理系統平臺各個功能模塊圖3.3數據庫設計概述計算機信息系統以數據庫為核心,在數據庫管理系統的支持下,進行信息的收集、整理、存儲、檢索、更新、加工、統計和傳播等操作。對于數據庫應用開發人員來說,為使現實世界的信息流計算機化,并對計算機化的信息進行各種操作,就是如何利用數據庫管理系統、系統軟件和相關硬件系統,將用戶的要求轉化成有效的數據結構,并使數據庫結構易于實現用戶新的要求的過程。確切的說,數據庫設計是指對于一個給定的應用環境,提供一個確定最優數據模型與處理模式的邏輯設計,以及一個確定數據庫存儲結構與存取方法的物理設計,建立起既能反映現實世界信息和信息聯系,滿足用戶數據要求和加工要求,又能被某個數據庫管理系統所接受,同時能實現系統目標,并有效存取數據的數據庫。3.4數據庫設計周期根據軟件工程的思想,數據庫設計的周期可以劃分為六個階段:規劃階段:確定開發的總目標,給出計劃開發的軟件系統的功能、性能以及可靠性等方面的設想。需求分析階段:認真細致地了解用戶對數據的加工要求,確定系統的功能與邊界。本階段的最終結果能夠提供一個可作為設計基礎的系統說明書,包括對軟硬件環境的要求和一整套完善的數據流程圖。設計階段:把需求分析階段所確定的功能細化,主要工作是概念設計階段、邏輯設計階段、物理設計階段,然后,對每個階段內部設計詳細的流程。程序編制階段:以一種或幾種特定的程序設計語言表達上一階段確定的各模塊控制流程。程序編制時應遵循結構化程序設計方法。調試階段:對已編好的程序進行單元調試(分調),整體調試(聯調)和系統測試(驗收)。運行和維護階段:是整個設計周期最長的階段,其工作重點是收集和記錄系統實際運行的數據。在運行中,必須保持數據庫的完整性,必須有效地處理數據故障和進行數據庫恢復。同時解決開發過程的遺留問題,改正錯誤進行功能完善。數據是系統的靈魂所在,整個系統的運行基礎是系統數據庫,因而數據庫的設計質量對整個系統的功能與效率有很大影響,所以我們在進行數據文件和數據庫設計時,充分考慮了數據存儲的完整性、可靠性、安全性和數據的一致性及便于操作等方面的問題。一個完整的信息系統的建設并不是一步到位的。在實際的建設過程中,在時間上各子系統有先建、后建之分,在開發人員的分配上有他建、我建之別,這就涉及到各子系統之間的兼容問題。在現有的軟件水平下,追求應用系統間的相互兼容存在困難,但對于數據的兼容也就是數據的共享來說,既非常重要,又相對應用系統的兼容較易實現。在提高數據共享性方面,可主要從數據的一致性方面來考慮。在我們的數據庫系統建設中,著重考慮了以下兩個標準保證數據的一致性:字段標準:字段標準不統一是造成數據庫難以共享的一個主要原因,因為字段的設計處于數據庫設計的最底層,或者可以說是最基本的一層,如果這一層都不能統一的話,會直接影響到數據庫中數據的共享。代碼標準:代碼的引入為保持數據庫中數據的一致性提供了一個重要手段。

此外本數據庫設計主要遵循以下原則:數據庫文件的實用性,數據庫文件的安全性,數據庫文件的獨立性,節省磁盤空間。數據庫設計是要在一個給定的應用環境(DBMS)中,通過合理的邏輯設計和有效的物理設計,構造較優的數據庫模式、子模式,建立數據庫和設計應用程序,滿足用戶的各種信息需求。物理結構設計的原則如下:1.盡可能的減少數據冗余和重復。2.結構設計與操作設計相結合。

3.數據結構具有相對的穩定性。基于以上設計原則,本系統設計了一個數據庫,包含基本信息表(如員工類別、存貨等)及幾個實體聯系建模后的表(如散件銷售、整機銷售等)。為了加快系統訪問的速度把這些表放在一個數據庫中。3.5SQL查詢語言及使用SQL語言是結構化語言(StructureQueryLanguage)的縮寫,是一種用于數據庫查詢和編程的語言,已經成為關系型數據庫普遍使用的標準,使用這種標準數據庫語言對程序設計和數據庫的維護都帶來了極大的方便,廣泛地應用于各種數據查詢。JSP和其他的應用程序包括SQLserver2000、Foxpro、Orcale、SQLSEVER2000等都支持SQL語言。SQL語言的常用操作有:建立數據庫數據表(CREATETABLE),如本系統中的學生及成績備份就用到該語句;從數據庫中篩選一個記錄集(SELECT),這是最常用的一個語句,功能強大,能有效地對數據庫中一個或多個數據表中的數據進行訪問,并兼有排序、分組等功能;在數據表中添加一個記錄(INSERT);刪除符合條件的記錄(DELETE);更改符合條件的記錄(UPDATE);JSP中的數據庫操作對象都提供了對SQL語句的支持。其一般的用法是以JSP的各種控件接收用戶對數據庫訪問的請求,在事件響應程序代碼中將其轉換成對數據庫的SQL查詢語句,并以字符串的形式存在,然后將其傳遞給相應的數據庫操作對象,最終完成對數據庫的訪問。3.6系統數據分析通過對團購網管理系統的分析,可以得出該系統涉及三個實體:會員、商品、工作人員。通過對各實體數據關系的整理,我們可以畫出如下E-R圖如圖3-2所示:會員會員購買瀏覽購買瀏覽管理員商品商品發布管理員商品商品發布圖3-2系統E-R圖這些實體涉及的數據項有:會員:用戶名、姓名、性別、年齡、聯系方式等。商品:商品編號、商品名稱、簡介、圖片、價格、折扣。管理員:登陸編號、登陸密碼。實體之間的聯系涉及的數據項有:3.7系統數據庫設計1商品信息數據表商品信息數據表的主要功能在于商品發布以及保存在庫商品的主要信息和相關信息,包括:‘商品編號’、‘商品名稱’、‘簡介’、‘圖片’、‘價格’以及‘折扣’.商品信息數據表如表4-1所示:表4-1商品信息數據字段名稱字段意義字段類型鍵值約束備注goods_id商品idNUMBERPRIMARYKEYgoods_tuangoushijian團購時間VARCHAR2(16)Nullgoods_name商品名城VARCHAR2(16)goods_miaoshu介紹VARCHAR2(16)goods_pic圖片VARCHAR2(16)goods_shichangjia價格NUMBERgoods_zhekou折扣率VARCHAR2(16)goods_del刪除標志VARCHAR2(16)2.會員信息數據表會員信息數據表的主要功能是新會員的注冊以及保存已注冊的會員相關信息。它包括:‘會員編號’、‘會員姓名’‘會員性別’、‘會員年齡’’、‘會員聯系方式’’、‘會員住址’。會員信息數據表如表4-2所示:表4-2會員信息數據表字段名稱字段意義字段類型鍵值約束備注user_id會員idNUMBERPRIMARYKEYuser_name賬號VARCHAR2(16)Nullguser_pw密碼VARCHAR2(16)user_realname真實姓名VARCHAR2(16)user_address地址VARCHAR2(16)user_sex性別VARCHAR2(16)user_tel聯系方式VARCHAR2(16)goods_del刪除標志VARCHAR2(16)3.訂單信息數據表訂單信息數據表的主要功能是進行有關訂單信息的處理,它包括:‘訂單編號’、‘訂單日期’、‘訂單狀態’、‘送貨時間’、‘付款方式’、‘會員編號’、‘定金金額’和‘商品數量’。訂單信息數據表如表4-3所示:表4-3訂單信息數據表字段名稱字段意義字段類型鍵值約束備注order_id訂單idNUMBERPRIMARYKEYorder_bianhao編號VARCHAR2(16)Nullorder_date日期VARCHAR2(16)order_zhuangtai訂單狀態VARCHAR2(16)order_songhuodizhi送貨地址VARCHAR2(16)order_fukuangfangshi付款方式VARCHAR2(16)goods_id商品NUMBERorder_user_id刪除標志VARCHAR2(16)4.團購商家信息數據表團購商家數據表的主要功能是對團購商家的信息進行查詢。它包括:‘商家名稱’、‘聯系人’、‘聯系方式’、‘聯系地址’和‘備注’。團購商家信息數據表如表4-4所示:表4-4團購商家信息數據表字段名稱字段意義字段類型鍵值約束備注id編號NUMBERPRIMARYKEYlianxiren聯系人VARCHAR2(16)Nulltel電話VARCHAR2(16)telqita其他聯系方式VARCHAR2(16)dizhi地址VARCHAR2(16)name商家名稱VARCHAR2(16)tuangouleixing團購類型VARCHAR2(16)del刪除標志VARCHAR2(16)5.公告信息數據表公告信息數據表的主要功能是保存管理員發布的公告信息。它包括:‘公告標題’和‘公告內容’公告信息數據表如表4-5所示:表4-5公告信息數據表字段名稱字段意義字段類型鍵值約束備注id編號NUMBERPRIMARYKEYtitle公告標題VARCHAR2(16)Nullcontent公告內容VARCHAR2(16)4詳細設計4.1首頁今日團購信息首頁采用了紅色為主的界面,主要有今日團購,往日團購等信息。4.2今日團購信息對系統日期和團購日期一致的商品信息進行發布顯示,并能在線進行商品的搶購。4.3用戶注冊界面用戶注冊,用戶可以在線實現注冊功能,包括用戶名,密碼,姓名,性別,住址,電話等。4.4用戶登錄界面當系統登陸時,首先出現的是一個用戶權限登陸的界面,權限設置主要是維護系統的安全性和完整性。擁有管理員權限的操作員能對其他操作員進行相應的權限設置,沒有權限的操作員不能對相應的窗口進行操作。如圖4-1所示:圖4-1登錄主界面這是進入系統時的身份驗證,用戶首先要從軟件開發者那里申請用戶名和密碼,才可以進入。該過程的流程圖如圖4-2所示:輸入姓名及口令輸入姓名及口令記錄在口令表嗎中進入主界面繼續嗎結束開始提示信息NYN圖4-2登錄界面流程圖4.5添加團購商品信息身份驗證通過以后,點擊可以使用系統的基本信息管理界面,這是管理員主要的輸入信息部分,它即可以對數據進行輸入。填寫好各項信息后,單擊保存按鈕,系統將對這些信息進行處理。界面如圖4-3所示:圖4-3添加商品界面4.6團購訂單管理對團購商品進行訂單管理,界面如圖4-4所示:圖4-4團購訂單4.7管理員設置本系統增加系統管理員以及修改當前管理員密碼等功能。添加管理員功能如圖4-5所示:圖4-5添加管理員界面4.8注冊會員管理點擊可以使用系統的注冊管理界面,這是管理員主要的輸入信息部分,它即可以對數據進行輸入。填寫好各項信息后,單擊保存按鈕,系統將對這些信息進行處理。界面如圖4-6所示:圖4-6注冊會員管理界面4.9商品評價信息管理這是本系統對商品的基本的評價信息進行管理。界面如圖4-7所示:圖4-7商品評價信息管理界面5系統調試與測試5.1程序調試在設計系統的過程中,存在一些錯誤是必然的。對于語句的語法錯誤,在程序運行時自動提示,并請求立即糾正,因此,這類錯誤比較容易發現和糾正。但另一類錯誤是在程序執行時由于不正確的操作或對某些數據的計算公式的邏輯錯誤導致的錯誤結果。這類錯誤隱蔽性強,有時會出現,有時又不出現,因此,對這一類動態發生的錯誤的排查是耗時費力的。5.2程序的測試5.2.1測試的重要性及目的測試的重要性:軟件的測試在軟件生命周期中占據重要的地位,在傳統的瀑布模型中,軟件測試學僅處于運行維護階段之前,是軟件產品交付用戶使用之前保證軟件質量的重要手段。近來,軟件工程界趨向于一種新的觀點,即認為軟件生命周期每一階段中都應包含測試,從而檢驗本階段的成果是否接近預期的目標,盡可能早的發現錯誤并加以修正,如果不在早期階段進行測試,錯誤的延時擴散常常會導致最后成品測試的巨大困難。事實上,對于軟件來講,不論采用什么技術和什么方法,軟件中仍然會有錯。采用新的語言、先進的開發方式、完善的開發過程,可以減少錯誤的引入,但是不可能完全杜絕軟件中的錯誤,這些引入的錯誤需要測試來找出,軟件中的錯誤密度也需要測試來進行估計。測試是所有工程學科的基本組成單元,是軟件開發的重要部分。自有程序設計的那天起測試就一直伴隨著。統計表明,在典型的軟件開發項目中,軟件測試工作量往往占軟件開發總工作量的40%以上。而在軟件開發的總成本中,用在測試上的開銷要占30%到50%。如果把維護階段也考慮在內,討論整個軟件生存期時,測試的成本比例也許會有所降低,但實際上維護工作相當于二次開發,乃至多次開發,其中必定還包含有許多測試工作。在實踐中,軟件測試的困難常常使人望而卻步或敷衍了事,這是由于對測試仍然存在一些不正確的看法和錯誤的態度,這包括:1.認為測試工作不如設計和編碼那樣容易取得進展難以給測試人員某種成就感;2.以發現軟件錯誤為目標的測試是非建設性的,甚至是破壞性的,測試中發現錯位是對責任者工作的一種否定;3.測試工作枯燥無味,不能引起人們的興趣;4.測試工作是艱苦而細致的工作;5.對自己編寫的程序盲目自信,在發現錯誤后,顧慮別人對自己的開發能力的看法。這些觀點對軟件測試工作是極為不利的,必須澄清認識、端正態度,才可能提高軟件產品的質量。測試的目的:如果測試的目的是為了盡可能多地找出錯誤,那么測試就應該直接針對軟件比較復雜的部分或是以前出錯比較多的位置。1.軟件測試是為了發現錯誤而執行程序的過程;2.測試是為了證明程序有錯,而不是證明程序無錯誤;3.一個好的測試用例是在于它能發現至今未發現的錯誤;4.一個成功的測試是發現了至今未發現的錯誤的測試。這種觀點可以提醒人們測試要以查找錯誤為中心,而不是為了演示軟件的正確功能。但是僅憑字面意思理解這一觀點可能會產生誤導,認為發現錯誤是軟件測試的唯一目,查找不出錯誤的測試就是沒有價值的,事實并非如此。首先,測試并不僅僅是為了要找出錯誤。通過分析錯誤產生的原因和錯誤的分布特征,可以幫助項目管理者發現當前所采用的軟件過程的缺陷,以便改進。同時,這種分析也能幫助我們設計出有針對性地檢測方法,改善測試的有效性。其次,沒有發現錯誤的測試也是有價值的,完整的測試是評定測試質量的一種方法。5.2.2測試的步驟與開發過程類似,測試過程也必須分步驟進行,每個步驟在邏輯上是前一個步驟的繼續。大型軟件系統通常由若干個子系統組成,每個子系統又由若干個模塊組成。因此,大型軟件系統的測試基本上由下述幾個步驟組成:1.模塊測試在這個測試步驟中所發現的往往是編碼和詳細設計的錯誤。2.系統測試在這個測試步驟中發現的往往是軟件設計中的錯誤,也可能發現需求說明中的錯誤。3.驗收測試在這個測試步驟中發現的往往是系統需求說明書中的錯誤。5.2.3測試的主要內容為了保證測試的質量,將測試過程分成幾個階段,即:代碼審查、單元測試、集成測試、確認測試和系統測試。1.單元測試單元測試集中在檢查軟件設計的最小單位—模塊上,通過測試發現實現該模塊的實際功能與定義該模塊的功能說明不符合的情況,以及編碼的錯誤。2.集成測試集成測試是將模塊按照設計要求組裝起來同時進行測試,主要目標是發現與接口有關的問題。如一個模塊與另一個模塊可能有由于疏忽的問題而造成有害影響;把子功能組合起來可能不產生預期的主功能;個別看起來是可以接受的誤差可能積累到不能接受的程度;全程數據結構可能有錯誤等。3.確認測試確認測試的目的是向未來的用戶表明系統能夠像預定要求那樣工作。經集成測試后,已經按照設計把所有的模塊組裝成一個完整的軟件系統,接口錯誤也已經基本排除了,接著就應該進一步驗證軟件的有效性,這就是確認測試的任務,即軟件的功能和性能如同用戶所合理期待的那樣。4.系統測試軟件開發完成以后,最終還要與系統中其他部分配套運行,進行系統測試。包括恢復測試、安全測試、強度測試和性能測試等。單獨對系統的測試主要從以下幾方面入手:1.功能測試:測試是否滿足開發要求,是否提供設計所描述的功能,是否用戶的需求都得到滿足。功能測試是系統測試最常用和必須的測試,通常還會以正式的軟件說明書為測試標準。2.強度測試及性能測試:測試系統能力最高實際限度,即軟件在一些超負荷情況下功能實現的情況。3.安全測試:驗證安裝在系統內的保護機構確實能夠對系統進行保護,使之不受各

溫馨提示

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

評論

0/150

提交評論