這對以後系統的維護和升級是壹個很好的參考。
當開發壹個系統時,它應該包含什麽文檔?這些文件壹般是如何完成的,應該包含哪些內容?這就是系統開發的標準化。
系統開發的規範化不僅對自己有利,對公司和新手也有好處。
標準化設計讓工程師工作效率更高,這是無可爭議的。
現在在大型軟件工程的開發中,這壹點已經做得相當不錯了。
但是在單片機和嵌入式系統的開發中,標準化工作需要和我們壹起探討。
在國內,壹些公司的R&D人員也是誤導——趕緊寫代碼,讓我快點看到功能,也不要求妳做別的,把功能寫完就行了。
這些都讓我們的設計陷入了壹個誤區:我們大部分時間都在寫代碼,改代碼。
隨著嵌入式實時系統的日益復雜,設計工程師在定義和分析系統的初始需求時,必須認真考慮軟硬件之間的協作關系。
通常,設計工程師還必須權衡系統的靈活性、速度、成本、計劃和可用工具之間的關系。
本文旨在描述嵌入式系統和實時系統的關鍵特征,並討論在選擇或開發硬件和軟件組件的基礎上開發高效嵌入式系統的解決方案,同時詳細說明開發嵌入式系統和實時系統所特有的關鍵技術。
我知道realtime-uml的設計軟件:TNI嵌入,Rational:Rosertilogix::Artisan:Tau。
TNI的嵌入式全流程解決方案涵蓋了嵌入式控制軟件設計的全過程:從用戶需求、規格、設計、代碼生成、仿真驗證到驗收。
在設計的初始階段,使用可執行的(正式的)和可視化的規格說明與用戶溝通,消除設計者和用戶之間的歧義。
通過仿真來檢查和測試設計,在整個設計過程中壹步壹步地檢查設計。在設備安裝前發現大量可能的設計錯誤和問題,大大縮短了現場調試的時間,支持功能設計,圖形化使用IEC61131-3語言,符合EN50128安全標準,自動生成設計文檔,簡單易用。快速建模自動生成C代ROSE,用於各種軟硬件平臺進行分析和設計。RoseRT是在收購objecttime之後由Rational引入的。這個工具主要基於壹個叫ROOM的模型,而且都是可執行的。
我沒有好壞之分。
(ilogix的道老師不太認同ROOM) RoseRT的界面感覺比較復雜,代碼生成還可以,但是效率沒法評價。
只提供系統的動態和靜態模型文檔。
Rhapsody目前國外很多大公司使用Rhapsody進行嵌入式系統建模和軟件設計。
Rhapsody是壹個模型驅動的開發環境,它基於UML2
0,使不同規模的項目可以通過可視化建模來分析、設計、實現和測試自己的工作,構建和配置實時嵌入式應用。
Rhapsody是專門針對嵌入式市場的特殊需求而設計和優化的,包括實時系統的行為語義、實時操作系統的支持、無操作系統的實時應用的支持、遺留代碼的逆向工程、設計級調試、高效的自動代碼生成(C、C、Ada、Java)和自動文檔生成等。
壹個非常好的工具,可以直接把UML圖轉換成C或者C代碼。
但也會在系統中引入壹個程序框架,支持序列圖和狀態圖的運行、調試和仿真。
它帶來的好處是顯而易見的,但同時也對很多嵌入式應用形成了阻力。
例如,如果您的新功能是修補原有的現有過程化軟件包,那麽新框架如何與原有系統相適應?然後妳要真正消化吸收這個額外的框架,這個難度應該不亞於探索MFC結構。
Rhapsody非常適合壹個全新的項目。
擴展功能打補丁的項目要三思。
不知道RoseReal-Time在這方面表現如何?Rhapsody有很多圖,設計師直接通過畫圖來codegeneration高質量的代碼,非常有趣。
Rhapsody真正區分了開發者和設計師,要求設計師完全按照軟件工程思想來實現,這對於項目來說無疑是壹個很好的維護。有N個以上的適配器,便於移植。
壹般來說,對於開發上層應用的項目,