Misoo

MISOO教室課程

目錄‎ > ‎

UML&MDA + 嵌入式課程

 
 
        UML/MDA架構設計

      應用於嵌入式系統開發與管理

                            課程(30小時)

 

l         UML: Unified Modeling Language

l         MDD: Model-Driven Architecture

 

    主講人:高煥堂 老師

 

主題

內容

批註

Part I

嵌入式系統建模與開發的主軸

領域知識(Domain Knowledge)分析

l  運用物件導向技術,分析領域知識的概念”(Concept)及其關係(Relationship)

l  建立領域知識的分析模型(Analysis Model),以UML類圖呈現

 

客戶流程分析

l      採取用例(Use Case)概念,分析客戶與系統的互動情境(Interaction),敍述其使用流程

l       建立使用情境的分析模型,以UML的用例圖呈現,也建立測試用例(Test Case)模型

 

軟、硬體介面分析與設計

l      確定軟、硬體功能分際

l      分析軟硬體的介面細節需求

l      建立軟、硬體介面模型,以UML組合結構圖(Composite-Structure)呈現

 

軟體系統建模與開發

l      建立軟體系統的架構,多運用軟體設計模式(Design Pattern)

l      分析軟體的行為,設計軟體行為模型,以UML的順序圖、活動圖和狀態圖呈現

l      建立軟體資料模型,以UML的類圖和ER模型圖呈現

l      以物件導向C語言或C++Java等其他語言實踐上述的模型

 

 

Part II

物件導向觀念和語言

物件導向基本觀念

l  軟體物件與硬體物件

l  物件如何分類

l  類的繼承與物件的組合

 

 

CC++的物件導向機制

l      (Class)

ü        類的定義

ü        繼承與多型(Polymorphism)

ü        如何設計類

l      介面(Interface)

ü        介面的意義

ü        基類與介面

ü        如何設計基類與介面

l      應用框架(Application Framework)

ü        如何進行抽象(Abstraction)

ü        抽象出基類

ü        反向呼叫(IOC, Inversion of Control)技術

 

高煥堂設計的物件導向C語言(LW_OOPC)

l      用途

ü        在設備(Memory)資源少的嵌入式環境裏並不適合C++,只能使用C語言

ü        包括Keil C51ANSI-C

l      物件導向C51應用於單片機的示例

l      物件導向ANSI-C的應用示例

l      物件導向C的機制

ü        如何定義類和誕生物件

ü        如何定義介面

ü        如何實踐設計模式

 

軟硬整合設計的C語言(SystemC)

l      用途

ü        以軟體物件模擬硬體物件

ü        有效提升軟硬體的密切結合,獲得高品質

ü        大幅縮短系統開發時程

l      常見的硬體物件及分類

l      使用SystemC的硬體模擬核心

l      如何編寫SystemC的程式碼

 

Part III

MDD(MDA)方法與UML建模技術

模型驅動(MDD, Model-Driven Development)方法

l       從需求分析到架構模型的設計

l       從系統分析到系統模型的設計

l       運用設計模式(Design Pattern)

l       從設計模型到CC++SystemC程式碼撰寫

 

基礎UML/SysML

l      UML建模語言

ü        語言的要素

ü        UML的圖示和語法

ü        UML的物件導向基礎

ü        UML的應用示例

l   UML工具:如EA(Enterprise Architects 7.0)  Rhapsody

l   UMLSysML

 

UML建模思想與技術

l   疏耦合

l   虛實相依

l   相依性管理技術

l   軟體是樹幹、硬體是樹葉

l   軟硬體整合建模

l   軟硬體整合模擬

 

Part IV

MDD方法與UML建模實務示例

Google手機軟體發展實例

l      分析

ü        領域知識架構分析

ü        用例及流程分析

l      設計

ü        軟硬體介面設計

ü        建立軟體結構模型

ü        建立軟體行為模型

l   LW_OOPCJava實踐上述設計

 

認識Google Android框架技術

l       框架vs.類庫

l       通用點vs.擴展點

l       如何開發框架內的C元件

 

如何建立精緻的Google手機UI模型

l       復習Model-Control-View模式

l       UML建立UI模型

l       Java實踐上述模型

 

Part V嵌入式設計模式(Design Pattern)應用實務示例

單晶片軟體發展實例

l      分析

ü        領域知識架構分析

ü        用例及流程分析

l      軟硬體架構設計

ü        考慮硬體的抽換性

ü        運用Façade/State等設計模式

ü        UML敍述上述設計

ü        LW_OOPC-51實踐上述設計

 

評估物件設計對單晶片資源的額外負擔

l       使用LW_OOPC-51 vs.純粹C51

l       好架構vs.執行效能

l       系統更新與維護的考慮

 

 

Part VI

嵌入式建模與自動化產生程式之實務範例

即時(Real-time)控制型軟體發展實例

l      分析

ü        領域知識架構分析

ü        用例及流程分析

ü        系統事件及狀態分析

l      規劃系統的狀態機(State Machine)模型

ü        使用StateWizard建模及開發工具

ü        UML敍述系統上述狀態模型

ü        以自動產生C++代碼

ü        實際執行測試

 

進行軟硬整合模擬

l       SystemC進行硬體的狀態模擬

l       StateWizard執行軟體狀態機

l       聯合即時測試

 

 

Part VII

總結與討論

分析與設計

l       架構設計及其模型的評估

l       介面設計的重要性

l       從模型自動產生程式碼的利與弊

 

SoS軟體工程

l       軟硬體整合的SoS系統

l       SoSE(System of Systems Engineering)軟體工程

 

(架構)設計師

l       成為優秀(架構)設計師的途徑

l       設計美好架構的心法和工法

 

 

 

 

費用: NT$24,500

      

服務:

     電話:02-2739-8367                 Web: www.misoo1.com

          E-mail: misoo.tw@gmail.com    地址:台北市忠孝東路55107F