一、回顾

1)对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?

达到了期待和目标的能力

  • 团队协调能力:从之前面向对象课程的结对编程,到软工实践的团队编程,一路走来每次的任务完成,都离不开团队的沟通能力。而且我可以很明显的感觉到自己与团队成员的沟通能力明显的提高。一晚上完成所有的结对编程任务,并且取得不错的成绩,应该是很好的证明吧嘻嘻嘻。我想这要归功于和队友之间的默契以及多次团队任务的磨练
  • 学会一个项新技术的能力:由于我担任我我们组的数据采集以及美工的任务,但是就凭我钢铁直男的审美,可能是无法胜任这项工作的。但是,在队长的高压push之下、以及队伍面临着没有美观的展示材料的时候,我身上的正义感突然爆发,驱使着我在凌晨四点的宿舍中,完成了一次又一次的视频制作。

哪些不足

  • 时间的安排能力:我记得我曾经说过一句,DDL是唯一生产力。我也忘记这句话是我从哪里听来的了。。。但是这句话在我身上得到了良好的体现。因为我是一个机器喜欢拖DDL的人。每次的任务都等到最后才完成,曾经导致团队的数据集不足的情况。在这里我要向我们队伍里的大哥表达一下歉意!

2)总结这门课程的实践总结和给你带来的提升,包括以下内容:

1、统计一下,你在这门软件工程实践中,完成了多少行的代码

  • 总和不超过3000行,个人作业和结对编程的代码量不是很大,加上最后被分配到了数据组,几个简单的爬虫脚本。并没有很大的代码量。可以说是硬伤了- -。

2、软工实践的各次作业分别花了多少时间?(做一个列表)

作业编号 作业内容 时间/h
0 一些QA 3
1 个人作业 – 词频统计 22
2 结对作业 – 原型设计 5
3 结对作业 – 编码 20
4 团队展示等前期作业 20
5 需求分析报告 10
6 课堂实战 – UML 5
7 抽奖系统 5
8 Alpha冲刺阶段 110
9 福大助手测评 10
10 Beta冲刺阶段 70
11 课程总结 5
总计

3、哪一次作业让你印象最深刻?为什么?

  • 当然是Alpha版本冲刺啦,队友之间怼的最凶的一段时间,同时也是战友感情最深的一段时间。

4、累计花了多少个小时在软工实践上?平均每周花多少个小时?同时贴出开篇博客“你打算平均每周拿出多少个小时用在这门课上”的回答

  • Alpha冲刺那段时间每天都至少要花三四个小时吧,有时候一整天都花在上面。Beta阶段就舒服一些,但整个课程下来的话也有平均每周20小时妥妥的。(一个不负众望的数字)
  • 当初的回答

期待自己可以真正的写出一款有用的满足自己内心期待APP,增加自己的代码量,还有就是结识一群伙伴。投入时间的话,说实话自己对这个东西也没有一个明确的概念,但是这门课的优先级应该是比较高的,应该算是A博主[3]所说的“A类”事情。

5、学习和使用的新软件

  • Xcode
  • Final cut pro X
  • Adobe AE
  • Adobe PS
  • Pytohn3.0

6、学习和使用的新工具

  • 墨刀
  • GitHub
  • ProcessOn
  • StarUML
  • visual studio

7、学习和掌握的新语言、新平台

  • python3.0
  • shell
  • Mac OSX

8、学习和掌握的新方法

  • 单元测试
  • 代码覆盖率
  • 代码性能分析
  • Python爬虫知识
  • YOLO
  • 燃尽图

9、其他方面的提升

  • 个人的审美,视频制作,PPT制作方面得到的提升。
  • 我觉得自己的韧性得到了提升,面对繁重的学业压力和软工任务。居然能抗的下来,在这里也要给班级里每一位坚持下来的同学点赞!
  • 熬夜爆肝- -。
  • 为人处世的能力,与人沟通的艺术。

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

经历了整整一个学期的软工实验,我觉得团队间的沟通和讨论是最重要的。我们团队就因为沟通不够的问题造成了一些完全可以避免的麻烦。最经常发生的事情就是前后端的对接问题。因为后端没有接触过前端,所以后端不知道前端要的接口是怎样的,后端按照自己的想法写出了接口,因为一开始前后端没有进行过交流,所以写出的接口也是不符合要求。还有就是评论数据的格式,由于没有事先的沟通,导致我们组在数据格式化方面浪费了很多时间。

三、对下一届实践的建议,或者对于开学初的你,对于大一的你,对于开学初的我,对于同期的TA们,对于后来的学弟学妹:

1)你有什么想建议、告知和期许想要告诉他们呢?

对开学初的我: 软工虽苦,且行且珍惜。ps:霸王安排一下:D
对大一的我: 能不熬夜的时候千万别熬夜!!不必要的熬夜之后都是血的教训,切记切记,血条要攒着给大三,因为大三会有一门软工,还有两天一门的考试!!!!
对学弟学妹:听说你们软工必修???

2)特别地,特别地,下一届要不要中途换队员(强制的、彻底的从一队换到另一队)?

我觉得没必要强制。如果一个组经过较长时间的磨合,突然的换队员可能会是一道晴天霹雳!但是我内心你还是很想看到他们绝望的眼神hhhhhh

3)身在一个格外大的班级,竞争强劲,你认为一个组的人数应当在多少比较合适?

8-10人吧,按这学期的人数划分就很合理了。人数不能过多,也不能太少,太少的话每个人的工作量太大,如果人太多的话,可能会出现部分成员划水吧

4)个人/结对/团队作业应该控制在怎样的规模?

要根据实际情况来吧,尽量不要与考试冲突,这学期真的被这门课给搞得头昏脑胀了!!

5)这学期下来,你最感谢的人是谁?有什么话想要对TA说呢?

董钧昊同学吧,合作多次的好伙伴。在这次软工实践中他给予了很多的帮助,也容忍了我多次的划水hhhh

四、分析一下自己所处的团队

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

√ 萌芽阶段:大家刚开始的时候就已经认识了,萌芽阶段应该是很短了
√ 磨合阶段:慢慢暴露自身的缺点,进度慢、做事拖拉等。队内也有了一些抱怨的声音,好在队长的调节之下,负能量也没有在队内扩散。
√ 规范阶段:这个时候分工明确,大家各做各的事情,其实我觉得只有开发组的队员在工作,实际上这时候也只需要开发组的队员进行开发了。
√ 创造阶段:“高度自治”、“效率达到巅峰”

整个步调其实还是蛮稳的,规范也定的比较早,所以虽然在磨合和规范阶段有来回转换几次,但最后还是可以说是达到的创造阶段的~

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

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

PM有公开发布在Github,不过暂时用户不怎么多,后期可能会增加宣传力度,发布到安卓平台,基本完成

2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是:通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄

团队在燃尽图的帮助下,团队进度在有条不紊的推进。其中团队交流方面我觉得存在一定的问题,其他都基本完成。

3)并且通过数据展现软件是可以维护和继续发展的。 而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料

基本完成,在软工过程中形成了许多高质量的文档。

4)对着这个检查表:http://xinz.cnblogs.com/p/3852177.html 检查一下,自己如果去企业面试,这些常见的问题是否都能回答,并在此总结。

大部分都不能回答,看来我的水平离一个标准的程序员还是有很大差距的hhh

版权声明:本文为031602523liu原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/031602523liu/p/10247309.html