软件工程实践总结---揣着一口袋的知识完美落幕

061900408龚嘉怡 学生 2022-06-26 18:46:08
这个作业属于哪个课程2022年福大软件工程实践-W班
这个作业要求在哪里软件工程实践总结&个人技术博客
这个作业的目标1、课程回顾与总结
2、个人技术总结
其他参考文献<<构建之法>>

目录

  • 一、课程回顾与总结
  • 1、寒假作业博客链接
  • 2、新看法新解答
  • 3、产生的新问题
  • 4、每个阶段收获的知识或能力
  • 4.1、需求阶段
  • 4.2、设计阶段
  • 4.3、实现阶段
  • 4.4、测试阶段
  • 4.5、发布阶段
  • 5、结合经历收获的理解或心得
  • 5.1、个人项目
  • 5.2、结对编程
  • 5.3、团队项目
  • 6、自我评分
  • 6.1评分目标
  • 6.1自我评分
  • 二、个人技术总结
  • 1、链接
  • 2、概述

一、课程回顾与总结

1、寒假作业博客链接

2、新看法新解答

  • Q1、花费时间越多,代表工作量越高吗?

    A: 我还是认为花费时间越多并不代表工作量越高
    通过此次实践任务的工作来看,其实Web端在第二阶段冲刺的时候已经有很多工作是比较重复性的了,但是也花费了我们很多时间去完成,然后还有一些比较有难度的功能,比如文件上传等,也花费了我们较多时间,但是其实工作量并没有很高。
    其次,由于我们对于技术掌握不够扎实,本来一个可能很简单的功能,我们花了超出本身需要花的时间去学习完成。
    所以总结一下,我们还是要将技术掌握扎实,在学中做,在做中学,这样子才能在工作中更高效的去完成任务。

  • Q2、学生与职业程序员的区别?

    A: 寒假的回答(思考方式)我依旧认为是学生与职业程序员的一个区别。
    其次在本次完成软工实践任务的时候,有时候遇到困难,会在CSDN一些问答网站上进去求助提问或者寻找答案,会发现一些职业程序员的解决方法比我们原本的更加的高效、简单,并且代码书写规范和习惯也很优美,我觉得这个是我们学生需要不断加强的一个点,不要为了完成功能去完成功能,当你完成这个功能以后,想一想,有没有更简洁优雅的代码方式。

  • Q3、个人在团队中应该只是一个流水线上的机器吗?

    A: 我认为作为学生团队的话,我感觉不应该仅仅只是一个流水线上的机器,我觉得每个人都应该担负起这个团队的责任,不能将自己置身事外,因为我们是一个team,是一个整体,既然选择加入这个团队,首先应该完成团队布置给成员的任务,其次当其他组员有需要帮助的时候,也会及时伸出援手,我认为这才是一个团队成员应该在团队中完成任务的标准。

  • Q4、会不会有很多软件工程师可以更短时间内完成任务却特意花更长时间呢?

    A:就本次实践经历来看,因为我们的团队分工任务是在冲刺时间之前就已经分工好了,并且每天需要完成的工作量也是提前布置安排的,所以这首先确保了我们团队的进度是正常的,其次我们团队大部分同学都能合理安排时间,反而用更短的时间去完成需要更长时间完成的任务,然后利用节省下来的时间去帮助其他队友,所以我目前没有遇到这种可以更短时间内完成任务却特意花更长时间的软件工程师,但是我认为如果是在安排的时间段内完成任务,并且不影响团队的前提下,我觉得无可厚非

  • Q5、关于多人合作中的代码如何同步?

    A: git是一个非常高效、便利的工具,并且以后在工作中也是经常需要使用到的工具,利用git其实就可以比较完美的解决多人合作中的代码同步问题,并且还有备注功能,我们可以更好的去回溯代码等。

