软件工程--个人总结

目录

个人总结

回顾

耕耘

收获

结构化的理解

知识(Knowledge):

理解(Comprehension):

应用(Application):

分析(Analysis):

综合(Synthesis):

评价(Evaluation):

属于我们的人月神话

对团队的分析

团队发展阶段分析

团队协作经验总结

展望未来

证明学会了软件工程

建议


个人总结

  • 回顾

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

在项目中我主要负责心灵伴侣娃娃界面和美工方面的工作。我比较满意的是自己美工方面的工作,因为算是有些基础,上手比较快,自我感觉完成的也还算不错;但是代码方面就是我的薄弱项,总是遇到各种各样的问题。

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

让我比较印象深刻的是最开始的项目介绍视频,因为当时在课堂上,老师展示了上一届同学的视频,他们很多都是运用了ai数字人,虽然我之前也偶尔会剪剪视频,但是都没有用到过这个技术。现在的数字人技术蛮先进的,我之前只知道它会提供几个固定的数字人,但是我这次发现它可以自己捏脸、换衣服,还可以根据你输入的字幕进行配音,增加了视频的画面感和听感,显得视频更高大上了。而且心灵伴侣模块换装与数字人换装有异曲同工之妙,这也算是给我们项目的心灵伴侣模块提供了参考。

  • 耕耘

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

  • 收获

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

具体成就:主要负责心灵伴侣模块和界面美化方面的工作,软件用户20+,公开源代码没什么影响力,目前只有我们团队的成员在看。

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

在美工方面有提高,制作心灵伴侣模型动态图;视频剪辑,数字人;前端代码。​​​​​​​

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

WebStorm、Android Studio、gitee

  • 结构化的理解

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

  • 知识(Knowledge)

就是记忆、认识,能回忆重要名词、事实、方法、规准、原理原则等;

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

要求:写出你印象最深的几个知识点

敏捷开发方法:书中详细介绍了敏捷开发的概念和实践,如Scrum和Kanban,强调快速迭代、客户参与和灵活应对变化。这对于前端开发来说,意味着能够更快地响应客户需求和变化,保持项目的灵活性。

用户体验设计:书中提到用户体验设计在软件开发中的重要性,包括界面设计、交互设计等方面。作为前端开发与美工,我深刻认识到好的用户体验是产品成功的关键。

代码审查与测试:书中强调了代码审查和测试在软件质量保证中的作用。这对我来说意味着在开发过程中需要不断进行自我审查和测试,确保代码的质量和稳定性。

  • 理解(Comprehension)

是要能对重要名词、概念之意义有所掌握,能转译、解释;

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

要求:写出你如何掌握了几个名词、概念。

敏捷开发:我通过阅读书中关于敏捷开发的章节,了解到它是一种以用户为中心、快速响应变化、迭代开发的软件开发方法。它强调团队合作、客户参与和持续反馈,旨在提高软件开发的效率和质量。通过参与实际的项目,体验了敏捷开发的流程,如进行项目管理和迭代开发。我了解了如何制定冲刺计划、进行每日站会、评审和回顾等,这些实践让我深刻理解了敏捷开发的核心价值。

用户体验设计:我通过已有经验、团队成员的建议和观察优秀产品的设计实践,掌握了用户体验设计的基本原理和方法。

代码审查:我通过参与团队的代码审查活动,学习了如何有效地进行代码审查,并提高了自己的代码质量意识。

  • 应用(Application)

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

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

要求:写出你怎么在不同场景中应用技能的

敏捷开发:在项目中,我积极采用敏捷开发的方法,如定期与产品经理沟通需求,快速迭代开发,确保产品能够持续满足客户需求。

用户体验设计:在设计产品界面和交互时,我注重用户体验,通过用户反馈和原型测试来优化设计方案,确保产品易用、美观。

