軟件開發(fā)技術(shù)范文

時間:2023-04-05 15:49:54

導語:如何才能寫好一篇軟件開發(fā)技術(shù),這就需要搜集整理更多的資料和文獻,歡迎閱讀由公文云整理的十篇范文,供你借鑒。

軟件開發(fā)技術(shù)

篇1

關(guān)鍵詞:面向服務軟件;開發(fā)技術(shù);應用

鑒于面向服務架構(gòu)開發(fā)的軟件有其固有的屬性和特點,其內(nèi)身的高內(nèi)聚、低耦合特性,使面向服務軟件更加穩(wěn)定高效,再加上面向服務軟件的運行不受平臺的影響,使面向服務軟件在我國企業(yè)系統(tǒng)集成和軟件發(fā)展中得到廣泛應用,現(xiàn)已成為我國企業(yè)運用系統(tǒng)集成和開發(fā)新系統(tǒng)的重要措施。

1當今面向服務軟件開發(fā)技術(shù)的研究現(xiàn)狀

隨著經(jīng)濟的發(fā)展和社會的進步,當今時代已經(jīng)成為了信息化時代,計算機軟件開發(fā)技術(shù)水平不斷提高,網(wǎng)絡技術(shù)發(fā)展迅速。隨著計算機網(wǎng)絡的快速發(fā)展和不斷進步,信息服務系統(tǒng)在我國社會發(fā)展和經(jīng)濟增長方面起到越來越重要的作用。伴隨計算機網(wǎng)絡的發(fā)展,Web服務技術(shù)水平也隨之提高,人們通過計算機網(wǎng)絡獲取豐富的信息資源,對于計算機軟件各方面的要求也越來越高。雖然面向服務軟件開發(fā)技術(shù)在一定程度上已經(jīng)取得了階段性成果,但是還是無法完全滿足當今人們對于計算機軟件的需求,在今后的面向服務軟件開發(fā)技術(shù)的研究過程中,還需不斷探索和創(chuàng)新,從而不斷完善和提高面向服務軟件開發(fā)技術(shù),促進面向服務軟件開發(fā)技術(shù)的發(fā)展。雖然當今面向服務軟件開發(fā)技術(shù)在不斷完善和進步,但是還是存在著各種各樣的問題,例如軟件復用程度不夠,軟件集成性能得不到提高,這些問題嚴重影響著用戶對于服務軟件的使用,也阻礙了我國面向服務軟件開發(fā)技術(shù)的發(fā)展。利用SOA開發(fā)計算機軟件時,開發(fā)工作人員只需關(guān)注Web服務和用戶需求,至于二者之間的關(guān)系由服務接口所負責,無需開發(fā)工作人員單獨的研究。利用SOA架構(gòu)開發(fā)服務軟件,在服務軟件的設計、分配、功能和維護方面都有著獨特的優(yōu)點和好處,因此成為了服務軟件開發(fā)技術(shù)研究的重要關(guān)注點。在面向服務軟件開發(fā)過程中,軟件系統(tǒng)的重要開發(fā)環(huán)節(jié)就是服務環(huán)節(jié),服務也是服務軟件的首要要求。由于服務軟件的功能不全面,服務具有局限性,導致服務軟件很難發(fā)揮完整功能作用,不能切實地真正滿足人們的需求。因此,在今后的面向服務軟件開發(fā)研究過程中,要不斷完善服務軟件的功能,加強服務軟件的性能,研究出功能更加全面的Web服務從而更好地應用于服務軟件??偠灾?,在面向服務軟件開發(fā)過程中,應用科學合理的服務組合來完善Web服務功能尤為重要。當今我國的面向服務軟件開發(fā)技術(shù)基礎(chǔ)較差,起步較晚,雖然在一定程度上已經(jīng)取得了階段性成果,但是在面向服務軟件開發(fā)技術(shù)研究工作中,還是存在著各種各樣的問題。為此,我們有必要對面向服務軟件開發(fā)技術(shù)進行探究,從而提高我國面向服務軟件開發(fā)技術(shù)水平,讓面向服務軟件開發(fā)技術(shù)更好地服務于社會,促進我國信息化的發(fā)展。

2Web服務軟件開發(fā)技術(shù)的基礎(chǔ)

為了更好地研究面向服務軟件開發(fā)技術(shù),我們有必要對Web服務軟件開發(fā)技術(shù)的基礎(chǔ)進行了解和探究,從而切實地提高服務軟件開發(fā)技術(shù)水平,讓服務軟件在今后的生活和工作中發(fā)揮更大的作用。

2.1軟件服務

面向服務軟件技術(shù)是隨著信息化時代的來臨而衍生出來的一種新技術(shù),它使計算機軟件與互聯(lián)網(wǎng)更好地進行匹配,切實地促進了我國互聯(lián)網(wǎng)技術(shù)的發(fā)展。面向服務軟件的首要目標就是為用戶服務,它依靠功能系統(tǒng)為用戶提供服務,方便用戶利用計算機網(wǎng)絡來享受服務軟件的服務功能。所謂服務的概念,就是應用具有業(yè)務功能的系統(tǒng)模塊,讓用戶通過服務接口進行工作或者開展業(yè)務。而服務架構(gòu)中的服務作用,在工作方面來說就是為企業(yè)業(yè)務提供服務,就計算機網(wǎng)絡來說,就是通過Web服務方式對軟甲進行封裝,發(fā)揮其設計功能。服務有著各種各樣的優(yōu)點和特點,這為其提供用戶服務奠定了堅實的基礎(chǔ)。用戶在使用服務時,鑒于服務邊界清晰的特點,更加方便的通過接口獲取服務。依據(jù)服務的兼容性特點,用戶在使用服務過程中,可以很方便的與他人進行信息交流。同時,各個服務功能之間相互獨立,松散耦合,在用戶使用服務功能時,沒有必要了解服務細節(jié),較少了不必要的麻煩。另外,在進行服務設計時,要遵循相應的服務設計原則。首先,服務的命名要讓用戶容易記住,服務應內(nèi)聚完整,服務封裝內(nèi)部細節(jié)以及服務無狀態(tài)。只有對服務進行科學合理地設計,才能保證增加用戶對于服務的使用,促進服務的進一步發(fā)展。

2.2SOA和Web服務技術(shù)基礎(chǔ)

面向服務架構(gòu)(SOA)是一種應用廣泛的設計架構(gòu),它具有松散耦合和粒度大的優(yōu)點,使系統(tǒng)服務利用服務接口很好地進行連接,利用服務接口標準化和各項服務之間統(tǒng)一化來實現(xiàn)通信過程。普通的SOA架構(gòu)由服務管理、服務開發(fā)工具、服務組件、服務總線、基礎(chǔ)服務構(gòu)成。另外一個服務架構(gòu)就是云服務架構(gòu),云服務架構(gòu)由IaaS、PaaS、和SaaS構(gòu)成,IaaS是組成云服務構(gòu)架的基礎(chǔ)部分,PaaS是云服務平臺,SaaS的作用是為用戶提供服務。云服務架構(gòu)的發(fā)展依據(jù)于虛擬化技術(shù)和分布式計算以及海量存儲技術(shù),虛擬化的發(fā)展過程依據(jù)于基礎(chǔ)設施,分布式計算和海量存儲技術(shù)的發(fā)展構(gòu)建了云服務平臺,隨著云服務架構(gòu)的不斷發(fā)展,云服務技術(shù)水平的不斷提高,軟件和平臺以及基礎(chǔ)設施三者之間的 關(guān)系會更為緊密。Ucocloud模型主要由web前端、master主控服務以及worker工作機構(gòu)成。其工作核心是master服務,它負責調(diào)整任務和管理worker,worker負責不同的業(yè)務,增強其計算能力。master主控服務主要是調(diào)整和維護Task和worker的分布順序,web前端負責獲取master主控服務中的數(shù)據(jù)信息,worker工作機主要是對具體的業(yè)務進行執(zhí)行。WebService是Web的一個應用程序,它是獨立的、可進行編程的應用程序,它的描述、協(xié)調(diào)、配置應用程序依靠XML來完成。WebService結(jié)構(gòu)主要由服務提供者和服務以及服務使用者構(gòu)成,其三者發(fā)揮各自的功能來實現(xiàn)WebService的服務功能。WSDL是一種描述服務的語言,其是基于XML格式的描述語言。WADL主要由Types、Message、Opeera?tion、PortType、Binding、Port、Service構(gòu)成,依靠這些元素對服務進行語言描述。WSDL的語言描述具有開放性特點,便于WSDL與其它語言之間進行相互訪問,增加了服務之間的網(wǎng)絡傳輸協(xié)議種類和消息格式。SOAP是一種簡單的服務訪問協(xié)議,可以方便WebService在互聯(lián)網(wǎng)中進行信息交換,提供了信息交換平臺。UDDI是一種統(tǒng)一服務描述語言,為用戶提供注冊服務。UDDI主要由UDDI數(shù)據(jù)模型和UDDIAPI以及UDDICloudService所構(gòu)成。

3服務軟件組合技術(shù)研究

如今,隨著社會的進步和計算機網(wǎng)絡技術(shù)水平的不斷提高,用戶可以選擇和使用的服務軟件日益增加,Web服務形式被廣泛地應用到當今的服務軟件之中。隨著Web服務的增加,使得過多的功能產(chǎn)生相似或者重復的現(xiàn)象,還不能完全滿足用戶的功能需求。為此,加緊研究服務軟件組合技術(shù)尤為重要。Web服務組合,使相似或者重復的功能合并,在根據(jù)用戶的需求提煉出更多的功能,使Web更好地滿足用戶的功能需求。

3.1Web服務組合

Web服務主要由服務提供者、服務請求者和服務組成,通過三者的相互合作來完成服務過程。用戶利用UDDI,依靠Web提供的服務和發(fā)現(xiàn)以及綁定來完成網(wǎng)絡注冊,從而使用服務?,F(xiàn)如今,我國大多數(shù)的網(wǎng)民都是服務請求者。從過程模型方面來說,Web服務是依靠控制流和數(shù)據(jù)流完成服務過程的,從構(gòu)成單元來說,Web服務內(nèi)部單元可以進行相互合作和協(xié)調(diào),完成服務過程。Web服務組合,有著固有的屬性和特點,其動態(tài)性和自適應性可以通過UDDI對Web服務進行動態(tài)管理。其次層性和可擴展性,可以使Web服務產(chǎn)生新的功能,更好地適應用戶的需求。Web服務組合,還可以更大程度的提高軟件的開發(fā)效率,提高組合的自動化程度。

3.2Web服務組合的方法

