软件工程大作业(学生会管理系统)Web端个人总结报告
一、小组信息
1、所在小组:第二组
2、小组选题:学生会管理系统
3、项目源代码链接:
4、项目各类文档链接
二、项目中本人工作介绍
本次课程团体大作业,本人具体工作主要有一下三项:
1、Web端的设计与开发
1.1 Web设计阶段划分
本人在进行Web端的设计与开发时,将我的工作分为以下四个阶段:
- 阶段一:理解和整理各项需求,确定好将Web端分为多少个功能模块,各功能模块又包含多少子功能模块,并确认好各功能模块之间是否存在联系以及存在什么样的联系,定下Web端的设计方向;
- 阶段二:根据阶段一确定下的设计方向,进行原型的设计开发,大致完成静态页面的总体设计;
- 阶段三:进行前后对接,完成各个功能模块;
- 阶段四:设计测试数据,并对Web进行各项测试。
1.2 Web端各功能模块划分
本人将Web端划分为以下几个主要功能模块,并完成对它们的全部设计和实现工作,不同权限的用户对应不同的功能模块,用户的权限功能划分明确,是本项目的一大亮点:
- 登陆注册模块
- 人事管理模块
- 部门管理模块
- 活动管理模块
- 请假管理模块
- 审核管理模块
- 考核管理模块
- 通知管理模块
- 信息维护模块
1.3 Web开发技术介绍
-
使用HTML+CSS+JavaScript进行开发;
-
Web前端页面主要运用了前端框架Layui和Vue.js进行构建,运用Echart.js绘制了页面的图表。
2、参与需求分析,整理汇总各端所需接口
-
项目初期,全组成员都参与需求分析,提出各自的意见;
-
项目中后期,为了更好与后端的交流,提升项目组的总体工作效率,由我负责整理和统一各端(WEB、APP、小程序)的意见后,再向后端提出所需API,避免了后端陷入接受各端相同相似需求的工作状态。
3、接口测试工作,并与后端交流反馈
- 对于后端提供给各端的接口,由我先对其进行测试,对于有误接口,我先积极和后端进行交流反馈,确认接口无误后,再向各端发布,并帮助各端成员理解和调用API。
三、项目总结与感悟
本次团体大作业,我深刻的体会了一次软件开发的流程,学习到了一个团队应该如何配合工作才会更加的高效,避免陷入1+1<2的局面,大体上有以下几点感悟:
-
团队内部成员定期进行交流十分重要,我们组每周召开一次例会,项目组内的各成员及时将自己的想法和意见表达出来,提出当下存在的问题并及时解决,更好的协同工作,可以提高项目组的开发效率;
-
制定阶段性的小目标具有重要意义,每周制定每周任务,并及时完成,项目前期,我们组内大部分成员的阶段性目标都不是特别明确,开发效率较低,好在我们及时发现和解决这个问题,开始制周目标、日目标后,项目组整体的开发效率得到了大大的提升;
-
前期的分析与设计工作是整个项目的基础,前期乱了,后期的工作量将会倍增,本次项目开发过程中,在前期对数据库进行设计时,有一处的细节处理并不是特别的完善,导致后期各端在实现相应需求时工作量倍增;
-
在合适的情况下,可以适当增强模块代码的独立性,提高相似功能的开发效率,同时也可以减小后期修改的工作压力,我在Web开发过程中,部分几个小功能模块功能相似,但未及时抽象出来,后期感受到了重复劳动的弊处。
四、课程建议
通过了近一学期的学习,我感受到了朱老师的软件工程课程的众多精彩之处,不仅进行了专业知识的学习,还拓宽了我们的眼界,就我个人而言,我有几点小小的建议如下:
-
就团体项目来说,我们主要比较完整的经历了需求分析、原型设计、功能实现这三个阶段,也收获颇多,但软件测试也是软件开发中的一个不可缺少的环节,团体项目中并未完整的体验。例如,可以在功能实现这一阶段的检查后,进入软件测试阶段,对所开发设计的软件进行测试,设计测试用例、撰写测试报告,并对软件可能出现的异常情况进行分析,并给报告中给出相应的解决办法。
-
在软件开发的整个过程中,建议每组应设置一个角色专门统筹项目的进度安排,积极与各端进行沟通,统一意见,解决和协调各端存在的问题,需要一个能做决定的角色,并且这个角色对各端采用技术都要有一定程度上的了解,这个角色应该始终贯穿在软件开发过程,有助于提升整组的开发效率,以避免一些不必要的问题出现。但是课程的给分机制主要是根据每个人的工作量来判断,大多数人为了追求分数会选择作为开发人员来提升自己的工作量,这个角色的工作量难以评估,所以很少有人会选择这一项工作。
以上是我个人的一些想法,如有冒犯,敬请谅解