个人作业——软件工程实践总结&个人技术博客

这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/2020SPRINGS
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/2020SPRINGS/homework/10842
这个作业的目标 软件工程实践课总结
作业正文 https://www.cnblogs.com/heaoxiang2018/p/13188610.html
其他参考文献

一、回望

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

我认为我在本次课程中增强了工程能力,团队协作能力;但是我在很多方面没有达到预期的目标,我对底层的实现还是过于马虎,认为只要用用框架就好了。

(2)你在第一次作业的个人简历中制定的这门课程结束后,你预期你将增长的能力、技术、技能;和你针对你的目标绘制的学习路线图。对比当前你的所学所得,你达到了当时的预期值吗?

大致是达到了,但是由于我目前决定了考研,肯定不能在技术方面深入下去太多。

(3)哪一次作业让你印象最深刻?为什么?

印象最深的作业是团队作业第二次——团队Github实战训练,因为当时大家才刚刚组建队伍,就突如其来一个团队作业,还是在一天之内完成。组员们的技术栈尚未熟悉,一时间慌了神。最后我决定用flask,由于时间太过匆忙,我也太久没用flask了,最终勉强在晚上六点的时候写完了预期功能。

(4)请总结这门课程的实践总结和给你带来的提升

  • 统计一下,你在这门软件工程实践中,一共完成了多少行的代码
    1w行左右
  • 软工实践的各次作业分别花了多少时间?(做一个列表)
作业名称 花费时间
软工实践寒假作业(1/2) 2h
软工实践寒假作业(2/2) 40h
结对第一次—疫情统计可视化(原型设计) 30h
团队作业第一次—团队展示和项目展示 2h
结对第二次作业——某次疫情统计可视化的实现 40h
团队作业第二次——团队Github实战训练 10h
团队作业第三次—项目需求分析 12h
团队作业第四次—项目系统设计与数据库设计 10h
个人作业——软件评测 8h
团队作业第五次——站立式会议+alpha冲刺 90h
团队作业第六次——beta冲刺+事后诸葛亮 60h
个人作业——软件工程实践总结&个人技术博客 6h
  • 累计花了多少个小时在软工实践上?平均每周花多少个小时?
    一共花了305h在软工实践上,平均每周15h
  • 学习和使用的新软件
    AXURE RP:原型设计
  • 学习和使用的新工具
    postman:接口测试
    junit:单元测试
  • 学习和掌握的新语言、新平台
    markdown语言:博客进行排版
    Github平台:团队开发平台
  • 学习和掌握的新方法
    前后端分离开发方法、单元测试方法
  • 工程能力的提升
    熟悉整个工程的流程,学会了数据库设计和系统设计,阅读代码能力的提升以及和队友的团队协作能力。
  • 团队合作上的提升
    沟通能力的提升,一开始团队交流较少,后面慢慢增多,有什么难题和疑惑可以和组员们很快的进行交流。
  • 其他方面的提升
    代码能力更加熟练。

二、团队总结

  • 你是组员还是组长?你觉得你自己在哪些地方做得好?你觉得自己还有什么可以改进的地方,具体可以怎么改进?
    我是组员,后端的小组长。我决定我在任务分配以及问题解答方面做到好。仍可以改进的地方是:编码时沟通可以更多,视频会议可以更多一些。
  • 你觉得你的组长在哪些地方做得好?你觉得ta还有什么可以进一步提升的地方,有什么具体的建议吗?
    我很幸运遇到了这个组长。我认为我们的组长在业务能力以及团队协作方面都做的非常好,我尚不能达到这种高度,更提不了什么建议。
  • 《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)
    《构建之法》上团队的发展共有四个阶段:萌芽阶段、磨合阶段、规范阶段、创造阶段。我觉得我们的团队经历了两次大作业,达到了规范阶段,尚未达到创造阶段。
  • 从开发的角度,你在团队中担任了什么角色?你是否完成了该角色的任务?现在你觉得你适合该角色吗?
    我担任的是后端开发的角色,我觉得我完成了该角色的任务。目前我很适合这个角色。

三、人月神话

怎样证明你学会了软件工程?以下要求你们的团队达到了哪几个?请在随笔中用数据证明上述内容或侧重选择之一

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

这个要求我们很好的达到了,我们的功能很符合用户的需求。

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

在alpha冲刺和beta冲刺时都按照任务计划表来进行,有明确的燃尽图来表示任务的进度,从而保证按期发布软件。

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

我们的项目代码通过github进行保存和更新,前后端分离,各自有各自的仓库进行管理,所以软件是可以维护和继续发展的。

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

我觉得一个好的程序员一定能够使用好搜索引擎,我们每天要遇到的问题实在太多了,不能一直求助他人,我们应该自己摸索出一套自己解决问题的方法。就拿团队项目来说,但是我们的消息模块要用到web-socket,这是我从来没用过的,于是我想尝试下im即时通信的接口,但是好像有些大题小作,于是我就一直搜集关于flask集成web-socket的框架,最终学习并使用了flask-socketio这个框架实现了我们的业务需求。

四、建议

对下一届同学的建议,或者对于开学初的你,对于大一的你,你有什么建议和想要告知的呢?请写下你对后来人的期许

对于下一届同学,或者大一的同学,你想说:

好好跟着学校的课程,跟着老师,业余时间适当玩玩游戏,想明白自己将来想要从事开发的岗位,需要哪些技术,当作爱好去学习它。

对于助教工作,你有哪些建议?

很感谢助教,我认为我们的助教十分尽职尽责。没有什么建议。

对于软工实践课程,你有哪些建议?对于软工实践课程的上课形式和内容,你有什么具体的意见和建议?在哪儿需要强化或者剔除?

我觉得这门课程的内容形式都挺好的,就是时间比较尴尬,因为大三下很多同学忙着实习或者考研,建议将这门课放到大三上。

五、个人技术总结

flask-socketio框架的在即时通信中的应用 https://www.cnblogs.com/heaoxiang2018/p/13188707.html

原文地址:https://www.cnblogs.com/heaoxiang2018/p/13188610.html