Web服務組合的方法大致上可以分為兩大類,靜態(tài)組合和動態(tài)組合。靜態(tài)組合以往的組合方法是依靠于編碼方式,但是依靠編碼對靜態(tài)服務進行組合,使組合方式不夠靈活,效率很低,嚴重影響Web服務的組合過程。因此,當今靜態(tài)組合主要依靠于模板對靜態(tài)服務進行組合。動態(tài)服務組合當今主要有三種組合方式,基于Petri網(wǎng)的服務組合方式、基于BPEL的服務組合方式和基于網(wǎng)絡組件的服務組合方式。無論是靜態(tài)服務組合還是動態(tài)服務組合,目的都是不斷地完善用戶對于網(wǎng)絡的服務功能需求,使人們更加受益于當今信息化時代。

3.3基于語義的服務組合

在調(diào)查用戶對于服務的滿意程度方面,Web服務質(zhì)量的算法是關(guān)鍵算法。當今,五維的Qas模型應用廣泛,依靠其執(zhí)行時間、執(zhí)行成本、服務聲譽、可靠性和可用性對Web服務進行衡量。為了切實地提高計算機網(wǎng)絡自動選擇Web服務的能力水平,語義Web服務是必不可少的。語義Web服務對服務的各種屬性和特點進行分析和探究,從而更好地為用戶提供服務?,F(xiàn)如今,用戶可以依靠關(guān)鍵字便捷地獲取計算機網(wǎng)絡信息,離不開語義Web。

4服務軟件信任評估研究

服務軟件的應用給人們的生活和工作帶來了很大的便利,促進了社會信息化程度的發(fā)展。為此,我們有必要對服務軟件的信任評估進行研究。

4.1服務信任

服務信任,是用戶對于所使用服務的一種相信,這種相信依靠自身的判斷力和網(wǎng)絡經(jīng)驗。通過用戶對于服務的信任度分析,可以使用戶更加放心地使用服務。服務信任有著固有的性質(zhì),主要是主觀性、動態(tài)性、可度量性、傳遞性、時間衰減性和非對稱性。對于服務的信任,可以分為身份信任和行為信任,直接信任和間接信任。

4.2面向服務的信任評估模型

面向服務的信任評估模型的建立,要依靠服務的屬性和特點來明確劃分服務的服務范圍,并且對QaS的非功能屬性加以分析,從而逐步建立面向服務的信任評估模型。首先,服務提供者要在服務注冊中心進行注冊,然后向信任管理器發(fā)出信任數(shù)據(jù),申請信任信息,然后信任管理器對服務進行信任評估,才能完成信任服務評估過程。

5基于SOA的GPIMS系統(tǒng)開發(fā)實踐

基于SOA的GPIMS系統(tǒng)開發(fā)實踐,要對GPIMS系統(tǒng)的結(jié)構(gòu)進行了解,對其建模過程和服務設計過程加以分析。在這過程中,基于.NET平臺的SOA結(jié)構(gòu)起到了關(guān)鍵作用。最后,還要依據(jù)QoS標準對服務進行信任評估測試,已達到服務軟件的信任要求。

6總結(jié)

如今,面向服務軟件已經(jīng)在我們的工作和生活中得到廣泛應用,為此,今后還需不斷地對面向服務軟件技術(shù)進行探索和創(chuàng)新,讓面向服務軟件促進我國的計算機網(wǎng)絡發(fā)展,推動我國社會的進步。

參考文獻

篇2

隨著社會經(jīng)濟的不斷發(fā)展,科學技術(shù)不斷進步,計算機被廣泛的應用到各大行業(yè)當中,并在各行業(yè)中發(fā)揮著重要的作用。計算機作為人們生活中不可缺少的重要組成部分,給人們的生活和工作帶來了極大的便利,并且在發(fā)展的幾十年內(nèi),取得了顯著的成效。本文簡單介紹了計算機軟件開發(fā)技術(shù)的重要性,對計算機軟件技術(shù)的應用情況和發(fā)展趨勢作了系統(tǒng)的分析。

【關(guān)鍵詞】

計算機;軟件開發(fā)技術(shù);應用及發(fā)展

計算機主要是由軟件和硬件兩部分構(gòu)成的,缺少其一,計算機都不能正常運轉(zhuǎn)。計算機的系統(tǒng)軟件就是對計算機進行監(jiān)控、管理及維護的過程,計算機軟件技術(shù)的開發(fā)對計算機科學的發(fā)展具有重要的意義。對于當前的軟件開發(fā)人員來說,通過創(chuàng)新的手段來推進軟件技術(shù)的應用,是當前計算機軟件的發(fā)展趨勢,也是軟件開發(fā)人員需要深入思考的問題。

1計算機軟件開發(fā)技術(shù)的重要性

計算機軟件開發(fā)技術(shù)在計算機當中的應用,推動了計算機技術(shù)的不斷向著網(wǎng)絡化的方向發(fā)展,并且成為信息時代的主要發(fā)展趨勢。同時計算機軟件開發(fā)技術(shù)也是計算機軟件工程中的核心技術(shù),對現(xiàn)代化網(wǎng)絡的發(fā)展起到了積極的促進作用,實現(xiàn)了網(wǎng)絡支持項目和遠程控制項目的良好運用。所以,在進行計算機網(wǎng)絡開發(fā)過程中,應該實現(xiàn)計算機網(wǎng)絡開發(fā)和共存相結(jié)合的模式,計算機網(wǎng)絡技術(shù)的不斷進步,與計算機的開發(fā)和運用有著重要的聯(lián)系,解決了計算機軟件開發(fā)技術(shù)中存在的問題,提高了計算機軟件在使用中的安全系數(shù)。當前,科學技術(shù)不斷發(fā)展,計算機網(wǎng)絡技術(shù)也將面臨更多的挑戰(zhàn),承擔更大的社會責任,所以應該對計算機軟件開發(fā)技術(shù)給予重視。

2計算機軟件技術(shù)的應用

2.1應用分析對計算機進行軟件開發(fā),主要是想給客戶提供更加便捷的服務,在應用過程中,計算機軟件的應用性是衡量計算機質(zhì)量的重要標準。基于這一因素,計算機軟件在開發(fā)過程中,首先需要考慮的就是計算機軟件的便捷性,主要重在為人民服務。其次,應該注重計算機的擴展性、安全性和穩(wěn)定,將計算機的各項功能更好的融入到實踐中來。通過對計算機技術(shù)軟件的應用情況可以看出,設計師在計算機軟件設計中,沒有充分的考慮到這一情況。最后,隨著科學技術(shù)的不斷發(fā)展,計算機軟件技術(shù)的更新速度不斷加快,計算機設計者沒有對軟件的兼容性進行充分考慮。同時,還要對計算機的自動恢復功能加以重視。通過這樣的形式,才有利于計算機軟件占據(jù)一定的市場份額,推動計算機技術(shù)的不斷發(fā)展。

2.2具體的表現(xiàn)形式全球化經(jīng)濟的發(fā)展,推動了計算機軟件技術(shù)的不斷進步,當前,計算機的網(wǎng)絡化成為計算機發(fā)展的潮流和趨勢?;ヂ?lián)網(wǎng)技術(shù)在生活中的應用,拉近了人與人之間的距離,實現(xiàn)了信息資源的有效共享,也加強了人與人之間的互動和交流。基于以上這些功能,計算機軟件能夠在保證在多個使用用戶的前提下,實現(xiàn)統(tǒng)一的連接功能,并通過對數(shù)據(jù)的系統(tǒng)分析,對操作平臺的處理,實現(xiàn)人們使用的便捷性,促進數(shù)據(jù)時代的快速發(fā)展。另外,計算機開發(fā)軟件在應用過程中,還會與計算機軟件的開發(fā)技術(shù)、信息處理技術(shù)和移動通信技術(shù)進行有機的結(jié)合,實現(xiàn)用戶操作的便捷性[1]。

3計算機軟件技術(shù)的發(fā)展趨勢

3.1網(wǎng)絡化和智能化的發(fā)展趨勢當前,信息化發(fā)展迅速,網(wǎng)絡化成為當前計算機發(fā)展的重要趨勢,互聯(lián)網(wǎng)的使用拉近了人們之間的距離,促進了人們之間的溝通和交流,推動了信息化的不斷發(fā)展,為人們提供了更加優(yōu)質(zhì)化的信息化服務。當前人們對軟件技術(shù)的需求日益加深,人工智能技術(shù)的應用也在生活中的各個領(lǐng)域被廣泛使用,智能化的發(fā)展方向成為當前計算機技術(shù)發(fā)展的必然趨勢。推動了計算機技術(shù)向著智能化的發(fā)展方向邁進,對計算機的現(xiàn)代化發(fā)展具有重要的意義。

3.2開放化和融合化的發(fā)展趨勢隨著社會的不斷進步,計算機向著開放化的發(fā)展趨勢邁進,計算機在使用中是通過軟件開發(fā)的代碼以及軟件的標準等進行進一步的公開化,通過共享軟件的方式促進了設計人員之間的溝通和交流。軟件的開發(fā)技術(shù)需要設計人員投入創(chuàng)新思維,通過互相交流和共同學習,來推動計算機產(chǎn)業(yè)的發(fā)展進步,促進計算機網(wǎng)絡技術(shù)不斷走向成熟。計算機的網(wǎng)絡技術(shù)實現(xiàn)了網(wǎng)絡化和數(shù)字化等理論的有效融合,促進了計算機整體產(chǎn)業(yè)水平的提升,增強市場競爭力,以便占有較強的市場份額。當前,計算機軟件技術(shù)被廣泛應用到生活中的各個領(lǐng)域,優(yōu)質(zhì)的服務,是當前計算機軟件開放化和融合化發(fā)展的必然趨勢[2]。

4結(jié)論

計算機的快速發(fā)展,給人們的生活和工作帶來了極大的便利,推動了智能化的快速發(fā)展,對人們生活中的各個方面產(chǎn)生了重要的影響。計算機軟件的應用情況是隨著社會狀態(tài)而不斷更新的,在發(fā)展的過程中,需要根據(jù)當前的發(fā)展現(xiàn)狀而不斷的進行完善和總結(jié),進而來提高計算機的開發(fā)效率,增強軟件的使用性能,推動計算機學科的快速發(fā)展。

參考文獻

[1]裴衣非.計算機軟件開發(fā)技術(shù)的現(xiàn)狀及應用研究[J].中小企業(yè)管理與科技(上旬刊),2015,11:248~249.

篇3

關(guān)鍵詞:計算機;軟件;開發(fā)技術(shù);應用探析