代码审查:在开发过程中,我积极参与团队的代码审查活动,通过审查他人的代码来提高自己的代码质量意识,同时也帮助团队发现和修复潜在的问题。

  • 分析(Analysis)

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

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

要求:对一个局部领域,写出你的分析

技术选型:根据项目需求和技术栈,我分析了不同前端框架和技术的优缺点,选择了最适合项目的技术方案。

设计元素:在设计产品界面时,我分析了目标用户的需求和喜好,确定了适合的设计元素和风格,以提升用户体验。

功能依赖:在开发过程中,我分析了不同功能之间的依赖关系,制定了合理的开发顺序和计划,确保项目能够按时交付。

  • 综合(Synthesis)

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

要求:写出你在这方面的具体收获

项目管理:我学习了使用项目管理工具(Gitee)来管理项目任务、进度和人员分配,提高了项目的执行效率。

团队协作:通过参与多个项目,我学会了与不同角色(如后端开发、测试、产品经理等)有效协作,共同推动项目的进展。

自我提升:我定期回顾自己的工作和项目经验,总结经验和教训,并通过学习新技术来不断提升自己的技能和能力。

  • 评价(Evaluation)

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

要求:选一个你感受较深的领域,说一下你的感受

在前端开发与美工领域,我感受较深的是用户体验的重要性。我发现一个优秀的产品不仅需要强大的功能和稳定的性能,还需要良好的用户体验来吸引和留住用户。因此,在未来的工作中,我将更加注重用户体验设计,通过不断学习和实践来提升自己的设计能力和水平。

  • 属于我们的人月神话

在我负责心灵伴侣娃娃页面与美工工作的过程中,我深刻体会到了团队协作与个人成长的双重价值。我主要负责制作三个老虎模型,每一个都需要精美的画面和生动的动画来展示其独特的魅力。

初始阶段,我计划全程使用Photoshop来完成这些模型的制作。然而,随着工作的深入,我逐渐发现由于自己的美术基础相对薄弱,使用PS进行帧动画制作不仅耗时而且难以达到预期的效果。我预见到,按照这样的进度,我可能无法按时完成我所负责的工作量。

在我感到困惑和焦虑的时候,我的组员们察觉到了我的难题。他们并没有袖手旁观,而是积极地帮助我寻找解决方案。他们上网查阅资料,并强烈推荐我使用Live2D这款软件来制作动态图。Live2D以其独特的骨骼绑定和动画系统,能够更快速、更生动地创建出动态角色。

在组员的建议下,我开始学习Live2D并跟随其官方教程进行实践。虽然一开始我遇到了很多困难,但在不断地尝试和摸索中,我逐渐掌握了Live2D的使用方法。最终,我成功地完成了第一个老虎模型的动画制作。这个过程中,我不仅对Live2D有了深入的了解,而且对自己的工作也有了更加清晰的认识。

通过这次经历,我深刻体会到了团队协作的重要性。正是组员们的支持和帮助,让我在面对困难时能够坚持不懈地探索和学习。同时,我也明白了,在工作中我们需要不断地学习和尝试新的技术和方法,以应对不断变化的需求和挑战。

在完成了第一个老虎模型的制作后,我接下来的工作变得更加平稳和高效。我利用Live2D的优势,快速完成了剩余两个模型的制作,并得到了团队成员的认可。这次经历不仅让我收获了宝贵的经验,也让我更加坚定了自己在美工领域的信心和决心。

  • 对团队的分析

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

团队发展阶段分析

形成阶段:

在这个阶段,团队成员刚开始聚集在一起,彼此还不太熟悉,正在寻找自己的定位和任务。我的团队在初期也经历了这个阶段,成员们通过自我介绍、分享经验和共同工作来逐渐熟悉彼此,并明确各自的职责和角色。

震荡阶段:

在团队开始进入实质性工作时,可能会出现不同的意见和冲突。团队成员可能会质疑他人的观点、技能或工作方式。我的团队在这个阶段也遇到了一些挑战,但我们通过开放和诚实的沟通,以及领导者的有效调解,逐渐克服了这些困难。

