首页 > 其他分享 >石家庄铁道大学 王建民 软件工程 上课心得

石家庄铁道大学 王建民 软件工程 上课心得

时间:2023-05-23 17:14:21浏览次数:32  
标签:王建民 软件开发 软件工程 课程 测试 软件 心得 我们

软件工程是一项涵盖广泛的领域,我们在课程中学习了许多知识和技能,其中包括软件项目管理、软件开发生命周期、需求分析、设计原则、编码实践、测试策略以及架构模式等重要内容。以下是我对这些主题的一些总结和心得体会:

 

软件项目管理

软件项目管理是软件工程过程中必不可少的环节。在此课程中,我们了解了项目管理流程,熟悉了一些项目管理工具,例如PERT图、甘特图和任务列表。同时,我们还了解到了如何规划项目、如何制定计划和如何分配任务,以确保项目能够按时完成并实现质量标准。

 

软件开发生命周期

软件开发生命周期是通过定义和组织软件开发流程来管理和控制软件项目的一种方法。我们在课程中学习了不同的软件开发模型,例如瀑布模型、敏捷开发和迭代式开发。每个开发模型都有其优点和缺点,我们需要根据项目的不同要求选择适合的模型,从而更好地完成项目。

 

需求分析

需求分析是软件开发生命周期中的关键环节。需求分析是确保我们在开始编码之前理解客户需要和问题的过程,也是软件设计的基础。在课程中,我们学习了如何收集、验证和规范化需求,并生成清晰、可执行、可测试的需求文档。

 

设计原则

良好的软件设计应该符合一些设计原则,例如高内聚、低耦合、单一功能等。这些原则有助于提高软件质量和易用性,并帮助我们避免在后续开发阶段出现重构和调试问题。在本课程中,我们了解到了不同的设计模式和架构模式,并且熟悉了使用它们来优化软件开发的实践。

 

编码实践

编码是软件工程中最重要的步骤之一。我们掌握了不同语言和框架的语法规则和特性,并了解了编写高效、可读、可扩展、可靠代码的最佳实践。同时,我们还学会了使用版本控制工具,例如Git,在团队协作开发中有效管理代码。

 

测试策略

软件测试是保证软件质量的有效手段,在课程中我们了解了不同的测试策略,例如黑盒测试、白盒测试、集成测试和回归测试。我们学会了如何在编写代码前进行测试计划、如何编写测试用例和测试脚本、如何分析测试结果,并利用这些测试方法实现高质量软件的开发。

 

总之,通过本门课程,我们全面掌握了软件工程开发的各个阶段和相应的知识点。在日后的实践中,无论是从事软件研究还是开始编写自己的项目,都可以运用所学到的技能来完善自己的程序开发流程。

 

以下是我对课程提出的三个建议:

  1. 对于web的学习一开始的强度太大,导致大部分知识没有了解清晰、稳固,就强行运用,导致制作大项目时,出现各种各样的bug,例如:制作页面时,粘贴网上现有代码,并加以修改,当制作自己的项目时,一旦触碰至深层次的代码,就会陷入一些基础知识的误区,可能会在div与div间无法控制块的大小。

解决方式:我们可以不一口吃成个胖子,例如一节课专门考核一个功能,这样四节课可以有三节课考试,一节课考核,半个学期将网站的一些主要功能考察个七七八八,等期末再进行网站的搭建,这样及加快了教学进度,提高了教学效率,还让同学们对于网站的分块更加清晰,对于自我的认知更加清晰,例如:某某同学,是对于登陆这块中的调用数据库中的数据不熟练,对于自身问题更加有针对性,而不像现在对于一大摊乱麻无计可施以至于自我放弃。(虽然现在我们是自己的第一责任人,但是课程与学生互惠的事依旧值得去做)

 

  1. 对于软件要求的作为用户去考虑,我认为不仅在于口头,更应该在于实践,我们可以让学生去使用自己的作品,比如制作点餐系统,可以让一个组的同学,一个录视频,一个点餐一个去买,自主完成一个流程,再有一个人去记录下来其中发生的问题。(内部测试)

 

  1. 确定问题本质并与学生进行沟通,提供适当的资源,从基础开始讲解,拓展学生思维,利用技术手段和寻求支持。首先,要了解问题本质,与学生沟通,并确保理解问题。其次,提供正确和适宜的资源,如参考书籍、视频和在线练习,以帮助学生更好地理解课程内容。然后,回顾基础概念,并应用练习来加深理解。鼓励学生积极提出问题,并引导他们进行批判性思考。此外,可以利用教育技术手段,如在线平台和互动游戏等,来强化学生的学习体验,提供多种学习方式。最后,在需要时可以寻求同事和专业人士的帮助和意见。对于无法解决的问题,可以探索其他途径或采取差异化方法,以达到效果最大化

