《软件工程学习心得体会范文.pdf》由会员分享,可在线阅读,更多相关《软件工程学习心得体会范文.pdf(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 第 1 页 共 12 页 软件工程学习心得体会范文 软件工程学习心得体会范文 1 时间过的很快,转眼间已经实习将近 5 个月,其中有 2 个月是属于完全被流放的。最先在内部系统组参与内部管理系统开发(struts+mysql+spring+hibernate),之后是去做网络交换机软件的脚本测试。现在又回归内部系统,虽然在脚本组期间,编码能力被别人甩在后头,但至少具有了一些测试经验。至少自己做的东西,是真正交付到了客户手上,到也稍微有些成就感。1、浅谈测试 一直以来,我都认为测试是脱离了软件工程范围的工作,不以为屑。但在实际情况中,测试是既重要且难以精湛的其真正的压力,在于找不到bug,责任
2、在你,而不在于编码人员。一般的测试人员不懂编码,他们靠的是日以累计的经验总结和想象力。而要做到高级测试工程师,那么一定要懂编码,因为这是你完全掌握整个系统的方方面面具体运作的前提。但占主导地位的,还是大型系统的集成测试经验。实际工程中,编码时间一般只占30%左右,真正消耗时间的是 IT 阶段的找 bug 与对应 bug,此阶段根本评定了 coder 的编码质量。2、程序员的困惑 有些人,以为教学视频和代码看多,自己就懂的多,实际做起来,却不知从何下手,问题在那?如何定位?如何解决?通通跟一样能力有关,debug 追踪能力,也称调试。在工程组工作不愁源码资源,但问题是蛋糕摆在面前,你如何去消化?
3、有位同事告诉我:代码看几遍都没用,要去抄,例如一个查询模块,在此根底上去做具体记录的历史记录查询模块,你可能会觉得很简单,但实际情况却往往报一堆异常,配置问题涉及到方方面面,以及数据库字段,传值问题等等,一大堆对于新人来说很郁闷的问题。但不用怕,只要学会调试,一个个问题去追踪,一个个去解决,自然而然,那段“源码才真正属于你。3、如何调试追踪 如果你能在短短的时间内就看到问题点在那,放下断点去追踪,出去找工 第 2 页 共 12 页 作,绝对没问题。出现问题的时候,不要光看代码,要用实际行动去追踪运行期间的具体值,那是最好途径。eclipse 是个很爽的 ide,这点做的很好。例如页面内容显示不
4、是自己想要的数据,我们要先从数据库查询语句去下手,设置断点,一步一步 step over,让 sql 字段(存取最终 sql 语句的字符串)运行到有值,inspect 进去看,如果还看不出来,就点击它,copy 后在 sql 客户端去实际运行,看看实际查询出来的表是什么,如果是对的,有可能就是页面调用的错误或者 action 逻辑的传值问题。页面错误的调试,根本方法是用右键点击实际网页查看源代码,copy 到editplus,就能看到具体错误发生在那几行。通常有几种常见的错误,例如:缺少对象这种很多时候是有些被你调用的字段有可能为空的情况出现的,可以加 if(=null)语句加保护。追踪的方法
5、根本就是用 alert 语句,放在有可能出错的地方。4、一些习惯 遇到问题先自己思考,无从下手再找高手帮助看看,注意他帮你看的思路,别在一旁闲着,看多了自己也会了,不然你一辈子都停留在那种水平,从人身上学到的东西远远比书多的多。解决了一个问题后,要去究根问底去找到问题产生的起因,以防你下次遇到类似的问题再浪费同样的时间。把代码写的漂亮,注释、空行、标准一样不能少,可读性是放在第一位。曾经看过一个高手写的代码,真的一看就是不同水平的人写的,几乎很完美,读起来很流畅,方便自己也方便别人。任务完后不要呆着,去要求经理给你更有挑战性的任务,只要你肯去尝试,他们就会对你另言相看,把三天的任务一天加班搞定
6、,效率和忠诚都有了,路也比拟好走了。软件工程学习心得体会范文 2 我们是 20 某某年 3 月 7 号进入宏天实训公司参加软件开发实训的,在此次实训中,除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完成一个任务,懂得了享受工作。当遇到问题,冷静,想方法一点一点 第 3 页 共 12 页 的排除障碍,到最后获取成功,一种自信心就由然而生,这应该就是工作的乐趣。有时候不懂的就需要问别人了,虚心请教,从别人的身上真的能学到自己没有的东西,每一次的挫折都会使我更接近成功。还有学会了在工作中与人的合作与交流,同乐同累,合作互助,这是团体的精神,也是必须学习的东西。经过之前的在校学习,
7、对程序设计有了一定的认识与理解。在校期间,一直都是学习理论知识,没有时机去参与工程的开发。所以说实话,在实训之前,软件工程开发对我来说是比拟抽象的,一个完整的工程要怎么分工以及完成该工程所要的步骤也不是很明确。而经过这次实训,让我明白了一个完整工程的开发,必须由团队来分工合作,并在每个阶段中进行必要的总结与论证。一个完整工程的开发它所要经历的阶段包括:远景范围规划和用例说明、工程结构和风险评估、业务功能说明书、详细设计说明书、代码实现、测试和安装包等等。一个工程的开发所需要的财力、人力都是很多的,如果没有一个好的远景规划,对以后的开发进度会有很大的影响,甚至会出现在预定时间内不能完成工程或者完
8、成的工程跟原来预想的不一样。一份好的工程结构、业务功能和详细设计说明书对一个工程的开发有明确的指引作用,它可以使开发人员对这个工程所要实现的功能在总体上有比拟明确的认识,还能减少在开发过程中出现不必要的麻烦。代码的实现是一个工程开发成功与否的关键,也就是说,前期作业都是为代码的实现所做的.准备。我深刻的认识到要成为一名优秀的软件开发人员不是一件容易的事情,不仅要有足够的干劲和热情,还要有扎实的编写代码根底,必须要有事先对文档进行可靠性报告,功能说明书,详细设计说明书等的编写和一些风险评估的编写的能力。除了图书馆,最能让我感觉到身在大学的就是实训机房,在匆匆过去的两个月内,我往返于实训机房与宿舍
9、之间,使我享受了一个充实的学习时期,让我感受到了大学的魅力,对自己充满信心,对大学充满信心,以积极的心态迎接明天挑战。实训中要求有扎实的理论根本知识,操作起来才顺心应手,我这时才明白什么是“书到用时方恨少。这就激发了学习的欲望。第 4 页 共 12 页 “学以致用,就是要把学来的知识能运用到实际操作当中,用实践来检验知识的正确性。我想,这是实训的最根本目的。“纸上得来终觉浅,绝知此事要躬行!,在短暂的实训过程中,让我深深感受到自己在实际运用中专业知识的匮乏。以前总以为自己学的还不错,一旦应用到实际就大不一样了,这时才真正领悟“学无止境的含义。经过为期两个月的电子政务效劳平台系统开发的实训,我对
10、Visual 软件开发平台有了更深一步的了解,对微软根底类库的认识与使用也有了大大的提高。以及如何使用 SQL Server 数据库进行连接操作方面有了本质的提高。短短的实训结束了,为我将来的就业打下了良好的根底,也提高了我的软件开发的水平,今后我将会更加努力的学习,不断提高自身素质,开拓创新,与时俱进,做一个优秀的软件开发工程师。软件工程学习心得体会范文 3 软件工程心得体会未接触软件工程之前一直都很想学这门课程,因为觉得这门课很牛,是那些有工程师称号的高手才摆弄的东西。学了一个学期的软件工程课,终于知道了个软件工程的大概。学的时候总觉得很抽象,理解起来好似不难,但总是摸不着头脑一种很茫然的
11、感觉。曾经以为程序就是软件,软件就是程序。学习这门课程第一个收获是,知道了二者的不同之处。以前做过的一些小型的软件比方加密软件,我也只是在程序旁边附上一个软件的说明,看来已经很接近作坊了。不过大的工程没有接触过,用软件工程的方法还是第一次。我想也是程序的不断复杂化导致了软件危机的发生,使得人们不得不探索新的解决方法。经过倪老师的讲解,理解了软件工程,就是一套用于软件的团队开发,以提高软件质量和程序员工作效率为目的的标准。其核心就是,对于软件开发的5 个重要组成局部:需求分析,设计,编码,调试,维护,如何组织这5 个局部的工作,以及如何完成每一个工作。吾生也有涯,而知也无涯,学习永无止境。起初,
12、对软件工程处于一知半解的状态,分工比拟混乱。在划分模块后明确了各自分工,渐渐形成良性循环。在学习过程中,知道了团队合作十分重要,争议固然存在,但通过讨论、协商,群策群力,在不断 第 5 页 共 12 页 磨合中能够达成一致与默契。团队成员中能力各有高低,互相尊重,各取所长,不宜妄自菲薄。组长多加协调,组员积极配合,才能合作愉快。学习能力表达在能尽快接受新的知识,顺应变化,学为所用。上软件工程导论这门课,我的收获大概如下:我们为什么需要软件工程呢?上面已经给出了一些原因。专业点讲,软件工程最终是为了实现“软件制造业的社会化,工业化大生产,提高其劳动生产效率。只有如此,软件业才能实现社会化,工业化
13、大生产,才能“做大做强。没有管理的设计是失败和混乱的设计,没有设计指导的编程是无序的忙碌的。根据开发的软件的规模,应该适当程度的运用软件工程化的思想,需要灵活,毕竟我们开发的软件大多数是中小型的,大型的并不多见(我是这么认为的)。但只要涉及人员间的交流和沟通,或多或少都要需要软件工程才能更有效率,工作成果更稳定。其实开发软件,就像是解决一个逻辑问题。想想自己平时是怎样写程序的。首先是要有一个想法,即我写的这个程序是要干什么的;然后就是对要实现的核心功能大概构思一种或多种实现方法,并从中选出一种自认为是较好的;接下来就是将涉及的各种主要或次要功能分成各个模块;最后就是分模块来编码和DEBUG。在
14、我看来,除了第一步外,其余的步骤应该是一个循环的过程。在编码的过程中,你总是需要不断地回过头来修改原先的模块设计,甚至最初选定的实现算法。具体到每一步的工作要怎样完成,是非常灵活的,只要把握住大体的方向就行。在进行分析,设计,编码,调试,维护这几局部的工作的时候,最核心的就是文档的编写。1.可行性分析就是关于当前工程能不能干的分析结果。2.工程描述这是在决定立项以后,对当前工程的一份扼要说明。3.需求分析就是对客户要求的功能的定义。4.软件设计这就是对程序的每一个模块的详细设计的说明文档。5.开发日志我一直都认为这是文档中最有趣的局部。开发日志相当于编码阶段的文档,它的形式可以很随意,主要是记
15、录一些在写程序时突然萌发的灵感,或对代码的一些微小的修改,或对程序结构的一些微小变动等,还要对上述这些修改变动作些说明。第 6 页 共 12 页 6.测试分析用于指出程序存在或潜在的缺陷和错误,以及程序性能的数字描述。软件工程学习心得体会范文 4 经过长时间对国贸软件的的使用,在不断练习操作的过程中,我对国贸软件的最深刻感觉是:学以致用、有趣、必须细心耐心反响迅速。1.学以致用 作为国贸专业,经过长时间的理论学习,急需通过实际操作或某种近似于实际操作的平台对所学的理论知识加以实践,以求进一步掌握和稳固,而国贸软件正提供了这样一种平台。该软件涉及了及出口贸易的各个方面和环节,从外贸公司的经营运作
16、到实际的进出口业务流程,都能进行模拟实训。在使用过程中,会遇到很多国贸的根底理论知识和实务技能,这是对国贸理论掌握程度的最好考察。眼过千遍不如手过一遍,相对于理论局部而言,国贸实务更注重实际操作,通过这种理论结合实践的方式,稳固根底知识,查找理论学习的缺乏,以前学习的实物理论根底知识会更加的具体和直观。同时,该软件的实务操作局部与报关员报关实务所涉及的知识根本一致,这对于我的报关员考试复习提供了很大的帮助。2.有趣 该软件通过“实战方式训练,会在操作过程中遇到很多难题和挑战,这些必须自己想方法解决。由于大家进行了角色划分,形成了一个虚拟市场,所以大家之间相互的竞争是必不可少的,大家会从各个方面
17、进行竞争。竞争在现在是无法防止的,意识正是现代社会生存开展所需要的。正是这种竞争,使得我(相信大家)对该软件产生了浓厚的兴趣。3.细心、耐心、反响迅速 国贸软件涉及大数据计算的繁琐的单证填写,所以必须做到细心耐心,例如,在填制外贸合同时,一个小小的数据错误或是货物装运、指运港名称的错误都会是合同填写失败;填写保险单或是报关单证,没有严格按照合同数据填制就会导致填写出现错误,无法进行下一步骤,影响实验效率。在操作过程中,除了复习、稳固所学国贸理论外,另一个重要任务就是想 第 7 页 共 12 页 方法“赚钱,提高自己企业的盈利水平和生存能力,这就要求必须反响迅速、判断准确,否那么会觉得企业经营的
18、举步维艰。以上就是经过一段时间对国贸软件的操作使用产生的心得体会。软件工程学习心得体会范文 5 在这次软件工程课程中,我学到了很多东西,第一次深刻的体会到了什么叫做用工程化的思想来编写软件,以前自己也写过一些小型软件,没有做过大型的工程,直到这次课堂我担任组长并组织组员共同完成“个人图书管理系统这个工程,第一次和别人合作,才发现运用工程化的思想来做是如此的有必要。从这里,我才真正的意识到实施一个软件工程并不是说简单的会编码就能够解决问题的,我们更多的精力不是放在编码上,编码只是一个很小的模块,只占到那么小的一个局部。这个事实在很大程度上颠覆了我以前的思想,在我以前的认识中,似乎整个软件就是编码
19、,除此无它,还好有老师的指导,不然真的会出现老师所说的,撞得头破血流之后才想起来用软件工程的思想来完成这个工作。刚真正开始工作之前,我们费了很多的时间来完成一些前端工作,如需求分析和可行性分析,这块工作在别人看来可能是相对无关紧要,甚至是多于的,其实,换做在以前,我也会这么认为。可是,我现在算是深深地明白了磨刀不误砍柴工的道理,这些工作的完成太有必要了,太重要了,要想你的软件有用有市场,能被别人接受和认可,在进行过程中不会出现崩溃性的问题,这些工作缺一不可。还有就是接下来的一些设计模块,此模块与软件编码涉及比拟紧密,主要是解决一些参数传递和接口通讯的问题,此模块对我的触动远没有上两个模块对我的
20、影响大,因此再次也不做过多的介绍。在整个活动的完成过程中,作为组长,我收获很多,我发现,要是组里有个人不怎么想做事情时,他对于整个组织的影响是消灭性的,正所谓“一颗老鼠屎,能坏一仓谷,以后我的组织里要是出现这样的人,我绝不会给他继续留下来的时机,我会在第一时间将他去除出去。还有就是,作为组长,你要做 第 8 页 共 12 页 的最重要的事情,不是发挥自己的聪明才智,而是创造出一个平台,让别人去发挥,你所要做得,出了保证这个平台的完整性和公平性外,还有就是协调好各组员之间的关系。软件工程学习心得体会范文 6 这学期学习了软件工程实践这门课,我觉得这是对上学期的软件工程课程学习的检验,上学期学习软
21、件工程只是我们浅显的认识,相比之下,这学期就更加全面的说明了开发一个工程所需要的步骤以及开发工程过程中所需要注意的诸多细节。如果说上学期的课程注重理论根底的话,那么这学期的软工实践,顾名思义,就是侧重我们动手操作的能力。原来我认为开发一个工程最重要的就是写代码,似乎整个软件都是编代码,因为自己动手能力不强所以就很排斥做工程。可是经过我们学习软工课程到团队做工程再到学习软件工程实践课程之后,我才真正意识到实施一个软件工程工程并不是说简单的会编码就能够解决问题的,因为一个软件的生命周期分为三个时期:软件定义时期、开发时期、维护时期,而这三个时期整体又分为七个阶段,他们分别是:问题定义、可行性研究、
22、需求分析、总体设计、详细设计、编码和单元测试、综合测试,由此可看出,当我们开发一个工程时,更多的精力不是放在编码上,编码只是一个很小的模块,而是工程的整体结构上。在写软工实践体会之前,我想在这里总结一下上学期三人团队做工程的相关事宜。上学期我们三人团队根据软件开发的步骤开发一个名为“西大老乡荟的社交系统,主要是为西大学子提供一个找老乡的平台。虽然只进行到详细设计阶段,没有进一步实现,但是我还是从中学到很多东西的。首先要先确定工程主题,也就是这个工程用来做什么,可以解决什么问题。接着就是这个工程是否有研究的必要以及是否有解决的方法,针对我们的工程,我们对西大的一些学生做了问卷调查,并从调查中继续
23、完善系统本身的做用户。第三步根据我们确定的工程主题进行需求分析,这一步骤当时做的不是很好,比方所画 E-R 图、数据流图等都有考虑不周的问题,导致接下来的概要设计、详细设计进行的很困难,有些步骤甚至还需要返工。第 9 页 共 12 页 从我们在需求分析中出现的问题,使我们明白了软件定义阶段对于一个工程的开发是至关重要的,当软件定义阶段完成时必须要用正式的文档准确的地记录目标系统的需求。只有前期的准备工作做得好,后面的工作才能顺利进行。虽然工程最后没有完全实现,但是起码我们已经初步体会到软件工程开发的步骤,以及每一步所需要完成的文档等内容。这学期的软件工程实践虽然不是亲自动手开发一个系统,但是张
24、元平老师以“物联网物流仓储管理系统为主给我们讲解了一个真实系统的开发过程,从方案到工程系统的发布实施,以及每一步必须生成的文档。我主要从以下五个方面谈一下我的心得体会。第一、行业背景说明方面 对于一个软件系统的开发,第一步就是问题定义,了解所开发系统的行业背景,制定方案。当我们方案确定以后就要对工程系统本身进行可行性研究,主要从技术可行性、经济可行性和操作可行性三个方面着手。就比方物联网物流仓库管理系统的行业背景说明文档中非常详细地分析了当下物联网物流行业的整体业务说明、应用背景、未来开展趋势以及相关应用案例等四个方面,工程团队中系统分析员就可以根据这份文档以及相关的调查资料对将要开发系统的进
25、行定义等工作。原来我们写这类文档的时候就是草草了事,不会做得这么详细,而这次看到大型工程的行业背景说明也是这么详细,也让自己认识到不管是软件开发的那个阶段都要认真对待,这些琐碎的文档都是后期开发工程的支撑,只要它们做的透彻,后面的开发工作才能更顺利的进行。第二、工程需求说明方面 这局部工程需求说明就是软件定义时期中需求分析阶段,而该阶段的主要目的就是了解用户的需要,根据用户的需要确定系统必须完成那些工作,并对目标系统提出完整、准确、清晰、具体的要求。在需求分析结束之前系统分析人员要写出一份需求规格说明,即为物联网物流仓储管理系统工程需求说明文档。我们可以看出该文档也是非常详细,相比之下我们之前
26、做工程时写的需求规格说明书就非常不合格,不仅格式不正确内容也是少之又少。第 10 页 共 12 页 在这方面,这篇文档给我启发很大。首先就是文档的格式,要美观整齐,让人看着舒服方便。其次就是文档的内容,原来它不是很重要,写文档的时候也不知道怎么写就借鉴下网上的内容,结果根本就没有把自己工程的需求写明白,以至于自己最后都有些糊涂,所以根据以前的经验教训我会对这局部更加重视。第三、系统概要设计方面 这局部内容分说的是软件设计时期的概要设计阶段,该阶段的主要目的就是实现系统的功能、设计软件的结构、模块组成以及模块之间的关系。在概要设计阶段,我们可以站在全局的高度上,花较少的本钱,从抽象的层次上分析比
27、照多种可能的系统实现方案和软件结构,从中选出最正确方案和最合理的结构。在这个阶段还会具体画出 E-R 图、数据流图等方面的设计。比方物联网物流仓库管理系统的系统概要设计从工程概述、设计约束、功能单元与功能模块设计、数据 E-R 图设计、总体设计、界面设计等六个方面介绍,通过读这个文档,我觉得最重要的还是总体设计,分别从逻辑架构设计、物理架构设计、技术架构设计设计系统。在这个阶段中模块要做到高内聚低耦合,这样开发出来的系统才会具有更高的独立性。在原来做工程时没有编写过这类文档,在该阶段只是画了结构图、层次图以及相关的模块划分,对该类文档尚未重视。通过张老师的讲解和自己的学习,我相信在以后做工程的
28、时候一定会注意到这类文档的编写。第四、详细设计与分析方面 详细设计阶段就是把概要设计阶段的每个模块进一步设计,确定每个模块所需要的算法和数据结构。在这个阶段还是需要我们设计出程序的详细规格说明,而不是编写程序。在详细设计阶段,系统设计人员可以通过使用程序流程图、盒图、PAD 图等过程设计的工具和 Jackson 图等面向数据结构的设计工具进一步设计系统相关接口,主要包括界面设计接口、业务单设计接口、单元模块设计接口等,这些对于以后的编码工作都是极其重要的。第五、编码和测试方案方面 关于编码,我认为编码要想做的完美必备条件就是前面的软件定义和软件 第 11 页 共 12 页 设计时期要按部就班的
29、做,文档一定要按要求书写,不能偷懒也不能草草书写。对于编码也要有相应的文档书写标准,要使源程序代码的逻辑简明清晰、易读易懂。这样尽管我们不是设计系统的人员,当看到源程序代码的时候也能容易读懂代码的意思。其次就是测试的内容,从测试的文档中我们可以得出,其实测试在软件开发中同样占据了重要的地位,它主要就是尽可能多的找到问题并排除其中的潜藏的错误,最终把一个高质量的软件系统交给用户使用。它要求测试人员也要有很高的技术水平。软件工程学习心得体会范文 7 时间飞逝,不知不觉间软件工程的学习已经过了大半了。在这将近半学期的学习中,虽然我不能说我将软件工程学习的有多么的好,但是通过学习,我还是受益良多。在以
30、前,我一直对软件存在一些偏见或那么是误解,认为软件就是程序,软件的开发就是编写程序,只要编完了程序,一切也就 ok 了,而且我还片面的认为只要我掌握了时下最新的语言和工具,那么我就能写程序了。一个人,只要会编程,就能写软件,就是程序员;一个公司,只要招聘一些程序员,就能开发好的软件产品。只要有几个有经验的程序员,再找些兼职的大学生,就能组成一个软件公司。但是通过了软件工程这门课的学习,使我认识到了我以前的错误。软件其实不仅仅是程序,软件开发其实也不仅仅是编写程序,软件是思想在硬件上的载体和表达,处理的是逻辑和信息。唯有对软件和软件的开发过程,有充分的认识,才能更好的开发出,过程受控、质量受控的
31、软件产品。而且在以前,我一直以为软件的开发其实是一件很轻松快乐的事情,只要一天坐在电脑旁敲敲键盘,那么一切就可以了,但是现在我才发现,我以前的很多的思想是多么的浅薄可笑。编程其实是一种乐趣和苦恼共存的一项创造性活动。因为编程不仅能够满足我们内心深处进行创造的渴望,而且还能愉悦我们内在的情感。而且通过学习软件工程,我还学到了很多其他的东西。比方通过学习 第 12 页 共 12 页 软件工程,特别是老师每次用实际的软件现场的讲解,为我提供了一个尽早接触世界工作和真实工程的时机。让我知道如何在以最小的本钱中,训练自己的根本工程素质和能力,如何激发自己的积极性等。而且通过学习软件工程,还让我认识和培养了我的团队协作能力,特别是对于我们这些在校的学生来说,这种学习更是能让我在以后工作中少走很多的弯路。所以,通过软件工程的学习,我是真的学习到了很多有用的东西,让我明白了很多的道理。在此我对老师的辛勤教育表示感谢,因为是你让我学习到了这些,是我获益良多。