(计算机软件与理论专业论文)基于uml的全程建模研究与应用.pdf_第1页
(计算机软件与理论专业论文)基于uml的全程建模研究与应用.pdf_第2页
(计算机软件与理论专业论文)基于uml的全程建模研究与应用.pdf_第3页
(计算机软件与理论专业论文)基于uml的全程建模研究与应用.pdf_第4页
(计算机软件与理论专业论文)基于uml的全程建模研究与应用.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

(计算机软件与理论专业论文)基于uml的全程建模研究与应用.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中山大学硕士学位论文 基于u m l 的全程建模研究与应用 专业:计算机软件与理论 硕士生:马国勤 指导老师:李师贤教授 摘要 统一建模语言( u n i f i e dm o d e l i n gl a n g u a g e ,u m l ) 是一种通用的、可视化标准 建模语言,是面向对象的系统开发工具之一,它适用于各种软件开发方法、软件 生命周期的各个阶段。 2 d e f ( i n t e g r a t e di d e f ) 建模方法又称全程建模方法,它 全面支持系统调查、系统分析和设计等各个阶段的建模,实现了软件开发从分析 向设计阶段的平稳过渡:结构建模、动态建模和功能建模三位体,可全面地对 系统进行描述。因此,研究基于u m l 的全程建模具有重要的意义。 本文对用u m l 实现全程建模进行了研究,并提出了一套基于u m l 的全程建模 方法。该方法重点从以下四个方面进行了有益的探索: 一、在结构模型中增加界面建模,利用界面建模与用户沟通,以消除用户与开 发方的信息不对称,实现结构模型的迭代开发。 二、用u m l 的交互综述图描述动态模型,即将活动图中的控制流和顺序图中 的消息结合在一起描述业务流程,以便用户直观地判断软件开发人员描述的业务 流程的币确性和完整性,实现动态模型的迭代开发。 三、在功能模型中增加类的详细设计模型,即采用活动图说明类的详细实现过 程,为开发人员提供直接到位的编程素材。 四、将类的设计贯穿于整个建模过程中,即在结构模型中获取分析类,在动态 模型中整理分析类,再由此映射出设计类,从而建立功能模型,实现了三种模型 之间的连贯性和一致性。 最后,本文通过一个具体的实例应用了上述建模方法,并将此应用与同类应用 进行了分析比较。结果表明,本文提出的基于u m l 的全程建模方法能全面完整地 描述系统;解决了模型连贯性和一致性的问题;对全程建模方法应用的推广具有 促进作用。 关键词:u m l1 2 d e f 建模方法全程建模 苎三! 坚! 堕全堡垄堡堑窒皇壅旦 r e s e a r c ha n d a p p l i c a t i o no fu m l - b a s e d f u l lp r o c e s sm o d e l i n g m a j o r n a r n e c o m p u t e r s c i e n c e m a g u o q i n s u p e r v i s o r :p r o f e s s o r l is h i x i a n a b s t ra c t t h eu n i f l e dm o d e l i n gl a n g u a g er u m l li sau n i v e r s a lv i s u a l i z e ds t a n d a r d m o d e l i n gl a n g u a g e ,o n eo ft h eo b j e c t o r i e n t e ds y s t e md e v e l o p m e n tt o o l s ,w h i c hc a l lb e a p p l i e dt oa l lk i n d so fs o f t w a r ed e v e l o p m e n tm e t h o d sa n dv a r i o u ss t a g e so ft h es o f t w a r e l i f ec i r c l e i n t e g r a t e di d e f ( i z d e f ) c a l l e df u l lp r o c e s sm o d e l i n gm e t h o d ,f u l l ys u p p o r t t h em o d e l i n gi nd i f f e r e n ts t a g e so fs y s t e ms u r v e y , s y s t e ma n a l y s i sa n ds y s t e md e s i g n , r e a l i z i n gt h es m o o t ht r a n s i t i o no fs o f t w a r ed e v e l o p m e n tf r o ma n a l y s i ss t a g et od e s i g n s t a g e t h ei n t e g r a t i o no fs t r u c t u r em o d e l i n g d y n a m i cm o d e l i n ga n df u n c t i o nm o d e l i n g c a nf u l l yd e s c r i b et h es y s t e m t h e r e f o r e “i so fg r e a ts i g n i f i c a n c et or e s e a r c h u m l - b a s e d1 2 d e fm o d e l i n g t m st h e s i si n v e s t i g a t e st h eu m lb a s e df u l lp r o c e s sm o d e l i n ga n dp r e s e n t sau m l b a s e df u l lp r o c e s sm o d e l i n gm e t h o d n ea u t h o rs u g g e s t st h a tt h ei n t e r f a c em o d e l i n gb e a d d e dt ot h es t r u c t u r em o d e l i n ga n du s ei tt oc o m m u n i c a t ew i t hu s e r ss oa st oc l e a ru p t h ei n f o r m a t i o na s y m m e t r yb e t w e e nt h eu s e r sa n dd e v e l o p e r sa n dr e a l i z ei t e r a t i v e d e v e l o p m e n to ft h es t r u c t u r em o d e l t h ea u t h o rp r o p o s e st h a tt h eu m l i n t e r a c t i o n o v e r v i e wd i a g r a mu s e dt od e s c r i b et h ed y n a m i cm o d e l ,i ec o m b i n i n gt h ec o n t r o lf l o w i nt h ea c t i v i t yd i a g r a m sa n dt h ei n f o r m a t i o ni nt h es e q u e n c ed i a g r a m st od e s c r i b et h e b u s i n e s sp r o c e s s ,s oa st om a k eu s e r si n t u i t i o n i s t i c a l l yj u d g et h ec o r r e c t n e s sa n d c o m p l e t e n e s so ft h eb u s i n e s sp r o c e s sd e s c r i b e db ys o f t w a r ep r o g r a m m e r sa n dr e a l i z e i t e r a t i v ed e v e l o p m e n to ft h ed y n a m i cm o d e l r n l ea u t l l o rf i n d si tn e c e s s a r yt oa d d d e t a i l e dd e s i g no ft h ec l a s s nt h ef u n c t i o nm o d e l ,i e ,u s et h ed e t a i l e dr e a l i z a t i o n p r o c e s si nt h ea c t i v i t yd i a g r a m st op r o v i d ep r o g r a m m e r sw i t hd i r e c ta n dd e s i g n a t e d p r o g r a m m i n gm a t e r i a l s a n dt h ed e s i g no fc l a s si sa l s op u tf o r w a r dt or u nt h r o a 【g ht h e w h o l ep r o c e s so fm o d e l i n g ,i e ,g e t t i n ga n a l y s i sc l a s sd i a g r a m si ns t r u c t u r em o d e la n d t r i m m i n ga n a l y s i sc l a s si nd y n a m i cm o d e l w h i c hi nr u mr e f l e c t st h ed e s i g nc l a s st o c o n s t r u c tf u n c t i o nm o d e la n dr e a l i z e st h ec o n t i n u i t ya n dc o n s i s t e n c ya m o n gt h e s et h r e e m o d e l s i nt h ee n d ,t h i st h e s i sa p p l i e st h ea b o v es a i dm o d e l i n gm e t h o dt oap r a c t i c a l e x a m p l e a n dc o m p a r e si t sr e s u l tw i t ht h a to ft h ec o n g e n e r i ca p p l i c a t i o n t h er e s u l t s h o w st h a tt h ea b o v es a i dd e s i g nc a nf u l l yd e s c r i b et h es y s t e ma n ds o i v e st h e c o n s i s t e n c yo fm o d e l i n g ,i ti so fg r e a ts i g n i f i c a n c et og e n e r a l i z eo ft h ea p p l i c a t i o no f f i l l lp r o c e s sm o d e l i n gm e t h o d k e yw o r d s :u m l1 2 d e fm o d e l i n gm e t h o d f u l lp r o c e s sm o d e l i n g i i 基于u m l 的全程建模研究与应用 图表目录 图2 - 1u m l 的用例图1 2 图2 2u m l 的类图一1 3 图2 3u m l 对象的状态图1 4 - 图2 4u m l 的顺序图1 4 图2 5u m l 的活动图,一1 5 一 图2 6u m l 的构件图1 5 图2 - 7 全程建模方法与其它建模方法的关系1 7 一 图2 81 2 d e f 三维一体的集成方法框架一1 7 图2 9 组成结构树1 8 图2 1 0 职责执行流程图1 9 图2 1 1 业务信息止世务数据的描述1 9 图3 - 1 用u m l 描述的组织结构模型2 5 倒3 - 2 用v i s i 0 2 0 0 3 进行界面建模2 5 图3 - 3 获取分析类一2 5 图3 4 用顺序图描述的动态模型2 6 图3 - 5 用交互综述图描述的动态模型一2 6 一 图3 - 6 整理斤的分析类2 7 图3 7 设计类m a n a g s s 2 8 图3 8 类的详细设计2 9 图3 - 9 基y - u m l 的全程建模设计一3 0 一 图4 - 1 宿舍管理系统的结构模型( 用例图) 3 4 图4 - 2 宿舍管理系统的部分界面模型3 4 一 图4 - 3 用例“登录”分析类图3 5 图4 4 用例“住宿分配”分析类3 5 图4 5 用例“住宿分配”的实现一3 6 一 图4 - 6 用例“基础数据库管理”的实现3 6 图4 7 细化住宿分配的状态图一3 6 图4 8 整理后的分析类图3 7 图4 - 9 整理分析类后的类图一3 7 图4 - 1 0 部分的设计类图一3 8 图4 1 1 部分类的详细设计过程3 8 一 图4 1 2 学生宿舍管理系统构件图3 9 图4 - 1 3 部分类的导出代码3 9 图4 - 1 4 部分程序设计代码一4 1 一 图4 1 5 系统登录界面4 2 图4 1 6 宿舍管理员登录后系统主界面4 2 图4 1 7 系统管理员登录后系统主界面一4 2 一 图4 1 8 人工分配住宿界面,4 3 图4 1 9 自动分配住宿界面4 3 图5 - 1u m l 的四层体系结构表示一4 7 中山大学硕士学位论文 第1 章绪论 1 1 选题的背景和意义 1 1 1 全程建模概述 全程建模是指在软件工程的全部实施过程中都采用模型的方式而非文字表 达的方式来进行描述的实现过程。 全程建模的优点是: ( 1 ) 有助于在问题到方案的过渡过程中更好地认知、理解和沟通; ( 2 ) 模型成为软件工程过程各阶段展现的主体,并且模型相互之间有关联; ( 3 ) 通过建模的方式将原来纯文字加图形描述的各种文档模型化,使得从 需求到代码能够统一起来,实现需求的变动直接影响到代码的变化; ( 4 ) 提高代码对需求的有效性联系,消除分析结果不能应用到设计阶段的 浪费。 1 1 2 本文研究的内容和意义 课题的研究内容是用统一建模语言( u n i f i e dm o d e l i n gl a n g u a g e ,u m l ) 实 现基于1 2 d e f ( i n t e g r a t e di d e f ) 的全程建模。 高展等在企业信息化自助纲要中指出,u m l 建模连贯性方面存在的问 题会导致与u m l 模型衔接的信息化软件开发上游、下游以及u m l 模型内部关 系这三个方面的隔阂,并针对这些隔阂分析了采用u m l 建模会造成三大硬伤一 “上不着天”、“下不着地”、“一盘散沙”“1 。针对这些问题,本文提出了一套基 于u m l 的全程建模方法,该方法可以消除上述三个方面的隔阂,使u m l 模型 保持连贯性和一致性,并且能全面地描述系统。课题研究内容如下: 1 建立系统结构模型 ( 1 )用u m l 用例图描述系统的结构模型,并用u m l 用例的包含关系将 基十u m l 的全程建模研究与应用 用例( 岗位职责) 展开为用例的操作步骤( 工作步骤) ,以确保完整全面、直观 地描述组织结构分工与软件功能结构之间的对应关系,实现对后续动态模型、功 能模型的总体控制,消除u m l 模型之间的隔阂。 ( 2 )对结构模型中的用例进行分析,勾画各个角色对软件功能进行操作 的需求界面,即界面建模。利用界面建模与用户沟通,消除与u m l 模型衔接的 软件开发上游的隔阂,实现结构模型的迭代开发。 ( 3 )对结构模型中的用例进行分析,获取与用例有关的所有信息,抽取 关键要素建立分析类图,为后续分析和设计奠定基础,消除u m l 模型内部关系 的隔阂。 2 建立系统动态模型 ( 1 )在结构模型的控制下,从左到右沿着角色继承及其用例的方向,分 析每个用例的事件序列,为结构模型中每个用例建立对应的交互图,实现结构模 型到动态模型的光滑过渡,消除u m l 模型之间的隔阂。 ( 2 )用u m l 的交互综述图描述用例的实现过程,即将活动图中的控制流 和顺序图中的消息结合在一起描述业务流程,以便用户直观地判断软件开发人员 描述的业务流程的正确性和完整性,消除与u m l 模型衔接的软件开发上游的隔 阂,实现动态模型的迭代开发。 ( 3 )依据用例实现的一系列交互图添加或改进分析类,并为它们添加属 性、职责以及类之间的关系,并在类图中将它们展示出来,同时,对典型类进行 重点分析,以确保模型重心的稳定性,实现结构模型和动态模型之间的连贯性和 一致性。 3 建立系统功能模型 ( 1 )将动态模型中整理、改进后的分析类映射为设计类,即细化分析类 的属性、方法,使分析类达到可以进行面向对象编程的程度。在由分析类映射为 设计类后,需要根据类的设计原则对设计类进行优化,即整理设计类,同时要按 u m l 的语法规范来描述设计类图。由此实现动态模型到功能模型的映射,消除 模型间的隔阂。 ( 2 )确定设计类图以后,用活动图描述设计类的方法实现过程来对类进 行详细设计。最后,通过建模工具将设计类图直接转换为代码。根据类的详细设 2 中山大学硕士学位论文 计,编程人员只需在必要的地方添加必要的程序片断就可完成编程实现过程,以 此消除与u m l 模型衔接的软件开发下游的隔阂。 总之,u m l 具有丰富的语义和较为完备的语法定义,其典型的要素是软件 中的对象,这和软件所要处理的现实世界中的对象在层级上是一致的,它所表述 的内容可以贯穿软件开发的生命周期。 通过以上分析可看出,研究基于u m l 的全程建模的意义是明显的: ( 1 )可以解决u m l 建模连贯性方面存在的问题,以及由此导致的与u m l 模型衔接的软件开发上游、下游以及u m l 模型内部关系等三方面隔阂的问题。 ( 2 )可以全面完整地描述系统。 ( 3 )对全程建模方法应用的推广具有促进作用。 1 2 建模方法研究综述 1 2 1 国外建模体系结构 经过研究人员多年努力,已经形成了许多有影响的建模体系结构。比较著名 的建模体系有c i m o s a 、p e r a 、g i m 、a r i s 等。 1 c i m 0 s a c i m - o s a ( o p e ns y s t e m sa r c h i t e c t u r ef o rc o m p u t e ri n t e g r a t e dm a n u f a c t u r i n g ) 是由欧共体的2 1 家公司和大学组成的e s p r i t - a m i c e 组织经过六年多的努力而 开发出的一个c i m 开放体系结构。3 ,其目的是提供一个面向c i m 系统生命周期 的、开放式的c i m 参考体系结构,从多个层次和多个角度反映了a m 企业的建 模、设计、实施、运行和维护等各个阶段,提供了c i m 系统描述、实施方法和 支持工具,并形成了一整套形式化体系。 在结构上,c i m 一0 s a 由模型框架和集成基础结构两部分构成。c i m 一0 s a 模型 框架是一个由通用性维、系统生命周期建模维和视图维组成的三维框架,能对企 业的不同方面进行建模。c i m o s a 集成基础结构提供一组在异构环境中用于模型 工程和模型驱动的企业运作监控的通用信息技术设施实体,它提供了一致的软件 平台来实现异构的软硬件集成。 c i m 一0 s a 建模方法是一种基于过程、对企业的功能和行为进行递阶分解的建 3 基十u m l 的伞程建模研究与应用 模方法,它按照建模框架来构造特殊的企业域,适用于需求定义层,如果进入了 系统设计层,则需对企业功能和行为作进一步的分解才能确定功能实体。 综上所述,a m o s a 具有全面性、完整性、开放性、标准化和形式化等优 点,因而受到国际上的好评,并成为国际标准化组织的一项预标准。但是, c i m o s a 过于抽象,使一般用户较难理解和掌握,限制了其应用:模型框架中 没能单独体现过程模型这一重要内容。 2 a r i s a r i s ( a r c h i t e c t u r eo fi n t e g r a t e di n f o r m a t i o ns y s t e m ) 是德国s a a r l a n d 大学 a w s c h e e r 教授于1 9 9 2 年提出的、一种面向过程的、由视图维和生命周期维组 成的二维模型结构”1 。它提出了一个集成化的信息系统模型框架,在这个框架之 中发展、优化集成应用系统。它以面向对象的方法描述了企业的功能视图、数据 视图、组织视图和控制视图,并通过控制视图来描述组织、数据、功能视图之间 的关系,使各个视图连接成一个整体。面向企业信息系统实施的生命周期,它定 义了需求定义、设计说明和实施描述三个层次。 与其他参考体系结构相比,a r i s 体系结构较为完善,具有系统性、包容性、 实用性和面向应用性。但是,a r i s 也存在一些不足,主要由于功能、组织和数 据视图是相对独立发展的,其内容的一致性难以维护。 3 g i m g i m ( g r a di n t e g r a t i n gm e t h o d o l o g y ,g r a i 集成方法论) 由法国波尔多 ( b o r d e a u x ) 第一大学g r a i 实验室开发“1 。该项工作起源于g r a i 实验室法籍华 人潘旅家教授在2 0 世纪7 0 年代提出的一种描述和分析生产管理系统的方法 g r a i ,该方法经过扩展、演变并与e s p r i t 计划的i m p a c s 课题相结合形成了一种 对c i m 系统全面描述的方法,称为g i m 。 g i m 建模框架由视图、生命周期和抽象层次三维组成。其中,抽象层次维包 括概念、结构和实现三个层次,生命周期维分为分析、面向用户的设计和面向技 术的设计三个阶段。这两个维是相互独立的,根据要求进行集成的企业类型可以 在生命周期的任一阶段建立任一抽象层次上的模型。视图维随着抽象层次的不同 而变化,在概念层此维由功能、信息、决策和物理四个视图组成,到了实现层则 由信息技术、制造技术和组织三个域组成。 g i m 体系结构具有套应用体系结构的良好结构化方法,以及相关的支持工 4 中山大学硕士学位论文 具和技术。g i m 结构化方法用来指导如何对制造系统进行分析和设计,它主要 由初始化、分析、面向用户的设计和面向技术的设计四个阶段组成,它适合于生 产系统分析和对生产系统决策制定过程的描述。但g i m 只局限于离散制造领域, 不适合做数据库的设计工具。 4 p e r a 普度企业参考体系结构( p e r a ) ”1 是美国普度( p u r d u e ) 大学的应用工业控制 普度实验室自1 9 9 0 年1 1 月开始为一个c i m 工厂进行企业建模而开发、由 t j w i l l i a n m s 于1 9 9 2 年提出的企业参考结构。p e r a 将模型按照系统生命周期分 为两个视图:需求定义阶段为功能视图,从设计阶段到运行阶段组成实现视图, 具体通过概念一定义一设计一构造与安装一运行共5 个阶段来实现,包括对信息 系统任务、制造任务和人的任务,以及这三者之间相互关系的建模。 与其他参考模型相比,p e r a 覆盖了c i m 系统实施的最完整的生命周期,在 系统分解方面突出阐明了人和组织因素的作用。p e r a 是一种非形式化描述方法, 其可执行性非常差;缺乏对体系结构进行计算机建模所需的数学建模技术;还没 有满意的方法能够对人的活动,尤其是对人的创造力建模;p e r a 描述复杂系统 的能力也有待进一步研究。另外,还没有标准软件能够支持p e r a 结构的建模和 分析。 5 面向对象建模方法 面向对象( o b j e c to r i e n t e d ,0 0 ) 的方法”1 是采用构造模型的观点,在系统的 开发过程中,各个步骤的共同目标是建造一个问题域的模型。面向对象方法包括 面向对象分析( o b j e c to r i e n t e da n a l y s i s ,o o a ) 、面向对象设计( o b j e c t o r i e n t e dd e s i g n ,o o d ) 和面向对象编程( o b j e c to r i e n t e dp r o g r a m m i n g ,o o p ) 三个方面。从建模角度考虑,主要涉及前两方面。o o a 的目的是要构造能够理 解实际系统的模型。分析从用户提供的问题描述开始,分析模型强调对象的三个 方面:静态模型、动态模型和功能模型。o o d 包括系统设计与对象设计。系统 设计是为实现需求目标而对软件的系统结构进行的总体设计,包括系统层结构设 计、系统数据存储设计、系统资源访问设计等。对象设计是根据具体的实施策略, 对分析模型进行扩充的过程。对象设计包括:静态结构设计、动态行为模型设计。 通过对象设计和系统设计就可以获得设计模型,这是系统实现的基础。 面向对象的系统开发方法促使软件开发按照应用域的观点来工作和思考,因 5 基于u m l 的全程建模研究i _ j 应用 为应用域的问题贯穿软件系统开发的大部分周期,只有清楚地识别、构造和理解 了应用域,才能有效地设计系统的数据结构和功能。面向对象的开发是一种在分 析和设计阶段独立于程序设计语言的概念化过程。其最大的优点是帮助分析者、 设计者及用户清楚地表述抽象概念、互相交流和通讯。 面向对象方法的突出特点虽然推动了系统开发方法的进步,但是由于缺乏从 整体上对系统进行全局把握的机制,导致其对象的抽取过程是一个随机而不确定 的过程。 1 2 2 国内建模体系结构 在分析国外企业建模理论与方法的基础上,针对我国企业建模领域存在的不 足,国内相关研究机构提出了一些各具特色的企业建模体系并据此开发了相应建 模工具。 1 构件化企业模型体系结构c e m s c e m s ( c o n s t r u c t e db a s e de n t e r p r i s em o d e l i n gs y s t e m ) “1 是同济大学c i m s 研 究中心结合其他建模体系优点而提出的,它是基于a r i s 的视图维( 功能视图、 数据视图、组织视图和控制视图) 和生命周期维( 需求定义、详细设计、实现描 述) ,以及结合c i m o s a 企业体系结构中的通用性维所形成的三维体系框架。 通过c e m s 三维框架的引导,可以快速有效地对企业的各个方面进行建模。 c e m s 的建模是在行业参考模型库的基础上,用户从构件库中选出合适的构 件,搭建自己企业的参考模型。由于构件都有很好的通用性,所以通常只需作很 小的修改,便可以完善企业模型。这种建模方法充分利用了行业参考模型的参考 作用,体现出c e m s 建模系统快速高效的优点。 c e m s 综合了c i m o s a 和a r i s 的优点,模型描述能力强,有计算机可执 行性,支持大量的建模方法,具有建模、仿真、分析评价支持的软件环境。 由于c e m s 只是利用了特定行业的参考模型来构建参考模型库,导致构件库 中构件的应用具有一定的局限性。c e m s 参考模型创建过程中的构件划分专业性 强,一般用户较难把握。 2 集成化i d e f 方法_ 1 2 d e f ( i n t e g r a t e di d e f ) 1 2 d e f 方法是中国科学院沈阳自动化研究所在国内外企业建模理论、方法与 中山大学硕士学位论文 工具研究开发成果的基础上,针对以往企业建模方法在视图集成、设计模型和系 统实施模型映射等方面存在的不足,结合当今企业对建模方法的需求而提出的一 套集成化的企业建模方法,并在此方法基础上开发了商品化建模工具p l a y c a s e , 用以支持企业集成信息系统的设计与开发。 集成化建模系统体系结构由生命周期维、视图模型维、通用性层次维组成一 个三维的立方体结构。1 ,其模型内容包括结构的描述、流程的描述、信息的描述 三个方面。集成化建模方法采用以过程视图模型为核心,其他视图模型为辅助来 实现集成化建模。不同的视图模型之间构成关联和引用的关系,以过程视图作为 关键控制维护了模型之间的一致性。 与c i m o s a 模型相比,集成化建模体系结构在视图维、生命周期维方面具 有显著的特点。即视图维以工作流( 过程模型) 为核心的建模思想更加符合企业 以经营过程为核心的管理思想,也能满足企业网状组织结构和供应链的需求;生 命周期维包括了需求分析、系统设计、系统实施和运行维护四阶段的建模方法, 使生命周期建模方法成为一个闭环的过程。 1 2 d e f 虽然侧重从整体上对系统进行全局把握来分析系统,但是它采用自顶 向下分解产生模型的过程是一个单向的过程,而且模型内容不能反映出系统构架 层中的通用服务层和系统服务层。另外,其结构模型不能体现出各软件模块之间 的联系;动态模型不能体现出各个业务活动发生的先后顺序及约束条件,同时没 有表达进入或退出一个过程的必要条件;功能模型中没有类和对象级的表达语 法。 1 2 3 国内外建模技术小结 从以上分析可以看出,c i m 一0 s a 没有指导用户利用该体系结构实现企业集 成的真正的方法论,使一般用户较难理解和掌握,限制了其应用;模型框架中没 能单独体现过程模型这一重要内容。a r i s 由于功能、组织和数据视图是相对独 立发展的,其内容一致性难以维护。g i m 只局限于离散制造领域,不适合做数 据库的设计工具。p e r a 是一种非形式化描述方法,其可执行性非常差;缺乏对 体系结构进行计算机建模所需的数学建模技术,还没有满意的方法能够对入的活 动,尤其是对人的创造力建模;p e r a 描述复杂系统的能力也有待进一步研究; 基于u m l 的全程建模研究与应用 还没有标准软件能够支持p e r a 结构的建模和分析;面向对象方法的突出特点虽 然推动了系统开发方法的进步,但是由于缺乏从整体上对系统进行全局把握的机 制,导致其对象的抽取过程是一个随机而不确定的过程。 就我国现有建模方法而言,仍存在诸多不够完善的地方。在1 2 d e f 建模方法 中,虽然侧重从整体上对系统进行全局把握来分析系统,但是它采用自顶向下分 解产生模型的过程是一个单向的过程,而且模型内容不能反映出系统构架层中的 通用服务层和系统服务层。另外,其结构模型不能体现出各软件模块之间的联系; 动态模型不能体现出各个业务活动发生的先后顺序及约束条件,同时没有表达进 入或退出一个过程的必要条件;功能模型中没有类和对象级的表达语法。 c e m s 由于只是利用了特定行业的参考模型来构建参考模型库,导致构件库 中构件的应用具有一定的局限性;c e m s 参考模型创建过程中的构件划分专业性 强,一般用户较难把握。 纵观国内外建模体系结构,可以看出,这些体系结构从不同角度和出发点描 述了软件建模这个复杂的实现过程,这正是各种建模方法的优点所在:但每种建 模方法要在实际中被广泛采用,必须同时具有完备的体系结构、具体的实施方法 和实用的支撑工具。 1 3 本文的主要工作 本文的主要工作是: ( 1 ) 调查研究国内外建模技术的发展现状,分析各种建模技术的优缺点, 总结出如下结论:每种建模技术从不同角度和出发点描述了软件建模的实现过 程,一种建模技术要在实际中被广泛采用,必须同时具有完备的建模体系结构、 具体的建模实施步骤和实用的建模支撑工具。 ( 2 ) 深入学习、研究u m l 和全程建模方法的相关知识,包括u m l 的组成 和体系结构、全程建模方法的体系结构、模型内容和建模要领等。 ( 3 ) 提出一套基于u m l 的全程建模方法。这是本文的重点,该建模方法的 模型框架是由生命周期维和视图维组成的二维模型结构,生命周期维包括需求分 析、详细设计和实现描述三个层次,视图维包括功能视图、过程视图和信息视图, 主要由结构模型、动态模型和功能模型三位一体的模型内容来描述。该建模方法 中山大学硕士学位论文 的主要步骤是先从用户角度分析系统的功能建立结构模型,从结构模型中抽取关 键要素建立分析类图;再在结构模型的控制下,沿着系统功能分解的方向自左向 右建立各个功能模块的动态模型,根据动态模型的交互过程整理分析类图;再由 整理后的分析类映射出设计类,并根据类的设计原则对设计类进行整理,从而形 成功能模型,通过活动图来描述类的详细实现过程完善功能模型;最后,通过建 模工具将设计类图直接转换为代码,编程人员根据类的实现过程,只需在代码框 架中必要的地方添加相应的程序片断就可完成编程实现过程。该建模方法的优点 是结构模型、动态模型、功能模型中的类是一一对应的,实现了模型之间平滑过 渡和连贯统一;在结构模型、动态模型、功能模型的获取过程中,均采用了迭代 的开发方法,使得各种模型交错成长,确保方案有效地反映问题的需求。 ( 4 ) 给出基于u m l 的全程建模应用过程。 以学生宿舍管理系统实例演示基于u m l 的全程建模过程,并将本文建模方 法的应用与其他同类应用进行比较分析。 1 4 本文的组织结构 本文的主要内容分为五个部分: 第一章绪论 说明本文的选题背景、研究内容及意义,课题研究的技术内容在国内外的发 展现状综述,本文的主要工作,同时简要说明本文的组织结构。 第二章u m l 与全程建模方法的相关知识 介绍u m l 和全程建模方法的主要内容,为本文建模方法的设计奠定了理论 基础。 第三章基于u m l 的全程建模设计 提出一套基于u m l 的全程建模方法。本章是本文的重点,包括建模框架结 构、建模方法的实施步骤和详细过程。 第四章基于u m l 的全程建模应用 例证基于u m l 的全程建模的应用过程,并将此应用与同类应用进行比较。 第五章总结与展望 总结全文,展望后期工作。 中山大学硕+ 学位论文 第2 章u m l 与全程建模方法的相关知识 2 1u m l 相关知识介绍 2 1 1 引言 统一建模语言u m l 由g r a d yb o o c h 、j a m e sr u m b a u g h 、i v a rj a c o b s o n 三位专 家联手提出,宗旨是使u m l 成为一套用来构建系统模型的一般性语言,这意味 着它可以表达不同种类及用途的模型,恰似一种程序语言或是一种自然语言能够 被使用在各个方面。这一宗旨,简单且有力地表达了u m l 所具备的语言特性, 可以用在软件开发的各个阶段中,与使用者及工作中的各种角色进行有效的沟通 叫。u m l 使不同厂商开发的系统模型能够基于共同的概念,使用相同的表示法, 呈现彼此一致的模型风格。1 9 9 7 年11 月u m l 的1 1 版本被对象管理组织o m g 正式采纳为标准的建模语言,并在随后的几年中迅速地发展为事实上的建模语言 国际标准,广泛地用于应用领域和多种类型的系统建模。 u m l 的出现使人们可以真正实现软件的流水线生产。它是一种通用的可视 化建模语言,用于对软件进行描述、可视化处理、构造和建立软件系统的文档。 u m l 适用于各种软件开发方法、软件生命周期的各个阶段、各个应用领域以及各 种开发工具,是一种总结了以往建模技术的经验并吸收当今优秀成果的标准建模 语言。u m l 包括概念的语义、表示法和说明,提供了静态、动态、系统环境及 组织结构的模型“。它是为支持大部分现存的面向对象开发过程而设计的。 2 0 0 2 年初,o m g 提出了模型驱动架构( m o d e l d r i v e na r c h i t e c t u r e ,m d a ) 概念。而u m l l x 存在一些缺陷,不能对m d a 提供很好的支持,比如u m l l x 太复杂,图形不够精确,在理解上容易导致分歧等等。为了解决这些问题,2 0 0 3 年6 月,o m g 推荐采用u m l 2 0 ,完成了这个工业标准建模语言的一次大的升 级,它简化了u m l l x 的复杂性,归并了不一致的模型,为架构建模和动态行 为的描述提供了更强的支持,为m d a 提供了坚实的基础。将来的u m l 将向着语 言家族化、可执行化、精确化等理念迈进,为软件产业的工程化提供了更有力的 中山大学硕上学位论文 支撑。 2 1 2u m l 的组成 u m l 包括了一些可以相互组合为图表的图形元素,它使得系统分析员可以 利用这一标准来建立能够为客户、程序员以及任何参与开发过程的人员理解的多 视角的系统蓝图3 。 对于复杂系统,我们无法从一个单一的视角进行充分和清晰的建模。i j m l 提 供了各种图,这些图的目的是用多个视图来展示一个系统,这组视图被称为一个 模型3 。u m l 2 0 提供了1 3 种图,包括:用例图、类图、对象图、顺序图、协 作图、状态图、活动图、构件图、包图、部署图、组成结构图( 或称为构架图) 、 交互纵览图、计时图。其中组成结构图、交互纵览图、以及计时图是u m i 2 0 新 增的图。其它图也有了更精确更强大的表达能力。尤其是对细节行为的表达与描 述是i j l l 】i l 被主要增强的一部分。这使得u m l 2 0 可以更精确地表达系统,并使模 型变得可执行。 我们在描述系统的时候可以根据需要有选择的使用几种u m l 图,不一定要 用尽所有的图来表达系统。在此只介绍常用的几种u m l 图。 1 用例图 用例图描述系统外部的执行者与系统提供的用例之间的某种联系。所谓用例 是指对系统提供的功能( 或是系统的用途) 的一种描述,执行者是那些可能使用这 些用例的人或外部系统,而二者之间的联系描述了“谁使用哪个用例”。由此可 见,用例图着重于从系统外部执行者的角度来描述系统需要提供哪些功能,并且 指明了这些功能的发起参与者和接收参与者是谁。 用例图表示法很直观。它用个椭圆形表示用例,直立人形图标表示参与者。 用例的发起参与者在用例图的左侧,接收者参与者在用例的右侧。参与者的名字 写在参与者图标的下方,用例的名字可以放在椭圆形里面也可以放在椭圆形下 面。关联线连接参与者和用例并且表示参与者与用例之间的通信关系。关联线是 实线,和类之间的关联线类似。 用例之间的关系有包含、扩展、泛化和分组。包含是一个用例中重用另一个 用例中的步骤:扩展是允许你通过对已有用例增加步骤创建一个新的用例;泛化 基于u m l 的全程建模研究与应用 是指一个用例继承了另一个用例;分组是用例的简单组织方式。如图2 - 1 是一个 学生宿舍管理系统的宿舍管理员用例图。 从系统的外部执行者的角度来看,宿舍管理员根据学生的基本信息查询、学 生是否已经交住宿费的情况来进行住宿分配,对某个学生住在什么寝室以及寝室 的住宿情况进行管理,对宿舍水电费进行结算。学生基本信息管理系统应该提供 学生的基本情况,例如:学生的姓名、性别、年龄等情况,学生收费系统应提供 该学生是否已交住宿费的情况。其中宿舍管理员是用例的发起参与者,打印机、 学生基本信息管理系统和学生收费系统是用例的接收参与者。 2 类图 类是具有类似属性和共同行为的同类事物。如一个学生有姓名、学号、性别、 年龄和籍贯等属性,并且具有上课、考试和住宿等行为。对所有学生的类似属性 和共同行为进行抽象便得到学生类。 一个系统可以看成是一些不同类型的对象组成的,对象类之间的各种关系反 映了系统内部各种成分之间的静态结构

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论