吳文慶,修雅慧
(1.蘇州市職業大學 計算機工程學院,江蘇,蘇州 215104;2.齊齊哈爾醫學院,黑龍江 齊齊哈爾 161006)
在現代化生產管理工作中,計算機軟件的應用無處不在,通過實現信息自動化管理,可以有效提升生產效率和辦公效率。因此,計算機軟件開發已經成為熱門產業,自發學習計算機軟件開發技術的人越來越多。隨著軟件開發技術的不斷進步,不僅開發語言和環境發生了較大變化,設計理念也出現了本質性改變。在先進的模塊化設計理念下,通過采用嵌入式軟件,能夠有效提高軟件開發效率。因此,有必要對嵌入式軟件的具體應用進行探討,為計算機軟件開發提供借鑒。
計算機由軟件和硬件兩大部分組成,兩者相輔相成,共同實現計算機的各項功能。在同等的硬件條件下,軟件的先進性將直接決定計算機應用效率和便捷性。在軟件開發過程中,要綜合考慮客戶對軟件應用的性能要求和功能要求,通過采取科學的軟件開發技術,實現設計目標。隨著軟件開發技術的快速發展,開發環境和開發語言已經出現較大變化。[1]
目前,在軟件開發過程中應用較多的編程語言包括C語言、Java語言等。其中,C語言是最早的軟件編程語言之一,應用非常廣泛,而且技術不斷成熟,不僅能夠應用于多種系統環境下的編程,還具有語言簡潔、邏輯清晰、編譯快捷等特點。Java語言是隨著Web程序開發快速發展起來的新型編程語言,具有跨平臺應用特征,安全性和通用性較高。Java語言繼承了C++的核心技術,而且增加了垃圾回收器等新功能,資源占用更加合理,是一種優秀的面向對象編程語言。[2]
此外,軟件開發環境也發生了較大變化,包括嵌入式軟件在內的專業編程軟件在計算機軟件開發過程中得到了應用,極大地提升了軟件開發效率。
計算機軟件開發是一項系統性工作,目前已形成一套系統化的開發流程,使軟件開發管理更加科學,更容易實現客戶提出的各種需求。從計算機軟件開發過程來看,主要包含以下幾個重點環節:
對軟件開發過程進行分析,定義開發軟件,探討軟件開發的可行性,撰寫開發工作計劃和報告書,確定軟件開發的總體方向,并明確每個階段過程要完成的任務。
通過與客戶進行溝通交流,確定軟件開發的個性化需求,并對客戶的使用需求進行清晰描述,撰寫需求分析報告,與客戶達成共識,共同確認軟件開發的預期成果。
完成上述軟件開發準備工作后,根據軟件開發計劃書和需求分析報告,對軟件架構進行總體設計,綜合考慮系統功能性需求和性能需求,并進行詳細方案設計,確定軟件各組分的設計內容,同時明確各組分之間的拼接方式。
完成總體方案設計和詳細設計后,由軟件工程師完成具體程序代碼的編寫過程,在此過程中,開發人員要合理選擇編碼模型和程序,完成各組分的編碼工作后,對軟件進行拼接,逐步完成所有程序編碼任務。
完成軟件程序代碼編寫后,對軟件程序進行測試,主要分為兩部分內容,一是內部測試,二是開發性測試。在編程完成后,首先由軟件開發人員對軟件進行專業的內部測試。然后由專門的程序測試人員或使用者,對軟件進行試用性測試,找到軟件程序存在的問題,并對其進行調試,確保軟件各項功能的正常發揮。
在軟件投入使用后,需要對它進行維護管理,并在需要時進行版本升級,以滿足客戶業務擴展等方面的需求。[3]總體開發流程如圖1所示。

圖1 計算機軟件基本開發流程
通過逐步完成上述各個環節的軟件開發任務,可以實現軟件開發目標,最大限度地滿足客戶需求。但在實際開發過程中,受人員、技術、開發環境等方面的影響,開發效率有高有低,軟件調試工作量和最終的軟件開發質量也參差不齊。只有不斷更新軟件開發理念,采用先進的軟件開發技術,才能不斷提高軟件開發效率,為軟件開發質量提供保障,減少后期調試、維護的工作量。[4]
嵌入式軟件具體是指嵌入在硬件中的軟件開發工具,其產業鏈主要包括芯片設計制造、嵌入式系統開發、嵌入式電子設備的開發和制造。其中,嵌入式系統是能夠獨立執行某項功能操作的專用計算機,具體包括微處理器、微控制器、定時器和傳感器等。[5]早期嵌入式系統開發采用硬件優先原則,在估計軟件任務需求后,先完成硬件的設計與實現,再利用硬件平臺完成軟件開發設計。但這種設計方式難以充分利用硬件資源,出現設計變更時,還需要重新設計整個流程。隨著嵌入式技術的不斷成熟,目前主要采用軟硬件協同設計理念,最大限度地提高軟硬件能力,得到優化設計方案。[6]
嵌入式軟件是嵌入式系統的重要組成部分,其本質也屬于一種計算機軟件,包括系統型軟件、支撐型軟件和應用型軟件三大類。目前,嵌入式軟件已經被廣泛應用于國防、工業、商業、醫療、通信產業等重要領域。[7]其中,被應用于計算機軟件開發的主要是指嵌入式支撐軟件,此類軟件包含數據庫和各種開發工具,尤其提供的EMDBS數據庫可以作為某種特定計算的數據庫管理系統,可運行在計算機和各種移動智能設備上。利用嵌入式軟件為計算機軟件開發提供支持,可以提高軟件開發過程的資源整合能力和系統開發效率。[8]嵌入式軟件開發如圖2所示。

