软件工程实践总结——the world is my oyster

222100102关心悦 2024-06-06 17:29:22
这个作业属于哪个课程2302软件工程
这个作业要求在哪里软件工程实践总结&个人技术博客
这个作业的目标对软件工程实践的总结与思考
其他参考文献-

目录

  • 一、课程回顾与总结
  • 1.1思考问题
  • 1.1.1问题思考的博客链接
  • 1.1.2对自己曾经思考过的问题再次进行解答
  • 1.1.3新问题
  • 1.2阶段收获
  • 1.3总结经验与心得体会
  • 1.3.1个人项目
  • 1.3.2结对编程
  • 1.3.3团队项目
  • 1.4自我评分
  • 二、个人技术总结
  • 2.1 回顾技术准备
  • 2.2个人技术总结

一、课程回顾与总结

1.1思考问题

1.1.1问题思考的博客链接

问题思考

1.1.2对自己曾经思考过的问题再次进行解答

Q1.如何区分一个好的程序员和不好的程序员呢?

通过本次实践,我认为好的程序员能够快速学习和适应新的语言和技术,具有良好的问题解决能力,能主动识别并解决潜在问题,代码提交前会进行自测,文档详细,积极参与代码评审,帮助团队成员提升,善于从不同角度思考问题,当然好的程序员能与团队成员有效沟通,分享知识和经验,同时积极接受和处理反馈,持续改进。

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

一个学期的时间不足以深入探讨软件工程中的复杂问题,如大型项目管理、先进的设计模式、复杂系统架构等。很多软件工程的知识需要通过实际操作和团队合作来体会,但是一学期内学生没有足够的时间去应用学到的理论知识,导致理解不深刻。同时一个学期内安排的实践机会远远不够,因此我也非常珍惜每一次实践。我认为需要继续在课外时间不断地实践和学习。

Q3.如何让自己能够跟上软件工程发展,做一个永不落伍的开发者呢?

我仍然认为最重要的是持续学习,要通过在线课程和教程积极主动地学习新技术和新工具,当然需要积极实践,参与开源项目,自己动手做一些项目,应用新学到的技术,积累实战经验,同时可以参加参加编程竞赛,提高编码能力和解决问题的能力。还要保持对行业动态的敏感,关注技术博客和网站,参与社区活动和培养软技能,保持自己的技术不过时。

Q4.低层次的问题能依赖工具解决么?

可以,通过这次实践我就有利用工具解决低层次问题,比如Visual Studio Code、IntelliJ IDEA等都提供智能代码补全功能,提高编码效率,在个人作业中我有利用自动化测试框架JUnit进行自动化单元测试和集成测试。工具在解决低层次问题方面确实非常有帮助,可以提高效率和代码质量,但不能完全依赖工具。我认为开发者需要在使用工具的同时,不断提高自身的技术能力和解决问题的能力,以应对更复杂的挑战。

Q5.结对开发是否真的能提高效率?

我认为可以。通过本次课程的结对开发,我和结对同学一起处理同一个任务,虽然不同的工作风格和节奏可能导致冲突和摩擦,但是充分的队友间的探讨和沟通帮助了双方的进步,减少了错误和后期修复的时间,实际效率有所提升。而且从长期来看,结对开发可以提高代码质量、减少技术债务、提升团队成员的技能和知识共享,从而提高整个团队的整体效率。

1.1.3新问题

团队成员的学习能力不一,要如何平衡?

在一个团队中,成员的学习能力和技能水平不一致是很常见的现象。应该多多进行知识共享,明确角色和职责,建立其良好的学习氛围,设定目标和反馈,帮助每个成员设定短期和长期的学习目标,并定期检查进度。在本次实践中,我们团队就先根据各自学习方向进行分配工作,然后根据每个成员的能力和学习速度,合理分配part,同时定期进行会议,分析完成情况和下一日目标,同时通过集体解决实际问题和项目,让成员在实践中学习和成长。

1.2阶段收获

  • 需求阶段:

    用户需求理解:学习如何与用户沟通,准确理解他们的需求和期望。

    需求分析和管理:掌握需求分析方法,如需求采集、需求文档编写。

  • 设计阶段:

    系统设计:学习进行系统设计,掌握设计模式和原则。

    原型设计:掌握原型设计工具和方法,能够制作低保真或高保真的原型,帮助验证设计思路。

  • 实现阶段:

    编码技能:学习利用HBuilder进行uniapp开发

    问题解决能力:增强了调试和解决问题的能力,能够快速定位和修复bug。

    代码质量:学习遵循编码规范,注重代码的可读性和可维护性

  • 测试阶段:

    测试策略和方法:掌握各种测试策略和方法,如单元测试、集成测试、功能测试、性能测试等。

    团队协作:通过与对应部分协作同学的沟通,完善了项目的不足。

  • 发布阶段:

    版本控制:掌握版本控制方法,能够有效地进行版本管理。

    前端app端发布:通过hbuilder的云部署可以打包apk

