基于三层结构模型的类模型分析

来源 :计算机时代 | 被引量 : 0次 | 上传用户:ConchConch
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要: 类的构造是面向对象系统分析的难点,类的构造合理与否很大程度上决定了系统的成败。因此,在面向对象系统分析和设计过程中,类模型的分析是复杂的、重要的且容易重复劳动。为了降低设计过程的复杂性,减少重复性劳动,高效率且高质量地完成系统建模与设计,提出一种基于层次结构模型的类模型分析方法,并阐述了这种方法的机理;结合“移动学习系统的学生选课子系统”的开发实例,深入探讨了从类模型到层次结构模型的映射过程。
  关键词: 类构造; 层次结构模型; 类模型; 三层结构模型
  中图分类号:TP311.5 文献标志码:A 文章编号:1006-8228(2013)11-01-03
  0 引言
  在传统的面向对象的分析与设计过程中,类的构造和软件架构是相互独立的,然而类必将映射到软件架构中,这一过程是复杂且较困难的。类构造的合理性以及类与软件层次结构的相互适应性必将影响到系统完成的效率与质量。
  系统的层次结构是系统设计的“躯体”,主要是定义和说明包(子系统),以及包与包之间的相互依赖与通信机制[1]。类构造是系统设计的“大脑”,主要是定义系统的运作过程,与实现方法、技术无关。因此,基于层次结构模型的类模型分析的优点有:①系统结构清晰;②降低设计过程的复杂性;③开发人员的思路更清晰易懂;④开发效率高。层次结构模型可以划分为若干层,目前流行的三层结构模型。
  本文选用目前流行的层次结构模型——三层结构模型,结合“移动学习系统”的子系统“学生选课系统”分析设计过程,探究如何实现类模型到层次结构模型的映射。
  1 层次结构模型
  层次结构(hierarchy)是一种计算机操作系统的构成方法。它是根据信息的类型、级别、优先级等一组特定的规则排列的一组硬件或软件项目。这种结构的最大特点就是将一个大型、复杂的系统分解成若干单向依赖的层次。该结构通过分解问题来降低问题的复杂性,从而确保程序的可靠性和易读性,也便于人们对系统进行局部修改。UNIX操作系统就是采用层次结构实现结构设计的。
  层次结构模型也被广泛用于应用软件的构成。层次结构模型的建立,是在深入分析实际问题的基础上,将相关的各个因素按照不同属性自上而下地分解成若干层次,同一层的诸因素从属于上一层的因素或对上层因素有影响,同时又支配下一层的因素或受到下层因素的作用。
  目前流行的层次结构模型是三层结构模型,它是在由Buschmann等提出的“层模式”基础上发展起来的。三层结构是根据用户与软件系统的交互过程,将系统划分为由上层到底层的的模型。层次的划分按照高内聚松耦合的原则进行划分。三层结构分别为:用户表示层、业务逻辑层、数据访问层。各层的功能如下:将实现人机界面的所有表单和组件放在表示层,将所有业务规则和逻辑的实现封装在负责业务逻辑组件中,将所有和数据库的交互封装在数据访问组件中,如图1所示。
  三层结构是一种严格分层方法,各层只能调用下一层,且不能越界调用。用户通过表示层将请求传送给业务逻辑层,业务逻辑层完成相关业务规则和逻辑,并通过数据访问层访问数据库获得数据,然后按照预想的顺序依次返回,并将数据显示在表示层。
  2 类的分析构造
  类的构造与分析,是对现实世界的抽象,用于处理功能性的需求。在面向对象的分析过程中,通常从三个纬度对系统的类进行分析,分别为边界类、控制类和实体类[2],如图2所示。
  边界类表示系统内部工作方式与其周围环境之间的各种交互作用,用于陈述和收集系统的边界需求。边界类包括:通过图形化用户界面与用户交互;与其他参与者交互(如代表其他系统的参与者);与设备通信等。
  控制类用于系统内的控制逻辑与模型行为,用于对某一个具体的用例相关的控制或者其他业务逻辑建模。通常将协调、排序等事物处理或者涉及多个对象的复杂事务逻辑隔离在一个或多个控制类中。
  实体对象表示对系统的重要信息。它们通常是持久的,并能在一个延续的时期内存在。它们的主要的目的是表示和管理系统内的信息。实体类通常表示为一种逻辑的数据结构。
  3 类与三层结构模型的映射
  统一软件开发过程RUP中定义了四个模型:用例模型、分析模型、设计模型和实现模型[2]。类模型的分析属于分析阶段,三层结构架构模型属于设计阶段。类模型的分析是与具体实现无关的,而三层结构架构模型是与具体实现有关的。基于设计的分析,有助于开发人员更容易理解系统,更容易开发系统。
  通过对三层结构架构模型与类模型的分析,得到如下结论:边界类和表示层从不同角度处理与外界的交互,控制类与业务逻辑层从不同角度处理服务行为与动作行为,实体类与数据层从不同角度处理持久性数据。这样,在分析类模型的同时,进行层次分析。具体类模型到三层结构架构模型的映射过程如图3所示。
  4 实例说明
  我们以“学生选课系统”为例来说明。
  4.1 数据层的设计
  4.1.1 实体类的获取
  对“学生选课系统”,采用领域建模的方法,获取该系统的实体类。所谓领域建模,就是对领域内的概念类或现实世界中的对象进行可视化表示,它注重分析问题概念本身,发掘重要的业务领域概念,并建立业务领域概念之间的关系[3]。
  领域模型的一个对象往往就与一个实体类对应,它们之间存在着各种关系,例如,一对多、多对多、一对一、继承等关系。根据“学生选课”子系统的功能,应该创建如下一些领域模型类,即实体类,如图4所示。
  4.1.2 创建实体类
  通过领域模型分析,得到三个实体类,具体如下:
  ⑴ 学生实体类(Student):表示一个学生,负责进行选课。
  ⑵ 课程实体类(Course):表示一门课程,可以被学生选中放入选课信息中。   ⑶ 学生课程实体类(Scourse):表示属于学生的所有所选课程。
  4.2 业务逻辑层的设计
  4.2.1 控制类的获取
  业务逻辑层是系统中最核心的部分,它关系到整个软件系统的逻辑是怎么执行的,功能是怎样实现的,完全由用户的需求来决定,是最灵活的一层。我们通常采用构建用例模型,分析业务逻辑关系。
  业务逻辑的设计主要是根据系统提供的功能而定的,也就是说,系统提供给用户多少个功能,就对应着多少个业务逻辑。根据“学生选课”子系统的功能,给出该系统的用例模型,如图5所示。
  4.2.2 创建控制类
  ⑴ 学生登录类(StudentLogin)。
  ⑵ 学生退出类(StudentCheckout)。
  ⑶ 学生选课类(SelectCourse)。
  4.3 表示层的设计
  4.3.1 表示层的设计
  表示层的作用表示系统内部工作方式与其周围环境之间的各种交互作用,它们可以把系统的其余部分与外界环境隔离和屏蔽起来。根据用户与系统交互的需求,确定边界类。
  4.3.2 创建边界类
  ⑴ 用户主登录界面(LogAction):用于登录,将引用一个StudentLogin类。
  ⑵ 选课主界面(ListCourseAction):用于展示课程信息。
  ⑶ 学生所选课程界面(StudentCourse):用于显示学生所选的课程信息。
  5 结束语
  层次结构模型广泛应用于面向对象系统架构,而在面向对象系统的分析和设计过程中,类模型的建立是关键且复杂的。通过不断编程实践和总结出的,基于层次结构模型(三层结构模型)的类模型分析方法在软件开发过程中很实用,能显著降低程序开发困难,提高开发效率。
  参考文献:
  [1] 董连.基于UML和.NET三层B_S系统的开发[J].计算机与数字工程.2010,38(12):77-80
  [2] 李军.一种从用例模型到分析模型的设计方法[J].计算机系统应用,2012.21(1):191-192
  [3] 常倬林.JavaWeb从入门到精通[M].机械工业出版社,2011.
  [4] 闫敏敏.基于UML与三层架构的远程教育系统设计与实现[J].长春工程学院学报,2012.13(1):95-100
  [5] 郭广军等.基于SSH整合架构的教学支持系统设计与实现[J].计算机工程与设计,2009.30(13):3111-3116
  [6] 李雷等.SSH整合框架的研究与应用[J].内蒙古工业大学学报,2012.31(2):40-44
  [7] 王智超,王敏.软件开发过程与UML关系的研究[J].中国科技信息,2011.20:97
