石振莲 软件学院308 67396121 zshi@bjut.edu.cn 可视化建模与UML 石振莲 软件学院308 67396121 zshi@bjut.edu.cn.

Slides:



Advertisements
Similar presentations
期末考试作文讲解 % 的同学赞成住校 30% 的学生反对住校 1. 有利于培养我们良好的学 习和生活习惯; 1. 学生住校不利于了解外 界信息; 2 可与老师及同学充分交流有 利于共同进步。 2. 和家人交流少。 在寄宿制高中,大部分学生住校,但仍有一部分学生选 择走读。你校就就此开展了一次问卷调查,主题为.
Advertisements

第七课:电脑和网络. 生词 上网 vs. 网上 我上网看天气预报。 今天早上看了网上的天气预报。 正式 zhèngshì (报告,会议,纪录) 他被这所学校正式录取 大桥已经落成,日内就可以正式通车 落伍 luòw ǔ 迟到 chídào 他怕迟到,六点就起床了.
云计算辅助教学风云录 黎加厚 上海师范大学教育技术系 2010年8月9日.
<<會計資訊系統課程講義>> 統一塑模語言(UML)語法精要 -- 物件導向概念、需求分析及系統分析
軟體工程 -物件導向程式設計與UML系統分析實作
第一章 系統開發概論 1-1 系統開發概論 1-2 常見的資訊系統 1-3 系統開發生命週期 1-4 系統開發方法論簡介.
A Career Planning Project
第二章 UML簡介 課前指引 本章介紹什麼是UML以及利用圖形來塑模資訊系統的好處在哪裡。文中也介紹了何謂「4+1的觀點」、以及簡述各項UML圖形的使用目的。並且,我們從靜態以及動態這兩個觀點來分類、介紹各圖形的使用時機。
第10章 考试系统的分析与设计 1.
商業智慧與資料倉儲 課程簡介 靜宜大學資管系 楊子青.
都市計畫概論論文概述及評論: 彰化高鐵站區域計畫
第八章 分析與設計階段 – 物件導向設計(OOD)
Semantic-Synaptic Web Mining: A Novel Model for Improving the Web Mining 報告者:陳宜樺 報告日期:2015/9/25.
Homework 4 an innovative design process model TEAM 7
考试与考生 --不对等与对等 邹申 上海外国语大学
優質教育基金研究計劃研討會: 經驗分享 - 透過Web 2.0推動高小程度 探究式專題研習的協作教學模式
形式语言与网络 计算环境构建 1.
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
Consumer Memory 指導老師 莊勝雄 MA4D0102郭虹汝MA4D0201吳宜臻.
軟體原型 (Software Prototyping)
作 業 管 理 指導:盧淵源教授 第四組:碩士專班 N 徐天志 N 林耀宗 N 陳丁雲
The Empirical Study on the Correlation between Equity Incentive and Enterprise Performance for Listed Companies 上市公司股权激励与企业绩效相关性的实证研究 汇报人:白欣蓉 学 号:
石振莲 软件学院 可视化建模与UML 石振莲 软件学院
Proteus 可视化设计 Drag, Drop and PLAY! Slide 1.
需求工程行程 (Requirements Engineering Processes)
Chapter 3 Case Studies.
第 1 章 ERP的演变.
軟體工程 -物件導向程式設計與UML系統分析實作
圖形溝通大師 Microsoft Visio 2003
物件導向系統分析與設計與UML.
單元3:軟體設計 3-2 順序圖(Sequence Diagrams)
面向对象建模技术 软件工程系 林 琳.
HLA - Time Management 陳昱豪.
创建型设计模式.
第4章 物件導向分析與設計簡介 4-1 物件導向的軟體系統開發 4-2 物件導向分析與設計 4-3 UML的物件導向分析與設計
SAP 架構及基本操作 SAP前端軟體安裝與登入 Logical View of the SAP System SAP登入 IDES
软件建模与UML.
UML类设计工具 任课老师:黄武 上午2时50分 10.
客户服务 询盘惯例.
第4章(1) 空间数据库 —数据库理论基础 北京建筑工程学院 王文宇.
Advanced Basic Key Terms Dependency Actor Generation association
两种不同类别的软件: 功能预定义软件;用户驱动的软件。他们对软件工程方法有不同的需求
绩效管理.
UML语言.
IBM SWG Overall Introduction
程序设计工具实习 Software Program Tool
資料結構 Data Structures Fall 2006, 95學年第一學期 Instructor : 陳宗正.
Version Control System Based DSNs
Guide to a successful PowerPoint design – simple is best
软件工程 第四章 软件设计 软件过程设计技术与工具.
第二章 資訊系統開發模式.
中国科学技术大学计算机系 陈香兰 2013Fall 第七讲 存储器管理 中国科学技术大学计算机系 陈香兰 2013Fall.
虚 拟 仪 器 virtual instrument
中央社新聞— <LTTC:台灣學生英語聽說提升 讀寫相對下降>
從 ER 到 Logical Schema ──兼談Schema Integration
績效考核 一.績效考核: 1.意義 2.目的 3.影響績效的因素 二.要考核什麼? 三.誰來負責考核? 四.運用什麼工具與方法?
The viewpoint (culture) [观点(文化)]
An organizational learning approach to information systems development
SAP 架構及基本操作 SAP前端軟體安裝與登入 Logical View of the SAP System SAP登入 IDES
IEEM 5352 Enterprise Integration
Paper Prototyping Michael Tsai 2011/10/14.
Advanced Basic Key Terms Dependency Generalization Actor Stereotype
构件图和部署图.
UML ISKM Lab.
Operating System Software School of SCU
SAP 架構及前端軟體安裝 Logical View of the SAP System SAP Frontend 7.1安裝 SAP登入
MGT 213 System Management Server的昨天,今天和明天
ATM自动取款机系统 一、 需求分析 二、系统用例模型 三、系统动态模型 四、创建系统包图 五、系统类模型 六、系统部署.
作业 请您用星级模式评估您自己公司的一致性状况。 您的公司与它的战略执行一致吗?.
國際理事的角色 講師: 年指派理事 G L T 地 區 領 導 人 江達隆 博士.
Presentation transcript:

