团队项目开发软件对我们来说是一项新鲜而又有挑战性的一项任务,然而在邹欣老师和杨老师的指导下,我们在这一个学期中从系统的理论到实践都有所收获。刚开始,我们对软件工程基本上一无所知,但是随着个人项目,结队项目到现在的团队项目,一步步地深入让我们从一个个单打独斗到结队而行再到最后的团队合作,其中让我们体会深切的不光是软件的结构化设计还有软件的开发方法。
与之前软件设计不同的是,我们团队完成的时候需要将软件模块化,结构化,比如接口的设计,数据结构的设计,数据库的设计,过程的设计,都不能按自己喜好,需要整个团队的讨论,最终定下一个适应团队成员的方案。对于其中的接口设计,我们需要考虑用户的使用情况,也就是我们所说的人机交互,在软件中,这一点在界面的体现上尤为重要,用户对界面的美观的要求和界面上功能的集成度都是需要深思熟虑的,既不能把界面设计的颜色过于丰富也不能缺乏色彩,既不能再一个窗口集成过多功能也不能使界面跳转过于多。还有一点就是在过程设计,之前被我们忽略的流程图,类图在此次团队项目中发挥了很重要的作用,比如在画类图的时候,我们可能会发现这个类在设计接口的时候,可能需要使用别的数据结构或者增加别的属性等等,这样做可以在真正写代码的时候避免频繁增添内容。
另外重要的一部分就是软件测试。本次团队项目我们使用了黑盒测试。我们需要测试的方面有注册验证,对于验证的信息,我们的要求有:用户名不含有特殊符号,用户名长度不超过10位,用户名不少于2位,两遍密码输入需要一致,对此我们使用等价类划分的方法,设计了有效等价类和无效等价类。
由于团队项目需要发布,那么之前我们个人项目没有注意又非常重要的软件维护问题就需要我们考虑进来。对于此次项目,我们需要的维护主要在服务器端,因为相关的数据都是放在数据库,而数据库的操作是面向服务器的,所以我们也专门分配了组员来专门进行维护。