LabVIEW大型應用程序開發
LabVIEW是否適合大型應用程序的開發?一直是廣大LabVIEW開好者所關心的問題之一。經過不斷發展,目前LabVIEW已經有了一整套大型應用程序 開發的模式(架構)。
LabVIEW大型應用程序的軟件開發流程
(北京瀚文網星科技有限責任公司)開發一個大型、復雜的LabVIEW應用程序,通常是不可能由一個工程師單獨來完成。大多數大型應用程序的開發,會有眾多工程師在一起協同工作。所以,制定一個有效的工 作流程或工作框架對大型項目的開發將會有很大的幫助。
下面是NI給出的適合LabVIEW大型應用程序開發的基本流程。
圖 LabVIEW大型應用程序開發的基本流程
這個流程包括:收集需求、項目架構、開發、驗證、發布共五個部分,該流程已經被證明是很有效的。它提高了軟件工程質量、降低了開發風險、節省了開發時間。下面就對這五個 部分進行簡單的介紹。
收集需求
收集用戶需求是LabVIEW應用程序設計中的*個環節,也是zui重要的一個環節。通過縝密的需求收集來確定用戶要“做些什么”。只有全面、完整的領會到用戶的真正需求 ,才能確保設計者能夠做到應該“如何去做”。
對于LabVIEW的大型應用程序設計、開發,決不等同于其它語言的應用程序開發(那些開發有些純軟件開發的意味)。相對于大多數的LabVIEW應用程序開發而言,它 即包含軟件的設計、開發;同時,它也包含所涉及使用硬件的合理選擇和正確確定。確切的講,應該是系統級的大型應用項目的設計、開發。所以,收集項目的需求就顯得尤為重要, 且不可小視。
專業化的需求管理軟件(NI Requirements Gateway)
NI提供了專業化的需求管理軟件(NI Requirements Gateway)。借助于該需求管理軟件可以將開發和驗證文檔與保存在文檔和數據庫中的正式需求相連接,是滿足需求追蹤的解決方案。借助于該軟件,還可以與文檔要求 相關的應用程序、測試和仿真模塊。在區分這種相關性時,NI需求管理軟件提供了捕獲追蹤信息,并為檢查和分析覆蓋、沖突信息提供了一個接口。??
NI需求管理軟件可與NI LabVIEW、用于ANSI C開發的NI LabWindows™/CVI、NI TestStand測試管理軟件、MATRIXx設計和開發工具以及一些需求管理和存檔常用工具配合運行,例如,elogic DOORS、IBM Rational RequisitePro和Microsoft Word等。
它與其它軟件和工具軟件的關系圖,參見下圖。
圖NI Requirements Gateway與其它軟件和工具軟件間的關系
當然,對于我們這樣的中小型系統集成者,可能無法使用這樣專業的工具軟件包(畢竟NI Requirements Gateway是需要付費的 )。即便如此,也應該組織、建立完善的“項目需求文檔”來指導、監督設計者的工作進度和工作質量。
“項目需求文檔”應當作到一應巨細,甚至可以細化到諸如:用戶使用的操作系統(未來升級的可能性)、屏幕顯示器的大小(像素)、生成報告的形式(Word)等等。
如果已經清楚了用戶的需求,下一步就要落實應用程序的基本架構。
組織應用程序基本架構
通過前面章節的介紹,選擇應用程序基本架構應該不是很困難。在設計模式中,大家已經了解許多基本的設計模式,包括如何創建應用項目。
確定應用程序架構的zui基本原則就是:能夠以程序代碼的形式實現用戶的全部需求。對于大型應用項目,架構應能夠確保以團隊的形式共同設計開發該項目。這點是非常重要的。
幸好LabVIEW程序(VI)本身就具有豐富的層次結構,這樣就可以將項目分解為多個子項目并由不同的設計者來開發完成。
項目的基本結構可以是:
圖 項目的基本架構
在大型項目的開發中,狀態圖工具包應該是*的。使用它可以實現靈活的設計和修改項目。
當然,如果具備面向對象的基本知識和能力,還可以選擇LabVIEW中面向對象的設計模式,這種模式更適合大型應用項目的開發。
無論采用什么樣式的應用程序架構,更重要的是開發過程的管理。其中包括源代碼的管理和文檔的管理。
應用程序開發和管理
這里再次強調:大型應用項目的開發過程的源代碼管理和項目文檔的管理是極為重要的、不可忽視的。
試想一下,眾多的各自為戰將會發生什么樣的情況?所以有效的源代碼管理和文檔管理能夠確保項目的有序進行。
比較適合LabVIEW源碼管理的工具包就是來自JKI(OpenG)的工具軟件TortoiseSVN for LabVIEW™。它基本上具備了TortoiseSVN源碼控制軟件的基本功能。JKI提供了兩種形式的軟件包,免費軟件包和付費軟件包。
如果你下載安裝了該工具包,就會在LabVIEW開發環境中的“工具欄”選項中看到一個TortoiseSVN子菜單,參見下圖。
圖 1 常見的TortoiseSVN的操作
它允許用戶LabVIEW環境中執行常見的TortoiseSVN的操作。關于TortoiseSVN的資訊參見下面的附件中的文檔。
關于如何在LabVIEW開發環境中使用JKI TortoiseSVN工具,敬請參考下面的鏈接。
鏈接
文檔的管理可以在LabVIEW項目中實現。
應用程序開發代碼檢查
完成的程序代碼,除了相互間的檢驗核查外,還可以選擇使用現有的VI分析工具軟件。NI提供了三個代碼分析工具軟件包。
NI LabVIEW VI分析儀工具包(LabVIEW VI Analyzer Toolkit)
VI分析儀工具包可幫助LabVIEW開發的圖形化代碼,提高質量和可讀性。經配置的60余項測試,能夠對應用程序中的所有VI進行自動化代碼復查和靜態代碼分析。
圖 1 VI分析結果
LabVIEW桌面執行跟蹤工具包(NI LabVIEW Desktop Execution Trace Toolkit)
LabVIEW桌面執行跟蹤工具包,通過提供VI和可執行程序在運行時的底層執行細節,可進行LabVIEW應用程序的調試與故障排除。用戶能夠監控代碼并輕松找出問題 起因(如:參考泄漏、內存泄漏、未處理的錯誤,以及其它可能對應用的性能與可靠性造成負面影響的問題)。
圖 2 桌面執行跟蹤工具包右擊’我的電腦'并選擇'跟蹤執行
NI LabVIEW單元測試架構工具包(LabVIEW Unit Test Framework Toolkit)
LabVIEW單元測試架構工具包,可自動對LabVIEW中開發的軟件單元(VI)進行基于需求的測試與驗證;為此,該工具包啟用了軟件功能測試和回歸測試。內含的報 告功能可自動生成驗證文檔,并以文檔形式證明:應用程序是否與參數規定的要求與行為一致。
圖3 在項目瀏覽器中自動完成對VI的測試
NI還提供一些用于實時系統代碼分析的工具包,比如:NI實時(Real-Time)執行跟蹤工具包,這里就不談了。
項目發布
完成的項目可以有多種形式發布給zui終用戶。
可執行文件(exe)
安裝包(Installer)
共享庫(DLL)
源碼
壓縮文件(Zip)
免責聲明
- 凡本網注明"來源:智能制造網"的所有作品,版權均屬于智能制造網,轉載請必須注明智能制造網,http://www.xksjj.com。違反者本網將追究相關法律責任。
- 企業發布的公司新聞、技術文章、資料下載等內容,如涉及侵權、違規遭投訴的,一律由發布企業自行承擔責任,本網有權刪除內容并追溯責任。
- 本網轉載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品來源,并自負版權等法律責任。
- 如涉及作品內容、版權等問題,請在作品發表之日起一周內與本網聯系,否則視為放棄相關權利。
2025成都國際無人系統(機)技術及設備展覽會
展會城市:成都市展會時間:2025-10-10