一、请回望开学时的第一次作业,你对于软件工程课程的想象

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

这门课学了一学期,主要就是通过团队合作一起做了一个24点的小游戏,感觉以团队的形式软件开发十分的新鲜,也给了我一定的项目开发经验。不足的话感觉自己的编程能力还有待提高,代码还是一个软件功能实现的关键,所以必须提高自己的编程能力。

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

(1)统计一下,你在这门课程中,完成了多少行的代码;
500行左右
(2)软工的各次作业分别花了多少时间?(做一个列表)

作业 时间
软工网络15个人阅读作业1 2
软工网络15结对编程练习 6
软工网络15个人阅读作业2——提问题 2
软工网络15团队作业1——团队组队&展示 2
软工网络15个人作业3——案例分析 4
团队作业3——需求分析与设计 3
团队作业2——团队计划 2
软工网络15Alpha阶段敏捷冲刺 25
团队作业6——展示博客 3
团队作业5——测试与发布 5
alpha阶段项目复审 3
团队作业7——alpha阶段之事后诸葛亮分析 2
个人作业4——alpha阶段个人总结 2
beta版验收互评 3
个人作业5——软工个人总结 2

(3)哪一次作业让你印象最深刻?为什么?
alpha阶段吧,这个阶段用的时间最长,也是我们的软件从无到有的过程,基本上实现了软件的一些核心功能,还是比较理想的。
(4)累计花了多少个小时在软工上?平均每周花多少个小时?
大概每周10小时左右吧
(5)学习和使用的新软件;
Android Studio:安卓开发软件
(6)学习和使用的新工具;
Git 代码提交工具;Monkey 自动化测试工具;Leangoo 燃尽图工具
(7)学习和掌握的新语言、新平台;
PHP。
(8)学习和掌握的新方法;
站立会议,软件测试,燃尽图。
(9)其他方面的提升。
主要是团对合作能力的提升吧

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

拿团队项目为例吧,我们小组的成员是一个宿舍的,平时交流比较方便,关系也比较好,所以协作起来还是比较默契的,每个人根据项目经理的分工都可以及时完成手头的工作,让我们的软件可以按时完成,可以说团队协作能力占了很大的功劳。

三、对下一届实践的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?对于后来人的期许。对于换人机制,有什么样的建议?

对下一届的建议:下一届可以认真学习这门课,学好了真的是可以对个人的各方面能力提升很多的,好好学编程,真的很有用。
对于开学初的我:珍惜时间,多学习点东西。
对于换人机制:希望可以不强制换人,有意愿的团队团队自愿换人。

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

《构建之法》中的团队的发展有四个阶段。
分别是:萌芽阶段、磨合阶段、规范阶段、创造阶段。
都经历了,我们通过最初的需求分析,制定计划,到最后学习各种语言编写代码日夜兼程按时完成了一个能用的app。

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

研发出符合用户需求的软件
必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件
通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件
有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是:通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
并且通过数据展现软件是可以维护和继续发展的。
而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料

公开的发布:https://gitee.com/ljl36/team_programming/releases

实际的用户:

定时的进度发布:见之前的博客 http://www.cnblogs.com/Aragaki-Yui/

代码在码云上:https://gitee.com/ljl36/team_programming