zoukankan      html  css  js  c++  java
  • 最后一周总结

    这是现代软件工程课程最后一周总结

    回顾你的课程计划第一周的计划),你完成的程度如何?请列出具体数据和实际例子

    在我当初提到的五项我最需要提升的技能(软件实现、测试、效能分析、行业洞察力、项目管理)中,我在软件工程课程上主要提升了项目管理能力。通过在 alpha 阶段担任一个很有难度的项目的 PM,以及在 beta 阶段担任一个我较为熟练的项目的架构师,我觉得我体验了两类截然不同的项目的管理。不过,离 5 分(能通过面试)还是很遥远的。

    当初我估计每周拿出 10 小时左右花在这门课程上,从 11 月中旬我开始记录工作时间到现在,在这门课程相关的事情上总共花费了约 100 小时,符合最初的计划。

    你在课程开始快速浏览了《构建之法》,提了 5 个问题,请回顾那些问题,自己回答它们。如果不能回答,为何软件工程课不能让你回答这些问题?

    第一个问题“怎么做测试”我与邹老师讨论过两次,然而这个问题毕竟太大了,还是需要写过许多实际项目才能有足够的经验的。这次软件工程课程我尽量少直接参与编码,所以没有针对这方面进行研究。

    第二个问题“怎么在开发前期确保代码的可扩展性”我仍然在思考,很遗憾软件工程课程并未涉及这种关于架构的内容,没讲过高层次的软件开发模式,或者诸如怎样分析问题、怎样设计微服务、怎样解耦各层次、怎样管理开发-测试-部署流程等。大概这也是需要从许许多多实际项目中才能学到的吧。

    另外五个问题中,三个是关于《构建之法》本身的,并不需要回答。另外两个都是较小的问题,我当时已经阐述了我在相应问题上的看法,只是想知道有没有更多其他想法,在这门课程中没有得到其他不同的想法,所以维持原来的看法未变。

    看看还有什么新的问题产生,请列出来,建议列出 2-3 个新问题。可以让老师和助教来回答

    在 alpha 阶段我就意识到了一个严重影响团队的因素:团队成员在物理上相隔很远,不能方便地交流,也没有偶然性的互动。我很怀念在学校时我和其他几个朋友每天都在社团的活动室里工作、学习和打游戏,到饭点时一起约饭,无论是谁在开发什么或者研究什么有趣的问题,大家都乐于参与进来并随时了解进展。我觉得这种随时能互动的条件对于人际关系是非常重要的,但 Xu Cao 在开会时提到,现在有很多公司完全在家办公(比如 GitLab),依赖各种工具进行进度追踪和讨论,同样非常顺利、成功,我觉得也有道理。从软件工程课程给我们的要求来看,显然也是希望我们尝试克服这个困难,形成良好的团队并完成开发目标。但是《人件》中将物理分隔列为了杀死团队的一大方法,呼吁项目经理抵制来自高层的压力并为团队形成创造条件。其中写道“没有团队的空间,没有团队的即时互动,也就没有形成团队文化的可能。……在物理上分隔需要紧密交流的人本来就不合理。”这和我一直以来的观点是一致的。究竟应该如何看待这个问题呢?

    你看了一些软件工程的文献,你的团队也做了一两次“事后诸葛亮”分析,可以再去看一遍,现在有什么新的感想?

    上面算是一个对于《人件》的新感想了。对于《有人负责,才有质量:写给在集市中迷失的一代》,我现在意识到处理 bug 也是如此,如果没有将任务分配到人,很容易造成 bug“大家都知道、大家都等着修”的局面。为每个项目、每个模块、每件任务都设置一个负责人对质量控制非常有意义。

    对比一下技能评价表,你有什么提高?还有什么收获是不能用数字衡量的?

    除了上面提到的五项,我认为在团队合作能力方面我有不少提高。这是我第二次真正参与团队开发,第一次在大家会写好代码的情况下参与团队开发,从这次课程项目中我收获了不少关于团队开发的感悟。

    设想一年之后,你到了你职业发展的下一个阶段(高年级,读研,工作),回头看这门课,你对于这门课的教学方法,老师和助教的工作,和其他课程的衔接,有什么意见和建议?

    ……目前感受不多,或许等我到职业发展的下一个阶段时,有了更广的眼界和更丰富的经验后,会有更具体的体会和建议。

  • 相关阅读:
    一些你可能用到的代码
    iOS 键盘下去的方法
    iOS设计模式汇总
    随笔
    Spring cloud config 分布式配置中心 (三) 总结
    Spring cloud config 分布式配置中心(二) 客户端
    Spring cloud config 分布式配置中心(一) 服务端
    jdbcUrl is required with driverClassName spring boot 2.0版本
    JpaRepository接口找不到 spring boot 项目
    解决IntelliJ “Initialization failed for 'https://start.spring.io'
  • 原文地址:https://www.cnblogs.com/SmartHypercube/p/final.html
Copyright © 2011-2022 走看看