软件工程实践总结---差点熬夜过了头

052101407吴伟杰 2024-06-06 16:16:47

这个作业属于哪个课程2302软件工程
这个作业要求在哪里软件工程实践总结&个人技术博客
这个作业的目标课程回顾与总结、个人技术总结
其他参考文献构建之法

目录

  • 一、课程回顾与总结
  • 过去问题的新思考
  • 产生的新问题
  • 每个阶段的收获
  • 需求分析阶段
  • 原型设计阶段
  • 编码实现阶段
  • 测试阶段
  • 部署发布阶段
  • 项目阶段的心得 个人项目/结对编程/团队项目
  • 自我评分
  • 二、个人技术总结

一、课程回顾与总结

寒假博客链接

过去问题的新思考

学生用GPT-4来做作业,老师要如何甄别呢?

答:设计需要学生提供个人见解、个人经历或者创造性思维的题目。这样的题目很难通过自动化工具来完成,因为它们需要学生提供独一无二的输入。

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

答:我现在的观点任然和之前的一样:花费时间越多,并不一定代表工作量越高。虽然通常情况下,完成一个任务所花费的时间与工作量之间存在一定的关系,但不应仅凭时间长短来评估工作量的多少。通过软工实践,我对这个问题有了新的认识,比如说:首先,有经验的开发人员可能在较短的时间内完成一项任务,而相对入门的开发人员可能需要更多时间来理解和解决问题。 其次,任务的复杂性也会影响工作量。一项复杂的任务可能需要更多的时间来进行设计、编写和测试,而一个相对简单的任务可能在较短的时间内完成。其次也是很重要的一个原因,那就是需求的变更:如果在任务进行过程中出现了需求的变更,可能需要重新设计和编写代码。这将大大增加工作时间,也有可能得到不是很令人满意的结果。因此,在评估工作量时,时间只是一个参考因素,还需要综合考虑任务的复杂性、团队成员的经验水平、需求变更等因素。

为什么要在大学中只用一学期软件工程,时间够吗?

答:经过我的这学期软件工程课程的学习,我可以很明显的觉察到,尽管一学期的高强度的学习、结对编程、团队编程,总体来说还是不足的。但是这学期对于体验这个团队的软件开发流程,还是可以管中窥豹的。而且软件开发对于我,也不是那么懵懂的事情了。至少我的目前总结来说,团队组织、文档编写、代码编程等等都是不可被取代的任务。而通过对团队优秀成员的学习,也可以了解到一个合格的软件工程师的标准是什么。在这里,可以得出一个结论。如果指望一学期的软件工程课程就能觉得自己精通软件工程了,这是十分幼稚的。所谓的工程,往往不止技术,还有过往的经验总结。可以这么说,在经验总结上,只用一个学期是远远不够的,更需要自己在生产实践中不断学习摸索、不断归纳演绎。

软件开发是年轻人的饭碗,吃的是青春饭?那年纪大的程序员经验丰富但是快速学习能力拼不过年轻程序员的时候该怎么办呢?

答:由于近些年互联网蓬勃发展,薪资待遇吸引了许多人纷纷转行,行业人数激增,压力前所未有。我们国家计算机普及时间较迟,最早的一批以软件开发为职的人年龄也不算大,年纪大的程序员可以充分发挥自己的优势。现在软件开发工具/框架层出不穷,极大地减轻了软件开发的负担。对于一名"浴血奋战"出来的、经验丰富,对于底层原理掌握的透彻的大龄程序员来说,开发工作势必变得更加简单;如果大龄了依旧不思进取,仍然停留在普通的增删改查上,那么在任何行业都是会被替代的。

我都是大学生了,上课还要认真听老师讲课么?

答:大学生依旧是需要老师的授课和指导的,大学生不代表不需要听课,认真学习的态度不管是在人生的哪一个阶段都是宝贵的,在我们还是学生时,尚有老师为我们传道授业,等脱离了学生的身份,所有的东西都要靠自己去学,此时的学习时光和机会更应珍惜。

产生的新问题

项目开发过程如何兼顾效率和避免出现无法挽回的错误?

每个阶段的收获

需求分析阶段

问题分析和解决能力和需求获取和分析技巧,除了课程内容,我还学习使用了不同的需求获取技术和工具,它们帮助我有效地收集、分析和整理需求,确保需求的准确性和完整性。

原型设计阶段

