UML Unified Modeling Language

Slides:



Advertisements
Similar presentations
系統分析與設計 楊子青 H-1 H 、物件導向技術 n 物件導向的基本概念 – 物件、類別 – 封裝、繼承 – 同名異式 ( 多型 ) 、超荷 ( 過載 ) n 物件導向分析與設計及塑模工具 n UML 塑模工具.
Advertisements

<<會計資訊系統課程講義>> 統一塑模語言(UML)語法精要 -- 物件導向概念、需求分析及系統分析
軟體工程 -物件導向程式設計與UML系統分析實作
任务二:面向对象的建模 3 需求分析阶段的用例建模 用例图 活动图.
管理信息系统-MIS 5 面向对象方法学 5.1 面向对象方法学的产生及其发展 传统的开发方法存在的问题:
第10章 領域、概念與分析模型 10-1 再談物件導向分析 10-2 找出類別建立領域模型 10-3 指定責任建立概念模型
第一章 系統開發概論 1-1 系統開發概論 1-2 常見的資訊系統 1-3 系統開發生命週期 1-4 系統開發方法論簡介.
第二章 UML簡介 課前指引 本章介紹什麼是UML以及利用圖形來塑模資訊系統的好處在哪裡。文中也介紹了何謂「4+1的觀點」、以及簡述各項UML圖形的使用目的。並且,我們從靜態以及動態這兩個觀點來分類、介紹各圖形的使用時機。
第二章 UML簡介 課前指引 本章介紹什麼是UML以及利用圖形來塑模資訊系統的好處在哪裡。文中也介紹了何謂「4+1的觀點」、以及簡述各項UML圖形的使用目的。並且,我們從靜態以及動態這兩個觀點來分類、介紹各圖形的使用時機。
第六讲 面向对象分析(6学时) 了解面向对象分析的概念 了解面向对象分析的发展 理解面向对象的基本概念 理解面向对象分析的过程、内容
第10章 考试系统的分析与设计 1.
第6章 系统分析 6.1 概述 6.2 逻辑模型 6.3 逻辑结构分析 6.4 用例分析 6.5 概念类分析.
陳維魁 博士 儒林圖書公司 第九章 資料抽象化 陳維魁 博士 儒林圖書公司.
普通高等教育“十一五”国家级规划教材 信息系统分析与设计 刘腾红 孙细明 主编 科 学 出 版 社.
第一章 軟體工程 (Software Engineering Introduction)
物件導向技術.
第9章 面向对象方法学引论 9.1 面向对象方法学概述 9.2 面向对象的概念 9.3 面向对象建模 9.4 对象模型 9.5 动态模型
第八章 分析與設計階段 – 物件導向設計(OOD)
第 9 讲 面向对象分析与设计
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
Java簡介.
H、物件導向技術 物件導向的基本概念 物件、類別 封裝、繼承 同名異式(多型) 、超荷(過載) 物件導向分析與設計及塑模工具 UML塑模工具.
首席數位 物件導向系統分析與設計(OOA,OOD) 首席講座: 曾龍博士.
第3章 UML統一塑模語言 3-1 塑模與塑模語言 3-2 UML的基礎 3-3 UML的4+1觀點 3-4 UML塑模工具
2-3 基本數位邏輯處理※.
軟體工程 -物件導向程式設計與UML系統分析實作
第10章 使用個案塑模.
物件導向系統分析與設計與UML.
單元3:軟體設計 3-2 順序圖(Sequence Diagrams)
UML工具 --8种优秀的UML工具.
软件建模精要 面向对象软件建模技术.
JUDE教學 Jude安裝教學篇 Jude初步介紹篇 Jude繪圖介紹篇 介紹jude的安裝和下戴 介紹jude的初基本功能
類別(class) 類別class與物件object.
软件建模与UML.
UML类设计工具 任课老师:黄武 上午2时50分 10.
UML介绍.
Java 程式設計 講師:FrankLin.
面向对象的分析与设计 教学计划 研究生课程 主讲教师:邵维忠 助教: 朱彬,柳毅,尤朝,张磊,黄艺燕 2009年2月—7月
第九章 物件導向技術.
第九章 物件導向技術.
軟體工程:如何開發軟體? 把它看成是一件工程。 那麼就會有一些工具、技術、方法,也有管理的議題。
A、資訊系統開發概論與課程簡介 何謂資訊系統? 為何需要系統分析師? 需要瞭解哪些知識? 領域知識? 資訊科技? 開發方法與技術? 課程簡介.
實作一個電腦輔助軟體工程工具以提昇軟體文件 可追蹤性及軟體可維護性
Advanced Basic Key Terms Dependency Actor Generation association
網路安全技術 OSI七層 學生:A 郭瀝婷 指導教授:梁明章.
两种不同类别的软件: 功能预定义软件;用户驱动的软件。他们对软件工程方法有不同的需求
Topic Introduction—RMI
TB-054A  周天穎 編著 儒林圖書公司 發行.
UML语言.
学习导航 学习导航.
管理信息系统 第九章 面向对象的系统开发方法.
证书发放工作要点及流程 学院办公室.
实验6 面向对象分析与设计实验.
第6章 使用案例圖 6-1 使用案例圖的基礎 6-2 使用案例圖的符號 6-3 動作者與使用案例的關係 6-4 繪製使用案例圖
用例图.
第二章 資訊系統開發模式.
其他 ER 相關觀念 以及OO模型 國立中央大學 資訊管理系 范錚強 2002 中央大學。范錚強.
Chapter 3 軟體組態管理 Software Engineering – An Engineering Approach, James F. Peters & Witold Pedrycz.
統一模式語言(UML) 使用UML作為塑模語言的原因: UML目前己為國際物件管理組織(OMG)接受為物件導向之標準模式語言。
第6章 面向对象开发的 分析与设计.
熊博安 嵌入式系統實驗室 國立中正大學資訊工程學系
面向对象系统分析与设计 交互图.
資料擷取與監控應用實務.
UML ISKM Lab.
I、使用個案塑模-使用個案圖 行為者(Actor) 使用個案(Use Case) 連接線 系統邊界 使用個案間之關係
面向对象建模 对象(object) 对象具有的含义: 现实世界中某个具体的物理实体或概念在计算机逻辑中的映射和体现。 在现实世界中:
Chapter 4 Multi-Threads (多執行緒).
第十一章、互動圖.
第十章 面向对象 (2).
Presentation transcript:

