信息系統(tǒng)分析與設計 教學課件 劉騰紅 8系統(tǒng)開發(fā)環(huán)境與工具_第1頁
信息系統(tǒng)分析與設計 教學課件 劉騰紅 8系統(tǒng)開發(fā)環(huán)境與工具_第2頁
信息系統(tǒng)分析與設計 教學課件 劉騰紅 8系統(tǒng)開發(fā)環(huán)境與工具_第3頁
信息系統(tǒng)分析與設計 教學課件 劉騰紅 8系統(tǒng)開發(fā)環(huán)境與工具_第4頁
信息系統(tǒng)分析與設計 教學課件 劉騰紅 8系統(tǒng)開發(fā)環(huán)境與工具_第5頁
已閱讀5頁,還剩109頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

在線教務輔導網(wǎng):://教材其余課件及動畫素材請查閱在線教務輔導網(wǎng)QQ:349134187或者直接輸入下面地址:

第8章系統(tǒng)開發(fā)環(huán)境與工具

在系統(tǒng)開發(fā)過程中,選擇好的開發(fā)環(huán)境與工具,對提高系統(tǒng)的開發(fā)效率和軟件質(zhì)量有直接作用。本章首先介紹信息系統(tǒng)集成的根本思想,再介紹CASE開發(fā)工具與平臺和基于Web的信息系統(tǒng)的集成開發(fā)環(huán)境,旨在啟發(fā)讀者去熟悉信息系統(tǒng)的各種開發(fā)環(huán)境和工具。8.1信息系統(tǒng)的集成系統(tǒng)集成是為了到達系統(tǒng)目標將可利用的資源有效地組織起來的過程和結果。系統(tǒng)集成的結果是將部件或小系統(tǒng)聯(lián)成大系統(tǒng)。單個微機一般不能算是系統(tǒng)集成,把多個微機用網(wǎng)絡聯(lián)接起來就可算是系統(tǒng)集成。把CAD(計算機輔助設計)、CAM(計算機輔助制造)和MIS聯(lián)通,也屬于系統(tǒng)集成,而且是比微機聯(lián)網(wǎng)更高級的集成。集成在概念上絕不只是聯(lián)通,而是有效的組織。有效的組織意味著系統(tǒng)中每個部件得到有效的利用,或者反過來說,為了到達系統(tǒng)的目標所耗的資源最少,包括開始的設備最少,和以后的運行消耗最少。系統(tǒng)集成是要到達系統(tǒng)的目標,這個目標總是要到達1+1>2,即系統(tǒng)的總效益大于各部件效益之總和。事實上對于信息系統(tǒng)而言,集成的系所完成的效益是每個分系統(tǒng)單獨工作所無法完成的,因而是1+1>>2。系統(tǒng)集成非常重要。正像我們前面所述,如果沒有系統(tǒng)集成各部件的效益均無法發(fā)揮。所以它成了實現(xiàn)系統(tǒng)效益的瓶頸。另外又在于它是系統(tǒng)上的系統(tǒng),是復雜的系統(tǒng),關系全局的系統(tǒng),因而它影響面大。我國現(xiàn)在大多數(shù)企業(yè)的信息系統(tǒng)沒有發(fā)揮應有的效益,企業(yè)買了各種各樣的軟件、硬件,可是沒有發(fā)揮系統(tǒng)的作用,有的只把它當成一個人的打字機使用,這都是因為集成不好所致。8.1.1系統(tǒng)集成的分類像其他任何對象的分類一樣,由不同的角度可以把系統(tǒng)集成分為不同的類型。按涉及的范圍可將系統(tǒng)集成分為技術集成、信息集成、組織和人員集成和形象集成。按照系統(tǒng)優(yōu)化的程度可將系統(tǒng)集成分為聯(lián)通集成、共享集成和最優(yōu)集成。按照具體程度分,可將系統(tǒng)集成分為概念集成、邏輯集成和物理集成。8.1.2優(yōu)化程度的系統(tǒng)集成分類按優(yōu)化程度可將系統(tǒng)集成分為聯(lián)通集成、共享集成和最優(yōu)集成。(1)聯(lián)通集成顧名思義就是首先保證設備能互相聯(lián)通。這個要求好似是出自網(wǎng)絡的要求。盡管微機桌面處理,用戶友好的軟件以及一些通信設備能很好的工作,但聯(lián)通的目標仍然是很難實現(xiàn)的。聯(lián)通性〔connectivity〕是指計算機和計算機網(wǎng)絡設備在無人干預的情況下相互通信和共享信息的性能。缺乏聯(lián)通性的情況是很多的:·微機經(jīng)常不能從主干機器或其他品牌的微機取得信息。·有些公司有多種系統(tǒng),彼此不能通信。·由于各個國家有各自的通信標準,跨國公司很難建立其全球網(wǎng)絡。聯(lián)通性不只是聯(lián)網(wǎng)而已,另外的一些性能也應具有。例如應用程序兼容,同樣的軟件可應用于不同的機器上;移植性,由老一代軟件移植到新一代軟件上;合作處理,利用主干機、部門機和微型機聯(lián)網(wǎng),解決同一個問題;信息兼容,在不同的硬件平臺和軟件應用程序間共享計算機文件;互用性,軟件應用程序應用于不同的硬件平臺,而又維護一樣的用戶界面和功能的能力。所以在一個大的計算機系統(tǒng)中聯(lián)通性的要求是很多的.,當前的大多數(shù)系統(tǒng)均沒有運到理想的程度。(2)共享集成是指整個系統(tǒng)的信息能為系統(tǒng)中所有用戶所共享。這種要求看起來很容易做到,但實際上是很難的。一般來說這里應當有個共享的數(shù)據(jù)庫,其內(nèi)容為全組織共享,而且要維護到最新狀態(tài)。除此之外,所有用戶的數(shù)據(jù)在有必要時,也容易接受其他用戶的訪問。共享集成還可以包括應用軟件的共享,在網(wǎng)絡上提供很好的軟件,用戶容易應用或下載,不必要每臺機器均獨立安裝許多軟件等。(3)最優(yōu)集成是最高水平的集成,理想的集成,這是很難到達的集成。一般只有在新建系統(tǒng)時才能到達。在新建系統(tǒng)時,很好了解系統(tǒng)目標,自頂向下,從全面到局部,進行規(guī)劃;合理確實定系統(tǒng)的結構,從全局考慮各種設備和軟件的購置:到達總經(jīng)費最省,性能最好。實際上隨著時間的推移,環(huán)境的改變,原來最優(yōu)的系統(tǒng),后來己偏移最優(yōu)了。在開始設計時它是最優(yōu)的,建成以后己不是最優(yōu)了。所以最優(yōu)系統(tǒng)實際上是相對的。追求最優(yōu)的努力應該一直繼續(xù)下去。8.1.3按涉及范圍分類的系統(tǒng)集成按范圍分類,可分為技術集成、信息集成、組織人員集成和形象集成。(1)技術集成主要要到達技術上的聯(lián)通,解決技術上的問題。如合用性、可取性、響應時間、滿足要求的功能,以及容易操作等。(2)信息集成要到達數(shù)據(jù)共享,要解決數(shù)據(jù)上的問題,如不正確性、過時、不適宜的單位、沒有索引、不夠合用和難以獲得等。(3)組織人員集成是將系統(tǒng)融合于組織中,成為相互依賴不可缺少的局部,要解決人的問題。如系統(tǒng)難用,系統(tǒng)難學,系統(tǒng)總是工作不正常,系統(tǒng)總出錯,系統(tǒng)難以預料等。系統(tǒng)難用,對組織來說,如不解決實際問題,不能和組織或人員配合解決問題,不能適應變化等。(4)形象集成說明將信息系統(tǒng)集成于企業(yè)形象之中,成為企業(yè)的驕傲。形象系統(tǒng)本身就是信息系統(tǒng),信息系統(tǒng)也要注意自己的形象。往往一個企業(yè)信息系統(tǒng)應用很成功,但信息系統(tǒng)給人的形象很不好。如企業(yè)的主頁沒內(nèi)容或不更新,企業(yè)的信息不那么容易得到,企業(yè)信息人員給人的形象不好,效勞不好等。這些不好的形象將會給客戶一種印象,即企業(yè)的管理水平不高。從而使客戶對企業(yè)的產(chǎn)品失去信心。信息系統(tǒng)也要時刻注意自己的形象,使之和企業(yè)的形象能在藝術上融合。8.1.4按照具體程度分類的系統(tǒng)集成按具體程度可將系統(tǒng)集成分為概念集成、邏輯集成和物理集成。形象地說概念集成是看不見摸不著的;邏輯集成是看得見摸不著的;而物理集成是看得見摸得著的。它們一個比一個更具體,但從重要性來說概念集成是最重要的,是決定一切的。概念集成是最高層抽象思維的集成。一般來說它是定性的藝術的,它確定了解決問題的總體思路。例如有個公司想搞自己的辦公自動化,有的說照搬IBM;有的說照搬HP公司,至于到底仿照誰,很難用科學公式證明誰最好。這與該公司的環(huán)境關系很大,甚至與非技術環(huán)境關系也很大。例如這兩家公司關系好,相互信任等。所以構成概念集成的依據(jù)是經(jīng)驗和知識,我們可以將這個過程用一個圖來做概念上的說明,見圖8-1現(xiàn)實問題的狀況返回現(xiàn)實狀況的表達邏輯集成概念集成邏輯表達匹配物理集成經(jīng)驗與知識索取規(guī)那么和公式