計算機的發(fā)展帶領(lǐng)信息網(wǎng)絡的發(fā)展,進而帶動整個社會的進步,大大改變了人們的生活質(zhì)量。如今,它作為人類智慧的延伸,廣泛應用于人們生活的各個領(lǐng)域。作為計算機的核心,軟件開發(fā)技術(shù)產(chǎn)業(yè)日益發(fā)展起來,成為我國重要的信息產(chǎn)業(yè)支柱。

一、計算機軟件開發(fā)技術(shù)概述

(一)概念

計算機軟件主要指系統(tǒng)軟件、應用軟件。系統(tǒng)軟件是監(jiān)控、管理和維護計算機的軟件,比如操作系統(tǒng)和自檢程序等。而應用軟件則是解決用戶具體問題的軟件,比如人事管理軟件和學習管理軟件等等。不管是系統(tǒng)軟件還是應用軟件,都為用戶提供了利用計算機代替或簡化一種計算機的工作環(huán)境,對于用戶來說,接觸計算機其實是接觸計算機軟件。早在20世紀五六十年代,計算機軟件的開發(fā)多是手工方式,這種軟件開發(fā)技術(shù)不僅出錯率較高、生產(chǎn)效率低下,而且不能滿足軟件生產(chǎn)需要。隨著商品化、大型化軟件的開發(fā),人們意識到計算機軟件的開發(fā)需要規(guī)范的文檔來確保程序設計、調(diào)試和運行。到了20世紀八十年代,人們將軟件工程定義為:實現(xiàn)計算機程序功能采取的規(guī)則、方法及與之相關(guān)聯(lián)的文檔和在計算機上運行程序所需的數(shù)據(jù)都是計算機軟件。

軟件工程的發(fā)展大體經(jīng)歷了程序設計時代、軟件時代和軟件工程三個時代。以建筑工程開發(fā)為例,可以看出計算機軟件開發(fā)過程與建筑工程開發(fā)有較大的差異。建筑工程開發(fā)過程中,設計藍圖設計之后,之后的每一步都不存在回溯的問題,但計算機軟件工程在開發(fā)的過程中,每一步都有可能經(jīng)歷多次的修改、適應等回溯問題,另外,軟件開發(fā)成功投入使用后,要考慮到軟件運行和維護的問題等等。

(二)開發(fā)方式

計算機軟件常用的三種開發(fā)方式:

1、傳統(tǒng)的生命周期法。根據(jù)時間劃分角度,將軟件進行各個方面的拆分,并對其進行分解,形成不同階段,且每一個階段的開始和結(jié)束都有其特定的嚴格要求。通常意義上,一個周期大致為半年左右。

2、軟件原型化的方法。在對初期概念比較模糊的計算機軟件進行開發(fā)和調(diào)試時,由于傳統(tǒng)的生命周期法需要對軟件最初期的相關(guān)資料進行認定,因此,對于此種類型的軟件其并不能適合。但如果把計算機軟件原型化,通過對原型化系統(tǒng)的研究來確定軟件的本質(zhì)要求,在此基礎(chǔ)上并將前期得到的概念進行新的開發(fā)建造,最終達到修改階段,由此便完成了對軟件開發(fā)的建造。

3、自動化形式系統(tǒng)的開發(fā)。自動形式系統(tǒng)的軟件開發(fā)方式主要利用第四代技術(shù)中的多種軟件開發(fā)工具、操作人員并不需要說出具體的方法,只需要說出內(nèi)容,其軟件工具就通過自動分析并設計出程序編碼。

(三)計算機軟件開發(fā)技術(shù)

1、XML

XML是包含了類似HTML的文本文件。而在這一個文件定義一個樹型的結(jié)構(gòu),用來描述其所存儲的數(shù)據(jù)。它的最大優(yōu)點就在于這個文件中所存儲的結(jié)構(gòu)數(shù)據(jù)。還可以儲存非結(jié)構(gòu)數(shù)據(jù)。也包括一些關(guān)于基于XML的語言,有XSL、XHTML、DTDs、XSLT、XSD、X quer及X Path。XHTML的本身是XML,同通常的HTML比較,XHTML的格式更加容易進行處理。XSL與XSLT是XML進行轉(zhuǎn)換所使用的語言,它們將XML轉(zhuǎn)換成為各種各樣的格式。DTDs是對XML文件以及其所包含一些數(shù)據(jù)類型進行描述,可以不通過編寫所定制代碼,就可以完成XML內(nèi)容的檢查,讓其強行遵守所給出的規(guī)則。X query與X Path是查詢語言。它們能夠從XML中吸取一些單個的數(shù)據(jù)及數(shù)據(jù)列表。

2、Web Services

Web服務是XML后的產(chǎn)物。XML可以進行描述數(shù)據(jù)和對象,其可以保證XML文檔數(shù)據(jù)的有效性。其文檔非常適用于一種實現(xiàn)跨平臺服務標準基本的格式。

3、面向?qū)ο蟮木幊?/p>

過去十年里,面向?qū)ο驩OP技術(shù)在領(lǐng)域中占據(jù)過統(tǒng)治的地位,OOP理念是從Smalltalk開始的,然后慢慢到C++和Pascal,到Java成為真正的主流。和C++是OOP發(fā)展的最高層次。

4、Java、C++、C語言、這些高級編程語言都得到了迅速的發(fā)展,但每種語言都能獨立地進行計算機軟件的開發(fā)。

5、JavaScript

JavaScript作為非常重要的腳本語言,被所有主流的瀏覽器所使用。在編寫Web應用程序時,JavaScript是不可缺少的。JavaScript也可以作為一種服務器端腳本語言,其極可能會成為將來設備的腳本語言和主流應用程序的語言。VBScript雖然得到了很好的應用,但連微軟都傾向使用JavaScript來編寫其腳本代碼。

6、Regular Expressions

雖然很多人認為正則表達式太過于繁瑣,而且很難讀寫,但是其功能非常強大,在很多領(lǐng)域都需要使用它。在搜索純文本數(shù)據(jù),其表現(xiàn)出了強大的功能。

7、Design Patterns

其作用是用來通過創(chuàng)建和分類對象,從而簡化編程。設計一個模式將一些對象進行分類成為制定的模型,OOP使用得越多,其作用就越明顯。

8、Flash MX

當需要更多的客戶端圖形以及編程能力時,HTML與CSS就不能滿足此刻的需求,F(xiàn)lash才是最好的選擇。在Flash里編程將會非常容易,并且其速度也明顯比Java快。

9、Linux/Windows

這是PC機兩大操作軟件,需要學會對其進行配置、安裝。當今的軟件開發(fā)程序都基于這兩大操作軟件平臺上,對這兩大軟件要有一定的了解。

10、SQL

對數(shù)據(jù)庫的查詢,SQL雖然只是一種基本操作技能,但是其卻起到了非常重要的作用。也許在未來,圖形界面會取代人們對SQL的使用,但是數(shù)據(jù)的查詢永遠也不會離開SQL,掌握SQL的基本語法,對將來編程數(shù)據(jù)的使用有很大的幫助。

(四)計算機軟件開發(fā)技術(shù)的重要性

軟件開發(fā)技術(shù)是軟件工程較為關(guān)鍵的技術(shù)之一,對計算機網(wǎng)絡發(fā)展有著極大的助推作用,計算機軟件開發(fā)技術(shù)能夠促使計算機網(wǎng)絡技術(shù)的創(chuàng)新,使一些網(wǎng)絡支持、遠程控制成為可能。軟件開發(fā)技術(shù)的應用使得計算機網(wǎng)絡形成開發(fā)性、共存性的一種網(wǎng)絡模式,對于計算機網(wǎng)絡的發(fā)展有促進作用。計算機軟件開發(fā)技術(shù)的應用解決了軟件開發(fā)落后計算機網(wǎng)絡需求的問題,隨著軟件開發(fā)技術(shù)的不斷提高,軟件的安全性、可靠性和便捷性也有了較大的提高。上述的計算機軟件開發(fā)重要性推動了計算機軟件開發(fā)技術(shù)的應用。

二、計算機軟件開發(fā)技術(shù)的應用

計算機軟件開發(fā)者進行軟件開發(fā)是為了使計算機可以更好地為人類服務,所以,一種計算機軟件開發(fā)技術(shù)要能夠稱得上成功,需要真正實現(xiàn)其良好的實用價值。下面通過一個計算機軟件開發(fā)的實例來說明軟件開發(fā)技術(shù)的應用價值。運用兩種不同的方式開發(fā)兩個產(chǎn)品,其中第一個產(chǎn)品運用高級數(shù)據(jù)庫服務器的Web+Xml+ActiveX模式來進行開發(fā)設計,第二個產(chǎn)品運用VB6.0+Acess的單機版模式來進行開發(fā)設計?,F(xiàn)利用這兩種產(chǎn)品分別在客戶機端進行安裝,發(fā)現(xiàn)采用第一個產(chǎn)品的話,在客戶機需要安裝ActiveX組件,還要更改瀏覽器的安全設置,這使得在客戶端安裝第一個產(chǎn)品時有一個安裝步驟;而如果采用第二個產(chǎn)品,則在客戶端可直接安裝,這是因為VB虛擬機以及Acess驅(qū)動都是微軟歷史版本,系統(tǒng)可自動兼容。成功在客戶端進行安裝后,運行一段時間,第一種安裝方法在安裝、運行上受系統(tǒng)操作版本或瀏覽器安全設置的限制,給用戶使用帶來了一些麻煩。然而第二種安裝方法運行穩(wěn)定,如果需要修復安裝或者備份還原數(shù)據(jù),用戶能夠單獨去完成,缺點是隨著客戶端使用時間越來越長,用戶數(shù)據(jù)會逐漸增多,在客戶端運行的后期,運行速度會下降,此時就需要進行人為轉(zhuǎn)檔。這個實例促進了計算機軟件開發(fā)者對軟件開發(fā)與應用問題的認識。計算機作為常用的工具,是為了能夠更好地為人類服務。當前,計算機已成為一種大眾化的工具,不一定要求使用計算機的工作人員均是專業(yè)化人才,所以,在計算機軟件開發(fā)中,要按照客戶具體要求與實際情況來進行開發(fā)。計算機軟件開發(fā)過程中還要強化“以人為本”的理念,體現(xiàn)軟件強大的功能以及簡單實用性。

三、計算機軟件技術(shù)的發(fā)展趨勢

(一)軟件技術(shù)的智能化發(fā)展趨勢。隨著人工智能在當今社會的不斷發(fā)展,其應用范圍也得到相應的拓展。而軟件技術(shù)的開發(fā)也只有朝著這個方向發(fā)展,才能使人工智能軟件的開發(fā)獲得成功,從而促進人類社會的劃時展。

