软件项目管理案例教程——在线学习系统大作业

软件项目管理案例教程——在线学习系统大作业

项目简介

在线学习系统是软件项目管理案例教程这门课程中所要求完成的一个项目,尽管课程更注重于项目管理本身而不是项目本身,但对于本次项目中我所负责的部分以及遇上的问题仍然进行一定的记录。

项目相关

在本项目中,需求完成一个简易的在线学习网站,包含选课、测试、成绩等教务系统常见的功能。我所负责的是成绩管理的部分。

项目属于Javaweb项目,最初的想法是做一个SpringBoot项目,但因为小组人员编程水平参差不齐,且因为课业原因并没有足够的时间让所有人都能够去熟悉并使用SpringBoot框架,作为一个 团队项目,为了保证项目的质量以及小组成员一定的参与度,最终选择了Javaweb最基本的servlet+jsp来完成整个项目。

我所负责的成绩管理部分包含学生查询成绩、教师查询成绩、教师上传成绩三个部分,这三个部分都是用户通过前端发起请求,然后后端处理查询数据库后返回相关数据,再通过前端显示给用户, 我觉得整体难度不高。数据库部分我采用的是编写存储过程来实现查、改的功能,但因为项目需求本身就没要求将项目做的很复杂,所以整体的存储过程并没有很高的通用性,只是对于这个项目具有作用, 这是我做的不足之处。前端部分,小组分工原因,每个人都是负责一个功能模块的实现,而不是前后端分离,某部分人负责前端某部分负责后端,所以这就导致了我负责的这个部分只有最简单的界面显示, 而我也没有大量的时间去专门做美化。

最后再吐槽一点和项目没关系的,在小组中我不是组长,但从开始做项目分完工到现在,一次都没有开过会(截止到本篇所书写时间2022/11/30),现在每个人都是各做各的,完全没有联系,我有点 担心最后的集成测试,顺带现在都没有统一的数据库以及测试数据,数据库中的表结构是我自己按照学校可能会使用的模式构建的,前面也提过我是使用存储过程进行查询更新的,而我的存储过程没有 很高的通用性,所以在最后集成测试也需要重新构建相关的存储过程。

项目中遇到的问题

在jsp页面中使用了jstl标签库,而在测试中,仅使用了 标签 进行了jstl的测试。而在实际使用中需要使用等标签。而使用时产生了http 500错误。具体原因是 java.lang.NoClassDefFoundError: jakarta/servlet/jsp/jstl/core/LoopTag。在查找了不少相关的内容后最后解决,解决方案是将jakarta.servlet.jsp.jstl-api-2.0.0.jar这个包移 动至tomcat的lib目录下。

后记

写下这部分的时间是2022年12月14日,经过小组讨论后,其中对数据库的操作都改为DAO模式。同时对成绩查询后成绩展示的页面进行了空判断。