软件工程实践总结
课程回顾与总结
这个作业属于哪个课程 | 2021春软件工程实践S班 |
---|---|
这个作业要求在哪里 | 作业要求 |
这个作业的目标 | 总结软工实践 |
此前博客链接
问题
- 如何避免过早地优化
在遇到一些性能或是其他问题需要优化的时候,应该先充分考虑这个问题的优先级以及问题的重要程度,并多加分析问题出现的原因,找到根源所在,再计划后续的优化改进能避免一些提前优化,而尽量都是从根本上解决问题。
- 是否应该使用goto
对于goto我还是保持和之前一样的看法,不支持使用这种语法,因为goto对于程序结构的破坏是非常严重的,在使用不当的时候,会造成程序逻辑的混乱,也使得程序的后续维护变得更加困难。所以在一些大型的项目中是完全不推荐使用goto来进行相关操作。
- 结对编程两人水平相差较大应该怎么协调
在这学期的结对编程过程中,队友的水平和我是比较接近的,就没有遇到这样的问题。但从这次结对的经验来说,我认为如果两人水平差距较大的话,可以应该两人更加努力合作来完成相关的结对编程任务,能力强的同学可以将一些简单重复的工作交由另外的同学来进行,并起到一个带领的作用。这样也能使大家的能力都能在结对编程过程中得到锻炼。
- 如何提升用户填问卷的积极性和真实性
这次软工实践过程中我们组发了两个有关项目的问卷,积极性的问题主要还是通过同学们的转发扩散,让更多的人看到问卷才会有更多人参与到问卷当中。而问卷问题设置的好也能进一步提升参与者的积极性,例如让问题与参与者更有关联性或是问题设计的具有趣味性都能提升一定的积极性。真实性问题也主要是通过设计问题来提升相关真实性。
- 为什么好的设计不一定赢
好的设计在也要能符合用户的使用习惯,类似之前的q键盘和d键盘,也是因为当时的人们对于q键盘已经形成习惯,要改变比较困难;另一方面也可能是宣传方面,若是大力宣传d键盘对于效率的提升,并且和一些主流的企业、机构合作的话,或许d键盘也能被推广开,被更多的人所使用。
做中学
-
需求阶段
学到了相关需求分析中需要的一些方法:数据流图、通过问卷收集相关信息...,也复习了UML设计分析的知识,意识到了需求分析在一个项目中的重要地位。
-
设计阶段
设计过程中学习到了有关原型设计的知识,学会使用了axure来进行原型设计以及使用axure的团队协作来进行合作设计。
-
实现阶段
在这次软工实践过程中我主要是从事前端方面的工作,主要是采用vue+ElementUI,从只会简单使用原生html到能够熟练使用vue感觉整个过程中也是学到了很多新知识,收获了很多。
-
测试阶段
测试阶段尝试了jmeter来进行针对一些接口的压力测试(高并发时接口存在bug),也了解到了测试工作的重要性以及测试对于开发过程的帮助。
-
发布阶段
发布阶段主要是学习了vue的部署以及服务器的简单知识,以及需要对项目在部署后进行相关的验收测试,来确保项目的功能是符合预期的,以及检查可能出现的其他bug。
心得理解
- 整个学期经历了个人、结对、团队编程,也对整个项目的开发流程有了更深的理解。开发不仅仅是单纯的编码实现,前期的分析、设计工作是整个项目的基础,只有在前期的设计分析都没有问题的情况下,最后实现的项目才有可能是一个真正可行、实用的项目。在团队项目中,我们选择了制作一个考研论坛,在前期我们就去分析了我们需要去服务的目标人群以及他们的需求,而之后论坛的一些功能也是为了满足这些需求而产生的。
- 在合作编程中沟通是非常重要的部分,这点在结对和团队项目中都很有体会。结对两人的交流相对团队的多人合作会更容易一些,但也是为之后的团队协作的沟通做了一个铺垫。结对的工作内容是我和队友分别负责前后端,两人的工作内容就涵盖了整个项目;而团队则不同,前后端都是多人负责,这其中的许多问题都不止涉及两人的工作范围,就需要所有负责相关功能的同学一起参与讨论,因此每天的例会和一些临时会议就非常重要,通过这些会议能让团队内的沟通更加高效和及时。
个人技术总结
概述:在使用vue框架与后端交互时,使用axios的一些技巧和注意点