1.3总结经验与心得体会

1.3.1个人项目

第一次完成一个代码量较大,涉及内容较多且不熟悉的项目,我是非常退缩且不想面对的,json解析,读取文件等等都耗费我非常多的时间去理解,其中出现的bug更是让我一度崩溃,但是在舍友的解释和上网不断的查找资料中,终于完成了本次作业。通过本次实践,我认为首先不能有畏难情绪,要冷静思考,及时整理思路,学习相关技术,才能一步步提高编程水平。

1.3.2结对编程

结对编程中,我接触原型设计,使用了Axure进行原型设计,通过其团队功能,可以让我和结对伙伴同时进行项目的设计。后期的编程作业中,也是第一次使用vue2进行项目开发。短时间内上手vue框架对我而言还是有难度的,在一些比较复杂的功能上常常没有头绪,但vue框架提供了很多组件,还有element ui,帮助我更方便地使用各个已经有所渲染的组件。当然,整个项目过程中必不可少的出现好多bug,前期的依赖安装到后期的各种样式渲染,都是一次次难忘的经历,同时二人协作也让我更加认识理解git分支的各种命令,对后面的团队作业打下基础。

1.3.3团队项目

团队项目中通过项目需求,我们接触和学习多种编程语言、框架和工具,我主要是开发前端,使用了Hbuilder进行uniapp开发。在通过参与整个项目生命周期后,我对项目整体流程和各个环节都有了全面了解,同时通过团队合作,学习如何处理团队内部的冲突和分歧。总而言之,我认为参与一个团队项目可以全面提升技术能力、项目管理技能、团队合作能力和职业素养。这些收获不仅对当前的项目有帮助,也为未来的职业发展奠定了坚实的基础。

1.4自我评分

目标评分解释
1: 理解软件工程师的职业道德规范和实践要求,了解国情社情民情,理解软件产品对社会、健康文化等影响,树立积极向上的软件开发理念。90通过课程,我对软件工程师的职业道德和实践要求有了较深入的理解,也学到了如何在开发中考虑社会责任和文化因素,并树立了积极向上的开发理念。然而,实际应用和更深入的理解还需要更多的实践经验。
2: 掌握需求分析的全过程,能辨别客户表述的多样化要求,熟练使用需求表达工具,能够规范、准确地表达客户的需求,构建需求分析模型。95在课程中,我系统学习了需求分析的各个阶段和方法,包括需求获取、分析、规范化和管理。通过小组项目,我提高了辨别用户多样化需求的能力,并能够有效使用需求表达工具。
3: 掌握软件开发的全过程,遵循体系结构设计方法和基本设计原则,通过正式的技术评审,完成从体系结构设计模型、数据设计模型和构件级设计模型,形成面向高效可靠的服务组件设计方案或软件系统设计方案。85在课程中,我学习了软件开发的整体过程,包括体系结构设计和基本设计原则的应用。通过项目实践,我已经能够完成设计模型,并进行初步的技术评审。然而面向复杂项目的设计方案,我需要在实际项目中继续积累经验和应用知识。
4: 能够执行从组件到软件系统的技术评测,具备设计模型的评判能力,具有创新设计意识,能够优选设计方案。80通过课程,我学会了执行基本的技术评测和设计模型的评判能力。我开始培养创新设计的意识,能够在设计中提出改进和优化方案。但是我还需要更多实践经验和在复杂项目中的实际操作,以提高我的判断和优化能力。
5: 遵循软件开发各阶段文档标准,采用规范的表达,掌握需求规格说明书、系统设计说明书、系统测试报告等文档撰写方法,具备与业界同行交流能力。90我在课程中学习了遵循软件开发文档标准的重要性,并掌握了撰写需求规格、系统设计和测试报告等文档的方法,通过项目实践完善了我的文档撰写和沟通技能。
6: 具有良好的团队意识和合作技能,能够与其他成员开展有效的沟通和协作;能够组织、协调或指挥团队开展工作。95在课程中,我积极参与团队工作,展现了良好的团队意识和合作技能。我能够有效地与团队成员沟通、协作,并在需要时组织和协调团队工作。
7: 能够辨别具体软件项目管理中涉及的构成要素,掌握软件规模和工作量的估算方法,能够选择合适的工具规划软件进度并对项目管理过程进行配置,具备初步的管理复杂软件工程项目的能力。85在本课程中,我学习了软件项目管理的关键要素,包括规模和工作量的估算方法以及工具的选择和配置。通过项目实践,我学习掌握了管理复杂软件工程项目的基本能力。