3、产生的新问题

  • Q1:我比较想进一步了解,作为组长应该怎么样更好的去管理你的团队,如果遇到团队成员以及自己也解决不了的问题的时候,是如何解决的。
  • Q2:在技术上,想要更深入的了解一下在真正实战过程中,前端人员工作的分配应该是按页面呢,还是按照功能进行分配,因为一个项目中有些页面中的功能都是重复的,如果一个人做一个页面是否会造成时间安排上的浪费等。
  • Q3:在测试上,感觉没有一个很完整的测试流程步骤,比较想要了解公司发布一个软件的时候,当产品上线时,是如何进行完整的测试的。

4、每个阶段收获的知识或能力

4.1、需求阶段

  • 在需求设计阶段我们学习了NABCD模型,其主要是从需求、做法、好处、竞争、推广这五个方面来对我们的产品功能来进行分析,我认为这个模型让我进一步的从只会编写代码的升级到了如何站在用户的角度多维度的去思考问题,并且也能让我们的思维有所上升,比如当我们去使用其他软件的时候,也会想着我是用户或者我是开发者,这个功能或者交互我要怎么做更有利于用户使用或者如何进行更好的推广等。

4.2、设计阶段

  • 在设计阶段,我们主要完成的是数据库设计、用况图等设计,因为我们的角色功能较多,所以一开始对于数据库如何设计比较没有思绪,后来有查阅一些相关资料,我们在完成用况图等一些类图的基础上,再去实现我们的数据库设计就更加的轻松快捷,所以我觉得在设计阶段,UML图绝对是一个必不可少的好帮手,并且通过UML图,我们对于一些权限分配等功能的代码编写有了更加全面的认识。

4.3、实现阶段

  • 在实现阶段,由于我负责的主要是前端工作,所以对于VUE+element+Axios的使用需要比较娴熟,这个是必不可少的基本功,其次如何在完成原型图的基础上,去更加美化和优化我们的界面和交互也是一个需要不断探索的新技能,以及一些代码或者组件的复用,也是需要提前构思好的,前端不单单只是一个编写界面的功能,其要涉及到范围也是很广的,它不仅承接着和后端的数据交流工作,也承接着和用户的交互工作,所以我认为我在实现阶段,不仅提升了自己的前端知识,也收获了如何更高效的和后端沟通解决问题。

4.4、测试阶段

  • 测试阶段,我们的项目我主要是负责界面的一些交互功能是否有出现bug,用户使用体验感界面展示效果是否达到了我们的预期,但是正如我在上述提出来的问题,我认为这一阶段我们可以改进的地方还是非常多的,我们还是没有对与测试有一个很完善的体系,每个功能的测试步骤,以及如何进行改善等,感觉比较凌乱,只是达到了一个这个功能不出错,那么我测试就算完成的一个基础。所以希望后面有机会,可以进入真正的社会实战,去体验一下前端的测试工作要如何进行。

4.5、发布阶段

  • 在发布阶段,因为我们前后端是分离的,所以我们只需要将前端代码部署到服务器上即可,在这个阶段我主要学会了如何在服务器上去安装一些我们需要的环境,比如APache等,如何学会了如何打包我们的项目,生成dist包,放入相应的服务器的目录下,学会了一下简单的Linux的操作指令。并且也发布了问卷,让使用者对我们的产品进行反馈,并且在第一个冲刺阶段发布的第一个版本中,完善了我们的原型图,第二个冲刺阶段完善了第一阶段的不足。

5、结合经历收获的理解或心得

5.1、个人项目

  • 个人实战的时候算是首次接触到比较完整的需求,因为之前的实践作业都比较开发性,并没有将要求给的比较详细,所以在完成个人实战项目后,再去测试时,发现有很多题目的需求没有完善,所以在个人项目阶段也算是为后续打下了一个基础,告诉我们题目或者以后进入社会用户的需求是需要仔细阅读分析的,要在明确需求后再进行代码编写。

    5.2、结对编程

  • 结对编程阶段我是负责后端代码的编写,由于之前没有接触过比较完整的前后端分离的项目,所以结对编程阶段锻炼了自己的自学能力,我觉得我在这个阶段很大的一个收获是一定要提前主动去学习摄入一些知识,而不要等到需要用的时候再来学,那样子可能会有点来不及。

    5.3、团队项目

  • 团队项目的两次冲刺阶段是我比较完整的模拟目前市面上公司团队合作的模式进行的一次项目,我觉得不仅锻炼了我们团队分工的能力,而且还提升了我应该如何和前端、后端、测试人员沟通的能力,并且最重要的是有一个非常深刻的领悟,一个团队的领导人真的非常重要,他决定了会带领你非常高效率的完成任务还是低效率的完成任务!