石振莲 软件学院308 67396121 zshi@bjut.edu.cn 可视化建模与UML 石振莲 软件学院308 67396121 zshi@bjut.edu.cn

Architecture Views 设计视图 实现视图 进程视图 实施视图 Design View Implementation View The 4+1 model is introduced here and because it is important for the students to see how the views fit together up front, in order to set context. Discuss the 4+1 views at a high level. These are covered in detail in RUP. Emphasize that the architectural views are the architecturally-significant subsets of system models. Not all systems require all views (e.g., single processor: drop deployment view; single process: drop process view; small program: drop implementation view, etc.). A project may document all of these views or additional views. The number of views is dependent on the system you’re building. These views and their representation in UML are discussed in the Artifacts module. Note: More information than the views is required to capture the software architecture. This information is captured in the Software Architecture Document (SAD). Design View Analysts/Designers Structure 设计视图 Implementation View Programmers Software management 实现视图 Use-Case View End-user Functionality 用例视图 Many different parties are interested in the architecture (such as the system analyst, the designers, the end users, and so on). To allow these parties or stakeholders to communicate, discuss, and reason about architecture, you need to have an architectural representation they understand. Because different stakeholders have different concerns and because architecture is quite complex, multiple views are required to represent architecture adequately. An architectural view is a simplified description (an abstraction) of a system from a particular perspective or vantage point, covering particular concerns, and omitting entities that are not relevant to this perspective. While many views of architecture can be useful, RUP identifies 4+1 views as a standard set: * The Design view addresses the conceptual structure of the system. It is an abstraction of the design model, identifying major design packages, subsystems, and classes. 包含了类、接口和协作,它们形成了问题及其对问题解决方案的术语词汇。这种视图主要支持系统的功能需求,即系统提供给 用户的服务。静态视图:类图、对象图; * The implementation view describes the organization of static software modules in the development environment, in terms of packaging, layering, and configuration management. 包含了用于装配与发布物理系统的构件和文件。这种视图主要针对系统发布的配置管理,由一些独立的构件和文件组成。 静态视图:构件图 * The deployment view shows how the various executables and other run-time components are mapped onto the underlying platforms or computing nodes. 包含了形成系统硬件拓扑结构的节点。主要描述组成物理系统的部件的分布、交付和安装。 静态图:实施图; 动态图:交互图、状态图、活动图 * The process view addresses the concurrent aspects of the system at run-time: tasks, threads or processes, and their interactions. 包含了形成系统并发与同步机制的线城和进程。主要针对性能、可伸缩性、系统的吞吐量。注重于描述进程和线程的主动 类。 静态图:类图,对象图 动态图:交互图、状态图、活动图。 * The use-case view contains a few key scenarios or use cases that are used to drive and validate the architecture. It is the “heart” of the other views because it specifies WHAT the system should do. 由专门描述可被最终用户、分析人员和测试人员看到的系统行为的用例组成,用例视图实际上没有描述软件系统的组织,而是描述了形成系统体系结构的动力。 静态图:用例图 动态图:交互图、状态图和活动图。 UML中,可以将软件密集型系统的所有抽象组织成一些模型,每个模型代表正在开发的系统的相对独立而又重要的方面。然后用图来可视化这些抽象的有趣集合。 最好用5个互连的视图来描述软件密集型系统的体系结构。每一个视图是在一个特定的方面对系统的组织和结构进行的投影。这五种视图中的每一种视图头可单独使用,使不同的人员能专注于他们最关心的体系结构的问题。这五种视图也可以相互作用。(See Page 22) Process View Performance Scalability Throughput System integrators 进程视图 Deployment View System topology Delivery, installation communication System engineering 实施视图 Logic Model Physic Model