(二)軟件技術(shù)的融合化發(fā)展趨勢。將傳統(tǒng)的電氣化、機械化和自動化等計算機硬件系統(tǒng)通過軟件開發(fā)轉(zhuǎn)化為智能化、數(shù)字化和網(wǎng)絡化的軟件核心技術(shù),這一融合必定為產(chǎn)業(yè)帶來更大的經(jīng)濟市場競爭力。

(三)軟件技術(shù)的服務化發(fā)展趨勢。當面向客戶時,軟件技術(shù)的開發(fā)者將最優(yōu)秀的設計理念、最先進的軟件技術(shù)、一流的產(chǎn)品和最優(yōu)質(zhì)的服務呈獻給客戶,由此形成軟件行業(yè)的主流模式。

(四)軟件技術(shù)的網(wǎng)絡化發(fā)展趨勢。由于互聯(lián)網(wǎng)的全球性發(fā)展,不僅拉近了全球的距離,更將網(wǎng)格化發(fā)展作為計算機產(chǎn)業(yè)今后的發(fā)展方向,而網(wǎng)格化又是網(wǎng)絡化的表現(xiàn)形式。因此,推動了全球網(wǎng)絡化的發(fā)展趨勢。

(五)軟件技術(shù)的開放化發(fā)展趨勢。軟件技術(shù)的開放化指的是計算機軟件產(chǎn)品的標準化和軟件源代碼的開放化。只有技術(shù)在一定程度上達到開放,計算機軟件設計者之間才能更好地進行交流和溝通,達到共同進步,從而提高產(chǎn)品質(zhì)量,并促進計算機軟件產(chǎn)業(yè)的進一步發(fā)展。

計算機網(wǎng)絡技術(shù)的發(fā)展徹底改變了我們的生活,促進了社會的進步,在社會生活的各個領(lǐng)域都發(fā)揮著十分重要的作用。計算機軟件技術(shù)是計算機的核心,軟件開發(fā)技術(shù)的發(fā)展直接關(guān)系到我國國民經(jīng)濟的發(fā)展。

參考文獻:

篇4

分層技術(shù)不僅有利于計算機軟件進一步擴展自身功能,還可以豐富軟件內(nèi)容。分層技術(shù)主要促使計算機軟件由二次結(jié)構(gòu)逐漸轉(zhuǎn)變成為多層次結(jié)構(gòu),同時每一層都要具有針對性以及具體化方案。當前計算機軟件管理應當加強分層技術(shù)的應用,在分層管理過程中,工作人員需要針對計算機每一層次軟件管理采取科學合理方案,切實保障計算機軟件各大層可以實現(xiàn)相互溝通,同時保障每一層次軟件具備一定獨立性。相關(guān)工作人員針對計算機軟件進行分層管理,要以軟件基礎(chǔ)框架作為根本依據(jù)。20世紀80年代左右,計算機軟件技術(shù)發(fā)展還較為落后,同時需要依賴小型數(shù)據(jù)庫實施結(jié)構(gòu)編程。但是,隨著當前信息技術(shù)的日益發(fā)展,軟件技術(shù)得到顯著提升,并且產(chǎn)生了雙層結(jié)構(gòu),雙層結(jié)構(gòu)能夠促使計算機軟件處理能力得到進一步的提升。分層技術(shù)本身維護性較好,結(jié)構(gòu)清晰,同時比較容易管理。在當前的時代背景之下,利用分層技術(shù)可以強化商務信息化建設,實現(xiàn)商戶管理系統(tǒng)的多項功能,同時商鋪管理系統(tǒng)通過利用分層技術(shù)可以實現(xiàn)高效化管理。

2計算機軟件開發(fā)分層技術(shù)特點介紹

目前,隨著科學技術(shù)和信息技術(shù)的日益發(fā)展,需要進一步強化軟件分層技術(shù)的廣泛運用。利用軟件分層技術(shù)可以促使計算機軟件開發(fā)由傳統(tǒng)型的二次結(jié)構(gòu)轉(zhuǎn)變成為多層次結(jié)構(gòu),有利于計算機軟件開發(fā)效率的顯著提高,能夠促使工作人員節(jié)約大量的時間,避免資金浪費,促使開發(fā)質(zhì)量得到提高[2]。計算機軟件開發(fā)的過程當中,分層技術(shù)主要特征包括下列幾個方面:首先,拓展性。分層技術(shù)能夠?qū)浖阅苓M行必要的拓展,促使軟件的性能得到更新和升級,還可以對軟件應用加以改進和優(yōu)化。通常操作對象是比較復雜的軟件。分層技術(shù)可以對復雜的軟件進行科學合理分解,還可以對軟件功能進行優(yōu)化完善和調(diào)整,切實保障軟件的運行效率和質(zhì)量得到顯著的提高。其次,獨立性。在計算機軟件轉(zhuǎn)換和開發(fā)過程中,相關(guān)工作人員需要強化分層技術(shù)的廣泛運用,若軟件的某一層次產(chǎn)生問題,勢必會對其他層造成不利的影響,但是,通常不會對與之相隔的軟件層造成影響,以此保障層次之間的獨立性。最后,穩(wěn)定性。在當前計算機軟件開發(fā)的過程中,分層技術(shù)不僅能夠促使軟件的穩(wěn)定性得到顯著增加,還能顯著提升軟件的應用效果和質(zhì)量,以此保障軟件的可用性得到大幅度增強。因此,計算機軟件的開發(fā)過程運用分層技術(shù)能夠分解系統(tǒng)的功能,保障軟件安全正常穩(wěn)定的運行[3]。

3軟件開發(fā)的主要問題概述

目前,計算機軟件開發(fā)過程還依然存在著諸多缺陷和不足,主要體現(xiàn)在以下幾個方面。首先,安全管理工作不到位,缺乏對數(shù)據(jù)庫的高度重視,很多操作缺乏規(guī)范性,造成當前的計算機數(shù)據(jù)庫存在著大量的漏洞,數(shù)據(jù)庫特別容易被病毒和木馬所侵害。其次,在軟件開發(fā)過程中,病毒也會對數(shù)據(jù)庫的安全造成嚴重的威脅。除此之外,相關(guān)問題還包括相關(guān)工作人員操作不夠規(guī)范,導致處于開發(fā)階段的軟件難以實現(xiàn)正常的使用。

4計算機軟件開發(fā)中分層技術(shù)的實現(xiàn)

4.1雙層技術(shù)。當前的計算機軟件開發(fā)應當加強分層技術(shù)的廣泛運用。應用分層技術(shù)主要是促使雙層技術(shù)轉(zhuǎn)變成為三層技術(shù)、四層技術(shù)或者多層的技術(shù),以促使軟件開發(fā)效率和水平得到顯著的提高,同時降低相關(guān)工作人員的工作時間,節(jié)約開發(fā)成本。雙層技術(shù)主要以兩端作為基點,即服務器端和客戶端。在軟件應用的過程中,首先,客戶端接收消息,同時向用戶傳遞消息,由軟件處理邏輯聯(lián)系,并信息傳送給服務器;然后,通過軟件對信息進行總結(jié),再回傳給客戶端[4]。運用雙層技術(shù)能夠促使軟件的辦公效率得到顯著提高,同時還可以針對軟件使用效能進行改良和完善。但是雙層技術(shù)實際用戶數(shù)量偏少,若是存在應用環(huán)境、條件不合適的情況,服務器特別容易出現(xiàn)問題,甚至會導致故障,造成信息處理時間偏長,還會對用戶信息數(shù)據(jù)安全構(gòu)成重大的威脅。雖然雙層技術(shù)能夠滿足軟件開發(fā)需求,但是在實際應用的過程中其還是存在諸多的問題,需要相關(guān)人士采取有效的措施進行改良和完善。4.2三層技術(shù)。三層技術(shù)主要是在雙層技術(shù)的基礎(chǔ)之上的進一步改進完善和升級。它增加了必要的服務器,使計算機信息數(shù)據(jù)存儲能力得到顯著提高;它提升了信息處理的效率,使計算機和人之間可以實現(xiàn)交互,顯著提高了軟件的運行水平和運行效率。當前計算機軟件開發(fā)的三層技術(shù)主要包括數(shù)據(jù)層次、界面層次和業(yè)務處理層次,3個層次的劃分有利于計算機軟件收集信息和數(shù)據(jù),同時能夠加快信息和數(shù)據(jù)的有效計算和整理。4.3四層技術(shù)。四層技術(shù)主要是在三層雙層基礎(chǔ)之上開發(fā)而來的,由于目前計算機軟件開發(fā)環(huán)境比較復雜,所以雙層和三層技術(shù)在這種情況下無法滿足計算機軟件開發(fā)的要求,所以就需要將三層技術(shù)中的數(shù)據(jù)存儲層、界面層和業(yè)務處理層合理區(qū)分,以降低不同層次之間互相影響。四層技術(shù)包括了三層技術(shù)的數(shù)據(jù)存儲層、業(yè)務處理層,同時增加了存儲層和Web層,其中業(yè)務處理層主要用于Web層的數(shù)據(jù)和信息傳遞。4.4中間技術(shù)。中間軟件技術(shù)是各種軟件技術(shù)實際使用的紐帶。一方面,相關(guān)工作人員科學合理利用中間軟件技術(shù)能夠防止應用其他技術(shù)產(chǎn)生的各方面問題,有利于降低軟件開發(fā)難度,同時縮減相關(guān)技術(shù)的研究人員勞動強度和工作量,促使軟件開發(fā)工作效率得到顯著提高。另一方面,操作系統(tǒng)以及數(shù)據(jù)層之間的中間技術(shù)可以發(fā)揮重要作用,能夠規(guī)避軟件開發(fā)風險,切實保障軟件開發(fā)水平和質(zhì)量,有利于降低開發(fā)成本。4.5五層技術(shù)。五層技術(shù)是前幾項技術(shù)不斷演變而來的,適用于一些比較特殊的領(lǐng)域。由于四層技術(shù)難以切實滿足一些特殊領(lǐng)域的計算機運行要求,五層技術(shù)的運用,可以促使架構(gòu)分工得以改良和優(yōu)化。五層技術(shù)主要包括Web應用層、客戶層、Web應用內(nèi)層、集層以及資源層。相關(guān)工作人員在開發(fā)軟件的過程中,應在遵循內(nèi)在邏輯關(guān)系以及滿足客戶相應需求的基礎(chǔ)之上加強組建工作,以促使計算機軟件安全性和可靠性的提高。