6、自我评分

6.1评分目标

目标具体内容
目标1理解软件工程师的职业道德规范和实践要求,了解国情社情民情,理解软件产品对社会、健康文化等影响,树立积极向上的软件开发理念。
目标2掌握需求分析的全过程,能辨别客户表述的多样化要求,熟练使用需求表达工具,能够规范、准确地表达客户的需求,构建需求分析模型。
目标3掌握软件开发的全过程,遵循体系结构设计方法和基本设计原则,通过正式的技术评审,完成从体系结构设计模型、数据设计模型和构件级设计模型,形成面向高效可靠的服务组件设计方案或软件系统设计方案。
目标4能够执行从组件到软件系统的技术评测,具备设计模型的评判能力,具有创新设计意识,能够优选设计方案。
目标5遵循软件开发各阶段文档标准,采用规范的表达,掌握需求规格说明书、系统设计说明书、系统测试报告等文档撰写方法,具备与业界同行交流能力。
目标6具有良好的团队意识和合作技能,能够与其他成员开展有效的沟通和协作;能够组织、协调或指挥团队开展工作。
目标7能够辨别具体软件项目管理中涉及的构成要素,掌握软件规模和工作量的估算方法,能够选择合适的工具规划软件进度并对项目管理过程进行配置,具备初步的管理复杂软件工程项目的能力。

6.1自我评分

目标分数理由
目标190本次软工实践的项目主要从“以人为本”出来,目的都是为了便利同学老师的生活并且完成任务过程中,遵循软件产品积极向上的开发理念。
目标290在完成项目功能过程中,会模拟使用者对软件进行测试,致力于改善交互等,让用户使用起来更加方便,并且掌握了绘制原型等工具,便于表达需求。
目标387在项目开始前,完成了需求分析、数据库设计等体系结构设计方法,并且在后续开始编写代码中,也按照前期设计的模型进行改良,最后构建了一个较为满意的软件系统设计方案。
目标487在现有的大众的软件上,通过多次使用后,在其基础上进行创新改进,设计出更加令用户使用方便的软件。
目标586在软工实践组队过程中,锻炼了与后端、APP端、前端同学的沟通能力,对于如何进行高效沟通并且快速定位问题解决问题有了更深的认识,对于编写产品的需求规格说明书等文档撰写方法也有了更加标准规范的认识。
目标686在两次冲刺阶段,冲刺日都会有站立式会议的开展,通过大家分别展示当天完成的内容,以及提出自己代码的一些疑问,团队其他成员帮忙进行解决等交流,使我们具有了更团结更融洽的团队氛围,并且懂得了如果以后我们担任组长需要了解的开会的流程等。
目标789掌握了如何对一个大任务进行拆分,将其拆分成小任务,并且对任务工作时间量进行估计,选择合适的规划软件等来对我们的项目进行每日进程管理。

二、个人技术总结

1、链接

个人技术总结----Axios的常见使用

2、概述

  • Axios是一种基于promise的Ajax的网络请求库,本次个人技术总结主要讲解了Axios的常用使用和如何进行封装以及GET和POST使用误区
...全文
85 回复 打赏 收藏 举报
写回复
回复
切换为时间正序
请发表友善的回复…
发表回复
相关推荐
发帖
2022年福大-软件工程、实践-W班

136

社区成员

2022年福大-软件工程;软件工程实践-W班
软件工程 高校
社区管理员
  • FZU_SE_teacherW
  • 丝雨_xrc
  • Lyu-
加入社区
帖子事件
编辑了帖子 (查看)
2022-06-26 20:13
编辑了帖子 (查看)
2022-06-26 18:46
创建了帖子
2022-06-26 18:46
社区公告
暂无公告