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

一、回望

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

    回顾整个学期,寒假的前两次作业就让我感觉软工实践这门课不一般,相较于以往的课程,仅仅是两次作业就让我感觉到了与以往不同的体验,感觉这门课是“动了真格“,但是同时感觉自己基础薄弱,加上本学期课程较多,时间紧张,我另一方面又在遗憾,如果在大二上了这门课,也许现在会有很多不同。通过实践作业,接触到了比较贴近于实际的软件开发过程,起码对于真正的软件开发流程有了一定的了解,但是不足之处在于个人水平不足以及团队分工问题,在类图或UML等部分没有参与到其中,但是加强了编写文档的能力。

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

    我回顾了一下开篇博客中我的计划和路线,感觉有一些没有达到期望的地方。在原本的计划中,我更多的想要了解一些有关底层的知识,比如JQuery,AJAX,CSS3的动画等等,再加上寒假时已经学习过一些关于Vue的知识,我更加想要了解原理,但是限于大部分时间用于完成作业,所以对于基础的学习没有太多时间。在完成软工实践的作业时,或者说在限定时间内完成任务时,当然使用框架是理所应当的,使用Vue或者Angular这样的框架,开发过程方便许多,但是我的心里是惶恐的,因为我觉得对底层的原理了解不多,仅仅使用框架,我能够写出代码,知道代码的运行结果,却不知道为什么会这样运行。总的来说,关于计划中的一些目标,在开发过程中已经达成,但是我个人而言感觉不够。由于实习岗位的缘故,需要暂时停止前端知识的学习,转而学习后端,目标是全栈,所以也不会彻底抛弃前端的学习。

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

    • 统计一下,你在这门软件工程实践中,一共完成了多少行的代码:不少于6008行

      作业 大约花费时间(小时)
      寒假作业(1/2) 2
      寒假作业(2/2) 20
      结对第一次—某次疫情统计可视化(原型设计) 22
      快乐就队——团队展示 12
      结对第二次作业——某次疫情统计可视化的实现 32
      快乐就队——团队Github实战训练 12
      快乐就队——项目需求分析 10
      快乐就队——项目系统设计与数据库设计 13
      个人作业——软件评测 8
      快乐就队——Alpha冲刺随笔集合 88
      快乐就队——Beta冲刺随笔集合 46
      个人作业——软件工程实践总结&个人技术博客 7
    • 哪一次作业让你印象最深刻?为什么?

      热身篇——疫情统计以及团队作业第二次—团队Github实战训练。前者是因为我出于一些别的缘故原本给予两周的时间完成,但是我在最后两天才开始爆肝完成,加上基础不佳,所以完成的非常差。后者是因为限定在一天内完成,让人措手不及焦头烂额,但是实际开会分工后其实工作量并不大。

    • 累计花了多少个小时在软工实践上?平均每周花多少个小时?

      大概有280小时,平均每周18个小时左右。

    • 学习和使用的新软件;

      墨刀,Axure RP,Postman,Typora,Xshell,WinSCP

    • 学习和使用的新工具;

      WakaTime插件,Swagger-UI

    • 学习和掌握的新语言、新平台;

      Angular,Typescript,Github,博客园,markdown

    • 学习和掌握的新方法;

      对于自己遇到的一些问题,通过搜索可以找出解决方案,在不理解解决原因时,要及时对问题情况和解决方法做一个记录,防止下次遇到时又需要再去搜索。还有开发过程中遇到的一些较为典型的BUG,也要在开发结束后做一个笔记记录,防止以后遇到一样的BUG无法解决。

    • 工程能力的提升;

      文档设计编写,测试。

    • 团队合作上的提升;

      沟通能力,协作解决问题

    • 其他方面的提升;

      人际交往能力,自我管理能力

二、团队总结

  • 如果你是组员,你觉得你的组长分工安排是否合理?你对组长的选举有什么建议?

    我认为组长分配的任务比较合理,不同任务有工作量的差距是正常的,选择任务是自愿的,能者多劳,能者多得是合理的。组长的选举我认为要投票决定,但是同时也要参考被选举人的主观意愿。

  • 你这学期经历过换组吗?你对换组有哪些看法?谈谈你在这个过程中的感受。

    没有,对于换组的做法,我认为可有可无,因为我没有经历换组,所以没有体验过,但是我们组内原本和我对接的后端被换走了,新加入的成员熟悉项目和储备知识都需要时间,所幸在换组前他所负责的部分完成度已经很高,所以没有太多的问题。但是我想因为技术栈不同的原因而产生较大矛盾的情况一定存在,所以我希望如果要进行换组的话,希望尽量能够在相同技术栈之间进行交换,否则在项目后期进行交接实在是一个不小的挑战。

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

    我认为我们的团队大致可以算做规范阶段,大家对于要做什么、怎么做,都能够想到一块去。

