時間:2022-05-27 01:48:28
導(dǎo)語:在軟件開發(fā)技術(shù)的撰寫旅程中,學(xué)習(xí)并吸收他人佳作的精髓是一條寶貴的路徑,好期刊匯集了九篇優(yōu)秀范文,愿這些內(nèi)容能夠啟發(fā)您的創(chuàng)作靈感,引領(lǐng)您探索更多的創(chuàng)作可能。
1.軟件工程技術(shù)在系統(tǒng)軟件開發(fā)時的特點
開發(fā)一個軟件用到的技術(shù)很多,不同的系統(tǒng)軟件對軟件工程技術(shù)的要求也不一樣,在開發(fā)系統(tǒng)的時候,要考慮到當(dāng)時人們的需求是什么,所以說系統(tǒng)開發(fā)是很復(fù)雜的。系統(tǒng)軟件的各個模塊的耦合度要很高才行,一個模塊發(fā)生變化時,會帶來很多的后果。系統(tǒng)開發(fā)的過程應(yīng)該是一個規(guī)范、科學(xué)和系統(tǒng)的漫長過程。
2.軟件工程技術(shù)在系統(tǒng)軟件開發(fā)時要注意的事項
以前在進行軟件開發(fā)之前,要進行一個很重要的工作,那就是系統(tǒng)建模,然后再根據(jù)先前的系統(tǒng)需求做出分析,還要對當(dāng)時的社會需求進行徹底的調(diào)查。經(jīng)過調(diào)查發(fā)現(xiàn),市面上的軟件有很多已經(jīng)不能滿足應(yīng)用程序的更新?lián)Q代,這主要是由于系統(tǒng)開發(fā)的時間太長以及程序的復(fù)雜度太高導(dǎo)致的。所以,軟件工程技術(shù)在系統(tǒng)軟件開發(fā)時要注意下面這兩點。
2.1遵循科學(xué)性
要開發(fā)一個好的軟件,就要注重科學(xué)性,在開發(fā)軟件前要進行市場調(diào)查,做好需求分析。還要拿市場上已經(jīng)有的同類或相關(guān)軟件進行比較和借鑒,這樣我們就可以選擇相適用的軟件工程技術(shù)來使用。軟件工程技術(shù)在軟件系統(tǒng)開發(fā)中發(fā)揮的作用越大,系統(tǒng)開發(fā)就會越輕松,軟件開發(fā)的工期就會越短。
2.2注重實用性
在開發(fā)軟件的時候,一定要注重軟件的實用性,根據(jù)系統(tǒng)開發(fā)的實際情況,選擇更好的軟件工程技術(shù)。軟件工程技術(shù)是系統(tǒng)開發(fā)過程中的一個很重要的輔助,這個輔助也決定了系統(tǒng)是否可以順利地運行。
3.軟件工程技術(shù)在系統(tǒng)軟件開發(fā)中的具體應(yīng)用
系統(tǒng)軟件的開發(fā)既需要注意它的科學(xué)性,也需要注意它的實用性,但是現(xiàn)代的系統(tǒng)軟件中只注意這些是不夠的,我們還要掌握一些方法。第一是優(yōu)化構(gòu)建軟件的開發(fā)模型,軟件開發(fā)模型的構(gòu)建也是十分重要的,在這個模型下,可以使系統(tǒng)軟件的開發(fā)更加的高效,思路更加的清晰,如果出現(xiàn)問題,可以進行有效的解決,不耽誤系統(tǒng)的下一步開發(fā)。第二個方法的是,要積極開發(fā)軟件程序應(yīng)用,不但要知道軟件的性能,還要知道軟件的發(fā)展?jié)撡|(zhì),另外也要了解用戶想要什么,方便后續(xù)的優(yōu)化甚至減少優(yōu)化。第三個方法是對軟件工程的項目進行管理,這需要一些步驟:(1)項目準(zhǔn)備,為項目做出一個合理的可行性分析。(2)啟動項目,知道項目的可行性,準(zhǔn)備工作已經(jīng)做好了,就可以對軟件工程的計劃方案進行制定。(3)對項目組織進行計劃。統(tǒng)計一下各個方面需要的人力,還有技術(shù)要求。(4)對項目進行跟蹤評估,這個很重要。我們通過一個案例來更好地理解軟件工程技術(shù)在系統(tǒng)軟件開發(fā)中如何更好地應(yīng)用。比如說,要建一個圖書管理系統(tǒng),可以使用Java語言,結(jié)合JSP技術(shù),再結(jié)合前端的HTML5對系統(tǒng)表面進行美工,采用MVC框架,使用企業(yè)數(shù)據(jù)庫。JSP的穩(wěn)定性很強,很多大型的游戲設(shè)計師都是用這個技術(shù),Java語言是一種腳本語言,可以適用于很多版本的電腦,HTML5可以實現(xiàn)三段適應(yīng),手機、電腦和平板可以同時登陸,而且頁面都是一樣的,沒有變化。這些軟件工程技術(shù)都是很實用的,價格也很實惠,開發(fā)起來也比較方便,由于該技術(shù)的耦合度要很高,維護起來也很方便。前期開發(fā)的思路也是很清晰的,采用的技術(shù)也很明白,下一步就是軟件工程導(dǎo)論和UML建模,還有需求分析交給技術(shù)人員,讓他們進行研究開發(fā)。如此便節(jié)省了不少的工期,減少了后期維護的次數(shù)和費用。一個好的軟件工程技術(shù)所需要的系統(tǒng)維護的實際經(jīng)費,要比前期系統(tǒng)的預(yù)算費用要少很多。
關(guān)鍵詞:軟件工程;軟件開發(fā);創(chuàng)新策略
軟件工程的管理指根據(jù)軟件開發(fā)相關(guān)的技術(shù)知識和相關(guān)的軟件工具兩者相結(jié)合的項目工程,這樣才能確保工作的順利進行。對于軟件管理管理主要有兩個方面組成:一方面是重要部分的軟件開發(fā),另一部分是補充性的軟件工程管理。一個軟件工程的管理主要是軟件工程的啟動、工程的計劃、工程的執(zhí)行、軟件工程的控制管理、工程結(jié)束這五個方面。這五個方面每一個環(huán)節(jié)都有自己特殊的作用,每個環(huán)節(jié)之間相互聯(lián)系,相輔相成。軟件工程的啟動環(huán)節(jié)是一個工程的必要條件,它是對改工程的初步了解,詳細(xì)分析之后再考慮該工程是否合理,能否實施;工程的計劃階段它是整個工程實施的基礎(chǔ),這一環(huán)節(jié)的實施中需要相關(guān)部門的負(fù)責(zé)人制定該項目的實施計劃,具體到工程的每個方面;工程的執(zhí)行與工程的控制管理兩個階段是同時完成的,執(zhí)行的過程中進行相應(yīng)的控制管理,這樣可以監(jiān)督工程的實施是夠符合計劃,保證工程的進步順利完成。最后一個階段就是項目的收尾工作的執(zhí)行,一定要根據(jù)計劃的要求對進度控制在合理的范圍內(nèi),并根據(jù)工程的實施過程進行相應(yīng)的總結(jié)工作。
1計算機軟件開發(fā)技術(shù)研究
1.1自動化方法
自動化是新時代的開發(fā)形式:使用最新一代技術(shù),用開發(fā)軟件做工具,協(xié)助計算機軟件開發(fā)人員,使其操作更加方便,減少了“低層次”工作,因為利用這種方法開發(fā)人員只需要把自己的目標(biāo)和內(nèi)容告訴軟件開發(fā)工具軟件,該軟件就會自動滿足用戶需求,不用再為編碼費腦筋,使得軟件者降低了軟件開發(fā)的“體力勞動”,開發(fā)起來更容易。其次,利用這一方法,軟件開發(fā)周期會縮短,開發(fā)成本大幅度下降,所以,頗受軟件開發(fā)人員的青睞。
1.2原型化方法
在軟件開發(fā)的前期總歸會遇到各項需求難以確定的情況,這是可以采用原型化方法,在軟件開發(fā)的過程中,逐步明確軟件需求,確定設(shè)計方案,開發(fā)出使客戶滿意的產(chǎn)品,利用這種方法根據(jù)已知的需求建立一個可以隨時修改的模型,根據(jù)客戶中使用者的意見及時改進,使之逐漸完善,更好的契合他們的需求,滿足客戶,這種方法的優(yōu)勢在于客戶使用者的參與度、決策權(quán)得到提高和加強,研發(fā)工程師還要有良好的溝通能力,多與客戶進行充分溝通,并引導(dǎo)他們配合,確保開發(fā)的完備與功能齊全。
1.3生命周期法
生命周期法在軟件開發(fā)工程中有著不容小覷的地位和重要的作用,是從時間的角度把軟件的開發(fā)分解為軟件計劃、需求分析、軟件設(shè)計、程序編碼、軟件測試、運行維護6個時期,也稱6個階段,可以看出這6個階段其實質(zhì)是軟件開發(fā)的全過程,是一個系統(tǒng)的、連續(xù)性強、銜接穩(wěn)定的過程,前一個階段的結(jié)束意味著是下一個階段的開始。這種開發(fā)方法特別適合開發(fā)大型軟件,利于組織和管理人員,同時便于軟件開發(fā)方法的研究,所以,生命周期法對提高大型軟件開發(fā)的質(zhì)量和效率非常有利。
2計算機軟件開發(fā)中的分層技術(shù)
2.1雙層技術(shù)
就計算機軟件開發(fā)中的雙層技術(shù)來看,必須切實把控住兩大重心,一個需要與服務(wù)器進行連接,另一個需要與客戶端進行連接,進而通過兩者的連接,實現(xiàn)遠(yuǎn)程信息的傳遞。該信息環(huán)境下,使用者的數(shù)據(jù)資料能夠按照預(yù)定模式傳送給服務(wù)其,并且能夠在數(shù)據(jù)庫中查找出與之相應(yīng)的數(shù)據(jù)信息資料,再以此為基礎(chǔ)傳遞給客戶端,能夠有效滿足使用者對數(shù)據(jù)資源的切實需求。該分層方式雖然較為簡單,可以滿足部分使用者的實際需求,但當(dāng)使用者數(shù)量過多時,容易造成運算時間的急劇增加,這不光難以確保信息的時效性,還容易出現(xiàn)相應(yīng)的數(shù)據(jù)安全風(fēng)險問題。所以在將雙層分層技術(shù)應(yīng)用于軟件開發(fā)過程中時,必須在保障服務(wù)器性能優(yōu)越的同時,對客戶人數(shù)進行適當(dāng)限制,以此保障該系統(tǒng)的穩(wěn)定性。
2.2三層技術(shù)
結(jié)合雙層技術(shù)所存在的弊病,相關(guān)工作者在對雙層技術(shù)進行優(yōu)化的基礎(chǔ)之上,通過增加應(yīng)用服務(wù)其的方式,研發(fā)出了三層分層技術(shù),其結(jié)構(gòu)大體包括業(yè)務(wù)處理層、數(shù)據(jù)層與界面層三大部分。該技術(shù)主要以雙層技術(shù)為依托,能夠大幅度改善原本雙層技術(shù)應(yīng)用效率低下的現(xiàn)實問題,不光有效增加了應(yīng)用程序的運算速度,同時還能夠多客戶對信息傳輸?shù)男枨?。此外,三層技術(shù)還在應(yīng)用服務(wù)器中增加了一個端口,為較大信息量資源的處理與傳輸給以了充分的端口支持。但該技術(shù)在實際應(yīng)用的過程中,很容易出現(xiàn)資源不必要消耗的問題,這對于計算機應(yīng)用程序的開發(fā)與發(fā)展而言是極為不利的,所有需要將該技術(shù)與雙層技術(shù)進行結(jié)合應(yīng)用。
2.3四層技術(shù)
一般來說,雙層技術(shù)與三層技術(shù)的應(yīng)用雖然能夠基本滿足軟件開發(fā)的需求,但是當(dāng)計算機軟件應(yīng)用環(huán)境較為復(fù)雜時,該兩類技術(shù)將難以滿足程序使用的切實需求,故以三層技術(shù)為基礎(chǔ),相關(guān)工作人員逐漸開發(fā)出了四層技術(shù)。就四層技術(shù)的結(jié)構(gòu)來看,主要涵蓋web層、數(shù)據(jù)庫層、存儲層與業(yè)務(wù)管理層四大板塊,其中業(yè)務(wù)層多是為了實現(xiàn)數(shù)據(jù)庫層運算結(jié)果向web層傳輸?shù)墓δ?,能夠有效實現(xiàn)數(shù)據(jù)的整合處理與相互傳遞。數(shù)據(jù)庫層能夠以隱藏數(shù)據(jù)訪問代碼的方式對數(shù)據(jù)庫與對象之間的聯(lián)系進行認(rèn)定,可以有效避免由于匹配不恰當(dāng)而產(chǎn)生的差異性問題。四層技術(shù)的應(yīng)用能夠?qū)崿F(xiàn)對各類數(shù)據(jù)信息的有效整合,在處理大量數(shù)據(jù)信息時有著上述兩種技術(shù)難以企及的優(yōu)勢,且不會造成不必要資源的浪費,計算結(jié)果精確性較高,能夠有效實現(xiàn)多客戶的協(xié)同需求。但不得不說的是,該技術(shù)雖然具有較強的適宜性,但究其應(yīng)用領(lǐng)域范圍來看,仍然不夠廣泛,需要進行深入拓展。
2.4五層技術(shù)
現(xiàn)今在部分較為特殊的領(lǐng)域與計算機數(shù)據(jù)交互環(huán)境中,為進一步優(yōu)化數(shù)據(jù)處理的速率與效果,相關(guān)工作者以四層技術(shù)為基點,通過將數(shù)據(jù)層分割為集成層與資源層的方式,形成了五層結(jié)構(gòu)??梢哉f五層技術(shù)的應(yīng)用不光能夠在四層技術(shù)的基礎(chǔ)之上進一步優(yōu)化系統(tǒng)運作速率與穩(wěn)定性,還能夠結(jié)合功能實際應(yīng)用點滿足部分特殊硬件設(shè)備的運行需要。而就該技術(shù)實況來看,雖然其結(jié)構(gòu)層次更為精細(xì),但其并不具備較強的推廣性,應(yīng)用范圍仍然比較狹窄,代表性不強。
3軟件工程管理的創(chuàng)新策略
3.1提高軟件工程管理整體化意識,加強風(fēng)險防范項目工程的計劃
在整個工程的項目中具有重要的作用,這關(guān)系到整個工程的發(fā)展。項目工程在實施之前,相關(guān)的管理人員一定要組織相關(guān)技術(shù)人員進行研究、探討,綜合所有人的有效的建議,制定出符合實際工作的規(guī)章管理,可以實現(xiàn)工程的順利進行。另外,在工程的實施階段還要對工程的進度情況進行有效的掌控,做到對工程的總體把控。對風(fēng)險的意識也必須要加強,分險管理可以及時的發(fā)現(xiàn)企業(yè)生產(chǎn)過程中的問題與弊端,從而及時的做出相應(yīng)的補救。工程的管理人員還應(yīng)加強對于風(fēng)險的意識和防患于未然的想法。
3.2實施精細(xì)化管理
如何加強軟件工程的實際工作效率和產(chǎn)品的質(zhì)量安全,加強相關(guān)技術(shù)人員的素質(zhì)水平,需要從軟件工程的各個環(huán)節(jié)進行管理,并需要對各個子項目進行精細(xì)化的管理,(1)有關(guān)的部門的管理人員要對相關(guān)的環(huán)節(jié)做到詳細(xì)的了解,只有進行詳細(xì)的了解之后才可以做出科學(xué)合理的計劃,在對軟件工程的設(shè)計階段主要有技術(shù)的開發(fā)、工程的測試等多個發(fā)展階段。(2)要對軟件工程的各個管理部門和職能部門進行相應(yīng)的熟悉,還要對這一部門的主要作用和發(fā)展的方向進行了解。(3)設(shè)立一個較為詳細(xì)的組織部門,在對軟件的實際中,對于影響軟件的一些不利的因素進行及時的調(diào)整。針對軟件工程的的相關(guān)質(zhì)量、管理人員、進度等多方面進行管理,為之后的管理奠定堅實的基礎(chǔ)。
3.3建全管理體系,并進行針對性變革
在對軟件工程進行管理的活動中,要先保證管理工程的順利進行和后續(xù)工作的有序開展需要建立一套完善的管理體系。所以,相關(guān)的管理人員在制定管理體系的時候,要對整個軟件工程進行合理的預(yù)測,并結(jié)合各個子項目和各部門的作用與發(fā)展的動向進行度組織框架的建立;并根據(jù)這一框架對管理體系進行細(xì)分和管理細(xì)則的制定。在完善管理體制的同時還要對加強對企業(yè)管理體制的變革與完善。
3.4化軟件工程管理的監(jiān)督工作
軟件工程的監(jiān)督管理在整個工程的實施過程中具有重要的意義,所以在工程的進行中進行相應(yīng)的監(jiān)督。實施監(jiān)督工作有利于工程的規(guī)范和發(fā)展,提高工作的質(zhì)量和工作的實際效率,對軟件開發(fā)的成本進行有效的把控。監(jiān)督工作主要是看工程的實施是否符合計劃的規(guī)定和工程的進度。監(jiān)督工作中的工作人員需要對這些數(shù)據(jù)資料進行詳細(xì)的記載,并及時的進行總結(jié)與分析,發(fā)現(xiàn)問題可以及時的進行處理,從而減少工程中的失誤。
4結(jié)語
根據(jù)上面的講述,在軟件工程的管理中專業(yè)的管理人才具有關(guān)鍵性的作用,但目前我國的實際發(fā)展情況,大部分的管理人員還是存在各種的缺陷。所以對于軟件開發(fā)管理的企業(yè)要注重對專業(yè)管理人員的培養(yǎng),實施較為全面的管理制度。所以面對目前我國軟件開發(fā)管理中的各種問題,就需要針對這些問題加強對軟件工程管理中的風(fēng)險管理和監(jiān)督管理,從而提高軟件工程管理的工作效率和工作質(zhì)量。
參考文獻
[1]楊周禮.計算機軟件工程項目管理的探究[J].電子測試,2015(13).
[2]侯凱.淺談軟件工程管理的現(xiàn)狀和創(chuàng)新策略[J].計算機光盤軟件與應(yīng)用,2014(24):67-68.
關(guān)鍵詞:軟件開發(fā);建模技術(shù);應(yīng)用;UML;模型驅(qū)動
引言
計算機軟件,是日常工作學(xué)習(xí)最常用,能夠簡化工作的形式和內(nèi)容。因此,開發(fā)新的軟件,進一步加強計算機的實用性,成為了計算機科學(xué)發(fā)展的方向。而軟件的開發(fā),需要有大量數(shù)據(jù)支持的建模技術(shù),只有通過數(shù)據(jù)的模擬以及不斷的數(shù)據(jù)試驗,確定建模技術(shù)可以使用,才能保證軟件開發(fā)的順利,以及質(zhì)量高。能夠在測試的抗損耗的范圍內(nèi),實現(xiàn)高效率的工作。因此文章內(nèi)容,主要針對的就是軟件開發(fā)之前的建模技術(shù)進行詳細(xì)的分析和總結(jié),并且對其應(yīng)用進行闡述。
1軟件開發(fā)模型技術(shù)
1.1軟件開發(fā)的建模技術(shù)概述
1.1.1軟件建模
軟件建模,主要體現(xiàn)的是一種思想,是在系統(tǒng)需求以及系統(tǒng)現(xiàn)實之中,架起了一座橋梁,讓虛擬的,抽象的事務(wù)變成能夠看見和摸得到的,這樣可以滿足人們生活和工作中的需要。而且軟件的建模,也是需要海量的數(shù)據(jù)支持才能完成的,并且實現(xiàn)開發(fā)和使用的目的。所以,軟件建模,需要依據(jù)其想要表現(xiàn)出來的實際操作模式和內(nèi)容,選擇數(shù)據(jù)進行建模的工作。
1.1.2傳統(tǒng)軟件開發(fā)面臨的問題
軟件的開發(fā),是基于建模技術(shù)而研發(fā)出來的,雖然建模技術(shù)不能完全完善軟件的功能,但是基礎(chǔ)功能的呈現(xiàn)也能滿足人們和工作的需求。但是目前傳統(tǒng)軟件的開發(fā),以及更新還是面臨著一定的問題,如果問題得不到解決,會導(dǎo)致軟件不能使用,甚至?xí)霈F(xiàn)系統(tǒng)癱瘓的狀態(tài)。比如,在初期的軟件開發(fā)過程中,書寫代碼是最基本的開發(fā)軟件的工作,也是建模的基礎(chǔ),但是書寫代碼本身就是一個簡單的程序,如果不設(shè)計模型,以及不進行文檔的編寫,就會導(dǎo)致整體出現(xiàn)漏洞,因此,傳統(tǒng)的軟件開發(fā),應(yīng)該把程序編寫和文檔設(shè)計以及效率有效的結(jié)合在一起。而且現(xiàn)代社會,對軟件的需求極高,軟件更新的速度也是比較快的。
1.2新軟件開發(fā)模式
UML的提出現(xiàn)階段,我國計算機軟件的開發(fā),尤其是新軟件的開發(fā),主要是借助于模型UML,提出UML模型,主要是因為該模型的構(gòu)建技術(shù),符合現(xiàn)代人們對軟件的需求和要求。而且利用UML,可以統(tǒng)一建模的語言,這樣有利于開發(fā)軟件。而且可以把抽象化的內(nèi)容具象化,并且利用UML建模,可以實現(xiàn)三種建模方式。最重要的是,UML建模的提出,可以讓軟件的開發(fā),逐漸向編碼靠攏,畢竟編碼是軟件開發(fā)的基礎(chǔ),而不應(yīng)該為了創(chuàng)新軟件的技術(shù)和功能,偏離編碼的中心。
1.3模型驅(qū)動體系結(jié)構(gòu)
1.3.1UML基本概念
UML模型技術(shù)的概念,就是統(tǒng)一建模語言,主要就是指的憑借事物、關(guān)系和圖而實現(xiàn)一種表達軟件內(nèi)容的建模形式和方式。該種建模形式更能夠體現(xiàn)出建模的優(yōu)勢和特點。而且利用UML模式可以從三個方面進行建模,一個是動態(tài)圖,一個是靜態(tài)圖,以及物理圖,通過這三個圖的內(nèi)容的構(gòu)建,可以有效的實現(xiàn)抽象化的內(nèi)容,轉(zhuǎn)變成具象化。通過圖1可以了解到動態(tài)建模和靜態(tài)建模之間的關(guān)系,其中靜態(tài)圖就是利用表現(xiàn)邏輯為基礎(chǔ),把一些不存在變化的元素進行連接起來,比如軟件之中存在的類別,包圖、例圖、對象圖等組件圖等進行有效連接。而動態(tài)圖就是把軟件在工作過程中,可能體現(xiàn)出來的變化進行記錄,然后依據(jù)具體的內(nèi)容進行改變和設(shè)計。最后則是物理圖,就是依據(jù)軟件的物理結(jié)構(gòu)表現(xiàn)進行設(shè)計,這三類內(nèi)容是軟件實體設(shè)計的依據(jù)和根本基礎(chǔ)。因此,應(yīng)該依據(jù)UML的模型開發(fā)軟件。
1.3.2UML的特點
利用UML建模,是整個模型驅(qū)動體系結(jié)構(gòu)中的重點內(nèi)容,而且因為UML具有獨特的特點,可以讓軟件開發(fā)具有更多的優(yōu)點。首先,UML的特點就是,基本上涵蓋了目前我國社會上對軟件開發(fā)所需要的基本建模技術(shù)和內(nèi)容,這對于開發(fā)和創(chuàng)新新的軟件提供了基礎(chǔ)技術(shù)內(nèi)容,實現(xiàn)了軟件開發(fā)的建模技術(shù)的語言統(tǒng)一,這樣有助于開發(fā)軟件。其次,則是利用UML可以實現(xiàn)動態(tài)和靜態(tài)的結(jié)合,這樣能夠保證靜態(tài)關(guān)系和動態(tài)關(guān)系之間的對象以及結(jié)構(gòu)具有聯(lián)系,實現(xiàn)了時間和狀態(tài)的聯(lián)系,這樣的動態(tài)聯(lián)系能夠保證軟件的開發(fā)者以及建模技術(shù)的設(shè)計者,對軟件從多角度盡心了解。
2基于UML的應(yīng)用分析
基于UML的建模技術(shù)以及軟件開發(fā),在具體的應(yīng)用中,也起到了比較好的效果。利用UML模型,在應(yīng)用中,提高的軟件的配置,能夠在大數(shù)據(jù)測試階段,保證較好的運算速度和效率以及準(zhǔn)確率。尤其是軟件的應(yīng)用,在工作管理,校園管理中起到了重要的作用。比如企業(yè)中的人員招聘,檔案的記錄,或者是學(xué)校的系統(tǒng)管理以及教師管理等內(nèi)容,都是與UML模型技術(shù)開發(fā)軟件有著直接的關(guān)系。而且可以實現(xiàn)不同系統(tǒng)之間的兼容,能夠?qū)崿F(xiàn)語言的統(tǒng)一性,便于操作,能夠有效的完成工作內(nèi)容。有效的提高了軟件的質(zhì)量,同時利用UML建模技術(shù)和基礎(chǔ)模型,可以讓軟件中的關(guān)系更加的明了,便于軟件之中不同項目以及狀態(tài)的行為有序的展現(xiàn)出來,這樣可以保證程序和軟件不出現(xiàn)錯亂的情況。
3結(jié)束語
目前我國的軟件開發(fā),最基本的功能就是下載、安裝和刪除,然后就是軟件內(nèi)容內(nèi)部的一些基礎(chǔ)功能項目。像目前辦公比較常用的WPS,就是軟件開發(fā)的一種。但是在軟件開發(fā)的過程中,是需要建模技術(shù)的,只有通過大量的數(shù)據(jù)試驗,才能夠建立適合客戶使用的軟件,才能開發(fā)軟件。因此,文章內(nèi)容是針對利用MDA模型為基礎(chǔ),構(gòu)建模型技術(shù),實現(xiàn)驅(qū)動體系的建立,然后進行軟件的開發(fā)使用。并且在最后的依據(jù)其應(yīng)用進行簡單的分析,可以在實際中的使用該款軟件。
參考文獻
[1]張媛媛.軟件開發(fā)的建模技術(shù)研究與應(yīng)用[D].北京:首都經(jīng)濟貿(mào)易大學(xué),2010.
[2]劉旭.建模技術(shù)在軟件開發(fā)中的應(yīng)用[J].電子技術(shù)與軟件工程,2016(8):122-125.
[3]周海,張葉.淺析軟件開發(fā)的建模技術(shù)研究與應(yīng)用[J].管理決策,2014(7):122-124.
[4]陳鳳萍.UML建模技術(shù)在軟件開發(fā)中的應(yīng)用探究[J].電子技術(shù)與軟件工程,2014(5):145-147.
【關(guān)鍵詞】服務(wù)搭建式;軟件開發(fā);軟件技術(shù)
軟件技術(shù)的發(fā)展正在進行著積極的改變。傳統(tǒng)的軟件設(shè)計方法是通過對客戶具體需求進行了解,從而達到最終的設(shè)計目的。但是這種方法僅僅可以滿足客戶的短期需求,不會隨著企業(yè)的發(fā)展以及需求的改變而進行合理的改變。因此,對面向服務(wù)的搭建式軟件開發(fā)技術(shù)研究有著鮮明的現(xiàn)實意義。
1搭建式開發(fā)的基本思想
對于面向服務(wù)類型的搭建式軟件開發(fā)技術(shù)我們可以進行這樣的理解:主要指的是可以即時對不同類型的服務(wù)資源進行組合或者是在規(guī)定時間以及規(guī)定范圍內(nèi)迅速的搭建成一個可用的軟件應(yīng)用,并且可以很好的滿足用戶所提出的一系列個性化需求”。相對于傳統(tǒng)的面向服務(wù)類型的軟件來說,本文當(dāng)中所涉及到的相關(guān)理論內(nèi)容在技術(shù)研究與設(shè)計過程當(dāng)中提出了兩個基礎(chǔ)特征:一個是按需,另一個是即時。
1.1界面設(shè)計
在以往傳統(tǒng)的軟件界面設(shè)計過程當(dāng)中,因為在設(shè)計過程當(dāng)中,相關(guān)的程序員在設(shè)計過程當(dāng)中往往都是憑著自身的直覺來對具體的用戶界面完成設(shè)計與實現(xiàn),此種方法在實際的應(yīng)用過程當(dāng)中,不僅僅會在很大程度之上進一步增加基礎(chǔ)界面設(shè)計工作的實際工作量,并且此種界面設(shè)計方法在現(xiàn)實的表達過程當(dāng)中,將會很難獲得操作的一致性,同時用戶在實際使用過程當(dāng)中所具有的方便性也很難達到最優(yōu)化的效果。
1.2搭建式開發(fā)的優(yōu)勢
搭建式的軟件開發(fā)方式在實際的應(yīng)用過程當(dāng)中將會進一步的縮短軟件的開發(fā)時間,并且在現(xiàn)實的設(shè)計過程當(dāng)中還將會節(jié)約80%以上的軟件開發(fā)成本,同時還將會提高60%以上的實際工作效率,并且在現(xiàn)實的開發(fā)過程當(dāng)中,此種開發(fā)背景之下的開發(fā)活動對于開發(fā)人員的基礎(chǔ)性技術(shù)要求也將會被大大降低。我們以軟件初次上線的測試結(jié)果來對其進行比較,傳統(tǒng)的開發(fā)方式,初次上線的BUG數(shù)量大約在三百個以上,而基于搭建式的軟件開發(fā)方式,其初次測試的BUG數(shù)量均在三十之下,搭建式開發(fā)的質(zhì)量將會是傳統(tǒng)軟件開發(fā)的十倍。但是此種開放方式,讓業(yè)務(wù)用戶從原有的關(guān)心技術(shù)、逐漸轉(zhuǎn)向為了關(guān)心業(yè)務(wù)內(nèi)容。尤其是WebGIS一類的專業(yè)性軟件開發(fā)?;诖朔N優(yōu)勢,我們可以說“零編程搭建式”得開發(fā)方式將會是GIS的一場完美革命。
2搭建式開發(fā)技術(shù)
2.1數(shù)據(jù)中心
數(shù)據(jù)中心可以說是軟件發(fā)展過程當(dāng)中一個重要的組成部分,其在實際的應(yīng)用以及發(fā)展過程當(dāng)中將會十分重要的作用。而在系統(tǒng)當(dāng)中,數(shù)據(jù)中心將會由數(shù)據(jù)倉庫、構(gòu)件倉庫以及相關(guān)的搭建平臺所互相組成。如圖一所示就是數(shù)據(jù)中心的搭建開發(fā)過程。從圖1當(dāng)中我們不難看出數(shù)據(jù)中心與搭建式開發(fā)技術(shù)之間的具體關(guān)系。
2.2構(gòu)件技術(shù)
構(gòu)件技術(shù)所具備的基本思想是在軟件開發(fā)以及設(shè)計過程當(dāng)中,通過對可復(fù)用的基礎(chǔ)軟件構(gòu)件進行創(chuàng)建以及合理的利用,來進一步的解決相關(guān)的應(yīng)用軟件在實際開發(fā)過程當(dāng)中所存在的問題。其在實際應(yīng)用過程當(dāng)中與相關(guān)的對象編程語言并不相同從這個方面進行思考,構(gòu)件技術(shù)其實是一種更加高層次的軟件對象技術(shù)。對于使用構(gòu)件來搭建系統(tǒng)的開發(fā)者而言,一個構(gòu)件就是一個接口集,只能通過接口才能與構(gòu)件進行通信;而對于構(gòu)件來說,接口是包含一個函數(shù)地址。在實際的應(yīng)用過程當(dāng)中,構(gòu)件技術(shù)將會進一步的獨立于語言,但是卻可以很好的面向于應(yīng)用程序,在實際的應(yīng)用過程當(dāng)中,僅僅會規(guī)定相關(guān)構(gòu)件的基礎(chǔ)外在表現(xiàn)形式但是不會規(guī)定軟件在實際應(yīng)用過程當(dāng)中的具體實現(xiàn)方法。在實際的應(yīng)用過程當(dāng)中,其既可以應(yīng)用具體的面向?qū)ο蟮南嚓P(guān)編程語言進行設(shè)計實現(xiàn),也可以利用一些非面向?qū)ο蟮木幊陶Z言來進行軟件而設(shè)計實現(xiàn)。
3結(jié)束語
綜上所述,我們國家近幾年的經(jīng)濟水平有了極大程度的提升,經(jīng)濟的快速發(fā)展讓其它行業(yè)的發(fā)展受到了極大程度的推動作用。但是在實際的應(yīng)用以及發(fā)展過程當(dāng)中,無論是哪個方面的發(fā)展都將會面臨諸多的發(fā)展問題,并且在發(fā)展過程當(dāng)中,發(fā)展目標(biāo)還應(yīng)該建立在社會需求之上。所以面向服務(wù)的軟件開發(fā)需要進一步被完善。本文以上內(nèi)容立足于軟件開發(fā)的基礎(chǔ)內(nèi)容,對搭建式軟件開發(fā)技術(shù)基礎(chǔ)內(nèi)容進行了簡要的論述。希望可以通過本文以上內(nèi)容的論述,促進軟件開發(fā)進一步完善。
參考文獻
[1]展廣朋.關(guān)于搭建式軟件開發(fā)技術(shù)及其實踐應(yīng)用的幾點分析[J].電子技術(shù)與軟件工程,2013(24):96.
[2]郭鵬,李亞暉,孫磊,蔡曉樂.面向嵌入式軟件開發(fā)的UML到Simulink模型轉(zhuǎn)換方法[J].計算機科學(xué),2016(02):192-198.
關(guān)鍵詞:計算機軟件;開發(fā);安全技術(shù)
在計算機軟件開發(fā)過程中,技術(shù)人員結(jié)合具體的市場需求,分析潛在的安全隱患,采取安全技術(shù),保證用戶信息安全,防止出現(xiàn)信息被泄漏、篡改、損毀等情況,減少電腦被攻擊的次數(shù),維護好用戶的權(quán)益。計算機已經(jīng)應(yīng)用到社會各個領(lǐng)域,為人們提供了極大的便利。但是在實際應(yīng)用的過程中,用戶的計算機經(jīng)常受到網(wǎng)絡(luò)黑客或者病毒的攻擊,影響了用戶的使用體驗感,甚至出現(xiàn)私密信息泄露的問題。因此,本文主要針對計算機軟件開發(fā)安全技術(shù)進行分析,提出合理的對策和建議。
1計算機軟件開發(fā)安全技術(shù)的重要作用
在計算機軟件開發(fā)中,軟件作為用戶與硬件之間的接口,需要加強安全防護,提升計算機性能,改善計算機運行環(huán)境。計算機軟件開發(fā)安全技術(shù)的應(yīng)用,具有十分重要的作用。第一,有利于推動計算機軟件設(shè)計的規(guī)范性,規(guī)避潛在的安全問題,提升計算機軟件的性能,延長計算機軟件的使用壽命,滿足用戶不同層次的需求,讓計算機保持良好的運行狀態(tài),從而吸引更多的客戶。第二,計算機在社會不同領(lǐng)域和專業(yè)中的應(yīng)用,拓寬了計算機軟件的應(yīng)用范圍,為人們的生產(chǎn)生活提供了極大的便利,提高了生產(chǎn)的效率,但是也存在一定的安全隱患。因此,通過安全技術(shù)的應(yīng)用,有效提升軟件的安全性能,減少了外界的影響與干擾,創(chuàng)造了良好的運行條件[1]。第三,有利于保護用戶的個人隱私。在計算機應(yīng)用范圍不斷擴大的前提下,用戶有很多私密的信息通常會放在計算機內(nèi),但是各種因素的影響,比如出現(xiàn)誤操作、外界因素的影響等,增加了計算機系統(tǒng)運行的安全隱患和用戶信息泄露的風(fēng)險。容錯技術(shù)、加密技術(shù)、防病毒技術(shù)、防泄漏技術(shù)等安全技術(shù)的應(yīng)用,有利于保證計算機的安全,保護用戶的個人隱私[2]。
2計算機軟件開發(fā)存在的隱患
計算機軟件開發(fā)過程會受到周圍環(huán)境的影響,增加了軟件開發(fā)的安全隱患,無法真正保證計算機軟件系統(tǒng)的安全性,影響了計算機的正常運行。
2.1計算機設(shè)備自身存在的風(fēng)險
受到外界因素的影響,計算機設(shè)備長時間運行,線路會出現(xiàn)老化問題,或者被人為地破壞,內(nèi)部系統(tǒng)出現(xiàn)卡頓,設(shè)備配置不合理,無法保證計算機的正常運行,增加了設(shè)備運行的安全風(fēng)險。在計算機使用過程中,用戶沒有對設(shè)備進行定期維護與管理,缺乏日常的檢查,再加上使用方法不當(dāng)或者操作過程存在不當(dāng)行為,缺乏對計算機風(fēng)險的預(yù)測,隨意下載各種不良軟件、文件等,不僅增加了計算機運行的負(fù)擔(dān),甚至超出了計算機的運載范圍,增加了網(wǎng)絡(luò)安全風(fēng)險。因此,為了保障計算機正常運行,用戶要做好計算機設(shè)備的檢查與維護。
2.2網(wǎng)絡(luò)黑客攻擊
在互聯(lián)網(wǎng)中,黑客利用自己的網(wǎng)絡(luò)知識和技術(shù)通過網(wǎng)絡(luò)安全漏洞,對用戶的計算機進行攻擊,竊取、損壞他人的文件,導(dǎo)致計算機癱瘓。目前,由于計算機信息管理機制需要進一步完善,再加上用戶管理權(quán)限設(shè)置存在問題,給不法分子提供了可乘之機。黑客會通過口令和發(fā)送電子郵件的方式進入計算機的操作系統(tǒng),盜取內(nèi)部的重要信息,篡改文件信息,導(dǎo)致計算機信息系統(tǒng)不再完整,甚至網(wǎng)絡(luò)癱瘓,給用戶帶來經(jīng)濟損失和數(shù)據(jù)損失[3]。
2.3網(wǎng)絡(luò)病毒入侵
網(wǎng)絡(luò)病毒具有傳播速度快、范圍廣、形式復(fù)雜以及破壞性強的特點。隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,雖然網(wǎng)絡(luò)安全監(jiān)管力度不斷增加,但是用戶計算機依然存在被網(wǎng)絡(luò)攻擊的問題,并且計算機一旦感染病毒,很難徹底清除,影響計算機的運行速度,導(dǎo)致系統(tǒng)頻繁重啟,甚至癱瘓,給用戶帶來巨大的損失。因此,計算機用戶要規(guī)范自己的使用行為,提升網(wǎng)絡(luò)安全防范意識,做好安全軟件和殺毒軟件的安裝更新。
3安全技術(shù)在計算機軟件技術(shù)中的應(yīng)用
為了提升計算機的安全性,在計算機軟件技術(shù)開發(fā)過程中,需要采用安全技術(shù),提升計算機的安全防護能力,規(guī)避潛在的安全風(fēng)險。
3.1防火墻技術(shù)的應(yīng)用
在計算機軟件開發(fā)過程中,為了有效減少計算機運行中存在的風(fēng)險,設(shè)計人員要根據(jù)當(dāng)前的防火墻技術(shù),在計算機內(nèi)外兩個網(wǎng)絡(luò)之間設(shè)置防火墻,從根本上保證計算機的安全。第一,設(shè)計人員要對網(wǎng)絡(luò)進行審核,做好內(nèi)部網(wǎng)絡(luò)劃分,然后做好隔離保護,有效減少外界網(wǎng)絡(luò)對計算機內(nèi)部的影響[4]。第二,要采用信息加密技術(shù),做好寶貴信息的隱藏工作,避免被非法分子利用,提升計算機的安全性能,有效保護內(nèi)部的信息數(shù)據(jù)。第三,采用漏洞安全掃描技術(shù),及時掃描計算機的安全漏洞,然后做好修補工作。因此,軟件開發(fā)技術(shù)人員要重視對防火墻技術(shù)的開發(fā),提升防火墻防范的安全級別,增強抵御網(wǎng)絡(luò)安全風(fēng)險的能力。
3.2做好計算機信息系統(tǒng)設(shè)計
為了有效保障計算機的安全運行,軟件設(shè)計人員要建立安全的信息管理系統(tǒng),提升系統(tǒng)安全防范能力。第一,設(shè)計人員要根據(jù)當(dāng)前客戶的需求,融合多元化的信息元素,不斷創(chuàng)新信息系統(tǒng),提升計算機信息系統(tǒng)性能,提升運行的效率,適應(yīng)當(dāng)前社會迅速發(fā)展的要求。第二,做好安全信息的管理與維護。為了避免計算機信息管理系統(tǒng)遭到破壞,設(shè)計人員優(yōu)化信息系統(tǒng)管理的各個環(huán)節(jié),既要保證系統(tǒng)內(nèi)部各個部分的獨立性,又能密切配合,排除互相干擾,實現(xiàn)信息的共享,為計算機正常運行提供安全保障,滿足客戶的基本需求,提升計算機性能,做好風(fēng)險的自動識別,保證計算機正常運行。
3.3采用網(wǎng)絡(luò)入侵檢測技術(shù)
計算機軟件開發(fā)技術(shù)水平的提升推動了網(wǎng)絡(luò)檢測技術(shù)的發(fā)展。網(wǎng)絡(luò)檢測技術(shù)的應(yīng)用,可以有效減少網(wǎng)絡(luò)攻擊的次數(shù)和頻率。入侵檢測技術(shù)能夠?qū)W(wǎng)絡(luò)運行情況進行檢測,統(tǒng)計異常的網(wǎng)絡(luò)行為,并且在受到外界攻擊以后,及時發(fā)出警報。入侵檢測技術(shù)實現(xiàn)了通信技術(shù)網(wǎng)絡(luò)技術(shù)的融合,提升了網(wǎng)絡(luò)安全防范的智能化水平,能夠?qū)φ麄€計算機網(wǎng)絡(luò)系統(tǒng)進行有效的監(jiān)控,有力阻擋外界不良信息的干擾,減少用戶損失。在軟件技術(shù)的推動下,混合入侵檢測技術(shù)的應(yīng)用,可以滿足不同用戶的基本需求,融合不同軟件的優(yōu)點,監(jiān)控和防范的范圍更加廣泛,有效提升了保護的效果[5]。
3.4應(yīng)用防病毒技術(shù)
根據(jù)病毒傳播的特點,軟件開發(fā)技術(shù)要融入安全技術(shù),提升軟件安全防范能力,避免導(dǎo)致傳播范圍進一步擴大,防止破壞計算機系統(tǒng),提升計算機安全防護能力和抵御病毒能力。第一,安裝防病毒入侵程序,做好病毒定期排查工作,針對已經(jīng)進入電腦的病毒要進行徹底的清理,挖掘隱藏病毒,結(jié)合實際情況做好計算機的日常維護,保證計算機正常運行,提升病毒抵御能力[6]。第二,安裝防病毒軟件,保證計算機在第一時間內(nèi)能夠隔離、清除病毒,防止病毒進一步擴散。并且用戶要定期升級殺毒軟件,做好病毒的實時監(jiān)控,有效避免病毒入侵[7]。第三,做好計算機補丁的修復(fù),如果系統(tǒng)安全漏洞沒有得到及時修復(fù),就會給病毒入侵的機會,需要利用系統(tǒng)安全軟件做好系統(tǒng)補丁,避免病毒通過網(wǎng)絡(luò)進入計算機等。
4結(jié)語
在計算機軟件開發(fā)安全技術(shù)的過程中,技術(shù)人員要根據(jù)當(dāng)前的市場需求,不斷應(yīng)用先進的防火墻技術(shù)和防病毒技術(shù),提升計算機信息系統(tǒng)性能和網(wǎng)絡(luò)入侵檢測技術(shù)水平,有效規(guī)避潛在的安全風(fēng)險,降低被黑客攻擊的次數(shù),為用戶使用計算機創(chuàng)造良好的環(huán)境。
[參考文獻]
[1]李夏.信息安全背景下計算機軟件技術(shù)的開發(fā)與應(yīng)用對策[J].信息記錄材料,2021(7):66?68.
[2]丁勇.安全技術(shù)在計算機軟件開發(fā)中的應(yīng)用研究———評《計算機安全技術(shù)》[J].現(xiàn)代雷達,2021(1):95.
[3]王輝.信息安全背景下計算機軟件技術(shù)的開發(fā)與使用對策[J].?dāng)?shù)字技術(shù)與應(yīng)用,2020(1):175?176.
[4]張海斌.淺談安全技術(shù)在計算機軟件開發(fā)中的應(yīng)用[J].電子世界,2019(11):168?169.
[5]趙天.計算機軟件開發(fā)中安全技術(shù)的應(yīng)用研究[J].現(xiàn)代信息科技,2019(11):165?166.
[6]盧增寧.安全技術(shù)在計算機軟件開發(fā)中的應(yīng)用研究[J].信息與電腦(理論版),2019(8):22?23.
關(guān)鍵詞 搭建式開發(fā) 面向服務(wù) 軟件開發(fā) 技術(shù)研究
中圖分類號:TP311.52 文獻標(biāo)識碼:A
隨著時代的發(fā)展,傳統(tǒng)的軟件開發(fā)技術(shù)已經(jīng)不能很好的滿足社會的需求。其不足之處主要表現(xiàn)在以下幾個方面:第一,軟件的開發(fā)是建立在需求分析的基礎(chǔ)上的,需求處于不斷的變化當(dāng)中的,開發(fā)技術(shù)如果不能不斷改進,就無法很好的結(jié)合需求開發(fā)軟件;第二,傳統(tǒng)技術(shù)開發(fā)的軟件缺乏靈活性,在其運行過程中幾乎不能進行調(diào)整或者改變;第三,從傳統(tǒng)企業(yè)的系統(tǒng)整體來看,企業(yè)的整個系統(tǒng)是一個比較復(fù)雜的整體,其信息模塊都來源于不同的平臺、開發(fā)工具,此外信息的管理規(guī)范、需求等都不是一個統(tǒng)一的標(biāo)準(zhǔn)。本文結(jié)合實際的變化需求,對軟件的開發(fā)提出了一些相應(yīng)的策略。
1 軟件開發(fā)現(xiàn)狀
目前,諸多領(lǐng)域的業(yè)務(wù)普遍出現(xiàn)需求量大、種類多變的現(xiàn)象,所以對信息系統(tǒng)的要求也進一步提高,要求信息系統(tǒng)能夠及時根據(jù)需求的變化做出相應(yīng)的調(diào)整。為了解決這一現(xiàn)狀,我們提出了面向服務(wù)的搭建式軟件開發(fā)技術(shù),它具有較好的抽象性以及靈活性,能夠很好的解決軟件重組和集成等問題。此外,由于其采用的是面向服務(wù)的結(jié)構(gòu),企業(yè)在應(yīng)用時能夠更快速更方便的對軟件的組建進行重組、構(gòu)建,面向服務(wù)作為指導(dǎo)思想也變得更為普及。
搭建式軟件開發(fā)模式與傳統(tǒng)的開發(fā)模式不同,它能夠讓數(shù)據(jù)層、邏輯層等彼此分開,其資源的配置方式也變得更加簡便,這樣就能夠?qū)崿F(xiàn)信息系統(tǒng)的靈活性和快速性。
2 搭建式軟件開發(fā)技術(shù)
2.1 開發(fā)思想及體系結(jié)構(gòu)
搭建式軟件開發(fā)技術(shù)也就是說能夠隨時根據(jù)不同需求組建不同的,能夠更好滿足用戶需求的應(yīng)用系統(tǒng),它具有較好的靈活性和即時性,用戶可以不用付出很大的代價就能夠構(gòu)建滿足自身需求的應(yīng)用。此外,搭建式開發(fā)技術(shù)能夠在用戶需求發(fā)生改變的時候做出快速的響應(yīng),以便更好的完成面向服務(wù)的應(yīng)用。
搭建平臺是搭建式開發(fā)技術(shù)所創(chuàng)建的系統(tǒng),它的搭建是有許多層面的構(gòu)建共同實現(xiàn)的。其中界面表現(xiàn)和邏輯控制能夠很好的融合是通過表單設(shè)計器來完成的;工作流主要負(fù)責(zé)邏輯控制的定制、修改以及業(yè)務(wù)的產(chǎn)生和完成等過程;功能庫能夠為每一項服務(wù)提供相應(yīng)的組件;數(shù)據(jù)管理層是通過各種數(shù)據(jù)庫來實現(xiàn)管理的。
2.2 搭建式開發(fā)技術(shù)體系結(jié)構(gòu)的實現(xiàn)
2.2.1 工作流管理系統(tǒng)
業(yè)務(wù)流程的自動化或者半自動化稱為工作流,系統(tǒng)中一些文檔、信息等遵循設(shè)定的規(guī)則進行流轉(zhuǎn),讓各個組織成員之間能夠相互協(xié)調(diào),從而實現(xiàn)整體的目標(biāo)。工作流管理系統(tǒng)的結(jié)構(gòu)大體可以分為以下三層:第一,數(shù)據(jù)層:系統(tǒng)通過數(shù)據(jù)庫對定義數(shù)據(jù)以及運行數(shù)據(jù)進行存儲;第二,業(yè)務(wù)層:主要包含整個流程的引擎、監(jiān)控工具以及數(shù)據(jù)的訪問構(gòu)件等;第三,表示層:其用戶有流程的定義人員、系統(tǒng)的管理員以及其他一些用戶。
2.2.2 自定義表單系統(tǒng)
自定義表單系統(tǒng)是構(gòu)建平臺面向服務(wù)的重要構(gòu)件,它能夠使界面表現(xiàn)和系統(tǒng)的邏輯控制有一個很好融合,其最主要的目的就是要將常用的控制以及功能很好的設(shè)計到搭建平臺中,操作方式要做到簡單。自定義表單系統(tǒng)能夠?qū)?shù)據(jù)的安全存取提供保障,其具有人性化的服務(wù)界面,此外該系統(tǒng)還支持二次開發(fā),這樣就能夠保證軟件能夠即時的滿足用戶的各種需求,對提高工作效率有極大的作用。
2.2.3 搭建框架運行系統(tǒng)
搭建框架運行系統(tǒng)是通過各種基礎(chǔ)的模塊組成的整個軟件系統(tǒng)的基本服務(wù)模塊,它是軟件系統(tǒng)的基礎(chǔ),在此基礎(chǔ)之上進行各種子功能封裝,從而組成一個具有強大功能的業(yè)務(wù)系統(tǒng)。作為應(yīng)用系統(tǒng)的門戶,它集成了各種常用的模塊以及各種業(yè)務(wù)的管理功能。該系統(tǒng)具有很好的擴展機制,同時還提供各種開發(fā)配置工具,能夠為應(yīng)用的再次開發(fā)提供良好的條件,此外該系統(tǒng)還摒棄了一些與業(yè)務(wù)本身沒有關(guān)系的技術(shù),這樣就能讓軟件的開發(fā)設(shè)計人員集中精力于業(yè)務(wù)本身,有效地降低了軟件開發(fā)的復(fù)雜性,同時還節(jié)約了開發(fā)成本。
3 結(jié)束語
互聯(lián)網(wǎng)技術(shù)在企業(yè)中的應(yīng)用變的十分廣泛,隨著企業(yè)業(yè)務(wù)的發(fā)展需求以及企業(yè)之間的競爭加劇,其應(yīng)用軟件也變的十分復(fù)雜。傳統(tǒng)的軟件開發(fā)技術(shù)已經(jīng)不能適應(yīng)如此快速的變化,其自身的設(shè)計思想以及軟件的可開發(fā)性、即時性都不能很好的滿足需求,此外,系統(tǒng)存在的一些問題加劇了它被搭建式軟件開發(fā)技術(shù)取代的趨勢。本文從搭建式軟件開發(fā)技術(shù)的實用性、先進性等方面進行了簡要分析,闡述了此技術(shù)在應(yīng)對各種業(yè)務(wù)變化方面的優(yōu)點。搭建式軟件開發(fā)技術(shù)能夠大大提高企業(yè)的生產(chǎn)效率,降低企業(yè)成本,進一步提高企業(yè)在市場競爭中的優(yōu)勢,隨著該項技術(shù)的深入研究,必將有很好的發(fā)展前景。
本文主要以計算機軟件開發(fā)中存在的隱患為切入點,針對存在計算機相關(guān)實體設(shè)備,信息傳輸過程中以及黑客病毒攻擊中的問題進行簡要的分析,提出對安全技術(shù)在計算機軟件開發(fā)中的應(yīng)用進展的看法,希望能夠起到一定的借鑒作用。
1 前言
二十一世紀(jì)是互聯(lián)網(wǎng)的時代,計算機的功能在不斷強大完善,它在人們生活工作中扮演的角色也日漸重要?,F(xiàn)在的計算機不再是以前龐大笨重的機型,而是發(fā)展為體積小巧方便攜帶的工具。并且計算機軟件在不斷的開發(fā)過程中,人們的生活方式也得到了很大的改善,計算機軟件涉及的領(lǐng)域也更加全面,但隨之而來的問題是如何更好地保障計算機使用者的信息安全,防止信息泄露。
如今木馬病毒、垃圾郵件等是現(xiàn)在用戶使用計算機中很容易碰到的問題,并且形式也在增多,這就造成計算機被入侵,用戶的信息安全得不到保障,研究計算機中的安全技術(shù)迫在眉睫。
2 計算機軟件開發(fā)中存在的隱患
2.1 實體設(shè)施的受損
計算機的基本設(shè)施、網(wǎng)絡(luò)通信設(shè)備等實體設(shè)備的受損會對計算機的安全造成威脅。受損的原因可能為自然災(zāi)害,電路的老化造成設(shè)備的接觸不良,或者人為故意損壞設(shè)備使得計算機不能正常運行。由于實體設(shè)備受損對計算機的網(wǎng)絡(luò)系統(tǒng)運行會造成一定的影響,嚴(yán)重的話可能會使得網(wǎng)絡(luò)設(shè)備的徹底損毀,計算機系統(tǒng)崩潰,給用戶帶來很大的麻煩以及損失。
實體設(shè)施的受損原因比較復(fù)雜,安全技術(shù)的應(yīng)用進展難度也大大提升,計算機因這些安全威脅受到的損壞也是不可預(yù)計的,甚至使得計算機軟件的開發(fā)功虧一簣。因此對計算機的相關(guān)設(shè)備需要做好保養(yǎng),定期清潔計算機相關(guān)設(shè)備,以及檢查電路好壞,掌握正確的操作方法,改善檢查制度,將計算機網(wǎng)絡(luò)的安全性有力提升。
2.2 信息的傳輸過程易被攻擊
在使用計算機的過程當(dāng)中,在信息的加工處理過程中成為易被攻擊的對象,特別是在信息的傳輸過程中。一般分為主動攻擊以及被動攻擊,前者是用截取或者造假網(wǎng)絡(luò)上傳輸?shù)男畔⒌姆绞?,它使得通信設(shè)施不能夠正常運行,在網(wǎng)絡(luò)信息傳輸?shù)倪^程中,非法修改原有的合法信息,使得信息內(nèi)容改變,破壞原有的信息,欺騙誤導(dǎo)了使用者從而實現(xiàn)攻擊的目的。
后者對傳輸?shù)男畔⒉粫斐善茐?,但非法分子通過竊聽或者監(jiān)視的方法獲取想要的信息,這種方式往往比較隱蔽,很難被使用者發(fā)現(xiàn)。由此可見,信息的傳輸過程是個比較脆弱的環(huán)節(jié),容易被非法入侵。
2.3 黑客或病毒攻擊
黑客通過自身過硬的計算機網(wǎng)絡(luò)知識,針對計算機網(wǎng)絡(luò)本身存在的問題,加上技術(shù)工具的輔助對目標(biāo)計算機進行攻擊,從而造成網(wǎng)絡(luò)系統(tǒng)的癱瘓,對計算機軟件開發(fā)的工作進程造成重大影響?,F(xiàn)在互聯(lián)網(wǎng)上的黑客攻擊事件并不少,必須高度警戒。
黑客的入侵不僅破壞了系統(tǒng)的設(shè)備,更會盜取計算機中的重要信息,對用戶的安全隱私造成極大的威脅,尤其是在軟件開發(fā)的過程中,此外還有計算機病毒的攻擊,它的破壞力也是極強的,因為一旦感染病毒,它將以極快的速度攻陷計算機系統(tǒng)的各個角落,危害極大,后期造成的損失也是不可估量的,對計算機軟件開發(fā)將是致命的打擊,計算機運行速度會減慢,隨之而來的是系統(tǒng)的癱瘓,重要數(shù)據(jù)文件的損毀,甚至徹底損壞計算機的硬件設(shè)施,這將是不可逆的損失。
3 安全技術(shù)在計算機軟件開發(fā)中的應(yīng)用進展
3.1 防火墻、漏洞掃描以及信息加密技術(shù)
當(dāng)前,各種安全技術(shù)在計算機軟件的開發(fā)中得到了廣泛應(yīng)用,取得了一系列可喜的進展。防火墻是將不安全的信息隔絕在外的安全屏障,可以在很大程度上確保網(wǎng)絡(luò)的不被入侵。它只讓經(jīng)過審核的應(yīng)用協(xié)議進入,此外防火墻還具備劃分內(nèi)部網(wǎng)絡(luò)的功能,將其進行科學(xué)的規(guī)制,將重要的網(wǎng)段通過隔離的方式保護起來,最大程度減小對整體網(wǎng)絡(luò)運行的影響。
漏洞掃描技術(shù),顧名思義就是在計算機系統(tǒng)被攻擊之前,通過該項技術(shù)將自身的漏洞檢測出來并且及時修補,防患于未然。它通過掃描計算機系統(tǒng),防火墻等,評估出網(wǎng)絡(luò)系統(tǒng)的安全系數(shù),對保護計算機安全有很大的幫助作用。至于信息加密技術(shù),主要是重新編碼了目標(biāo)信息,使得真正的信息被隱藏了起來,不法分子便不能得到真實的信息。
如此一來有效地將信息系統(tǒng)的安全性提高,關(guān)鍵的信息數(shù)據(jù)得到有力的保護,計算機軟件開發(fā)過程因此得到了很好的保密。近年來,信息加密技術(shù)在電子商務(wù)和 VPN 中已得到廣泛的應(yīng)用,對保障信息的安全起到了不可估量的作用。
3.2 入侵檢測技術(shù)
近些年,發(fā)展出一種入侵檢測安全技術(shù),針對網(wǎng)絡(luò)攻擊有很好的效果。入侵檢測技術(shù)對計算機自身系統(tǒng)構(gòu)造以及網(wǎng)絡(luò)系統(tǒng)的特點進行快速的科學(xué)分析,統(tǒng)計異常的現(xiàn)象行為,對要發(fā)生的攻擊活動進行及時的警報。它是統(tǒng)計技術(shù)、通信技術(shù)和推理技術(shù)的結(jié)合,此外還涉及人工智能以及密碼的領(lǐng)域,準(zhǔn)確監(jiān)控計算機網(wǎng)絡(luò)系統(tǒng),對于異常的行為可以辨別出是否受到攻擊,很大程度上減少了用戶的損失。另外有主機、網(wǎng)絡(luò)以及混合型的入侵檢測技術(shù),這是根據(jù)監(jiān)控對象劃分類型的。
對計算機操作系統(tǒng)的數(shù)據(jù)進行全面盤查的是基于主機的入侵檢測技術(shù),保護了它監(jiān)控范圍內(nèi)主機的安全?;诰W(wǎng)絡(luò)的入侵檢測技術(shù)的責(zé)任是要維護整個網(wǎng)絡(luò)的安全,主要通過監(jiān)測分析網(wǎng)絡(luò)數(shù)據(jù)的流通來達到保護的目的?;旌闲偷娜肭謾z測技術(shù)則是結(jié)合了前面兩者的優(yōu)點,防護的范圍更加廣泛全面,保護效果更加顯著。
3.3 反計算機病毒技術(shù)
針對傳染力以及破壞力極強的病毒,防范病毒、檢查病毒以及消滅病毒是反計算機病毒技術(shù)的三個重要切入點,從而達到保護計算機系統(tǒng)安全的目的。防范病毒是在計算機中安裝防病毒的程序,讓病毒無機可乘,從根本上盡可能減小病毒侵入的可能性,在實際操作中,分別有系統(tǒng)監(jiān)控以及信息加密等防范措施。
反計算機病毒技術(shù)中的檢查病毒有兩種檢查程序,一是根據(jù)病毒的傳播方式等顯著的特點來判斷是否感染了病毒,另一種是分析某個時間段計算機的運行數(shù)據(jù),保存結(jié)果來積累有效數(shù)據(jù),將結(jié)果與現(xiàn)在的數(shù)據(jù)段進行對比分析,從而得出是否被病毒感染的結(jié)果。
一旦確定病毒入侵了計算機以及網(wǎng)絡(luò)系統(tǒng),必須馬上采取措施消滅病毒。安裝殺毒軟件是比較常用的方法,但病毒不是每次都能夠被殺毒軟件完全殺死的,因為病毒是會進行更新?lián)Q代的,殺毒軟件沒有相應(yīng)的數(shù)據(jù)識別新的病毒,所以需要及時更新升級殺毒軟件,將軟件的殺毒能力提高。
4 結(jié)語
綜上所述,計算機網(wǎng)絡(luò)在使用的過程中,為我們帶來便利、新的體驗的同時,也存在著很多安全隱患。如何去除這些隱患是當(dāng)前計算機軟件開發(fā)中需要注意的問題。因此,加強安全技術(shù)在計算機軟件開發(fā)中應(yīng)用的重視程度,不斷加大對計算機軟件安全技術(shù)的研發(fā)力度,提高計算機網(wǎng)絡(luò)系統(tǒng)安全的技術(shù)水平,從而使其在保護計算機網(wǎng)絡(luò)系統(tǒng)方面充分發(fā)揮出自身應(yīng)有的作用和價值。
關(guān)鍵詞:嵌入式系統(tǒng);軟件開發(fā);技術(shù)
引言
計算機技術(shù)一經(jīng)問世,就成為加快推動人類社會生產(chǎn)活動高效開展的重要力量。在幾十年的發(fā)展里程中,計算機相關(guān)技術(shù)都實現(xiàn)了巨大進步。伴隨著工業(yè)現(xiàn)代化進程的不斷深入,嵌入式系統(tǒng)獲得了越來越多的關(guān)注。嵌入式系統(tǒng)是一種以軟件和硬件相結(jié)合為特征的計算機系統(tǒng)。該種系統(tǒng)常用于工業(yè)大型機械化生產(chǎn)或者國防工業(yè)等領(lǐng)域,通過嵌入到某些專門設(shè)備中予以實現(xiàn),故此得名嵌入式系統(tǒng)。在數(shù)十年的實際應(yīng)用過程中,嵌入式系統(tǒng)屢經(jīng)發(fā)展,不斷創(chuàng)新改進,目前已經(jīng)取得了許多項先進技術(shù)成果,為今后的相關(guān)領(lǐng)域開發(fā)工作指出了重要方向。
1 微處理器技術(shù)的選擇
微處理器技術(shù)是嵌入式系統(tǒng)的重要基本元素。伴隨著加工制作技術(shù)的升級,微處理器從最初的4位、8位器件開始,發(fā)展到后面的集成式單片8位微處理器、16位微處理器。時至今日,16位微處理器已經(jīng)成為微處理器應(yīng)用的中間類型,占據(jù)著微處理器市場的最大份額,而更高端的領(lǐng)域則由32位架構(gòu)的器件所占據(jù)。最開始的32位器件采用的是CISC架構(gòu),而后隨著技術(shù)的發(fā)展,性能更加優(yōu)異的RISC芯片則成為32位器件架構(gòu)形式的主要選擇。嵌入式系統(tǒng)開發(fā)人員可以根據(jù)項目實際需要,綜合比較設(shè)備性能、服務(wù)、適用性以及成本等多個指標(biāo)選擇最適合的微處理器。
2 系統(tǒng)架構(gòu)的選擇
架構(gòu)是系統(tǒng)的基礎(chǔ)組成,不僅關(guān)系到系統(tǒng)功能的實現(xiàn),對于系統(tǒng)后續(xù)發(fā)展、優(yōu)化也有著舉足輕重的作用。微處理器的架構(gòu)開始時僅僅是中央處理器和部分邏輯器件構(gòu)成的簡單形式。經(jīng)過多年的發(fā)展,微處理器架構(gòu)變得復(fù)雜、繁瑣,但調(diào)試技術(shù)還是原來那些電路仿真、芯片級調(diào)試、ROM監(jiān)控器以及指令集模擬等技術(shù)。隨著嵌入式系統(tǒng)應(yīng)用范圍不斷擴大和技術(shù)要求的不斷提高,系統(tǒng)架構(gòu)的重要性也在與日俱增,嵌入式系統(tǒng)開發(fā)人員必須要認(rèn)真評估各類微處理器相關(guān)特性,選取合適的系統(tǒng)架構(gòu),這樣才能保證開發(fā)出來的系統(tǒng)的健康水平。
3 設(shè)計組成
嵌入式系統(tǒng)的軟件開發(fā)工作包括硬件開發(fā)和軟件開發(fā)兩個部分。最開始的時候,軟、硬件的開發(fā)工作基本上都由一名技術(shù)人員負(fù)責(zé)。而且在系統(tǒng)開發(fā)項目的全部工作中,軟件開發(fā)所占據(jù)的比例較小,最大十分之一。隨著技術(shù)的不斷發(fā)展,嵌入式系統(tǒng)開發(fā)工作中軟件設(shè)計所占據(jù)的比例越來越大。原有工作模式因而發(fā)生丟了改變。專業(yè)人員專門負(fù)責(zé)嵌入式系統(tǒng)軟件開發(fā)的工作模式出現(xiàn)在上個實際80年代中期,同期軟件開發(fā)的工作量占據(jù)嵌入式系統(tǒng)開發(fā)工作業(yè)務(wù)量的一半以上。
近些年來,嵌入式系統(tǒng)發(fā)展得日漸成熟。軟件、硬件方面都實現(xiàn)了巨大進步。系統(tǒng)開發(fā)業(yè)務(wù)量持續(xù)上漲。其中,軟件開發(fā)的業(yè)務(wù)增長更為顯著,已經(jīng)達到嵌入式系統(tǒng)開發(fā)業(yè)務(wù)量的十分之七、八左右。巨大的工作量已經(jīng)不是僅僅依靠一個開發(fā)人員就能完成的,必須依靠團隊的力量。特別是隨著系統(tǒng)開發(fā)工作的深入,一些新的技術(shù)措施、手段紛紛涌現(xiàn),成為系統(tǒng)開發(fā)中不可或缺的重要環(huán)節(jié)。其中一個至關(guān)重要的就是用于軟件開發(fā)后進行測試的硬件平臺。由于軟件開發(fā)業(yè)務(wù)量的高速增加,用來進行軟件測試的硬件平臺需求也就變得更加迫切。目前常用的方法有本地代碼執(zhí)行原型環(huán)境、指令集軟仿真(模擬),或者是使用標(biāo)準(zhǔn)的、低成本的、現(xiàn)成的評估板等。而主機-目標(biāo)機連接技術(shù)因為成本較低,故而推廣速度很快,其中最為著名的就是JTAG接口。
4 軟件內(nèi)容
盡管軟件開發(fā)所耗費的時間越來越多,但市場對于軟件的開發(fā)周期的要求卻越來越短。為了適應(yīng)市場需求,嵌入式系統(tǒng)軟件開發(fā)企業(yè)不得不在開發(fā)策略上下功夫。早期嵌入式系統(tǒng)軟件結(jié)構(gòu)簡單、功能單一,使用企業(yè)自行開發(fā)的應(yīng)用代碼即可實現(xiàn)。如今系統(tǒng)功能豐富,功能強大,結(jié)構(gòu)復(fù)雜,軟件開發(fā)企業(yè)必須依賴外部的力量。目前,軟件開發(fā)企業(yè)往往根據(jù)項目需求,選擇對應(yīng)的多任務(wù)的模型,然后使用標(biāo)準(zhǔn)的、商用的實時操作系統(tǒng)輔助開發(fā)。這種做法,優(yōu)點是開發(fā)效率高,缺點是不可避免的遇到知識產(chǎn)權(quán)的問題。在全社會都越來越重視知識產(chǎn)權(quán)的大形勢下,嵌入式系統(tǒng)軟件開發(fā),必須考慮到知識產(chǎn)權(quán)因素的影響,這種影響,不僅僅停留在當(dāng)前所開發(fā)的軟件上,更對后續(xù)的相關(guān)軟件開發(fā)、應(yīng)用拓展有著巨大的影響。
5 編程語言
編程語言是進行軟件開發(fā)設(shè)計必不可少的工具。在微處理器剛剛出現(xiàn),尚停留在4位、8位器件的階段,開發(fā)人員只能選擇匯編語言進行開發(fā)。當(dāng)16位微處理器技術(shù)出現(xiàn)以后,軟件編程語言的選擇也變得豐富起來。使用較多的有Pascal、C語言、PL/M語言。而對于一些特別的系統(tǒng),F(xiàn)orth語言更為適合。當(dāng)32位微處理器應(yīng)用日漸廣泛以后,又開發(fā)出了C和ADA。其中,ADA主要應(yīng)用于軍事領(lǐng)域,在國防事業(yè)中大展身手。時至今日,C++已經(jīng)逐步取代C語言成為嵌入式系統(tǒng)軟件開發(fā)語言的主流,目前大約四分之一到三分之一的嵌入式系統(tǒng)是使用C++設(shè)計的。而本來專為嵌入式系統(tǒng)軟件所開發(fā)出來的Java則在要求運行時重新配置的領(lǐng)域?qū)崿F(xiàn)了更大的自身價值,統(tǒng)一建模語言(UML)也成為高級設(shè)計方法學(xué)的最流行選擇。
6 軟件隊伍的規(guī)模和分布
上文提過,最初的嵌入式軟、硬件開發(fā)工作通常都由一名工程師予以兼任。經(jīng)過多年的發(fā)展演化,軟件開發(fā)工作變得專業(yè)化、系統(tǒng)化、精細(xì)化,形成了專門負(fù)責(zé)軟件開發(fā)的技術(shù)業(yè)務(wù)人員。而以嵌入式系統(tǒng)軟件開發(fā)為職責(zé)的團隊則是今后發(fā)展的主要方向。IT行業(yè)軟件開發(fā)項目管理工作責(zé)任重大、任務(wù)艱巨。嵌入式系統(tǒng)軟件開發(fā)同樣如此。其區(qū)別僅在于嵌入式系統(tǒng)軟件開發(fā)使用過程語言,比如C語言和匯編語言進行編程。嵌入式系統(tǒng)軟件開發(fā)是一項技術(shù)含量和系統(tǒng)化要求很高的工作。開發(fā)團隊中的所有人都要對目標(biāo)系統(tǒng)有著全面的清晰的了解,而在當(dāng)前項目越來越大,工作人員越來越多的情況下,受各人業(yè)務(wù)能力水平等因素的影響,要保持所有人都同樣深入的認(rèn)知水平顯然是不現(xiàn)實的。實際情況是團隊中部分高端人才對于某個領(lǐng)域認(rèn)識非常深入,相關(guān)業(yè)務(wù)能力很強,這些人是開發(fā)團隊的主干,團隊管理者必須科學(xué)、協(xié)調(diào)、高效使用這些人力資源,確保他們的業(yè)務(wù)成果可以被其它人員正確使用。而面向?qū)ο缶幊碳夹g(shù)則是這種應(yīng)用策略在技術(shù)層面的現(xiàn)實體現(xiàn)。
7 結(jié)束語
我國正處于產(chǎn)業(yè)結(jié)構(gòu)調(diào)整的重要時期,大規(guī)模的自動化生產(chǎn)成為工業(yè)生產(chǎn)的主流。嵌入式系統(tǒng)軟件遠(yuǎn)景廣闊,市場空間巨大。軟件開發(fā)企業(yè)要牢牢把握這個機會,深入、扎實地研究嵌入式系統(tǒng)軟件開發(fā)技術(shù),吸收外部優(yōu)勢資源為我所用,設(shè)計出功能強大、適應(yīng)廣泛的優(yōu)質(zhì)軟件產(chǎn)品,在實現(xiàn)企業(yè)自身的健康高速發(fā)展的同時,為我國經(jīng)濟建設(shè)提供有力支持與保障。
參考文獻
關(guān)鍵詞:UML;MDA;程式語言;流程;活動圖
中圖分類號:TP311文獻標(biāo)識碼:A文章編號:1009-3044(2011)11-2593-03
Software Development Application of UML Technology
LIANG Fu-wei
(Dept.of Computer,Shanghai Bangde Vocational College, Shanghai 200444, China)
Abstract: Based on the study of software development based on UML technology, describes the problems in current software development, UML and MDA's proposed solution is intended to enable software development cycle time, and can better handle the software requirements and technical Risk, quality control software can ultimately make the software developed powerful, easy to maintain, scalable.
Key words: UML; MDA; programming language; process; activity diagram
隨著軟件開發(fā)技術(shù)的不斷發(fā)展和變革,軟件開發(fā)人員越來越多的認(rèn)識到現(xiàn)行軟件開發(fā)技術(shù)所帶來的一系列問題,主要體現(xiàn)在軟件開發(fā)的產(chǎn)能和效率無法提升,軟件方案的開發(fā)時間經(jīng)常被壓縮,導(dǎo)致開發(fā)人員只能短期考慮目前系統(tǒng)功能方面的產(chǎn)能,而忽略軟件設(shè)計的重要;隨著需求不斷的加入,不愿意多花時間來檢視目前的設(shè)計是否還符合低耦合力與高內(nèi)聚力的原則,因而造成系統(tǒng)的重用性越來越低,系統(tǒng)越來越難修改與維護。其次,開發(fā)人員只考慮目前系統(tǒng)功能面的產(chǎn)能,而常常無暇顧及與產(chǎn)能無關(guān)的文件維護,導(dǎo)致當(dāng)系統(tǒng)遇到開發(fā)的瓶頸時,例如軟件效能低時,或想改善系統(tǒng)的設(shè)計時,協(xié)助人員無法取得與系統(tǒng)一致的文件,而無法實時和適當(dāng)?shù)慕o予改善意見,造成項目周期延長與失敗。因此,軟件開發(fā)必須要采用新的一種流程和方法來提升軟件開發(fā)效率和產(chǎn)能。統(tǒng)一建模語言(UML)融合了許多面向?qū)ο箝_發(fā)方法的基本概念和優(yōu)點,是一種程式語言,在提高軟件開發(fā)的效能和國際競爭力方面具有重要的意義和作用。
1 UML概述
1.1 UML技術(shù)簡介
面向?qū)ο蟮能浖治雠c設(shè)計(OOA&D)方法得到的OO(Object-Oriented)的模型,OOA&D方法從模型開始,就是識別對象、不斷細(xì)化的過程,開發(fā)過程就是不斷的迭代過程[1]。簡明準(zhǔn)確的建模是把握復(fù)雜系統(tǒng)的關(guān)鍵,是一個優(yōu)秀系統(tǒng)開發(fā)中的重要的核心部分,其目的是把所要設(shè)計的結(jié)構(gòu)和系統(tǒng)的行為溝通起來,對系統(tǒng)的體系結(jié)構(gòu)進行可視化和控制,建??梢愿玫睦斫庹跇?gòu)造的系統(tǒng),并提供簡化和和復(fù)用的機會。因此面向?qū)ο蟮姆治龊驮O(shè)計應(yīng)該從建模開始。統(tǒng)一建模語言 UML(Unified Modeling Language) 融合了 Booch、OMT和OOSE方法中的基本概念,是國際上標(biāo)準(zhǔn)的建模語言,是面向?qū)ο蟮姆治龊驮O(shè)計方法發(fā)展的產(chǎn)物,能夠產(chǎn)生和長期其他技術(shù)學(xué)科的藍圖相似的草圖。UML有統(tǒng)一語義和符號表示,可使項目根植于一個成熟的標(biāo)準(zhǔn)建模語言,從而可以拓寬軟件系統(tǒng)的適用范圍,并提高其靈活程度。統(tǒng)一建模語言(UML)是一種可視化(Visualizing)及文件化(Documenting)、規(guī)格化(Specifying)的軟件建模語言。主要使用個案圖、類別圖、對象圖、循序圖、合作圖、狀態(tài)圖、活動圖、組件圖、部署圖等可視化圖形符號,來幫助分析設(shè)計與了解系統(tǒng)。UML具有一致的圖形表示法和語義,同時也出現(xiàn)了許多UML工具,能夠很好地支持軟件設(shè)計和開發(fā)。例如UML的開發(fā)工具Rational Rose提供了面向?qū)ο蟮姆治龊驮O(shè)計(OOA和OOD)到面向?qū)ο缶幊蹋∣OP)的平滑過渡機制 , 完整地體現(xiàn)了面向?qū)ο蟮能浖こ趟枷隱2]。
1.2 UML技術(shù)的發(fā)展歷程
統(tǒng)一建模語言(Unified Modeling Language, UML)是Rational公司整合Booch、Rumbaugh與Jacobson三種方法而提出的對象導(dǎo)向建模工具,該語言最早起源于Booch與Rumbaugh在1995年10月提供給OOPSLA(Object-Oriented Programming, Systems, Languages & Applications)的統(tǒng)一方法(Unified Method),當(dāng)初的版本是Version 0.8。在1996年,Rational公司將統(tǒng)一方法加入Jacobson的研究(例如使用個案模式等)及其它,并將版本更新為Version 0.9,且正式改名稱為統(tǒng)一建模語言[3]。后經(jīng)過不同公司的推廣和發(fā)展,到目前為止UML工具更新的Version6.1.0。UML及其相關(guān)工具發(fā)展歷程詳見圖1所示。
1.3 UML的靜態(tài)建模機制和動態(tài)建模機制
在應(yīng)用中,當(dāng)采用面向?qū)ο蠹夹g(shù)設(shè)計系統(tǒng)時,首先是描述需求,其次根據(jù)需求建立系統(tǒng)的靜態(tài)模型,以構(gòu)造系統(tǒng)的結(jié)構(gòu)。這兩步所建立的模型都是靜態(tài)的,包括用例圖、類圖、對象圖、組件圖和配置圖等五個圖形,是標(biāo)準(zhǔn)建模語言UML的靜態(tài)建模機制[4]。第三步是描述系統(tǒng)的行為,所建立的模型或者可以執(zhí)行,或者表示執(zhí)行時的時序狀態(tài)或交互關(guān)系。它包括狀態(tài)圖、活動圖、順序圖和合作圖等四個圖形,是標(biāo)準(zhǔn)建模語言UML的動態(tài)建模機制。
UML包括靜態(tài)建模機制和動態(tài)建模機制兩大類。靜態(tài)結(jié)構(gòu)定義了系統(tǒng)中重要對象的屬性和操作以及這些對象之間的相互關(guān)系;動態(tài)行為定義了對象的時間特性和對象為完成目標(biāo)任務(wù)而相互進行通信的機制。UML定義了9種圖用于系統(tǒng)建模,分為兩類:靜態(tài)結(jié)構(gòu)圖和動態(tài)行為圖。
1.3.1 靜態(tài)結(jié)構(gòu)圖
用于對系統(tǒng)的靜態(tài)方面進行可視化、詳述、構(gòu)造和文檔化??梢园严到y(tǒng)的靜態(tài)方面看作是對系統(tǒng)的相對穩(wěn)定的骨架的表示,它由類、接口、協(xié)作、構(gòu)件和節(jié)點等事物的布局組成。結(jié)構(gòu)圖包括:類圖(Class diagram)描述系統(tǒng)中類的靜態(tài)結(jié)構(gòu),它定義了系統(tǒng)中類的內(nèi)部結(jié)構(gòu)以及類之間的聯(lián)系,用來捕獲信息和事件中的對象;對象圖(Object diagram)是類的實例化圖; 構(gòu)件圖 (Component diagram)描述程序代碼的物理結(jié)構(gòu);部署圖(Deployment diagram)描述系統(tǒng)中軟、硬件的物 理體系結(jié)構(gòu),用于捕獲系統(tǒng)硬件和軟件構(gòu)件的部署關(guān)系。
1.3.2 動態(tài)行為圖
用于對系統(tǒng)的動態(tài)方面進行可視化、詳述、 構(gòu)造和文檔化??梢园严到y(tǒng)的動態(tài)方面看作是對系統(tǒng)變化部 分的表示,它由諸如隨時間變化的信息流和在網(wǎng)絡(luò)上構(gòu)件的 物理運動之類的事物組成。行為圖包括:用例圖(Use Case diagram)從用戶的角度描述系統(tǒng)的功能,并指出各功能的執(zhí)行者,說明執(zhí)行者與提供的用例之間的某種聯(lián)系;順序圖(Sequence diagram)描述幾個對象之間的動作協(xié)作關(guān)系;協(xié)作圖(Collaboration diagram)從另一個角度展示對象 之間的動作協(xié)作關(guān)系。它可以和順序圖相互轉(zhuǎn)換。在 rational rose中可以由順序圖生成協(xié)作圖;狀態(tài)圖(State diagram)描述一類對象具有的所有可能的狀態(tài)以及狀態(tài)轉(zhuǎn)移關(guān)系;活動圖(Active diagram)描述系統(tǒng)中各種活動的執(zhí)行順序。
1.4 UML可視化建模
UML可視化建模系統(tǒng)支持從系統(tǒng)需求、系統(tǒng)分析到系統(tǒng)設(shè)計的整個建模過程[5]。如表1所示。在需求分析階段,UML可以用用例來捕獲用戶需求。通過需求建模,描述對系統(tǒng)感興趣的外部角色及其對用例的功能要求。在分析和設(shè)計階段,通過UML的靜態(tài)建模機制和動態(tài)建模機制對問題域的對象建模,描述類的屬性、類之間的關(guān)系、系統(tǒng)動態(tài)特征。編碼是一個獨立的階段,其任務(wù)是用面向?qū)ο缶幊陶Z言將來自設(shè)計階段的類轉(zhuǎn)換成實際的代碼。 UML模型還可作為測試階段的依據(jù)。同時UML還支持對系統(tǒng)體系結(jié)構(gòu)的建模。
2 MDA概述
模型驅(qū)動架構(gòu)(Model Driven Architecture)是OMG(Object Management Group,對象管理組織)采用的一種新的系統(tǒng)開發(fā)方法架構(gòu),它提供了一種使用模型來進行系統(tǒng)的分析、設(shè)計、建構(gòu)、開發(fā)、實作、維護和修改的方法,并經(jīng)由模型的轉(zhuǎn)換,自動轉(zhuǎn)換產(chǎn)生軟件系統(tǒng)相關(guān)程序代碼[6]。
MDA是由OMG定義的一種軟件開發(fā)架構(gòu),其關(guān)鍵是軟件開發(fā)過程中每個階段(或步驟)的產(chǎn)出均須建構(gòu)出模式(Model),且該模式產(chǎn)出是下一個階段的輸入。
MDA的發(fā)展生命周期其實與其它系統(tǒng)開發(fā)模式(例如瀑布模式或RUP模式)的系統(tǒng)發(fā)展生命周期并沒有差別,但主要的差別之一是在發(fā)展過程中步驟之產(chǎn)出,強調(diào)該產(chǎn)出是由計算機可理解的正式模式(Formal Model)表達。
2.1 MDA的流程
模型驅(qū)動架構(gòu)(MDA)的主要流程和產(chǎn)出示意如圖2所示[7]。其中PIM是分析與設(shè)計結(jié)果的重要產(chǎn)出,主要根據(jù)需求建模的結(jié)果,從如何支持企業(yè)運作的觀點描述一個軟件系統(tǒng),并不涉及描述系統(tǒng)開發(fā)與運作之平臺。PIM必須以有完整定義(Well-Defined)的語言來描述,一個具有完整定義的語言具有完整定義的語法(Syntax)與語義,且適合用計算機來自動解譯。
一個PSM是一種特定平臺的模式,也就是該模式相依于軟件開發(fā)技術(shù)。對某一種PSM而言,可能僅具有該特定平臺知識的開發(fā)者才能理解。一個PIM可被轉(zhuǎn)成一個或多個PSM,因為一個系統(tǒng)可能包含幾種技術(shù),對每一個特定的技術(shù)平臺需產(chǎn)生一個與其它技術(shù)分開的PSM,PSM間可借由溝通橋梁(Communication Bridge)的機制來互動。每一個PSM需被轉(zhuǎn)成程序模式(或簡稱程序代碼),因為一個PSM相依于其開發(fā)技術(shù),因此PSM轉(zhuǎn)成程序代碼之步驟非常直接。若有多個PSM則會轉(zhuǎn)出多種的程序代碼,不同的程序代碼間也須借由溝通橋梁的機制來互動。
2.2 MDA的轉(zhuǎn)換
MDA的每一個轉(zhuǎn)換(例如PIMPSM,PSMCode)須有清楚的轉(zhuǎn)換定義,且該轉(zhuǎn)換的工作主要是借由CASE工具來執(zhí)行,也就是PIM可借由CASE工具轉(zhuǎn)換成PSM,再轉(zhuǎn)換成Code[8]。MDA的轉(zhuǎn)換流程和案例分別如圖3和圖4所示。
在OMG的藍圖中,UML、MOF、XMI、CWM、OCL等一系列標(biāo)準(zhǔn)分別解決了模型驅(qū)動架構(gòu)中的模型建立、模型擴展、模型轉(zhuǎn)換等這幾個方面的問題。OMG試圖經(jīng)由標(biāo)準(zhǔn)化的定義,擴大模型驅(qū)動架構(gòu)的應(yīng)用范圍。同時經(jīng)由這樣一個可擴展的建模語言環(huán)境,軟件開發(fā)廠商可以自行設(shè)計自己的建模語言,以及建模語言到可執(zhí)行程序代碼的轉(zhuǎn)換對應(yīng),不過都必須處于OMG的標(biāo)準(zhǔn)化架構(gòu)之下。如圖5所示的模型轉(zhuǎn)換與成果關(guān)聯(lián)關(guān)系。
3 結(jié)論
通過統(tǒng)一建模語言(UML)和模型驅(qū)動架構(gòu)(MDA)技術(shù)的推廣和研究應(yīng)用,使得系統(tǒng)開發(fā)模型標(biāo)準(zhǔn)化,增加系統(tǒng)模型的重用性,增加信息技術(shù)部門的產(chǎn)值,降低軟件系統(tǒng)開發(fā)與維護的成本,縮短軟件系統(tǒng)開發(fā)與導(dǎo)入的時間,增加軟件產(chǎn)能,提升軟件系統(tǒng)開發(fā)的國際競爭力。因此,UML技術(shù)必將為軟件開發(fā)帶來新的技術(shù)變革和嶄新的工作流程。
參考文獻:
[1] 蔡敏,徐慧慧,黃炳強.UML基礎(chǔ)與Rose建模教程[M].北京:人民郵電出版社,2006:60-62 .
[2] Unified Modeling Language[EB/OL]./wiki/Unified_Modeling_Language#UML_2.x.
[3] 徐寶文.UML與軟件建模[M].北京:清華大學(xué)出版社,2006:47-48.
[4] O'Docherty M.面向?qū)ο蠓治雠c設(shè)計(UML 2.0版)[M].俞志翔,譯.北京,清華大學(xué)出版社,2006:72-74.
[5] Coad P,Lefebvre E,De Luca J.彩色UML建模[M].王海鵬,譯.北京:機械工業(yè)出版社,2008:110-112
[6] MDA framework[EB/OL]./wiki/MDA_framework.