1概述
实习是一种实践,是理论联系实际,应用和巩固所学专业知识的一项重要环节,是培养我们能力和技能的一个重要手段。八月初,我们来到大连东软实训中心进行为期20天的实习,我们要做的是物流配送管理系统,我要做的是配送中心管理模块。它的主要功能是完成对商品、库房和供应商的管理,缺货查询和进货安排。由于大家负责不同的模块编写,作为组长的我需要充分考虑各个模块之间的交互,系统风格一致性等问题。
为此,项目启动之前我们小组6人开会讨论了整体的业务流程,明确了数据库表之间的关联和各个模块之间的接口。在项目验收阶段我们顺利地通过了答辩,圆满完成了预期目标,虽然和优秀的小组开发的系统还有一些差距,但我们发挥了每个人的能力,结果也令我们满意。
2感受与体会
在为期20天大连东软实训中心的实习过程中,我每天都感觉很充实,从基础知识的巩固,项目整个的开发过程,我都认真学习,勤于思考,并不断动手实践,我感到收获非常大。
这是我们在学习专业课程之后走向工作岗位之前的不可缺少的实践环节。它对于培养我们的动手能力有很大的意义。这次实习旨在培养学生综合运用所学的软件工程专业基础理论、基本技能和专业知识分析问题和解决问题的能力,培养我们的专业素质、应用科学的思维方法和计算技巧,使我们了解科学研究工作的一般程序和方法,撰写科技论文的能力;培养我们直接参与科研活动、科研文献和资料的调研,对研究工作以及相关的研究结果分析、综合的能力;重点培养我们积极的创新精神、严肃认真的科学态度和严谨求实的工作作风,增强我们的综合素质以及对毕业后工作岗位的适应能力;有利于扩大我们的知识面,并掌握一些软件工程技术的发展前沿。
这次实习让我们走出校园,切身体会公司的企业文化,感受到了和学校里面不一样的学习方式和氛围,也可以从中学到很多社会经验,了解了很多行业需求和动态,使我们视野更加开阔。
我是JAVA开发方向的,前一周时间主要是老师给我们讲解JAVA的基础知识,Web实用页面的设计方法,ORACLE数据库的使用,这些知识有些我们在课堂上学过,这次是系统的讲解,为我们之后的项目开发打下了良好的基础。
对于好像我这样软件工程专业的学生,JAVA语言是我们的立身之本,然而在学习的过程中我发现自己的基础知识掌握不是很牢固,学过的知识存在遗忘的现象。就像老师强调的那样,我需要注重学习的细节,不能模棱两可。
在Web开发技术是我的薄弱环节,以前只知其然不知其所以然,在讲解过程中,我了解了在JavaEE框架下对于一个B/S架构的网络应用程序是如何基于HTTP协议进行通信的。掌握了请求和响应是如何发送和处理,过滤器的使用,Session技术原理等等。
之后我们6个人一组开始了项目开发。我们要做的是物流配送管理系统,物流配送管理系统是一套专门针对配送行业实现销售管理的软件系统,全面适用于物流配送领域中的各级各类经营企业。时间紧任务重,对我们来说是个不小的挑战。我们先根据需求确定功能点,根据功能点我们搭建了每个模块的静态界面,通过实现前台跳转我们逐渐明晰了流程,也顺利通过了评审。
在开发过程中我们也遇到了许多问题,由于小组6个人实践能力不同,大家的进度就很难统一。还有一个就是版本控制的问题,为了避免工程修改冲突,我们为每个人建立了了自己的开发包,大家将自己开发的文件放置其中。我们用到的Struts和Hibernate框架里面有些文件需要公用,这样我们决定在项目整合的时候统一修改。这样我们就避免了很多不必要的麻烦。
由于我们选用了我们比较熟悉的开发工具和框架,所以我开发起来比较流畅,技术上没有遇到太大的问题。在开发过程中我们建立了很好的信任关系,良好的沟通机制,让我们每个组员有问题马上分析和解决。我们也充分体会到了,团队合作开发中每个人应该承担不仅是自己的责任还有团队的利益。
在实习过程中,实训中心还为我们安排了几次专题讲座。在项目管理和质量管理讲座中,张老师为我们讲述了软件行业一条非常重要的项目管理标准——CMMI,能力成熟度模型。它用于指导软件公司开发出合理高效的产品。我们需要掌握这些标准,使自己的技术和方法在以后的工作中处于行业的地位。通过职业生涯规划的讲座,我深切了解到生涯规划是确定人每个阶段发展的方向,立足于本职工作,不断自我管理,最终达到职业目标的一种方法。还有面试技巧训练,这些对于目前尚未走向工作岗位的我们大学生来说,是大有裨益的。
3总结
这次实习让我理论联系实际,在团队软件工程的开发、数据库的设计、分析问题解决问题的能力上有了很大的提高,积累了开发经验,达到了实习效果,让我得到了难能可贵的锻炼。
一、实习目的
根据所学课程的理论知识,结合企业的运营实际,掌握软件开发的一般过程,软件的生命周期和作为一个开发人员就应具备的基本潜力,并撰写实习报告。使学生进一步巩固所学理论知识,同时提高观察问题、分析问题、解决问题的潜力。
二、企业实习地点
深圳市百盛佳信息咨询有限公司
三、实习时光
20__年12月5日——20__年4月5日
四、实习资料
1、java软件开发
五、实习总结
在Internet飞速发展的这天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。目前系统的架构一般有c/s架构和b/s架构,但是c/s架构的应用系统,每升级一个版本,客户端都需要自我下载更新,而b/s架构不需要,因为它是基于浏览器的。因此b/s架构的应用系统,在Internet上的地位显而易见,它已成为政府、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视。
计算机将具备更多的智能成分,它将具有多种感知潜力、必须的思考与决定潜力及必须的自然语言潜力。除了带给自然的输入手段(如语音输入、手写输入)外,让人能产生身临其境感觉的各种交互设备已经出现,虚拟现实技术是这一领域发展的集中体现。这天人们谈到计算机必然地和网络联系起来,一方面孤立的未加入网络的计算机越来越难以见到,另一方面计算机的概念也被网络所扩展。二十世纪九十年代兴起的Internet在过去如火如荼地发展,其影响之广、普及之快是前所未有的。从没有一种技术能像Internet一样,剧烈地改变着我们的学习、生活和习惯方式。
全世界几乎所有国家都有计算机网络直接或间接地与Internet相连,使之成为一个全球范围的计算机互联网络。人们能够透过Internet与世界各地的其它用户自由地进行通信,可从Internet中获得各种信息。人们已充分领略到网络的魅力,Internet大大缩小了时空界限,透过网络人们能够共享计算机硬件资源、软件资源和信息资源。“网络就是计算机”的概念被事实一再证明,被世人逐步理解。
(一)、实习过程遇到的困难
1、一进入企业,就立刻被分配开发任务,我的任务是质量信息管理系统的一个功能点,PDI退改车,有新增,删除,查询,审核,统计的操作。该系统使用的是struts2springibates模式,一开始什么都不明白,oracle数据库没用过,jquery框架没有用过,ibates框架没用过。所以给我的开发带来了很大的困难。
2、在第二个项目中,我的开发任务是,一线通管理系统中的设备查询,设备修改,还有一些报表的功能,发运环节主要异常事件,销售部工单月统计报表,储运部工单月统计报表等等,这些报表功能都需要有折线图和饼状图,还要有导出excel的功能,而我对于如何生成折线图或饼状图,如何导出excel,从未接触过,这些都是这次开发中的难点。
3、在益凌进销存系统中,也就是第三个项目,因为是刚刚开始,所以主要的任务是做设计,就是把那些业务流程图转化为静态网页。这事看起来好像不难,不就是做静态网页嘛!
当初我是这样想的!
但是到真正做的时候,就发现了其实并不是想象中的那么简单,例如,如何抽象数据字段,也就是说,别人给你一张真实的业务表,你该如何把那些有用的字段显示在你的界面上,业务流程中的每个点之间又有没有关系,这些都需要你去想的问题。初次接触,所以做起来也很棘手。
(二)、如何解决问题:
作为一个开发人员,遇到这些问题是在所难免的,因为很多技术都在不停的更新,你要不断的去学习,要有学习新知识的潜力,而且如今网络资源是如此的丰富,只要在internet上搜索一下,很多问题都会迎刃而解。
Oracle数据库简单的应用,jquery框架和ibaties框架的应用也是透过网络资源一边学习一边应用来实现我的目的的,当然也少不了跟同事的沟通。对于那个报表中用到的折线图和饼状图,我们采用了一个叫Jfreechat的框架,关于如何应用,也是从网上获取相关例子,然后经过我们的加工,就很顺利的解决了问题。透过这次,感觉收获还是挺大的。对于进销存管理系统的设计问题,我压根就什么都不懂,看了一段时光的业务流程图,还是不明白要做什么,要在网页界面上体现哪些字段,每个界面之间又有什么联系,这些都不太明白。
“这些东西要靠自我想的”,项目负责人跟我说了,之后他就跟我说了一大堆如何抽象字段,要把每个业务点的关系理清,然后再透过他们的关系抽象有用的字段。听他说了之后,恍然大悟,原先是这么一回事。之后,每次遇到不懂的,就立刻去和他沟通。完成了这些设计,我感觉我对软件开发,又有了更深的认识,同时也让我意识到沟通在软件开发中真的是一件很重要的事。
六、实习心得
经过为期4个月的专业实习,令我更深一步的了解和学习了软件开发的一般过程,不再是以前那样,都不明白软件开发是什么东西。对于一个应用系统他们为什么要那么多人来做,而这么多人一齐做,代码又是如何进行管理的。对于每一个应用系统,企业到底用到哪些技术,他们为什么要选取这些技术,我们开发人员的主要任务是什么等等,这些概念都渐渐的清晰。
人,孰能无过,过而改之,善莫大焉!
没有谁,在编写代码的过程中永远不会犯错,即使他十分的厉害,那也是从不断的犯错过程中锻炼出来的,但亦有“犯错”的时候,因为需求是不断的改变的,即使你当时没错,但需求改了之后,你的代码不贴合需求,那也是你的错。有错那当然就要调试咯,以前老是害怕出错,找不到问题所在是件令人烦恼的事。但是当调试的错误多了之后,你就会发现,每当一看到相类似的错误之后,你就会立即明白这个错误是什么原因造成的!
所以,我们不就应害怕出错,就应把调试错误当成一种提高个人潜力的方式。
对于测试人员发回来的bug我们要认真的对待,造成这种bug就证明了我们的思路还是不怎样的清晰,所以有必要再去看看相关的资料。沟通是人与人之间传递信息的途径,好的沟通能很完美的传达你的思想,你的见解。在企业中,每一个系统的开发过程一般来说都不是一个人从头做到尾的,一般都有分工的,如此一来,沟通就必不可少了,因为你要把你做的工作,你为什么这样做,告诉别人,别人才更好的去完成他的任务。
这次实习,是进行实战性工作,学到了很多东西,我相信对以后的生活和工作都有很大的帮忙。
1 浅谈测试
一直以来,我都认为测试是脱离了软件工程范围的工作,不以为屑。但在实际情况中,测试是既重要且难以精湛的。其真正的压力,在于找不到bug,责任在你,而不在于编码人员。一般的测试人员不懂编码,他们靠的是日以累计的经验总结和想象力。而要做到高级测试工程师,则一定要懂编码,因为这是你完全掌握整个系统的方方面面具体运作的前提。但占主导地位的,还是大型系统的集成测试经验。实际项目中,编码时间一般只占30%左右,真正耗费时间的是IT阶段的`找bug与对应bug,此阶段基本评定了coder的编码质量。
2 程序员的困惑
有些人,以为教学视频和代码看多,自己就懂的多,实际做起来,却不知从何下手,问题在那?如何定位?如何解决?通通跟一样能力有关,debug追踪能力,也称调试。在项目组工作不愁源码资源,但问题是蛋糕摆在面前,你如何去消化?
有位同事告诉我:代码看几遍都没用,要去抄,例如一个查询模块,在此基础上去做具体记录的历史记录查询模块,你可能会觉得很简单,但实际情况却往往报一堆异常,配置问题涉及到方方面面,以及数据库字段,传值问题等等,一大堆对于新人来说很郁闷的问题。但不用怕,只要学会调试,一个个问题去追踪,一个个去解决,自然而然,那段“源码”才真正属于你。
3 如何调试追踪?
如果你能在短短的时间内就看到问题点在那,放下断点去追踪,出去找工作,绝对没问题。出现问题的时候,不要光看代码,要用实际行动去追踪运行期间的具体值,那是最好途径。eclipse是个很爽的ide,这点做的很好。例如页面内容显示不是自己想要的数据,我们要先从数据库查询语句去下手,设置断点,一步一步step over,让sql字段(存取最终sql语句的字符串)运行到有值,inspect进去看,如果还看不出来,就点击它,copy后在sql客户端去实际运行,看看实际查询出来的表是什么,如果是对的,有可能就是页面调用的错误或者action逻辑的传值问题。
页面错误的调试,基本方法是用右键点击实际网页查看源代码,copy到editplus,就能看到具体错误发生在那几行。通常有几种常见的错误,。例如。缺少对象 这种很多时候是有些被你调用的字段有可能为空的情况出现的,可以加if(__=null)语句加保护。追踪的方法基本就是用alert语句,放在有可能出错的地方。
4 一些习惯
遇到问题先自己思考,无从下手再找高手帮忙看看,注意他帮你看的思路,别在一旁闲着,看多了自己也会了,不然你一辈子都停留在那种水平,从人身上学到的东西远远比书多的多。
解决了一个问题后,要去究根问底去找到问题产生的起因,以防你下次遇到类似的问题再浪费同样的时间。
把代码写的漂亮,注释,空行,规范一样不能少,可读性是放在第一位。曾经看过一个高手写的代码,真的一看就是不同水平的人写的,几乎很完美,读起来很流畅,方便自己也方便别人。
任务完后不要呆着,去要求经理给你更有挑战性的任务,只要你肯去尝试,他们就会对你另言相看,把三天的任务一天加班搞定,效率和忠诚都有了,路也比较好走了。
5 题尾话
如果你有一份思想,我有一份思想,拿出来交换,我们大家拥有就是2分份思想,可惜这种观念,并不能深入每一个团队的每一个人,少一点自私,未必不是好事。职场到处都存在被排挤的隐患,要为自己找片草地实在不容易。但有一点要相信,只要自己不放弃自己,这世上就没有绝望的路,你可以被打趴下,可以被身边的人暗算,可以被深爱的人流放,只要你用自己决心站起来,受过的伤痊愈后就能增强你的抵抗力,一路前进!
一、关于实习公司
我所实习的南京__软件有限公司简称__公司,公司成立于__年,主营软件开发和信息系统集成,专门从事工程建设项目管理信息系统开发和实施,具有自主知识产权的项目管理软件产品__项目管理系列软件(包括__投资控制合同管理软件、__的进度控制计划管理软件、__质量控制安全管理软件、__项目管理门户、__城建项目管理平台等),并已经在全世界第一大桥苏通长江大桥、国内最大的开发区苏州工业园区以及南水北调工程实施和应用,目前正与南京城建集团合作,开发城建项目管理平台,软件工程实习报告。
二、实习的内容
今年__月__日开始,我正式走进__开始了实习工作,并被调到了江苏省建筑质量检测中心,参加正在进行的一个检测项目。由于我才大三,本身对企业的经营方式等都很陌生,公司让咱们的王工带我学习,以师傅带徒弟的方式,指导我的日常实习。在王工的热心指导下,我依次对此次项目的业务流程和大概框架进行了了解,并积极参与相关工作,注意把书本上学到的理论知识对照实际工作,用理论知识加深对实际工作的认识,用实践验证大学所学确实有用,实习报告《软件工程实习报告》。以双重身份完成了学习与工作两重任务。跟公司同事一样上下班,协助同事完成部门工作;又以学生身份虚心学习,努力汲取实践知识。我心里明白我要以良好的工作态度以及较强的工作能力和勤奋好学来适应公司的工作,完成公司的'任务。
三、实习的提高与收获
1、通过直接参与企业的运作过程,学到了实践知识,同时进一步加深了对理论知识的理解,使理论与实践知识都有所提高,圆满地完成了本科教学的实践任务。
2、提高了实际工作能力,为就业和将来的工作取得了一些宝贵的实践经验。
3、一些学生在实习单位受到认可并促成就业。
4、为毕业后的正式工作做好了准备。
四、结语
到公司实习并没有我想象中的难以融入,通过慢慢的学习,发现在公司用的到得知识在咱们的学校学习中都会遇到。至暑期结束,从不懂到渐渐的做了几个检测项目。学到不少的东西。实习生活还没结束,开学了我还是会继续留在公司我的学习和探索。
今天的实训结束,今天做的是纸牌游戏软件和趣味打字游戏。今天的东西对我来说有点难度,最后没有能过完全做完。但是我还是觉得这是一个不错的实训,在这种集体的环境里和同学们一起学习,每天的生活过的也是非常的充实。
此次实践课我的收获很多。我和同学们这一次真正自己动手制作一个小软件,虽然还存在很多的问题,而且我做的软件在使用起来还是很不可行的,但是我们从中受到很多知识,不仅是专业的知识,更让我明白一个软件从设计到实现的每一个环节真的很不容易,不仅需要扎实的专业知识,更需要一个团队的配合,这才是一个软件成功的关键。这就告诉我们,一个人的出色不算什么,一个团队的出色才是真正有用的。
刚开始拿到题目我们组员都不知如何下手,经过小组成员一起查找资料,并且开会讨论,我们确定设计的设计目标以及具体实现方式,包括如何将Java的思想运用到实际系统的详细设计之中。
在实验课上,我学会很多学习的方法。而这是日后最实用的。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。这对于我的将来也有很大的帮助。以后,不管有多苦,我想我都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。就像中国提倡的艰苦奋斗一样,我都可以在实验结束之后变的更加成熟,会面对需要面对的事情,以及学会遇到问题,不急不慌,慢慢解决它。
虽然过程辛苦是不可避免,但收获还是令人感到尤其的欣慰。在这次的软件设计中不仅检验我所学习的知识,也培养我的实践能力,让我知道遇到一个问题,如何去寻找思路,如何去解决问题,最终完成整个事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会合作,学会宽容,学会理解,也学会做人与处世。课程设计是我们专业课程知识综合应用的实践训练,是我们迈向社会,从事职业工作前一个必不少的过程。实验过程中,也十分感谢实验指导老师陈中育老师的指点与教导。这次软件设计不仅是对这学期所学知识的一种综合检验,而且也是对自己动手能力的一种提高,增强自己实践能力。通过这次课程设计使我明白自己知识还比较欠缺,只是学习书本知识还是远远不够的,自己不会的东西还有太多,学习需要自己长期的积累,在以后的学习、工作中都应该不断的学习,将课本的理论知识与生活中的实践知识相结合,不断提高自己文化知识和实践能力。