高级软件工程实践总结

二、写下属于自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析

因为较多的时间花在团队的项目开发上,所以印象会稍微深刻一些。我在团队项目实践当中,大致总结出以下经验:

  • 需求分析阶段我认为是重点。用户的需求实际上才是软件真正要解决的问题,很多业务逻辑也不是简单的话语能轻松表达的。所以我认为需要花大量的时间做好需求分析。

我们的项目Beta阶段经历了一次需求的调整,就是因为前期没有确认好需求,导致后面的修改。虽然不可能完全确定好需求不更改了,但前期如果能确认好多一些也是好的。

  • 项目负责人。我认为一个项目当中的负责人选择也是至关重要的。他不仅要负责框架的搭建,还要协调分配好每个人的工作,使得效率最大化。

我们的项目在分工上面就出现了一点问题。尽管我认为我们小组的分工在作业当中已经显得很细致了,但组长分配的时候还是没有很好地协调好,导致我们后期实施的时候发现有的人一天都很闲没有任务,不得已每天临时调整当天的任务量。

  • 沟通。一个项目真正要开发起来,每个人其实是独立并行的。但过程可能会遇到很多问题,这个时候良好的沟通非常重要。在团队协作当中,不能讲个人主义,要考虑项目的利益。

我觉得我们项目在这点上面实践的还可以,大概主要因为两个男生的动手能力比较强,我们很多意见不合的地方也就顺着他们的意见去执行了。团队当中还是需要这种主心骨力量的。当然我们也不是盲目顺从,都是经过我们从可行性角度认真考虑的。


三、对下一届实践的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?

说到对下一届实践的建议,就是希望学弟学妹们耐心地上下去这一门课。因为一开始可能会抱怨这门课作业多作业繁琐有些难度之类的,但真的上下去认真地完成作业,你会发现很多收获哦。对于开学初的大家:保持兴趣 保持热情 认真coding:)


四、分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)

团队发展分为四个阶段:

  • 萌芽阶段
  • 磨合阶段
  • 规范阶段
  • 创造阶段。

我们团队应该说是经历了前三个阶段吧。一开始大家对于整个项目也是一头雾水、无从下手的。然后选出组长之后,组长带领我们讨论需求、制作原型、设计数据库等等入手,这应该算我们的萌芽阶段;

经过了萌芽阶段,组长负责主要的框架搭建,后期每个人开始自己的模块编写,一开始肯定出现了很多问题,各种冲突、各种意见上的不合,但好在大家都有效地沟通解决了,这是我们的磨合阶段;

再后来,项目开发逐渐步上正轨,我们按部就班地按照分工一天天地完成任务,有条不紊。不仅很有效率,大家也很有成就感。团队进入了规范阶段,我们在整个项目上都大致达成了一个统一的意见,任务清晰明确;

最后我认为我们还没有到达创造阶段。我们现在慢慢地在尝试探索。


五、怎样证明你学会了软件工程?

1)研发出符合用户需求的软件

必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件

2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件

有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄

3)并且通过数据展现软件是可以维护和继续发展的。

而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料

在博客中可以看到我们项目经过选题、需求分析、原型设计、代码实现、用户测试、最终成果。

选题报告:http://www.cnblogs.com/linlkg/p/7774110.html

需求分析:http://www.cnblogs.com/linlkg/p/7834910.html

原型设计、代码实现、用户测试:http://www.cnblogs.com/linlkg/p/7988114.html
http://www.cnblogs.com/linlkg/p/8120206.html


六、个性发挥,包括图文、照片和创意等

posted @ 2018-01-01 21:06  林逗号  阅读(230)  评论(1编辑  收藏  举报