软件工程个人总结

个人总结

经历了一个学期的学习, 可以把经历和收获总结一下。

参考链接:https://www.cnblogs.com/xinz/p/9739047.html

  • 回顾
  1. 对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?

期待达成:

  1. 首先是团队之间的合作和相处是我觉得最好的一项,队友们都很给力且互相帮助,没有说因为方法或者想法不一样而产生冲突,而是互相讨论采取一个互利或者折中的方法。
  2. 其次是在做项目的过程中,学习到了许多之前没有接触的东西,像代码检测、功能检测、性能测试这些在之前的学习一直被自己认为是不太重要的,但经过这次学习认识到了他们的重要性。
  3. 最后是通过一次完成的软件工程项目,让自己在之后工作中更容易适应。

不足:对时间的把控不够到位,以至于项目各阶段的进程安排不是特别合理,有些阶段时间宽裕,有些阶段时间又十分紧迫。

  1. 哪一次作业让你印象最深刻?为什么?

Alpha冲刺作业最令我印象深刻,也是让我认识到作为一个组长,对项目的各阶段、各部分的安排一直要合理,因为在冲刺阶段,不仅是有冲刺的任务需要去完成,还有其余学科的复习和考试,虽然在那段时间,作业整体质量不是很高。

  • 耕耘

请说明你付出了多少时间,写了多少代码,多少注释,多少文档,多少次签入,最好用折线图或其他合适的图形/表格的方式展现

  • 收获
    1.  所做工作的具体成就,软件的用户有多少,公开的源代码有什么影响力

成就:帮助求职者更好地找到自己心仪的工作

软件用户:20+

影响力:便于后续开发拓展功能

    1. 你在哪些技能上有提高?请列举出来。

前端页面技术的提高:vue+springboot框架的应用

代码测试:Sonnar使用(虽然不熟练)

    1. 使用了哪些软件/工具

IDEA、mysql、tomcat

  • 结构化的理解

当我们平时理解一些新事物时,我们的理解大多是离散的,即兴的,能否在一个良好定义的体系中把自己的理解整理一下?

  1. 知识(Knowledge):就是记忆、认识,能回忆重要名词、事实、方法、规准、原理原则等;

例如:软件工程的名词,原理,能回忆编程语言的某种知识

要求:

需求分析(Requirements Analysis):确定软件系统需要满足的功能和性能需求的过程。

系统设计(System Design):定义软件系统的架构和组件,以及它们之间的交互。

  1. 理解(Comprehension):是要能对重要名词、概念之意义有所掌握,能转译、解释;

例如:名词、原理的解释, 能理解单元测试、效能分析工具是怎么帮助工作

要求:敏捷开发(Agile Development):一种以人为核心、迭代、循序渐进的软件开发方法。

瀑布模型(Waterfall Model):一种传统的软件开发生命周期模型,按顺序执行需求、设计、实现、测试、部署和维护。

软件生命周期(Software Life Cycle):软件从概念到退役的整个过程。

软件架构(Software Architecture):软件系统的高层结构,包括组件、它们之间的关系以及环境。

  1. 应用(Application):是要能将所学到的知识概念、方法、步骤、原则通则等等应用到不同的情境中;

把原则应用到各种情境场景中,能开发各种类型的应用程序,和不同类型的人合作

要求:将团队合作的方式应用到其他学科的课程设计当中。

  1. 分析(Analysis):是要将知识的某些讯息,所包含的成分、元素、关系、组织原理等等分解出来,重新加以组合,并厘清之间的关系;

能将用户需求分解为不同优先级,厘清功能之间的依赖关系

要求:springboot:

Spring Boot是一个开源的Java框架:

1. 核心特点

自动配置:Spring Boot提供了自动配置功能,能够根据项目中添加的依赖自动配置Spring应用程序。

独立运行:Spring Boot应用程序包含内嵌的HTTP服务器(如Tomcat、Jetty或Undertow),可以打包成一个独立的JAR文件运行。

无需XML配置:Spring Boot不需要使用XML配置文件,而是通过Java配置类来实现配置。

2. 微服务支持

微服务架构:Spring Boot非常适合微服务架构,因为它可以快速启动和停止服务,并且容易与其他服务集成。

Spring Cloud集成:Spring Boot与Spring Cloud紧密集成,提供了一套完整的微服务解决方案。

  1. 综合(Synthesis):是能将知识讯息的某些要素重新安排或合并为有组织的整体,或呈现其间的关系; 例如,用WBS 等方法把项目的目标细化,分配到人,能用燃尽图展现项目进度

要求:首先之前在以团队模式做课设亦或者是其他的作业时,多数时候都是充当组员的角色,这次充当组长的角色,也充分了解到作为一个组长,应当如何更好地去分配任务,比如将任务具体化细化,具体落实在某个人身上,又要避免彼此任务的不冲突,以及协调任务之间的合并。

  1. 评价(Evaluation):是要依照某规律和准则对讯息做评价或比较。例如,能够评价别的项目的软件工程的质量,能分析一些关于软件工程的说法是否有道理,能分析市面上流行软件的优劣并探究深层原因,能对自己项目进行回顾分析,并提出改进。

要求:感受比较深的是项目的应用场景。在看完其他组的项目展示,发现的大家项目的实用性其实都是蛮高的,例如有同学做的充电桩定位、垃圾分类等等,这些在日常生活中都是经常要用到的。

  • 属于我们的人月神话

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

经验总结:团队的力量是强大的,每个人在统一的规划下各司其事,做到了事半功倍的效果。

实例:例如搭建框架+软件测试+燃尽图分析+用户调查,当每个成员都分配到自己的任务后,统一推进,效果就会很好。

分析:回到项目最开始讨论的问题,1+1是否大于2,在这次结对过后,我更加坚信好的团队中肯定是1+1>2。

  • 对团队的分析

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

团队经历了萌芽、磨合、规范、创造阶段,但其中磨合阶段的过度比较快,因为成员的能力不一致,且大家对自己的认知也充足,所以较快过度到规划乃至创造阶段。

  • 证明学会了软件工程

回顾《构建之法》第一章概论P17中三个目标,检验自己是否做到这三点

满足需求:这一点我自己认为我们实现得不错,因为确实是将其他地方的数据整合在了我们的项目之中,然后给求职者提供了便利,虽然说目前的数据较少,但这同时也是前进的方向。

控制复杂性:这一块我们有所欠缺,虽然我们使用了爬虫技术(python+selenium)

,springboot+Vue+Redis+MyBatis,但其实主要控件就pcharm和IDEA。

满足构建性:在这一点中,因为我们使用的都是当前比较主流的框架和软件,所以整体在搭建上不会太难,所以我觉得我们总体是达标的。

  • 建议

将项目的时间合理分配,特别是组长需要统筹队员,以避免还有其他任务需要去完成,从而耽误或者赶项目。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值