前言:想要寫出一篇引人入勝的文章?我們特意為您整理了軟件工程應用論文(5篇)范文,希望能給你帶來靈感和參考,敬請閱讀。
第一篇:現(xiàn)代軟件開發(fā)中現(xiàn)代軟件工程的合理運用
【摘要】進入新時期以來,我國的社會經(jīng)濟水平與科學技術(shù)發(fā)展水平都上升到了一個新的高度,不論是在社會生產(chǎn)中還是在日常生活中,計算機信息技術(shù)都得到了普遍的運用。而計算機信息技術(shù)主要是在軟件的支持下進行系統(tǒng)運行的現(xiàn)代科學技術(shù),在現(xiàn)代軟件開發(fā)中,現(xiàn)代軟件的整體特點與結(jié)構(gòu)都會對現(xiàn)代軟件工程在其中的應用產(chǎn)生重大的影響,因此,必須要采用最合適的軟件工程方法,讓現(xiàn)代軟件工程在現(xiàn)代軟件開發(fā)中得到更加合理的應用。本文首先對現(xiàn)代軟件工程方法的內(nèi)涵與特征進行了分析,并重點對現(xiàn)代軟件工程在現(xiàn)代軟件開發(fā)中的應用進行了探討。
【關(guān)鍵詞】現(xiàn)代軟件工程;合理應用;創(chuàng)新
隨著軟件開發(fā)的不斷進步,一些傳統(tǒng)的軟件工程方法開始逐漸被舍棄,現(xiàn)代軟件工程方法開始得到了全面的應用。但是在實際應用過程中,有許多現(xiàn)代軟件工程方法出現(xiàn)了不相容的問題。而受到認識不夠的局限,使得這種不相容的問題也很少有人提出質(zhì)疑,因此也就導致其在使用的時候發(fā)生了各種各樣的問題。因此,本文對現(xiàn)代軟件工程在現(xiàn)代軟件開發(fā)中的合理應用進行研究是十分必要的,具有非常強烈的現(xiàn)實意義。
1現(xiàn)代軟件工程方法的內(nèi)涵與特征
現(xiàn)代軟件工程方法大致可以分為分析、設計、編碼、測試與維護這五大階段,其雖然取代了傳統(tǒng)的軟件工程方法,但是兩者之間還是存在著很多的相似之處。比如,在分析階段中,現(xiàn)實生活中存在的事件是現(xiàn)代軟件工程方法面對的對象,也就是說其面對對象并不是虛擬性的,因此也就表明其對象的性質(zhì)與特征能夠?qū)κ录M行反映與產(chǎn)生作用。而分析階段與設計階段之間又存在著很大的差異,在設計階段中,其尤其注重某一個反映系統(tǒng)中的具體事物和時間。總的來說,現(xiàn)代軟件工程方法打破了傳統(tǒng)軟件工程自發(fā)式的限制,并且以傳統(tǒng)軟件工程方法為基礎(chǔ),使用了一種模塊式的開發(fā)方法,借助現(xiàn)代先進的信息技術(shù)與計算機技術(shù)對系統(tǒng)進行了優(yōu)化,使現(xiàn)代軟件工程更加規(guī)范化與系統(tǒng)化,能夠與不同層次不同水平的用戶需要相適應。而且,現(xiàn)代軟件工程方法還可以進行修改,這也是其另一個突出的特點,是其可靠安全的具體表現(xiàn)。
2在現(xiàn)代軟件開發(fā)中合理應用現(xiàn)代軟件工程的對策
2.1從實際情況出發(fā),在現(xiàn)代軟件開發(fā)中選擇
最合適的現(xiàn)代軟件工程方法在現(xiàn)代軟件開發(fā)的過程中,軟件體系結(jié)構(gòu)是不可避免會用到的,但是軟件體系結(jié)構(gòu)的重點還是放在軟件的分層結(jié)構(gòu)上,其中的數(shù)據(jù)多數(shù)都是源自數(shù)據(jù)庫,目前還缺乏一個明確的概念。就目前來看,我國在現(xiàn)代軟件開發(fā)中所使用的數(shù)據(jù)庫管理系統(tǒng)還是一種傳統(tǒng)的數(shù)據(jù)庫形式,信息更新緩慢,面對對象的管理系統(tǒng)也沒有得到真正的廣泛應用,而是僅僅停留在形式與表面上。除此之外,傳統(tǒng)數(shù)據(jù)庫管理系統(tǒng)的功能與作用也沒有充分發(fā)揮出來,僅僅在共享信息與存儲數(shù)據(jù)等方面發(fā)揮出了效用,雖然能夠在處理數(shù)據(jù)與保證數(shù)據(jù)安全上起到效果,然而對于一些層次與水平較高的查詢來說,其無法得到靈活的運用。因此,在計算機信息技術(shù)有了更快發(fā)展的新形勢下,必須要將傳統(tǒng)軟件工程方法的效用與優(yōu)勢充分發(fā)揮在現(xiàn)代軟件開發(fā)過程中,在此基礎(chǔ)下,不斷對面對的對象進行擴展,在條件允許的時候,還可以面對整個系統(tǒng),這樣不僅能夠?qū)?shù)據(jù)存儲進行優(yōu)化,而且還能夠?qū)Σ僮鞑襟E進行規(guī)范化處理,有利于在現(xiàn)代軟件開發(fā)中為現(xiàn)代軟件工程的合理運用奠定一個穩(wěn)固的基礎(chǔ)。
2.2對軟件工程理念進行創(chuàng)新,將全新的軟件
工程理念貫徹到現(xiàn)代軟件工程中現(xiàn)代軟件開發(fā)不只是在計算機領(lǐng)域中得到了應用,在餐飲服務行業(yè)、醫(yī)療衛(wèi)生行業(yè)等社會各個行業(yè)中都有現(xiàn)代軟件開發(fā)的身影。在現(xiàn)代社會中,使用軟件已經(jīng)不再單單是為了提高工作效率,而且在激發(fā)工作人員積極性、主動性上也發(fā)揮出來巨大作用。同時,在現(xiàn)代軟件的開發(fā)與利用中,社會各行各業(yè)也都會根據(jù)相關(guān)的規(guī)則標準來進行操作,使得軟件行業(yè)的發(fā)展開始出現(xiàn)了規(guī)范化的趨勢。在此基礎(chǔ)上,為了能夠讓現(xiàn)代軟件工程在現(xiàn)代軟件開發(fā)中得到更加合理的應用,就有必要對軟件開發(fā)觀念進行更新,打破傳統(tǒng)軟件工程的限制與束縛,推動軟件開發(fā)應用工作得到更加順利的進行。以醫(yī)療衛(wèi)生事業(yè)為例,將軟件開發(fā)引入到醫(yī)療衛(wèi)生行業(yè)中,不僅能夠讓醫(yī)療資料的整理更加系統(tǒng)化與科學化,減少了其出錯的可能性,而且還能夠通過軟件來對醫(yī)護人員的行為進行規(guī)范,讓醫(yī)院患者的病情能夠最及時的發(fā)現(xiàn)與監(jiān)控,從而才能夠?qū)颊卟扇∽罴皶r的治療措施,既保障了患者的生命安全,還能夠緩和緊張的醫(yī)患關(guān)系,能夠促進醫(yī)療衛(wèi)生事業(yè)的更好發(fā)展。但是在實際應用過程中,有部分軟件開發(fā)公司沒有對軟件開發(fā)程序進行規(guī)范化處理,導致人員分工出現(xiàn)問題,不僅為之后軟件的使用買下了隱患,而且還降低了軟件開發(fā)的效率。如果軟件開發(fā)公司要針對醫(yī)療衛(wèi)生事業(yè)開發(fā)相關(guān)的應用軟件,但是由于其在沒有進行統(tǒng)籌規(guī)劃與掌握詳細情況的時候就進行開發(fā),不僅會導致開發(fā)出來的軟件無法滿足醫(yī)院工作的需要,還會對軟件開發(fā)公司與醫(yī)院造成不可估計的損失。因此,必須要在開發(fā)軟件的時候堅持科學軟件工程理念的指導,如此才能夠保證開發(fā)出來的軟件能夠?qū)崿F(xiàn)其應用的效果。
3結(jié)語
綜上可知,在現(xiàn)代軟件開發(fā)中,必須要選擇科學的現(xiàn)代軟件工程方法,對軟件開發(fā)理念加以創(chuàng)新,并將其貫穿到軟件開發(fā)的全過程中,結(jié)合實際情況,實現(xiàn)現(xiàn)代軟件工程在現(xiàn)代軟件開發(fā)中的合理運用。
參考文獻
[1]王強.現(xiàn)代教育技術(shù)在高校計算機教學中的應用——評《現(xiàn)代軟件開發(fā)技術(shù)與計算機應用》[J].當代教育科學,2015(09):81.
[2]蘇警.芻議現(xiàn)代軟件工程在現(xiàn)代軟件開發(fā)中的有效運用[J].吉林工程技術(shù)師范學院學報,2015(10):76-78.
[3]劉強,陳越,駱斌,古天龍,吳潔明,裴小兵,朱少民,白曉穎.“軟件工程”課程教學實施方案[J].中國大學教學,2011(02):41-44.
[4]吳宜燦,胡麗琴,龍鵬程,羅月童,李亞洲,曾勤,盧磊,張俊軍,鄒俊,許德政,柏云清,周濤,陳紅麗,彭蕾,宋勇,黃群英,FDS團隊.先進核能系統(tǒng)設計分析軟件與數(shù)據(jù)庫研發(fā)進展[J].核科學與工程,2010(01):55-64.
[5]史光梅,何穎波,吳瑞安,莫軍,李陽春,張亞林.面向?qū)ο笥邢拊⑿杏嬎憧蚣躊ANDA[J].計算機輔助工程,2010(04):8-14.
作者:劉鵬 單位:成都理工大學信息科學與技術(shù)學院
第二篇:軟件工程技術(shù)發(fā)展趨勢分析
摘要:軟件工程技術(shù)是現(xiàn)代信息化時展的支柱之一,其是經(jīng)歷了無數(shù)次的創(chuàng)新與改革,才發(fā)展到了現(xiàn)在這個成熟的階段,而軟件工程技術(shù)未來的發(fā)展不會只停留在現(xiàn)在這個階段,其將會不斷的創(chuàng)新和發(fā)展。由于軟件產(chǎn)業(yè)和信息產(chǎn)業(yè)在不斷的發(fā)展,因此對軟件工程技術(shù)方面也有了更高的期望。本文主要以計算機發(fā)展和軟件工程的發(fā)展為切入點,進而結(jié)合目前我國電子市場的發(fā)展方向?qū)τ谲浖こ碳夹g(shù)的發(fā)展趨勢進行了詳細的分析。
關(guān)鍵詞:軟件工程技術(shù);信息產(chǎn)業(yè);發(fā)展趨勢
引言
軟件是一種生產(chǎn)較難且知識密度較強的產(chǎn)品,與一般的產(chǎn)品有著許多不同之處。由于上世紀計算機剛剛興起,其成本較大,所以只有很少一部分人能使用計算機軟件編寫程序,其生產(chǎn)能力可想而知,這種現(xiàn)象極大的制約了計算機軟件的發(fā)展。直到上世紀六十年代,計算機軟件才得到了人們的關(guān)注,認識到計算機軟件的重要性,隨著計算機在市場中應用較廣現(xiàn)象發(fā)生,對計算機軟件的需求量也便隨之增加,同時對軟件設計也就相應的有了一定復雜性的要求,社會生產(chǎn)中軟件工程技術(shù)也就需要不斷的創(chuàng)新。本文主要目的便是針對軟件工程技術(shù)的發(fā)展趨勢進行探討,在探討的過程中,不可能將軟件工程技術(shù)的發(fā)展進行孤立的分析,我們首先要考慮到的便是計算機和軟件工程在發(fā)展中的變化,由此才能有效的推測出計算機軟件工程發(fā)展趨勢。
一、計算機發(fā)展的變化
從計算機模型來說,馮•諾依曼理論體系中的計算機二進制碼一直被沿用,但是從計算機能力而言,主要在以下幾點中發(fā)生了變化:第一、摩爾定律的出現(xiàn)使CPU的運算能力達到了一定的高度,其運算能力有了很大的提高,但是在單科CPU方面上,運算能力的提升是十分困難的。第二、多線程多核技術(shù)以及并行運算技術(shù)給服務器處理能力方面帶來了很大的便利,并且這兩種技術(shù)也得到了飛速的提升,沖出了服務器處理能力的瓶頸,致使許多計算機能力向著服務器端發(fā)展,C/S模式(胖客戶端結(jié)構(gòu))不再受歡迎[1]。反之,B/S模式(瘦客戶端結(jié)構(gòu))逐漸得到了人們的歡迎。第三、在互聯(lián)網(wǎng)的迅速發(fā)展中,推進了云計算的發(fā)展。
二、軟件工程發(fā)展的變化
在軟件工程的發(fā)展過程中,主要發(fā)生了以下幾個方面的改變:第一、由于計算機能力正在向服務器端方面不斷靠攏,具備較高的計算機能力和實用的中間件技術(shù)是當展的潮流,也是大型軟件系統(tǒng)在開發(fā)過程中的必經(jīng)之路[2]。第二、由于中間件技術(shù)在計算機中的使用,可以協(xié)助計算機處理一些細小的事件,中間件技術(shù)的介入可以有效的節(jié)省軟件開發(fā)人員的時間和精力,軟件開發(fā)人員可以將大量的時間放在業(yè)務邏輯中,進而精簡代碼行數(shù),使軟件開發(fā)的規(guī)模逐漸縮小,軟件工作人員更好的完成本職工作,對其工作進行良好的定位。第三、隨著計算力各方面能力不斷的增強,使軟件的使用逐漸得到了普及化。第四、隨著互聯(lián)網(wǎng)不斷的發(fā)展和普及,使原本較為分散的軟件開發(fā)人員又被重新整合在了一起,只要框架與基礎(chǔ)合適,他們就可以將軟件工具有效的開發(fā)出來。
三、軟件工程技術(shù)發(fā)展趨勢
(一)全球化趨勢
隨著全球化趨勢不斷的加速,軟件開發(fā)行業(yè)在發(fā)展過程中所面臨的環(huán)境也發(fā)生了較大的變化,在此過程中,使用傳統(tǒng)的管理方式對軟件開發(fā)進行管理已經(jīng)顯得十分吃力了。全球化合作是未來軟件在開發(fā)中的新方向,因為信息化的不斷普及,使許多軟件對開發(fā)的環(huán)境有了更高的要求,部分軟件在國內(nèi)是無法良好的進行下去的,需要在國外完成。同時,軟件外包的發(fā)展在軟件全球化共同協(xié)作中發(fā)展步伐逐漸變快,許多從事軟件外包工作的公司也得到了全方面的發(fā)展,這些軟件外包公司,通過對軟件工程進行合理計劃,將編程部分、設計思想、軟件測試、軟件維護和軟件等各個模塊分裂開來,分配給不同的國家完成。這個分配的過程便是實現(xiàn)信息全球化的基礎(chǔ),并且該過程已經(jīng)逐漸成為了許多外包公司主要的發(fā)展手段[3]。
(二)軟件技術(shù)得到廣泛應用
開放性的軟件計算方式是軟件工程領(lǐng)域中的一種新趨勢。由于軟件本身就是一中開放性的技術(shù),再加上全球化的協(xié)同合作不斷的加強,這種新趨勢將必然成為軟件工程在未來發(fā)展過程中的方向和重點。同時,開放性計算給軟件技術(shù)開發(fā)人員帶來了不同程度的便利,這種計算方式更加有利于開發(fā)者之間的溝通和交流,在后期的維護中,將更加專業(yè)和容易,對與開發(fā)者和客戶來說,其一個共贏的方式。
(三)模塊化思想的挑戰(zhàn)
軟件工程全球化協(xié)作不僅給軟件開發(fā)者帶來了許多機遇,同時也給軟件工程的發(fā)展帶來了各種各樣新的挑戰(zhàn)。各軟件公司在發(fā)展的過程中,競爭也逐漸激烈,正是由于這種激烈的競爭,使軟件開發(fā)逐漸向著模塊化思想發(fā)展。模塊化的設計思想主要是基于解決實際生活中傳統(tǒng)技術(shù)不靈敏的問題提出的,其本質(zhì)便是以科學的手段,將相似和已知的軟件結(jié)構(gòu)進行分類,同時用一定的方式,將其模塊化。這種模塊化設計思想的提出,不僅提高企業(yè)之間的競爭力和軟件開發(fā)的效率,還對軟件工程技術(shù)未來的發(fā)展帶來了長遠的意義。
四、結(jié)論
隨著計算機硬件的不斷完善,以及軟件全面的發(fā)展和創(chuàng)新,軟件工程也將向著更加高效化和規(guī)范化的方向發(fā)展。當前,軟件工程所研究的主要內(nèi)容是軟件設計方案、工程管理技術(shù)、軟件開發(fā)模型和工程支持技術(shù)。這幾部分的發(fā)展已經(jīng)相當成熟,致使軟件不再是原來單一的面貌,而是集科學性、復雜性和有效性于一體的技術(shù)。同時在軟件工程技術(shù)發(fā)展的過程中也還存在著一些問題,應著重根據(jù)其特點,努力找到相關(guān)解決辦法。在發(fā)展的同時,摒棄掉原有的弊端,進而朝著良性發(fā)展目標前進。
參考文獻:
[1]張忠華.軟件工程發(fā)展歷程及其發(fā)展趨勢探討[J].計算機光盤軟件與應用,2014,11(24):69-71.
[2]何金澤.軟件工程技術(shù)發(fā)展分析[J].信息化建設,2015,05(09):398.
[3]楊銳.淺談計算機軟件工程的發(fā)展趨勢與未來展望[J].計算機光盤軟件與應用,2014,13(17):70-71.
作者:李曉歡 單位:中石化管道儲運有限公司信息化管理處
第三篇:軟件工程標準化現(xiàn)狀思考
【摘要】本文是筆者從國外,國內(nèi)實際情況分析了軟件工程標準化的現(xiàn)狀,探討了軟件工程標準化的主要問題和解決方法。希望通過本文,能對國際和國內(nèi)的軟件工程標準化進程有所幫助。
【關(guān)鍵詞】軟件工程;標準化;科學管理;生命周期;體系
1軟件工程的關(guān)鍵問題及解決
軟件工程是一門工程性學科,其目標是成功的創(chuàng)建一個大型的軟件系統(tǒng),做到:消耗較少的開發(fā)成本;達到預期的目標;代碼的可維護性和可移植性;增強軟件性能的優(yōu)化。實現(xiàn)社會生活及經(jīng)濟運行中各樣事務的自動化和智能化管理,服務人們的生產(chǎn)和生活。當前軟件工程主要面臨的問題有:開發(fā)與維護的費用過高;不必要的資源浪費;軟件的可靠性不強,優(yōu)化效果不顯著;軟件工程的專業(yè)性人才稀缺;后期軟件維護和軟件重構(gòu)比較麻煩。解決方法:合理規(guī)劃開發(fā)與維護費用,增強代碼的質(zhì)量,避免開發(fā)過程中的嚴重錯誤和重大修改;通過分析和總結(jié),提高的軟件的可靠性,精減重復及陳余代碼,加大優(yōu)化力度;政府及高校加強對軟件工程的專業(yè)化培養(yǎng),與市場相結(jié)合,提高從事軟件工程工作者的專業(yè)水平;軟件開發(fā)過程中,提前規(guī)劃好后期維護和重構(gòu)的可行性方案,增強代碼的層次結(jié)構(gòu)和接口。
1.1軟件工程生存周期
軟件生存周期是指開發(fā)成型直到報廢的生命周期,其中有可行性分析、需求分析、系統(tǒng)設計、編碼、調(diào)試與測試、問題定義、驗收和運行、維護升級到報廢的過程。由于近年面向?qū)ο蟮拇a設計和編程思想的逐漸成熟,使得代碼的可維護性和重用性提高,軟件生命周期的概念在漸漸模糊。
2國際、國內(nèi)軟件工程標準化狀況
國際上,隨著計算機造價成本的降低,計算機的應用逐漸從軍事和政府發(fā)展到民用和經(jīng)濟領(lǐng)域。傳統(tǒng)的開發(fā)方式和設計理念已經(jīng)無法適應這一快速增長的需求,于是人們逐漸把注意力放在計算機軟件的研究中來,并開始研發(fā)軟件建設的相關(guān)工具,70年代中期,軟件工程這一概念相繼提出,為計算機的研究和發(fā)展奠定了良好的基礎(chǔ)和機會,80年代中期,軟件工程的發(fā)展遇到一個瓶頸性問題:軟件的生產(chǎn)水平遠低于硬件的生產(chǎn)水平。于是面向?qū)ο蟮母拍睢⒎椒ê烷_發(fā)語言逐漸產(chǎn)生,并且逐漸發(fā)展成當今社會的主流技術(shù)。軟件工程的發(fā)展也逐漸走向正軌,成為計算機軟件領(lǐng)域的一個新興學科。國內(nèi),軟件工程標準化的概念最早在1984年提出。這一年,我國信息技術(shù)標準化技術(shù)委員會成立了軟件工程技術(shù)分委員會,使得軟件工程獨立的分支出來,在委員會的領(lǐng)導下,至今已經(jīng)出臺了超過30個國家標準,將軟件工程得到了標準化的規(guī)范,但在我國軟件工程標準化過程中依然存在許多問題。
3國內(nèi)軟件工程標準化工作分析
在我國軟件工程標準化進程中出現(xiàn)這樣或那樣的問題是無法避免的,畢竟我們相對于國際上起步和專業(yè)研究都比較晚。以下是筆者總結(jié)的幾個比較有典型和有針對性的問題。
3.1是項目目標制定不夠合理
導致在軟件的開發(fā)成本和工作進程上存在嚴重偏差。管理者未能在計算機項目管理中使用有效的管理手段,缺乏大局意識,在軟件開發(fā)過程中未能提前制定好合適的項目計劃和開發(fā)、維護成本規(guī)劃。使得加大了軟件開發(fā)的難度和操作性。
3.2是軟件的質(zhì)量未能達到國際先進水平
其主要原因是缺乏相應的管理制度,企業(yè)和高校的培訓和課程中少有關(guān)于軟件工程質(zhì)量管理能力的教學,導致大部分從事者開發(fā)過程中缺乏管理能力和規(guī)劃思維,增加了開發(fā)成本和編程錯誤,從而減低了軟件的質(zhì)量。
3.3是軟件功能實現(xiàn)和操作方式是不夠人性化
軟件功能未能充分分析用戶的需求,項目在調(diào)試和測試階段,沒有適當考慮用戶的使用的方便性和實效性。這容易導致產(chǎn)品最終的產(chǎn)生量和用戶的需求量存在比較反差,不利于企業(yè)提高經(jīng)濟效益。
4國內(nèi)軟件工程標準化問題解決方案
因此,我國要逐步實現(xiàn)軟件工程的標準化進程,與國際水平接軌,筆者認為需要從以下幾個考慮:
4.1制定合理的項目目標
管理者努力學習國外先進的項目管理方案與國內(nèi)環(huán)境相結(jié)合,整理從合適的項目目標規(guī)劃,從而減少軟件開發(fā)過程中不必要的消耗和失誤,減少開發(fā)成本,提高軟件的質(zhì)量。
4.2引進國際先進的軟件質(zhì)量標準
并與國內(nèi)實際情況相結(jié)合,創(chuàng)造出使用于中國的軟件質(zhì)量標準化管理體系,加快跟上國際先進水平。
4.3要進一步加強國內(nèi)核心軟件技術(shù)的開發(fā)和研究
現(xiàn)在大多大型軟件和系統(tǒng)的核心程序都是由國外壟斷,我國購買其使用權(quán)才能進口使用,長期發(fā)展下去不利于我國的市場占有額和國際競爭力。因此,政府和高校要加大核心軟件的開發(fā)和研究投入,在借鑒的基礎(chǔ)上不斷創(chuàng)新,使得在當前信息化時代的大潮流中占據(jù)領(lǐng)先位置。
5結(jié)語
軟件工程標準化是一個任重而道遠的過程,需要我們不斷的努力,從錯誤中總結(jié)經(jīng)驗,分析原因。對于我國軟件工程標準化發(fā)展,只要我們一切從實際出發(fā),結(jié)合我們的實際情況,積極建立一個屬于我們的自己的軟件工程標準而努力,在現(xiàn)今社會,信息化和科技化是時代趨勢,而這其中起推動作用的主要是計算機軟硬件技術(shù),而要提高整個行業(yè)的生產(chǎn)效率,也離不開軟件工程實踐的標準化。
參考文獻:
[1]王亞楠.芻議軟件工程標準化現(xiàn)狀與分析[J].計算機光盤軟件與應用,2013(20).
[2]杜楠.軟件工程標準化淺析[J].中國標準導報,2015(1).
[3]李剛,董火民,揚子江,韓紅強.軟件工程標準化現(xiàn)狀與分析[J].四川大學學報(工程科學版),2007(S1):73~77.
[4]古俊.淺談軟件工程標準化現(xiàn)狀與發(fā)展[J].電腦迷,2014(9).
作者:葉舟 單位:桂林電子科技大學信息科技學院
第四篇:軟件工程中計算思維研究
摘要:計算思維能力的培養(yǎng)需要選擇適當?shù)恼n程知識作為載體,并在教與學的過程中有意識、有計劃地展開。文章通過分析軟件工程課程的基本知識點與計算思維能力點之間的關(guān)系,探討了《軟件工程》教學過程中計算思維能力培養(yǎng)的策略和方法。
關(guān)鍵詞:軟件工程;計算思維;能力培養(yǎng)
1引言
2010年,教育部高等學校計算機科學與技術(shù)教學指導委員會編制的《高等學校計算機科學與技術(shù)專業(yè)人才專業(yè)能力構(gòu)成與培養(yǎng)》中指出,計算機專業(yè)人才的專業(yè)基本能力主要包括計算思維能力、算法設計與分析能力、程序設計與實現(xiàn)能力、系統(tǒng)能力[1]。在教學過程中,如何培養(yǎng)學生的專業(yè)基本能力需要我們進行深入的探討和研究。軟件工程是計算機科學與技術(shù)、網(wǎng)絡工程等專業(yè)的專業(yè)必修課,具有綜合性、實踐性和工程性特點,它涉及軟件技術(shù)、方法和管理等各個方面。軟件工程課程的教學目標,是使學生理解和掌握軟件工程的基本思想、方法和技術(shù),能夠?qū)嶋H問題進行需求分析、系統(tǒng)設計和編碼測試,學會軟件開發(fā)的方法和過程;能夠綜合應用前修課程知識,并將所學知識融會貫通,應用到實際問題的開發(fā)過程中。這一教學目標與計算機專業(yè)能力的培養(yǎng)目標是一致的,因此,軟件工程的教學對培養(yǎng)學生的專業(yè)基本能力起著非常重要的作用。文章重點探討計算思維能力的培養(yǎng)問題。首先概述計算思維和計算思維能力的內(nèi)涵,然后分析軟件工程課程知識點與計算思維能力點之間的對應關(guān)系,最后探討如何在軟件工程課程的教學過程中滲透計算思維方法,通過理論教學和實踐教學培養(yǎng)學生的計算思維能力,進而提高學生的工程素質(zhì)。
2計算思維
計算思維是運用計算機科學的基礎(chǔ)概念去求解問題、設計系統(tǒng)和理解人類的行為,它包括了涵蓋計算機科學之廣度的一系列思維活動[2]。計算思維是利用計算機解決實際問題的思維方法,它的本質(zhì)是抽象(Abstract)和自動化(Automation)。典型的計算思維包括一系列廣泛的計算機科學的思維方法:遞歸、抽象、分解、關(guān)注點分離、約簡、迭代、預置和緩存、保護、冗余、容錯、回溯、糾錯和恢復等等。計算思維能力是指人們運用計算思維方法思考的能力。對于計算機專業(yè)人才的培養(yǎng),計算思維能力主要包括問題及問題求解過程的符號表示、邏輯思維與抽象思維、形式化證明、建立模型、實現(xiàn)類計算和模型計算、利用計算機技術(shù)等[1]。這些能力的培養(yǎng)需要以課程知識為載體,在教師有意識、有計劃的引導下,在不斷的實踐過程中進行實施。
3軟件工程課程知識點分析
軟件工程是研究軟件開發(fā)和軟件管理的一門工程學科,它主要包括技術(shù)和管理兩方面的內(nèi)容。在新建本科院校的計算機類專業(yè),軟件工程課程重點講授軟件技術(shù)方面的知識,包括軟件工程基本概念、基本原理和基本方法,強調(diào)應用計算機技術(shù)解決實際問題的方法和步驟,使學生掌握軟件開發(fā)各個階段規(guī)范的方法、工具和過程。軟件工程知識體系主要有結(jié)構(gòu)化方法和面向?qū)ο蠓椒▋纱蟛糠郑旅嬷攸c分析兩種軟件開發(fā)方法涉及的知識點與計算思維能力點的關(guān)聯(lián)。
3.1面向過程方法知識點分析
結(jié)構(gòu)化軟件開發(fā)方法的主要過程是:需求分析、系統(tǒng)設計、編碼測試、運行維護,每個階段都要遵循規(guī)范的方法和步驟,通過嚴格的評審后才能開始下個階段的工作。各個階段的主要知識點為:①需求分析:主要包括數(shù)據(jù)分析、功能分析和狀態(tài)轉(zhuǎn)換分析。數(shù)據(jù)分析是對軟件要處理的數(shù)據(jù)進行分析,確定數(shù)據(jù)實體及其屬性,并分析實體之間的關(guān)系,建立數(shù)據(jù)模型;功能分析是按數(shù)據(jù)流的處理過程對軟件的功能進行分析,建立功能模型;狀態(tài)轉(zhuǎn)換分析是對系統(tǒng)狀態(tài)進行分析,確定引發(fā)系統(tǒng)狀態(tài)轉(zhuǎn)換的事件及分析狀態(tài)轉(zhuǎn)換的過程,建立行為模型。②系統(tǒng)設計:主要包括概要設計和詳細設計。概要設計完成體系結(jié)構(gòu)設計、數(shù)據(jù)設計和接口設計,按功能分析的結(jié)果將一個復雜系統(tǒng)分解為若干個簡單模塊,并確定各個模塊之間的接口形式;詳細設計完成各個模塊的算法設計,通常用流程圖或盒圖表示。③編碼測試:主要包括編碼規(guī)范和測試技術(shù)。編碼規(guī)范主要是程序設計風格和編寫程序代碼的規(guī)范,編寫規(guī)范的程序代碼實現(xiàn)系統(tǒng)的各項功能;測試技術(shù)主要包括白盒測試技術(shù)和黑盒測試技術(shù),設計合理的測試用例對軟件進行模塊測試、組裝測試、確認測試和系統(tǒng)測試,保證軟件的質(zhì)量。④運行維護:主要包括運行程序和軟件維護活動。在用戶的實際環(huán)境中運行程序,發(fā)現(xiàn)錯誤后調(diào)試程序,改正軟件錯誤,完善系統(tǒng)的各項功能,滿足用戶的需求。在基于結(jié)構(gòu)化方法開發(fā)軟件過程中,涉及到大量的計算思維方法:在需求分析階段,對實際問題進行簡化、抽取問題的本質(zhì),應用了約簡、抽象方法;在概要設計階段,將復雜問題分解為若干個簡單問題,用到關(guān)注點分離方法;數(shù)據(jù)庫設計用到抽象和分解的方法;在調(diào)試程序的過程中,從發(fā)現(xiàn)錯誤的地方開始,沿程序的控制流往回追蹤分析程序代碼,直到找到錯誤,體現(xiàn)了回溯方法的應用。應用計算思維方法開發(fā)軟件,能夠訓練學生的計算思維能力。例如:需求分析階段的數(shù)據(jù)流圖、實體關(guān)系圖、狀態(tài)轉(zhuǎn)換圖,設計階段的層次結(jié)構(gòu)圖、算法流程圖,編碼階段的程序代碼都是分析問題和求解問題的符號表示,分析和設計的過程就是邏輯思維與抽象思維的過程,需求分析過程就是建立模型的過程,由此可見,軟件工程的知識點與計算思維的能力點是相互關(guān)聯(lián)的。
3.2面向?qū)ο笾R點分析
面向?qū)ο筌浖_發(fā)方法的主要過程是:需求分析、系統(tǒng)設計、編碼測試、運行維護。但與結(jié)構(gòu)化方法相比,面向?qū)ο蠓椒ǖ奶攸c是按對象分解系統(tǒng),更符合人類認識問題和解決問題的一般方法和過程。主要知識點為:①面向?qū)ο蠓治觯褐饕▽ο蠓治觥⒐δ芊治龊蜖顟B(tài)轉(zhuǎn)換分析。對要處理的對象、類及接口進行分析建立對象模型,用類圖描述;從用戶的角度分析系統(tǒng)的功能,建立用例模型,用用例圖描述;分析系統(tǒng)的交互作用及狀態(tài)轉(zhuǎn)換,建立動態(tài)模型,用狀態(tài)圖、順序圖描述。②面向?qū)ο笤O計:主要包括體系結(jié)構(gòu)設計、各個子系統(tǒng)設計及類設計。體系結(jié)構(gòu)設計要根據(jù)用戶的需求選擇體系結(jié)構(gòu)風格,設計系統(tǒng)的框架;對各個子系統(tǒng)的設計主要有問題域子系統(tǒng)、人機交互子系統(tǒng)、任務管理子系統(tǒng)和數(shù)據(jù)管理子系統(tǒng);類設計以問題領(lǐng)域的對象設計為核心,設計出詳細的對象模型。③面向?qū)ο髮崿F(xiàn):主要包括編寫程序代碼和軟件測試。編寫類、接口、包都要遵循規(guī)范的命名規(guī)則和編程風格,做到源程序文檔化和數(shù)據(jù)說明標準化。軟件測試主要是類測試和系統(tǒng)測試。④面向?qū)ο缶S護:與結(jié)構(gòu)化方法類似,面向?qū)ο缶S護也是對軟件在投入運行之后出現(xiàn)各種錯誤進行調(diào)試和糾錯,完善軟件的功能,滿足用戶的需求。面向?qū)ο蟮男枨蠓治鲞^程是建立對象模型、用例模型和動態(tài)模型的過程,對象分析過程是一個典型的抽象過程;功能分析將系統(tǒng)抽象和分解為若干個用例,是抽象和分解、關(guān)注點分離方法的典型應用;面向?qū)ο蟮脑O計和實現(xiàn)是在需求分析的基礎(chǔ)上多次反復迭代的演化過程,對各個子系統(tǒng)的設計也用到抽象和分解、關(guān)注點分離方法。這些計算思維方法的應用對應著問題求解過程的符號表示、邏輯思維與抽象思維、建立模型、實現(xiàn)類計算和模型計算、利用計算機技術(shù)等計算思維能力點,通過面向?qū)ο蠓椒ㄩ_發(fā)軟件,達到訓練學生計算思維能力的目的。
4培養(yǎng)學生思維能力探究
以課程知識為載體,重點從意識、理解、實踐三個層次入手,循序漸進的提高學生應用計算思維方法解決實際問題的能力。
4.1強調(diào)思維能力的重要性
從筆者有關(guān)計算思維調(diào)研結(jié)果來看,大部分學生不了解計算思維的概念,在分析問題和解決實際問題的過程中,不會應用計算思維方法,即使用到一些計算思維方法也是無意識的。因此,在課堂教學和實踐教學過程中,要充分發(fā)揮教師的主導作用,教師要將課程知識與實際問題緊密結(jié)合,激發(fā)學生學習興趣,有意識地、系統(tǒng)地講解計算思維的方法,讓學生認識到計算思維方法在求解實際問題中的重要地位。
4.2采用案例教學
在教學過程中,選擇一個學生比較熟悉的應用系統(tǒng),如學生成績管理系統(tǒng)、圖書管理系統(tǒng)等,以這個系統(tǒng)的開發(fā)過程貫穿教學始終,有計劃、有意識地講解計算思維方法在系統(tǒng)開發(fā)各個階段的應用,讓學生領(lǐng)悟計算思維方法,理解計算思維方法在實際問題中的應用。通過需求分析訓練學生的抽象思維和建立模型能力。通過系統(tǒng)設計、算法設計訓練學生的邏輯思維能力。通過編寫程序訓練學生用符號表示問題及問題求解過程的能力。通過對實際項目的分析,讓學生理解利用計算機求解問題的典型方法和過程。
4.3重視實踐教學
軟件工程課程是一門實踐性很強的課程,課程實踐環(huán)節(jié)可分為課程實驗和課程設計兩部分。課堂上的案例教學有助于學生形成計算思維的意識,理解計算思維在實際問題中的應用。課程實驗中讓學生以小組的形式模擬案例開發(fā)一個簡單的系統(tǒng),小組成員分工合作,應用計算思維方法完成需求分析、系統(tǒng)設計、編碼測試過程,實現(xiàn)系統(tǒng)的主要功能。課程設計是在課程結(jié)束后進行的綜合性的實踐環(huán)節(jié),訓練學生綜合應用知識的能力、應用計算思維解決實際問題的能力和團隊合作能力等。此外,通過實習實訓、畢業(yè)設計等綜合性的實踐環(huán)節(jié),以及大學生創(chuàng)新創(chuàng)業(yè)項目、程序設計大賽等活動,進一步強化、提升學生的計算思維能力。
5結(jié)語
計算思維能力的培養(yǎng)不可能通過一門課程完成,需要通過系列課程有意識、有計劃、持續(xù)地訓練。文章對如何在軟件工程的教學過程中滲透計算思維方法,培養(yǎng)學生計算思維能力做了一些初步的探討,實踐表明,將計算思維方法融入課程的教學過程中,提高了學生解決實際問題的能力和計算思維能力,對應用型人才的培養(yǎng)大有裨益。
參考文獻:
[1]教育部高等學校計算機科學與技術(shù)教學指導委員會.高等學校計算機科學與技術(shù)專業(yè)人才專業(yè)能力構(gòu)成與培養(yǎng)[M].北京:機械工業(yè)出版社,2010.
[2]周以真.計算思維[J].中國計算機學會通訊,2007,(11):77-79.
[3]蔣宗禮.計算思維之我見[J].中國大學教學,2013,(09):5-10.
[4]劉強等.“軟件工程”課程教學實施方案[J].中國大學教學,2011,(02):41-44.
[5]鄭人杰等.軟件工程概論[M].機械工業(yè)出版社,2011.
作者:郭詠梅 張劍妹 韓冰 馬桂芳 趙秀梅 單位:長治學院計算機系
第五篇:軟件工程構(gòu)件服務研究
摘要:基于構(gòu)件的軟件工程是面向?qū)ο筌浖こ痰囊环N延續(xù)與傳承,可以說,構(gòu)件這一概念也是對象概念的取代。本文概述了當前基于構(gòu)件軟件工程中存在的不足,并說明了構(gòu)件軟件開發(fā)的過程,旨在為構(gòu)件軟件工程技術(shù)的發(fā)展提供一定的參考意義。
關(guān)鍵詞:構(gòu)件服務;軟件工程;構(gòu)件軟件
一、當前基于構(gòu)件的軟件工程技術(shù)存在的問題
1.1 CRBA。CORHA基本上可以分成動態(tài)調(diào)用與靜態(tài)調(diào)用兩種,前者相較于后者其手段要稍微靈活,可移植水平也要高一些,然而,其調(diào)用方式操作起來較為復雜,速度也非常緩慢。CORBA效率非常低,而且缺乏一定的安全性,并非處在一個集成的開發(fā)空間內(nèi)。 CORBA中1DL接口文件被編譯成兩個方面,即stub和skeleton 。stub發(fā)起的每一次對象請求,都必須要經(jīng)過兩次及以上的打包、解包,通過ORB核心,導致CORBA的效率低下,這也使得CORBA失去了競爭能力,如今,已逐漸消失在主流的軟件開發(fā)技術(shù)的序列。
1.2 COM+。由于并非獨立的中間層,因而COM+無法產(chǎn)生軟件界統(tǒng)一的標準,進而只可以受限在微軟內(nèi)部和兼容軟件。COM+無法屏蔽硬件與操作系統(tǒng)之間的差異性,并給予一個非常一致的構(gòu)件運行工程環(huán)境[1]。除此之外,COM+還沒有NET Framework框架和運行時。COM、COM+并未真正處理好DLL hell問題,一旦安裝新的軟件應用程序,就會有條件損壞最開始運行正常的應用軟件程序,使一些用戶感到恐慌,這也正是COM+最大的不足。
1.3 NET。NET在構(gòu)件層面上相對而言是最為成功的,其.NET Framework框架在運行過程中及時翻譯,這也是邁向軟件工廠的重要樞紐。然而,不可否認的是,.NET離真正意義上的軟件工廠仍然有一段距離。NET并非一切的軟件開發(fā)都做到即插即用,此外,.NET跨語言平臺僅限于微軟的產(chǎn)品,離構(gòu)件軟件的開發(fā)還有很大距離。
二、基于構(gòu)件的軟件工程技術(shù)開發(fā)過程
2.1系統(tǒng)分析。基于構(gòu)件的軟件工程技術(shù)系統(tǒng)分析的主要原則:一是抽象:從很多事物中去掉個別的、非本質(zhì)的特征,選擇一些共同的、本質(zhì)的特征,稱之為abstaction。Abstaction是生成概念的重要形式。對于分析來說,抽象原則具有兩個層面的作用[2]。一方面,雖然問題域中事物相較比較復雜的,然而分析員并不需要明確與解釋它們的一切,只需要分析研究其中與系統(tǒng)目標有關(guān)的事物及其本質(zhì)特征。另一方面,通過舍棄個體事物在細節(jié)上的差異,選擇一樣的特征而獲得事物的抽象概念,CBD中分類便是如此取得。二是封裝:構(gòu)件的屬性、服務以及接口緊密結(jié)合在一起,讓構(gòu)件可以全力集中而整體地描述一個具體的事物。封裝的信息隱蔽作用反映了事物的相對獨立性。三是繼承:在CBD系統(tǒng)研究過程中充分運用繼承原則,換言之,便是每個由一般類與特殊類產(chǎn)生而成的特殊結(jié)構(gòu)。將一般類的構(gòu)件實例與全部特殊類的構(gòu)件實例都一起具備的相關(guān)屬性、服務、接口,一次性徹底的在一般類展開顯式的意義。
2.2藍圖設計。在進行系統(tǒng)分析的背景下,便能夠開展有關(guān)的藍圖設計了。由于基于構(gòu)件的軟件開發(fā)非常有代表性的特點便在于“搭積木”,這也在一定程度上和修建一座大樓是非常類同的,藍圖設計中的藍圖,顧名思義,也就是等同于大樓整體的一張設計圖。其要首先定義好所需要的一些構(gòu)件,把所有系統(tǒng)逐一拆解成為一級子模塊,一旦一級子模塊過于繁瑣、復雜,則還可拆解成為二級子模塊。
2.3構(gòu)件集成和測試。獨立的構(gòu)件購買后,第一,要實施二級子模塊的組裝和測試,將其進行全部組裝,實施兩方面的測試,即兼容、功能。在一切測試都符合標準之后,就把二級子模塊展開組裝,開展一級子模塊的兼容性與功能測試。一級子模塊測試也符合標準之后,就需要進行最后的軟件系統(tǒng)集成測試。在測試的過程中,也許會產(chǎn)生在購買構(gòu)件時產(chǎn)生的部分問題,可利用發(fā)E電子郵件告知構(gòu)件交易中心,構(gòu)件交易中心再通過電子郵件通知構(gòu)件開發(fā)商。
三、結(jié)束語
綜上所述,基于構(gòu)件的軟件工程主要是面向?qū)ο筌浖こ痰囊环N可持續(xù)化的延續(xù)與延伸,對象這一概念本質(zhì)上無法真正地體現(xiàn)出工業(yè)上標準下的零部件。換言之,也就喪失了標準接口這個過程,因而構(gòu)件概念又是對象概念的取代,構(gòu)件的軟件涵蓋了諸如構(gòu)件名、屬性、服務以及接口四部分,可以非常出色地體現(xiàn)現(xiàn)實世界中的事物,而且在組裝軟件的時候,支持即插即用。
參考文獻
[1]戰(zhàn)鍇.軟件工程技術(shù)發(fā)展趨勢研究[J].電子技術(shù)與軟件工程,2013,13(14):51.
[2]金晶.對軟件工程技術(shù)今后發(fā)展的思索[J].中國管理信息化,2015,12(21):162.
作者:吳麗娜 單位:宿遷學院信息工程學院