基于OSWorkflow的项目任务调度系统的设计与实现

 2022-01-17 11:01

论文总字数:15781字

目 录

1 绪论 1

1.1 项目任务调度系统简介 1

1.2 项目任务调度系统的开发原则 1

1.3 项目任务调度系统开发的目的和意义 2

1.4 本章小结 2

2技术及开发工具介绍 2

2.1 OsWorkflow技术简介 2

2.2 SSH框架简介 3

2.3 MySql数据库简介 3

2.4 Eclipse简介 4

2.5本章小结 4

3 系统分析与设计 4

3.1 系统需求分析 4

3.2技术可行性分析 5

3.3系统设计 5

3.3.1系统的业务流程图 5

3.3.2系统总体设计 6

3.3.3系统详细设计 7

3.4 本章小结 10

4 系统数据库设计 10

4.1 E-R图 10

4.2 数据库的表结构 13

4.3本章小结 16

5 系统实现 16

5.1 开发环境 16

5.2 系统界面设计实现 17

5.2.1 登陆注册界面 17

5.2.2 用户操作主界面 18

5.2.3 管理员操作主界面 19

5.3 功能模块实现 19

5.3.1 用户分组功能 19

5.3.2 增加任务功能 20

5.3.3 查询自己收到的任务功能 21

5.3.4 查询自己分发的任务功能 22

5.3.4 查询所有任务功能 23

5.3.5请假相关功能 24

5.4 本章小结 25

6 结论 25

参考文献 26

致 谢 27

基于OSWorkflow的项目任务调度系统的设计与实现

王军

,China

Abstract:With the continuous development of society, OA system in the business and the government's daily business gradually occupy the mainstream, workflow applications are increasingly widespread. Enterprise task scheduling also develops from the oral account to the management systems, there has been many systems, lower receive and complete, superior inspection process, but there are also employees directly communicate with customers, received the task, so the design of the system to consider the situation, so that employees should can publish the his task, in order to avoid many problems.This system uses Mysql, Eclipse and Tomcat server development, to achieve the task of publishing, modify, query and other functions, in addition to use OsWorkflow to write leave process. System operation is simple, making the task release system to achieve and record, standardized management, at a glance.

Key words:OSWorkflow;Eclipse;Mysql;Tomcat;Project task scheduling system

1 绪论

1.1 项目任务调度系统简介

项目任务调度系统其实是企业发展中必然会用到的系统,传统的口头交代和用纸质材料记录容易出现记录不清,遗忘等情况,所以电脑软件代替人脑处理这种情况也是发展的必然趋势。这样会避免许多由于粗心大意带来的问题,另外无纸化办公也可以节省人力物力,无形中使得工作效率和成果能得到大大提高。另外系统的记录和查询可以使每个人随时知道自己的任务情况,这样对于任务的管理和追踪完成会有很大帮助,效率也能大大提高。

任务调度一般可以用工作流以上级分发-下级接收-下级完成提交-上级检查的流程来设计,但是考虑到员工与客户直接接触并收到任务的情况,要让每个人也可以记录自己的任务情况,省去找上级的过程,所以未使用工作流实现,而是用传统的SSH框架实现,web前端则使用JSP设计视图页面,相应的功能由后台JAVA代码实现,数据的增删改查则由数据库负责等。另外系统提供请假功能,这样可以省去纸质材料申请的流程,节约人力物力,这可以使用OsWorkflow工作流来实现。

1.2 项目任务调度系统的开发原则

项目任务调度系统基于界面简洁、操作方便的原则,可以让使用者很快熟悉了解,上手操作。系统的设计界面要简洁明了,功能的设计也要明确简单,让人更加容易的去理解。同时,要从多种角色角度考虑系统功能设计,使得系统更加实用。

功能方面,主体功能要一目了然,操作简单,要考虑到用户的具体需求,这是软件设计开发的一大原则。

本系统按照以上原则开发设计,力求使得用户使用方便,让用户能更好的操作该系统,得到预期效果。

1.3 项目任务调度系统开发的目的和意义

该系统通过明确的任务增加、修改和查询等使每个人对于自己的工作情况清楚明确,使工作安排能更加合理,工作效率得到显著提高。该系统对于所有任务的汇总显示可以清楚地显示总体任务情况,也可以看每个人的任务情况。使用该系统可以清楚了解任务安排情况,合理安排任务,工作效率也会得到提高。可以看到每个人的工作任务情况,可以杜绝偷懒拖拉等情况,对于绩效考核有较大帮助。另外提供请假功能,是无纸化办公的一种体现,每个环节的人只要处理好自己的事就可以使得流程顺利跑通。

