从2016年5月16日到2016年6月5日,历时21天,工时289个小时,与小伙伴一起完成了一次合作开发机房收费系统。这个过程中肯定少不了磕绊,但最终我们三个都向着做好这个项目前进,共同商讨,一同调试问题,一起完善。这个过程中充分展现了合作的轻松。
整个过程我将它分为前中后期四个时期,每个时期都存在一定的问题,当然更多的是收获和学习。
过程
前期
前期是最重要的,也是用时最长的一个阶段。这个时期有两个工作。
首先是查,查相关的机房合作项目,这里不是去看代码,而是去咨询机房合作的注意事项,学习合作开发的经验,从而能够准确高效的完成项目。
其次,就是针对文档有一个全面的详细的设计。好的项目离不开好的设计。而一个好的设计,在这里就需要小组内共同参与了。做为组长,我并没有比组员对机房合作有更深的设计,思路比较古板,故而,采用小组内共同讨论,可以有更合理的设计。
在这个阶段中,我们存在的主要问题就是对于UML图的认识存在异议和对设计模式的运用不清楚。在UML图上,我们三个每个人都有各自的理解,主要是针对B层设计存在异议,经常因为B层的设计讨论半天,然后也没有什么结果,从而浪费了时间。在设计模式上,有主张多用设计模式,有人则不敢用,也有人是不知道怎么用,从而是谁也说服不了谁的结局。不过,由于我们意识到时间问题,从而最终想到统一想法,先设计出来看看,这才没有产生更坏的结果。
所以,在这个阶段中,我个人认为,项目开发讨论时可以有的,但是不能不注重效率问题,当想法得不到认可时,先去设计出来或者多去考虑别人的想法,试着去统一,而不是浪费太多的时间在争吵上。
中期
中期就是代码部分,通过前面UML图的绘制,用EA生成代码,这少了我们重新写框架的过程,从而在很大程度上提高了效率问题。只不过,在代码中我们容易犯一个错误,就是没有完全按照生成的类和方法写,可能今天想到这个方法没有,就填上,后天想到那个方法没有再补上,等到写到后来的时候,才发现,原来方法是存在的,自己补充的是多余的,而在这个过程中存在了时间浪费的问题。计划中代码时间是3天,结果用了5天,超出了计划60%,从这能体现出亮点:一是对于分工认识不到位,基本还是走的个人路线;二是前期准备不足,对于详细的内容设计不足。
不过也通过这个代码,学习到:尽量先将自己前期设计好的写,毕竟前期的设计中一条线是成功,不会出现明显性错误。如果确定是忽略了什么,应该记录下来,积极反应,可能一个人理解不了,多个人能理解。如果是都认为存在问题才可以修改。
后期
则是项目代码完成,进行调错的过程。在这个期间,我们能更好的发现自己编程中的问题。
比如在用户界面,考虑步骤,对用户的输入或选择忽略限制条件,经常容易导致数据无法继续进行,说白了就是数据类型设计的不合理,对于用户该输入什么,不该输入什么说明的不充分,从而导致用户操作了得不到想要的结果。
并且,在调错的过程中,异常经常出现,然后导致项目终止,才发现原来没有异常处理的过程。如果用户因为各种原因导致系统崩溃,难道还要让用户看到内部代码的异常?这明显是不合适的。所以异常处理是有必要的。
所以,从这个调试阶段,能够 发现我们并未站在用户的角度去设计系统,虽然实现了用户的要求,但是实现这个要求,完全是按照“我们”的思想设计,从而导致系统脱离用户,最终只会导致用户不接受这个系统,付出得不到回报,因为用户认为这个系统不值得有回报!!!
时间
这个环节是将我们在合作上所花费的时间记录下来,以便我们能够更好的了解我们的效率问题。
通过上面数据显示出,我们在合作上面肯用时间,努力去做好它。只不过,看着时间的积累,也暴露出一个问题,那就是效率问题。