圖8-1概念集成由圖8-1我們可以看出,現(xiàn)實問題總要經(jīng)過人的表達,根據(jù)這種表達提取經(jīng)驗與知識,接著就要進行概念的集成,首先是定性的給出解決問題的思路,有可能的話,給出定量的邊界,勾畫出系統(tǒng)集成的模型或框架。然后再利用深入的知識,包括規(guī)那么和公式,將其深化成為邏輯集成模型,利用邏輯集成模型和狀況表達比較,以確定集成方案能否很好地解決這個問題,然后再進行物理集成和實現(xiàn)。只有由概念到邏輯,再到物理集成這條路,才能真正做到最優(yōu)集成。8.1.5集成策略集成策略是進行集成的執(zhí)行途徑。往往由于集成策略的不正確,很好的集成思想無法得到實現(xiàn)。什么是集成策略,我們可以舉幾個例子說明。例如某個信息系統(tǒng)公司向用戶推行其系統(tǒng),其策略可能有以下幾種:·共同開發(fā)用戶介入到起動、開發(fā)以及集成各個階段。·效勞于用戶用戶只介入起動和集成。·推向用戶用戶介入開發(fā)和集成。·賣給用戶用戶只介入集成。·征用用戶用戶只介入開發(fā)。由此我們可以看出不同策略差異會很大,不同策略將導致不同的結果。我們這里指的集成策略包括三階段的組合:教育用戶、系統(tǒng)裝設、應用集成。

(1)教育用戶是系統(tǒng)集成的最重要的階段。首先是開發(fā)者和用戶的溝通。使開發(fā)者了解和熟悉用戶,讓用戶了解系統(tǒng)知識和信息技術的潛能。培訓過程是思想接近的過程,培訓過程是建立概念集成共識的過程,當然培訓也包括知識傳授的過程。教育方式不同,內(nèi)容不同,將決定集成策略的成功與否。往往由于這個階段準備缺乏而造成以后的夾生飯。(2)系統(tǒng)裝設。這是技術集成、信息集成的主要階段,它不僅要實現(xiàn)聯(lián)通,而且要實現(xiàn)信息集成。這里既有總體上的問題,也有技術細節(jié)問題,即便一個很小的細節(jié),例如漢字系統(tǒng)不兼容,也可能造成系統(tǒng)的巨大缺陷。這里也有許多具體的作法,組成不同的策略。

(3)應用集成這是組織集成、人員集成的主要階段。通過這階段做到組織和系統(tǒng)的無縫結合。組織和人員會感到系統(tǒng)使用得心應手,各種功能能得到開展。應用集成一般要規(guī)定一些評價指標,通過這些指標可以檢驗是否到達集成。這種衡量要涉及到系統(tǒng)、用戶、環(huán)境和問題。要檢驗些什么呢?例如:系統(tǒng)對企業(yè)管理觀念的改變,系統(tǒng)對企業(yè)運營過程的改變,系統(tǒng)對企業(yè)生產(chǎn)率的改善,以及系統(tǒng)本身的一些指標,如響應時間、運行本錢的改善等。8.2CASE開發(fā)工具與平臺目前,CASE工具(ComputerAidedSoftwareEngineering,計算機輔助軟件工程)已有不少。本節(jié)從CASE開發(fā)工具的概念出發(fā),介紹開發(fā)工具的根本結構、根本功能、分類,典型的開發(fā)工具及一個具體的CASE工具。8.2.1軟件開發(fā)工具的概念軟件開發(fā)工具是一個比較新的技術領域。工具是指進行生產(chǎn)勞動時使用的器具,如鋸、犁等等,也引伸為用以到達目的的事物,如語言是人們交流思想的工具;從字面上講,軟件工具是幫助人們開發(fā)軟件的工具。開發(fā)軟件當然離不開紙和筆,也離不開計算機硬件設備以及操作系統(tǒng)、匯編程序、編譯系統(tǒng)等軟件。但是,一般不把它們歸入軟件開發(fā)工具的范圍。目前,軟件開發(fā)工具是指在第三代語言根底上,在軟件開發(fā)各個階段幫助開發(fā)者提高工作質(zhì)量和效率的一類新型軟件。在理解這一概念時,我們強調(diào):它是一種軟件;它是繼高級程序語言之后,軟件技術進一步開展的產(chǎn)物;它的目的是在軟件開發(fā)過程的不同方面給予人們不同程度的支持和幫助。在軟件開發(fā)中,開發(fā)者所做的工作離硬件越來越遠,而離用戶越來越近。人們把更多的工作交給計算機去做,使自己解放出來。早期階段,開發(fā)者把用戶已經(jīng)明確表達出來的算法,用機器語言寫成一系列的機器指令,交給機器運行。機器指令是難以記憶的、枯燥的“0〞、“1〞字符串。這樣的程序有如天書,讀和寫都很困難。匯編語言采用英語中有一定意義的單詞或單詞的縮寫代替“0〞、“1〞字符串,向人類語言靠近了一步,而把匯編指令向機器指令的轉換交給機器去完成,匯編語言這個"工具"減輕了人們開發(fā)軟件的勞動強度。同時,操作系統(tǒng)的出現(xiàn),把原來由操作員直接擔負的大局部職責,如內(nèi)存管理、作業(yè)管理、處理機管理等等,交給計算機系統(tǒng)管理,進不步改善了人們應用計算機的條件。高級程序設計語言更接近人類習慣的自然語言,它的出現(xiàn)是計算機廣泛應用的條件之一。隨著計算機在各行各業(yè)的廣泛應用,處理的問題越來越復雜,軟件開發(fā)的任務和性質(zhì)發(fā)生了變化。因為高級語言不是人類的自然語言,不僅非專業(yè)程序員仍不易掌握,而且大型系統(tǒng)的編程對專業(yè)程序員也是繁重的負擔。多數(shù)應用領域中的用戶只能用本行業(yè)的方式表達他們的需求,這種表達與可以直接編程的算法還有很大差距。編寫程序已經(jīng)不是軟件開發(fā)的主要工作,在編程之前,還有大量的工作要做。在大型軟件系統(tǒng)的開發(fā)中,除需求分析、系統(tǒng)設計、編寫程序之外,文檔編寫以及工程本身的管理也是十分繁重的任務。人們研制了種種開發(fā)工具,以期提高工作質(zhì)量和效率,改變軟件生產(chǎn)的手工業(yè)方式。8.2.2軟件開發(fā)工具的類別可以從不同的角度對軟件開發(fā)工具進行分類。按支持工作階段的不同分類可以分為需求分析工具、設計工具、編碼工具、測試工具、運行維持工具和工程管理工具。(1)需求分析工具需求分析工具是在系統(tǒng)分析階段用來嚴格定義需求規(guī)格的工具,能將應用系統(tǒng)的邏輯模型清晰地表達出來。由于系統(tǒng)分析是系統(tǒng)開發(fā)過程中最困難的階段,它的成功與否往往是決定系統(tǒng)成敗的關鍵,因此需求分析工具應包括對分析的結果進行一致性和完整性檢查,發(fā)現(xiàn)并排除錯誤的功能。屬于系統(tǒng)分析階段的工具主要包括數(shù)據(jù)流程圖(DFD)繪制與分析工具、圖形化的E-R圖編輯和數(shù)據(jù)字典的生成工具、面向對象的模型與分析工具以及快速原型構造工具等。例如美國LogicWorks公司的ERwin和BPwin就是基于數(shù)據(jù)結構設計方法的雙向的數(shù)據(jù)庫設計工具,它能進行E-R圖的繪制,直接生成各種數(shù)據(jù)庫的關系模式,還能從現(xiàn)有的數(shù)據(jù)庫應用系統(tǒng)生成相應的E-R圖。(2)設計工具設計工具是用來進行系統(tǒng)設計的,將設計結果描述出來形成設計說明書,并檢查設計說明書中是否有錯誤,然后找出并排除這些錯誤。其中屬于總體設計的工具主要是系統(tǒng)結構圖的設計工具;詳細設計的工具主要有HIPO圖工具、PDL支持工具、數(shù)據(jù)庫設計工具及圖形界面設計工具等。(3)編碼工具在程序設計階段,編碼工具可以為程序員提供各種便利的編程作業(yè)環(huán)境。屬于編碼階段的工具主要包括各種正文編輯器、常規(guī)的編譯程序、鏈接程序、調(diào)試跟蹤程序以及一些程序自動生成工具等,目前廣泛使用的編程環(huán)境是這些工具的集成化環(huán)境。在數(shù)據(jù)庫應用開發(fā)方面還有支持數(shù)據(jù)訪問標準化的軟件工具,比方美國INTERSOLV公司的ODBC(開放數(shù)據(jù)庫互連方案)產(chǎn)品能支持多種異構數(shù)據(jù)源和各種操作系統(tǒng),它提供的統(tǒng)一編程接口的開發(fā)環(huán)境防止了涉及訪問和操作眾多的DBMS的具體細節(jié),使在某種平臺上開發(fā)的DBMS應用可方便地移植到其他平臺上并支持多達35種不同的數(shù)據(jù)源。(4)測試工具軟件測試歷來是軟件質(zhì)量的保證,它是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程。測試工具應能支持整個測試過程,包括測試用例的選擇、測試程序與測試數(shù)據(jù)的生成、測試的執(zhí)行及測試結果的評價,而目前很多應用系統(tǒng)是client/server(客戶/效勞器)環(huán)境,實際環(huán)境中每個client站點的軟硬件配置可能不同,而且在運行過程中,效勞器都有許多客戶機并發(fā)訪問,因此測試工具功能還應包括并發(fā)用戶數(shù)對性能的影響、效勞器數(shù)據(jù)量對性能的影響、多個客戶端應用對相互之間的沖突和死鎖及網(wǎng)絡配置對應用的影響等。屬于測試階段的工具有靜態(tài)分析器、動態(tài)覆蓋率測試器、測試用例生成器、測試報告生成器、測試程序自動生成器及環(huán)境模擬器等。在Windowsclient/server應用領域較出色的產(chǎn)品有美國SQA公司的SQASuite,其中SQATeamTest提供客戶瑞圖形用戶界面(GUI)應用的自動化測試手段,SQAclient/server用于多用戶并發(fā)運行情況下的測試。(5)運行維護工具運行維護的目的不僅是要保證系統(tǒng)的正常運行,使系統(tǒng)適應新的變化,更重要的是發(fā)現(xiàn)和解決性能障礙。屬于軟件運行維護階段的工具主要包括支持逆向工程(reverse-engineering)或再造工程(reengineering)的反匯編程序及反編譯程序、方便程序閱讀和理解的程序結構分析器、源程序到程序流程圖的自動轉換工具、文檔生成工具及系統(tǒng)日常運行管理和安時監(jiān)控程序等。(6)工程管理工具軟件工程管理貫穿系統(tǒng)開發(fā)生命周期的全過程,它包括對工程開發(fā)隊伍或團體的組織和管理,以及在開發(fā)過程中各種標準、標準的實施。具體講,有工程開發(fā)人員和本錢估算、工程開發(fā)方案、工程資源分配與調(diào)度、軟件質(zhì)量保證、版本控制、風險分析及工程狀態(tài)報告和跟蹤等內(nèi)容。目前支持工程管理的常用工具有PERT圖工具、Gantt圖工具、軟件本錢與人員估算建模及測算工具、軟件質(zhì)量分析與評價工具以及工程文檔制作工具、報表生成工具等。在這個領域中INTERSOLV公司的產(chǎn)品PVCS就是一套標準的軟件開發(fā)管理系統(tǒng),它是一個集成環(huán)境,覆蓋了開發(fā)管理領域的所有重要問題。按集成程度分類可以分為專用工具和集成化工具。專用工具是支持某一工作階段或某一工作任務的,而集成化工具那么是支持軟件開發(fā)全過程的。目前,多數(shù)工具是專用的,真正集成化工具不多。這反映出人們對軟件開發(fā)工具的研究還處于十分初級的階段。按與計算機系統(tǒng)的關系分類可以分為依賴于特定的計算機系統(tǒng)的工具與獨立于計算機系統(tǒng)的工具。一般來說,設計工具往往是依賴于特定軟件的,分析工具與方案工具那么往往獨立于計算機。例如,ORACALE的代碼生成器CASE所生成的代碼必然是ORACALE的代碼,而計算機系統(tǒng)HP/9000上的4GL生成的代碼是在HP/9000上運行的代碼。8.2.3軟件開發(fā)工具的根本功能與一般結構軟件開發(fā)工具的種類繁多。有的工具只是對軟件開發(fā)過程的某一方面域某一個環(huán)節(jié)提供支持,有的對軟件開發(fā)提供比較全面的支持。功能不同,結構當然也不同。我們以具有綜合支持能力的工具為背景,討論它應具備的功能和結構。1.根本功能軟件開發(fā)工具的根本功能可以歸納為以下五個方面:(1)提供描述軟件狀況及其開發(fā)過程的概念模式,協(xié)助開發(fā)人員認識軟件工作的環(huán)境與要求、管理軟件開發(fā)的過程。(2)提供存儲和管理有關信息的機制與手段。軟件開發(fā)過程中涉及眾多信息,結構復雜,開發(fā)工具要提供方便、有效的處理這些信息的手段和相應的人機界面。(3)幫助使用者編制、生成和修改各種文檔。開發(fā)過程中大量的文字材料、表格、圖形常常使人望而卻步,人們企望得到開發(fā)工具的幫助。(4)生成代碼,即幫助使用者編寫程序代碼,使用戶能在較短時間內(nèi)半自動地生成所需要的代碼段落,進行測試和修改。(5)對歷史信息進行跨生命周期的管理,即管理工程運行與版本更新的有關信息,以便于信息與資源的充分利用。完整的、一體化的開發(fā)工具應當具備上述功能。現(xiàn)有的多數(shù)工具往往只實現(xiàn)了其中的一局部。2.一般結構軟件開發(fā)工具的一般結構如圖8-2所示。總控局部及人機界面、信息庫(repository)及其管理、代碼生成及文檔生成、工程管理及版本管理是構成軟件開發(fā)工具的四大技術要素。(1)總控局部及人機界面。總控局部及人機界面是使用者和工具之間交流信息的橋梁。一個好的開發(fā)工具,不僅能幫助使用者完成具體的開發(fā)任務,而且能引導試用者熟悉和掌握科學的開發(fā)方法。人機界面的設計應遵循三條原那么:第一是面向用戶的原那么。開發(fā)工具的用戶主要是系統(tǒng)開發(fā)人員,必須充分考慮這些人員的使用要求和工作習慣。第二是保證各局部之間信息的準確傳遞。無論是由分散的軟件工具集成為一體化的工具,還是有方案地統(tǒng)一開發(fā)的一體化工具,各局部之間信息的準確傳遞,都是正常工作的根底。實現(xiàn)信息的準確傳遞,在于信息的全面分析和統(tǒng)一規(guī)劃。這與信息庫的管理密切相關。第三是保證系統(tǒng)的開放性和靈活性。軟件開發(fā)過程的復雜性決定了開發(fā)工具的多樣性和可變性。因此,軟件開發(fā)工具常常需要變更和組合,如果系統(tǒng)不具備足夠的靈活性和開放性,就無法進行必要的剪裁和改造,它的使用也就有很大的局限性。用戶總控人機界面系統(tǒng)狀況設計成果運行狀況工程版本使用查詢一致性維護錄入更新聯(lián)機查詢文檔生成代碼生成其他輸出信息庫管理信息庫

