Software Analysis and Design Using UML
參考資料 IBM UML Resource Center http://www.omg.org/uml/ Systems Analysis and Design with UML : An Object-Oriented Approach, Second Edition, Alan Dennis Object-Oriented Software Engineering: Using UML, Patterns and Java, Second Edition, Bernd Bruegge 系統分析與設計 理論與實務應用, 吳仁和 系統分析教材, 劉志俊教授 TBLink 技轉資料
相關主題 UML OOP OOAD Design pattern Software Engineering CMMI
RUP Overview What is Rational Unified Process (RUP)? A generic software development process framework that can be specialized Component-based Use-case driven Architecture centric Iterative and incremental
RUP Overview RUP a Rational Product Web-enabled software engineering process Providing extensive guidelines, templates, and examples Tightly integrated with Rational tools, the Unified Modeling Language (UML), and other industry best practices
RUP 模式的構面
RUP 模式生命週期階段 目標與里程碑 初始階段目標 : 瞭解專案範圍 建立企業個案 取得有關人員對推展該專案的認同里程碑 : 完成專案生命週期目標詳述階段目標 : 降低主要技術之風險 創造系統基本結構 瞭解用何資源以建構系統里程碑 : 完成生命週期結構建構階段目標 : 建構與演化可運作的系統版本里程碑 : 初步可運作的系統版本 ( 常稱為 β 版 ) 轉移階段目標 : 建立最終版本的軟體系統, 並移交給客戶里程碑 : 完成軟體產品出版
What is UML & How did it evolve? Unified Notation for Object-Oriented Analysis and Design Evolves from Booch, OMT and OOSE etc. Visual modeling of software systems
UML 之版本與年代演進 Unified Method 0.8 UML 0.9 UML 1.0 UML 1.1 1995/10 1996 1997/1 1997 交最終報告 最初之名稱為 加入 Jacobson 向 OMG 提交初稿給 OMG Unified Method 之研究 1997/11 通過 更名為 UML UML 1.2 UML 1.3 UML 1.4 UML 1.5 1998/7 修正排版與打字等錯誤 1999/4 2001/9 通過 2003/3 向 OMG 提交正式版本 結合 UML 1.4 和行為語義 UML 2.0 2003/6 通過
TBLink Technology Corp. (UML-Diagram Diagram s s Relationship ) Actor Subsystem Work Flow Work Flow Department Activity Department Actor Function Function Page 1 Page Spec. Actor Function Actor [New] [Modify] Actor Subsystem Work Flow Activity Activity Function Spec Page 2 Page 3 Work Flow Actor Actor Function H- (Subsystem / Work Flow) Activity Diagram (Work Flow) L- (Function Spec.) Activity Diagram (Page Flow / Page Spec.) Object Object Object Open Parameter Parameter Issue Pending Sequence Diagram (Function / Page) Close Object Parameter Object Parameter Object Statechart Diagram (Object State) Object Diagram (Object Relation) Collaboration Diagram (Function / Page) Diagram (Entity Relation)
物件導向塑模活動及塑模工具 需求塑模 使用者與企業需求 需求擷取 需求轉換使用個案圖活動圖 ( 或流程圖 ) 藍圖資料詞彙 物件資料結構塑模類別圖物件圖物件互動行為塑模循序圖合作圖作業行為塑模活動圖狀態圖使用者介面塑模介面結構圖介面藍圖與元件規格介面狀態圖與轉換表 系統元件與結構塑模元件圖部署圖 使用者介面設計程式設計資料庫設計
物件導向分析與設計與塑模工具之關係 RA SA SD 介面藍圖 使用者介面架構 介面元件規格 PAC 或 MVC 狀態圖 循序圖 物件圖 物件需求導向應用分治原理 使用個案圖活動圖藍圖資料詞彙 類別圖 元件圖 部署圖 合作圖 循序圖 活動圖 狀態圖 需求塑模 SA&D 塑模
OOAD 特色 物件導向之系統開發過程是一種反覆的程序, 主要包括需求分析 系統分析與設計 實施與測試等階段 其中, 需求分析主要以使用個案圖作為表達工具 ; 而系統分析與設計主要以類別圖 物件圖 循序圖 合作圖 狀態圖 活動圖 元件圖與部署圖等表達 物件導向應用一些重要的觀念包括物件 類別 封裝 繼承與同名異式及超荷等, 使物件導向系統有別於結構化之系統 由於物件導向技術之引進, 使軟體之開發與維護更有效率, 亦提升了程式的再用性與可維護性
分析與設計和塑模工具 : 結構化 vs. 物件導向 結構化 流程圖處理描述藍圖資料詞彙 ERD DFD SD 關聯表 結構圖 正規化 模組設計 需求 應用分治原理 使用者介面架構 PAC 或 MVC 介面藍圖介面元件規格循序圖狀態圖 物件導向 使用個案圖活動圖藍圖資料詞彙 物件圖 類別圖 元件圖 部署圖 合作圖 循序圖 活動圖 狀態圖 需求塑模 SA&D 塑模
DFD ( Data flow diagram)
UML Commercial Tools Most Popular UML Commercial Tools Available 1. Rational Corporation 1. Rational Corporation Rose Most widely used UML CASE tool from the publishers of UML. 2. Object Technology TogetherJ CASE Tool for use with Java or C++ & founded by Peter Coad. 3. WebGain StructureBuilder 4. Microsoft Visio Enterprise Edition OTHER commercially available tools -Advanced Software Technologies GDPro -Aonix StP/UML -Cayenne ObjectTeam -Confluent Visual Draw -Grade Development Group Modeler -I-Logix Rhapsody -Insoft Oy Prosoft UML Case -MicroGold With -Object Domain Professional v2.5 -No Magic Magic Draw UML -ObjecTime UML -Platinum Paradigm Plus -Popkin System Architect -Riverton HOW -Select Enterprise -Stingray Visual CASE -Visual Object Modelers Visual UML
What is Rational Rose? Rational Rose is a tool which provides the capability to create, view, modify, and manipulate UML views and diagrams. Rose is available in four main editions: Rose Modeler Data Modeler Pro Modeler Web Modeler Rose Professional ADA C++ J (Java) VB (Visual Basic) Rose Enterprise (includes tools for ALL Modeler & Professional Editions) Rose RealTime & RealTime Pro
What does UML Employ? It employs diagrams to describe different aspects of a software design. View Functional View Static Structural View Purpose Describes basic functional requirements of the system Defines the static and nontemporal structure of the system - Diagram -Activity Diagram - Diagram Diagram Behavior View Describes the temporal behavior of the system -Sequence Diagram -Collaboration Diagram -State Diagram Architectural View Outlines the logical and physical structure of the system s major building blocks. - UML Package Diagram (Logical) - Component Diagram (Physical) - Deployment Diagram (Physical)