任务的调度系统目前还不是很多,开发软件来系统管理可以将用数据库来管理众多任务信息,减少由人力完成导致的出错情况,这样对于每个人可以及时了解自己的任务情况,完成好自己的工作,也可避免人力浪费的出现,这样也可以让用户省去安排协调工作的时间,更好地完成更多的任务。

1.4 本章小结

本章节对项目任务调度系统本身做了一个简单的介绍,也介绍了系统开发的原则和开发目的等,为后面开发实现有基础作用。

2技术及开发工具介绍

2.1 OsWorkflow技术简介

Osworkflow是作为一种工作流引擎,它的应用是非常广泛的,它全部是用java语言设计写成的,用户可以非常灵活地按个人意愿来设计工作流流程,但这也导致用户必须对于技术要有所了解。掌握使用工作流,用户便可以把精力和时间用在定义相关的业务和规则,而不是考虑怎么去实现它们。

Osworkflow提供了许多元素,基本都是用户会使用到的元素,如:环节(step)、条件(conditions)、状态(status)、合并(joins)、分支(spilts)和角色(roles)等。

其中Step 描述的是工作流流程处在的位置。Step可以通过设置不同的status状态来划分成多个state,所以工作流在运行中可以从一个步骤 跳到另外一个步骤,也可以运行于同一个Step 内。一个流程里面可以存在多个Step。状态(Status)是用来描绘工作流流程中某个Step(步骤)的状态,在OSWorkflow工作流中可以分为Underway(进行中)、Queued(等候中)和Finished(已结束)三种 Status。

工作流在step间或者一个step内进行流动是通过Action (动作)来触发的。一个step 里面的Action数量是多个的。执行Action的Condition(条件)以及执行此动作后的产生的Result(结果)这两部分组成一个Action。执行了Action之后产生的结果就是Result,由动作的条件是否达成可以产生两种结果,即条件满足后产生的结果Contidional-Result (有条件结果)和 条件为满足而必然产生的结果Unconditional- Result(无条件结果)[8]

工作流可以设置好流程中执行相应的步骤和步骤状态以及步骤之间流转的条件和权限,通过执行每个步骤的动作,就可以实现步骤的流转和状态的变更,也展示了执行相应动作和步骤得到的结果,这样可以使一个流程能够自行运行下去。

2.2 SSH框架简介

SSH框架就是一种开源框架,由spring struts hibernate三个框架集成组成,在如今开发中的使用非常广泛,俗称三大框架,这也体现了其地位。SSH框架主要是针对目前很流行的MVC开发模式来设计的。其中Hibernate是一种处理数据的框架,处于数据模型层,它实际上是封装了java中JDBC技术,使得我们可以使用较少的sql语句去实现数据的增,删,查,改操作。Struts则用于视图层和控制层之间,连接前后台,处理前台发送的请求,调用对应的java方法为页面提供数据,它还使用jstl标签库来动态地展示页面数据,相当于实现MVC中的控制功能。Spring框架在MVC模式中整合整个工程项目,它管理数据层的hibernate和控制用的struts。Spring框架使用了java的反射机制,实现了面向切面编程和依赖注入,它调用实体对象时是运用注入的方式,这样可以节省许多内存空间,使得程序的运行更加顺畅快速。

MVC模式即为Model(模型),Video(视图)和Controller(控制器)三层模式,使用MVC模式进行开发是非常方便的,不同人可以独立负责不同模块代码,且可以很好结合[7],是目前非常流行的一种软件开发模式。

2.3 MySql数据库简介

MySQL是的一种关系数据库,是开放源码的一个项目,现属于Oracle公司,由于mysql不但开源免费而且小巧轻量,使得mysql比oracle更受到中小型网站开发者的欢迎。同时,mysql与Apache配合绝佳,php成为当代网站建站的最方便途径。且mysql支持多种操作系统,提供多种连接途径,用户可以很快上手使用,这都使得使得mysql的市场占有率不断提高。

以本系统为例,由于系统本身较小,服务器则是选择的tomcat,网站整体功能清晰简明,另外mysql数据库查询速度比较快,程序本身比较小,安装也非常方便,所以mysql数据库是开发本系统的最佳选择之一,而且mysql也可以很好地实现系统功能。

2.4 Eclipse简介

Eclipse是一个使用广泛的Java开发软件,其本身是一个源代码公开的项目,并且用户通过安装不同的插件可以支持不同的计算机语言。Eclipse于1999年由OTI和IBM两家公司创建,本是为了代替Visual Age for Java,现已发展成一个巨大的联盟。Eclipse以其开放源代码,所有人可以免费得到的特性使得它的用户群飞速发展壮大。

剩余内容已隐藏,请支付后下载全文,论文总字数:15781字

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;