UML是一种通用建模语言,它本身具有的可扩展性使其不仅可以用于软件系统开发各个阶段的建模,也可以用于商业和其他几乎所有类型的建模。总体来说,UML由以下几个部分构成。模型元素UML中的模型元素包括事物以及事物之间的联系。通用机制UML提供的通用机制可以为模型元素提供额外的注释、信息或语义。UML的组成结构如图6-1所示。图6-1 UML结构图用例图和类图是面向对象系统开发的重点内容。......
2023-11-23
类图最直接的成效可以通过正向工程直接转化为程序代码,本节以当前流行的面向对象的程序设计语言Java为例,讲解类图的各个元素从UML到Java的映射方式。
1.类
如图9-14所示,类的映射是在class关键字后面加上类的名字,类的属性和操作出现在类体中。在UML中定义类属性和方法时,可见性、参数列表、返回类型用适当的修饰符进行修饰。
图9-14 类的映射方式
2.接口
接口的映射方式与类相似,不同的是用关键字“interface”修饰,并且接口中的方法都是抽象方法,只有方法签名,没有方法实现部分。如图9-15所示为接口的映射方式。
图9-15 接口的映射方式
3.依赖关系
两个类具有依赖关系,可以通过以下两种方式体现:
●作为其他类的属性。
●作为其他类方法的参数。
如图9-16所示,人依赖螺钉旋具修机器,映射到Java的代码如下。
图9-16 依赖关系示例
4.关联关系
关联、聚合和组合转换方法相似,都是转化为作用域的一个变量。但因为聚合和组合关系体现整体和部分的概念,所以只把作为部分角色的类用一个数组在整体类中体现。但根据关联关系的多重性,关联的两个类都会在对方类中有所体现。
如图9-17所示,类“公司”和类“职员”存在关联关系,映射成Java代码如下所示。
(www.chuimin.cn)
图9-17 关联关系示例
如图9-18所示,类“乐队”和类“成员”是聚合关系,映射为Java代码如下所示。
图9-18 聚合关系示例
如图9-19所示,类“公司”和类“部门”是组合关系,映射为Java代码如下所示。
图9-19 组合关系示例
5.泛化关系
如图9-20所示,泛化关系转换为extends关键字。
图9-20 泛化关系示例
6.实现关系
如图9-21所示,实现关系转换为implements关键字。
图9-21 实现关系示例
有关信息系统开发方法与实践教程的文章
UML是一种通用建模语言,它本身具有的可扩展性使其不仅可以用于软件系统开发各个阶段的建模,也可以用于商业和其他几乎所有类型的建模。总体来说,UML由以下几个部分构成。模型元素UML中的模型元素包括事物以及事物之间的联系。通用机制UML提供的通用机制可以为模型元素提供额外的注释、信息或语义。UML的组成结构如图6-1所示。图6-1 UML结构图用例图和类图是面向对象系统开发的重点内容。......
2023-11-23
信息系统的开发具有长期性、复杂性和风险性,需要科学的方法论作指导。常用的信息系统开发方法有结构化系统开发方法、面向对象系统开发方法和原型法三种。像决策支持系统这种具有开发性而无固定需求范围的系统,更适合用原型法进行开发。图1-15 原型法的开发过程本书的第2~5章主要讲述的是结构化的系统开发方法;第6~15章,主要介绍的是面向对象的系统开发方法。......
2023-11-23
用例是一组动作序列的描述,系统执行这些动作,并产生传递参与者意愿的可观察结果。用例的名字是一个字符串,分为简单名和路径名两种方式。用例Mainte nance是属于包Business的。基于这些参与者及其需求,通过回答前面的问题,可以建立如下用例:●记录成绩。......
2023-11-23
2)信息是帮助人们做出正确决策的知识。其中,数据是记录“客观事物”的,可以鉴别的非随机符号,它可以是字母、数字或其他符号,也可以是图形图像或声音等。......
2023-11-23
封装是面向对象方法的一个重要原则。封装即信息隐藏,它保证软件具有较好的模块性。可以说封装是所有主流信息系统方法学中的共同特征,它对于提高软件清晰度和可维护性,以及软件的分工有重要的意义。以下从两个方面来理解封装的含义。首先,当设计一个程序的总体结构时,程序的每个成分都应该封装或隐蔽为一个独立的模块。其次,封装表现在对象概念上。对象是一个很好的封装,它把数据和服务封装于一个内在的整体。......
2023-11-23
本节首先介绍用例图的基本概念。理解这些概念是正确绘制用例图的基础。用例使用系统与一个或多个参与者之间的一系列消息来描述系统间的交互。用例图由以下元素组成:●参与者:也称为角色,它代表系统的用户。画用例图时,有时并不画出系统边界,但边界却是存在的。用例图可以包含注释和约束,还可以包含包,用于将模型中的元素组合成更大的模块。图8-1 用例图示例在需求分析中,用例图只说明系统具有哪些功能,不必说明如何实现。......
2023-11-23
参与者通过向系统输入或请求系统输入某些事件来触发系统的执行。1)参与者是真实的人(即用户),这是每个系统中最常用的参与者。在UML中,用空心的三角箭头表示参与者间的泛化关系,箭头指向扮演一般角色的参与者。图8-3 ATM系统的参与者图8-4 参与者间的泛化关系......
2023-11-23
过去十几年中,人们逐渐从面向过程、面向数据的建模转换到面向对象的建模,即采用了面向对象分析和设计的方法。面向对象语言的发展大大减轻了软件开发的难度,提高了开发效率。面向对象分析的主要任务是分析问题空间的主要目标和功能,寻找存在的对象,找出这些对象的特征和责任,以及对象间的关系,并由此产生一个完整表达系统需求的规格说明——“做什么”的描述。......
2023-11-23
相关推荐