《基于Springboot的项目管理系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《基于Springboot的项目管理系统的设计与实现.doc(64页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、北京理工大学珠海学院2020届本科生毕业设计诚信承诺书本人郑重承诺:本人承诺呈交的毕业设计基于Springboot的项目管理系统的设计与实现是在指导教师的指导下,独立开展研究取得的成果,文中引用他人的观点和材料,均在文后按顺序列出其参考文献,设计使用的数据真实可靠。本人签名: 日期: 年 月 日 基于Springboot的项目管理系统的设计与实现摘 要现今,各家公司对各项目的管理趋向于信息智能化,科技公司更为突出,为了使公司更加方便地对项目进行有效管理,同时也减少公司的成本开销,所以定制开发一个公司内部的项目管理系统是十分重要的,同时也符合了科技公司的高新技术化。本项目管理系统的设计与实现从获
2、取需求开始,然后进一步需求分析,再到系统设计以及功能编码,最后系统测试这5个主要步骤流程。整个系统主要分为前台用户端和后台管理端,采用B/S架构,后端数据库用MySQL5.7、服务器用Tomcat9.0版本,使用Springboot框架整合Mybatis持久层框架和Shiro权限安全框架技术,前端使用Thymeleaf模板引擎、CSS、jQuery、JavaScript、bootstrap以及Ajax + Json技术进行开发。系统分为13个模块:首页信息计算统计模块、管理员分配用户角色权限模块、项目信息总览模块、任务信息总览模块、管理员维护角色模块。项目进度管理模块、管理员维护项目模块、任务
3、创建指派流程模块、文档中心模块、项目负责人立项模块、项目成员管理模块、用户管理员登录模块、管理员维护用户模块。关键词:项目管理系统;软件系统;信息化;权限;Springboot;Design and Development of Project Management System based on SpringbootAbstractNowadays, companies for the purpose of management tends to intelligent information, science and technology company is more outstandi
4、ng, in order to make the company more easily to effective management of projects, but also reduce the cost of the company cost, so the custom development of a companys internal project management system is very important, also accord with the technology of high and new technology.The design and impl
5、ementation of the project management system starts from obtaining requirements, then further requirements analysis, then to the system design and function coding, and finally the system test process of these five main steps.The whole system is mainly divided into the foreground client end and the ba
6、ckground management end, using B/S architecture, the back-end database with MySQL5.7, server Tomcat9.0 version, the use of Springboot framework integration of Mybatis persistence layer framework and Shiro permission security framework technology, the front using Thymeleaf template engine, CSS, jQuer
7、y, JavaScript, bootstrap and Ajax + Json technology development.The system is divided into 13 modules: homepage information calculation and statistics module, administrator assign user role authority module, project information overview module, task information overview module, administrator mainten
8、ance role module.Project progress management module, administrator maintenance project module, task creation and assignment process module, document center module, project leader project approval module, project member management module, user administrator login module, administrator maintenance use
9、r module.Keywords: Project management system; Software system; Informatization; Permissions; Springboot;目录1 前言11.1 项目开发背景11.2 项目开发的意义12 可行性分析22.1 技术可行性22.2 经济可行性22.3 操作可行性22.4 社会可行性23 需求分析33.1 系统参与者33.1.1 后台管理员33.1.2 项目负责人33.1.3 开发人员43.1.4 测试人员43.2 功能需求分析43.3 性能需求分析53.4 系统业务用例53.4.1 前台用户系统总用例图53.4.2
10、 后台管理系统总用例图63.4.3 用户管理员登录模块73.4.4 项目管理模块83.4.5 任务管理模块113.4.6 文档中心模块133.4.7 用户管理模块153.4.8 角色管理模块183.4.9 分配用户角色权限模块183.4.10 个人统计模块194 概要设计214.1 系统整体流程图214.2 领域模型224.3 模块结构224.3.1 模块结构图234.3.2 模块结构表234.4 数据库设计244.4.1 系统数据库E-R图244.4.2 系统数据库总表244.4.3 数据字典254.5 项目api接口设计275 详细设计305.1 程序开发视图305.2 系统类关系图305
11、.3 系统详细设计325.3.1 登录页面325.3.2 用户端项目面板页面325.3.3 用户端维护项目成员变动335.3.4 用户端任务面板页面345.3.5 用户端上传文档资料页面345.3.6 用户端指派需求任务355.3.7 用户端处理任务355.3.8 管理端管理用户信息365.3.9 管理端导入Excel数据表格365.3.10 管理端分配用户权限375.3.11 管理端管理已审核项目385.3.12 管理端审核项目386 软件测试406.1 测试环境406.1.1 服务器端环境406.1.2 客户端测试环境406.2 测试计划406.2.1 总体描述406.2.2 测试原则41
12、6.2.3 测试方法416.3 测试用例416.3.1 用户登录测试用例416.3.2 管理员登录测试用例426.3.3 项目负责人创建需求任务测试用例426.3.4 项目负责人指派需求测试用例426.3.5 用户上传文档资料测试用例436.3.6 管理员管理用户测试用例436.3.7 管理员导入用户Excel表格测试用例446.3.8 管理员分配用户权限测试用例446.3.9 管理员管理已审核项目测试用例446.3.10 管理员审核立项项目测试用例456.4 测试总结457 总结47参考文献48谢 辞49附 录501 前言1.1 项目开发背景近年来,各家公司对各项目的管理趋向于信息智能化,科
13、技公司更为突出,多个项目往往都是并行由多个团队在负责的,而项目如何管理才能使团队的交流和协作更为便捷和信息化,规范软件项目开发流程的严谨性。目前虽有一些优秀的项目管理协作工具,比如Teambition这种软件,不过这种工具免费版只开放一些功能而已,而且限制团队成员人数,只有用收费版才能有更多的功能及使用权。为了使公司更加方便地对项目进行有效管理,同时也减少公司的成本开销,此课题的背景是开发一个定制属于公司的项目管理系统,从实际出发,打造轻量型的项目管理系统,方便项目成员对项目有一个整体参与以及项目负责人对项目的整体把控。1.2 项目开发的意义设计并实现一个项目管理系统,使项目负责人和项目成员可
14、以更加快捷、方便完成项目,同时也规范化整个项目管理流程。本系统的设计目标是立足于中小型科技公司的内部项目管理协作方面的实际需要,面向公司内项目的所有成员,建立一个使用便捷、可靠的项目管理系统,从而更方便地对项目的研发过程进行规范化管理以及对项目进度进行把控。2 可行性分析2.1 技术可行性本系统对技术的要求不算太难,但要求开发人员有一点项目经验。主要软件有Intellij IDEA 2017,MySQL 5.7,技术上后端架构使用当前主流的Java Web框架Springboot,整合了权限安全框架Shiro,还有持久层框架Mybatis,前端架构则使用了bootstrap、jQuery、Th
15、ymeleaf、CSS、JavaScript、ajax+json等前端技术。2.2 经济可行性整体上此系统比较简便,需要一台装有浏览器的win10系统的PC电脑就够了。然后安装好MySQL 5.7数据库,Intellij IDEA 2017编程开发工具即可,而tomcat应用服务器在springboot框架已经内嵌了一个tomcat9版本,稍作配置即可使用。2.3 操作可行性本系统整体上比较简便,本系统一旦部署好,就只需要打开Web浏览器即可访问本系统。2.4 社会可行性 在企业中,都会有大大小小的各个项目,而如何有效及规范的管理这些项目,使得在项目管理和协作中达到敏捷开发管理,这是很有必要的
16、,项目管理系统符合现实企业实际场景。3 需求分析此系统的受众是科技公司内部的项目管理过程中的所有项目负责人、开发人员、测试人员、以及系统后台管理员。整个项目管理流程分为需求创建,指派需求任务、处理开发任务、处理测试任务、需求审核验收,不同的角色会有相应不同的权限操作,项目负责人在登录进系统后是可以进行立项操作的,然后由后台管理员去审批是否通过立项,然后可对已立项通过项目进行创建需求任务并指派给对应项目成员进行处理,而当是项目成员登录进系统只能查看参与项目的任务,同时不能对需求任务进行编辑,只可查看。系统还建立了一个文档中心,可支持用户上传下载项目文件资料共享,方便管理。后台管理员可对系统的项目
17、模块、文档中心、用户模块、角色模块进行维护操作,还支持站内搜索功能和导入导出功能。同时,该系统主要分为十三个功能模块,有首页信息计算统计模块、管理员分配用户角色权限模块、项目信息总览模块、任务信息总览模块、管理员维护角色模块。项目进度管理模块、管理员维护项目模块、任务创建指派流程模块、文档中心模块、项目负责人立项模块、项目成员管理模块、用户管理员登录模块、管理员维护用户模块。此外,通过对角色权限的分配,从而实现对不同用户的不用粒度的权限控制,主要体现在三类角色上,项目负责人,项目成员,管理员。3.1 系统参与者分析所得,本系统有后台管理员,项目负责人,开发人员,测试人员四个类角色,分别有不同的
18、操作权限。3.1.1 后台管理员 后台管理员是个很特殊的角色,只有管理员才可以进入项目管理系统的管理端,其他角色均不可。管理员可以在后台系统中审核正在立项的项目,对项目的增加、删除、修改、查询,对用户和角色信息的导入和批量导入,对文档中心共享的资料进行维护,还有最重要的是对用户角色进行分配授权操作,最后还可以把各模块的信息批量导出到Excel表格。3.1.2 项目负责人项目负责人是系统的主要用户,他们相比起普通的项目成员多了一些更高的权限,比如项目负责人是可以立项操作的,也可以创建需求任务并指派需求,而这些操作对于普通的项目成员是没法编辑的,只能查看。还有一些与项目成员一样的功能,支持站内搜索
19、文档资料以及上传下载文档资料在项目内共享。3.1.3 开发人员开发人员就相当于普通的项目成员,可对所参与项目的需求进行查看,但不能编辑,同时可以对自身的开发任务进行移交操作和处理完任务执行下一步操作,使任务流程指向测试阶段。3.1.4 测试人员测试人员也相当于普通的项目成员,一样可以对参与项目的需求进行查看,但不能编辑,同时对开发人员开发出来的功能进行测试,找出隐藏的bug。3.2 功能需求分析本系统为了实现项目管理的一体化,提高项目管理工作的效率。共拆分出十三个功能模块,即首页信息计算统计模块、管理员分配用户角色权限模块、项目信息总览模块、任务信息总览模块、管理员维护角色模块。项目进度管理模
20、块、管理员维护项目模块、任务创建指派流程模块、文档中心模块、项目负责人立项模块、项目成员管理模块、用户管理员登录模块、管理员维护用户模块。 用户管理员登录模块: 用户登录系统和管理员登录系统。 项目信息总览模块:显示与当前登录用户相关的项目信息情况,查看项目详情 首页信息计算统计模块:统计当前登录用户参与的任务数与项目数 任务信息总览模块:显示与当前登录用户相关的任务信息情况 项目成员管理模块:项目负责人维护着项目成员的变动 项目进度管理模块:根据任务数和已完成的任务数对项目进度进行计算并显示 任务创建指派流程模块:项目负责人创建系统需求任务,然后指派需求任务给开发人员,当开发人员登录系统用户
21、端即可看到任务并处理开发任务,之后测试人员登录系统就可看到开发人员处理好的功能任务,开始处理测试任务,最后项目负责人审核验收需求 文档中心模块:建立起一个文档中心,所有项目用户和管理员都可以上传和下载文档资料到各个参与的项目,后台管理员还可知道文档的存放路径 项目负责人立项模块: 当是项目负责人的身份进入系统时,才能发起添加项目申请,待后台管理员通过审核后才能执行项目 管理员维护项目模块:后台管理员在后台审核项目负责人发起的立项申请,同时也对已审核项目进行维护管理,支持站内搜索、插入、导入、导出、修改等操作 管理员维护用户模块:后台管理员在后台对用户进行管理维护,支持站内搜索、插入、导入、导出
22、、修改等操作 管理员维护角色模块:后台管理员对角色信息进行增加、修改、删除、查询、支持批量导入导出角色 管理员分配用户角色权限模块:管理员在添加用户后,给用户分配角色权限3.3 性能需求分析性能需求指的是保证系统安全稳定有效运行的基本要求。本系统至少需要符合以下的软件硬件要求: 服务器端基本要求: CPU:Intel(R) Core(TM) i5-6200U 内存:8.00 GB 操作系统:Windows 10 Pro 数据库:MySQL 5.7 Web服务器: Tomcat 9 开发平台:Intellij IDEA 2017 ,JDK1.8 开发语言:JAVA 开发框架:Springboot
23、+Mybatis+Shrio 系统架构:B/S(browser/server)客户端基本要求: PC: 带有游览器的PC即可 浏览器:Google Chrome、Firefox、3.4 系统业务用例3.4.1 前台用户系统总用例图此用例是前台用户系统主要用例,除了有登录、还有上传文档资料、下载文档资料、删除文档资料、站内搜索文档、处理任务、显示参与任务数、查看项目进度共8个用例,涵盖了用户从登录系统到退出的整个项目参与流程,此外,项目负责人还特有创建需求任务、立项、维护项目成员变动、审核需求任务、指派需求任务、删除需求任务共6个用例。图3.1 前台用户系统总用例图3.4.2 后台管理系统总用例
24、图此用例是后台管理系统主要用例,除了有登录、还有审核立项的项目、维护已通过审核项目的信息、维护用户信息、维护角色信息、维护文档资料、站内搜索文档、分配用户角色权限、批量导入数据、批量导出数据Excel总成绩导出等。图3.2 管理员端总用例图3.4.3 用户管理员登录模块图3.3 用户管理员登录模块用例图用例1:用户进入系统 参与者:项目经理或项目成员 范围:项目管理系统用户端 前置条件:操作者账号信息已录入数据库 后置条件:用户网络正常 主要步骤:1. 用户输入自己的用户ID和密码。2. 点击登录按钮。3. 登录成功,页面自动跳转至用户端主页。 替代步骤:2a. 密码或用户名有误:1. 登录失
25、败,页面自动返回到登录页面。用例2:管理员进入系统 参与者:管理员 范围:项目管理系统管理员端 前置条件:操作者账号信息已录入数据库 后置条件:网络正常 主要步骤:1. 管理员输入自己的管理员ID和密码。2. 点击登录按钮。3. 登录成功,页面自动跳转至管理员主页。 替代步骤:2a. 密码或用户名有误:1. 登录失败,页面自动返回到登录页面。3.4.4 项目管理模块图3.3 项目管理模块用例图用例3:项目负责人立项项目 参与者:项目经理 范围:项目管理系统用户端 前置条件:项目经理已经成功登录项目管理系统用户端 后置条件:用户网络正常 主要步骤:1. 项目负责人点击项目面板中的添加项目按钮2.
26、 系统进入添加项目页面,显示需要填写的信息表单3. 项目负责人填写对应项目的信息4. 点击确定提交按钮5. 系统自动保存项目负责人所填写的内容用例4:维护项目成员变动 参与者:项目经理 范围:项目管理系统用户端 前置条件:用户已经成功登录项目管理系统用户端 后置条件:用户网络正常 主要步骤:1. 项目负责人点击项目面板的各项目模块2. 系统进入项目详情页面3. 项目负责人点击项目成员处修改框4. 重新输入项目成员,用、分隔5. 之后点击保存,系统自动会保存项目负责人对项目成员的维护变动用例5:查看项目 参与者:项目经理或项目成员 范围:项目管理系统用户端 前置条件:用户已经成功登录项目管理系统
27、用户端 后置条件:用户网络正常 主要步骤:1. 项目负责人或项目成员点击项目面板的各项目模块2. 系统进入项目详情页面用例6:查看项目 参与者:管理员 范围:项目管理系统管理端 前置条件:管理员已经成功登录项目管理系统管理端 后置条件:管理员网络正常 主要步骤:1. 管理员点击项目中心菜单2. 点击管理已审核项目子菜单3. 系统进入已审核项目信息总览页面用例7:删除项目 参与者:管理员 范围:项目管理系统管理端 前置条件:管理员已经成功登录项目管理系统管理端 后置条件:管理员网络正常 主要流程1. 管理员点击项目中心菜单2. 点击管理已审核项目子菜单3. 系统进入已审核项目信息总览界面4. 鼠
28、标选择到要想删除的那个项目的条目5. 点击那条目的删除按钮6. 系统自动弹出删除确认框,点击确认按钮7. 系统删除项目信息用例8:审核立项项目 参与者:管理员 范围:项目管理系统管理端 前置条件:管理员已经成功登录项目管理系统管理端 后置条件:管理员网络正常 主要步骤1. 管理员单击项目中心菜单进入后再单击审核项目子菜单2. 系统进入未审核项目信息总览界面3. 鼠标选择到要想审核的那个项目的条目并点击那条目的审核按钮4. 系统进入立项项目的项目详情信息5. 选择下拉选框,选择状态为通过审核或者拒绝通过审核并提交 替代步骤:7a. 选择通过审核1. 系统返回审核项目列表2. 审核项目列表中当前审
29、核通过的项目已不存在7b. 选择拒绝通过审核1. 系统返回审核项目列表2. 审核项目列表中当前审核通过的项目仍然存在3. 可以选择一件清空立项的所有项目4. 管理员重复1-7步,重新审核用例9:站内搜索项目 参与者:管理员 范围:项目管理系统管理端 前置条件:管理员已经成功登录项目管理系统管理端 后置条件:管理员网络正常 主要步骤1. 管理员点击项目中心菜单2. 点击管理已审核项目子菜单3. 系统进入已审核项目信息总览界面4. 鼠标移动到搜索框5. 输入关键字并点击搜索按钮用例10:批量导出项目 参与者:管理员 范围:项目管理系统管理端 前置条件:管理员已经成功登录项目管理系统管理端 后置条件
30、:管理员网络正常 主要步骤1. 管理员点击项目中心菜单2. 点击管理已审核项目子菜单3. 系统进入已审核项目信息总览界面4. 点击批量导出详细项目信息Excel表按钮5. 选择要保存的本地路径6. 系统自动下载Excel表格数据3.4.5 任务管理模块图3.4 任务管理模块用例图用例11:项目负责人创建需求任务 参与者:项目经理 范围:项目管理系统用户端 前置条件:项目负责人已经成功登录项目管理系统用户端 后置条件:用户网络正常 主要流程1. 项目负责人点击任务面板模块2. 点击添加,系统进入添加任务的页面3. 输入相关任务信息后,点击添加按钮4. 添加成功或失败的提示框弹出5. 随后跳转到任
31、务面板页面用例12:项目负责人删除需求任务 参与者:项目经理 范围:项目管理系统用户端 前置条件:项目负责人已经成功登录项目管理系统用户端 后置条件:用户网络正常 主要步骤1. 项目负责人点击任务面板模块2. 选中要删除的需求任务块3. 点击任务块中的删除按钮4. 系统弹出删除确认框5. 点击确认后立即删除任务用例13:项目负责人指派需求任务 参与者:项目经理 范围:项目管理系统用户端 前置条件:项目负责人已经成功登录项目管理系统用户端 后置条件:用户网络正常 主要步骤1. 项目负责人点击任务面板模块2. 选中要指派的需求任务块3. 点击任务块中的指派按钮4. 系统弹出指派项目成员名单模态框5
32、. 在下拉选项中选择要指派的项目成员6. 点击确认后此需求任务就挂在了被指派者的任务下用例14:项目成员处理任务 参与者:项目成员 范围:项目管理系统用户端 前置条件:项目成员已经成功登录项目管理系统用户端 后置条件:用户网络正常 主要步骤1. 项目负责人点击任务面板模块2. 选中要指派的需求任务块3. 点击任务块中的指派按钮4. 系统弹出指派项目成员名单模态框5. 在下拉选项中选择要指派的项目成员6. 点击确认后此需求任务就挂在了被指派者的任务下用例15:项目成员查看任务详情 参与者:项目成员 范围:项目管理系统用户端 前置条件:项目成员已经成功登录项目管理系统用户端 后置条件:用户网络正常
33、 主要步骤1. 项目负责人点击任务面板模块2. 选中要查看的需求任务块3. 点击任务块中的查看详情按钮4. 系统进入任务详情页面3.4.6 文档中心模块图3.5文档中心模块用例图用例16:上传文档资料 参与者:项目成员或项目经理 范围:项目管理系统用户端 前置条件:用户已成功登录项目管理系统用户端 后置条件:用户网络连接正常 主要步骤1. 用户点击文档中心模块2. 系统进入文档资料展示页面3. 点击上传文档资料按钮4. 选择文档所属项目的项目ID5. 选择本地要上传的文件6. 最后点击添加按钮用例17:下载文档资料 参与者:项目成员或项目经理 范围:项目管理系统用户端 前置条件:用户已成功登录
34、项目管理系统用户端 后置条件:用户网络连接正常 主要步骤:1. 用户点击文档中心模块2. 系统进入文档资料展示页面3. 选中要下载的文档资料条目4. 点击下载图标按钮5. 选择本地要保存的路径用例18:站内搜索文档 参与者:项目成员或项目经理 范围:项目管理系统用户端 前置条件:用户已成功登录项目管理系统用户端 后置条件:用户网络连接正常 主要步骤1. 用户点击文档中心模块2. 系统进入文档资料展示页面3. 在搜索框中输入要搜索的关键字4. 点击搜索按钮用例19:删除文档资料 参与者:项目成员或项目经理 范围:项目管理系统用户端 前置条件:用户已成功登录项目管理系统用户端 后置条件:用户网络连
35、接正常 主要步骤1. 用户点击文档中心模块2. 系统进入文档资料展示页面3. 选中要删除的文档资料条目4. 单击删除按钮,系统弹出删除确认框5. 单击确认按钮立即删除3.4.7 用户管理模块图3.6用户管理模块用例图用例20:添加用户 参与者:管理员 范围:项目管理系统管理端 前置条件:管理员已成功登录项目管理系统管理端 后置条件:网络连接正常 主要步骤:1. 单击管理用户菜单下的维护用户信息子菜单2. 单击添加用户按钮3. 系统跳转到添加用户界面4. 输入用户必填信息5. 点击添加按钮,系统立即保存用户数据用例21:站内搜索用户 参与者:管理员 范围:项目管理系统管理端 前置条件:管理员已成
36、功登录项目管理系统管理端 后置条件:网络连接正常 主要步骤1. 管理员点击管理用户菜单下的维护用户信息子菜单2. 在搜索框中输入搜索关键字3. 点击搜索按钮4. 系统自动匹配搜索出对应的用户数据并进行展示用例22:修改用户信息 参与者:管理员 范围:项目管理系统管理端 前置条件:管理员已成功登录项目管理系统管理端 后置条件:网络连接正常 主要步骤1. 管理员点击管理用户菜单下的维护用户信息子菜单2. 选中要修改用户的条目3. 点击编辑按钮4. 系统自动跳转到用户数据编辑页面5. 修改完后点击更新按钮6. 系统自动保存用户最新数据用例23:删除用户信息 参与者:管理员 范围:项目管理系统管理端
37、前置条件:管理员已成功登录项目管理系统管理端 后置条件:网络连接正常 主要步骤1. 管理员点击管理用户菜单下的维护用户信息子菜单2. 选中要删除的条目,点击删除按钮3. 系统弹出删除确认框4. 点击确认按钮,系统立即删除用户数据用例24:批量导入用户信息 参与者:管理员 范围:项目管理系统管理端 前置条件:管理员已成功登录项目管理系统管理端 后置条件:网络连接正常 主要步骤1. 管理员点击管理用户菜单下的维护用户信息子菜单2. 先点击下载Excel模块按钮3. 本地按照模块的格式填写好对应用户数据4. 点击批量导入用户按钮5. 弹出导入用户Excel模态框6. 选择刚才编辑好的用户Excel上
38、传到系统7. 点击提交按钮后系统自动进行批量导入操作用例25:批量导出用户信息 参与者:管理员 范围:项目管理系统管理端 前置条件:管理员已成功登录项目管理系统管理端 后置条件:网络连接正常 主要步骤1. 管理员点击管理用户菜单下的维护用户信息子菜单2. 点击批量导出用户按钮3. 选择本地保存的导出路径4. 点击确认,系统自动导出用户数据Excel表3.4.8 角色管理模块图3.7角色管理模块用例图用例26:批量导出用户信息 参与者:管理员 范围:项目管理系统管理端 前置条件:管理员已成功登录项目管理系统管理端 后置条件:网络连接正常 主要步骤1. 管理员点击管理角色菜单下的维护角色信息子菜单
39、2. 点击批量导出角色按钮3. 选择本地保存的导出路径4. 点击确认,系统自动导出用户数据Excel表3.4.9 分配用户角色权限模块图3.8分配用户角色权限模块用例图用例27:分配用户角色权限 参与者:管理员 范围:项目管理系统管理端 前置条件:管理员已成功登录项目管理系统管理端 后置条件:网络连接正常 主要步骤1. 管理员点击分配用户角色菜单2. 系统进入用户角色分配页面3. 在搜索框输入用户ID或者用户名4. 点击搜索按钮5. 之后在下拉选框中选择目前系统所分配的角色岗位6. 最后点击确认分配角色按钮3.4.10 个人统计模块图3.9个人统计模块用例图用例28:查看个人处理任务数 参与者
40、:项目经理或者项目成员 范围:项目管理系统用户端 前置条件:系统自动统计好个人处理任务数,用户已成功登录项目管理系统用户端 后置条件:网络连接正常 主要步骤1. 用户点击首页模块2. 进入首页任务数据统计展示页面用例29:查看个人参与项目数 参与者:项目经理或者项目成员 范围:项目管理系统用户端 前置条件:系统自动统计好个人参与项目数,用户已成功登录项目管理系统用户端 后置条件:网络连接正常 主要步骤1. 用户点击首页模块2. 进入首页项目数据统计展示页面4 概要设计4.1 系统整体流程图图4.1系统整体流程图 上图为系统整体流程图,直观简洁地描述了系统整体执行流程,第一步是登录系统,判断用户
41、ID与密码是否相符,同时判断登录者身份,如果是项目负责人,可以进行项目需求任务的创建和指派需求给对应的项目成员以及最后项目需求任务的审核,如果是开发人员,可根据被指派的需求任务处理自身的开发任务,如果是测试人员,可根据被指派的需求任务处理自身的测试任务。如果登录身份是管理员,则进入管理员后台页面,对所有项目进行维护管理,若有正在立项的项目也可以对其进行审核,同时管理员负责在后台添加和删除用户信息,也可通过导入导出功能实现批量添加用户,还要对用户的角色权限进行分配。4.2 领域模型领域模型从业务出发,专注于分析问题领域,下图是我做出的管理员、项目成员、项目、任务等概念的领域模型分析。图4.2领域
42、模型图4.3 模块结构本系统共拆分出十三个功能模块,即首页信息计算统计模块、管理员分配用户角色权限模块、项目信息总览模块、任务信息总览模块、管理员维护角色模块。项目进度管理模块、管理员维护项目模块、任务创建指派流程模块、文档中心模块、项目负责人立项模块、项目成员管理模块、用户管理员登录模块、管理员维护用户模块。此外,通过对角色权限的分配,从而实现对不同用户的不用粒度的权限控制。4.3.1 模块结构图图4.3系统整体流程图4.3.2 模块结构表表4.1模块结构表模块名模块子功能功能细化用户管理员登录模块登录用户和管理员登录系统项目信息总览模块显示项目情况显示仅与当前登录用户相关的项目信息情况,查
43、看项目详情首页信息模块计算统计当前登录用户参与任务数与项目数统计当前登录用户参与任务数与项目数项目成员管理模块维护人员变动项目负责人维护项目成员的变动项目进度管理模块计算并显示进度根据任务数和已完成的任务数对项目进度进行计算并显示任务创建指派流程模块1、创建需求任务2、指派任务3、审核验收需求任务项目负责人开始创建需求任务,并指派需求任务给对应开发人员,开发人员处理开发任务,之后测试人员测试功能处理测试任务,最后项目负责人审核验收需求文档中心模块1、上传文档资料2、下载文档资料3、查看文档资料存放路径在项目内,开辟一个专门存放文档的地方,供项目内成员下载和上传,后台管理员端还可知道文档的存放路
44、径项目负责人立项模块项目负责人立项项目负责人对项目进行立项,待后台管理员通过审核后才能进行执行项目管理员管理项目模块1、管理员审核项目2、管理员维护已审核项目3、审核项目信息4、批量导入导出项目后台管理员对正在立项的项目进行审核,决定是否通过,对已审核项目信息进行维护,支持批量导入导出项目管理员管理用户模块1、维护角色信息2、批量导入导出用户后台管理员对用户信息进行维护,支持批量导入导出用户管理员分配用户角色权限模块分配用户角色权限管理员在添加用户后对用户角色权限进行分配管理员管理角色模块1、维护角色信息2、批量导入导出角色后台管理员对角色信息进行维护,支持批量导入导出角色4.4 数据库设计4.4.1 系统数据库E-R图E-R图叫做实体-联系图,下方E-R图描述了项目管理系统的现实概念结构模型。图4.4系统数据库E-R图 4.4.2 系统数据库总表表4.2系统数据库总表表名中文描述表名功能说明users用户表存储用户信息roles角色权限表存储角色信息projects项目表存储项目信息表tas