最大收获是学会了墨刀原型设计工具。还加强了沟通和合作能力,在原型设计阶段,我与队友进行紧密的沟通和合作,学习到了如何有效地表达和传达设计意图最后取得了共识。

编码实现阶段

这个阶段是我收获最多的阶段,这个阶段不仅提升了我的编程技能和实践经验,还增强了我解决问题和调试的能力。我对代码结构有了更深入的理解,并且在运用诸如Git等版本控制和协同开发工具方面变得更加熟练。最重要的是,我成功提升了自学能力和持续学习的能力。

测试阶段

结合测试课程,我学会了白盒、黑盒、自动化测试等,也学会了怎么样更好的编写测试用例。

部署发布阶段

我主要学会了部署流程和Docker等工具如,课程还提供了华为云服务器,虽然过程困难重重,但最后也成功进行了项目的部署,这一部分学到了很多。

项目阶段的心得 个人项目/结对编程/团队项目

首先在个人项目中,我学会了面对技术挑战时如何主动解决问题。起初,我可能会遇到各种技术难题,但通过不断的尝试、深入学习和与同学交流,我逐渐攻克了这些难题。这一过程不仅提高了我的解决问题的能力,也加深了我对于互联网资源的利用和自我学习的认识。结对编程让我深刻认识到了沟通的重要性。在与搭档共同编程的过程中,及时的沟通能够避免重复工作,提高工作效率。我学会了如何清晰地表达自己的想法,并倾听他人的意见,这为团队合作打下了坚实的基础。在团队项目中,我学会了合理分配工作任务是非常重要的。通过充分了解团队成员的能力和兴趣,能够将工作分配给最合适的人,确保每个人都能充分发挥自己的优势。此外,我也学会了如何在团队中协调资源、处理冲突以及解决问题,这些都是团队项目中必不可少的技能。

自我评分

  • 目标1: 理解软件工程师的职业道德规范和实践要求,了解国情社情民情,理解软件产品对社会、健康文化等影响,树立积极向上的软件开发理念。

    80,通过老师上课的讲解,我对软件工程师的职业道德规范和实践要求已经有了较深的理解。

  • 目标2: 掌握需求分析的全过程,能辨别客户表述的多样化要求,熟练使用需求表达工具,能够规范、准确地表达客户的需求,构建需求分析模型。

    80,原型设计的工具的感觉使用掌握的还不错,也能较好的理解客户需求,由于做工还是很粗糙,所以这一部分有待提升。

  • 目标3: 掌握软件开发的全过程,遵循体系结构设计方法和基本设计原则,通过正式的技术评审,完成从体系结构设计模型、数据设计模型和构件级设计模型,形成面向高效可靠的服务组件设计方案或软件系统设计方案。

    80,关于这方面,通过学习相应的知识,我觉得它还是有点抽象,希望之后有机会在该方面有更多的实践机会。

  • 目标4: 能够执行从组件到软件系统的技术评测,具备设计模型的评判能力,具有创新设计意识,能够优选设计方案。

    80,对个人的创新意识还是有点欠缺,希望之后可以多学习最新的技术等,进行一些创新。

  • 目标5: 遵循软件开发各阶段文档标准,采用规范的表达,掌握需求规格说明书、系统设计说明书、系统测试报告等文档撰写方法,具备与业界同行交流能力。

    85,这一部分基本都有参与,负责,所以的话对这方面的掌握还是比较完善的。

  • 目标6: 具有良好的团队意识和合作技能,能够与其他成员开展有效的沟通和协作;能够组织、协调或指挥团队开展工作。

    80,通过最后的团队合作,我觉得自己这方面还是有进步的空间的。

  • 目标7: 能够辨别具体软件项目管理中涉及的构成要素,掌握软件规模和工作量的估算方法,能够选择合适的工具规划软件进度并对项目管理过程进行配置,具备初步的管理复杂软件工程项目的能力。

    80,有待提升,个人还是比较喜欢躺平被安排。

二、个人技术总结

个人技术总结——Vue-Router

  • 概述:Vue Router 是 Vue.js 官方的路由管理器。它与 Vue.js 核心深度集成,可以轻松构建单页面应用程序(SPA)。Vue Router 允许你通过简单的配置将 Vue 组件映射到应用程序的 URL,并且可以根据不同的 URL 加载不同的组件,实现页面之间的切换和导航。
...全文
36 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

122

社区成员

发帖
与我相关
我的任务
社区描述
FZU-SE
软件工程 高校
社区管理员
  • LinQF39
  • 助教-吴可仪
  • 一杯时间
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