5結(jié)語

在當前計算機軟件開發(fā)的過程中,應強化分層技術(shù)的廣泛運用。分層技術(shù)能夠促使計算機軟件的運行效率和穩(wěn)定性得到顯著提高,同時還可以對計算機軟件系統(tǒng)進行改良和優(yōu)化,顯著提升計算機軟件的開發(fā)水平和開發(fā)質(zhì)量,有利于節(jié)約軟件開發(fā)的成本,同時為軟件開發(fā)工作提供源源不斷的發(fā)展動力。

參考文獻

[1]張偉東,丁久榮.計算機軟件開發(fā)中的分層技術(shù)在金屬加工中的應用[J].世界有色金屬,2019(9):21-22.

[2]底慧萍.分層技術(shù)在計算機軟件開發(fā)中的應用效果分析[J].傳播力研究,2019,3(13):283.

篇5

1計算機軟件開發(fā)分析

計算機軟件具體可以分為系統(tǒng)軟件和應用軟件,計算機軟件具備非常鮮明的特征:第一,計算機軟件為社會的發(fā)展創(chuàng)造了無限的價值,直接促進了整個計算機行業(yè)的迅速發(fā)展前進,豐富了整個人類的文化生活,帶來了多元化的經(jīng)濟效益;第二,計算機軟件的開發(fā)并不是一項簡單輕松的工作,它涉及到的專業(yè)技術(shù)多種多樣,需要運用到很多的人力及物力,為社會提供了眾多的工作崗位,計算機軟件的開發(fā)促進了整個社會的經(jīng)濟發(fā)展。計算機軟件的開發(fā)主要有兩種功能目標,一種是為了對計算機實現(xiàn)日常的管理維護,實現(xiàn)用戶對計算機的良好控制,為計算機提供先進高效的管理桌面;另一種則是為了幫助客戶解決現(xiàn)實的各種應用問題,這種軟件的開發(fā)主要是進行工作管理、辦公軟件的開發(fā)工作。

2計算機軟件開發(fā)的常用方法

2.1軟件生命周期法軟件生命周期法指的是通過從時間的角度出發(fā),將軟件分解為不同的階段,具體包括軟件的設計、開發(fā)、評估、應用等,軟件開發(fā)設計人員要及時對分解的不同維度進行研究和改進[2]。通常來說,不同維度之間的研究工作都有屬于自身的方式以及周期,周期通常維持在6個月左右的時間。軟件分解的不同階段都有著特定的要求標準,軟件開發(fā)人員要深入了解客戶的需求,根據(jù)客戶的需求進行對軟件開發(fā)技術(shù)的補充說明,并且明確軟件的作用和需求。生命周期法的顯著優(yōu)點就是有利于軟件開發(fā)設計者的科學規(guī)劃安排工作,保證軟件開發(fā)每個階段有條不紊地進行。

2.2自動形式系統(tǒng)開發(fā)法自動形式系統(tǒng)開發(fā)法的前提就是用戶必須事先明確說明開發(fā)軟件的作用以及目標,然后軟件開發(fā)技術(shù)人員通過客戶的相關(guān)需求進行對計算機軟件系統(tǒng)的自動編碼設計[3],自動形式系統(tǒng)開發(fā)法所采用的工具是第四代中的開發(fā)軟件,著重說明該軟件的重要功能和完成的目標。

2.3原型化法相對來說,軟件的生命周期法不太適用于開始概念不清晰明確的軟件,因為軟件的生命周期法必須要求軟件技術(shù)開發(fā)人員對初期的研究信息數(shù)據(jù)進行科學的認定,并且還需要進一步地對部分軟件說明進行正確的定義。原型化法就很好地解決了這一問題,可以在不了解用戶對軟件功能和目標或者不知道系統(tǒng)適用性時進行采取原型化法。軟件開發(fā)技術(shù)相關(guān)人員在原型化系統(tǒng)的研究各個階段,明確軟件自身的相關(guān)要求,通過根據(jù)早前的概念基礎(chǔ)創(chuàng)建原始系統(tǒng),最后軟件的研究人員對其進行合理的審批[4]。

3計算機軟件開發(fā)技術(shù)的應用

任何行業(yè)都要注重產(chǎn)品的創(chuàng)新性以及先進性,計算機軟件開發(fā)市場更是如此,只有保證自己的軟件是最先進和最創(chuàng)新的,才能保證在市場上充滿競爭力,有自己立足之地。企業(yè)要不斷對傳統(tǒng)的軟件進行優(yōu)化以及不斷開發(fā)出新的軟件,這樣才能創(chuàng)造出更多的社會經(jīng)濟效益以及社會價值。一個軟件真正的成功之處還在于應用階段所體現(xiàn)出來的價值,接下來通過實際的例子去體現(xiàn)計算機軟件開發(fā)技術(shù)的應用過程以及創(chuàng)造的相關(guān)價值。

篇6

1分層技術(shù)概述

1.1內(nèi)涵

分層技術(shù)指代一種多層依賴關(guān)系,主要用來形容計算機軟件內(nèi)部,在軟件的實際開發(fā)環(huán)節(jié),既對軟件運行提出了具體要求,還應進行深入研究。有效利用分層技術(shù),有利于計算機軟件功能的豐富,進而推動計算機軟件開發(fā)進程。

1.2優(yōu)勢

1.2.1顯著提高軟件改革效率

分層技術(shù)的應用可顯著提高軟件改革效率,并能節(jié)約較多的開發(fā)時間。對于不再適用的軟件,憑借封層技術(shù)可將其升級改造,這可節(jié)省大量的軟件開發(fā)時間,大大提高工作效率,縮減成本投入,并能保障軟件質(zhì)量;

1.2.2賦予軟件較強的擴展性

分層技術(shù)賦予軟件較強的拓展性,簡單來說,延長了軟件的使用壽命。在復雜系統(tǒng)中,借助分層技術(shù)可將其分解,將不同功能合理分解各個層次,若軟件需要進行升級或者更新操作,只要圍繞待改革功能實施改革便可,無需修改整個軟件,此種模式可減少成本投入,還能簡化升級過程,突顯重點;

1.2.3促進軟件的使用

分層技術(shù)主要通過分層模式賦予功能層次接口新的定義,并可促進軟件的自主開發(fā),進而有效銜接各個接口。

2分層技術(shù)的應用

在計算機技術(shù)的短暫的發(fā)展進程中,軟件開發(fā)層次不斷提升,從原有的兩層以及三層結(jié)構(gòu)過渡到多層結(jié)構(gòu),與此同時,也提高了分層技術(shù)的應用范圍。

2.1兩層以及三層結(jié)構(gòu)技術(shù)

對于兩層計算機軟件模式而言,客戶端、數(shù)據(jù)庫服務器共同組成該模式。其中,前者負責提供用戶界面以及相應的邏輯處理工作,然而,后者負責接收客戶端指令,再參照指令完成數(shù)據(jù)庫查詢操作,最終返回查詢結(jié)果,在此種模式中的客戶端具有強大的業(yè)務邏輯處理能力,如若客戶端數(shù)量出現(xiàn)變動且增加時,將會涌現(xiàn)出維修成本增多、安全隱患系數(shù)增高、擴充性不良等缺陷。由此可知,若客戶端不多,具有較強的信息查詢能力,若客戶端較多,將會降低系統(tǒng)系統(tǒng)反應,最終趨于癱瘓,進而對用戶的使用情況產(chǎn)生影響,有些還會引發(fā)用戶數(shù)據(jù)信息丟失的現(xiàn)象。因此,兩層技術(shù)愈發(fā)不適應,需要過渡到三層技術(shù),只有這樣,才能全面滿足社會的各種需求??蛻舳伺c服務器共同組成三層技術(shù),其中服務器又包含數(shù)據(jù)庫與應用服務器。在該種層次技術(shù)中,客戶端負責提供人機交互,應用服務器負責業(yè)務邏輯,可顯著減輕客戶端負擔,也被稱為瘦客戶,數(shù)據(jù)服務器可訪問、改進數(shù)據(jù)信息。三層結(jié)構(gòu)技術(shù)與兩層對比,具有顯著優(yōu)勢,可顯著減小網(wǎng)絡負載,還具有便于維護、安全系數(shù)較高、擴展能力較強的優(yōu)勢,然而,兩層結(jié)構(gòu)技術(shù)仍被應用在軟件開發(fā)中,若用戶不多,則兩層結(jié)構(gòu)更加適用,具有一定優(yōu)勢。為此,在具體的軟件開發(fā)環(huán)節(jié),應結(jié)合實際情況,合理選擇分層技術(shù)。

2.2四層結(jié)構(gòu)技術(shù)

伴隨著時代的進步,計算機運行環(huán)境日益復雜,數(shù)據(jù)處理以及邏輯關(guān)系處理量迅速增加,由此可知,三層分層技術(shù)不再適用,在計算機結(jié)果日益精準、處理速度顯著加快的今天,為有效解決各種運算問題,應改進三層分層技術(shù),為此,四層分層技術(shù)營運而生。Web層、邏輯關(guān)系層、存儲層以及數(shù)據(jù)處理層共同組成該技術(shù),其中Web層具有一定的靈活性,可參照用戶的具體需求合理選擇路徑。若需要處理開發(fā)小項目,通??墒褂没贘SP的模式,若需要處理規(guī)模龐大的數(shù)據(jù)關(guān)系,可使用基于MVC的模式。邏輯關(guān)系層負責數(shù)據(jù)加工與處理。

2.3中間件技術(shù)

伴隨著計算機技術(shù)的進步,利用中間件技術(shù)充當免面向?qū)ο蠹夹g(shù)進行開發(fā),中間件一般存在于計算呈現(xiàn)分布式的環(huán)境中,它可減小開發(fā)周期、提高應用開發(fā)水平等特點。

2.3.1面向消息中間件

此種技術(shù)可針對信息進行同步傳遞,也可進行異步傳遞,它不僅具有普通中間件的屬性,還具有安全性較高、穩(wěn)定、可靠等特點。在計算機軟件開發(fā)環(huán)節(jié),對于中間件技術(shù)的應用而言,該技術(shù)已經(jīng)成為應用范圍最廣、銷售量較大的產(chǎn)品,它被大面積應用在交通以及金融等領(lǐng)域;

2.3.2面向?qū)ο笾虚g件