标签:王建民,软件开发,软件工程,课程,测试,软件,心得,我们
From: https://www.cnblogs.com/cocotun/p/17425778.html

相关文章

  • 软件工程期末个人总结
    本学期的开学目标:现状:在上学期的学习中,由于疫情的原因,以及我本人强烈的惰性,在java的学习中并没有用尽全力,而是浅尝辄止,导致我先现在的基础十分薄弱,需要在下学期对我的知识进行一个补全计划:新的学期新的开始,我希望自己能够在不落下本学期的学习的情况下,更好的补全自己缺失的知......
  • 2023.5.23——软件工程日报
    所花时间(包括上课):6h代码量(行):0行博客量(篇):1篇今天,上午学习,下午学习。我了解到的知识点:1.了解了一些数据库的知识;2.了解了一些python的知识;3.了解了一些英语知识;5.了解了一些Javaweb的知识;4.了解了一些数学建模的知识;6.了解了一些计算机网络的知识;......
  • 软件工程课程总结
    本学期的软件工程课程主要涉及了单人开发、双人开发和团队开发的基本流程,以及Android开发、JavaWeb开发和参加中国软件杯赛题的项目实践。在课程结束之际,我想写一份总结,回顾这学期所学的知识和经验。单人开发在课程开始的时候,老师讲述了单人开发的流程和注意事项,并要求我们以单......
  • 软件工程课程总结
    通过大二下学期的软件工程学习,我在王建民老师的课上学习到了很多对软件开发有关的思维逻辑问题和答案,在这半年来的学习中,王建民老师虽然没有教过我们如何使用androidstudio进行安卓端的开发,但是直接让我们进行关于安卓端app的开发。我们在这些种种的艰难中,摸着石头过河,不断地和舍......
  • 2023.5.22——软件工程日报
    所花时间(包括上课):6h代码量(行):0行博客量(篇):1篇今天,上午学习,下午学习。我了解到的知识点:1.了解了一些数据库的知识;2.了解了一些python的知识;3.了解了一些英语知识;5.了解了一些Javaweb的知识;4.了解了一些数学建模的知识;6.了解了一些计算机网络的知识;......
  • 软件工程日报——实现了换班的功能
    今天我在课上终于实现了排班换班的功能我一开始的思路是通过一个mysql语句来直接实现数据表中两行数据的调换,但是在经过两天的尝试下,这个方案被我放弃了,因为我的数据表和语句的问题,sql语句交换行数据的操作在我的数据表中并不能实现,于是今天我尝试换了另外一种思路,我试着利用两条......
  • 2023.5.21——软件工程日报
    所花时间(包括上课):6h代码量(行):0行博客量(篇):1篇今天,上午参观君乐宝企业,下午学习。我了解到的知识点:1.了解了一些数据库的知识;2.了解了一些python的知识;3.了解了一些英语知识;5.了解了一些Javaweb的知识;4.了解了一些数学建模的知识;6.了解了一些计算机网络的知识;......
  • 【细说软件工程】《软件工程》Software Engineering
    《软件工程》60’一.、软件过程1、软件过程的概念答:1)**软件过程描述为为了开发出客户需要的软件,什么人、在什么时候、做什么事以及怎么做这些事以实现某一种的具体目标。**ISO9000把过程定义为:“使用资源将输入转化为输出的活动所构成的系统”。(《软件工程导论》p14)2)过程定义了运用......
  • 2023.5.20——软件工程日报
    所花时间(包括上课):6h代码量(行):0行博客量(篇):1篇今天,上午参观君乐宝企业,下午学习。我了解到的知识点:1.了解了一些数据库的知识;2.了解了一些python的知识;3.了解了一些英语知识;5.了解了一些Javaweb的知识;4.了解了一些数学建模的知识;6.了解了一些计算机网络的知识;......
  • 2023.5.19——软件工程日报
    所花时间(包括上课):6h代码量(行):0行博客量(篇):1篇今天,上午学习,下午学习。我了解到的知识点:1.了解了一些数据库的知识;2.了解了一些python的知识;3.了解了一些英语知识;5.了解了一些Javaweb的知识;4.了解了一些数学建模的知识;6.了解了一些计算机网络的知识;......