UML——图 Static Diagrams Dynamic Diagrams 结构 行为 Use-Case Diagrams Class The UML emphasizes a graphical language for representing models, but provides little or no guidance on when and how to use these diagrams. This is an area where the RUP helps. It describes the kinds of project artifacts needed, including diagrams, and puts them in the context of an overall project plan. Static Diagrams 结构 Use-Case Diagrams Class Diagrams Sequence Diagrams Object Diagrams In building a visual model of a system, many different diagrams are needed to represent different views of the system. The UML provides a rich notation for visualizing our models. This includes the following key diagrams: Use-Case diagrams to illustrate user interactions with the system Class diagrams to illustrate logical structure Object diagrams to illustrate objects and links Component diagrams to illustrate physical structure of the software Deployment diagrams to show the mapping of software to hardware configurations Activity diagrams to illustrate flows of events Statechart diagrams to illustrate behavior Collaboration diagrams to illustrate behavior Sequence diagrams to illustrate behavior Notice that there is a single model (viewed through multiple diagrams) in which semantic consistency is maintained following the UML specifications. Collaboration Diagrams Component Diagrams Models 行为 Statechart Diagrams Deployment Diagrams Activity Diagrams Dynamic Diagrams

Dynamic Diagram Sequence Diagram Collaboration Diagram StateChart Diagram Activity Diagram

动态图 识别参与对象 在对象间分配责任 对对象间消息的建模 描述消息的处理结果 对类的关系建模

Sequence Diagram 设计视图 Design View Analysts/Designers Structure 在建好系统静态模型的基础上,接下来需要分析和设计系统的动态结构,并且建立相应的动态模型。 动态模型描述了系统随时间变化的行为,这些行为是用从静态试图中抽取的系统瞬间值的变化来描述的。 交互图:协作图+顺序图;用于定义系统如何实现功能;一步一步显示用例的流程;包括:流中需要什么对象,对象相互发送什么消息,什么角色启动流;消息按什么时序发送。描述了一个交互,由一组对象和他们之间的关系组成。包括在对象间传递的信息。 时序图:强调消息时间顺序的交互图,描述类系统中类和类之间的交互,将交互建模成消息交换

