基于BS结构的团队任务分配系统毕业论文
2020-02-23 18:20:19
摘 要
在团队发展过程中,任务的分配及完成任务后的提交是项目管理的重要内容,传统任务分配和任务执行结果提交方式在转述过程中极容易造成失真,并且对成员的地理位置有较高的要求。团队任务分配系统可以让管理人员为团队每个成员分配不同的任务,并允许对应成员上传任务完成结果。使用B/S架构去开发这样一款web应用程序,不仅具有易于系统开发、后期维护、功能拓展等特点,而且具有很好的跨平台性。
本论文从需求分析、概要设计、详细设计和系统实现等方面对实现团队任务分配系统的过程进行介绍,并总结了在完成毕业设计过程中收获的心得和实现的系统的优缺点。在需求分析章节介绍了系统各方面的需求规定。在概要设计和详细设计章节对整个系统的实现进行了细致规划和设计。在系统实现章节对前端实现和后台编码进行了详细的描述。整个系统分为两个部分,其一是前端部分,采用bootstrap及其拓展插件bootstrap-table和x-editable插件,其二是后台部分,采用java SSH框架。
关键词:spring MVC;bootstrap;B/S架构;团队任务分配系统
Abstract
In the process of team development, the assignment of tasks and the submission of the task after the completion of the task are the important contents of the project management. The traditional assignment of tasks and the submission of the results of the task execution are easy to distort during the process of retelling, and have high requirements for the geographical position of the members. Team task allocation system allows managers to assign different tasks to each member of the team, and allows corresponding members to upload tasks to complete the results. The use of B/S architecture to develop such a web application is not only characterized by easy system development, later maintenance, and functional expansion, but also has a good cross platform.
This thesis introduces the process of realizing team task allocation system from the aspects of requirement analysis, outline design, detailed design and system implementation, and end at the advantages and disadvantages of the achievement and Realization of the system during the completion of graduation design. In the chapter of requirement analysis, the requirements of various aspects of the system are introduced. In the outline design and detailed design section, the implementation of the whole system is carefully planned and designed. In the chapter of system implementation, the front-end implementation and background coding are described in detail. The whole system is divided into two parts, one is the front end, bootstrap and its extension plug-in bootstrap-table and x-editable plug-in, the other is the background part, and the java SSH framework is used.
Key Words:spring MVC;bootstrap;B/S architecture; Team Task Allocation System
目录
第1章 绪论 1
1.1 研究背景 1
1.2 国内外发展现状 2
1.3 研究意义及预期成果 2
第2章 需求分析 3
2.1 开发背景和用户范围 3
2.2 任务概述 4
2.2.1 任务目标 4
2.2.2 系统概述 4
2.2.3 系统特点 4
2.3 需求规定 5
2.3.1 组织结构 5
2.3.2 权限 5
2.4 任务处理流程 6
2.4.1 系统用例图 6
2.4.2 系统处理流程图 7
2.5 系统模块 8
2.5.1 前端模块 8
2.5.2 后台模块 9
第3章 概要设计 10
3.1 引言 10
3.2 总体设计 10
3.2.1 需求规定 10
3.2.2 运行环境 10
3.2.3 概念和处理流程 11
3.3 系统数据库结构设计 12
3.4 系统出错处理 12
第4章 详细设计 14
4.1 模块设计 14
4.1.1 登录模块 14
4.1.2 操作功能模块 15
4.2 数据库 17
4.2.1 E-R图 17
4.2.2 数据库设计图 17
第5章 系统实现 20
5.1 前端框架 20
5.1.1 bootstrap 20
5.1.2 bootstrap-table 20
5.1.3 bootstrap-editable 21
5.2 后台框架 21
5.2.1 spring MVC 21
5.2.2 数据库实现 23
5.2.3 hibernate 24
5.3 系统典型功能实现 25
5.3.1 登录功能 25
5.3.2 分配任务功能 25
5.4 系统功能拓展 26
5.4.1 前端实现简述 26
5.4.2 后台实现简述 27
第6章 总结与展望 28
6.1 总结 28
6.2 展望 28
参考文献 29
致谢 30
第1章 绪论
1.1 研究背景
团队由不同的人为了一个共同的目标而组成,团队是组成其它更大组织的基础。团队在管理过程中会存在许多问题,比如团队成员每个人都有自己的想法或者团队成员不愿认同他人等等。而解决这一系列团队问题的一个方法就是通过绩效进行团队管理,成员的绩效则通过完成任务来衡量。
任务分配作为一个团队发展的重要推动力,对于团队的发展是非常重要的。团队的发展速度和质量很大一部分依赖于任务的下达和完成的效率,这两个阶段效率得到提高,那么团队的发展就会迅速高效。
传统的任务分配方式是通过口头通知,正式的任务分配则有会议等方式。这样的“手工”方式不仅效率低,而且任务在转述过程中会严重失真,导致任务完成的准确度严重下降。
在21世纪,计算机硬件和软件高速发展,全球各个国家和区域都逐渐进入信息化时代。信息化已成为国家发展、社会进步的必然趋势,信息化程序的高低逐渐成为了衡量一个国家综合实力与现代化水平的重要标志[1]。当前众多团队和企业内部组织分配任务大多通过微信、TIM(非正式)以及office文档、文件(相对正式)。当然也有比较成体系的系统如钉钉,但是钉钉的功能臃肿,必须下载对应不同系统的APP才能使用。
本毕业设计课题目的就是开发一款基于B/S结构的团队任务分配系统。实现任务的分配以及完成任务后的提交任务执行结果这两个重要功能。要求:管理员可以为团队内任意成员分配任务,并分为隐私任务和公开任务;其他成员可以查看属于自己的所有任务和其他人的公开任务;成员完成自己的任务后,可以提交文档、图片、视频等形式的任务执行结果;管理员审核通过任务、拒绝任务、取消任务;被拒绝的任务要求对应成员重新完成;任务被通过后或取消后,该任务事件关闭。
本文通过当下流行的SSH框架开发一款功能简便、兼容性高、拓展性好的java web应用程序,以此来提高团队任务分配和执行的效率。本系统以提高团队协作效率、保证任务执行准确度、简化系统操作性为目标。这样开发的系统可以适用于很大一部分团队,并且团队可以根据各自的需求进行功能拓展,以达到团队任务管理智能化的最终目标。
本系统后台采用 java SSH 框架,前端采用bootstrap及其拓展插件bootstrap-table和x-editable插件,数据库则采用mysql轻量级数据库。
1.2 国内外发展现状
随着计算机软硬件技术的高速发展,计算机应用广泛用于现代生活工作的各个方面,“互联网 ”的概念深入人心。“互联网 商业”就成为了当今最大的兴起行业——“电商”;“互联网 农业”则成为了科技农田。
目前,作为团队发展重要部分的任务管理多是通过口头传述、召开会议、语音通信,或者是微信、邮箱、TIM等软件来进行。不仅效率不够高,并且任务经不同人员转述后会有一定程度的失真。
说到团队管理,不得不谈到办公自动化。它兴起于50年代的美国和日本,原本只用来进行电子数据处理,经过10年的发展,被管理信息系统取代,到70年代后期初步形成办公自动化的概念。在80年代和90年代,办公自动化得到蓬勃发展。在国内,办公自动化的发展过程可分为三个阶段。第一个阶段:从80年代到90年代,以个人电脑为主要标志,将信息载体从纸介质转向比特形式。第二个阶段:从90年代开始,以网络技术和协同技术为主要特征,将收发文从手工方式转向工作流自动化方式。第三个阶段,就是目前我们正在经历的阶段,办公自动化成为了一个集信息处理、业务流程和知识管理于一体的应用系统。作为办公自动化重要组成部分的团队任务管理也在该过程中得到长远发展。
随着计算机技术和web技术的发展,办公自动化系统应用的结构也由C/S转变成了B/S结构。B/S结构对C/S结构的改进,它是随着Internet/Intranet/Extranet技术发展起来的,尤其是基于web(html,http)的信息发布和检索技术[2]。B/S结构相对于C/S结构有以下优点:一是B/S结构对硬件的要求低,有更大的适用范围。二是由于客户端只需要下载浏览器就可以正常使用该系统,所以B/S结构有更强的兼容性。
1.3 研究意义及预期成果
研究意义:开发出一款兼容性强的web程序,使其满足团队任务分配各方面的需求。要求系统的拓展性强、转接容易,稍加维护拓展后可适用于各个处于不同环境和拥有不同条件配置的团队。
预期成果:跨平台性强的javaweb程序,兼容性强的web前端页面,mysql轻量级数据库系统。
第2章 需求分析
本章节详细描述团队任务分配系统的需求,其必须满足以下要求:
a无歧义性:对最终产品的每一个特性用某一术语描述;若某一术语在某一特殊的行文中使用时具有多种含义,那么应对该术语的每种含义做出解释并指出其适用场合。
b完整性:需求分析报告应该包括全部有意义的需求,无论是关系到功能的、性能的、设计约束的,还是关系到外部接口方面的需求;对所有可能出现的输入数据的响应予以定义,要对合法和非合法的输入值的响应做出规定;填写全部插图、表、图示标记等;定义全部术语和度量单位。
c可验证性:需求分析报告描述的每一个需求应是可以验证的。可以通过一个有限处理过程来检查软件产品是否满足需求。
d一致性:在需求分析报告中的各个需求的描述不能互相矛盾。
e可修改性:需求分析报告应具有一个有条不紊、易于使用的内容组织;没有冗余,即同一需求不能在需求分析报告中出现多次。
f可追踪性:每一个需求的源流必须清晰,在进一步产生和改变文件编制时,可以方便地引证每一个需求。
g运行和维护阶段的可使用性:需求分析报告必须满足运行和维护阶段的需要。在需求分析报告要写明功能的来源和目的 [3] 。
2.1 开发背景和用户范围
在团队开发中,任务的分配以及完成任务后的提交是项目管理的重要内容。团队任务分配系统可以让管理人员为团队每个成员分配不同的任务。
由于团队每个成员可能遇到各种情况,如:马上就要到任务的截止日期,但是身边有手机但没有电脑,或者有电脑没有手机,这时候C/S架构的系统就非常不方便。为了团队成员的方便使用以及系统的功能拓展性,所以采用B/S架构。
团队任务分配系统的用户为团队的领导者、普通研究员以及系统的管理者。领导者负责分配任务,普通研究员提交任务,系统管理者负责对用户信息进行维护。
2.2 任务概述
2.2.1 任务目标
设计一套基于B/S结构的团队任务分配系统。要求:
a.管理员可以为团队内任意成员分配任务,并分为隐私任务、公开任务;
b.成员可以看到属于自己的所有任务和其他人的公开任务;
c.成员完成自己的任务后,可以提交任务结果,任务结果的形式包括:文档、图片、视频等;
d.管理员可以通过该任务、拒绝或取消任务;
e.被拒绝的任务需要对应成员重新完成;
f.任务被通过或取消后,该事件完成并关闭。
2.2.2 系统概述
团队任务分配系统是一个基于B/S架构的兼容性强的跨平台系统。前端采用html5,jsp,css3等流行前端语言。后台采用java编写,java的面向对象的思想就决定了它的代码的重用性,从而提高了系统的开发效率,且java语言具有的“跨平台”的操作能力、“高性能”、“分布性”、“强大性”、“解释性”、“可移植性”等巨大的功能[4]。整个系统符合MVC模式,前后台分离,前端负责展示数据处理结果,后台负责处理数据,前后台的连接方式采用表单和ajax技术。该系统开发完成后,能适应不同的系统,并且拓展性好,后期维护容易。
MVC中的M在web服务器中,表示用java语言编写项目中相关的数据类,将项目中复杂的数据拆分成独立的模块把相似的数据属性封装在java类中利用了java中面向对象的设计思想,使项目中数据传输逻辑更清晰且简化开发难度;V是依据创建模型数据,处理数据显示的部分负责在web前端进行数据可视化;C是处理业务逻辑的主要部分,用户通过编写自己定义的java类向模型数据对象发送数据[5]。
数据则采用mysql数据库,理由如下:该系统不是企业级的系统,使用人数不会很大,mysql这种轻量级数据库就能完全满足需求。
2.2.3 系统特点
传统的任务分配是管理人员口头或者书面传达任务,任务执行者要通过开会或者阅读书面文件了解自己的任务,而且任务执行完成后提交任务也要与管理人员面对面交流,在任务开始和结束时会浪费大量时间。团队任务分配系统能大大缩短任务开始和结束这两个阶段的时间,提高团队工作效率,而且系统中的任务内容也能很好的提醒研究人员自己的职责和任务,管理者也能很好的知道整个项目中各项工作的进度,方便宏观调控。
2.3 需求规定
2.3.1 组织结构
组织结构如图2.1所示。
图2.1 用户组织结构图
一级管理员可以给二级管理员分配任务,也可以直接给研究员分配任务。并有审核任务的权限。
二级管理员可以给研究员分配任务,以及提交完成一级管理员下发的任务执行结果。并有审核研究员提交任务的权限。
研究员完成被分配的任务,并提交任务执行的结果。
所有人员的身份,通过系统管理员来进行设置。上图的权限树状图是一个相对的状态。比如一个人员甲是一级管理者,但是他被安排到二级管理员乙负责的团队来进行研究,则此时乙也能够给甲分配任务,此时甲的身份是一级管理员和研究员双重身份(但是这是一种特例,不是非常普遍,在本次最终系统中不予实现)。
2.3.2 权限
团队任务分配系统是为方便团队快速发布以及提交任务的系统,团队成员之间有相对的管理层次,管理员向下一级人员分配任务,下一级人员向上一级人员提交任务执行成果。任务有隐私任务和公开任务,每个人的隐私任务只能由个人以及上级查看,同级不能查看。而公开任务则是上级人员,下级人员以及同级人员都能查看。每个人的身份等级由系统管理员进行统一管理。
2.4 任务处理流程
2.4.1 系统用例图
系统主要功能是对任务进行任务分配,提交任务执行成果以及对任务执行结果进行审核,系统用例图如图2.2所示。
图2.2系统用例图
系统有4类参与者:系统管理人员、管理人员、二级管理人员以及研究人员。系统管理人员负责人员信息的表的录入,所以与录入员工信息用例交互。管理人员负责分配任务、审核任务,所以管理人员与发布任务用例和审核任务用例交互。二级管理员是管理人员和研究人员的综合,所以与多个用例交互。研究人员需要接受和提交任务,所以与提交任务结果用例和接受任务用例交互。
2.4.2 系统处理流程图
1.管理员分配任务流程图如2.3所示。
图2.3 管理员分配任务流程图
管理员下发任务时,先选择任务类型(公开任务或者隐私任务),公开任务所有人都可见,隐私任务只有管理员和个人可以看见。选择任务类型后再填写任务的相关信息,最后分配任务到具体的人,然后等待任务被下达人接受,如果长时间没有接受,必要时则通知本人进入该系统接受任务。
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示: