1 小组成员
软件工程2003 王士银 202031001971
软件工程2003 杨坤 202031101677
2 对系统开发的总结
本小组上学期开发的软件系统为“外卖配送管理系统”,而由于项目开发经验不足,开发过程中存在问题较多,作为小组负责人,我将从设计、技术、管理、沟通四个方面进行总结。
2.1 设计层面
在设计阶段,即使存在需求文档及开发文档,负责人对系统总体的页面效果、功能需求等定义与团队成员之间的理解依然存在较大偏差。
例如:
在绘制系统购物车功能的类图时,团队成员不回顾文档流程图、模块图,根据自己想法进行绘制,导致类图与模块图不统一,延缓了后续开发进度;需求文档及设计文档的编写过程中,团队成员对UML图的绘制掌握程度较低,对术语的定义以及对各项功能最终应实现的效果思考不足。
以下是设计文档中购物车的模块图与类图,可以明显发现内容不对应:
同时,文档的撰写格式不了解,文档应向用户和开发人员呈现哪些具体内容不清晰,文档的实用性较弱,都是在设计阶段较大的问题。
这些设计阶段存在的问题严重影响项目的开发进度以及最终质量,甚至会导致成本的增高。
2.2 技术层面
本系统开发用html、css、JavaScript进行前端开发,并以Python语言进行后端开发。
实际开发过程中,团队成员的技术不熟练、能力不足。据我所知,大部分同学对Web开发应使用的前端框架不了解,环境的部署和搭建一无所知,最基本的Git的使用也是一知半解。这是整体开发过程中最耽误开发进度的核心问题。
开发过程中Git使用情况存在的问题:
2.3 管理层面
由于软件开发过程中缺少必要的集中开发与讨论,团队成员间相互沟通较少,文档、代码的审查及合并均由小组负责人承担,因而整体开发过程中,小组负责人工作量剧增。同时小组成员重视自我理解而忽视团队协作也导致各人负责模块与他人无法协调;成员不关心自身工作进度,导致项目整体进度延误;项目负责人没有随时跟进项目情况,导致项目协调性差。
这些人员管理上的疏忽是我下学期需要注意的。
2.4 沟通问题
小组成员彼此之间能力差异过大,技术上的沟通存在阻碍,往往进行沟通前需要花费大量时间为小组成员补全知识点;项目构建与文档编撰过程中沟通低效,往往出现有人提出解决方案后,其他人不进行讨论,只等最终结果。
沟通过程中存在的问题:提出初步建设后除了收到便没有讨论
3 对自身项目实践的期待
首先是对自身项目实践的期待:
- 完善基础知识框架,掌握整体项目开发所需前后端技术,包括但不限于vue、nodejs、spring等
- 切实掌握UML建模,熟练运用Git进行版本控制
- 加强与团队成员间的沟通能力,围绕项目开发的各项功能、模块等进行针对性的有效讨论
- 学会协调各团队成员间设计、开发流程
4 对后续课程安排的建议
其次是对学院课程安排的建议:
- 应当在软件工程、软件项目管理等理论课程之前或课程中穿插项目开发技术的教学,避免理论课程与实践课程割裂严重(理论着重讲项目整体流程,实践过程中对开发过程严重缺失)
- 希望能以一个实际的已完成的项目案例作为基础,由教师带领全体学生完整走一遍开发流程,而非完全地让学生自主开发(学生自身能力素质并不支持0到1的自主蜕变)
以上便是我对上学期《软件工程》的整体总结。软件项目开发并不是个人天赋的显露,而是团队力量的展现。同理,软件工程课程的学习不是学生单方面的努力,而是师生共同的进步。望未来我们共同奋斗!