其他文献
【正】 所谓山区果树生态栽培是指在山区果树生产中,把果树对地理气候环境的适应性作为制定、实施果树栽培管理技术的立足点,提高园区水、光、气、热、土资源利用率,促使园区
体育本是一门让人热血沸腾学科,学生在体育课上应当是主动积极、生龙活虎的。然而,我们现在的体育课却存在两种现象:一是严肃有余、活泼不足,课堂气氛沉闷,统得过死等现象还普遍存
为了更好的进行计算机程序设计课程的教学,达到培养优秀软件设计人才的目的,本文提出计算机程序设计课程的科学教学方法,所谓的"科学"就是摸清程序设计课程本身的矛盾及规律所
分析了半导体激光器的激励源系统和温控系统的设计原理,关于激励源,详细介绍了恒流源和软启动电路;在温控系统中,提出了采用恒流源来设定温度限的设计思想,最后分析了系统的试验结
我国是最早了解勾股定理的国家之一。早在三千多年前,周朝数学家商高就提出,将一根直尺折成一个直角,如果勾(短直角边)等于三,股(长直角边)等于四,那么弦等于五。即“勾三、股四、弦五
德育在学校教育工作中占着极为重要的位置,为培养新世纪的新型人才,发挥着巨大作用。众多教学上的成功者,他们除了有渊博的学识和高超的教学技术,还有一个更重要的因素,那就是他们
为提高炭-石墨制品的质量,炭素生产采用一次浸渍和二次焙烧(或多次浸渍多次焙烧)生产工艺,隧道窑作为先进的二次焙烧技术具有焙烧温度低、周期短、能耗少等特点,是生产高质量是极重
本实验采用共沉淀法,以无机盐SnCl4·5H2O、Sb2O3、Gd(NO3),为前驱体,制备了含SnO2中间层的稀土Gd掺杂SnO2/Sb多组分涂层阳极。研究了以苯酚为目标有机物的电化学降解特性,以考
【正】 对棉花经营企业来说,要实现自身营运的顺利进行,棉花从购入到销出必须实现有机衔接,确保棉花产品货畅其流。在棉花资源供大于求的市场条件下,选择符合市场要求和企业
厚煤层现代开采体系是用当代科技的最新成果武装和改造矿井“开采体系”的开拓方式、生产布局、设备配置、采煤、掘进、提升、运输、通风、供水、供电等各个要素,达到设备与系