这次的软件开发项目带给我不一样的感觉,让我从中受益良多。因为以前从来没有接触过团队开发,也并没有和一群人一起开发出一个项目,而这次团队项目让我感受到了不一样的地方。正所谓三人行必有我师,一个团队中总会有十分优秀的同学,他们尽力去帮助稍微落后一点的同学,对于项目中遇到的问题也能够耐心地解答;当产生不同意见时,队员之间相互协调,遇到分歧之后沟通解决问题,得到让大多数人满意的结论,将问题完美化,这也是一个人的项目所做不到的地方。这次的团队开发让我感受到了团队协作的魅力,希望以后还有这样的机会和一个团队一起合作。
以前提问的链接:http://www.cnblogs.com/ppxiaotongxue/p/4028539.html
已经弄懂的问题:
关于写文档是当时就弄明了的,文档时一定要写的,虽然不用按照特定的模板,但是一定要写的有条理,够详细,详细并不是指废话多,简洁精练的同时做到详细。因为对于不了解自身开发项目的人不会明白你是怎么思考的,这是便于团队合作中队友更好的理解自己的思维。另外文档中的功能对于最后拿到完整项目的用户来说也是一个很好的指导手册。
对于单元测试,每个人都有自己心中对于程序的侧重点,所以每个人考虑到的单元测试的侧重点也不同。这时团队合作的好处就体现出来了,多个人相互协作提出自己认为的测试侧重点,综合起来比一个人的侧重点要广泛的多。
对于敏捷开发,提问 时候算是认识,但是在实践中才算是真正领会到了它的意思,特别是在这次的结对编程中没有意识到敏捷开发的重要性,所以对程序的改动总是没有经过缜密的思考,而是直接采取最简便的改法,这对于程序的伤害是巨大的,对于程序以后的变更也是极其不方便的。这也就是所说的“大泥球”,我们在软件开发的过程中要尽量避免自己的项目成为“大泥球”。
尚未弄清的问题:
仍然不知道该如何在团队中定位自己的位置,对于自身的情况并不了解,觉得自己什么都可以干一点,又感觉自己什么都不能干,能不能做好又是另外一回事。
新的体会:最大的体会是一定要先思考设计好在开始编写代码,不然整体架构把握不了,写出来的代码一团糟,容易形成“大泥球”。另外团队成员之间沟通要及时,相互信息的传递和交流有助于加深对问题的思考,以便得出更好的结果。对别人的建议要虚心的接受,仔细思考别人提出建议的立场和角度,和自己思考问题的方向和角度有什么不同,是否有助于自己思考的更深入。
六个阶段中学到的知识点:
需求:需求的合理化,考虑需求的最合理及最重要性
设计:考虑整体布局,明确各个模块间的联系
实现:先思考,在编程,时刻把握这个模块的整体架构
测试:多方位的考虑,多个人一起测试
发布:了解了一个项目的发布方法
维护:对发现的新的bug采取措施,修复bug,重新发布