目前,部分大規(guī)模應用軟件,主要采用建立在組件技術(shù)之上,且分布系統(tǒng)還應涉及新型以及舊版組件,然而,此種組件在實際應用過程中也存在相互兼容以及干擾等問題,若僅僅在相應的平臺中運行,其作用將不能有效發(fā)揮。為此,面向?qū)ο笾虚g件技術(shù)隨之出現(xiàn),在對象以及分布式技術(shù)的基礎(chǔ)上,該技術(shù)具有一種現(xiàn)代通訊機制,它可在異構(gòu)分布情形中,達到傳遞對象的要求,本文中的對象不僅可源自本地服務器,還可來源于遠程機器。此技術(shù)技術(shù)具有強大的功能,還可進行跨平臺應用。

3結(jié)語

篇7

關(guān)鍵詞:計算機;軟件開發(fā);保護技術(shù)

中圖分類號:TP311.52 文獻標識碼:A文章編號:1007-9599 (2011) 1-0000-01

Analysis on Computer Software Development and Protection Technology

Luo Yun Gao Qin

(Xihua University,Chengdu610039,China)

Abstract:The software industry related to national and economic development,culture and system security,reflecting a country's overall strength Based on the security of the software development process design, information security protection technology and code analysis of software development process of computer software security technology.

Keywords:Computer;Software development;Protection technology

軟件是信息化的核心,信息、物資和能源已經(jīng)成為人類生存和發(fā)展的重要保障,信息技術(shù)的快速發(fā)展為人類社會帶來了深刻的變革。而在軟件開發(fā)中,軟件的安全開發(fā)過程和信息的安全成為重要的問題。

一、軟件開發(fā)的安全設計

在構(gòu)造應用程序自身的安全功能時,如果充分地引用現(xiàn)成產(chǎn)品所提供的安全功能,可以使得整個系統(tǒng)的安全功能成為一個整體。但更重要的是,這種做法可以彌補現(xiàn)成產(chǎn)品在安全功能上的不足,例如,現(xiàn)成產(chǎn)品一般不提供數(shù)字簽名功能,它只能在應用程序中實現(xiàn)。業(yè)務授權(quán)、事務原子性、一致性等也要通過應用程序流程、參數(shù)等的控制才能實現(xiàn)。

在軟件開發(fā)的安全工程過程中,在系統(tǒng)設計、實現(xiàn)階段,通過總結(jié)計算機內(nèi)部控制流程的特點,并轉(zhuǎn)化為業(yè)務需求和系統(tǒng)運行參數(shù),由技術(shù)部門在應用軟件中直接給予控制,可以低成本實現(xiàn)很多業(yè)務環(huán)節(jié)的風險防范,提高系統(tǒng)的可靠性和穩(wěn)定性。應用程序應進行的控制處理包括輸入輸出控制、處理控制等,用以保證輸入輸出數(shù)據(jù)的完整性、正確性和保密性,保證應用程序和文檔管理的嚴密性以及該作業(yè)的完整性。為對輸入數(shù)據(jù)進行審核,系統(tǒng)要編入有效檢查程序與維護控制程序,確保輸入屏幕的設計及輸入程序的正確性。編制程序時,要確保程序符合全部的業(yè)務需求。應有足夠的控制保證數(shù)據(jù)處理及傳輸?shù)恼_性,尤其要注意的是在交易發(fā)生錯誤時,要有完善的處理程序,提供清晰易用的錯誤提示、錯誤處理、斷點恢復等功能,注意系統(tǒng)更正時手續(xù)的完備性及對發(fā)生錯誤的可跟蹤審計性。

在安全程序的設計過程中,開發(fā)者需要創(chuàng)建一些模塊并把它們安裝在一起以提供所需要的安全服務。首先,需要創(chuàng)建一個整體的框架以指導每個模塊的開發(fā)。其次,需要單獨查看每一個需求,并為每個需求設計一個模塊或者組件。在某些情況下,由于需求之間存在沖突,或者現(xiàn)有的密碼模式是不充分的,系統(tǒng)可能不足以實現(xiàn)所需要的安全需求,但是如果系統(tǒng)可以滿足安全需求的一個可以令人滿意的子集,則可以降低系統(tǒng)安全需求,并且對系統(tǒng)運行環(huán)境和管理策略進行相關(guān)的調(diào)整,以使現(xiàn)有的安全設計可以進入實施階段。對大部分安全需求,都可以具有多種實現(xiàn)機制,因而安全產(chǎn)品的實現(xiàn)過程可以相當靈活,但是為了抵抗其他可能的攻擊,建議在其他條件允許的情況下,使用具有最強安全性的實現(xiàn)形式。

二、軟件開發(fā)中的信息保護

程序中所產(chǎn)生的缺陷是由于程序員出現(xiàn)了錯誤。一些錯誤是源于對需求描述的誤解,另一些則是由于過于復雜的程序或使用了型到內(nèi)在容易引發(fā)缺陷的結(jié)構(gòu)。所以,為了取得可靠性,應該使設計盡量簡單,保護信息不受沒有授權(quán)的訪問,將不安全結(jié)構(gòu)的使用減少到最低限度。通常軍隊里所采納的信息安全原則是所謂的“只有需要才能知道”的原則,即只有那些與本職工作相關(guān)的信息內(nèi)容才能得到,其余的信息對他們是不可得的。在程序設計過程中,也要用類似的原則去控制訪問系統(tǒng)數(shù)據(jù)。程序組件應該只允許訪問那些與自身實現(xiàn)相關(guān)的數(shù)據(jù)。使用程序語言中的范圍解釋規(guī)則把不該被程序其他部分訪問的數(shù)據(jù)隱藏起來。如果使用了信息隱藏,隱藏的信息就不會被無關(guān)組件所破壞。如果接口保持不變,數(shù)據(jù)表示的改變將不會影響到系統(tǒng)中的其他組件。保護信息在Java中比在較老的程序語言(例如c或Pascal)中要容易得多。這些較老的語言中沒有像對象類這樣的封裝結(jié)構(gòu),所以數(shù)據(jù)結(jié)構(gòu)的實現(xiàn)細節(jié)不能夠得到保護。程序的其他部分能夠直接訪問結(jié)構(gòu)。當變更發(fā)生的時候,這將帶來意想不到的副作用。使用面向?qū)ο笳Z言編程,提供對對象屬性訪問和更新的方法,禁止其他對象對屬性進行直接訪問,這是一種比較好的實現(xiàn)方式。這樣,對象屬性表示的改變不會影響到使用這些屬性的其他對象。這一點對于使用該方法于數(shù)據(jù)結(jié)構(gòu)和其他復雜屬性時特別重要。

三、代碼的安全性

有些語言的固有屬性對于安全的實現(xiàn)有很好的支持,使用這些語言可以避免一些通常的缺陷。使用強類型、具有越界檢查的、模塊化的、具有分段和分段保護的、具有垃圾回收和錯誤處理機制的編程語言所實現(xiàn)的系統(tǒng)是更可信的、更有安全保障的。例如,Java就是以實現(xiàn)安全代碼為目標的程序設計語言。另一些語言,例如同樣的腳本語言Perl語言,提供了一種“不潔模式”,可以監(jiān)視程序的輸入,并對程序不正確使用信息的行為進行報警。使用C語言實現(xiàn)的系統(tǒng),其可靠性是有限的。因為C語言沒有適當?shù)叵拗浦羔樀氖褂?,并且只能提供最基本的錯誤處理機制,這導致C語言程序經(jīng)??梢栽L問程序空間和程序分配的緩沖區(qū)以外的數(shù)據(jù)空間。額外的檢查經(jīng)常會存放到下一個連接的地址空間中,覆蓋原有的數(shù)據(jù)。在編碼階段限制使用低級的編程語言。使用更高級的指令編程語言,可避免一系列主要的錯誤根源,并允許軟件方案可以使用更少的人工合成碼進行編程。使用良好的編程規(guī)范可以彌補語言在安全方面的一些不足。編寫應用程序的時候,所建立的數(shù)據(jù)結(jié)構(gòu)和函數(shù)都必須是能夠被檢驗的。在程序編寫過程中,所有函數(shù)和過程的執(zhí)行過程都需要進行檢查,以發(fā)現(xiàn)錯誤。每個函數(shù)的錯誤狀態(tài)都必須加以檢查。為增強程序的可讀性,在命名規(guī)則、代碼格式和注釋規(guī)則方面應做出統(tǒng)一的要求或者建議。使用軟件過程和安全保障技術(shù)可以確保所有的操作和操作數(shù)都是正確的。

四、結(jié)束語

計算機和網(wǎng)絡應用在生活所占的比例越來越大,應用軟件的開發(fā)成為用戶享受各種服務的基本保證。只有通過軟件開發(fā)的安全性和保護技術(shù)的不斷深入研究,才能有效提高軟件開發(fā)的安全級別,保證軟件產(chǎn)品的安全性。

參考文獻:

[1]陳玲萍.軟件開發(fā)生命周期各階段的應用軟件安全性測試[J].企業(yè)科技與發(fā)展:下半月,2010,4:14-16

[2]常華.軟件的安全性――IT業(yè)下一個熱門領(lǐng)域[J].信息系統(tǒng)工程,2008,(8):20-20

作者簡介:

篇8

 

如今科學技術(shù)日新月異,電腦和智能手機普及家家戶戶,受電子商務安全和生活的快節(jié)奏等因素的影響,我國軟件開發(fā)在開發(fā)管理和控制技術(shù)方面也出現(xiàn)了諸多問題和缺陷,但由于我國軟件開發(fā)企業(yè)自身的規(guī)模有限,往往不重視軟件開發(fā)的管理與控制技術(shù),導致軟件質(zhì)量不高,開發(fā)效率低下,開發(fā)成本和維護成本高。針對于這些問題,本文從中小型軟件開發(fā)的管理以及控制技術(shù)方向進行分析以解決這些問題。

 

一、軟件開發(fā)方面存在的問題

 

(一)研發(fā)管理人員的專業(yè)素質(zhì)跟不上

 

軟件開發(fā)是一種復雜的接近于手工生產(chǎn)方式的生產(chǎn)過程,目前為止仍主要依賴于人的勞動,依賴于開發(fā)者的智慧和知識的結(jié)合,這在很大程度上與現(xiàn)代化工業(yè)生產(chǎn)有所不同,還沒有比較成熟的方法,軟件開發(fā)過程其效率可以說是相對比較低的。優(yōu)秀的軟件開發(fā)人員是軟件開發(fā)的生命源泉,沒有高素質(zhì)的專業(yè)開發(fā)和管理人員,軟件開發(fā)管理質(zhì)量、開發(fā)和維護成本、開發(fā)效率都得不到保障。在軟件公司競爭如此激烈的情況下,解決這些問題也已經(jīng)是迫在眉睫的事情。

 

(二)沒有標準的開發(fā)管理制度

 