两种分析方法

业务建模:第0步,辅助步骤,不是软件开发的步骤。 并不是所有的项目都需要

Use-Case Realization

UML动态模型

现在已有的工件 类图 用例文档 通过画顺序图完成责任分配

交互模式

用例—类—交互

例: Lifeline Class Role Activation Message

对象通过消息交互

创建顺序图步骤 寻找类/对象 寻找角色 将消息加进框图 实体类/对象 边界类/对象 控制类/对象 对事件流启动工作流的外部刺激 一个对象/类请求另一个类/对象完成特定功能

用例的责任分配到这些类上

检索零件 基本路径 1. 检索零件者提交查询条件 2. 系统按查询条件检索零件 3. 系统显示搜索到零件的列表 4. 检索零件者选中某个零件 5. 系统显示该零件的详细信息 扩展 2a. 系统没有检索到所需零件: 2a1. 系统显示“没有找到适合条件的零件” 2a2. 用例结束

检索零件类图

顺序图解说 :会员

另一种序号表示法

绘制要点

绘制要点

绘制要点

绘制要点

绘制要点

绘制要点

责任分配 V.S 功能分解

???

顺序图和类图的映射

顺序图和类图的映射

顺序图和类图的映射

思考:

思考:

思考:

责任分配原则 专家(Expert)原则 老板(Boss)原则 可视(Visibility)原则

责任分配原则

责任分配原则

责任分配原则

练习:

结帐:

责任分配给谁? 会员? 账户?

应用:专家+老板 原则

代码:

责任分配给谁?

应用 “专家原则”

责任分配给谁?

应用“专家原则+可视”

应用“专家原则”

增加“计费类”

UML——图 Static Diagrams Dynamic Diagrams 结构 行为 Use-Case Diagrams Class The UML emphasizes a graphical language for representing models, but provides little or no guidance on when and how to use these diagrams. This is an area where the RUP helps. It describes the kinds of project artifacts needed, including diagrams, and puts them in the context of an overall project plan. Static Diagrams 结构 Use-Case Diagrams Class Diagrams Sequence Diagrams Object Diagrams In building a visual model of a system, many different diagrams are needed to represent different views of the system. The UML provides a rich notation for visualizing our models. This includes the following key diagrams: Use-Case diagrams to illustrate user interactions with the system Class diagrams to illustrate logical structure Object diagrams to illustrate objects and links Component diagrams to illustrate physical structure of the software Deployment diagrams to show the mapping of software to hardware configurations Activity diagrams to illustrate flows of events Statechart diagrams to illustrate behavior Collaboration diagrams to illustrate behavior Sequence diagrams to illustrate behavior Notice that there is a single model (viewed through multiple diagrams) in which semantic consistency is maintained following the UML specifications. Collaboration Diagrams Component Diagrams Models 行为 Statechart Diagrams Deployment Diagrams Activity Diagrams Dynamic Diagrams

业务建模:第0步,辅助步骤,不是软件开发的步骤。 并不是所有的项目都需要

Collaboration Diagram 和Sequence框图一样,Collaboration框图也显示用例中特定情形的流程。Sequence框图按时间排序,而Collaboration框图则着重于对象之间的关系。 可以看出,Collaboration框图与Sequence框图中的信息相同,但Collaboration框图显示了不同的流视图,在这个框图中,更容易看出对象之间的关系,但对象顺序信息则不够明显。 为此,可以对一个情景同时创建Sequence框图和Collaboration框图。尽管他们的作用相同,包含相同的信息,但视图有所不同。

另一种序号表示法

Collaboration Vs. Sequence Collaboration Diagram Show relationships in addition to interactions Better for visualizing all of the effects on a given object Sequence Diagrams Show the explicit sequence of messages Better for visualizing overall flow Better for real-time specifications and for complex scenarios

???????.......