论文部分内容阅读
[摘要] 传统的考勤方式已不能满足现代企业信息化管理发展的需求,本文探讨了UML和J2EE技术在企业考勤管理系统开发中的应用,运用UML对系统进行建模分析,能消除J2EE技术与实际项目存在的语义差异,二者结合能开发出更为高效的企业级应用程序。
[关键词] 体系结构 用例 UML 2EE
一、引言
考勤管理是企业人力资源管理的一部分,随着企业规模的扩大,企业的子部门不断增多,楼宇趋于分散,传统的考勤方式已不能满足现代企业管理的需求。成熟的Intranet企业网络及企业内部大型数据库管理平台的建立,为企业考勤管理系统的实现提供了便利条件。
在系统开发中,良好的模型能使工作事半功倍,良好的体系结构通过合理的层次划分,可以提高开发效率,并为程序的升级和移植提供便利。J2EE(Java 2 Platform Enterxprise Edition)为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制,然而J2EE技术与实际项目存在语义差异,采用UML统一建模语言建立的系统模型能很好地消除这种差异,本文探讨了二者在企业考勤管理系统开发中的应用。
二、UML及J2EE概述
1.UML概述
UML(Unified modeling Language)是一种定义良好、易于表达、通用的可视化建模语言,它能很好的将人们的思想活动转化成一种他们所熟悉的“书面性”的抽象形式,它支持面向对象的从系统需求分析开始的软件开发全过程。
UML主要以图的方式来描述系统模型,为了从不同角度描述系统,UML定义了5类共10种模型图:用例图、静态图(包括类图、对象图和包图)、行为图(包括状态图、活动图)、交互图(包括时序图、协作图)、实现图(包括组件图、配置图)。
2.J2EE概述
Sun Microsystems的Java 2平台有三个版本,微型版(J2ME)、标准版(J2SE)和企业版(J2EE)。 J2EE是由一套规范和建立在J2SE平台之上的应用编程接口(API)组成,除了现有J2SE的API,同时还提供了对EJB(Enterprise JavaBeans)、Java Servlet API、JSP(Java Server Pages),以及XML技术的全面支持。
为了缩减开发成本,快速跟踪企业应用的设计和开发,J2EE技术提供了基于组件的设计方法,开发、集成和部署应用程序。J2EE平台提供了多层分布式应用模式,使其具有重用的能力。
三、系统需求分析
需求是系统必须提供的具体功能,本项目采用的是用例驱动的方法来获取需求。用例是从用户(或外界系统)的角度,通过描述用户与系统的交互来理解系统的功能。要建立需求分析的用例模型,首先是获取业务角色(参与者),然后从参与者中找出用例,确定了系统参与者和用例之后,即可得到系统用例图。
考勤管理系统旨在对企业员工的出勤情况进行考察,之后将考勤与财务工资系统及相关的奖惩机制挂钩。整个系统由数据维护模块、统计报表模块、查询模块组成。
数据维护模块:包括员工基本信息维护、考勤信息维护、设置考勤类别。通过维护对这些原始数据进行修改或扩展。
统计报表模块:对数据库进行读写操作,通过前面采集的数据生成相关报表。查询模块:包括考勤信息查询,综合信息查询。
下面以数据维护模块为例,分析得到与其交互的角色如下:
1.打卡机
负责采集打卡员工的职工号、打卡时间及打卡机号码,显示打卡前后的提示信息。
2.系统管理员
主要负责在公司规定的时间段开/关系统,统计、查询员工打卡数据,对考勤类别进行详细设置。
3.员工
是系统的考察对象,参与的业务是提供打卡信息,以及查询本人当月考勤情况。用例分析如图1和图2所示:
四、系统设计
系统设计是构造系统的阶段,它是对分析结构的进一步精化,分析侧重于理解问题域,设计侧重于解决方案。设计的成果可以作为程序员编码的依据和指导。设计阶段的主要任务是: 系统体系结构设计、对象类设计、持久对象设计,模型图主要由顺序图、类图、协作图构成。
1.系统体系结构设计
J2EE使用多层分布式的应用模型,应用逻辑按功能划分为组件,各种不同的应用组件构成分布在不同的依赖于层的机器上的J2EE程序,这些组件分别是:运行在客户端机器上的客户层组件,运行在J2EE服务器上的Web层组件和业务逻辑层组件,运行在数据库服务器上的企业信息系统(Enterprise information system,简称EIS)层软件。考勤管理系统所采用的体系结构如图3所示。
客户层是系统的显示部分,将来自系统的信息显示给用户。Web层接收来自客户层的请求并将处理结果反馈给客户层。业务逻辑层负责实际工作的执行,处理与考勤系统相关的业务逻辑,并在需要时与数据库进行交互。EIS层提供主要的数据服务。J2EE提供的只是一个体系结构,在实际的项目开发中,需要进行具体的设计。
2.Web层的设计
Web层由Servlet、Java Bean和JSP组成,来自客户的请求由Servlet处理,然后重定向到JSP显示,这种显示与逻辑相分离的机制有利于系统的开发。JSP具有双重功能,一是向客户端提供Web显示页面,另外在服务器端执行某些逻辑操作。因此,可将JSP划分为两个不同的部分:《Client JSP》表示JSP在客户端的行为,《Server Page》表示JSP在服务器端的行为。当员工打卡时,数据传输至服务器端,并且打卡请求处理后生成的反馈页面传输给卡机显示终端。
3.业务逻辑层的设计
业务逻辑层上的EJB处理来自客户端的数据,该层的动态行为模型可以由UML的交互图及设计类的类图表达。这里使用的交互图是顺序图和协作图,类图体现了类之间的关系,是系统实现的基础。下面以员工打卡用例为例说明业务逻辑层的设计过程。
员工打卡用例的业务流程为:员工在打卡界面激活打卡命令,打卡信息提交给Servlet处理,并由EJB执行逻辑判断是否可以打卡,如果可以打卡,则返回提示信息至打卡界面,然后员工卡号及打卡时间通过网络传输保存至数据库服务器,打卡用例顺序图如图4所示。
顺序图有助于开发人员理解用例的实现过程,然而在具体的实现阶段需要的是具体的类,类包括边界类、控制类和实体类,识别出系统中主要用例的类是编写代码的基础。
员工打卡用例是由以下类来实现:员工类、打卡界面类、返回界面类、业务控制类、数据库实体类。员工类是指用户的实际操作,即员工通过打卡输入员工卡号及打卡时间。打卡界面类负责显示提示信息,返回界面类显示打卡后的反馈信息,业务控制类负责对业务的控制,数据库实体类负责员工打卡数据的读取。员工打卡用例的类图如图5所示,在识别类的基础上,能方便地画出用例的协作图,如图6所示。
4.EIS层的设计
EIS层保存了考勤管理系统的持久对象,持久对象数据库的创建采用SQL Server实现,采用JDBC驱动程序访问数据库,通过应用服务器(Weblogic)配置数据源,其配置步骤分两步:一是建立并配置连接池;二是配置数据源。
五、展望
基于UML和J2EE的系统设计,可以帮助用户和设计人员对问题的描述和理解达到一致,使用J2EE组件技术能开发出低价位的、高速的、占用少量资源的企业级应用程序,随着电子商务的发展,基于UML和J2EE的企业级应用将发挥越来越重要的作用。
参考文献:
[1]宁波:J2EE结合UML在企业级系统中的应用.计算机工程与科学[J],2004.3
[2]邵维忠梅宏:统一建模语言UML述评.计算机研究与发展[J],1999年第10期
[3][美] John Hunt,Chris Loftus[著],周立斌杨飞等[译].精通J2EE—Java企业级应用[M].清华大学出版社
[4]崔立元罗燕京李刚:基于企事业模型的软件需求工程方法.计算机工程与应用[J],2002,7
[5]谢卫宇王恒山:基于用例驱动分析的软件需求获取方法.计算机与现代化[J],2002年第6期
“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文”
[关键词] 体系结构 用例 UML 2EE
一、引言
考勤管理是企业人力资源管理的一部分,随着企业规模的扩大,企业的子部门不断增多,楼宇趋于分散,传统的考勤方式已不能满足现代企业管理的需求。成熟的Intranet企业网络及企业内部大型数据库管理平台的建立,为企业考勤管理系统的实现提供了便利条件。
在系统开发中,良好的模型能使工作事半功倍,良好的体系结构通过合理的层次划分,可以提高开发效率,并为程序的升级和移植提供便利。J2EE(Java 2 Platform Enterxprise Edition)为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制,然而J2EE技术与实际项目存在语义差异,采用UML统一建模语言建立的系统模型能很好地消除这种差异,本文探讨了二者在企业考勤管理系统开发中的应用。
二、UML及J2EE概述
1.UML概述
UML(Unified modeling Language)是一种定义良好、易于表达、通用的可视化建模语言,它能很好的将人们的思想活动转化成一种他们所熟悉的“书面性”的抽象形式,它支持面向对象的从系统需求分析开始的软件开发全过程。
UML主要以图的方式来描述系统模型,为了从不同角度描述系统,UML定义了5类共10种模型图:用例图、静态图(包括类图、对象图和包图)、行为图(包括状态图、活动图)、交互图(包括时序图、协作图)、实现图(包括组件图、配置图)。
2.J2EE概述
Sun Microsystems的Java 2平台有三个版本,微型版(J2ME)、标准版(J2SE)和企业版(J2EE)。 J2EE是由一套规范和建立在J2SE平台之上的应用编程接口(API)组成,除了现有J2SE的API,同时还提供了对EJB(Enterprise JavaBeans)、Java Servlet API、JSP(Java Server Pages),以及XML技术的全面支持。
为了缩减开发成本,快速跟踪企业应用的设计和开发,J2EE技术提供了基于组件的设计方法,开发、集成和部署应用程序。J2EE平台提供了多层分布式应用模式,使其具有重用的能力。
三、系统需求分析
需求是系统必须提供的具体功能,本项目采用的是用例驱动的方法来获取需求。用例是从用户(或外界系统)的角度,通过描述用户与系统的交互来理解系统的功能。要建立需求分析的用例模型,首先是获取业务角色(参与者),然后从参与者中找出用例,确定了系统参与者和用例之后,即可得到系统用例图。
考勤管理系统旨在对企业员工的出勤情况进行考察,之后将考勤与财务工资系统及相关的奖惩机制挂钩。整个系统由数据维护模块、统计报表模块、查询模块组成。
数据维护模块:包括员工基本信息维护、考勤信息维护、设置考勤类别。通过维护对这些原始数据进行修改或扩展。
统计报表模块:对数据库进行读写操作,通过前面采集的数据生成相关报表。查询模块:包括考勤信息查询,综合信息查询。
下面以数据维护模块为例,分析得到与其交互的角色如下:
1.打卡机
负责采集打卡员工的职工号、打卡时间及打卡机号码,显示打卡前后的提示信息。
2.系统管理员
主要负责在公司规定的时间段开/关系统,统计、查询员工打卡数据,对考勤类别进行详细设置。
3.员工
是系统的考察对象,参与的业务是提供打卡信息,以及查询本人当月考勤情况。用例分析如图1和图2所示:
四、系统设计
系统设计是构造系统的阶段,它是对分析结构的进一步精化,分析侧重于理解问题域,设计侧重于解决方案。设计的成果可以作为程序员编码的依据和指导。设计阶段的主要任务是: 系统体系结构设计、对象类设计、持久对象设计,模型图主要由顺序图、类图、协作图构成。
1.系统体系结构设计
J2EE使用多层分布式的应用模型,应用逻辑按功能划分为组件,各种不同的应用组件构成分布在不同的依赖于层的机器上的J2EE程序,这些组件分别是:运行在客户端机器上的客户层组件,运行在J2EE服务器上的Web层组件和业务逻辑层组件,运行在数据库服务器上的企业信息系统(Enterprise information system,简称EIS)层软件。考勤管理系统所采用的体系结构如图3所示。
客户层是系统的显示部分,将来自系统的信息显示给用户。Web层接收来自客户层的请求并将处理结果反馈给客户层。业务逻辑层负责实际工作的执行,处理与考勤系统相关的业务逻辑,并在需要时与数据库进行交互。EIS层提供主要的数据服务。J2EE提供的只是一个体系结构,在实际的项目开发中,需要进行具体的设计。
2.Web层的设计
Web层由Servlet、Java Bean和JSP组成,来自客户的请求由Servlet处理,然后重定向到JSP显示,这种显示与逻辑相分离的机制有利于系统的开发。JSP具有双重功能,一是向客户端提供Web显示页面,另外在服务器端执行某些逻辑操作。因此,可将JSP划分为两个不同的部分:《Client JSP》表示JSP在客户端的行为,《Server Page》表示JSP在服务器端的行为。当员工打卡时,数据传输至服务器端,并且打卡请求处理后生成的反馈页面传输给卡机显示终端。
3.业务逻辑层的设计
业务逻辑层上的EJB处理来自客户端的数据,该层的动态行为模型可以由UML的交互图及设计类的类图表达。这里使用的交互图是顺序图和协作图,类图体现了类之间的关系,是系统实现的基础。下面以员工打卡用例为例说明业务逻辑层的设计过程。
员工打卡用例的业务流程为:员工在打卡界面激活打卡命令,打卡信息提交给Servlet处理,并由EJB执行逻辑判断是否可以打卡,如果可以打卡,则返回提示信息至打卡界面,然后员工卡号及打卡时间通过网络传输保存至数据库服务器,打卡用例顺序图如图4所示。
顺序图有助于开发人员理解用例的实现过程,然而在具体的实现阶段需要的是具体的类,类包括边界类、控制类和实体类,识别出系统中主要用例的类是编写代码的基础。
员工打卡用例是由以下类来实现:员工类、打卡界面类、返回界面类、业务控制类、数据库实体类。员工类是指用户的实际操作,即员工通过打卡输入员工卡号及打卡时间。打卡界面类负责显示提示信息,返回界面类显示打卡后的反馈信息,业务控制类负责对业务的控制,数据库实体类负责员工打卡数据的读取。员工打卡用例的类图如图5所示,在识别类的基础上,能方便地画出用例的协作图,如图6所示。
4.EIS层的设计
EIS层保存了考勤管理系统的持久对象,持久对象数据库的创建采用SQL Server实现,采用JDBC驱动程序访问数据库,通过应用服务器(Weblogic)配置数据源,其配置步骤分两步:一是建立并配置连接池;二是配置数据源。
五、展望
基于UML和J2EE的系统设计,可以帮助用户和设计人员对问题的描述和理解达到一致,使用J2EE组件技术能开发出低价位的、高速的、占用少量资源的企业级应用程序,随着电子商务的发展,基于UML和J2EE的企业级应用将发挥越来越重要的作用。
参考文献:
[1]宁波:J2EE结合UML在企业级系统中的应用.计算机工程与科学[J],2004.3
[2]邵维忠梅宏:统一建模语言UML述评.计算机研究与发展[J],1999年第10期
[3][美] John Hunt,Chris Loftus[著],周立斌杨飞等[译].精通J2EE—Java企业级应用[M].清华大学出版社
[4]崔立元罗燕京李刚:基于企事业模型的软件需求工程方法.计算机工程与应用[J],2002,7
[5]谢卫宇王恒山:基于用例驱动分析的软件需求获取方法.计算机与现代化[J],2002年第6期
“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文”