圖8-2軟件開發(fā)工具的一般結構(2)信息庫及其管理信息庫也稱為中心庫、主庫等。本意是用數(shù)據(jù)庫技術存儲和管理軟件開發(fā)過程的信息。信息庫是開發(fā)工具的根底。信息庫存儲系統(tǒng)開發(fā)過程中涉及四類信息。第一類是關于軟件應用領域與環(huán)境狀況(系統(tǒng)狀況)的;包括有關實體及相互關系的描述,軟件要處理的信息種類、格式、數(shù)量、流向,對軟件的要求,使用者的情況、背景、工作目標、工作習慣,等等。這類信息主要用于分析、設計階段,是第二類信息的原始材料。第二類是設計成果,包括邏輯設計和物理設計的成果,如數(shù)據(jù)流程圖、數(shù)據(jù)字典、系統(tǒng)結構圖、模塊設計要求等等。第三類是運行狀況的記錄,包括運行效率、作用、用戶反映、故障及其處理情況等。第四類是有關工程和版本管理的信息,這類信息是跨生命周期的,對于一次開發(fā)似乎作用不太大,但對于持續(xù)的、不斷更新的系統(tǒng)那么十分重要。信息庫的許多管理功能是一般數(shù)據(jù)庫管理系統(tǒng)己經(jīng)具備的,作為開發(fā)工具的根底,在以下兩方面功能更強。一是信息之間邏輯聯(lián)系識別與記錄。例如,當數(shù)據(jù)字典中某一數(shù)據(jù)項發(fā)生變化時,相應的數(shù)據(jù)流程圖也必須隨之發(fā)生變化,為此,必須"記住"它們之間的邏輯聯(lián)系。二是定量信息與文字信息的協(xié)調(diào)一致。信息庫中除了數(shù)字型信息之外,還有大量的文字信息,這些不同形式的信息之間有密切的關系。信息庫需要記錄這些關系。例如,某個數(shù)字通過文檔生成等功能寫進了某個文字材料中,當這個數(shù)字發(fā)生變化時,利用這種關系從這個文字材料中找出這個數(shù)字并進行相應的修改;除此之外,歷史信息的處理也是信息庫管理的另一個難點。從開發(fā)工具的需要來講,歷史信息應盡可能保存。由于這些信息數(shù)量太大,而且格式往往不一致,其處理難度較大。(3)文檔生成與代碼生成除了通過屏幕對話之外,使用者從軟件開發(fā)工具得到的主要幫助是生成代碼和文檔。文檔生成器、代碼生成器是早期開發(fā)工具的主體,在一體化的工具中也是不可缺少的組成局部。圖8-2是代碼生成器(codegenerator)的根本輪廓。生成代碼依據(jù)三方面的材料:一是信息庫中的資料,如系統(tǒng)的總體結構、各模塊間的調(diào)用關系、根底的數(shù)據(jù)結構、屏幕的設計要求等等;二是各種標準模塊的框架和構件,如報表由表名、表頭、表體、表尾、附錄組成,報表生成器就預先設置了一個生成報表的框架;三是通過屏幕輸入的信息,例如生成一個報表,需要通過屏幕輸人有關的名稱、表的行數(shù)等參數(shù)。用戶人機界面信息庫管理模塊代碼生成器框架組件代碼信息庫