三、人月神话

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

    • 通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件
      我们团队使用领歌看板进行任务管理,以及每日的PM报告等,每日的项目进展以及每个人每天的安排和进展都能够做到透明,在某位成员时间不足以完成任务时,会让其他成员帮忙完成,但是绝不会出现大佬一人Carry,其他人都在混的情况,毕竟其他人想要帮助也需要先熟悉一下该成员的工作情况,因此是不会让其他人帮忙写较为核心的部分,而是帮忙处理一下模板化的部分。

      个人作业——软件工程实践总结&个人技术博客_第1张图片
    • 并且通过数据展现软件是可以维护和继续发展的。 而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料
      在此贴出我们项目的GitHub链接:https://github.com/YBN-JUAN/ANOP/tree/master
      https://github.com/abse4411/anop_project
      因为在beta阶段后端改为分布式,所以创建了一个新的仓库用于区别新旧后端,上述链接后者即为新后端项目。我们的项目有较为完备的文档,在Github仓库中就可以找到。

      个人作业——软件工程实践总结&个人技术博客_第2张图片
  • 写下属于你自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析,文字部分字数要求在100字以上,可以使用你自己喜欢的方式表达

    可能是个人水平问题或者是经验不足,尽管每次开发前对于要写的东西都有构思,但是每次写到一半总会发现当初的想法存在漏洞,可以写的更为合理,但是已经写了不少,所以导致很多不必要的麻烦,完成需求后,应当进行代码重构,把代码改的更加合理些。在系统功能上,项目初期在考虑功能时不能事无巨细,但是大方向上一定不能错,大家要达成共识,在具体要实现时,在不违反大方向上的细节时,参照市面上类似的产品的功能以及用户的使用习惯,前后端人员协商敲定最终方案。

四、建议

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

    成功学盛行的当下,每天打开手机都能看见有人贩卖焦虑,何以解忧,唯有编程。技术掌握在自己手中就不会害怕,大一刚进来的时候,一无所知,直到大三上学期结束才明白有前端后端这类方向,同时后悔自己没有早点为将来职业储备知识,所以对于新人,我希望他们能够早早的了解自己想要走的路,而不是漫无目的地跟着基础课程走。能够早早的学习一些实用的技术,做一些能够怡然自乐的小玩意,给自己一些成就感和满足感,就能支持着自己多学一些东西,仅仅是这样我想也能够超过大部分的人。

  • 对于软工实践课程,你有哪些建议?

    希望学校能够把这门课程往前提,大三下的课程实在太多了,但是不可否认这门课程的前置课程比较多,但是我还是希望能够尽量把这门课程调前。相比较于这门课,以往的编程课真的只是在学系编程,根本谈不上应用。对于课程内容上,我希望能够给予一些技术上的指引,我在寒假学习过关于vue的知识,所以在结对编程中自然而然的使用了vue,但是对于其他同学,就我了解,有的人使用的是JSP,诚然,技术没有高低贵贱,但是对于他们来说,开发过程肯定较为艰难,所以我希望能够给予一些技术上的指引,在寒假时推荐一些技术栈给大家,防止书到用时方恨少,比如本学期最后助教开展的直播,我觉得就是一种不错的指引。

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

    希望助教能够提供一些技术上的支持或是帮助,但是考虑到助教和大家个人的时间安排问题,不需要类似讲课的教程,而是给出方向上的指引,具体细节应该由个人自己落实。

  • 对于自己今后,你有哪些建言?

    关灯不要使用电子产品,对视力伤害很大。尽量不要熬夜,真的会秃

五、个人技术总结

  • 关于阿里云的环境配置的总结,这是我在第二次结对作业时记录的,因为那时候数据库没有配置好,所以重装了两三次系统,重复搜索不同问题实在花费不少时间,因此记录流程方便日后查看。
  • 关于一次开发过程中所遇到的问题的总结,这是我在软工实践之外的一次开发过程中遇到的一些问题的总结,因为原本是总结给自己看的,所以排版比较乱,请包涵。
  • TypeScript日期工具: date-fns日期工具的使用方法,在本次开发中关于前后端传递Date类型数据遇到一些问题,搜索后找到这个工具,前人之述备矣,自己写一篇也比不上人家的详细,因此借花献佛。

你可能感兴趣的:(个人作业——软件工程实践总结&个人技术博客)