规范阶段:

随着团队逐渐成熟,成员们开始形成共同的工作规范和价值观。我的团队在这个阶段建立了明确的工作流程和沟通机制,确保项目能够顺利进行。同时,我们也开始形成团队文化和共同的目标感。

执行阶段:

在这个阶段,团队开始高效运作,成员们能够很好地理解彼此的需求和期望,协同工作以达成目标。我的团队在这个阶段展现出了高度的协作能力,成员们能够快速地响应变化,并共同解决问题。

创造阶段:

这是团队发展的最高阶段,团队成员不仅能够高效执行任务,还能够创新性地解决问题,提出新的想法和解决方案。虽然我的团队在执行阶段表现出了良好的协作能力,但我们还在努力向创造阶段迈进。我们鼓励成员们提出新的想法和建议,并努力营造一个支持创新和创造的环境。

团队协作经验总结

在我所处的团队中,我们经历了从形成到执行的大多数阶段,并正在向创造阶段迈进。我们的团队协作经验可以总结为以下几点:

开放和诚实的沟通:我们注重团队成员之间的沟通和交流,鼓励大家表达自己的想法和意见。这种开放和诚实的沟通有助于我们解决分歧和冲突,促进团队的和谐与协作。

明确的目标和分工:我们为每个项目设定了明确的目标和分工,确保每个成员都清楚自己的任务和责任。这有助于我们高效地执行任务并达成目标。

共同的工作规范和价值观:我们建立了共同的工作规范和价值观,确保团队成员在工作中能够遵循相同的标准和原则。这有助于我们保持团队的凝聚力和一致性。

持续学习和提升:我们鼓励团队成员不断学习和提升自己的技能和能力。通过分享经验和相互学习等方式,我们不断提升团队的整体能力水平。

展望未来

在未来,我们将继续努力向创造阶段迈进。我们将继续鼓励团队成员提出新的想法和建议,并营造一个支持创新和创造的环境。我们相信,通过持续的努力和协作,我们的团队将能够取得更加卓越的成果。

  • 证明学会了软件工程

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

理解软件构建过程

这一目标要求读者了解软件开发的整个生命周期,包括需求分析、设计、编码、测试、部署和维护等阶段。

认识团队协作的重要性

这一目标强调了在软件开发过程中,团队成员之间协作的重要性,包括有效的沟通、分工、协作和冲突解决。

坚守职业道德和责任

这一目标要求读者认识到在软件开发过程中,坚守职业道德和责任的重要性,包括尊重知识产权、保护用户隐私、确保软件质量等。

我做到了上面这三点。

  • 建议

对下一届实践的建议,对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?对于后来人的期许。

虽然这门课程的任务量庞大,一开始接触时,我们可能会感到巨大的压力,觉得它占据了大量的时间,甚至让我们有些心烦意乱。但正是这样的挑战,才让我们有机会深入了解一个软件是如何从最初的想法逐步蜕变为一个实际可用的产品的。

在这个过程中,我们会经历无数的困难和挫折,但正是这些困难让我们学会了如何面对问题、如何解决问题。我们会不断地学习新的知识,掌握新的技能,这些都会成为我们宝贵的财富。

当我们坚持下来,一步步地完成每一个任务,看着自己的想法逐渐变成现实,那种成就感是无法用言语来表达的。我们会更加明白,每一个成功的软件背后,都蕴藏着无数次的尝试、修改和完善。

更重要的是,这个过程不仅让我们收获了知识和技能,更让我们学会了团队合作、沟通和协调。我们学会了如何与他人合作,共同完成任务,如何在团队中发挥自己的长处,弥补他人的不足。这些都是我们在未来工作和生活中必不可少的能力。

因此,虽然这门课程的任务繁重,但它带给我们的收获是巨大的。只要我们坚持下去,就一定能够从中获得宝贵的经验和成长。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值