目前,我國軟件開發(fā)公司絕大部分沒有較為合理、標準的軟件開發(fā)的管理制度,沒有建立起自身的軟件質(zhì)量控制制度,更沒有相應的組織結(jié)構(gòu)設計和戰(zhàn)略規(guī)劃設計,對于其中存在的問題能解決的解決,解決不了的都待日后的升級完善再去逐一解決,使得軟件質(zhì)量無法得到保障,同時開發(fā)效率相對較低,如何提高軟件開發(fā)的質(zhì)量和效率,使其達到近似工業(yè)化生產(chǎn)的高效運行方式并有良好的質(zhì)量保證,規(guī)范的軟件開發(fā)管理和控制技術(shù)當然是提高軟件生產(chǎn)的效率的一種方法。

 

二、針對軟件開發(fā)方面存在的問題的解決措施

 

(一)培養(yǎng)高素質(zhì)的開發(fā)人員

 

軟件更新?lián)Q代速度愈來愈快,對軟件開發(fā)人才的素質(zhì)要求也越來越高,軟件公司應當定期招聘和更換部分人員,給公司注入新鮮的血液,帶動整個公司的發(fā)展,而招聘一定數(shù)量優(yōu)秀的大學生或者有優(yōu)秀工作經(jīng)驗能力的專業(yè)軟件開發(fā)人員當然是非常好的選擇。軟件開發(fā)人才和其他人才一樣需要在使用中發(fā)現(xiàn)、培養(yǎng),在培養(yǎng)中使用、提高,人才的發(fā)掘和培養(yǎng)取決于管理者本身的素質(zhì),所以對管理者的選擇絲毫不能馬虎,管理者的管理能力和管理經(jīng)驗都應具備高要求,具備良好的語言表達能力,年紀不能太大。要求對軟件開發(fā)有深刻的認識,并能解決開發(fā)過程中出現(xiàn)的各種問題。軟件公司可購買一些學習資料和數(shù)據(jù)庫,鼓勵員工學習新知識、新理念,培養(yǎng)創(chuàng)新思維和創(chuàng)新能力,掌握分析、判斷、解決、預測技術(shù)問題的方法。建立公司論壇,鼓勵員工交流分享好的工作經(jīng)驗。還可以定期請外聘知名講師或者行業(yè)知名人員給開發(fā)人員講課,傳播心得等。

 

(二)制訂高效合理的開發(fā)管理制度

 

軟件開發(fā)公司應有公司產(chǎn)品管理部門,公司產(chǎn)品管理部門應分為研發(fā)部門、產(chǎn)品管理部門,而研發(fā)部門是整個開發(fā)公司的核心,其下應分設明確的研發(fā)小組和支持小組,把任務分配給各開發(fā)小組的成員,各小組根據(jù)任務要求開發(fā)自己的產(chǎn)品完成自己的任務。開發(fā)小組確定各項開發(fā)流程中的細節(jié),完成軟件開發(fā)前的準備工作,制定詳細的流程說明以及使用說明,確定項目預算,提交于支持小組和開發(fā)經(jīng)理審核,審核批準通過才進行完整的開發(fā)任務,以便提高效率降低成本。而軟件開發(fā)的支持組,則包括了軟件的配置管理以及軟件的測試與支持兩個部分,其負責對開發(fā)組開發(fā)過程中軟件管理與質(zhì)量控制提供支持。還應配備研發(fā)經(jīng)理、產(chǎn)品經(jīng)理以及系統(tǒng)分析員等職員,他們的主要作用是及時發(fā)現(xiàn)并解決開發(fā)過程中出現(xiàn)的問題,對軟件開發(fā)的質(zhì)量進行管理和控制,確保進入下一個階段的設計符合設計規(guī)范的要求,從而實現(xiàn)軟件開發(fā)的全程監(jiān)控。

篇9

 

計算機普及之初,軟件的開發(fā)使用的都是二層架構(gòu)技術(shù),即只考慮2個端點:客戶端和服務器端。用戶通過客戶端界面所提供的數(shù)據(jù),直接在客戶端對數(shù)據(jù)進行計算和處理,然后通過服務器在數(shù)據(jù)庫中對數(shù)據(jù)進行讀取等操作,得出需要的最終結(jié)果,并將結(jié)果傳輸?shù)娇蛻舳私缑骘@示給用戶。

 

在這種方式中,客戶端直接和服務器對接,沒有其他數(shù)據(jù)處理環(huán)節(jié),有利于提高數(shù)據(jù)庫數(shù)據(jù)讀取的速度,但缺點是當計算機軟件的任何一個部分發(fā)生更改,哪怕是最微小的變動,整個計算機軟件都需要重新開發(fā),限制了軟件的通用性。特別是對于大型軟件開發(fā),除不利于軟件的修改,在軟件的開發(fā)期也存在很大的困難,需要程序編程人員相互高度配合,而且也不利于工作的分配。

 

為了解決這種矛盾,就出現(xiàn)了計算機軟件的三層架構(gòu)技術(shù),將原先單一的客戶端和服務器端的模式,根據(jù)功能分別拆分成表示層、業(yè)務邏輯層、數(shù)據(jù)訪問層和數(shù)據(jù)實體層。采用“分而治之”的思想,把復雜的問題分成不同的部分,即不同的層,以便逐個解決問題,便于軟件的設計、控制、資源分配和修改。為了讓大家更好地了解三層架構(gòu)技術(shù),本文從幾個方面對軟件開發(fā)中的三層架構(gòu)技術(shù)進行介紹。

 

1三層架構(gòu)技術(shù)中具體分工和各層功能介紹

 

(1)表示層:主要是指適合用戶與計算機的交互界面,目的是為了方便用戶數(shù)據(jù)的輸入和顯示處理后的數(shù)據(jù)結(jié)果,這部分工作主要由界面的美工完成。軟件設計人員通過表示層界面收集用戶輸入的數(shù)據(jù)要求,并把這些數(shù)據(jù)轉(zhuǎn)換成業(yè)務邏輯層可以操作的數(shù)據(jù)。同時也把業(yè)務邏輯層傳出的結(jié)果轉(zhuǎn)換成客戶想要的效果,通過文本、圖片、動畫、3D等格式顯示在用戶眼前。表示層也可以被理解為輸入和輸出的操作平臺,我們可以創(chuàng)建一個圖書館,然后把客戶要求設計成固定的元素:圖片、腳本、CSS、附件等進行統(tǒng)一管理。

 

(2)業(yè)務邏輯層:又稱為領(lǐng)域?qū)?,是表示層和?shù)據(jù)訪問層的中間橋梁,實現(xiàn)業(yè)務之間的邏輯處理,主要是對經(jīng)過表示層輸入的數(shù)據(jù)進行驗證、計算和業(yè)務規(guī)則等方面的處理。在程序編寫的過程中,主要體現(xiàn)在對象的方法、屬性、事件、索引、接口等,通過這些手段,實現(xiàn)與數(shù)據(jù)訪問層的對接。業(yè)務邏輯層的位置非常關(guān)鍵,它位于表示層與數(shù)據(jù)訪問層的中間位置,對數(shù)據(jù)的交換起到了承上啟下的作用。對于表示層而言,它是被調(diào)用者,而對于數(shù)據(jù)訪問層而言,它是調(diào)用者,依賴與被依賴的關(guān)系都糾結(jié)在業(yè)務邏輯層上。

 

(3)數(shù)據(jù)訪問層:直接和數(shù)據(jù)庫中原始數(shù)據(jù)進行對接,是對數(shù)據(jù)底層的操作,主要包括對數(shù)據(jù)庫中數(shù)據(jù)的增加、刪除、修改、查找等操作。該層主要的功能是根據(jù)業(yè)務邏輯層的要求,把存儲在數(shù)據(jù)庫中的數(shù)據(jù)取出并提交給業(yè)務邏輯層,同時把業(yè)務邏輯層處理的數(shù)據(jù)結(jié)果保存到數(shù)據(jù)庫。對數(shù)據(jù)庫的操作,可以分為單表操作、關(guān)聯(lián)表操作和不同數(shù)據(jù)庫之間的操作。可以充分利用SQL語言中的Insert,delete,update,Select等語句,對數(shù)據(jù)庫進行操作,同時返回不同的數(shù)據(jù)類型結(jié)果,例如Data Table,Bool,Data Set,Data Reader等,將其生成DLL文件,然后通過組件的引用就可以現(xiàn)實數(shù)據(jù)訪問的功能。

 

(4)數(shù)據(jù)實體層:就是數(shù)據(jù)庫中的原始數(shù)據(jù)。為了能夠更有效地存儲原始數(shù)據(jù),方便數(shù)據(jù)訪問層對數(shù)據(jù)的存取等操作,就必須對數(shù)據(jù)庫進行設計,將數(shù)據(jù)有規(guī)律地進行存放。

 

數(shù)據(jù)庫設計是信息系統(tǒng)的核心和基礎(chǔ)。首先我們應該對軟件用戶的業(yè)務數(shù)據(jù)的使用情況進行調(diào)查和分析,了解所有業(yè)務數(shù)據(jù)的種類、范圍、數(shù)量、存在形式以及它們之間的關(guān)聯(lián)情況,并由此確定用戶對數(shù)據(jù)庫的要求和相關(guān)制約條件等,形成用戶的需求分析。

 

通過用戶的需求分析,建立出一個合適的數(shù)學模型。這個數(shù)學模型應能夠完整反映出現(xiàn)實中所有業(yè)務數(shù)據(jù)的信息結(jié)構(gòu)、信息內(nèi)容和信息之間的互相關(guān)聯(lián)與制約關(guān)系,并滿足用戶對信息的存儲、維護、檢索和修改數(shù)據(jù)的操作要求等。

 

2三層架構(gòu)技術(shù)的工作原理

 

首先,用一張圖表示三層架構(gòu)技術(shù)之間的關(guān)系(見圖1)。

 

從圖1中可以很清晰地看到四層之間的一個邏輯關(guān)系。用戶通過表示層的界面輸入數(shù)據(jù),將數(shù)據(jù)傳遞給業(yè)務邏輯層進行驗證、計算、處理等操作,然后傳遞給數(shù)據(jù)訪問層,通過數(shù)據(jù)訪問層到數(shù)據(jù)庫中進行增加、刪除、查找等操作,得到用戶所需要的數(shù)據(jù)結(jié)果,將結(jié)果進行存儲并把結(jié)果返回到數(shù)據(jù)訪問層,再通過給業(yè)務邏輯層,最后以用戶設定的格式顯示在用戶界面,最終用戶得到自己需要的結(jié)果。四層中任意一層僅僅和自己相鄰的層進行數(shù)據(jù)交換,而和其他層無任何關(guān)聯(lián)。

 

