软工个人总结

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

1.对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
达到的期待和目标:
通过实践,了解了做一个完整项目的必要流程,做一个项目的过程需要经过组队、需求分析、设计、构建、测试、发布、展示、在alpha阶段之后还要事后分析等等,每个流程都需要保持严谨的态度,最终才能完成一个“足够好”的软件。
在自己解决问题能力,编写代码能力方面达到了我的期许,目标是做一个完整的项目也达到了
不足之处:
(1)结对编程还是不习惯两人合作,当出现问题时候,表现得太强势了一点,队友的意见还是要有所肯定的
(2)作为团队的项目经理,感觉做得不是很好,在某些方面还是没有做好良好的沟通。任务分配方面交代得太泛,导致有些成员不清楚自己的任务。在加上自己同时在做后端的开发,没能顾得上团队成员之间任务的协调,导致进度偏慢。
(3)没有事先做好技术准备,在alpha阶段的前期一筹莫展,表示自己的拖延症很厉害,不到最后几天是不会有效率的...
(4)对成员之间出现的分歧和不同意见处理得不是很好

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

1)统计一下,你在这门课程中,完成了多少行的代码;

1500行代码左右

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

个人阅读作业1 结对编程作业 个人阅读作业2 团队组队展示 案例分析 需求分析与设计 团队计划 alpha敏捷冲刺 alpha阶段展示博客 alpha阶段测试与发布 alpha阶段项目复审 alpha阶段之事后诸葛亮 alpha阶段个人总结 beta阶段敏捷冲刺 beta阶段项目验收与总结 beta阶段验收互评 软工个人总结
6h 30h 6h 1h 8h 6h 3h 80h 3h 5h 2h 5h 4h 40h 3h 2h 3h
#### 3)哪一次作业让你印象最深刻?为什么? 应该是alpha阶段的冲刺,因为一开始毫无头绪,焦头烂额的,花费了很多时间,加班的时间比较多,但同时收获也是最多的一次作业 #### 4)累计花了多少个小时在软工上?平均每周花多少个小时? 目测210h是有的,平均一周15个小时左右 #### 5)学习和使用的新软件; Tomcat、腾讯云服务器、石墨文档、GitBash、lengo #### 6)学习和使用的新工具; 微信web开发工具、资源监测工具javaVisualVM、压力测试工具Jemeter #### 7)学习和掌握的新语言、新平台; javaWeb开发平台,微信小程序环境平台 #### 8)学习和掌握的新方法; 结对编程的过程体验,善于阅读资料并有自己独到的见解和看法,单元测试方法,软件的各项功能测试,需求分析的方法,了解了敏捷冲刺的流程 #### 9)其他方面的提升。 - 提升了解决问题的能力 - 提升了互相沟通和交流的能力 - 有了团队的意识 - 责任心 - 抗压能力(面对bug没有那么慌张了,要收工的时候,突然出现bug的情况如下所示)

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

项目实践中的经验总结:

  • 一定要说清楚团队成员各自的任务,在qq或者微信上容易被忽略,最好是面对面交流
  • 编写博客的时候不要多个人同时编辑,容易造成其他成员保存的内容被覆盖
  • 合理安排时间,千万不能拖,在alpha阶段的时候就是因为前期拖延症太厉害,导致后期狂奔赶进度就很难受了
  • 一定要做好技术准备,否则一开始就会陷入迷茫的状态,会使团队整体的额进度变慢,而且大家会很沮丧,没有信心
  • 出现团队矛盾的时候,要客观地分析,不能都有个人的感情因素去考虑,要顾及大家的感受
  • 团队分工方面不够合理,表示后端开发人员的压力很大
    总之,合作很重要,团队自信心要很重要,还有大家共同的信任
  • 我们团队的侧重点在开发上,忽略了博客的评分要点,导致分数比较低。因为现实是只要博客写得好,不管项目做得好不好(只要不是太差),就能得个不错的分数
  • 不管做什么,沟通很重要,把自己的想法、有什么意见和建议都要大胆说出来

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

对于大一我的建议:
尝试多与他人沟通,多阅读一些除了专业书之外的书籍,学习并不是唯一,它没有你想的那么重要
对于后来人的期许:
好好学习专业知识,不要说自己不会写代码就不真的不写,不会可以学的。认真对待,会有收获和提升的。如果你都不努力一把,又怎么知道自己有多厉害呢?
换人机制:
emmm...如果按老师提到的那种招聘方式,可能大家只会图个热闹,最后该怎么换还是怎么换。最简单的还是吉祥物的交换,这样不管对新的团队还是原来的团队都不会那么麻烦。虽然这样换人的目的就没有太大的意义了,比如说原来是写博客的,那么只是换个团队写博客。换人其实是个比较麻烦的事情,大家组队一般都会找熟人、同班同学、舍友或者关系比较要好的人,所以肯定不能强制指定换谁。大家都想挖dalao,但是呢,一个团队走到alpha阶段结束是不会轻易地退出,换人可以根据角色来互换,以及考虑在原来团队中个人的贡献,互换的两个人贡献度相当就差不多。

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

四个阶段,分别为

  • 萌芽阶段:组队完成,大家都不熟悉项目流程,都是一头雾水
  • 磨合阶段:因为一些小问题会产生讨论,讨论到最后反而草草决定;出现分歧大家也是婆说婆有理,公说公有理
  • 规范阶段:团队成员都清楚自己的任务,遵循代码规范,大家互相交流和帮忙,努力配合PM的工作,可以做出完整的产品
  • 创造阶段:未达到
    没有达到创造阶段,我们还没有能力做到那种阶段

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

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

发布的软件,微信小程序二维码见下图:

需求分析博客链接:
https://www.cnblogs.com/just-let-it-go/p/8795246.html
alpha阶段博客:
https://www.cnblogs.com/just-let-it-go/p/8880797.html
beta阶段博客:
https://www.cnblogs.com/just-let-it-go/p/9068995.html
beta阶段项目验收和总结博客:
https://www.cnblogs.com/just-let-it-go/p/9134298.html
git项目地址:
https://gitee.com/jmulyq/MyAccount

posted @ 2018-06-16 10:46  Linyq  阅读(408)  评论(2编辑  收藏  举报