琐话
这篇文章是放弃CSDN博客,来到简书后的第一篇文章。今天是暑期接的ERP推荐系统 阶段性完结一天。刚和老师,队友,学长见面回来,期间谈了很多有关这个项目的问题。又恰逢本学期有软件工程课,我这蘜蒻被队友们推荐为4人小分队队长。所以总结下在暑期开发ERP推荐系统过程中的一些经验和不足,给软件工程项目提供经验。
经验
明确的目的
当时刚接触ERP的时候,组成团队的4个队员基本都是项目小白(尤其推荐系统方面基本就是全空白)。4个人当中只有一个人会用数据库,没有人会用js
写前端,写算法部分的我不会java
这门语言(只有一个人曾用过一段时间java
),然而给团队的时间只有一个月的时间去完成这个项目。很显然一个月的时间,团队中的每一个人不可能学习到整个项目的每一个技术细节。即便是深入系统的学习自己所负责的部分所需的知识再动手也是不大现实的( =.= 要是我要先深入系统学习java
各种语法,估计到现在我还是在学习java
......)。所以我们当时有一个明确的目的:解决问题,完成项目! 所以当时基本都是现学现用。比如我当时写算法的时候,我并不会使用java
的库,但我知道这个问题怎么用CPP
解决,所以就直接在互联网上搜索类似于“CPP中的vector在java中用什么代替”,“java中怎么排序”...
模块化项目
将项目分为4大模块,每人负责一个模块,模块通过提供接口来提供服务。采用高内聚,低耦合。方便后期整合调试。
不足
没有详细的文档
部分模块提供了文档,但文档内容很少,不够详细,让阅读者不能很清楚的理解文档作者的意思(=_=||| 我承认那个渣就是我),还有的模块干脆就没有文档。使得再各个模块进行连接的时候需要反复的到模块开发者处询问函数,类名的具体含义。进度很拖延。
代码风格的不一致
有时候基于各种原因需要阅读他人的代码,但是由于每个人采用的代码风格不同,导致阅读困难。
没有明确的时间进度管理
我觉得这是本次项目中最大的失败之处,没有一个明确的时间进度管理,导致许多工作基本都被拖到deadline前几天,压根没有太多的时间去测试优化。deadline前一天还发现有一处模块连接错误。
结尾
感觉是一次宝贵经验先记录下来吧,相信对自己,对第一接触团队项目的童鞋会有帮助。另外无耻的附上软件工程项目的github地址。求fork,求star,各种求(=_=)