UML及软件建模 主讲人:李唯 Clx7000@163.com
Page 1 UML及软件建模 主讲人 :李 唯 clx7000@163.com
第三章在建模过程中运用UML
Page 2 第十三章 在建模过程中运用UML
1模型 这一节将解释什么是模型,模型有何用途以及如何使用模 型 这一节还要解释模型的不同层次:理想的,部分的和基于 工具的
Page 3 1、模型 这一节将解释什么是模型,模型有何用途以及如何使用模 型。 这一节还要解释模型的不同层次:理想的,部分的和基于 工具的
什么是模型 模型是用某种工具对同类或其他工具的表达方式。模型从 某一个建模观点出发,抓住事物最重要的方面而简化或忽 略其他方面。工程、建筑和其他许多需要具有创造性的领 域中都使用模型。 表达模型的工具要求便于使用。建筑模型可以是图纸上所 绘的建筑图,也可以是用厚纸板制作的三维模型,还可以 用存于计算机中的有限元方程来表示。一个建筑物的结构 模型不仅能够展示这个建筑物的外观,还可以用它来进行 工程设计和成本核算。 软件系统的模型用建模语言来表达,如UML。模型包含语 义信息和表示法,可以采取图形和文字等多种不同形式。 建立模型的目的是因为在某些用途中模型使用起来比操纵 实物更容易和方便
Page 4 ◼ 模型是用某种工具对同类或其他工具的表达方式。模型从 某一个建模观点出发,抓住事物最重要的方面而简化或忽 略其他方面。工程、建筑和其他许多需要具有创造性的领 域中都使用模型。 ◼ 表达模型的工具要求便于使用。建筑模型可以是图纸上所 绘的建筑图,也可以是用厚纸板制作的三维模型,还可以 用存于计算机中的有限元方程来表示。一个建筑物的结构 模型不仅能够展示这个建筑物的外观,还可以用它来进行 工程设计和成本核算。 ◼ 软件系统的模型用建模语言来表达,如UML。模型包含语 义信息和表示法,可以采取图形和文字等多种不同形式。 建立模型的目的是因为在某些用途中模型使用起来比操纵 实物更容易和方便。 1.1、什么是模型
2、模型的用途 模型有多种用途 1)精确捕获表达项目的需求和应用领域中的知识,以 使各方面的利益相关者能够理解并达成一致。 建筑物的各种模型能够准确表达出这个建筑物在外观、交通、服务 设施、抗风和抗震性能,消费及其他需求。各方面的利益相关者则包括 建筑设计师、建筑工程师、合同缔约人、各个子项目的缔约人、业主、 出租者和市政当局。 软件系统的不同模型可以捕获关于这个软件的应用领域、使用方 法、试题手段和构造模式等方面的需求信息。各方面的利益相关者包括 软件结构设计师、系统分析员、程序员、项目经理、顾客、投资者、最 终用户和使用软件的操作员。在UM中要使用各种各样的模型
Page 5 1.2、模型的用途 模型有多种用途 (1) 精确捕获表达项目的需求和应用领域中的知识,以 使各方面的利益相关者能够理解并达成一致。 建筑物的各种模型能够准确表达出这个建筑物在外观、交通、服务 设施、抗风和抗震性能,消费及其他需求。各方面的利益相关者则包括 建筑设计师、建筑工程师、合同缔约人、各个子项目的缔约人、业主、 出租者和市政当局。 软件系统的不同模型可以捕获关于这个软件的应用领域、使用方 法、试题手段和构造模式等方面的需求信息。各方面的利益相关者包括 软件结构设计师、系统分析员、程序员、项目经理、顾客、投资者、最 终用户和使用软件的操作员。在UML中要使用各种各样的模型
)进行系统设计 建筑设计师可以用画在图纸上的模型图、存于计算机 中的模型或实际的三维模型使自己的设计结果可视化,并用 这些模型来做设计方面的的试验。建造、修改一个小型模型 比较简单,这使得设计人员不需花费什么代价就可以进行创 造和革新 在编写程序代码以前,软件系统的模型可以帮助软件开 发人员方便地研究软件的多种构架和设计方案。在进行详细 设计以前,一种好的建模语言可以让设计者对软件的构架有 全面的认识
Page 6 (2)进行系统设计 建筑设计师可以用画在图纸上的模型图、存于计算机 中的模型或实际的三维模型使自己的设计结果可视化,并用 这些模型来做设计方面的的试验。建造、修改一个小型模型 比较简单,这使得设计人员不需花费什么代价就可以进行创 造和革新。 在编写程序代码以前,软件系统的模型可以帮助软件开 发人员方便地研究软件的多种构架和设计方案。在进行详细 设计以前,一种好的建模语言可以让设计者对软件的构架有 全面的认识
)使具体的设计细节与需求分开 建筑物的某种模型可以展示出符合顾客要求的外观。另 类模型可以说明建筑物内部的电气线路、管线和通风管道 的设置情况。实现这些设置有多种方案。最后确定的建筑模 型一定是建筑设计师认为最好的一个设计方案。顾客可以对 此方案进行检查验证,但通常顾客对具体的设计细节并不关 只要能满足他们的需要即可 软件系统的一类模型可以说明这个系统的外部行为和系 统中对应于真实世界的有关信息,另一类模型可以展示系统 中的类以及实现系统外部行为特性所需要的内部操作。实现 这些行为有多种方法。最后的设计结果对应的模型一定是设 计者认为最好的一种
Page 7 (3)使具体的设计细节与需求分开 建筑物的某种模型可以展示出符合顾客要求的外观。另 一类模型可以说明建筑物内部的电气线路、管线和通风管道 的设置情况。实现这些设置有多种方案。最后确定的建筑模 型一定是建筑设计师认为最好的一个设计方案。顾客可以对 此方案进行检查验证,但通常顾客对具体的设计细节并不关 心,只要能满足他们的需要即可。 软件系统的一类模型可以说明这个系统的外部行为和系 统中对应于真实世界的有关信息,另一类模型可以展示系统 中的类以及实现系统外部行为特性所需要的内部操作。实现 这些行为有多种方法。最后的设计结果对应的模型一定是设 计者认为最好的一种
生成有用的实际产品 建筑模型可以有多种相关产品,包括建筑材料清单 在各种风速下建筑物的偏斜度、建筑结构中各点的应 力水平等。 利用软件系统的模型,可以获得类的声明、过程体、用 户界面、数据库、合法使用的说明、配置草案以及与其 他单位技术竞争情况的对比说明
Page 8 (4)生成有用的实际产品 建筑模型可以有多种相关产品,包括建筑材料清单 、在各种风速下建筑物的偏斜度、建筑结构中各点的应 力水平等。 利用软件系统的模型,可以获得类的声明、过程体、用 户界面、数据库、合法使用的说明、配置草案以及与其 他单位技术竞争情况的对比说明
(5)组织、查找、过滤、重获、检查以及编辑大型系统的 有关信息。 建筑模型用服务设施来组织信息:建筑结构、电器、管 道、通风设施、装潢等等。除非利用计算机存储,否则对这 些信息的查找和修改没那么容易。相反,如果整个模型和相 关信息均存储在计算机中,则这些工作很容易进行,并且可 方便地研究多种设计方案,这些设计方案共享一些公共信息 软件系统用视图来组织信息:静态结构视图、状态机视 图、交互视图、反映需求的视图等等。每一种视图均是针对 某一目的从模型中挑选的一部分信息的映射。没有模型管理 工具的支持不可能使模型做得任意精确。一个交互视图编辑 工具可以用不同的格式表示信息,可以针对特定的目的隐藏 暂时不需要的信息并在以后再展示出来,可以对操作进行分 组、修改模型元素以及只用一个命令修改一组模型元素等等
Page 9 (5)组织、查找、过滤、重获、检查以及编辑大型系统的 有关信息。 建筑模型用服务设施来组织信息:建筑结构、电器、管 道、通风设施、装潢等等。除非利用计算机存储,否则对这 些信息的查找和修改没那么容易。相反,如果整个模型和相 关信息均存储在计算机中,则这些工作很容易进行,并且可 方便地研究多种设计方案,这些设计方案共享一些公共信息 。 软件系统用视图来组织信息:静态结构视图、状态机视 图、交互视图、反映需求的视图等等。每一种视图均是针对 某一目的从模型中挑选的一部分信息的映射。没有模型管理 工具的支持不可能使模型做得任意精确。一个交互视图编辑 工具可以用不同的格式表示信息,可以针对特定的目的隐藏 暂时不需要的信息并在以后再展示出来,可以对操作进行分 组、修改模型元素以及只用一个命令修改一组模型元素等等
6)经济地研究多种设计过程中的解决方案 对同一建筑的不同设计方案的利弊在一开始可能不很清 楚。例如,建筑物可以采用的不同的子结构彼此之间可能有 复杂的相互影响,建筑工程师可能无法对这些做出正确的评 价。在实际建造建筑物以前,利用模型可以同时研究多种设 计方案并进行相应的成本和风险估算。 通过研究一个大型软件系统的模型可以提出多个实际方 案并可以对它们进行相互比较。当然模型不可能做得足够精 细,但即使一个粗糙的模型也能够说明在最终设计中所要解 决的许多问题。利用模型可以研究多种设计方案,所花费的 成本只是实现其中一种方案所花费的成本
Page 10 (6)经济地研究多种设计过程中的解决方案 对同一建筑的不同设计方案的利弊在一开始可能不很清 楚。例如,建筑物可以采用的不同的子结构彼此之间可能有 复杂的相互影响,建筑工程师可能无法对这些做出正确的评 价。在实际建造建筑物以前,利用模型可以同时研究多种设 计方案并进行相应的成本和风险估算。 通过研究一个大型软件系统的模型可以提出多个实际方 案并可以对它们进行相互比较。当然模型不可能做得足够精 细,但即使一个粗糙的模型也能够说明在最终设计中所要解 决的许多问题。利用模型可以研究多种设计方案,所花费的 成本只是实现其中一种方案所花费的成本