軟件架構和設計培訓
培訓班型: 企業內訓、公開課
課程長度: 2天/12小時
培訓日期: 待定
培訓地點: 博學國際教育培訓中心
環境要求: 投影儀、白板、大白紙
培訓形式: 實例講授,現場演、練、及時溝通
培訓資料: 培訓教材
課程內容
認證描述:
課程概述:軟件架構(software architecture)是一系列相關的抽象模式,用于指導大型軟件系統各個方面的設計。軟件架構是一個系統的草圖。軟件體系結構是構建計算機軟件實踐的基礎。
授課對象:1、企業信息化*負責人;軟件開發*負責人、技術骨干、軟件設計全過程的項目經理;
2、軟件開發企業的需求分析師、系統架構師、需求分析資深開發人員。
課程內容:
*章:
一、以構架為中心的開發過程——UP統一軟件過程
◆全面說明UP統一軟件過程的內容,包括角色,工件,和活動(業務、需求等九大科目)
◆講解軟件開發所經歷的從業務建模(領域建模)、到需求建模(用例建模)、進而到架構建模、 行為(應用)建模、數據建模,*到測試建模的整個過程
◆闡述迭代模型,詳細講解RUP的先啟階段和精化階段的迭代內容
二、軟件構架導論
◆闡述軟件構架是什么,講解為什么需要軟件構架,闡述構架基線的概念
◆介紹迭代開發各個階段需要解決的各類關鍵風險,并分析構架基線是如何規避項目開發風險的
◆回顧RUP的分析設計過程,說明構架分析、設計在其中的關鍵位置
◆介紹構架設計的相關理論(元模型體系),以及業界主流的構架體系模型
三、構架風格與模式
◆闡述構架風格的概念,介紹常見的相關構架風格
◆講解構架模式和框架,以及如何應用構架模式與框架來創建健壯的構架
◆重點講述層次模式,深入探討應用層次模式來幫助開發系統初始的構架層
四、軟件構架分析
◆分析關鍵的抽象概念在構架分析中的核心作用;介紹如何使用分析模式、GRASP模式來精化實體模型
◆講解如何開發系統的界面導航圖來框定系統的主體功能行為
◆闡述構架機制的概念,深入說明分析機制,講解如何使用分析機制來修飾分析類之設計約束
◆介紹*的代碼注釋技術,講解如何使用ejb3.0的annotation來修飾設計約束(分析機制特征),并利用已有框架直接進入實現
第二章:
五、軟件構架(邏輯)設計
◆闡述軟件構架設計所面臨的挑戰,說明構架設計的質量目標:可維護性、可擴展性、可重用性、互操作性等;講解構架設計相關的一些原則
◆選擇構架級技術方案的指南,講解如何針對系統特征來確定構架級技術方案
◆介紹SEI-ATAM構架折衷分析方法;并講解構架設計如何反作用于系統行為
◆闡述設計模型的組織結構,說明如何進行構架級的分包,以及劃分子系統、定義接口等
◆AOP面向方面的軟件開發技術;講解如何使用AOP來實現最為靈活的設計機制
六、面向對象設計原則與模式
◆講解面向對象設計中的最重要的原則,包括類的設計原則和包的設計原則
◆結合實例闡述在實際設計,特別是構架設計中,應用設計原則的方法、途徑;說明如何平臺相關的細節和應用的分離,如何應用封裝,抽象(abstraction)的原則等
◆闡述軟件構造中的冗余,說明在構架設計中如何識別和利用復用機會;
七、J2EE/Java Lite與dot.Net構架框架、以及基于服務的構架SOA
◆系統地闡述業務密集型軟件系統的主流分層構架設計途徑:從表示層設計、應用控制邏輯設計、到業務邏輯層的工作流設計、以及業務服務構件設計,最終到數據訪問層設計
◆介紹當前業務軟件主流構架應用框架以及中間件體系 ◆J2EE重量級方案(以J2EE核心構架模式為主)
◆Java Lite輕量級方案(圍繞Struts+Spring+Hibernate)
◆闡述SOA構架設計方案,說明SOA是一種獨立性強、依賴性弱,具有更優可復用性的基于構件CBD的構架開發方案;介紹實現SOA的常用技術:Web Services;介紹,基于SOA的JBoss構架實例
第三章:
八、軟件構架(物理)設計
◆闡述源碼的并行開發管理,進而講解構件視圖(實施模型)的概念
◆闡述軟件系統中的并發需求,進而講解進程視圖的概念(即通常說的物理設計視圖)
九、軟件構架(數據)設計與對象持久化
◆講解對業務密集系統意義重大的數據庫設計與數據建模
◆闡述對象持久化的概念,描述持久化機制,包括對應的分析、設計和實施等機制
◆闡述Object-Relationship Mapping對象關系映射的概念,結合實例說明實現對象關
十、軟件構架文檔與構架質量評估
◆ 進一步深入闡述4+1視圖的概念,講解RUP的軟件構架文檔
◆說明軟件構架文檔的內容,并給出編寫軟件構架文檔,和用它來指導目標系統開發指南
十一、項目開發目錄結構與配置管理
◆講解如何定義項目開發目錄結構,以支持團隊的協作開發
◆講解如何使用配置管理工具來支持項目開發目錄結構的共享使用