标签:
又快到农历的年根儿了,每到这个时候忙碌了一年的人们都会总结总结自己一年的经历,清点清点一年的所得,像是对自己的犒劳,也像是对自己的盘问。学习软件工程17周,课上课下也算是没少忙,确实也是时候总结一下自己的所得和所失了。
总的来说,这一学期的繁忙程度远远超越了前面几个学期,虽然前面几个学期的每一次回望我也都会有这学期比上学期还要艰难的感觉。但是这回的压力之大确实是客观摆在这里的,从开学伊始就投身战斗,一直到昨天刚提交了编译原理的大作业,再到接下来的几天里还要为期末考核各种忙碌。忙确实是忙过了,也算是没有虚度光阴,但是究竟得到了什么,只怕还是要静下心来细细点数一番了。
part1:总结M1/M2:
软件工程的“做中学”的教学思路是非常正确的,我也能偶尔听得到接受传统软工教学模式熏陶的同学们在抱怨说什么也学不到,而且从我的亲身的实践中我也能感受得到有些概念就是针对实践中的情况提出来的,所以将经验化的东西概念化往往会在接受上具有一定的抽象性,而这种抽象性是要通过实践过程的重现才能理解概念自身的提出的原委和概念本身的适用性和局限性。我们团队中有两位实验班的学生他们的选课表中本来是没有这门课的,但是为了感受真正的软件工程的实践环节,他们几经“折腾”终于在自己课表上加上了这门课。于是我们的团队一开始就抱着非常强的实战的信念开始这个旅程。
在选题上我们选择了往届的题目,而且将往届的代码全部推倒重构了,于是在实践上就相当于是一个新的自选项目一样。在M1阶段我们面临的问题是团队与团队之间的衔接的问题,在M1过程中我们显然是过分陶醉于自己的开发之中没有顾及团队间的合作,导致最终衔接不到位,展示数据比较匮乏,效果不是非常好。而且在M1开发的阶段我们对于团队的整体的协调性不是很好,一些常见的甚至是低级的但是却致命的错误都在我们的团队上出现了,我们团队曾经因为scrum meeting 事件一度将面临崩溃,好在成员们临危不乱团结一致,才没有造成军心涣散。
到了M2阶段我们重视了团队间的合作,甚至为了团队间的更好的合作我们将前端的接口做了比较大的改动,但是无奈的是后期的各种大作业纷至沓来,时间成为了最致命的问题,原本设计好的计划没有很好被完成。也搞得自己很崩溃。但是在这个过程中我们非常重视组建的合作,原本的M1阶段搞不定的合作问题,都通过统一的接口使得整体上可以完成数据的正常流动了。
Part2
在前面的作业中我说对于测试部分不是非常的理解,其实一个重要的原因是自己以前所写的代码过于简短了,没有真正的可以达到工程的级别,这学期我们有数据库的大作业,编译的大作业,软件工程的大作业,这几个大作业每个都是数千行代码的级别,可以算得上是小小的工程了。在这个过程中我是真的充分感受到额测试的重要性,我在写编译原理的大作业的时候往往会被某一个bug困扰一整天,到最后才发现居然不是算法的问题也不是逻辑的问题,而是非常边边角角的低级错误,这种错误只要稍作测试就会被发现,但是当它集成到数千行代码里面再做整体的测试时简直是要了命了,一天天被整得“呜呼哀哉”。真的就像哥伦比亚号飞船的发射失败起源于一个运算溢出那样的无奈和细微。可见测试不是浪费时间而是保证后向的无忧。
再者就是对于市场模式的理解我还是不太懂,但是我知道的是软件开发面向的是用户,这一点我在开发的过程中和在课堂上以及在和小伙伴们的讨论中有着非常深的感受,我们需要从需求到实现逐步求精迭代循环,以用户的反馈和需求作为调整的策略。这一点我想我是不会忘的,也算是和市场相关的理解吧。
对于开源的问题也有了深一步的理解,在软工实践的过程中我们使用github作为托管,在使用github之余,我也会看到有很多的项目在github上,我们可以将项目fork下来然后在其基础上进行自己的修改甚至成为项目的contributer的一员。这个也许就是开源最直接的表现了吧,代码透明,人人皆可参与。毫无疑问这种模式不仅可以加速软件周期还可以有效提高代码的健壮性。
http://www.cnblogs.com/whenever/p/4830716.html
标签:
原文地址:http://www.cnblogs.com/whenever/p/5116113.html