吉林大学UML学习思维笔记
第三章视觉建模原理
- Objectives
描述可视化建模的重要性以及模型驱动体系结构的作用。
定义视觉建模的四个原则。
解释统一建模语言(UML)代表什么。
定义与UML最相关的流程类型。 - What is a Model?
模型是主题系统的语义封闭抽象。
RUP方法将模型定义为从特定角度对系统的完整描述。
模型示例:
UML模型
代码
数据模型 - Difference Between Model and Diagram
模型可以包含一个或多个图表。
不同的图表以图形方式描述模型不同部分的视图。
模型中只出现一次的模型元素可以出现在一个或多个图表上,以在不同的上下文中显示它。 - 软件模型
概念:通过一定的形式和方法用来描述软件的模型
软件模型在软件开发中的作用:
软件是软件的中间形态
软件模型是人员交流的媒介
需求模型:描述软件向用户所能够提供的外在特性,包括软件的目标、功能、性能等。
分析模型:立足于系统的抽象逻辑建模.
设计模型:软件设计方案的规范化描述。包括软件的架构、详细设计、界面设计、数据库设计等模型
测试模型:测试软件的方案描述
- Why Model?
建模实现了四个目标:
帮助您将系统可视化为您希望的样子。
允许您指定系统的结构或行为。
为您提供一个模板,指导您构建系统。
记录您所做的决定。
你建立复杂系统的模型,因为你不能理解这样一个系统的整体。
您构建模型以更好地理解正在开发的系统。
- importence
纸飞机和飞机
… - MDA
在软件开发中使用模型的方法将系统操作的规范与系统使用其平台功能的方式的细节分开。
独立于支持系统的平台指定系统
指定平台
为系统选择特定平台
将系统规范转换为特定平台的系统规范 - MDA view points
计算独立模型(CIM)
关注系统环境和系统
需求平台独立模型(PIM)
关注系统运行,独立于平台
平台特定模型(PSM)
关注特定平台上系统的详细使用 - Four Principles of Modeling
您创建的模型会影响问题的处理方式。
每个模型可以以不同的精度等级表示。
最好的模型与现实联系在一起。
没有单一的模型是足够的。
您创建的模型深刻地影响了问题的处理方式和解决方案的形成。
在软件中,你选择的模型会极大地影响你的世界观。
每一种世界观都会导致一种不同的系统。
您创建的模型深刻地影响了问题的处理方式和解决方案的形成。
在软件中,你选择的模型会极大地影响你的世界观。
每一种世界观都会导致一种不同的系统。
所有模型都简化了现实。
一个好的模型反映了潜在的致命特征。
没有单一的模型是足够的。每个非平凡系统最好通过一组几乎独立的模型来实现。
创建可以单独构建和研究但仍然相互关联的模型。
- what is UML
UML是一种可视化、指定、构造文档的语言
软件密集型系统的工件。 - The UML Is a Language for Visualizing
向他人传达概念模型很容易出错,除非所有参与者都使用相同的语言。
除非你建立模型,否则你无法理解软件系统的某些方面。
显式模型有助于沟通。 - The UML Is a Language for Specifying
UML构建了精确、明确和完整的模型。 - The UML Is a Language for Constructing
UML模型可以直接连接到各种编程语言。
映射到RDBMS中的Java、C++、Visual Basic等表或OODBMS中的持久存储允许正向工程允许反向工程 - The UML Is a Language for Documenting
- What Type of Process Most Benefits the UML?
UML在很大程度上是独立于过程的。当过程是:
以用例驱动的
体系结构为中心的
迭代和增量
以下三个有序标题 - A Use-Case Driven Process
为系统定义的用例是整个开发过程的基础。
用例的好处:
简洁、简单,并且可以被广泛的利益相关者理解。
帮助同步不同模型的内容。 - An Architecture-Centric Process
系统的体系结构被用作概念化、构建、管理和发展正在开发的系统的主要构件。
优点:
对项目进行智能控制,以管理其复杂性并保持系统完整性。
大规模重复使用的有效基础。
项目管理的基础。
协助基于组件的开发。 - An Iterative and Incremental Process
重大风险在进行大规模投资之前得到解决。
初始迭代实现早期用户反馈。
测试和集成是持续的。
目标里程碑着眼于短期。
通过评估实施情况来衡量进展。
可以部署部分实现。
最早的迭代解决了最大的风险。
每次迭代都会产生一个可执行版本,这是系统的一个额外增量。
每个迭代都包括集成
- review
什么是模型?
MDA的观点是什么?描述每一个。
建模的四个原则是什么?描述每一个。
什么是UML?描述其四个优点中的每一个。
什么流程特征最适合UML?描述每个特征。
什么是迭代?