二、个人技术总结

2.1 回顾技术准备

在第一次作业的“准备篇”中,我为自己制定了一个详尽的学习路线,我已经按照学习路线取得了一定的进展。我学习了基本前端语言和vue框架,通过团队项目的要求进行了uniapp开发app的学习,所以没有完成小程序开发学习和node.js的学习。
在团队开发中,我担任了开发角色,在开发过程中负责前端界面设计和测试等工作。

2.2个人技术总结

个人技术总结——uniapp中的页面跳转及参数传递

技术概述:使用uniapp进行前端开发时,会产生多个页面需要跳转和传参的问题,可以通过学习不同跳转和传参的方法达到需求,难点在于方法选择和url,参数的传递。

...全文
64 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要:本文针对5MW风电永磁直驱发电机-1200V直流并网系统,构建了基于Simulink的仿真模型,重点研究了在强弱电网适配场景下构网型(GFM)与跟网型(GFL)逆变器并联系统的协同控制逻辑及其暂态动态行为。通过建立包含风力机、永磁同步发电机、机侧变流器、直流环节、网侧变流器及电网接口在内的完整系统模型,实现了从风能捕获到直流并网的全流程仿真。研究深入探讨了GFM与GFL逆变器在不同电网强度下的动态交互特性,包括功率分配、频率响应、电压支撑能力及稳定性表现,并提出有效的分层协同控制策略,以提升系统在弱电网条件下的运行稳定性和电能质量。仿真结果验证了所提控制策略在抑制功率振荡、改善频率调节和增强系统鲁棒性方面的优越性能。; 适合人群:具备电力系统、电力电子及自动控制基础知识,从事新能源发电、微电网、并网技术等相关领域的研究生、科研人员及工程技术人员。; 使用场景及目标:①深入理解永磁直驱风电机组并网系统的整体结构与工作原理;②掌握构网型与跟网型逆变器的核心控制差异及其在混合系统中的协同机制;③研究强弱电网环境下并网系统的稳定性问题及先进控制策略的设计方法;④为相关科研课题的仿真建模、算法开发与实验验证提供可靠的技术参考与案例支持。; 阅读建议:学习者应结合Simulink软件动手搭建和调试仿真模型,重点关注逆变器控制模块的实现细节与参数设置。建议在掌握基础模型后,通过改变电网强度、负载条件或控制参数等方式开展对比实验,观察系统的动态响应变化,从而深化对理论知识的理解并提升解决实际工程问题的能力。
内容概要:本文提出了一种基于粒子群优化算法(PSO)的风光储能微电网日前经济调度模型,充分考虑了需求响应机制的影响。研究构建了一个包含风力发电、光伏发电、储能系统及可调负荷的综合微电网系统,通过建立以系统综合运行成本最小化为目标的优化模型,综合考量了可再生能源出力的不确定性、负荷波动以及分时电价等因素。文中详细阐述了模型的数学构建过程,包括目标函数的设计、各类物理约束(如功率平衡、储能容量与充放电速率限制)的处理,以及需求响应对用户侧负荷曲线的调节作用,并提供了完整的Python代码实现方案,通过仿真验证了该方法在降低系统运行成本、提升可再生能源消纳能力和优化负荷曲线方面的有效性。; 适合人群:具备一定电力系统基础知识和Python编程能力的高校学生、研究人员及从事微电网规划、能源优化调度等相关领域的工程技术人员。; 使用场景及目标:①用于研究和实现计及多种可再生能源与储能系统的微电网经济调度问题;②学习如何将粒子群优化算法应用于电力系统优化领域;③掌握需求响应机制在削峰填谷、优化负荷曲线中的具体建模与实现方法。; 阅读建议:此资源结合了理论模型、优化算法与编程实践,建议读者在学习过程中重点关注模型构建的逻辑、PSO算法的参数设置及其在调度问题中的应用细节,并动手运行和调试所提供的Python代码,以加深对微电网经济调度全过程的理解。

122

社区成员

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

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