UML Unified Modeling Language David Li CTO, DigitalSesame

UML Overview 統一塑模語言(Unified Modeling Language) 將系統視覺化和文件規格所用的符號加以統一 由 Rational Three Amigos所制定而成 Grady Booch Ivar Jacobson Jim Rumbaugh 1997年11月, 由物件管理協會(OMG) 正式宣佈為物件導向視覺化塑模的標準.

從 UML 的觀點看軟體架構 個案觀點 (Use Case View) 邏輯觀點 (Logical View) 元件觀點 (Component View) 佈署觀點 (Deployment View) 同步觀點 (Concurrency View) 佈署觀點 (Deployment View)

UML 中常用圖表 (1/3) 個案圖 (Use Case Diagram) 類別圖 (Class Diagram) 敘述一個系統的功能,以及此系統的使用者與此系統之間的互動關係 類別圖 (Class Diagram) 敘述一個系統的功能,以及此系統的使用者與此系統之間的 互動關係 物件圖 (Object Diagram) 描述某一特定情況下系統的靜態結構

UML 中常用圖表 (2/3) 狀態圖(State Diagram) 序列圖(Sequence Diagram) 敘述一個類別的狀態(state)與回應(response), 它描述一個類別對於外部事件的反應. 序列圖(Sequence Diagram) 敘述物件之間的互動關係, 強調的是 class 之間所交換的 message, 藉以達成某些預期行為 合作圖(Collaboration Diagram) 敘述 class 彼此之間相互作用的關係,並藉由類別之間的結合關係來進行訊息的交換.

UML 中常用圖表 (3/3) 活動圖 (Activity Diagram) 元件圖 (Component Diagram) 敘述一個 class 回應內部處理的行為. 元件圖 (Component Diagram) 敘述軟體實作 component 的組織結構及其相依關係. 佈署圖 (Deployment Diagram) 表示工作元(process)或執行緒(thread)對應到主機(processor)或裝置(device)的實際狀況

個案觀點 (Use Case View) 以使用個案圖表達軟體功能需求 包含 : 對象 : 個案圖 (Use Cacse Diagram) Customer Designer Developer Tester

個案圖 (Use Case Diagram) 名詞及圖形解釋 Actor Use case 使用者在系統中所扮演的一個角色 (role) 一個 actor 與電腦系統 (system) 之間彼此互動的情形

個案圖 (Use Case Diagram) <<uses>> <<extends>> 與共用模組的連結 <<extends>> 與例外部分的連結 <<includes>> 與 sub use case 的連結

製作 use case 步驟 (1/3) 決定 actor : 有哪些角色將會使用此系統 以 actor 的角度找出最普遍存在的一些 use cases

製作 use case 步驟 (2/3) 為需要進一步說明的 use cases 填上 description actor 做了A  系統回應了B 接著 actor 做了C  系統回應了D 檢視每一個 use case 是否會有例外的狀況發生,如果有,為它加上 extended use case(用 “extends” 連結)

製作 use case 步驟 (3/3) 檢視每一個 use case description, 找出其中有重複的部分, 將其提取出來成為共用的 use cases(用 “uses” 連結) 檢視每一個 use case 是否有包含需要被進一步抽離出來的 use cases 在裡面, 如果有, 為它加上 sub use cases (用 “includes” 連結)

Use Case Diagram Example

Use Case Exercise 學生成績記錄系統 3-5 人一組 一人扮演需要此系統的使用者 其餘的人扮演系統開發的工程師 使用者提出系統的功能需求 工程師用 Use Case 將功能需求紀錄下 每組用 10 分鐘來展現及解釋產生的 Use Case

Use case 注意事項 每個 use case 要能達成 actor 所要求某個獨立的任務 一個 user 可以擔任許多個 actor, 而好幾個 user 也可同時擔任一個 actor, 因此要以 “角色(role)” 來決定需有哪些 actor actors 及 use cases  系統的範圍(system boundary) 可由此來估量系統開發的scope 及時間

Use case 注意事項 Use case 不見得第一次就能完備 Use case 的目的就是要解構一個系統,以得到 high level 的使用者功能需求, 這是使用上最大的前提

邏輯觀點 (Logical View) 以物件的觀念,表達軟體設計結果。 包含 : 類別圖 (Class Diagram) 序列圖 (Sequence Diagram) 合作圖 (Collaboration Diagram) 對象 Designer Developer

元件觀點 (Component View) 整個軟體開發的程式架構 包含 對象 元件圖 (Component Diagram) Developer

佈署觀點 (Deployment View) 整個系統對應到主機或裝置的實際狀況 包含 佈署圖 (Deployment Diagram) 對象 Developer Integrator Tester

佈署圖 (Deployment Diagram) 用途 表示工作元(process)或執行緒(thread)對應到主機(processor)或裝置(device)的實際狀況 組成單位 Processors 具運作能力的硬體組成單元 Devices 不具運作能力的硬體組成單元 Connections 各組成單元間的連結

Deployment Diagram