圖8-2代碼生成器代碼生成器輸出的代碼可以是某種高級程序設計語言的代碼或某種機器語言環(huán)境下的代碼。輸出高級程序設計語言的代碼,使用者可以進一步修改加工,形成自己需要的程序。輸出機器語言代碼可以直接運行,但不能修改,對計算機軟硬件環(huán)境的依賴性很大,所以這種方式不如前一種方式使用得多。需要強調(diào)的是:工具只能發(fā)揮幫助和支持的作用,不能完全代替人的工作。文檔形成的功能比代碼生成更復雜一些。文檔是給人看的,必須符合人的工作習慣與要求,否那么沒有實用價值。文檔有文章、表格、圖形三大類。表格比較容易按信息庫當前的內(nèi)容輸出。隨著計算機繪圖功能越來越強,畫圖也不是困難問題了。文章最難處理。目前的文檔生成器,大多數(shù)只能提供一個標準的框架,提醒人們完整地、準確地表達設計思想。(4)工程管理與版本管理工程管理與版本管理是跨生命周期的信息管理,關鍵是歷史信息的處理。在大型軟件開發(fā)過程中,各個階段的信息要求不同。例如在系統(tǒng)分析時,重點是弄清系統(tǒng)的功能要求,對某些環(huán)境因素往往容易無視。到了系統(tǒng)設計階段,可能發(fā)現(xiàn)某個因素對設計影響很大,但信息庫中的內(nèi)容不能滿足要求,需要補充調(diào)查,這樣,不僅影響進度,還必須對文檔進行修改。針對這些情況,一些研究者提出了以工程數(shù)據(jù)庫為中心來解決問題的思路。工程數(shù)據(jù)庫記錄工程進展的各種有關信息,如各階段的預期進度、實際進展情況。工程負責人應隨時掌握這些情況,發(fā)現(xiàn)問題,組織解決。關于版本的信息,主要內(nèi)容有各版本的編號、功能改變、模塊組成、文檔狀況、產(chǎn)生時間、用戶數(shù)量、用戶反映等。它也可以作為工程數(shù)據(jù)庫的一局部來處理。8.2.4實用軟件開發(fā)工具介紹下面簡單介紹一些實用的開發(fā)工具:主要是系統(tǒng)實施階段用于程序編制的開發(fā)工具。1.可視化編程工具。可視化編程工具的典型代表有VB(VisualBasic〕和Delphi,它們是Windows環(huán)境中最快的Windows用程序生成工具。可視語言和可視編程使用戶只關心特定問題的解決,而不再被計算機及計算機語言所困擾,大大簡化了程序員的編程。VB是第一個實用可視編程的工具。它除具有可視化編程環(huán)境的根本功能外,還包含功能強大的數(shù)據(jù)庫管理功能,可以方便地創(chuàng)立數(shù)據(jù)庫應用程序;它支持多用戶,以面向事務方式對不同格式數(shù)據(jù)庫進行存取,并率先支持對象鏈接與嵌人OLE及32位編程;它支持ODBC,并可嵌入SQL,大大減輕了編程工作。Delphi由BorlandPascal開展而來,繼承其全功能平臺特性,彌合不可視化與全功能平臺之間的鴻溝。它具有編譯效率高,可執(zhí)行代碼質(zhì)量高等優(yōu)點,在面向數(shù)據(jù)庫根底上,可以開發(fā)出任何要求的應用程序,它可以同時與ODBC數(shù)據(jù)源(如Oracle,Sybase等)連接并訪問數(shù)據(jù),還可通過ODBC與其他一些數(shù)據(jù)連接。2.數(shù)據(jù)庫管理系統(tǒng)開發(fā)工具及語言常用的DBMS主要面向關系型數(shù)據(jù)庫,即RDBMS。RDBMS產(chǎn)品經(jīng)歷了從集中式到分布式、從單機環(huán)境到網(wǎng)絡壞境、從支持信息管理和輔助決策到聯(lián)機事務處理的開展過程。目前各種RDBMS產(chǎn)品的工具都己進入4GL及圖、文、聲、像并舉的時代,快捷的應用開發(fā)工具和生成工具唾手可得,第三方數(shù)據(jù)庫開發(fā)工具也是應有盡有。常用產(chǎn)品有Borland公司推出的dBASE5.OforWindows;Microsoft公司的、、等中小型應用數(shù)據(jù)庫。有OracleIngres,Sybase,Imformix等功能完善、結構先進的大型DBMS;還有UNIFACE,Powerbuilder等架構在前類DBMS產(chǎn)品之上的,能提供更豐富的開發(fā)環(huán)境的第三方數(shù)據(jù)庫開發(fā)工具,這類產(chǎn)品還具有一定的互連各廠家數(shù)據(jù)庫產(chǎn)品的功能。dBASE5.OforWindows在原有強大的數(shù)據(jù)庫操作及編程能力的根底上,加人面向對象的開發(fā)環(huán)境,提供Client/server應用程序開發(fā)能力,處理的數(shù)據(jù)類型包括聲音、圖像等二進制數(shù)據(jù)及OLE數(shù)據(jù)類型,可開發(fā)多媒體應用程序。它與DOS版的完全兼容,還提供工具將DOS應用程序轉換為Windows應用程序。VisualFoxpro將可視化編程技術引人4GL語言編程環(huán)境,使數(shù)據(jù)庫管理應用軟件的開發(fā)更簡捷。其面向對象編程技術的引入,增強了開發(fā)大型應用軟件的能力,彌補了以前其他版本的缺陷。Powerbuilder是數(shù)據(jù)庫應用開發(fā)的強大可視化工具,它由美國PowerSoft:公司按照Client/server體系結構研制設計,采用面向對象技術和圖形化的應用開發(fā)環(huán)境,是數(shù)據(jù)庫的前端開發(fā)工具。它同時支持各種數(shù)據(jù)庫管理系統(tǒng),其語言為PowerScript,是于個功能很強的類Base4GL語言,簡單易學,開發(fā)人員可以不需精通其他專用語言而直接轉向面向對象軟件開發(fā)。該工具在國內(nèi)使用很廣,可以說是大型關系數(shù)據(jù)庫前端應用軟件的理想開發(fā)平臺。如果制作多平臺數(shù)據(jù)庫應用軟件,理想的開發(fā)工具是荷蘭Uniface公司推出的UNIFACE。它作為第四代開發(fā)環(huán)境,可以開發(fā)出獨立于硬件平臺、操作系統(tǒng)及數(shù)據(jù)庫和網(wǎng)絡環(huán)境的應用軟件,使應用程序透明地運行于傳統(tǒng)的宿主式處理系統(tǒng)與Client/server結構體系之間,用戶在本地工作站開發(fā)的應用程序可以不加修改地運行于網(wǎng)絡系統(tǒng)中。其他各數(shù)據(jù)庫廠商在自己的數(shù)據(jù)庫產(chǎn)品上也提供有開發(fā)工具;但不具有普遍性,使用相對復雜,不靈活,針對性很強,所以應用面相對較窄。開發(fā)人員可以根據(jù)實際需求選擇適宜的產(chǎn)品,以完成應用系統(tǒng)的開發(fā)。3.MIS生成工具在我國,隨著計算機應用的深入普及,越來越多的單位希望能開發(fā)出適合本單位需求的計算機管理信息系統(tǒng),但我們的MIS專業(yè)隊伍不能滿足日益擴大的需求,因此各種微機MIS應用生成工具大量涌現(xiàn),如雅奇MIS、王特MIS等,它們的出現(xiàn)既提高了專業(yè)人員的開發(fā)速度,也使非專業(yè)人員自行開發(fā)一絲不太復雜的系統(tǒng)成為可能。這些生成工具具有共同的特點,一般都是基于DOS,Windows數(shù)據(jù)庫管理系統(tǒng),用戶采用快速原型開發(fā)模式,在面向對象的可視化交互設計環(huán)境中,把自己業(yè)務范圍的相關數(shù)據(jù)和功能用生成工具建立成數(shù)據(jù)庫,選擇、生成相應的功能構件(如窗口界面元素、錄入維護、查詢統(tǒng)計、報表計算打印、代碼維護、封面設計等),最后,用掛接技術將數(shù)據(jù)庫和功能構件封裝起來,就生成了一個數(shù)據(jù)庫應用系統(tǒng)。這類MIS應用生成工具與國外的產(chǎn)品相比具有一些優(yōu)點,如中文處理能力強,報表輸出符合國情,價格低廉,簡單易用等。對于結構化較強、靜態(tài)數(shù)據(jù)占主導地位的業(yè)務流程相對單純的小型系統(tǒng)來說,利用它們可以收到較好的效果。但對于業(yè)務處理靈活,對數(shù)據(jù)庫管理要求較高,或多個子系統(tǒng)關聯(lián)密切的大型應用,目前的工具就不適用了。8.2.5一個case工具應用前面已經(jīng)從整體上對CASE工具作了一個說明,本小節(jié)將介紹一個具體的工具一Intellicorp的LiveModel和PowerModel,兩者合并叫Modelworks。Intellicorp最初發(fā)行的是專家系統(tǒng)。后改變方向,發(fā)行系統(tǒng)研制工具。于1991年發(fā)行了KappaSystems,一個面向對象的應用研制環(huán)境。1996年新版改名為PowerModel。后又于1994發(fā)行個可利用Kappa的面向對象集成工具,1996年新版改名為LiveModel。兩者合并在一起,叫Modelworks。我們選用這兩個軟件是因為本書是講信息系統(tǒng)開發(fā)與設計的,這兩個軟件連起來用,就提供了從系統(tǒng)分析直到實現(xiàn)(編程)的研制環(huán)境,而且更有關的是它們都是可視化、速成化和組件化的研制工具。PowerModelSystems是一個可視化、速成化和組件化的研制面向對象顧客/效勞者系統(tǒng)的環(huán)境,能產(chǎn)生C程序。PowerModel本身是一個優(yōu)良的應用研制環(huán)境,同時也可作為中介軟件,適用于把CASE工具、GUI構造程序以及DBMS集成在一起。PowerModel配有它自己的GUI構造程序,它產(chǎn)生的程序能跨平臺地在UNIX和Windows下運行。它的第3版還能與C++成員方法(函數(shù))交互操作。和其他可視化、速成化和組件化的應用研制環(huán)境一樣,PowerModel己有一套性能強的GUI繪制工具。繪成GUI可在UNIX工作臺上運行的XWindows和PC機上運行的Windows下完全地相互移植。新版PowerModel能在許多UNIX系統(tǒng)和Windows下運行;并可作為WorldWideWeb上的效勞者。PowerModel的體系結構是模塊式的、分屬的,其基層是核心層。包括一套核心功能程序,如對象管理程序、對象查詢語言等;連同一全套的C語言API〔應用程序接口〕。基層上面的一層是研制層,其中有GUI構造程序,對象瀏覽程序以及交互的C.環(huán)境。最頂層那么為應用層,其中有研制者編制的類和方法(程序)以及各種類庫,包括專門窗戶系統(tǒng)用的一套GUI組件。這樣分層,分模塊的好處是,應用時只取用在執(zhí)行時需要從系統(tǒng)中取用局部,從而就能得到小而有效灼程序。此外,這種開放的、模塊式的設計便于擴充和易于修改。PowerModel實現(xiàn)了面向對象的根本原那么,支持多親繼承,核心層的對象管理程序可支持圖形瀏覽,變互執(zhí)行等。PowerModel的可視研制環(huán)境可使用圖形洲覽、交互執(zhí)行,等等,快而好地把所需程序研制出來。這個可視研制環(huán)境是速成的、累增的、雛形演進的,也就是說,研制模型(雛形)是可執(zhí)行的,能立即反響,聽取用戶意見。PowerModel用C語言和自制的Protalk兩種語言。Protalk是一種高級語言;是吸取過程、面向對象和4GL三種語言之長而成的雜種語言,其語法是專為設計和使用PowerModel對象之用。實際上PowerModel是用Protalk來支持面向對象的。對象內(nèi)方法可用C或Protalk編寫。Protalk程序模塊嵌套在C程序內(nèi),反之亦然。Protalk內(nèi)有一套對象查詢和對象模樣匹配的有力引擎。提供像SQL對數(shù)據(jù)庫的功能。Protalk內(nèi)還有一個全功能的規(guī)那么系統(tǒng)供編程時編寫業(yè)務規(guī)那么和公司政策。PowerModel可動態(tài)地生成SQL,把記錄和表映射為PowerModel對象。關系數(shù)據(jù)庫和PowerModel對象間可雙向地交換數(shù)據(jù)。繼PowerModel之后而發(fā)行的LiveModel,是一個利用PowerModel而建成的面向對象的CASE工具。它是反響當時CASE工藝水平的面向對象CASE工具,與PowerModel集成在一起就是全面從分析到實現(xiàn)的系統(tǒng)研制工具。它是用Martin和Odell的面向對象信息工程方法回來建立模型的。這個模型是用可視工具建立的,而且能馬上執(zhí)行;其反響信息甚至可以返回分析階段去重復。建立的業(yè)務規(guī)那么也能執(zhí)行,這些稱便于設計以及分析階段中反響,便于研制人員之間以及與用戶交換意見。所以總起來講,PowerModel是一個速成的、可視的和組件化的面向對象CASE工具。它可以用于單機系統(tǒng)的研制,更可以用于面向對象客戶/效勞器系統(tǒng)的研制。LiveModel提供以下一套全面的面向對象工具,供使用不同的建模技術,來可視地建成一個應用的所有各方面。1.對象繪圖器〔ObjectDiagrammer〕ObjectDiagrammer是用以圖象建立對象,并規(guī)定他們之間的關系。它還能支持現(xiàn)有對象的再用。對象和類之間的關系中規(guī)定的有三種:即聯(lián)系,概括和聚集。對象和類之間的這三種關系是規(guī)定必須可視地在圖中表示出來的。至于對象和類的屬性在需要時,也可列示出來,這樣對象的定義就可以反復地進行。LiveModel中對象圖立即能翻譯成PowerModel中對象類層次結構圖。2.事件繪圖器〔EventDiagrammer〕EventDiagrammer是用以表示業(yè)務過程流,即業(yè)務過程、操作以及規(guī)那么之間的連接。業(yè)務過程用以下三個簡單而易懂的元素來表示。1〕事件。事件是一種刺激,如顧客交來定貨單,或雇傭一人員。一個事件啟動一個觸發(fā)器。2)觸發(fā)器。觸發(fā)器根據(jù)業(yè)務規(guī)那么決定要啟動哪個操作。例如,在銀行存款業(yè)務中,一個觸發(fā)器可啟動一個操作,來核對存戶余額是否足夠支付其提款。這類操作轉過來又可啟動其他事件。3〕操作,它是指一個可用C或Protalk編寫的方法,或用GUI構造的程序,或用外部程序來實現(xiàn)的業(yè)務過程。用EventDiagrammer可直接把所需部件布置和連接起來,以建立業(yè)務過程流;而不考慮如何實現(xiàn)。跟著設計的演進,可把這個模型中的元素聯(lián)系于實現(xiàn)的對象、方法、圖像的數(shù)據(jù)輸入屏等等。這個(事件)模型從建立之初就是“活動〞的,而且能執(zhí)行。可用此模型來執(zhí)行業(yè)務過程;并在設計演進過程中用它來核實設計是否符合要求;這種活動而且能執(zhí)行的模型是一種速成的、可視的和組件的研制環(huán)境。3.業(yè)務規(guī)那么〔BusinessRules〕以及規(guī)那么編輯程序〔RuleEditor〕業(yè)務規(guī)那么中記載著有用的業(yè)務政策和決定。在傳統(tǒng)的信息系統(tǒng)中,這些規(guī)那么都埋藏在應用程序之中,因而就不易識別和修改、在LiveModel中,業(yè)務規(guī)那么那么為可見而明顯的對象。是用結構化英語編寫的。業(yè)務規(guī)那么寫成后,就立即從結構化英語翻譯成Protalk;而且總是“活的〞且能執(zhí)行。業(yè)務規(guī)那么是用規(guī)那么編輯程序編寫并存擋的。規(guī)那么中每條短句均用其合法詞組。規(guī)那么編輯程序即用這些合法詞組的一個上下文有關的表來編造規(guī)那么。這個程序還提供注釋項,供記載一個規(guī)那么的意義及其修改歷史。4.測試〔Testing〕以及文檔建立〔Documentation〕在整個研制過程中LiveModel所有的圖都是“活的〞并能執(zhí)行,能在研制的每階段后,進行累增的測試。LiveModel中建成的各種圖象業(yè)務模型,需要用一套測試數(shù)據(jù),來核實其正確性。情節(jié)管理程序〔ScenarioManager〕就是用以建立和管理測試數(shù)據(jù)(實例)數(shù)據(jù)庫,并用測試實例執(zhí)行已建成的圖象業(yè)務模型,以核實其正確性。在整個研制進程中,隨時都可把測試情節(jié)加進數(shù)據(jù)庫內(nèi)。最后,這數(shù)據(jù)庫就變成一個典型的和例外情況的實例的完備的庫。分析員和研制人員用這套數(shù)據(jù),測試各階段的成果,就能保證演進中的程序符合各項要求。LiveModel大體是能自建文檔的,它的ReportWriter〔報告編寫程序〕能自動產(chǎn)生各種文檔,包各有關領域的報告以及各種圖表,同時還檢查各圖之內(nèi)以及之間的一致性與完整性。一個面向對象的信息系統(tǒng)有它的靜態(tài)結構與動態(tài)行為,靜態(tài)結構中包括對象和類的屬性(數(shù)據(jù))、操作(靜態(tài)行為)以及對象和類之間的關系。:動態(tài)行為中包括對象和類之間的消息傳送以及對象和類自身因時而變的行為。LiveModel用ObjectDiagrammer以及BusinessRules和RuleEditor描述靜態(tài)結構,而EventDiagrammer和ScenarioManager那么為動態(tài)行為的運行工具。而LiveModel和PowerModel連用,能生成C程序。目前應世的CASE工具商品軟件各有其特色與專長。LiveModel作為CASE工具有其長處,也有缺乏。這里是用LiveModel作為速成的、可視的和組件的研制環(huán)境和工具的一個實際商品軟件的例子。最后,在此需要說明可能被忽略的一點。有的CASE本身就是一個可視的和組件的研制環(huán)境與工具。現(xiàn)有的CASE工具商品軟件中,有些是單機研制環(huán)境與工具,有些是客戶/效勞器系統(tǒng)的研制環(huán)境與工具。8.3基于Web的信息系統(tǒng)的集成開發(fā)環(huán)境8.3.1概述雖然lnternet歷史并不長,但由于它能夠方便靈活地發(fā)布和瀏覽網(wǎng)絡上的超媒體及多媒體信息,因得到了迅速開展。Internet站點和用戶近幾年都呈現(xiàn)指數(shù)增長,而internet信息量中,Web信息又占了絕對多數(shù)。目前,各類機構以及個人都紛紛建立Web站,向社會提供大量信息,同時也從Internet中獲得大量信息。在早期的Internet中,Web信息以靜態(tài)內(nèi)容為主,Web效勞器的根本功能都是直截了當?shù)赝瓿傻模焊鶕?jù)瀏覽器的要求,效勞器查找文檔,如果查到,就將其傳輸出去。當時大多數(shù)網(wǎng)站提供信息的方式是由用戶通過客戶瀏覽器與Web效勞器連接,然后用鼠標點擊超鏈接以瀏覽相關頁面。在此過程中,根本上是效勞器向客戶端單方向的靜態(tài)信息傳遞。隨著內(nèi)容的不斷增長,用戶對Web息效勞提出了更高的要求,促使Web技術向縱深開展。例如,在網(wǎng)上內(nèi)容過多的情況下,用戶要求能對網(wǎng)上信息進行檢索;在某些情況下,如用戶登記、用戶留言中不僅要求效勞器能將信息發(fā)送給用戶,也要求能將用戶信息發(fā)送給效勞器;而Web務器本身是不能實現(xiàn)這些功能的。這是因為,Web信息是按HTML技術方式組織的,而HTML編程語言,只是一種描述語言。用HTML語言編制的文檔本質(zhì)上是靜態(tài)的文本文件,它不能提供實時的動態(tài)信息,不能直接實現(xiàn)動態(tài)查詢、統(tǒng)計等數(shù)據(jù)庫應用,所以需要擴展Web效勞器的功能。Web技術與數(shù)據(jù)庫技術的結合是Web技術開展的一個熱點。將數(shù)據(jù)庫技術與Web結合起來,可以使internet上的信息更加有序化、條理化,便于信息的組織、分類以及利用,同時也使internet中的個性化效勞成為可能。另一方面:internet使數(shù)據(jù)庫的應用和管理突破傳統(tǒng)模式的局限、增添新的活力和優(yōu)勢。基于Web的信息系統(tǒng),是將數(shù)據(jù)庫和Web技術結合,通過瀏覽器訪問數(shù)據(jù)庫并可實現(xiàn)動態(tài)的internet信息效勞系統(tǒng)。利用擴展技術和一些相應的軟件將數(shù)據(jù)庫和Web結合起來,在Web上提供用戶訪問和修改數(shù)據(jù)庫的接口,用戶就能通過瀏覽器在任何地方訪問這些數(shù)據(jù)庫。Web中訪問數(shù)據(jù)庫實際包括兩個方面,一方面是用戶的查詢通過Web提交給數(shù)據(jù)庫,另一方面是數(shù)據(jù)庫將用戶查詢的結果通過Web返回給用戶。一般過程是這樣的:(l)用戶通過填充瀏覽器上用HTML編寫的表格來輸入查詢和數(shù)據(jù)請求。在此,用戶可通過菜單項選擇擇,單擊按鈕,填寫空白等來輸入查詢關鍵字或新的輸入數(shù)據(jù)等。(2)接口程序將輸入到表格中的信息提取出來,并組織成有效的SQL查詢或其它數(shù)據(jù)庫操作命令,隨后將其發(fā)送到數(shù)據(jù)庫后臺。(3)接口程序在數(shù)據(jù)庫引擎對數(shù)據(jù)進行處理后接收結果,并對結果進行組織,再以HTML格式將其傳回到用戶的瀏覽器上,顯示給用戶閱讀。8.3.2基于Web的信息系統(tǒng)的特點在過去的十幾年中,基于傳統(tǒng)Client/Server結構的網(wǎng)絡系統(tǒng)在各類信息系統(tǒng)的開發(fā)中起著舉足輕重的作用。這類網(wǎng)絡系統(tǒng)的特點是資源存放在效勞器端,客戶端通過自己的應用程序存取資源。與以前的各類網(wǎng)絡系統(tǒng)相比較,其優(yōu)點是效勞器與客戶端分工明確、界面友好、開發(fā)周期短,而且在設備的配置上有很大的靈活性。在中小規(guī)模而且相比照較簡單的環(huán)境中,.這種結構的網(wǎng)絡系統(tǒng)的優(yōu)勢非常突出,一直是人們進行系統(tǒng)開發(fā)的首選。但隨著企業(yè)規(guī)模的日益擴大,應用程序復雜程度的不斷提高,傳統(tǒng)的Client/Server模式也逐漸顯示出許多問題,在大規(guī)模且復雜的應用中,用這種模式進行系統(tǒng)開發(fā)往往事倍功半,無法滿足用戶的要求。主要表現(xiàn)在:1〕使用繁雜。在基于Client/Server模式建設的信息系統(tǒng)中,由于界面較專業(yè)化,用戶要經(jīng)過培訓才能學會使用系統(tǒng)。而在實際中,許多用戶尤其是領導,由于時間、接受能力等方面的原因難以去學習一個系統(tǒng)的使用,周而難以直接利用系統(tǒng)檢查和管理工作。此外,不同開發(fā)者開發(fā)的用戶界面風格很不一致,即使是同一開發(fā)者,在不同時期或用不同開發(fā)工具開發(fā)出的用戶界面風格把很不一致,用戶在學習使用一個系統(tǒng)后,再用另一個系統(tǒng)時需要重新學習。這既給系統(tǒng)的推廣帶來很大困難,也造成了時間和費用的浪費。2〕開發(fā)和維護復雜。在傳統(tǒng)的基于Client/Server.模式的信息系統(tǒng)中,除了需要在效勞器端進行大量開發(fā)外,還要在客戶端進行大量開發(fā)。這不僅給軟件實現(xiàn)帶來困難,還給軟件維護造成不便。如果效勞器端應用(如數(shù)據(jù)庫)作了變動,或者是客戶端軟件要增加新的功能或修改用戶界面,那么所有用戶機器上的客戶端都必須作相應的修改,這樣,軟件的應用范圍越廣,軟件的維護就越困難,開銷也越大。在一些跨區(qū)域甚至是跨國的信息系統(tǒng)中,要實現(xiàn)這樣的維護幾乎是不可能的。3〕移植和升級困難。基于傳統(tǒng)的Client/Server模式所采用的軟件產(chǎn)品大都缺乏開放的標準,一般不能跨平臺運行。如果企業(yè)內(nèi)部存在多種平臺,在一種平臺上開發(fā)的應用,要想移植到另一平臺上,需要對源代碼進行大量修改并重新編譯才再運行,有時甚至需要重新開發(fā);在這類系統(tǒng)中,如果需要將系統(tǒng)軟件或應用軟件進行升級,那么必須單獨開發(fā),經(jīng)移植然后升級。盡管目前有些應用開發(fā)工具如VB、PB等可以方便地開發(fā)一個圖形界面的數(shù)據(jù)庫前端,用來訪問數(shù)據(jù)庫;但它們開發(fā)的一般程序不能跨平臺運行。4〕信息共享度低。基于Client/Server模式建設的信息系統(tǒng),一般為封閉式系統(tǒng),需要專門的客戶端軟件才能進人系統(tǒng),不同的系統(tǒng)間無法交流。以往,企業(yè)在討論某些問題時,需要將各部門的領導集中在一起,有時甚至需要把外地的人員召集過來;企業(yè)向上級匯報工作時,需要生成大量的報告和報表;企業(yè)向職工公布新的文件和管理規(guī)定時,需要開會或印發(fā)材料。這些都造成了嚴重浪費和低效率。Internet/Web可以比較圓滿地解決上述問題。Client/Server是一種兩層結構,即效勞器一層,客戶端一層。而Internet/Web那么是一種高級三層結構,其中處在第二層的Web效勞器扮演兩種角色,既是效勞器,又是客戶端,對處于第一層的客戶端瀏覽器而言,它是效勞器;對第三層即數(shù)據(jù)庫效勞器而言,它又是客戶端。在基于Internet/Web的系統(tǒng)中,各用戶端計算機上安裝相同的瀏覽器軟件,網(wǎng)絡另一端高性能計算機上安裝運行Web效勞器軟件和數(shù)據(jù)庫管理系統(tǒng)。用戶根據(jù)瀏覽器顯示的Web頁面信息,用鼠標點擊,即可完成從瀏覽器向效勞器提交效勞請求的動作,這些請求包括對數(shù)據(jù)庫的查詢、修改、插人和刪除等。效勞器端負責對請求進行處理,并將處理結果通過網(wǎng)絡返回到瀏覽器端。基于Internet/Web的信息系統(tǒng)的特點如下:〔1〕使用簡單。基于Internet/Web的信息系統(tǒng)使用很簡單。一般無需培訓。用戶只要會用通用的瀏覽器,通過鼠標即可以訪問文本、圖像、聲音、電影及數(shù)據(jù)庫等信息,特別適合非計算機專業(yè)人員使用。企業(yè)領導檢查部門的工作,只需要用鼠標點擊相關內(nèi)容的鏈接即可。不管什么應用,用戶面對的都是一個瀏覽器,因而不存在使用不同系統(tǒng)重新學習的問題。〔2〕便于開發(fā)和維護。采用Internet/Web模式的系統(tǒng),只需要開發(fā)和維護效勞器端應用程序。客戶端安裝一個通用的Web瀏覽器即可執(zhí)行效勞器上相關的應用程序,不需要進行任何開發(fā)和維護。這既有利于開發(fā)和維護,又統(tǒng)一了用戶界面。〔3〕保護企業(yè)投資。Internet/Web由于采用標準的TCP/IP、HTTP協(xié)議,使它幾乎可以跨越當前的所有平臺。任何平臺上只要安裝一個瀏覽器.就可以訪問Web效勞器,用HTML、Java和JavaScript開發(fā)的應用,可以簡單地移植到任何平臺上,可與企業(yè)現(xiàn)有網(wǎng)絡很好地結合。采用Web效勞器與數(shù)據(jù)庫的連接技術,可以開發(fā)與數(shù)據(jù)庫相關的應用,并可以充分利用企業(yè)原有數(shù)據(jù)庫的內(nèi)容。〔4〕信息共享度高。幾乎各種操作系統(tǒng)上都有Web瀏洲覽器,所以,Internet/Web應用可以方便地實現(xiàn)跨平臺操作。HTML是數(shù)據(jù)格式的一個開放標準,目前大多數(shù)流行的軟件均支持HTML,MIME〔MultipurposeInternetMailExtension〕技術,使得瀏覽器可以訪問多種格式文件。〔5〕可擴展性好。TCP/IP、HTTP的標準性使得Internet/Web模式可直接接入Internet,具有良好的擴展性。〔6〕平安性好。防火墻技術保證現(xiàn)代企業(yè)網(wǎng)絡和信息的平安性。8.3.3Web與數(shù)據(jù)庫接口技術Web與數(shù)據(jù)庫的接口,也就是要實現(xiàn)Internet環(huán)境下對Web數(shù)據(jù)庫的查詢與管理,它一般由客戶機、Web效勞器、Web數(shù)據(jù)庫接口語言和數(shù)據(jù)庫系統(tǒng)四局部組成,如圖8-4所示。圖8-4Web與數(shù)據(jù)庫的接口Web客戶機接口技術HTTP效勞器數(shù)據(jù)庫客戶機數(shù)據(jù)庫系統(tǒng)圖8-4是Web與數(shù)據(jù)庫接口的根本結構圖,在實際中,具體實現(xiàn)這種接口的方法有多種。如:Microsoft、Oracle、Sun等都開發(fā)了專用或公用的Web與數(shù)據(jù)庫的接口技術。從Web數(shù)據(jù)庫的接口的位置來看,我們大致可以將所有接口技術分為兩類:一類是效勞器端接口;另一類是客戶端接口。在前一種接口技術中,Web與數(shù)據(jù)庫的接口在效勞器端完成,客戶機將將請求發(fā)送給效勞器,Web效勞器根據(jù)客戶需求對數(shù)據(jù)庫進行操作,再將操作的結果格式化成相應的HTML頁面發(fā)送給客戶機,如CGI、ASP、PHP以及Oracle的HTP都是采用這種技術。其優(yōu)點是開發(fā)與維護容易、平安性好。缺點一是效勞器負擔較重,二是這類技術并沒脫離HTML的范疇,本質(zhì)上是一樣的,因此其根本功能不超出HTML。后一種接口技術那么是在客戶端實現(xiàn)Web與數(shù)據(jù)庫的接口,它一般是在頁面中參加一個插件,客戶機將插件下載到本地后,再由插件來完成與數(shù)據(jù)庫的交互。這類技術中最典型的是Java的JDBC,另外,ActiveX也采用了這種技術。這類技術的好處是減輕了效勞器的負擔,而且使用靈活,功能強大,但缺點是開發(fā)起來比較困難,而且插件下載速度較慢。另外從Web效勞器與數(shù)據(jù)庫效勞器的位置來看,又可把接口技術分為兩類:一類是Web效勞器與數(shù)據(jù)庫位于同一臺主機上,這類接口包括Web效勞器與一些桌面數(shù)據(jù)庫如ACCESS數(shù)據(jù)庫連接,此時Web效勞器直接與數(shù)據(jù)庫效勞器連接,還包括一些數(shù)據(jù)庫如Oracle等對自身進行Web擴充而形成的Web效勞器,如:OracleWebServer,這種情況下,Web只能與一種數(shù)據(jù)庫進行連接。一類接口那么是Web效勞器與數(shù)據(jù)庫分別位于不同的主機,此時在有Web效勞器的主機上必須安裝有關數(shù)據(jù)庫效勞器的前端工作軟件,Web:效勞器將通過它與數(shù)據(jù)庫效勞器連接。在這種情況下,一個Web效勞器可以同時與不同的主機上的幾個數(shù)據(jù)庫效勞器連接。從Web與數(shù)據(jù)庫接口實現(xiàn)的具體方法來分,接口技術分為以下四類:〔1〕通過CGI實現(xiàn)Web與數(shù)據(jù)庫的接口。利用高級程序語言如VB、PERL、C等編寫CGI程序直接訪問數(shù)據(jù)庫是實現(xiàn)Web與數(shù)據(jù)庫的一種最主要的方法,它由用戶在客戶端填寫HTML表單激活效勞器端的CGI程序來實現(xiàn)遠程數(shù)據(jù)庫訪問。這種方法具有功能強大,易于維護的優(yōu)點,而且很平安,但缺點是CGI編程比較復雜,且Web效勞器開銷大。〔2〕利用Web效勞器具有的數(shù)據(jù)庫客戶功能實現(xiàn)Web數(shù)據(jù)庫接口;如Microsoft的internetInformationServer〔IIS〕、Netscape的EnterpriseServer等。這類效勞器本身就具有提供遠程用戶訪問本地數(shù)據(jù)庫的功能,因此,實現(xiàn)起來比較簡單,但其缺點在于它們并不能支持所有的數(shù)據(jù)庫,而且缺乏靈活性、不易維護,有些Web效勞器對平臺有嚴格的限制。(3)通過增強傳統(tǒng)數(shù)據(jù)庫的Web功能實現(xiàn)Web數(shù)據(jù)庫接口。一些傳統(tǒng)大型數(shù)據(jù)庫為了適應數(shù)據(jù)庫技術的開展,紛紛在其最新版本提供了與Web效勞器的接口。如Informix、Orocle等數(shù)據(jù)庫。如果采用這些數(shù)據(jù)庫,開發(fā)人員只需做少量工作,就可以實現(xiàn)Web數(shù)據(jù)庫,且功能比較完善。但其缺點是數(shù)據(jù)庫價格較高,操作復雜,不適合中小型用戶。〔4〕運用Java語言實現(xiàn)Web數(shù)據(jù)庫接口。作為一種專門用于因特網(wǎng)和Web環(huán)境、面向對象的編程語言,Java語言提供了一套完整的數(shù)據(jù)庫連接方案,即所謂JDBC。客戶機上的瀏覽器可以通過Web接收并運行含有解釋器的Java小應用程序Applet,這樣,原來完全依賴效勞器和CGI程序來處理的工作,就可由Applet在瀏覽器上來分擔一局部。與ODBC類似的JDBC,是Java語言的SQLAPI,它支持Java與數(shù)據(jù)庫的無縫連接。以上四種技術各有優(yōu)缺點,在實際應用中,我們可以根據(jù)具體情況來確定使用哪一種技術。通過對各種接口技術的應用和比較,可以得出如表8-1所示的結果。目前,幾乎所有的HTTP效勞器都支持CGI,它同時具有靈活性和通用性及可多種語言編程的特點,從而得到了廣泛的應用。但是由于其運行效率較低及編程復雜的缺陷,增加了程序員和Web管理員的工作負擔。API〔ApplicationProgramingInterface〕技術雖然運行效率高,但是這些API需要工作在專用Web效勞器和操作系統(tǒng)上,因而缺乏通用性。JDBC作為一種新的接口技術,由于其與平臺的無關性,及Java語言在可移植性,平安性,可靠性等方面的優(yōu)勢,再加上目前所有的數(shù)據(jù)庫廠商在其產(chǎn)品上均支持JDBC標準,因此,JDBC將會成為新的Web效勞器與數(shù)據(jù)庫接口技術的標準,應用將日益廣泛和普及。下面,我們將簡要介紹現(xiàn)在應用比較多的兩種基于Web的數(shù)據(jù)庫開發(fā)技術ASP和PHP。有關具體應用詳見相關書籍。表8-1各種接口的比較8.3.4Web與數(shù)據(jù)庫的接口方法ASP〔ActiveServerPages〕其實是一套微軟開發(fā)的效勞器端腳本環(huán)境,內(nèi)含于和之中,通過ASP我們可以結合HTML網(wǎng)頁、ASP指令和ActiveX元件建立動態(tài),交互且高效的Web效勞器應用程序、有了ASP就不必擔憂客戶的瀏覽器是否能運行你所編寫的代碼,因為所有的程序都將在效勞器端執(zhí)行,包括所有嵌在普通HTML中的腳本程序。當程序執(zhí)行完畢后,效勞器僅將執(zhí)行的結果返回給客戶瀏覽器,這樣也就減輕了客戶端瀏覽器的負擔,大大提高了交互的速度。以以下出ASP所獨具的一些特點:1)使用VBscript、Jscript等簡單易懂的腳本語言,結合HTML代馮,即可快速地完成網(wǎng)站的應用程序。2〕無需compile編譯,容易編寫,可在效勞器端直接執(zhí)行。3〕使用普通的文本編輯器,如Windows記事本,即可進行編輯設計。4)與瀏覽器無關,用戶端只要使用可執(zhí)行HTML的瀏覽器,即可瀏覽ASP所設計的網(wǎng)頁內(nèi)容。ASP所使用的腳本語言均在Web效勞器端執(zhí)行,用戶端的瀏覽器不需要能夠執(zhí)行這些腳本語言。5〕ASP能與任何ActiveXScripting語言相容。除了可使用VBScript或JScript語言來設計外,還通過Plug-in的方式,使用由第三方所提供的其它腳本語言,比方REXX、PERL、TCL等。腳本引擎是處理腳本程序的COM(ComponentObjectModel)物件。6)ASP的源程序,不會被傳到客戶瀏覽器,因而可以防止所寫的源程序被他人剽竊,也提高了程序的平安性。7)可使用效勞器端的腳本來產(chǎn)生客戶端的腳本。8)面向對象(Object-oriented)。9)ActiveXServerComponents〔ActiveX效勞器元件〕具有無限可擴充性。可以使用VisualBasic、Java、VisualC++、COBOL等編程語言來編寫你所需要的ActiveXServerComponents。PHP〔PersonalHypertextPreprocessor〕,即超文本預處理器,它是一種HTML內(nèi)嵌式的效勞器端腳本語言。它混合了C、Java、Perl的語法,但能夠比CGI或者Perl更快速地執(zhí)行動態(tài)網(wǎng)頁。與其它的交互式腳本語言相比,PHP具有非常顯著的特點:首先,PHP大大加強了對數(shù)據(jù)庫的交互能力,PHP為各種流行的數(shù)據(jù)庫,包括Linux平臺下的PostgreSQL、Msql、Mysql、Solid和Oracle,以及Windows平臺下的SQLServer等,都設計了專門的函數(shù)。其次PHP的執(zhí)行是跨越平臺的。它可以在WindowsX、WindowsNT、Unix.或者Linux:環(huán)境下運行;可以非常方便地遷移程序。再次,PHP具有自由軟件的特性,它的使用是免費的,用戶可以自行自由使用,并根據(jù)自己的需求參加使用所需的功能。最后,PHP的功能非常豐富,從結構化的特性、對象式的設計、數(shù)據(jù)庫的處理、網(wǎng)絡接口使用到平安編碼機制,它幾乎包含了網(wǎng)站后臺程序開發(fā)所需的所有功能。PHP最初是由一個叫RasmusLerdorf的程序設計員開始編寫的。在1995年,他用PHP〔PersonalHypertextPreprocessor〕開始對外發(fā)表第一個版本。在這早期的版本中,僅僅提供了訪客留言本、訪客計數(shù)器等簡單的功能。PHP出現(xiàn)后,隨著開發(fā)小組成員的不斷擴充,PHP也得到了較快的開展。同年,第2版的PHP問市,第2版定名為PHP/FI〔FormInterpreter〕,它加人了mSQL的支援,自此奠定了PHP在動態(tài)網(wǎng)頁開發(fā)上的影響力。在1996年底,已經(jīng)有15000個Web站點使用PHP/FI;在1997年時,使用PHP/FI的Web站點成長到超過5萬個。1997年中,PHP開始了第3版的開發(fā)方案,開發(fā)小組參加了ZeevSuraski及AndiGutmans,而第3版就定名為PHP3。PHP的開展速度是驚人的,根據(jù)Netcraft在1999年10月的報告,有931122個域和321128個IP地址利用PHP技術。PHP的獲得與安裝。同其它動態(tài)網(wǎng)頁的運行環(huán)境一樣,PHP運行框架的構建也包括幾個方面,即操作系統(tǒng)的選擇、數(shù)據(jù)庫效勞器的安裝和配置、Web效勞器的安裝和配制以及PHP的安裝,等等。操作系統(tǒng)的選擇對于用戶而言是任意的,PHP可以根據(jù)自己的需求選擇在不同的環(huán)境下安裝,包括在WINDOWSX下的安裝、在WindowsNT下的安裝、在Unix下的安裝和在Linux下的安裝等幾種情況。但對于目前大多數(shù)PHP用戶而言,往往是使用Unix或者Linux作為安裝平臺,因為對于PHP的運行而言,在Unix或者Linux下運行效率是最高的。用戶對于數(shù)據(jù)庫效勞器的選擇也沒有很大的限制,用戶可以選擇dBase、dbm、filePro、InterBsae、MySQL、MicrosoftSQL、Sybase、Orcale、Informix、postgreSQL等。對于Web效勞器的選擇,可以選擇PWS(運行于Windows9X)、IIS(運行于WindowsNT)、OHTTPD(運行于多種操作系統(tǒng))以及Apache(可運行于多種操作系統(tǒng)之下)等。另外,對PHP程序的獲得,用戶可以在PHP的官方網(wǎng)站://處下載。8.3.5幾個Web開發(fā)工具介紹Web開發(fā)軟件的產(chǎn)生和開展與Internet的開展密不可分,現(xiàn)在Web開發(fā)工具越來越多,功能也差異很大,這往往給程序開發(fā)人員選擇適宜的Web工具帶來了很大的困難。這里我們就介紹幾種目前最流行的Web開發(fā)工具,希望能對讀者有所幫助。1、VisualInterDevMicrosoft的產(chǎn)品一般都是只有在Windows環(huán)境中才具有最正確的執(zhí)行效率,因此VisualInterDev〔VI〕也不例外。VI利用在WindowsNT效勞器上執(zhí)行的InternetInformationServer〔IIS〕〔或在其它的Web效勞器上,利用協(xié)作廠商ChiliSoft所提供的擴展功能〕來利用ActiveServerPage〔ASP〕的技術。雖然VI同時支持Java及大局部的JavaScript功能,但它還是比較偏重于使用VisualBasic〔VB〕、VBScript及ActiveX等相關技術。此外,這個軟件的數(shù)據(jù)庫設計器〔DatabaseDesigner〕也只能與該公司推出的SQLServer數(shù)據(jù)庫效勞器一起使用。VI集成了軟件界龍頭老大Microsoft陣營生產(chǎn)的各式各樣的開發(fā)工具,這對那些使用WindowsNT操作系統(tǒng)的開發(fā)員來講無疑是一個很好的消息。運行軟件的集成開發(fā)環(huán)境〔IntegratedDevelopmentEnvironment;IDE〕將與Office97相似的操作風格與VisualC++及VisualJ++的設計功能完美的結合在一起。同及InternetExplorer一樣,VI也是一個ActiveDocument〔Active文件〕的包容器程序〔container〕。程序開發(fā)者不用離開VI的IDE就能直接處理Excel、Word及其它具備ActiveDoc功能的文件。VI軟件內(nèi)置有ImageComposer、MusicProducter以及MediaManager三個程序,它們可以幫助開發(fā)人員處理各種各樣的數(shù)據(jù)格式。當然用戶也可以用鼠標雙擊指定的文件類型,或利用OpenWith?指令來翻開喜歡的應用軟件〔如Photoshop〕以定制IDE的組態(tài)。VI套件中包含了FrontPage97HTML編輯器以及設計客戶端Script程序的ScriptWizard──ScriptWizard最初是與ActiveXControlPad?共同推出的免費程序。ScriptWizard提供了拖放設計和直接編輯程序代碼的功能,而且可自動產(chǎn)生VBScript或JScript的程序代碼。在程序設計階段程序員使用的ActiveX控制組件會與NT上的ASP核心模塊通信并自動產(chǎn)生出效勞器端的Script語言。如可以使用DataFormWizard開發(fā)一個與數(shù)據(jù)庫結合的HTML頁面,這個頁面可以修改通過ODBC連結的數(shù)據(jù)庫中的任何記錄。此外,利用兩個設計階段的控制組件──DataRange,你不必親自撰寫程序就能開發(fā)出操控連線作業(yè)〔session〕的程序代碼。DataRangerHeader控制組件會啟動QueryDesigner,而QueryDesigner那么提供設計工具讓用戶用拖放設計的方法對ODBC數(shù)據(jù)庫建立SQL查詢指令。程序所需的ActiveServerScript程序將可以自動產(chǎn)生。當然開發(fā)人員也有可能還需要手動編輯局部程序以便插入適當?shù)臄?shù)據(jù)庫參數(shù)。當用戶對某個URL提出效勞請求時,IIS的ASP核心模塊會執(zhí)行效勞器端的程序代碼為用戶翻開新的連線操作以及與后臺的數(shù)據(jù)庫通信,并且將所得的結果動態(tài)的轉換為文字及HTML控制碼輸出。所有的原始程序都保存在效勞器上。用戶可以在IDE中利用InternetExplorerActiveX控制組件或使用瀏覽器來預覽所設計的頁面。DataView功能讓用戶可以方便的管理與多個數(shù)據(jù)庫的關連,?在關連連線上按下鼠標右鍵還能查看數(shù)據(jù)表定義〔tabledefinition〕、欄位類型〔fieldtype〕、鍵結構〔keystructure〕和存儲過程〔storeprocedure〕等。DatabaseDesigner提供了與Access相似的設計工具,它還提供了能產(chǎn)生用以設計及建立SQL效勞器數(shù)據(jù)表及數(shù)據(jù)關系圖的數(shù)據(jù)定義語言〔DataDefinitionLanguage;DDL〕。假設想查看整個站點的結構,只要切換到LinkView功能即可用圖示的方式來相看整個站點的配置。頁面中失效的鏈結〔brokenlink〕會以紅線表示出來,?用戶還可以根據(jù)可執(zhí)行文件、HTML文件、多媒體文件以及內(nèi)部、外部、主要〔primary〕及次要〔secondary〕連結的方式來過濾所有的元素。假假設用戶更改文件名稱或移動文件的位置,VI也會自動的更換參考到這個文件的鏈接。Microsoft的VisualSourceSafe可以集成到VI中以對文件進行讀寫操作及版本控制。2、HAHTsiteHAHTSoftware公司推出的HAHTsite在跨越多種操作平臺、Web效勞器、數(shù)據(jù)庫、API及瀏覽器等方面都有很好的表現(xiàn)。假設你喜歡VB及VisualStudio的集成開發(fā)環(huán)境,那么你馬上就可以熟悉HAHTsite的與VB兼容的HAHTtalkBasic和WebProjectExplorer。此外,用戶也可以使用HAHTtalkBasic來控制或建立任何一種Java對象類的變量。HAHTsite的ApplicationServer具備多處理〔multiprocess〕功能,而且它可以多線程〔multithread〕方式操作的。它所起的作用和Microsoft的IISASP核心模塊很相似,它們都會攔截對效勞器上程序代碼的調(diào)用并根據(jù)執(zhí)行結果動態(tài)地產(chǎn)生出HTML頁面。HAHTsite效勞器會利用cookie及狀態(tài)識別碼〔stateID〕,同時效勞器會將客戶端瀏覽器的IP地址記錄到狀態(tài)識別碼中。HAHTsite不但支持Microsoft的DAO數(shù)據(jù)庫對象模型,同時也能通過原生〔驅動程序來訪問Oracle7、MicrosoftSQLServer、SybaseSQLServer和Informix數(shù)據(jù)庫等。HAHTsite的ConnectionManager允許同一個應用的每個組件共享同一個數(shù)據(jù)庫連接。HAHTsite的集成開發(fā)環(huán)境提供了一系列的頁面控制組件,包括textarea〔文字域〕、button〔按鈕〕、checkbox〔檢查框〕、radiobutton〔選項按鈕〕、listbox〔列表盒〕、text〔文字〕、combobox〔復合方塊〕以及DataSet控制組件,這個組件會連結頁面控制組件和數(shù)據(jù)庫中的數(shù)據(jù)表,同時提供數(shù)據(jù)插入〔Insert〕、更新〔Update〕、刪除〔Delete〕、查詢〔Query〕、再查詢〔Requery〕、去除〔Clear〕及移動〔Move〕等功能。套件中的FormWizard能根據(jù)用戶選定的數(shù)據(jù)表或輸入的SQL查詢指令以及給定的數(shù)據(jù)欄位、控制組件、按鈕及版面配置等設置參量自動產(chǎn)生與數(shù)據(jù)庫結合的HTML頁面。套件中其它的向導軟件還包括報表產(chǎn)生器以及可視化點擊-拖拉〔click-and-drag〕控制方式產(chǎn)生HTML幀〔frame〕的工具。在HAHTsite的Widget設計階段、文件存儲階段以及執(zhí)行階段,控制組件都能通過設計精靈以及內(nèi)置的SDK的幫助,利用HAHTtalkBasic創(chuàng)立出來,用戶也可以利用預建的小工具將Javaapplet、ActiveX控制組件、自動更新的頁面瀏覽控制條〔link-navigationbar〕和寄信處理器〔mail-tohandler〕等加到自己的頁面中。如果你設定了文字輸入域〔text〕的屬性,程序將會自動產(chǎn)生驗證這個輸入欄位的JavaScript程序代碼。用戶還可以從WebProjectExplorer中將頁面的任何一部份剪下并存儲成圖形文件。另外,用戶也可以將頁面拉到?HAHTspot圖象-映射〔image-map〕編輯器中,這樣能夠產(chǎn)生客戶端或效勞器端的圖象映射圖。HAHTsite會更新失效的鏈結、將程序代碼編譯成與機器無關〔machine-independent〕的pcode,同時能通過文件復制、文件傳輸〔FTP〕或HTTP協(xié)議,將頁面更新數(shù)據(jù)傳送到單一或多個效勞器上。這個軟件利用預先設置好的站點定義文件,來處理文件擴展名、數(shù)據(jù)儲存路徑、是否區(qū)別文件名的大小寫和其它的相關信息,同時也管理各Web效勞器與操作系統(tǒng)之間的差異性。使用HAHTsite提供的調(diào)試器,用戶不但可以在本地端的主機上使用VisualWebDebugger,也可以通過密碼保護的TCP/IP連結從遠程進行調(diào)試。3、CactusInformationBuilder的在跨平臺支持方面有很大的改進,這個軟件可以很將現(xiàn)有的客戶機/效勞器及Web應用軟

溫馨提示

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

評論

0/150

提交評論