基于UML的面向对象建模方法
- 格式:doc
- 大小:123.00 KB
- 文档页数:10
基于UML的图书管理系统的需求分析与设计摘要:本文对面向对象的概念、UML产生的背景及其基本内容进行了阐述,在对图书馆图书管理系统进行功能描述和需求分析的基础上,结合软件工程和面向对象需求分析,设计了基于UML的用例图、包图和顺序图,状态图等语言机制的图书馆图书管理系统模型。
关键词:UML;建模语言;面向对象;需求分析;图书管理系统1关于面向对象面向对象是一种的程序设计方法,或者说它是一种程序设计类型,其基本思想是使用对象,类,继承,封装,消息等基本概念来进行程序设计。
它是从现实世界中客观存在的事物(即对象)出发来构造软件系统,并在系统构造中尽可能运用人类的自然思维方式,强调直接以问题域(现实世界)中的事物为中心来思考问题,认识问题,并根据这些事物的本质特点,把它们抽象地表示为系统中的对象,作为系统的基本构成单位(而不是用一些与现实世界中的事物相关比较远,并且没有对应关系的其它概念来构造系统)。
这可以使系统直接地映射问题域,保持问题域中事物及其相互关系的本来面貌。
它可以有不同层次的理解:(1)从世界观的角度可以认为:面向对象的基本哲学是认为世界是由各种各样具有自己的运动规律和内部状态的对象所组成的;不同对象之间的相互作用和通讯构成了完整的现实世界。
因此,人们应当按照现实世界这个本来面貌来理解世界,直接通过对象及其相互关系来反映世界。
这样建立起来的系统才能符合现实世界的本来面目。
(2)从方法学的角度可以认为:面向对象的方法是面向对象的世界观在开发方法中的直接运用。
它强调系统的结构应该直接与现实世界的结构相对应,应该围绕现实世界中的对象来构造系统,而不是围绕功能来构造系统。
(3)从程序设计的角度来看,面向对象的程序设计语言必须有描述对象及其相互之间关系的语言成分。
这些程序设计语言可以归纳为以下几类:系统中一切皆为对象;对象是属性及其操作的封装体;对象可按其性质划分为类,对象成为类的实例;实例关系和继承关系是对象之间的静态关系;消息传递是对象之间动态联系的唯一形式,也是计算的唯一形式;方法是消息的序列。
面向对象的软件开发过程中的需求分析与建模研究第一章引言随着信息技术的快速发展,软件已逐渐成为了现代社会不可或缺的组成部分。
而软件开发过程中的需求分析与建模是确保软件开发质量的重要步骤,因此在面向对象的软件开发中,需求分析与建模研究具有重要的意义和价值。
本文将从面向对象的软件开发出发,介绍需求分析和建模的概念、方法和工具,并重点探讨基于面向对象的软件开发过程中的需求分析与建模研究。
第二章面向对象的软件开发面向对象的软件开发是一种软件开发方法,它以对象为中心,实现了软件的高内聚、低耦合和易维护性,具有较高的开发效率和软件重用性。
在面向对象的软件开发中,需求分析和建模是其中的关键环节。
基于面向对象的软件开发过程主要包括以下几个阶段:1.需求分析阶段。
在该阶段中,需求分析人员将收集和分析用户和系统需求,以确定软件开发的需求和目标。
2.设计阶段。
在设计阶段中,设计人员将根据需求分析阶段的结果,设计面向对象的软件系统架构和对象模型。
3.编码和测试阶段。
在这个阶段中,开发人员将根据设计人员的指示开发代码和进行测试,以确保软件能够按要求正确运行。
4.部署和维护阶段。
在这个阶段中,开发人员将软件部署到用户环境中,并进行维护和修复错误。
在整个软件开发过程中,需求分析和建模是相互关联、相互作用的关键环节。
第三章需求分析与建模基础知识3.1 需求分析需求分析是软件开发的首要任务,它是确保软件开发符合用户需求的前提条件。
需求分析包括两个方面,即功能需求和非功能需求。
1.功能需求功能需求是软件开发中最基本的需求,它是用户对软件功能的具体要求。
在软件开发中,功能需求可以通过用例图、活动图、状态图和顺序图等方法进行描述和分析。
2.非功能需求非功能需求是软件开发中的另一个重要因素,它主要描述软件的性能、可靠性、安全性、可维护性和可移植性等方面的要求。
常用方法包括场景模型、质量属性树和系统特征模型等。
3.2 需求建模需求建模是将需求分析的结果转换为相应的模型,以便于软件设计和开发人员的理解和使用。
基于UML的图书馆管理系统建模设计一、摘要面向对象的软件工程,同传统的面向过程的软件工程相比,在需求的获取、系统分析、设计和实现方面都有着很大的区别.UML是OOA和OOD的常用工具。
使用UML来构建软件的面向对象的软件工程的过程,就是一个对系统进行不断精化的建模的过程。
这些模型包括用例模型、分析模型、设计模型,然后,我们需要使用具体的计算机语言来建立系统的实现模型。
当然,在整个软件工程中,我们还需要建立系统的测试模型,以保证软件产品的质量.使用面向对象的工具来构建系统,就应该使用面向对象的软件工程方法。
然而,我们经常会发现,在实际的开发过程中,很多开发人员虽然能够理解UML的所有图形,却仍然不能得心应手的使用UML来构建整个项目,其很大的原因,是仍然在使用原有的软件工程方法,而不清楚如何使用UML来建立系统的这些模型,不清楚分析和设计的区别,以及他们之间的转化.应用软件系统,就其本质来说,是使用计算机对现实世界进行的数字化模拟。
应用软件的制造过程,按照UML的方法,就是建立这一系列模型的过程。
关于这个图书馆系统,基本的需求比较简单,就是允许学生可以在图书馆借阅和归还图书,另外,也可以通过网络或者图书馆的终端来查阅和预订书。
当然,图书馆管理员也可以对图书进行管理.为了简化系统,我们没有把图书馆中的人员作细分。
本文只是对使用UML的过程做一个探讨,着眼于使用UML进行建模的过程,说明各个层次的模型之间的区别和联系,展示系统演进的过程,而不会深入UML的细节方面.对于更加复杂的系统,其分析和设计的方法是相通的,可以举一反三。
二、图书馆管理系统可行性分析随着政府机关与广大企事业单位内部网络的广泛建立,在通用信息平台上构筑高效实用的协同工作和自动化办公应用系统,满足信息高度共享和即时发布的需求,有效实现内部知识管理,已成为众多用户的共同需求.图书管理系统,为政府机关与广大企事业单位自动化办公提供了一个较好的解决方案.在开发过程中,按照软件工程的步骤,从设计到开发采用了面向对象的思想和技术,采用了SQL SERVER 2000数据库,使得本系统可以方便的和其他子系统进行数据交换。
基于面向对象UML模型分析作者:张海飞来源:《武汉科技报·科教论坛》2013年第11期【摘要】面向对象的方法一般都是经过对对象的分析、抽象,建立对象之间的关系,只是每一种方法都有其应用背景和侧重点。
UML语言是一个复杂、庞大的系统建模语言。
其目标是希望能够解决整个面向对象软件开发过程中的可视化建模。
在软件工程具体实践中,不论是在系统需求阶段,还是在对象的分析与设计、软件的实现与测试阶段,都需要有一种能提供清晰的表达方法和完善的工具,便于建立起相应的软件模型。
UML具备这种特性。
【关键词】面向对象;UML;元模型面向对象技术(OO)是一种非常实用的软件开发技术,是为了增强软件系统的稳定性、可重用性和可修改性开发出来的一款软件工具,具有方法的连续性、唯一性的特性,并把面向对象分析和设计、编程集成到软件存活周期的对应阶段。
UML是元模型层的表述语言,它的实例包括模型层,也能够直接对应OO语言中的类、类型、消息、继承、聚集和接口。
模型限制了对象的属性、操作和聚集。
采用表示法系统对其所表达的层次叫模型层。
一个系统常常是多个模型的聚集、相互结合和通信的组合。
需要一种手段组成各个模型,因此把属性、结合、操作、通信进一步抽象为行为元素和结构元素来表达模型,并且提供表达系统的机制,这一层称为元(Meta)模型层。
UML表示法的最上层是元-元模型层。
为了和OMG组的元对象设施(MOF)提供的元-元模型一致,UML的元模型体系结构直接从MOF的元模型生成。
用户通过UML提供的表示法构造自己系统的元模型,尤其是以图形表示模型元素时,但其语法解释不准确。
因此UML提供形式化语言OCL(对象约束语言)以一阶谓词逻辑模型描述各种约束。
事实上,UML是软件工程中形式化规格说明语言研究的派生。
因为,只有形式规格说明描述的软件体系结构在其各开发阶段中才能保证语义的一致性。
UML在给出自身的语义说明时对于每个包都给出三个层次的说明,即抽象的语法、良构的规则和语义。
1. 简述面向对象软件开发方法的优点。
答:●把软件系统看成是各种对象的集合,这更接近人类的思维方式。
●软件需求的变动往往是功能的变动,而功能的执行者——对象一般不会有大的变换。
这使得按照对象设计出来的系统结构比较稳定。
●对象包括属性(数据)和行为(方法),对象把数据和方法的具体实现方式一起封装起来,这使得方法和与之相关的数据不再分离,提高了每个子系统的相对独立性,从而提高了软件的可维护性。
●支持封装,抽象,继承和多态,提高了软件的可重用性,可维护性和可扩展性。
2. 基于UML的面向对象系统开发方法包括哪几步?答:基于UML的面向对象系统开发方法也可以分为如下步骤:(1)系统需求分析—用用户能懂的语言描述用户需求;(2)系统分析—用开发人员的语言描述用户需求,获得类图和对象图,作为构造系统的分析模型;(3)系统设计—用编程语言或接近编程语言的语言来更精确地描述类图和对象图,为后面能将类图和对象图映射到编码实现的系统做好准备。
(4)系统实现—用源代码、脚本语言、二进制代码、可执行子程序或组件实现系统。
3. 简述面向对象技术的三大机制。
答:(1)封装性所谓封装就是把对象的属性和行为结合成一个独立的单位,使外界不能直接访问或修改这些数据和代码,外界只能通过对象提供的接口函数来改变或获取对象的属性数据,这就实现了消息隐蔽。
(2)继承性如果在一个已定义的类上,增加一些特殊属性或操作,可以形成一个新的类,这个类不仅继承了前一个类的全部特征,而且具有新的特性,因此可看作前一个类的特例,是对前一个类的继承。
前一个类称为父类,新产生的类叫做子类。
通过继承关系可形成一种类层次结构,叫做继承结构。
(3)多态性在类层次结构的不同类中,可用相同的函数名实现功能不同的函数。
4. 简述OOA模型的层次结构。
答:OOA模型采用五层次结构,它们分别是:(1)对象-类层划分待开发系统及其环境信息的基本构造单位,标出反映问题域的对象和类,并用符号进行规范的描述,用信息提供者熟悉的术语为对象和类命名。
基于UML面向对象的系统分析设计方法研究1、引言UML是一种编制系统蓝图的标准化语言,可以实现大型复杂系统各种成分描述的可视化、说明并构造系统模型,以及建立各种所需的文档,它是一种定义良好、易于表达、功能强大且普遍适用的建模语言。
UML的发展对软件工程的发展做出了杰出的贡献。
UML支持从需求分析开始的软件开发的全过程。
UML通过三类图形建立系统模型:用例(Use Case)图、静态结构图(对象类图、对象图、组件图、配置图)和动态行为图(顺序图、协同图、状态图、活动图),这些图可以从不同的抽象角度实现系统的可视化。
URM的发展经历了以下几个阶段。
最初的阶段是专家的联合行动,由三位OO(面向对象)方法学家[8]将他们各自的方法结合在一起,形成UML 0.9。
第二阶段是公司的联合行动,由十几家公司组成的“UML 伙伴组织”将各自的意见加入UML,形成UML 1.0和1.1,并作为向OMG申请成为建模语言规范的提案。
第三阶段是在OMG控制下的修订与改进,OMG于11月正式采纳UML 1.1作为建模语言规范,然后成立任务组进行不断的修订,并产生了UML 1.2、1.3和1.4版本,其中UML 1.3是较为重要的修订版。
目前正处于UML的重大修订阶段,目标是推出UML 2.0,作为向ISO提交的标准提案。
1.1 UML的特点UML具有以下特点[1]:(1)面向对象。
UML支持面向对象技术的主要概念,提供了一批基本的模型元素的表示图形和方法,能简洁明了地表达面向对象的各种概念。
(2)可视化,表示能力强。
通过UML的模型图能清晰地表示系统的逻辑模型和实现模型。
可用于各种复杂系统的建模。
(3)独立于过程。
UML是系统建模语言,独立于开发过程。
(4)独立于程序设计语言。
用UML建立的软件系统模型可以用Java、VC++、SmalltaIk等任何一种面向对象的程序设计来实现。
(5)易于掌握使用。
UML图形结构清晰,建模简洁明了,容易掌握使用。
UML的九种模型图本⽂转⾃,仅供学习交流!⼀、作为⼀种建模语⾔,UML的定义包括UML语义和UML表⽰法两个部分。
UML语义:描述基于UML的精确元模型定义。
UML表⽰法:定义UML符号的表⽰法,为开发者或开发⼯具使⽤这些图形符号和⽂本语法为系统建模提供了标准。
这些图形符号和⽂字所表达的是应⽤级的模型,在语义上它是UML元模型的实例。
⼆、标准建模语⾔UML可以由下列5类图来定义。
⽤例图:从⽤户⾓度描述系统功能,并指出各功能的操作者。
静态图:包括类图和对象图。
类图描述系统中类的静态结构,不仅定义系统中的类,表⽰类之间的联系,如关联、依赖、聚合等,也包括类的属性和操作,类图描述的是⼀种静态关系,在系统的整个⽣命周期都是有效的。
对象图是类图的实例,⼏乎使⽤与类图完全相同的标识。
⼀个对象图是类图的⼀个实例。
由于对象存在⽣命周期,因此对象图只能在系统某⼀时间段存在。
⾏为图:描述系统的动态模型和组成对象间的交互关系,包括状态图和活动图。
状态图描述类的对象所有可能的状态以及事件发⽣时状态的转移条件,状态图是对类图的补充,活动图描述满⾜⽤例要求所要进⾏的活动以及活动间的约束关系,有利于识别并进⾏活动。
交互图:描述对象间的交互关系,包括时序图和协作图。
时序图显⽰对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显⽰对象之间的交互;协作图描述对象间的协作关系,协作图跟时序图相似,显⽰对象间的动态合作关系。
除显⽰信息交换外,协作图还显⽰对象以及它们之间的关系。
如果强调时间和顺序,则使⽤时序图;如果强调上下级关系,则选择协作图。
实现图:包括组件图和部署图。
组件图描述代码部件的物理结构及各部件之间的依赖关系,组件图有助于分析和理解部件之间的相互影响程度;部署图定义系统中软硬件的物理体系结构。
采⽤UML来设计系统时,第⼀步是描述需求;第⼆步根据需求建⽴系统的静态模型,以构造系统的结构;第三步是描述系统的⾏为。
其中在第⼀步与第⼆步中所建⽴的模型都是静态的,包括⽤例图、类图、对象图、组件图和部署图等5种图形,是标准建模语⾔UML的静态建模机制。
UML建模课程设计目录1 引言 (4)2 UML概述 (4)2.1 UML简介 (4)2.2 UML模型图的构成 (4)2.3UML事物 (4)2.3.1构件事物 (5)2.3.2行为事物 (5)2.3.3分组事物 (5)2.3.4注释事物 (6)2.4 UML图及特征 (6)2.4.1 用例图 (6)2.4.2 类图 (6)2.4.3 对象图 (6)2.4.4 时序图 (6)2.4.5 协作图 (7)2.4.6状态图 (7)2.4.7活动图 (7)2.4.8组件图 (7)2.4.9配置图 (8)3 UML结合实例分析 (8)3.1 需求分析 (8)3.1.1系统开发需求 (8)3.1.2系统功能需求 (8)3.2 UML建模分析 (9)3.2.2类图 (10)3.2.3 活动图 (11)3.2.4 顺序图 (12)3.2.5 协作图 (13)3.2.6 状态图 (14)3.2.7 组件图 (15)3.2.8 部署图 (15)4 总结 (16)1 引言建模是开发优秀软件所有活动的核心部分。
在开发中利用UML来编制系统蓝图,并与仓库管理系统开发的特色相结合,提出了自己的一套UML的建模过程。
基于这个过程来进行系统的分析,设计,实现与测试。
运用UML建模思想与各种模型对仓库管理系统进行详细的描述。
2 UML概述2.1 UML简介UML (Unified Modeling Language)为面向对象软件设计提供统一的、标准的、可视化的建模语言。
适用于描述以用例为驱动,以体系结构为中心的软件设计的全过程。
UML的定义包括UML语义和UML表示法两个部分。
UML语义:UML对语义的描述使开发者能在语义上取得一致认识,消除了因人而异的表达方法所造成的影响。
UML表示法:UML表示法定义UML符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。
2.2 UML模型图的构成事物(Things):UML模型中最基本的构成元素,是具有代表性的成分的抽象关系(Relationships):关系把事物紧密联系在一起图(Diagrams ):图是事物和关系的可视化表示2.3UML事物UML语言的事物,包括四类:结构事物:语言的静态构成要素,有7种:类和对象、接口、主动类、用例、协作、构件、节点。
基于UML的面向对象建模方法姓名: 赵付轩学号: 10041156专业: 信号与信息处理学院: 信息科学与技术学院基于UML的面向对象建模方法摘要:本文介绍了一种基于UML(统一建模语言)的网上报名系统。
首先对UML语言进行了简单说明,其次根据UML建模过程对网上报名系统进行了需求分析,构建了用例图、类图两个模型,最后根据该模型开发了大学英语四六级考试报名系统,该系统具有可操作性强、扩展性好、效率高的优点。
关键词:UML;网上报名;面向对象目录1 引言 (1)1.1 UML概述 (1)2 面向对象原理 (1)2.1 基本概念 (1)2.2 基本特征 (2)3 运用UML进行系统建模 (2)3.1 UML建模机制、步骤 (2)4 网上报名系统的UML建模 (3)4.1 需求分析 (3)4.2 分析与设计 (4)4.2.l 静态建模 (4)4.2.2 动态建模 (5)5 结语 (6)参考文献 (6)1 引言面向对象方法已经成为软件开发的主要方法,面向对象的分析方法以对象作为分析问题,解决问题的核心,并对问题空间进行直接映射,使计算机实现的对象与真实世界具有一一对应关系,符合人类认识规律,有效地解决了需求分析模型和软件设计模型的不匹配现象。
由于采用了数据抽象和封装技术,面向对象的程序设计降低了各模块间的耦合,可实现较高的代码利用率。
基于UML建模技术可以进行面向对象的分析、设计、编程、测试以及面向对象的软件过程,它以统一建模语言作为分析工具,利用面向对象的思想对问题域进行建模。
本文针对建模的方法和技术进行了讨论,并结合实例加以说明。
1.1 UML概述统一建模语言是用来对软件密集系统进行可视化建模的一种语言。
它是面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。
UML具有庞大的体系结构和丰富的内容。
不仅融合了Booch、OMT、OOSE方法的核心内容,同时也吸取了其他面向对象方法中的优势。
(此文档为word格式,下载后您可任意编辑修改!)《面向对象分析与设计UML》实验报告实验及作业一一、实验目的了解软件工程等基础知识,为后续的统一建模语言UML知识的学习做好准备工作。
二、实验设备与环境装有Visio、RationalRose的计算机。
三、实验内容1、复习阐述“软件工程开发模型”的相关概念,并分析各种模型的优缺点,写成实验报告。
2、熟悉UML软件设计工具Visio、Rational Rose的安装及环境四、实验过程及结果经过上网搜索相关信息进行了解软件工程开发模型的相关概念与优缺点一,什么是软件工程概念模型模型就是抽象,就是有意识地忽略事物的某些特征。
抽象带来的好处是能够反映模型中元素之间的关系,清晰把握大局。
概念模型是模型的一种,简单说就是抽象程度极高的一种模型。
软件工程概念模型是对软件工程领域进行抽象描述的模型,它能够使我们对软件工程有一个完整把握。
二,软件工程开发模型的种类以及优缺点瀑布模型由W.Royce于1970年首先提出。
根据软件工程生存周期各个阶段的任务,瀑布模型从可行性研究开始,逐步进行阶段性变换,直至通过确认测试并得到用户确认的软件产品为止。
瀑布模型上一阶段的变换结果是下一阶段变换的输入,相邻两个阶段具有因果关系,紧密联系。
一个阶段的失误将蔓延到以后的各个阶段。
为了保障软件开发的正确性,每一阶段任务完成后,都必须对它的阶段性产品进行评审,确认之后再转入下一阶段的工作。
评审过程发现错误和疏漏后,应该及时反馈到前面的有关阶段修正错误或弥补疏漏,然后再重复前面的工作,直至某一阶段通过评审后再进入下一阶段。
瀑布模型如图1.1所示。
瀑布模型有许多优点,如可强迫开发人员采用规范的方法;严格规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证等。
但瀑布模型也存在缺点,其主要表现在:①在软件开发的初始阶段指明软件系统的全部需求是困难的,有时甚至是不现实的。
基于UML的面向对象建模方法姓名: 赵付轩学号: 10041156专业: 信号与信息处理学院: 信息科学与技术学院基于UML的面向对象建模方法摘要:本文介绍了一种基于UML(统一建模语言)的网上报名系统。
首先对UML语言进行了简单说明,其次根据UML建模过程对网上报名系统进行了需求分析,构建了用例图、类图两个模型,最后根据该模型开发了大学英语四六级考试报名系统,该系统具有可操作性强、扩展性好、效率高的优点。
关键词:UML;网上报名;面向对象目录1 引言 (1)1.1 UML概述 (1)2 面向对象原理 (1)2.1 基本概念 (1)2.2 基本特征 (2)3 运用UML进行系统建模 (2)3.1 UML建模机制、步骤 (2)4 网上报名系统的UML建模 (3)4.1 需求分析 (3)4.2 分析与设计 (4)4.2.l 静态建模 (4)4.2.2 动态建模 (5)5 结语 (6)参考文献 (6)1 引言面向对象方法已经成为软件开发的主要方法,面向对象的分析方法以对象作为分析问题,解决问题的核心,并对问题空间进行直接映射,使计算机实现的对象与真实世界具有一一对应关系,符合人类认识规律,有效地解决了需求分析模型和软件设计模型的不匹配现象。
由于采用了数据抽象和封装技术,面向对象的程序设计降低了各模块间的耦合,可实现较高的代码利用率。
基于UML建模技术可以进行面向对象的分析、设计、编程、测试以及面向对象的软件过程,它以统一建模语言作为分析工具,利用面向对象的思想对问题域进行建模。
本文针对建模的方法和技术进行了讨论,并结合实例加以说明。
1.1 UML概述统一建模语言是用来对软件密集系统进行可视化建模的一种语言。
它是面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。
UML具有庞大的体系结构和丰富的内容。
不仅融合了Booch、OMT、OOSE方法的核心内容,同时也吸取了其他面向对象方法中的优势。
在原有的面向对象概念和理论方法的基础上,创造和构建了许多全新的方法论,为采用面向对象方法进行工程分析与设计奠定了良好的基础,并提供了充分的理论依据和方法。
UML独立于开发过程,不仅可以与规范化的CASE工具配合使用,也可以在其他面向对象的开发过程中应用。
同时,UML语言独立于程序设计语言,用UML建立的软件系统模型可以采用多种面向对象开发语言进行实现。
2 面向对象原理2.1 基本概念概括地说,面向对象就是把问题抽象为对象,设置属性(数据),指定事件或处理方式以达到目的,并强调从问题域的概念到软件程序和界面的直接映射。
(1)对象:事物的抽象对象可以被定义为一个封装了状态和行为的实体,或者说是数据结构和操作。
所有对象都是类的实例。
(2)类:是具有相同特点的对象的集合,或者说,类是可用于产生对象的模版。
(3)消息:消息是对象通信的方式,也是获得功能的方式。
对象收到发给它的消息后,或者执行一个内部操作,或者再去调用其他对象的操作。
2.2 基本特征(1)封装:把数据结构同操作数据的过程衔接在一起,构成具有类的类型对象。
对象具有明确的功能,并有接口与其他对象相互调用,而对象的内部代码和数据是受保护的,别的对象不能访问。
这样,每一个对象就像一个部件一样,在任何可调用的程序中起作用,而其功能不变。
(2)继承:是面向对象编程的一个重要机制,编程者可以在原有的类基础上建立新类,实现代码的重复利用,提高开发效率。
类可以以一种层次结构来安排。
在这个层次结构中,子类可以从比它高的超类中继承得到状态和方法。
(3)多态性:描述的是如下现象。
如果几个子类都重新定义了超类的某个函数,当消息被发送到一个子类对象时,在执行时该消息会由于子类确定的不同而被解释为不同的操作。
一个给定的类可以从不止一个超类中继承,称之为多继承。
如果采用动态联编,继承就导致了多态性。
多态性具有灵活、抽象、行为共享、代码共享等优势。
3 运用UML进行系统建模3.1 UML建模机制、步骤UML是一种建立在现代抽象模型理论上的表示法体系结构,用户借助UML提供的视见元素构件可以设计和表达出复杂的面向对象软件的体系结构。
UML通过其模型元素的扩充机制来支持建立在域分析基础上的模型元素到视见元素的映射关系,并采用面向对象的机制来表达其本身的语法和语义。
UML建模机制可以归为静态建模和动态建模两大类。
从应用的角度看,采用面向对象技术设计系统时,建模主要有4个步骤:首先是描述需求;其次根据需求建立系统的静态模型,构造系统的静态结构;第3步是描述系统的动态行为,反映系统对象之间的动态关系;第4步是实现图,主要用于显示系统中各个功能部件之间的依赖关系和调用关系。
(1)类图:类图的目的是识别组成新系统的对象并进行分类。
在类图中,还要识别每个需要记录对象的属性或特征和操作,同时需要体现类之间的关系,因此类图描述了系统的静态模型。
(2)用例图:用例图使用参与者、用例及其关系描述实体功能。
用例图的目的是识别新系统的使用或用例,即识别如何使用系统。
(3)顺序图和协作图:顺序图和协作图都称交互图,用于参与元素间捕获协作和交互模式,它们都显示了对象之间的交互信息,但各自的侧重点有所不同。
顺序图通过使用类或对象交互的临时焦点描述系统的动态行为,它以图形化的方式强调信息间的顺序。
(4)状态图:状态图通过状态和转换,描述实体的动态行为,以及组成实体的元素的状态条件、响应和动作。
每一个对象类都含有一个状态图表,它描述了每个对象的状态和行为。
状态图、协作图和顺序图三者一起共同描述了系统的动态模型。
在系统的静态和动态模型以及功能模型中,功能模型是系统的核心,它驱动着其他两个模型的开发。
因此,可以采用如下建模过程:首先是系统需求;随后,分析与设计,建立系统的用例图;接着,建立系统的静态结构模型,并将系统的功能需求分解到各个对象类,确定各个对象类的责任;然后,建立系统的动态行为模型。
下面以一网上报名系统的面相对象分析为例,介绍运用UML进行面向对象的分析过程。
4 网上报名系统的UML建模为了对在软件系统开发中应用UML有一个直观清晰的了解,考虑了一个非常简单、理想化的软件开发周期,包括3个阶段:需求、分析和设计、实现。
通过以一个网上报名系统为例来描述UML的建模过程。
4.1 需求分析需求分析是系统设计的第一步.是整个系统成功实现的基础。
只有真正做好需求分析。
才能真正了解客户的需要。
才能指导好下一步的工作.整个软件的实施是建立在需求所分析出的各项功能上的。
需求模型用UML用例图进行描述。
用例图主要由参与者和用例组成,参与者就是用户相对于系统而言所扮演的角色,参与者总是期望使用系统所提供的功能.一个用例就是参与者对系统的一次使用。
本系统的用例图如图1所示。
系统的参与者有2个:考生和管理员。
报名考生需注册后才能开始填写报名信息.对于校内学生系统会自动提取出该学生的基本信息.考生只需在线选择报考的类别与等级就可以实现网上报名:管理员可以对考生基本信息、报名信息和成绩进行管理。
系统首先检查用户权限.如果是系统管理员.则可以录入成绩和查询所有考生成绩;若为考生,则只能查询本人的成绩。
网上报名系统用例图如图4-1所示。
图4-1 网上报名系统用例图4.2 分析与设计该系统的分析与设计模型包括静态模型和动态模型。
4.2.l 静态建模根据问题描述及用例.通过词法分析.抽取出系统的对象,进而画出实体类图,用以表示系统静态模型,通过分析网上报名系统,可以确定用户类、管理员类、考生类、监考老师类、报名类、考试类、考点类、成绩类等。
基类可以派生出若干个子类.父类和子类之间可以存在聚合、组合、泛懈化等关系,在本系统中.用户类是管理员类、考生类和监考老师类的泛化.考点类由考试类聚合而成。
系统部分实体类图如图2所示。
这里隐藏了类的属性和操作.用三角形符号表示父类一子类泛化联系。
菱形表示聚合联系。
连线代表一般联系。
网上报名系统类图如图4-2所示。
图4-2 网上报名系统类图4.2.2 动态建模建立静态模型后.为了表达系统的动态特征.需建立系统的动态模型。
动态模型可用顺序图表示。
顺序图描述了几个对象之间的动态合作关系.其重要性在于它非常直观地展示了对象之问传递消息的时间顺序.即在系统过程中某一时刻所发生的事情.因此它对于分析需要清楚表达顺序的过程十分有用。
4.3 网上报名系统的实现系统采用B/S和C/S相结合的体系结构.以Windows Server 2000作为服务器端操作系统。
系统的实现充分利用前台开发工具的面向对象编程特性(如继承、封装等)进行面向对象编程工作。
前台编程工具采用ASENET 2005,数据库服务器采用SOL Server 2005。
具体编程不再细述。
系统报名信息管理界面如图4-3所示。
图4-3 网上报名系统信息管理界面5 结语统一建模语言UML作为面向对象建模领域的事实上的工业标准,在软件系统的设计过程中有着其他现有工具不可比拟的优越性。
在这次项目管理信息系统的设计过程中.它被应用在了描述系统模块结构、静态类结构和系统行为等各个方面,对以后的系统实现过程起到了很好的指导作用。
通过支持UML的工具提供的自动代码生成工具,可以将用UML设计的部分成果直接转化成编程语言的代码框架,大大降低实现此编码过程中的工作量。
参考文献[1]SINAN Si Alhir.UML高级应用[MJ.韩宏志译.北京:清华大学出版社,2003.[2]LARMAN Craig.UML模式应用:面向对象分析与设计导论[M].姚淑珍,李虎译.北京:机械工业出版社,2002.[3]刘字翔.面向对象程序设计浅析[J].山西广播电视大学学报,2005.[4]Grady Booch.UML用户指南[M].邵维忠译.北京:机械工业出版社,2000.[5]冀振燕.UML系统分析设计与应用案例[M].北京:人民邮电出版社,2003.[6]马浩海,邵维忠。
麻志毅.UML 2.0评述[J].计算机科学,2004.[7]黄贤英.UML建模过程及在需求分析中的应用[J].计算机工程,2002.[8]正学龙,陈平.一种UML序列图到层次状态图合成方法[J].计算机应用,2004.[9]李云全,刘淑芬,申自浩.基于UML的系统建模[J].河南理工大学学报,2007.[10]申凯,王娟.统一建模语言UML的研究[J].软件导刊,2007.[11]白桂梅.结构化与面向对象分析方法之间关系的研究[J].电子技术,2009.[12]徐国庆,张彦铎,王海晖等.基于UML的工作流与正向工程实现研究[J].现代电子技术,2007.。