软工实践个人总结
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu/SE2020 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/SE2020/homework/11605 |
这个作业的目标 | <软工课程实践总结> |
学号 | <181800330> |
对于这次课程你对你自己的表现满意吗?为什么?
基本满意,从个人作业到结对作业再到团队作业,每次作业都能够全身心的投入与付出,过程虽然有很多艰辛,但是收获满满,所以对本次课程还是基本满意啦~
通过这门课,你掌握了什么工具、技术?
- 原型设计方面(墨刀)
- 团队管理(Leangoo看板)
- 单元测试工具(mocha)
- 微信云开发(云函数)
- github的基本操作
在课程中你经历了什么挫折或困难?你是怎么解决的?
- 客观问题:时间不够。个人作业和结对作业的时间还算比较充足,但是到团队作业的时间点,各种大作业接踵而来,最后只能够通过熬夜来解决(时间管理大师的养成计划hhh)
- 主观问题1:个人的知识水平不够,每一次作业都是新的挑战。不过这更加能够体现软工课上一直强调的那句话“learning by doing!”,面向CSDN、B站、博客园等等,通过各种渠道的摸爬滚打,终是在这学期学到了很多东西。
- 主观问题2:团队作业中组员的沟通问题。这一点我觉得是至关重要的,一根绳的力量终究是有限的,如何拧成一股大绳才是重点。起步阶段,我们组一些同学可能抱着想划水的心态,开会或是一起编程的时候都不参与,在了解这个情况后,我和其他几个组员通过QQ私聊或是面谈,最后基本上是动员齐了整组成员,一起来开发我们的小程序。
在课程结束后,你有什么收获和心得?
- 深刻体会到了“learning by doing”的重要性,通过递归式学习真的能够学到很多东西
- 团队中沟通真的很重要,闷头苦干很容易走歪路子,最后不得不打掉之前的重来
- 编码能力有所提高,但面对实战(团队作业)的时候难免还会有所胆怯,可能这就是功力还不到家的体现吧
编码量
- 练手的代码:321行
- 团队作业前的代码:359行
- 团队作业中的代码:1825行
- 总计:2505行
平均花费时间
- 累计花费286个小时在软工实践上(包括上课时间 21 * 1.5 )
- 软工实践持续14周,平均每周花费18个小时左右
团队协作的反思与心得
- 我们团队11名组员应该都属于小白,每个人对于小程序开发都是0基础,但是通过几周的协作开发,我们能够完成出一个小程序,这是我们一起努力,一起奋斗,一起熬夜的成果,我为我们组而骄傲!
- 好的沟通是成果的一半,有了好的沟通,前端和后端才能够完整的连接,我们组在开发过程中就发生因为沟通问题,导致其中一个后端接口函数完全打回重写。
- 站立式会议发挥了很大的作用,他相当于是一个里程碑式的总结,能够让我们开发的同学,总结之前的工作,并制定一个合理的后续开发的计划。
对于软工实践课程及助教工作,你有哪些建议?
- 为助教和点评老师点赞(浏览我们博客的时间点都挺晚的)
- 学分和付出时间稍微有些不成正比,希望老师能够把软工实践的学分多提升点,这样就更有动力了hhh
- 团队人数稍微有点多了,6-8人的小团队会更有利开发,也可以防止一些同学划水
你的未来规划
- 目前全力争取保研,如果不行的话就考研!
SE_Final_Skill_survey 表格。
"你在这门课平均每周花 18小时 (包括上课时间)。
你在这门课中写了大约 2500 行代码 (不包括注释、空行、单字符行)
请填写你上课前后的水平评估。 填 [1..10] 数字即可,数字参考:
1: 最低水平; 3: 基本的书面知识;
5: 基本的理论和实践知识, 可以通过企业的面试;
6: 具有经实战考验过的技能;可通过最高水平企业的面试
8: 可以像专业人士一样自如地运用; 能发表权威技术博客
10: 全面精通理论和实践,成为公认的专家。 "
before the class | after the class | |
---|---|---|
Skills/技能 | assessment (1..10) | assessment (1..10) |
Software Engineering(SE)Overall / 对软工整体的理解 | 2 | 5 |
SE: Requirement (需求分析,典型用户,场景,创新) | 1 | 3 |
SE: Project Management (项目管理,spec) | 1 | 3 |
SE: Design (架构设计,模块化设计,接口设计) | 3 | 5 |
SE: Design (效能分析,效能改进) | 1 | 3 |
SE: Implementation (阅读代码的能力,实现,单元测试) | 3 | 5 |
SE: Test (测试方法、测试工具、测试实践、代码覆盖率) | 1 | 4 |
Software Tools (performance tool, version control, work item, TFS) | 2 | 3 |
Code Review/Writing Solid Code (代码复审/代码规范/代码质量) | 3 | 4 |
Programming Language (C/C++/C#/Java) (pick one language) | 3 | 5 |
App development Web/Mobile/PC (choose one) | 3 | 4 |
Task Plan, estimation and Prioritization (计划任务,估计时间和优先级) | 3 | 5 |
Task Execution (按照质量要求、按期完成任务) | 5 | 5 |
Work with others (协同工作,提供反馈, 说服别人) | 2 | 5 |
Presentation (报告项目状态,提出想法,写博客等) | 3 | 5 |
comments on other improvements (其它方面的反馈) | none |