前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的計算機軟件開發方法主題范文,僅供參考,歡迎閱讀并收藏。
[關鍵詞]軟件開發 項目管理 實施 方法
軟件開發項目在一定意義上就是用戶的需求,軟件開發人員通過分析用戶的需求,遵循一定的開發原理,采取相應的方法,最終開發出用戶所需要的軟件。軟件開發是高風險的項目,Standish group報告表明80%以上的項目都是不成功的,或是因為超過預算或延期未完或缺失功能,或者幾種因素都有。現在人們致力于應用有助于提高開發效率的開發方法和開發工具,但隨著軟件規模的不斷擴大,人們認識到技術的改善只是促使項目開發成功的重要因素之一,規劃、控制和協調變得越來越重要。因此,在計算機軟件開發過程中引入與應用項目管理理論,已經成為行業共識。
一、軟件項目的危機與軟件項目管理的意義
從20世紀60年代末開始,“軟件危機”伴隨著軟件成本的日益增長、開發進度可控性不高、軟件維護困難等一系列嚴重問題而到來。軟件作為一種特殊的邏輯產品,軟件項目危機主要來源于用戶需求不明確、缺乏正確的理論指導、軟件規模越來越大、軟件復雜程度越來越高四個方面。用戶需求不明確體現在用戶在軟件開發之前自己對軟件的具體需求不清楚,對軟件需求的描述不精確,甚至有歧義和錯誤,在軟件開發過程中,不斷提出修改軟件功能、界面等方面的要求。軟件開發過程是一個復雜的邏輯思維過程,需要有力的方法學與工具方面的支持,需要高度的智力投入,如果沒有正確的理論指導,過分依靠程序設計人員在軟件開發過程中的個性化與創造性,也容易導致軟件危機的產生。大型的軟件項目需要一定的人力齊心協力共同完成,但現行條件下,大規模軟件開發中人力與管理中的問題日益暴露出來,成為影響大型軟件開發成功的重要因素。隨著軟件規模的發展擴大,其復雜性也與日俱增,增加了軟件項目開發的風險。
軟件開發新技術與新工具的開發與利用,在一定程度上改善了軟件開發現狀,但人們也發現軟件危機的解決不光是技術問題,更為重要的是管理問題。軟件開發過程是設計過程,消耗的主要是人力資源,軟件開發的產品是程序代碼和技術文件,而沒有其他物質結果。這一不同于制造其他產品的特性,使得管理在軟件開發項目中的作用凸顯出來。通過對成本、人員、進度、質量、風險等的分析與管理活動,使軟件開發項目按既定計劃順利完成,通過管理使企業的軟件生產趨于成熟。
二、軟件開發過程中的管理
根據項目管理理論,所有的項目都要經歷五個階段:啟動階段、計劃階段、執行階段、控制階段和結束階段。而計算機軟件從其構思之日起,至開發成功投入使用,直到最后被另一項新軟件所代替,其生存周期可以分成六個階段:可行性與計劃研究階段、需求分析階段、設計階段、實現階段、測試階段、運行與維護階段等。下面將主要從軟件開發項目前期、項目準備、開發過程、項目后期這幾方面分析軟件開發項目中的管理。
軟件開發項目前期包含可行性與計劃研究階段和需求分析階段,這階段工作的準確性直接關系到軟件項目的成敗。這一階段首先確定該軟件的開發目標和總要求,進行項目的可行性分析與投資-收益分析,編制開發計劃,為領導層的決定提供依據。由領導層決定項目取消或者評審和批示,當項目確定實施以后,初步制定軟件項目開發計劃,進入下一個階段。需求分析階段要能確定被設計軟件的各項功能、性能需求和設計約束,編寫出軟件需求說明書、數據需求說明書和初步的用戶手冊。需求的獲取要求成立需求調研小組,在調研中將用戶群體根據其差異性進行分類并歸納出各類的個性特點及任務狀況,并在每類用戶中挑選出一個典型代表作出決策。調研小組通過調研會、面談、收集資料等多種方法收集需求,并在分析基礎上編寫需求文件,與用戶一起對需求進行審核,并最終獲得用戶認可。優秀的需求文件要求具備完整性、正確性、可行性、必要性、無二義性和需求優先性。
項目準備中的管理涉及項目團隊的組織、需求管理、方案設計、風險管理和開發計劃。根據項目規模和特點組建開發團隊,確定各類人員的職責與考核管理方法,以完成不同角色和不同階段的任務。在完成需求調研和需求分析后,還會遇到項目需求的變更,要建立起良好的需求管理方法,對變更帶來的潛在影響和可能的成本費用進行評估,跟蹤每項需求的狀態。在項目需求分析的基礎上,進行系統方案的設計,確定開發中采取的技術方案、技術架構、開發標準規范和版本管理的方法。做好源自技術、需求、人員、管理中任何未預期的條件和事件的發生所引發的項目風險管理,及早發現風險、及時規避風險,減小項目失敗的概率。之后便制定可實施的項目開發計劃,制定詳細的項目任務分解,大致估計每個任務的工作量,對工作量、資源狀況、任務間的相互依賴關系進行全盤考慮后安排合理的工作計劃,并對計劃執行有效的監控。
項目開發過程管理主要是對項目的系統詳細設計、編碼、調試、測試、計劃控制、質量控制、版本等方面進行的管理。對評審通過的系統設計進行編碼工作,代碼核驗,由開發人員進行單元測試,監控項目執行情況,及時調整計劃和任務安排,并按照質量標準對項目開發過程進行嚴格的流程控制與審核,通過對計劃與質量的監控可以及時發現問題,調整計劃,減少因延遲造成的損失。
項目后期管理是軟件開發項目的最后環節,包含測試驗收、試運行與軟件維護。針對軟件的需求和質量要求,按照可行的測試方案與計劃對項目進行測試驗收,以客觀評價項目。開發方應及時做好與驗收方的溝通,提供一系列的開發文檔供測試使用,了解測試驗收方案,這將有助于順利通過軟件項目驗收。軟件的后期維護包括糾錯性維護、適應性維護和完善性維護,不僅需要糾正軟件開發中的錯誤,修改和擴充程序以適應新的環境,還需要滿足用戶新的需求。這就需要在軟件開發過程中,盡可能完善細致,為后期降低維護成本打下良好基礎。
參考文獻:
關鍵詞:方案;圖形;設計;優選
中圖分類號:TP311.52
朝陽溝油田開發已二十多年,井別方案設計是油田投產前的一個重要環節,它在油田開發中起到重要的作用。目前我廠新井油水井別設計主要靠人工來完成,在有限的時間及人力范圍內每出一套正式的方案只能在四至五套內進行優選,主要的時間及精力花費在繁雜的數據統計上,不能夠編寫更多的預選方案供選擇,隨著我廠重上百萬噸,需要新開發的區塊增加,每年新投產井的井別方案增加,井別方案設計在我廠可持續發展的過程發揮出更重要的作用,因此,采用計算機來進行井別方案輔助設計,在同等的時間、人力少的情況下會出更多套可供選擇的方案,提高方案設計的科學性,使油田開發更加合理。在我廠可持續發展的過程中有著非常重要的意義。
計算機軟件實現井別設計的指導思想是利用最短的時間,提供任意套井別方案,最大限度地減少開發人員的工作強度,提高油田開發人員的工作效率,提高方案設計的科學性。
1 數據庫結構及編碼設計
數據來源于股份公司統一標準的數據庫,采用標準的數據庫字段代碼,做到數據庫結構及代碼統一標準,在標準的數據庫基礎上開發軟件有利于軟件的推廣及應用,有利于軟件的集成及整合。減少數據的冗余,增加數據的可利用性。對標準數據庫進行維護,保證了數據庫的準確性、及時性。同時以用帶建,促進了數據庫的標準化及可應用度,有利于與其它軟件的集成應用。
軟件主要利用4個標準數據庫,包括:單井基礎信息數據庫、井位坐標數據庫、連通井數據庫及小層連通數據庫。
2 軟件流程設計
根據井別方案設計的原理、數據流程及業務流程,設計出軟件實現方案設計的流程。軟件實現方案設計的流程做到科學合理,最終實現的方案要能夠滿足方案設計的各項技術指標,有一定的擴展功能。軟件流程如下:在標準數據庫中提取所要設計區塊的數據,進行一系列加工處理,可進行人工干予各項數據,在屏幕上繪制出本區塊的井位圖,直接在屏幕上進行井別設計,統計出每套方案的各項綜合指標數據,根據開發人員提供方案優選參數進行方案的優選排序,給出最合理方案供選擇。在設計完的各套方案中進行圖形查詢每套方案,在圖形方式下進行方案的綜合指標查詢,并將各種綜合指標打印輸出,同時將各種結果數據表轉換成excel電子表格的形式直接存儲,可形成繪圖儀上輸出圖形的各套方案井位數據及區塊連通數據。
3 數據加工予處理及人工進行數據干予
先提取所選區塊的各種基礎數據,可節省磁盤空間,提高軟件運行效率。根據區塊的不同建立相應的文件夾,使每一個區塊的數據集中存儲,有利于數據的管理及查詢。合理地進行數據予處理,將每一套方案的基礎數據進行加工處理,合理組織數據庫結構,能夠達到每個區塊每套方案的數據進行永久性存儲,方便將來方案的數據查詢,為將來進行綜合調整方案打下良好的數據基礎。為了更好地進行方案設計,更合理地、細致地表現地下數據真實性,軟件增加了人工干予數據的功能,使方案計算機設計更加趨于科學性。
4 采用屏幕繪圖方式進行區塊井別設計
先選擇所需設計的區塊及方案套數,然后根據選定進行一套方案的設計。可進行任意套數的方案設計。
軟件采用直觀的、靈活多樣的方式進行井別設計。根據所選區塊井的地球坐標,在屏幕上繪制出井位圖,井位圖的繪制方法,先測試出所有井的井位坐標橫向及縱向的最大值及最小值,確定方案屏幕圖形輸出的大小,井位圖的初始為油井,每口井上標有井號,油井的顏色為紅色,便于設計人員進行設計,在給定的圖形上紅色井的坐標范圍內點擊鼠標后,紅色圖形變為藍色,既為水井,再一次點擊又變成紅色為油井,井別確定操作方便靈活。為解決井數多時全屏幕顯示不下全部井位帶來的不便,軟件增加了選擇顯示比例的功能,使操作界面更加直觀。所有井別確定后將數據自動存儲到相應方案的數據庫中。
5 統計各種方案指標
根據圖形設計的油水井別方案,軟件可統計出井別設計方案的各項綜合性指標,主要包括:區塊油層評價表、區塊厚度分級表、區塊井別方案評價指標對比表、區塊一類和二類油層井別方案評價指標對比表。軟件根據油層情況,根據我廠實際情況,按區塊油層的各種參數評價評價出每個油層的評價結果和發育形態,結合我廠地下的實際特點,分別統計出整個區塊及分一類油層、二類油層分單向、雙向、三向、四向及孤立井點的油層連通井數、厚度及層數。
6 計算機進行方案優選
所有方案設計完成后,根據方案優選的水驅控制程度、多向聯通情況等綜合性指標條件進行計算機方案的優選,把所有方案的優選結果進行排序,供方案設計人員進行參考,為最終確定方案提供依據。
7 多種形式進行方案查詢
7.1 圖形方式下查詢方案綜合數據
采用直觀的圖形方式進行各套方案的數據查詢功能,選擇要查詢的方案后,屏幕上可繪制出設計好的井別圖形,在圖形方式下可進行方案各項綜合數據的查詢,使方案設計結果圖形與數據同步查詢,方便了方案的選擇。
7.2 圖形方式下查詢單井數據
直接在屏幕上繪出每套方案的連通圖,在屏幕上通過移動鼠標直接查詢每口井的連通情況,每個小層的基礎數據。
8 方案綜合數據表輸出
為方便方案設計人員及領導能夠正確制定方案,從多個方案中選出最佳方案,軟件具有打印輸出功能,將每個綜合性數據表輸出出來,方便了方案的選擇,同時將綜合數據表轉換成電子表格的形式存儲,方便方案的制定。
9 結論
該軟件創新地實現了計算機進行新井井別方案的設計,軟件采用Delphi7.0語言編寫,在Windows單機環境下運行,適合我廠實際井別設計方案的特點要求,操作方便,界面直觀,方案設計靈活等諸多優點,易于使用。
9.1 對我廠重上百萬噸,可持續發展有著非常重要的意義。軟件的應用實現了原來人工進行方案設計所不能達到的效果,增強了方案設計的科學性,為更合理地開采及提高采出程度打下了良好的基礎。
9.2 提高了方案設計人員的工作效率,減輕了勞動強度,縮短了方案設計時間,使方案設計人員能夠把更多的精力投入到油田開發工作中。
9.3 新井井別方案輔助設計軟件投入應用,為下一步編寫開發綜合方案的計算機軟件打下了基礎。為實現油田開發方案的設計、形成一整套方案設計軟件邁出了第一步。
參考文獻:
[1]瞿繼雙.Delphi部件開發編程深入剖析[M].北京:機械工業出版社,2001,1.
[2]胡曉成.Delphi數據庫開發與應用[M].北京:電子工業出版社,2002,3.
關鍵詞:計算機 軟件工程 信息作用 研究
0 引言
現今社會已經進入互聯網時代,計算機已成為人們生活工作中不可或缺的組成部分,“電腦”、“計算機”這樣的名詞對于所有人都已經不再陌生,人們對計算機的依賴程度也越來越大,就現在的工作環境講,幾乎沒有什么行業不在使用計算機,對于計算機軟件的開發研制也是從未停止過,計算機軟件工程主要涉及應用數學、現代管理學和計算機科學等學科,在上世紀50年代,軟件的開發工作還是依賴手工操作,但隨著軟件的商品化發展趨勢日益加快,對于軟件的開發和設計過程也日益規范化起來。
1 計算機軟工程的概念及特征
1.1 軟件工程學的基本概念。我們所講的軟件工程學主要是指研究如何通過先進的科學技術為計算機的軟件開發提供指導服務,以最少的投資來換取高效的回報,以高質量的計算機軟件為人們提供更好的科技服務。軟件工程學涉及范圍非常廣,是一門邊緣學科,其內容包括:人體工程學、系統工程學、經濟學和心理學等多個學科領域。通過對各學科的交叉研究與指導,設計出應用更為方便、設計更加人性化的軟件。
1.2 計算機軟件的基本功能。我們知道計算機作為一個電子設備,主要是由硬件和軟件兩個部分組成的,對于計算機的研發和更新既要考慮硬件因素,又必須在軟件工程方面投入更多的精力,一般來講,計算機的軟件系統包括系統軟件和應用軟件兩個組成部分,系統軟件的功能是監控、維護、管理計算機運行過程中的各個軟件,如人們常見的操作系統和病毒查殺系統;應用軟件就是指能夠滿足人們工作和生活的需要,幫助人們解決實際問題的軟件,如常見的Office辦公系統、人事管理系統、財務管理系統等。軟件的作用就是通過自身的邏輯分析和計算功能,指導計算機的正確有效運行,讓用戶能夠更加方便的操作。
1.3 軟件工程的研發特點。計算機軟件工程的設計、研發是一項系統的、長期的工作,其研發生產過程的每個步驟都是要經過反復論證修改的,以求更加良好的性能,滿足用戶的實際需要。一般的工程設計在產品完成生產投入使用后就完成了工作。但是計算機軟件工程的研發,在產品投入市場后,還需要有一個長期的維護過程,因為一些設計上的漏洞和缺陷只有在實際使用中才能發現,這就需要設計人員不斷的更新思維,解決問題,使軟件產品符合用戶的使用要求。
2 軟件工程工作流程管理系統和開發方法
2.1 軟件工程工作流程管理。從理論上來說,現代意義上的工作流管理系統是一種綜合性系統基本驅動力,是工作流的形式化表現,基本手段是執行軟件操作系統,需要完成包括工作流定義、管理以及執行等多種任務。通常情況下,工作流程管理系統的構建分為模型建立階段、模型實例化階段和模型執行階段三個階段。在模型建立階段,相關工作人員在分析了整個企業的工作特點及生產步驟之后,依據工作流程建模工具或是人工操作,實現對整個企業生產經營管理過程中模擬,使企業中的各類經營管理行為活動都能實現計算機化;在模型實例化階段,相關工作人員可以給每個過程(即PDM工作流程管理系統中所稱的節點)來設定其運行過程中所需的基本參數,同時給這些過程分配相應的資源,在此基礎上限制各個過程的使用權限;在模型執行階段,相關工作人員要嚴格執行這一階段企業各項生產經營管理指標,依據整個工作流程管理系統所提供的強大的人機交互界面與應用功能,更好的實現整個流程管理系統的優化整合。
2.2 軟件工程的開發方法。軟件工程的開發方法有Parnas方法、SASA方法、面向數據結構的軟件開發方法、問題分析法、面向對象的軟件開發方法、可視化開發方法、ICASE、軟件重用和組件連接等,其中面向對象開發方法是現代常用的開發方法。面向對象是當前計算機界關心的重點,它是90年代軟件開發方法的主流。面向對象的概念和應用已超越了程序設計和軟件開發,擴展到很寬的范圍。如數據庫系統、交互式界面、應用結構、應用平臺、分布式系統、網絡管理結構、CAD技術、人工智能等領域。面向對象的優點有:和現實世界更接近,更符合我們人類的思維邏輯;開發出的系統容易維護和修改;適用于開發復雜、龐大的系統;開發出的程序更穩定合理;由于繼承、類的機制,更容易實現重用,減少冗余;由于實現數據和邏輯的分離,維護和擴展變得更加容易。
面向對象的開發包含Booch、Coad、OMT等方法。Booch最先描述了面向對象的軟件開發方法的基礎問題,指出面向對象開發是一種根本不同于傳統的功能分解的設計方法。面向對象的軟件分解更接近人對客觀事務的理解,而功能分解只通過問題空間的轉換來獲得。Coad方法是1989年Coad和YourdOn提出的面向對象開發方法。該方法的主要優點是通過多年來大系統開發的經驗與面向對象概念的有機結合,在對象、結構、屬性和操作的認定方面,提出了一套系統的原則。該方法完成了從需求角度進一步進行類和類層次結構的認定。盡管CoadYY法沒有引入類和類層次結構的術語,但事實上已經在分類結構、屬性、操作、消息關聯等概念中體現了類和類層次結構的特征。OMT方法是一種新興的面向對象的開發方法,開發工作的基礎是對真實世界的對象建模,然后圍繞這些對象使用分析模型來進行獨立于語言的設計,面向對象的建模和設計促進了對需求的理解,有利于開發更清晰、更容易維護的軟件系統。該方法為大多數應用領域的軟件開發提供了一種實際的、高效的保證,努力尋求一種問題求解的實際方法。
3 計算機軟件工程的實際應用
現在隨著信息網絡技術的迅速普及,計算機走進了人們工作、生活的每個角落,計算機軟件憑借其運行高效率、執行命令的精準性和操作使用方便性得到了人們的廣泛認可,并迅速的被應用于人類活動的各個層面,可以說當今社會的人類活動已經離不開計算機軟件了。其具有代表性的功能軟件包括:電子郵件、Office辦公系統、Win7/xp計算機操作系統、數據庫和各種網游軟件等等。在國家經濟發展的各個領域如工業、農業、交通、金融、政府和企事業單位等幾乎所有部門都需要應用計算機軟件來完成工作。
隨著計算機的普及和應用程度加深,以后的計算機軟件工程將會發展成為一項廣義的工程技術,在軟件功能和操作方法上的研發也會越來越注重人性化的因素,同機械制造業的流水化生產方式不同,軟件工程的研發與生產是非常具備個性化特征的,它的設計思維和功能設置都是處于不斷更新完善中的,在豐富的實踐經驗和客戶調查的基礎上,設計人員會根據客戶的需要,發散思維、綜合考慮各方面的因素,匯集大家的智慧才能設計出一款成功的計算機軟件。由于軟件系統的廣泛應用性,設計人員必須提前考慮到各方面可能出現的問題,不能等到問題發生了,再去想辦法補救,因為一旦軟件系統的安全或運行出現故障,給客戶帶來的損失很可能是無法估量的。所以說,要想做好計算機軟件工程的研發工作是一項非常困難的事兒。
計算機軟件工程設計的人性化、功能化的發展,使得計算機軟件在人們的現實生活中得到廣泛應用,在現代企業的經營管理中,計算機軟件發揮著非常重要的作用,生產、銷售、策劃、財務之間通過軟件系統實現了信息的溝通交流,方便經營策略的時時變動;在商場、金融機構的管理中,需要利用軟件系統對消費信息進行確認和統計,消費者使用刷卡消費,通過金融系統的軟件就可以支付費用,免去了攜帶現金的麻煩;保衛人員通過安保系統可以對整個單位的情況進行實時監控,一旦發生火災險情報警系統會隨時提醒安保人員采取防護措施。隱藏于計算機中的軟件系統雖然微小,但卻具備了強大的管理能力,從小處著手逐漸改變著人們的工作生活方式。
4 結語
綜上所述,計算機軟件工程在計算機應用技術的發展過程中具有特別重要的意義,它的設計和研發是一項系統性、長期性的工作,隨著計算機軟件技術的日臻成熟、功能的逐步完善,在人們的生活、工作中得到了迅速的普及,人類的發展離不開計算機軟件工程的推動作用。我國擁有巨大的軟件應用市場,但是由于在軟件開發技術上起步較晚,今后還需要經歷一段漫長的發展歷程。
參考文獻:
[1]李萬軍,曹艷云.論計算機軟件工程管理工作[J].才智,2012(03).
[2]田華.計算機軟件工程管理方案初探[J].煤炭技術,2011(01).
[3]李建兵.計算機軟件工程方法的進展研究[J].新課程(下),2011(08).
關鍵字:計算機軟件;開發應用;研究發展趨勢
隨著科學技術的不斷發展,現代人的生活發生了翻天覆地的變化,信息化網絡技術的出現更為人們工作、生活帶來了更多的便利,計算機的推廣和普及都離不開計算機軟件開發技術,為了不斷滿足人們工作和生活的需求,推動計算機網絡時代的進步,計算機軟件開發技術也不斷的進行著革新。近幾年來,計算機軟件開發堅持“以人為本”的開發理念,加強提升軟件的價值性、實用性、有效性以及社會服務性,為人類的發展做出了杰出的貢獻。
1計算機軟件開發技術現狀及重要性
1.1計算機軟件開發技術的發展現狀分析
計算機的出現使人類的工作和生活都發生了巨大的改變,而計算機的飛速發展離不開計算機軟件開發技術的支持,在計算機日常運行中,計算機軟件起著主要的輔佐作用,它通過自身的功能和運作支撐著整個計算機的運行,給人類生活帶來極大的便利。就我國計算機行業整體來看,目前,我國計算機軟件開發隊伍正在不斷的壯大,這在一定程度上促進了計算機軟件開發行業的崛起和發展。加之。受2009年金融危機的影響,許多計算機軟件開發公司將經營中心由國外轉至國內,國內計算機軟件開發進入高速發展時期,其產業額在全球IT行業中都占著較大的比重,各高校學生也都看好這一市場,紛紛加入計算機軟件開發這一行業,為計算機軟件開發行業帶來了更多優秀人才。
1.2計算機軟件開發的重要性
在網絡信息時展的今天,計算機是推動社會經濟發展的重要力量,而計算機的軟件開發技術是計算機發展的重要核心,換言之,計算機軟件開發技術不但是支撐計算機發展的重要后盾,同時,也是推動信息化網絡時展的主要力量。隨著我國計算機軟件開發技術不斷的提高,計算機安全性也也得到了很大的提升,實現了網絡共存,有效的解決了遠程控制和網絡支持。
2計算機軟件開發技術常用方式分析
隨著計算機的不斷推廣和普及,計算機已成為人類生活和工作中不可或缺的一部分,而為了滿足人們的使用要求,計算機軟件開發者不斷的創新改革,目前,我國計算機軟件開發技術逐步趨于成熟,其軟件開發的方式也越來越多,就當前我國計算機軟件開發行業來看,其開發方式為以下兩種:
2.1原型化法
在軟件開發過程中,開發人員根據計算機使用者的需求,科學合理的開發一個原型,在投入使用后,開發人員根據使用情況進行不斷的修訂,直至滿足計算機使用者的需求。相對其他開發方法來說,原型化法能在更短的時間內滿足客戶需求,且開發風險和開發成本較低,因此,原型化法也是當前計算機軟件開發行業常用方法之一,但原型化法也存在著一些不足之處,這種開發法僅適用于小型系統的開發,不能滿足大型系統的使用要求,且后期系統維護較為麻煩,因此,開發人員在使用前應根據自身情況,慎重選擇。
2.2生命周期法
生命周期法也就是我們常說的結構化系統開發法,這種開發方法周期較長,其工作量較大,注重開發系統的全面性和完整性,在開發時,開發者為降低開發難度,提高軟件的可操作性,一般會將開發過程分成小節進行開發,每個開發階段都有明確的開發目標和任務,這樣就能有效的避免不必要的麻煩,但生命周期法只能按順序進行階段開發,各階段不能同時進行,在開發期間,開發人員還需做好各階段的校正,否則后期難以更改。生命周期法也是目前我國較為成熟的軟件開發方法,雖然其開發過程較為復雜,但其優越性其他開發方法無可比擬。
3新時期計算機軟件開發技術的應用
計算機的存在在于更好的為人類工作和生活提供方便,軟件開發的宗旨也一樣,任何軟件的開發都必須建立在為人類服務的基礎上,本文以VB6.O+Acess和Web+xm1+ActiveXl兩種不同的計算機軟件為例,詳細說明計算機軟件開發在新時期的應用。就以上兩種軟件來說,由于第一種軟件和系統的版本同屬微軟版本,其兼容性較好,可以直接在用戶計算機上安裝使用,而第二種軟件與用戶計算機系統屬于不同版本,其兼容性相對較差,因此,在安裝前,需先在用戶計算機上安裝相關的組件,并更改安裝瀏覽器,才能使軟件更好的兼容。經過一段時間的使用和觀察可發現,第一種軟件安裝顯得更為方便,用戶可根據自身需要,選擇適合自身需求的軟件,獨立完成安裝,經過觀察后發現第一種軟件的運行相對穩定,而第二種軟件由于與系統不兼容,安裝時受改瀏覽器和安裝版本的限制,其安裝過程較為復雜,許多用戶無法獨立完成安裝,因此,就使用人數來看,第一種軟件有著明顯的優勢,但隨著用戶數量的不斷增加,軟件客戶端運行速度會受到一定的影響,需人工進行調整。總而言之,任何軟件的開發都是為了能為人類提供更多的便利,因此,在開發時,開發人員應根據計算機用戶需求,堅持以人為本思想,為計算機軟件開發作出更多貢獻。
4結束語
當今時代是一個全新的時代,新的時代更需要新的發展理念。在這個新的發展時期,計算機扮演著重要角色,可以說社會經濟的發展離不開計算機的推動,而計算機的發展離不開軟件開發技術,因此,要想社會更好、更長遠的發展,我們必須為計算機軟件開發營造更為良好的環境,不斷提高計算機軟件開發技術,從而推動計算機發展,為人類謀求更好的發展。
參考文獻
[I]沈亮亮計算機軟件開發技術的應用研究與趨勢展望[J].電子技術與軟件工程,2014,22:73
[2]張偉計算機軟件開發技術的應用與發展趨勢研究[J].軟件,2013,03:151—153
[關鍵詞]計算機 應用 軟件 開發技術
中圖分類號:TP31 文獻標識碼:A 文章編號:1009-914X(2014)15-0105-01
計算機硬件和軟件組成了計算機使用的統一整體。因此,計算機資源應該既考慮硬件資源又考慮軟件資源。軟件資源包括系統軟件和應用軟件。系統軟件是管理、監控、維護計算機的軟件,如自檢程序、操作系統等。應用軟件是主要解決某些具體問題的軟件,如學習管理軟件、人事管理軟件等。從功能上可以認為軟件是利用計算機本身提供的邏輯功能,合理地組織計算機工作,簡化或代替人們在使用計算機過程中的工作環境。因此,不論是支撐計算機工作還是支持用戶應用的程序都是軟件。在20 世紀 50、60 年代人們是基于手工方式進行軟件開發的,人們認為計算機軟件就是程序。隨著使用化、商品化、通用化、大型化軟件的開發,軟件設計者逐漸感到要有一定規范的文檔以保證程序從設計、調試到運行的成功。這樣,從 20 世紀 70 年代開始,認為軟件不僅是程序還包括開發、使用、維護這些程序所需要的一切文檔。到了 20 世紀 80 年代,國際標準化組織從軟件工程的概念上更為全面地給軟件定義為:計算機程序、實現此程序功能所采用的方法、規則以及與其關聯的文檔和在計算機上運行它所需要的數據都是計算機軟件。
1 軟件工程的概念
1.1 “軟件工程”概念提出
20 世紀 50、60 年代開發大型系統軟件用手工方式進行,其生產效率低、出錯率高。這種狀態不能滿足日益增長的軟件生產的需要,產生以下四個方面的問題。a。軟件復雜性飛速增長;b。軟件成本高;c。開發周期長;d。維護工作量大。即出現了“軟件危機”現象。為了擺脫軟件生產的這種局面, 在 1968 年北大西洋公約組織的學術會議上,第一次提出了“軟件工程”這個概念。
軟件工程是開發和維護軟件的規范化方法,它的指導思想是以處理工程問題(如建筑工程、機械工程等)一樣的方法處理軟件生產的全過程。為了指導這種軟件生產的整個過程,產生了軟件工程學。
1.2 什么是軟件工程學
軟件工程學是研究和探討如何利用當代的科學理論和技術指導軟件的開發,以達到利用較少的投資獲得高質量軟件產品的目的科學。
軟件工程學既是邊緣學科,又是一種綜合性學科。它包括計算機科學、系統工程學、管理學、經濟學、人體工程學和心理學等。
2 軟件工程的發展
軟件工程的發展,大體經歷了三個時代,即程序設計時代、軟件時代、軟件工程時代。
2.1 軟件開發的三個階段
前面講過用軟件工程的方式生產軟件的過程類似于機械、建筑工程生產產品的過程。如一個建筑工程(如立交橋、賓館大廈等)從開始到結束,經歷設計、施工和驗收三個階段。軟件產品的生產也要經過定義、開發、維護的軟件開發三個階段。
2.2 軟件工程與其他工程科學不同之處
從上面建筑工程與軟件二種產品開發階段比較,可以看出:a.建筑工程流程圖中,設計藍圖產生之后,往下的每一步沒有回溯問題。但在軟件開發工程中,每一步都可能經歷不只一次的修改和適應的回溯問題。b.軟件交付使用后,還有一個運行維護問題,如運行后發現有隱藏錯誤、運行環境有變化、用戶要求的變更等。
3 應用軟件開發方法
一個大型的應用軟件、如計算機輔助設計軟件,大型仿真訓練軟件等,需要多人共同完成。為保證大型應用軟件系統的開發質量,必須嚴格按照軟件工程的思路和原則,采用軟件的開發方法,使用軟件工程提供的圖示工具,組織軟件人員協調一致地完成設計與開發任務。
現應用的軟件開發方法主要有三種:軟件生命周期法、原型化方法、自動形式的系統開發方法。
3.1 軟件開發的生命周期法
生命周期方法是從時間角度對軟件的定義、開發和維護的復雜問題進行分解,分成若干個階段。每個階段的開始和結束都有嚴格的標準(前一階段的結束就是后一階段的開始。標準就是每個階段都應該交出高質量的文檔。軟件生命周期一般分為六個時期,即六個階段。
3.2 原型化方法
傳統的生命周期法的理論基礎較為嚴密。一般說來,在軟件開發過程中,首先要經過嚴格的定義或預先說明,并要求軟件開發人員和用戶在系統的開發初期就要對整個的功能和信息需求做出全面、準確而深刻地認定。
通常用戶給出概括性的軟件目標而無法描述詳細的輸入、處理或輸出需求。而軟件開發人員也可能尚未確定處理算法的效果、操作系統的適用性及即將使用的人機界面形態。在這種情況下,對事務只有邊干邊認識,原型化方法就是基于這一主導思想。
3.3 原型的三種形態
3.3.1紙上原型。這種紙張和墨水的模型解釋了軟件上的一些特征。
3.3.2工作原型。制作所需軟件中的一部分功能,讓其在計算機上執行,可使用戶和開發者在一定程度上了解即將被開發的程序。
3.3.3現有原型。利用一個可運行的現成程序,完成所需功能的部分或全部,但是有一部分必須在新開發的基礎上加以改善。
3.4 原型法開發過程
利用原型法開發軟件大致經過可行性研究階段、確定系統的基本要求階段、建造原始系統階段、用戶和開發人員的評審階段、開發人員修改系統階段。
3.5 自動形式的系統開發方法
這種方法的特點是采用第四代技術(4GT)包含的大量軟件開發工具,使軟件開發者只需說明軟件所要實現的內容,而不必說明如何去實現。4GT軟件工具根據系統要求確定規范,進行分析,自動設計,自動編碼。
結束語在軟件工程中,不應武斷地選擇某種方法,應當由應用特性來決定所要采用的方法。往往采用以上方法相結合的模式,可加快軟件開發的進度。
參考文獻
[1] 王熾鴻.計算機輔助設計[M].北京:機械工業出版社,1998.
1中小型軟件企業的特點
中小型軟件企業的規模一般在50人以下,人員流動性比較大,未明確員工職責,企業資金少;組織結構及管理比較松散,缺乏合作,各部門間交流少;對管理不夠重視,企業內部缺少專業管理人才,多憑以往的經驗實施管理工作;這些因素導致中小型軟件企業不容易形成專業的軟件開發隊伍。我國的中小型軟件企業起步較晚,發展尚不成熟,加上高端軟件被國內的大企業或國外企業壟斷,中小型軟件企業大多只能從事低端軟件的開發,且將企業在市場經濟中的生存看成目前的首要問題,因此這些企業的重心多放在賺取利潤上面。
2中小型企業計算機軟件開發技術的現狀與發展
計算機的發展在生活、學習、工作等方面都為人們提供了便利,促進了人們生活水平的提高。相反的,不斷提高的社會生活水平要求計算機不斷進步;計算機軟件技術作為計算機技術的重要內容之一,越發受到人們關注。我國越來越多的人才參與到計算機軟件技術的開發工作中,促進了IT行業在國內的發展。
2.1軟件開發方法
目前我國中小型軟件企業運用的軟件技術開發方式主要有三種。一是生命周期法。這種軟件開發方法較為傳統,需要對軟件的方方面面進行拆分,工作量大,且要求高。軟件開發工作人員要對用戶的需求信息進行了解,加以整合利用,以此來定義、說明軟件的生命周期;并對軟件開發過程中的每一個階段進行標準控制,從而有計劃地完成軟件的開發工作。二是建造原型化的軟件。這種方法對開發人員與用戶間的交流有一定的要求;負責開發的工作人員在無法獲得用戶對軟件的需求信息時,通過這種方法,在擁有原型化的系統的基礎之上做初步的設計,再在獲取相關信息后對軟件進行改進和完善。三是自動形式系統開發法。這種開發方式需要用戶對所要開發軟件的內容和目標提出明確的要求,而后由開發人員自動地完成系統編碼設計,這需要開發人員加強與用戶的溝通。自動形式系統開發的效率高于前兩者,也降低了開發人員的工作難度,因此被廣泛運用到當下的軟件開發中。
2.2軟件技術開發中的問題
2.2.1缺少核心技術支撐雖然目前中小型軟件企業的計算機軟件開發技術已經有了一些進步,但存在缺少核心技術支撐的問題。我國的軟件開發技術發展比國外落后,國外的軟件開發技術已趨向成熟,占據了國內廣闊的市場;中小型軟件企業由于資金、經驗及技術上的不足,又急求生存,因此急功近利,一味模仿國外的產品進行開發。這對于在起步階段的企業來說無可厚非,但長期如此,企業的產品缺乏創意,又難以超越模仿對象,競爭力只會逐漸下降,影響到公司的發展。2.2.2缺乏專業人才隊伍中小型軟件企業不僅缺乏核心技術,還缺乏專業的軟件開發人才和隊伍,因此這些企業的產品長期在低端行列徘徊,且質量較差。中小型軟件企業平常疏于管理,過分重視技術,沒有配備專業的管理人才;再加上內部人員流動性大,軟件開發隊伍構成不穩定,缺少默契與融合;且開發部門之間很少進行技術上的交流與合作,不利于企業整體技術水平的提高,缺少員工合作的力量,技術上也難有突破。2.2.3與用戶交流不足IT行業競爭十分激烈,軟件企業如果要設計出符合市場要求的高品質的軟件,還需要多與用戶互動,聽取用戶的意見和建議,再由這些專業人才來改善企業的軟件產品。但是中小型軟件企業將企業的生存作為主要工作目標和動力的做法,給企業的發展帶來了一定的影響。雖然生存問題對任何一個企業來說都是十分重要的,但是也因為這樣,中小企業往往忽視了其他方面的發展。由于實力較弱,中小型軟件企業在發展時無法同大企業一樣游刃有余地兼顧各個方面,而是將利益作為最主要目標,忽略與用戶之間的交流,這對企業的長期發展相當不利,因為軟件企業對用戶具有很強的依賴性。
2.3軟件開發技術發展
當下計算機軟件的開發呈現出了網絡化、開放化、智能化和服務化的發展趨勢。隨著網絡在日常生活中的普及和發展,網絡用戶大幅增加,世界各地間的聯系日益密切,這對于軟件企業來說是一個良機。各類軟件企業可以利用互聯網挖掘更多的潛在客戶,在國內市場站穩腳跟,并進軍海外市場。產品市場的擴大能夠推動軟件的開發和軟件開發技術的發展,中小型軟件也在借助這一機會爭取著更多的用戶。在開發過程中,多數企業不再對其軟件開發技術進行嚴格的保密,而是會公開源代碼等相關的技術信息,促成各企業開發人員之間的交流。開發人員可互相學習,完善各自企業的軟件開發技術;中小型軟件企業自主開發軟件的實力較弱,借此良機多加學企業的計算機軟件開發技術,能在很大程度上提升企業的實力水平,為日后企業的自主創新奠定堅實的基礎。人工智能自誕生以來獲得了一定的發展,且被廣泛運用到現實生活中,與人類的社會活動息息相關;人工智能和計算機行業的關系十分密切,是計算機科學的分支,因此深受計算機發展的影響。計算機軟件的開發工作可以促進計算機的進步,因此得以擴展到人工智能的領域,呈現出軟件開發智能化的特點。此外當前的軟件開發有別于傳統的開發模式,以往的開發工作是以軟件企業開發人員的設想與計劃為主導的,與用戶的聯系相對較弱,很大程度上受到了用戶的影響。軟件開發人員在開發軟件前,會對用戶的需求進行一定的了解,甚至會根據用戶提出的明確要求來開展開發工作,致使軟件開發呈現出對用戶依賴性增強、建立在用戶實際需求之上的趨勢。
3解決中小型軟件企業軟件開發中問題的對策
3.1加強對核心技術的研發
3.1.1增強企業創造性中小型軟件企業在獲得比較穩定的發展之后,就要開始考慮獨立地進行軟件的開發,不能長期依賴其他企業的技術。中小型軟件企業的發展整體上比較被動,影響企業發展的因素頗多,企業又沒有能力解決,依賴性太強,容易受到其他企業的牽制,使企業無法提高競爭力,缺少自主品牌;而且產品缺乏新意也容易造成用戶的流失。企業應該改變固有的思維模式,減少跟風開發,通過自行開發其他新軟件培養企業的創造性。當然,因為中小型軟件企業的實力有限,所以不必勉強進行高端產品的開發,可以從低端做起,量力而行;但開發的軟件要切合市場的需求,避免產品開發出來后無消費市場。此外,要嚴格控制產品的質量,因為質量是產品長期吸引顧客的重要因素之一。3.1.2加大技術研發力度軟件開發技術具有開發復雜,使用價值高的特點,如果中小型軟件企業要在技術上有所成就,就應該在企業生存問題的到保障的情況下合理增加研發軟件開發技術的投資,這個投資不止是時間、金錢和精力上的投資,還有人才上的引進。中小型企業還應把握住各企業間技術交流的契機,認真學習并積累經驗,提升企業整體水平,在此基礎上進行企業獨立的技術研發,使企業的發展擁有技術上的保證,減輕企業的依賴性。
3.2加強開發隊伍建設
中小型軟件企業缺乏專業的軟件開發隊伍,因此有必要在企業所能承擔的范圍內盡可能地吸納人才,并給這些專業人才合理的待遇,避免人才流失;運用專業管理人才加強對企業的管理,明確員工的職責,適當為員工提供培訓機會;促進企業各部門間的磨合,加強技術上的交流與合作,培養團隊意識,增強公司內部的凝聚力,建立一支強有力的、結構穩定的軟件開發隊伍。
3.3加強與用戶間的互動
積極與用戶交流,企業可申請公眾號,或在官網上設置與用戶對話的版塊,安排專門工作人員通過這些方式與用戶互動,也可采取問卷調查等調查方法,主動的和用戶構建聯系,吸取更多意見和建議,為軟件的開發和改進提供依據。
4結語
關鍵詞:軟件 系統 設計 安全檢測 維護 需求
隨著計算機和軟件技術的發展,各種計算機軟件在各行各業中得到了普遍的利用,已經成為人們生活和工作中不可或缺的重要部分。而計算機的軟件安全問題也越來越嚴重地影響著計算機的安全性,因此,計算機軟件的安全檢測技術就彰顯得特別重要。
1 軟件安全檢測技術和維護概述
計算機軟件安全檢測是計算機軟件開發過程中的一個重要環節,它的目的是為了發現軟件所存在的故障和安全漏洞,從而及時地對計算機軟件的潛在安全問題進行更改。當前的計算機軟件安全檢測技術主要包括動態檢測和靜態檢測兩種方法。計算機軟件安全檢測是確定計算機軟件的安全性是否達到軟件預期設計目標的一個過程,一般包括功能測試、滲透測試與驗證過程三個階段。包括安全功能與安全漏洞兩個方面的檢測,軟件安全功能涉及的方面比較多,包括機密性、授權、訪問控制以及安全管理等;而計算機軟件安全漏洞檢測則是對軟件可能存在的缺陷的檢測。
軟件定義、軟件開發和運行維護是構成軟件生命周期的三個時期。使軟件能夠持久地滿足用戶的需求是運行維護時期的主要任務,具體而言,應當改正軟件在使用過程中發現的錯誤,當環境發生改變時應當及時修改軟件以適應新的環境;當用戶有了新的要求時應當及時改進軟件以滿足用戶新的需求。
2 計算機軟件安全檢測技術的方法
2.1 計算機軟件安全檢測的流程 一般情況下,計算機軟件的安全檢測一般按照以下的步驟進行:首先為了發現系統中各模塊中可能存在的問題,要對軟件設計中最小的單位即模塊進行測試,然后是對由模塊按照程序設計的要求組裝的系統進行檢測,并對于其相關的體系機構進行檢測。其次是在前兩個檢測的基礎上進行軟件的有效性檢測,為了檢測其是否與所設計用戶的需求相符,要對軟件的功能和性能進行檢測。最后進行的是系統的檢測,測試軟件在整體的環境下的運行安全情況。
2.2 當前計算機軟件安全檢測的主要方法 一是形式化的安全檢測。形式化的安全檢測是確立軟件的數學模型,在通過形式規格的語言的支持提供形式化的規格說明。形式化的安全檢測有模型檢測和定量證明兩種形式的安全檢測方法。二是基于模型的靜態安全檢測。模型安全檢測,既是通過軟件行為與結構建模的方式,形成一個測試的模型,此模型同時可滿足計算機對其的可讀性。比較常用的模型安全檢測方法包括有線狀態機檢測和馬爾科夫鏈的檢測。三是語法檢測。語法檢測技術主要是測試軟件在不同輸入條件下產生的不同反應。四是基于故障注入的軟件安全檢測。故障注入的安全檢測是應用故障分析樹與故障數的最小割集來檢測的。五是模糊測試和基于屬性的測試。基于白盒的模糊測試較傳統的模糊測試技術有很大進步,白盒模糊檢測方法有效地結合了傳統的模糊測試技術和動態測試用例檢測技術的優點。六是混合檢測技術。能有效地改善靜態技術和動態技術檢測存在的一些缺陷,從而更好地對計算機軟件的安全進行檢測。七是基于Web服務的檢測技術。它是一種基于識別內容的分布式Web服務器技術。具有語言中立、互動操作性強等優點,能夠將復雜的安全檢測分解為子安全類型進行處理,以使其可以更有效地應對復雜的安全檢測的需要。
3 提高軟件的可維護性方法
3.1 建立明確的軟件質量目標 如果要一個可維護性的程序滿足可理解的、可靠的、可測試的、可修改的、可移植的、效率高的和可使用的7個全部的要求,要付出很大的代價,甚至是不顯示的。但是可理解性和可測試性以及可理解性和可修改性是相互促進的,而效率和可移植性以及效率和可修改性是相互抵觸的。因此,要明確軟件所追求的質量目標。
3.2 使用先進的軟件開發技術和工具 利用先進的軟件開發技術能夠大大提高軟件質量和減少軟件費用,并且穩定性好,容易修改、容易理解,易于測試和調試,因此可維護性好。
3.3 建立明確的質量保證 最有效的方法就是質量保證檢查,在軟件開發的各個階段以及軟件維護中得到了廣泛的應用。
4 總結
綜上所述,軟件維護是一項綜合性很強的工作,隨著軟件規模和復雜度的日益提高,使軟件維護成為軟件生存周期中費用最高、難度最大的一個階段。因此,良好的軟件可維護性可以降低維護成本,延長軟件生命周期。
參考文獻:
[1]丁劍潔.基于度量的軟件維護過程管理的研究[D].西北大學,2006.
[2]于士文.敏捷軟件開發方法在軟件維護中的應用研宛[D].湖南大學,2006.
[3]陳小輝,鄧杰英,文佳.淺談軟件的可維護性設計[J].華南金融電腦,2009(3).
[4]房鼎益,安娜,魏東.一個基于SOA的大型分布式計算機輔助辦公系統[J].計算機應用與軟件,2005,22(10):11-12.
相比傳統的軟件開發方法,面向對象的軟件開發方法(OMT)實現了質的飛躍,采用了一種自底向上的歸納、自頂向下的分解方法,通過對對象建模的建立,徹底解決了軟件開發在需求分析、可維護性以及可靠性三大環節上的問題,同時也大大提高和改善了系統的可維護性。可見,面向對象的軟件開發方法,作為一種歸納和演繹思想的綜合體現,其對軟件設計、軟件開發所起的促進作用是毋庸置疑的。
一、傳統軟件開發方法存在的問題
(一)軟件復用性差
在軟件開發工程所追求的目標當中,軟件復用性是重點之一,同時也是節約人力和提升軟件生產率的重要渠道。雖然近年來軟件當中的結構化分析、結構化設計和結構化程序開發給軟件產業帶來了巨大的進步,但是還不足以從根源上解決軟件重復使用的問題。
(二)軟件可維護性差
傳統的軟件開發方法過于側重一致、完整的文件合成最終的產品,以致在整個開發過程中,軟件的可測試性、可讀性和可修改性成了衡量一個軟件產品優劣的重要標準。事實上,在軟件的實際應用中,我們可以發現這類產品的維護性差,且所消耗的成本相當高。
(三)開發出的軟件不能滿足用戶需要
傳統的結構化方法所涉及的知識領域比較廣泛,以致使用它開發大型軟件時,一旦遇到系統需求模糊或者系統發生動態變化,就會影響開發效率,導致最終開發出來的軟件脫離用戶實際需求。
(四)軟件質量難以保證
傳統的軟件開發方法所開發出來的復雜型大型軟件,或者是需求模糊的系統,絕大多數都是難以成功投入市場使用的。歸其原因,主要有以下兩大因素:第一,軟件開發人員對用戶的實際需求理解不夠透徹,以致最后開發出來的軟件和用戶的期待不相符;第二,所開發出來的軟件靈活性低,無法適應用戶需求的經常性變化,再加上部分用戶有時會在軟件的一些使用性能方面提出部分要求,倘若系統的設計和開發是基于過程中,那么軟件系統的可擴充性和穩定性就會無法適應變化,而這種變化也會對軟件系統自身的機構造成影響,設計、開發的成本也會隨之提高。
二、面向對象的軟件開發方法
現階段,面向對象的軟件開發方法的研究已經日趨成熟,市場上也不斷有新產品涌現。面向對象的軟件開發方法有Coad方法、Booch方法和OMT方法等。
(一)Booch方法
Booch方法的最突出特點就是它能夠反映出系統的各個方面是如何相互聯系和作用的。在一系列的面向對象的軟件開發方法中,Booch方法是最早描述當中的基礎問題的,其首先提出面向對象是區別于傳統軟件開發的一種方法。Booch方法認為面向對象的軟件分解更接近人們對客觀事物的認知,它并沒有對各個開發階段進行明確的周期劃分,把主要的工作都集中在軟件設計階段。
(二)Coad方法
Coad方法是通過多年來大型系統開發的經驗與面向對象概念的有機結合,該方法在對象、結構、屬性和操作的認定方面,提出了一套系統化的原則,并完成了從客戶需求角度進一步進行類和類層次結構的認定。Coad方法把軟件系統的開發劃分為分析和設計兩個階段,雖然說Coad方法沒有引入類和類層次結構的術語,但事實上它已經在分類結構、消息關聯等概念中呈現了類和類層次結構的特征。從某種程度上來說,Coad方法的概念雖然簡單易懂,但是它對各個面向對象和行為的描述不夠全面,對象模型的語言表達能力也不突出。
(三)OMT方法
OMT方法是一種跟隨OOP向OOD和OOA發展而形成的面向對象的軟件開發方法,它的方法涵蓋了軟件分析、軟件設計以及軟件實現三大步驟,貫穿于軟件開發的全程。OMT還建立了對象模型、動態模型和功能模型三個模型,這三個模型在一定程度上完善了軟件,使軟件開發更加清晰,也更易于維護。可以說,作為一種以真實世界為對象建模而進行的獨立語言設計,OMT方法徹底實現了傳統軟件開發方法沒有完全實現的目標,為絕大多數領域的應用軟件提供了一種實際的、高效的、可操作的保證。
(四)UML語言
UML語言是一種建模語言,它是軟件工程領域的重要成果之一,在未來,UML語言將會成為面向對象技術領域內的標準建模語言。UML不僅結合了Booch方法、OMT方法、OOSE方法的優勢,而且還對其做了進一步的發展,汲取了面向對象技術領域中的其他流派優秀的開發思想,融入了軟件工程領域的新思想、新方法、新技術。總而言之,UML是一種通用的標準建模語言,適用于以面向對象技術為基礎的任何類型的軟件系統,而且還能夠在系統開發的不同階段使用,從需求規格描述直至系統完成后的測試和維護。
綜上所述,由于面向對象的軟件開發方法所具備的諸多優點,相信面向對象的軟件開發方法在未來會有更廣闊的前景。可見,開展面向對象的軟件開發方法的研究工作,也有著十分重要的現實意義。
1 計算機軟件設計的現狀
1.1 計算機軟件的分類。計算機軟件技術主要是對軟件進行操作的一項技術。主要研究內容分為兩個方面:一是怎樣優化相應支撐體系;二是對相應的方法手段進行開發探索。計算機軟件系統是可運營的一種系統,已經形成了層次分明的模型體系,主要可以分為以下三類:應用軟件;支撐軟件;系統軟件。
1.2 計算機軟件技術的規劃。在當代,各個國家對計算機軟件的設計都特別重視。很多國家投入大量的人力物力,并出臺一系列軟件設計政策進行鼓勵計算機軟件的設計開發。大部分國家主要將開發重點放在計算機軟件開發方法上,我國對發展軟件業給予了重視,被行業在信息產業綱要里放在了最重要的位置,可見,國家對計算機軟件的設計與研發的重視。
1.3 計算機系統軟件的研發現狀。計算機系統軟件是更具硬件特征的軟件系統,計算機系統軟件分為不同的種類,以后分別具體分析各種不同種類的系統軟件現狀。
1.3.1 操作系統的研發現狀。計算機靠操作系統發揮基本功能,對計算機最為重要。操作系統不僅管理各種硬件,如顯示器、打印機等等;同時,也起到對軟件的運營進行統籌管理的功能,對軟件的運營系統進行操作;可以作為支撐軟件支撐相應應用軟件,使人機界面更加的先進。操作系統也對用戶能夠開發應用系統提供保障,是一種基礎設施。近年來,計算機網絡技術在不斷發展,未來的操作系統會朝著更加智能化,網絡化等方向發展。
1.3.2 商業操作系統研開現狀。操作系統嵌入技術是一種新興的技術。嵌入技術是把計算機軟件與硬件與機電設備進行結合,作為一個新的系統,使得這個新的系統具有很多原來的設備所不具有的優點。嵌入技術在各個領域得到廣泛應用。現在,嵌入系統已經產生很多產品并且投入運用,取得了良好的成果。以后,也會越來越引起廠商對這一領域進行投資,促進這個領域的發展。
1.3.3 數據庫操作系統研發現狀。(1)網絡化。數據庫系統的重要組成部分是可以支持網絡型的,是數據庫系統的支柱。對數據庫系統研發被各數據庫公司以及學術界放在首要位置,作為發展的中心。比如,被微軟公司作為公司某項重要計劃核心部分的就是SQL Server;(2)數據庫系統的安全及相應技術。在現代計算機系統中計算機處于核心地位,人們把注意力越來越多的放在數據庫的安全上。當前世界上多數國家都出臺了一些數據庫系統的安全規定。其中,美國制定的兩個規則起到主導作用,分別是《可信計算機系統的評估標準》與《可信計算機系統的評估標準》標準;(3)嵌入式技術。嵌入式技術已經被國內外專家們當作重點進行研究與開發,取得了很大的進展。已經應用在各個領域。這一技術涉及了很多其他的數據庫領域,比如移動通信技術、分布式計算技術等領域;(4)軟件工程環境研發現狀。這項技術主要側重怎樣合理安排方法、工具、技術。這個概念從推出到現在已經延續了40多年之久。軟件工程環境是在一起的軟件構件,實現工作活動的自動化支持。從剛開始的整體的研發到后來的逐步分散化。上世紀九十年代,CASE工具得到廣泛應用,發展成CASE工具集成。
2 計算機軟件設計與實現當遵循的原則
2.1 準確抓住用戶的需求。由于用戶對軟件的要求各不相同,軟件的設計時為了滿足用戶的需求,因此,計算機軟件的設計要在和客戶不斷溝通交流及對行業領域進行研究獲取用戶的需求,才能真正確定軟件設計的方向,更加適應于用戶和市場要求。
2.2 應當不斷重構。計算機軟件設計不是一個一步到位的過程,而是循序漸進。設計者對計算機軟件的設計是一個不斷改進、不斷完善的過程,不應該擔心軟件設計之初有哪些不足,而是應當不斷重構,最終使產品達到完美。在真正知道客戶的需求之后,應當先進行方案的設計,先進行初級設計,然后在不斷完善,逐漸滿足客戶的所有需求。而不是先設計出一個完美的方案,然后進行修改,這個方案比較急于求成,設計出來的軟件優化空間很小。新加功能與對軟件的改善應當輪流進行,增加新功能的時候,充分保證現有代碼的正確性,同時對代碼進行適當的修改,從而使所有的新功能測試都能通過。而對設計進行改善時,應當保證用現有的測試用例能驗證修改的正確性。
2.3 應當始終面向代碼。所有的軟件設計在編寫代碼之前都是一個想法,是沒有現實意義的空想,編寫代碼是軟件設計最有價值的部分,也是將空想變成真實的一種手段。很多完美的想法方案由于代碼的不完全實現導致沒能達到預期效果。所以,在軟件設計的過程中必須將代碼的編寫放在首要位置,將好的構思,馬上用代碼表現出來,并且進行對代碼的準確性與系統相容性進行檢測。
3 計算機軟件設計的方法
計算機軟件是按照特定的規格進行設計的,根據一些條件,主要有結構化程序設計、面向對象的程序設計、由頂至下設計法這三種軟件設計方法。
3.1 結構化程序設計。在計算機軟件設計中,具有良好結構的程序,在編碼、檢測和維護中都比較省力。它的主要流程是先了解用戶的需求,以此為軟件設計的切入點,根據實際功能將系統分成一些子系統,再根據實現的功能把子系統分割成模塊,針對模塊布置各個模塊的具體要求與說明,明確各個模塊是按怎樣的方法實現和程序中的其他部分對接。
3.2 面向對象的程序設計。面向對象就是由實例入手,找到實際問題系統里面存在的實體,分析試題的屬性、特征等,以此構成各對象類間的結構層次,最后構建出完整的軟件系統。主要有封裝性、繼承性、多態性三個特點。
封裝性主要針對數據并且對數據的操作實現一體化;繼承性主要針對某類繼承它所屬代碼的屬性及操作;多態性則是類等級中各層共享同一函數的名字。
3.3 由頂至下設計法。此方法處理分層問題最有效,將整個系統功能的最抽象表述作為最高層次,從這個層次出發設計子系統,然后依靠這些子系統實現較高層次的系統功能,再以子系統作為基礎是基礎更詳盡的子系統。這個方法可以分清各種復雜的處理層次,并且多個要素間關系清晰。