圖2 嵌入式軟件開發示意圖
基于嵌入式軟件的計算機軟件開發流程和上述介紹的軟件開發流程基本一致,總體可分為需求分析、總體結構設計、詳細設計、程序編碼和程序測試等環節。在項目立項階段,根據市場信息反饋,編寫項目建議書,在對它進行可行性分析后,簽發項目任務書,成立項目小組。在項目總體規劃階段,進行軟件需求分析,并進行需求分析評審,編制項目計劃書和風險控制計劃書,確定軟件開發里程規劃。在系統設計階段,根據需求分析和系統評審結果,編制結構設計過程文檔和軟硬件設計過程文檔。完成總體和詳細設計后,開始進行程序編碼,然后依次開展后續的測試和調試工作。
需要著重強調的是系統需求分析的準確性,設計人員應與客戶做好溝通,全面了解客戶需求,確定設計內容,并嚴格按照要求編寫各類需求文檔,對客戶需求進行清晰描述,包括系統的輸入輸出功能、運行速度、軟件大小、功耗等性能需求。在嵌入式軟件的應用過程中,會根據軟件開發中的具體過程,選擇使用不同的開發工具,提升軟件開發效率。比如,在軟件開發的需求分析階段,可以選擇Rational Rose等軟件,確保需求分析的全面性。在軟件編程和實現階段,則可以使用Code Warrior軟件,利用其提供的代碼組件,加快編程效率和代碼重復利用率。在系統調試階段,則可以使用Multi-ICE軟件,確保系統測試的全面性,及時發現程序漏洞,并進行有效改進。
3.3.1 明確應用原理
在計算機軟件開發過程中,嵌入式軟件主要應用在CORBA模型實現方面,具體分為兩個部分:一是實時處理技術的融入,二是在編程過程中應用CORBA模型。在程序軟件的開發工作中,還可以充分利用嵌入式軟件提供的其他設計服務。利用嵌入式軟件進行程序開發設計,首先應對軟件結構進行系統性劃分,為滿足軟件開發的實時性要求,在設計和編程過程中,要明確各結構職責,避免出現系統脫離現象。此外,還要通過設計和編程,實現結構程序間的功能,為命令執行安排好位置,確定各部分程序的優先性,合理安排運行方式。通過利用嵌入式軟件,提升系統的整體運行效率。在軟件控制方面,要避免嵌入式系統的應用造成時間變差,在進行程序設計和編碼時,應做好時間管理,確保系統運行的安全性和可靠性。
3.3.2 掌握設計要點
應用嵌入式軟件的軟件開發設計要點主要體現在兩個方面:(1)在軟件程序的總體結構設計方面,開發人員應更加注重軟硬件系統的相互結合,實現軟硬件系統的系統設計,這樣可以降低軟件程序對于硬件系統的依賴,提高軟件設計的實時性和運行可靠性;(2)可以利用嵌入式軟件完成數據的初始化和格式化操作,設計和開發人員不需要對硬件資源設備進行直接控制,能夠提升整體設計開發的工作效率,同時減少設計漏洞。設計人員應在詳細了解嵌入式軟件開發功能的基礎上,更新設計理念和操作方式。
3.3.3 發揮技術優勢
嵌入式軟件在計算機軟件開發過程中的應用具有多方面的技術優勢,其中較為突出的優勢包括非交叉調試方式等。利用嵌入式軟件提供的仿真開發功能,可以解決以往交叉調試開發過程中存在的缺陷,綜合考慮軟件開發經費、目標機環境、硬件芯片資源等問題,合理安排軟件開發進程,避免因這些問題影響開發效率。此外,嵌入式軟件還具有成本低、性能強、可靠性高等諸多優勢,即使發生突然斷電,也不會造成重要數據和程序丟失。而且嵌入式軟件的集成化程度高,運行功耗較低,可以在計算機軟件開發的全生命周期內為軟件開發提供有力支持。
總而言之,利用嵌入式軟件進行計算機軟件開發是目前較為先進的軟件開發技術之一,具有良好的應用前景,在軟件開發過程中,應充分發揮嵌入式軟件的各方面優勢。
綜上所述,嵌入式軟件在軟件設計開發過程中的應用通過融入實時處理技術、利用軟件提供的組件,可以明顯提高軟件開發效率。基于嵌入式軟件的軟件開發過程系統化程度更高,可以實現對資源的有效整合,并提高軟件的運行合理性。因此,應推廣嵌入式軟件在計算機軟件開發過程中的應用,促進軟件開發水平的整體提升。