软工网络15个人作业5——软件工程总结

一、项目的测试情况

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

  • 期待和目标:
    • 通过博客园这样一个开放的平台,参观大牛们的博客以学习知识,在个人博客下看到大家对我提出的意见或建议。
    • 通过结对编程、团队编程的编程形式,实现了不同思维之间的协作与碰撞,很好的培养了个人团队意识。
    • 依靠团队的力量,开发出一款微信小程序,并拥有实际的用户量。
  • 不足:
    • 该课程的博客作业量较大,占用了同学们大量的课余时间。

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

  • 统计一下,你在这门课程中,完成了多少行的代码;
    • 老实说,我也不知道......1000行应该有吧?
  • 软工的各次作业分别花了多少时间?(做一个列表)
各次作业 所花时间
个人阅读作业1 2h
结对编程练习 30h
个人阅读作业——提问题 5h
团队作业1——团队组队&展示 1h
个人作业3——案例分析 4h
团队作业2——团队计划 4h
团队作业3——需求分析与设计 10h
软工网络15Alpha阶段敏捷冲刺 70h
团队作业5——测试与发布 4h
团队作业6——展示博客 4h
alpha阶段项目复审 2h
团队作业7——alpha阶段之事后诸葛亮分析 2h
个人作业4——alpha阶段个人总结 2h
团队作业8——敏捷冲刺(Beta阶段) 70h
团队作业9——项目验收与总结 4h
beta版验收互评 2h
  • 哪一次作业让你印象最深刻?为什么?
    • 印象最深刻的一次大概是结对编程吧,和舍友一起走路吃饭睡觉都在讨论项目内容。让本就形影不离的我们更加亲密无间。。。
  • 累计花了多少个小时在软工上?平均每周花多少个小时?
    • 从表格来看,累计花了216h在软工上,平均每周15.4h。
  • 学习和使用的新软件;
    • 微信web开发者工具
  • 学习和使用的新工具;
    • 微信web开发者工具
  • 学习和掌握的新语言、新平台;
    • WXML,WXSS,JS(学习而已,谈不上掌握)
    • 微信web开发者工具,博客园,问卷星
  • 学习和掌握的新方法;
    • 单元测试
  • 其他方面的提升。
    • 编码能力提高,学习能力提高,与人交流能力提高。

二、属于自己的人月神话

个人或结对或团队项目实践中的经验总结+实例/例证结合的分析

  • 所谓人月神话的含义:人是程序员,月是时间,如果1人干10个月如果等同10人干1个月,那就成神话。
  • 在团队开发的过程中,不同的项目PM有不同的管理风格。如我Alpha阶段和Beta阶段所处的两个团队,一位PM喜欢将某项任务分给某一位或多位成员去完成,另一位PM喜欢将任务细化到个人。
  • 我在前者管理的团队中,常常因为任务的交叉或是意见的不一导致进度缓慢,甚至是出现互相推脱责任的现象。而在后者的团队中,每人分工明确,能够较为高效的完成任务。
  • 例如,我们在设计邮箱绑定界面时,我和我的伙伴关于界面设计及跳转界面设计意见出现了分歧,我们僵持了很久后才决定只由一个人设计,浪费了不少时间。

三、建议

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

  • 对于刚踏入大学校园的萌新们,我有以下几点建议:
    • 学好高数和C语言,打好基础,对于日后的思维逻辑培养和专业课的学习都有很大帮助。
    • 找到自己的兴趣点,就算不喜欢本专业而考虑转专业,也趁大一决定。
    • 大一对校园里的任何事物都感到新鲜,充满热情。请保持你的热情,好好学习专业知识,争取掌握一两项独特的技能。
  • 对于换人机制:
    • 个人认为换人机制没有必要强制
    • 我在Alpha阶段所处的团队,大家相处的非常和谐,都尽心尽力的为项目的发布而努力。当Beta阶段决定换人时候,我们团队内部非常纠结,没有人愿意离开这样一个团结的集体。
    • 然而Beta阶段我到一个新的环境,我对于熟悉这个现有的项目就花了不少时间,然而关于项目的许多关键代码仍然不大了解。
    • 如果说换人机制是模拟企业换人,那么和谐而团结的企业为什么要求它一定要踢人换人呢?

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

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

  • 团队合作的几个阶段:
    • 萌芽阶段
    • 磨合阶段
    • 规范阶段
    • 创造阶段
  • 我的Alpha阶段和Beta阶段分别处于两个团队,这四个阶段都经历过。

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

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

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

  • 由于我两个阶段所处两个团队,所以在此提供两款软件的打开方式:

    • 打开方式之一:微信搜索“滴卡录”“喵喵喵记账”小程序。
    • 打开方式之二:微信扫描以下二维码

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

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

posted @ 2018-06-16 10:00  埕同学  阅读(239)  评论(1编辑  收藏  举报