三層架構(gòu)技術(shù),其實就相當于在客戶端與數(shù)據(jù)庫端之間加了一個“中間層”,也可以稱之為組件層。這個“中間層”,并不是實際物理意義上的中間層,而指的是邏輯上的中間層,把應用程序中的業(yè)務規(guī)則、數(shù)據(jù)訪問、合法性校驗等工作放到了中間層進行處理,客戶端不再直接與數(shù)據(jù)庫進行數(shù)據(jù)交互,而是通過中間層來建立連接,再由中間層和數(shù)據(jù)庫進行數(shù)據(jù)的交互,最終實現(xiàn)客戶端和數(shù)據(jù)庫端的數(shù)據(jù)的交互。

 

3三層架構(gòu)技術(shù)的規(guī)則

 

在軟件開發(fā)的三層架構(gòu)技術(shù)中,第四層數(shù)據(jù)實體層是基本的數(shù)據(jù)源,是必不可少的一層,是軟件操作的基礎(chǔ),它的運算效果取決于計算機的硬件和數(shù)據(jù)庫設計的合理性。而對于另外三層,并不是只要項目被劃分成了表示層、業(yè)務邏輯層和數(shù)據(jù)訪問層就稱之為三層架構(gòu),這三層之間還必須要遵守一些約定的規(guī)則:(1)表示層僅僅只是一個和用戶進行對接的界面,因而可以將其任意移植到其他類似環(huán)境的項目中。(2)數(shù)據(jù)實體層只能通過數(shù)據(jù)訪問層進行數(shù)據(jù)讀取,其他層都不能夠直接從數(shù)據(jù)實體層中讀取數(shù)據(jù)。(3)數(shù)據(jù)訪問層只能作為一個對數(shù)據(jù)庫實體的讀取中間層,而不能進行任何業(yè)務邏輯的處理操作。(4)軟件設計應該以業(yè)務邏輯層為核心,而不是數(shù)據(jù)訪問層或是數(shù)據(jù)實體層,更不應該是表示層。在業(yè)務邏輯層應該以面向?qū)ο蟮姆绞?,實現(xiàn)所有的有業(yè)務邏輯操作。(5)數(shù)據(jù)層中所有的數(shù)據(jù)都應該在一定的抽象程度上做到與系統(tǒng)無關(guān)。(6)設計的時候,所有的遠程對象技術(shù)都應該考慮到不同的服務器和多臺服務器之間的負載均衡作集群。(7)這3個模塊中的任意模塊都可以運行在不同的服務器上。

 

一個項目是否需要進行三層設計,首先要看這個項目的復雜度。實際上,很多項目只需要編輯一個WebApplication就足夠?qū)崿F(xiàn)全部功能了,根本不需要更復雜的技術(shù),而只有真正復雜的項目,才需要利用三層架構(gòu)技術(shù)進行設計和開發(fā)。

 

4三層架構(gòu)技術(shù)的優(yōu)勢

 

通過對三層架構(gòu)技術(shù)的工作原理的理解,我們可以得到通過三層架構(gòu)技術(shù)開發(fā)出來的軟件的優(yōu)點。

 

(1)結(jié)構(gòu)清晰,耦合度低。三層架構(gòu)技術(shù)中層次分明,層與層之間結(jié)構(gòu)清晰,軟件編寫人員分工明確,層與層之間的關(guān)聯(lián)不多,降低層與層之間的依賴性,編寫人員可以只關(guān)注整個結(jié)構(gòu)中的某一層,從而極大地避免了二層技術(shù)開發(fā)的軟件中存在的耦合度問題。

 

(2)可維護性高,可擴展性高。用三層架構(gòu)技術(shù)開發(fā)的軟件在后期維護的時候,極大地降低了維護成本和維護時間。軟件的任意一部分的功能更改和升級,僅需更改某層的設計和編寫,而不需要對整個系統(tǒng)做出改變,而不像用二層技術(shù)開發(fā)的軟件那樣,一個小程序的變化都需要調(diào)整整個軟件開發(fā),極大地提高了軟件的維護性和擴展性。

 

(3)利于開發(fā)任務同步進行,容易適應需求變化。三層架構(gòu)技術(shù)極大地解決了軟件開發(fā)的問題,特別是大型軟件開發(fā)的問題,讓軟件開發(fā)實現(xiàn)任務的同步。在二層技術(shù)開發(fā)軟件時,由于僅有2個端點,故軟件開發(fā)時就存在一個編程的先后,必須由一個團隊對整個軟件流程十分清楚,并從始至終編寫所有環(huán)節(jié)的程序。而三層架構(gòu)技術(shù)把軟件分成4個層次,而且層與層之間關(guān)聯(lián)不大,故可以將軟件分成4個不同層次進行同步開發(fā),實現(xiàn)任務的同步,從而大大縮短了軟件開發(fā)的時間,更容易適應需求的變化。

 

5三層架構(gòu)技術(shù)的缺點

 

(1)降低了整個系統(tǒng)的讀取數(shù)據(jù)的速度。在二層技術(shù)結(jié)構(gòu)中,大部分數(shù)據(jù)的讀取是通過客戶端直接造訪數(shù)據(jù)庫而得到的結(jié)果,而三層架構(gòu)技術(shù)卻必須經(jīng)過4個層次的完整過程才能得到最終結(jié)果,無形中增加了中間環(huán)節(jié),從而降低了系統(tǒng)的性能。

 

(2)有時會導致關(guān)聯(lián)層次的修改。由于三層架構(gòu)技術(shù)中層與層之間存在邏輯關(guān)系,當其中一個層次由于需要而發(fā)生功能的改變或增加時,很有可能導致其他層次的代碼改變。例如:當表示層中增加了一個功能,為了保證其各層設計的結(jié)構(gòu)合理性,可能需要在對應的業(yè)務邏輯層和數(shù)據(jù)訪問層中都增加相應的代碼,從而達到最終數(shù)據(jù)的一致性。

 

(3)整體代碼編寫的工作量增加。由于三層架構(gòu)技術(shù)增加了層與層之間的接口,有些能夠直接使用的代碼現(xiàn)在不得不分開使用,無形中增加了代碼的編寫工作量。

 

(4)增加了開發(fā)成本。原先一個整體的軟件開發(fā),現(xiàn)在首先必須將其分割成不同功能的層次,而且需要考慮層與層之間的連接接口,無形中增加了整個軟件開發(fā)的過程和工作量,從而增加了軟件開發(fā)的成本。

 

總體而言,針對如今軟件開發(fā)的日趨大型化、規(guī)?;奶攸c,三層架構(gòu)技術(shù)解決了很多二層架構(gòu)技術(shù)中無法解決的問題,從而真正實現(xiàn)了軟件開發(fā)的同步性、可維護性和可擴展性,是軟件開發(fā)進步的重要標志。

篇10

作為在金融領(lǐng)域的IT綜合服務提供商,東南融通的業(yè)務范圍涵蓋了規(guī)劃咨詢、軟件開發(fā)實施、技術(shù)服務、IT外包與運營服務、系統(tǒng)集成及ATM維護服務等。2007年,東南融通在紐約證交所上市,目前,其在全球范圍內(nèi)擁有員工2000多名,并在美國、加拿大等地設有分支機構(gòu)以開拓海外業(yè)務。

正是由于東南融通已經(jīng)走上了從廈門走向世界的道路,因此其必須面對來自全球化競爭的巨大挑戰(zhàn)?!霸谧呦驀H化道路的時候,首先要面臨的就是國外更成熟的市場環(huán)境?!睎|南融通首席執(zhí)行官連偉舟說: “客觀地說,國內(nèi)的軟件外包還處在比較初級的階段,而國際上已經(jīng)有很多發(fā)展得很成熟的公司,要和他們競爭,就一定要增強自身的競爭力,而提升軟件質(zhì)量是重中之重?!?/p>

事實上,現(xiàn)在國內(nèi)很多的軟件開發(fā)團隊都面臨著各種各樣的挑戰(zhàn): 一方面,市場要求企業(yè)以更短的周期來開發(fā)高質(zhì)量的軟件; 另一方面,軟件應用需求隨著開發(fā)環(huán)境和結(jié)構(gòu)的日趨復雜而變得更加復雜; 再加上分布式開發(fā)、高性能要求、多平臺等種種因素都加重了軟件開發(fā)的壓力。

在此之前,東南融通也面臨著同樣的難題,除了開發(fā)質(zhì)量和周期的可控性差外,軟件維護成本也一直居高不下; 此外,由于東南融通在國內(nèi)擁有多個軟件開發(fā)基地,如何讓這些分散的團隊進行有效的協(xié)同更是非常棘手的問題。

提升軟件質(zhì)量

于是,力圖在國際市場上大展拳腳的東南融通使用了Rational的ClearCase和ClearQuest建立了測試管理平臺以對軟件測試進行系統(tǒng)的管理,并嘗試測試驅(qū)動軟件開發(fā)的協(xié)同模式。

“在傳統(tǒng)手工管理的方式下,測試與需求間的關(guān)系是很難進行跟蹤控制的。由于缺乏必要的系統(tǒng)平臺支撐,在需求發(fā)生變更時就容易造成測試資產(chǎn)的遺漏,也無法對測試資產(chǎn)進行有效的跟蹤管理?!睎|南融通測試中心經(jīng)理翁旭驥表示: “這些問題在東南融通搭建了基于Rational統(tǒng)一過程(RUP)和CMMI標準的測試平臺后得到了很好的解決,不但控制了開發(fā)的流程及產(chǎn)品的質(zhì)量,開發(fā)知識也得到了積累?!?/p>

此外,東南融通身處上海的開發(fā)團隊與身處廈門的測試團隊通過ClearCase和ClearQuest實現(xiàn)了異地協(xié)同開發(fā)。首先,廈門的測試人員測試并提交缺陷,系統(tǒng)會在指定的時間自動雙向同步廈門與上海的ClearQuest數(shù)據(jù)庫和ClearCase的VOB庫。當ClearQuest數(shù)據(jù)庫接收到數(shù)據(jù)后,系統(tǒng)自動發(fā)送郵件給上海該項目的缺陷分配人,缺陷分配人收到郵件通知后,會登錄ClearQuest并分配缺陷,隨后,修改缺陷的開發(fā)者就會收到缺陷處理的郵件通知。當開發(fā)人員處理完缺陷后,便會在ClearQuest中執(zhí)行Resolve操作,于是缺陷自動變成“已解決”狀態(tài),等待測試人員驗證。