机房合作是我进入提高班的第一个团队合作项目。我的小伙伴是李平和少然,少然担任组长。总结一下我们的分工与感受。
【需求讨论】—交流碰撞出思维的火花
一开始是对整个系统做了规划,讨论一下每个模块的功能怎样实现更好,各自发表见解。讨论了大概有两天左右的样子,讨论完了所有的需求,然后开始写需求文档、画各种图(原型图、UML图、ER图、甘特图等)、设计数据库、数据字典。这样机房收费系统的雏形算是出来了。
感受:前期的需求讨论大家的想法都特别好,但是在画原型图或者其他图的时候考虑到了好多现实性的因素就给舍弃了,并没有觉得有什么不好,这是一个不断探索的过程吧。通过这次的画各种图和写文档感觉又学到了好多之前没有深究过的问题,之前也没怎么画过原型图吧,不曾知道原型图呈现给用户的系统功能展示,还以为是只是把界面画出来就得了,实战真的是让我懂了好多。
【代码实现】—文档驱动
代码框架是用EA生成的,方法和部分注释都是有的,按照规则开发的过程中是不需要组员间进行交流的,文档驱动。我是看着时序图进行开发的。通过SVN进行程序代码的上传和下载。
感受:我们的编码一开始用的是七层没有加设计模式,实现起来比较简单,大概三天左右的时间完成了整个程序的编码。包括其中的注释也是做了统一的规范,按照命名规范文档进行的命名。基本编码完成以后开始进行设计模式的讨论,我们用到的设计模式有单例模式、策略模式、模板方法模式、简单工厂、抽象工厂+反射等,通过运用这些设计模式,对设计模式有了新的认识和理解。
【调试运行】—团队合作
把设计模式加入系统编码工作完成以后,开始进行调试和运行,一开始的时候是各种报错吖,不是逻辑理不清就是字段对应不正确,当然也是有一些比如“未能加载...dll文件”、未加载实例化等错误,开始我们仨挑错的时候也是比较费劲但是在后面的调试过程中,应该是培养出默契来了吧,再出错就是会马上反应过来了,反正是对自己调试程序,代码段运行追踪水平有一定的提高。同时培养了自己团队合作的能力。当然这个阶段的测试是在测试计划和测试文档的指导下进行的。
【发布维护】—全心全意为用户服务
程序调试正常以后,就需要打包发布了,实现多用户使用。之前我的个人机房重构的时候是没有打包的,当然打包的过程中也是会出现各种问题的,遇到问题解决问题才能更好地进步,不晓得为啥我用VS打包总是不成功,后来组长用了之前的vb版机房打包的时候用的那个工具打包的。成功了。因为我们组是我们期第一组要验收的,需要对文档、程序、及代码走查等进行全部验收,所以我们就提前将打包好的程序现在电脑上运行一下,因为换了一下网线,刚开始是说要用李平的电脑,没有考虑到网线IP换了,数据是连得李平的,我就再想,李平电脑的ip换了数据库还怎么连上,程序已经打包好了我不可能再重新修改配置文件再重新打包吧,情急之下,我就跟组长说,这样不行啊,还有不到半个小时的时间,咱们还是换台电脑操作吧,把李平的电脑搬回去插上自己之前的网线,保证数据库能用,程序能查出东西来啊。其实这样是没有必要的,只要在打包好文件里面找到配置文件修改一下ip就行了啊。小细节大收获吧。
“炫耀一下我们的主界面吧O(∩_∩)O”
下面整体上说一下机房合作验收我的收获吧:
1) 要多为用户想想
比如说,在登陆界面可以加上记住密码呀什么的,如果是个人模式的电脑,在安全的情况下,这样是完全可以的,可以为用户省好多事情。其他的还有好多,我就不一一列举了,精神领会了。
2) 程序代码存在逻辑上问题
比如说我们的注册窗体并没有判断注册金额的最低限额,站在用户的角度去想如果人家刚注册了一张卡,没有对其注册金额进行限定,人家万一只是注册的时候有五毛钱,而你最低限额为两块钱,这样的话,人家新卡就上不了机,搁谁谁好受啊,就是这么个意思,程序是给用户使用的,我们就应该秉承全心全意为用户服务的宗旨。
3) 界面设计问题,还是没有做到为用户着想,我们大部分窗体上都没有退出按钮,如果想退出只能去点右上角的叉号。这样的话用户使着很不方便,我们的软件还是需要再改进的。
4) 师哥师姐还提出了一些细节性的需要注意和研究的东西。比如说数据库脚本要保存,数据库备份要及时。代码注释三个人要有一个同意的格式,而且类头注释和方法的注释都要写完整,变量名也要规范,不可以随意命名。注意异常处理的使用。还有最重要的一点就是文档的编写,明确文档的适用对象,和各自需要陈述的内容等。
整体感受:
这个只是项目合作的开始,师哥师姐给了我们很耐心细心的指导,对我们合作的项目也给予了肯定,我们一定会总结经验和教训在以后的实战中有更好地表现。