软件工程报告心得体会
软件工程报告心得体会篇1
我们是20__年3月7号进入宏天实训公司参加软件开发实训的,在此次实训中,除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完成一个任务,懂得了享受工作。当遇到问题,冷静,想办法一点一点的排除障碍,到最后获取成功,一种自信心就由然而生,这应该就是工作的乐趣。有时候不懂的就需要问别人了,虚心请教,从别人的身上真的能学到自己没有的东西,每一次的挫折都会使我更接近成功。还有学会了在工作中与人的合作与交流,同乐同累,合作互助,这是团体的精神,也是必须学习的东西。
经过之前的在校学习,对程序设计有了一定的认识与理解。在校期间,一直都是学习理论知识,没有机会去参与项目的开发。所以说实话,在实训之前,软件项目开发对我来说是比较抽象的,一个完整的项目要怎么分工以及完成该项目所要的步骤也不是很明确。而经过这次实训,让我明白了一个完整项目的开发,必须由团队来分工合作,并在每个阶段中进行必要的总结与论证。
一个完整项目的开发它所要经历的阶段包括:远景范围规划和用例说明、项目结构和风险评估、业务功能说明书、详细设计说明书、代码实现、测试和安装包等等。一个项目的开发所需要的财力、人力都是很多的,如果没有一个好的远景规划,对以后的开发进度会有很大的影响,甚至会出现在预定时间内不能完成项目或者完成的项目跟原来预想的不一样。一份好的项目结构、业务功能和详细设计说明书对一个项目的开发有明确的指引作用,它可以使开发人员对这个项目所要实现的功能在总体上有比较明确的认识,还能减少在开发过程中出现不必要的麻烦。代码的实现是一个项目开发成功与否的关键,也就是说,前期作业都是为代码的实现所做的准备。
我深刻的认识到要成为一名优秀的软件开发人员不是一件容易的事情,不仅要有足够的干劲和热情,还要有扎实的编写代码基础,必须要有事先对文档进行可靠性报告,功能说明书,详细设计说明书等的编写和一些风险评估的编写的能力。
除了图书馆,最能让我感觉到身在大学的就是实训机房,在匆匆过去的两个月内,我往返于实训机房与宿舍之间,使我享受了一个充实的学习时期,让我感受到了大学的魅力,对自己充满信心,对大学充满信心,以积极的心态迎接明天挑战。
实训中要求有扎实的理论基本知识,操作起来才顺心应手,我这时才明白什么是“书到用时方恨少”。这就激发了学习的欲望。
“学以致用”,就是要把学来的知识能运用到实际操作当中,用实践来检验知识的正确性。我想,这是实训的最根本目的。
“纸上得来终觉浅,绝知此事要躬行!”,在短暂的实训过程中,让我深深感受到自己在实际运用中专业知识的匮乏。以前总以为自己学的还不错,一旦应用到实际就大不一样了,这时才真正领悟“学无止境”的含义。
经过为期两个月的电子政务服务平台系统开发的实训,我对Visual 软件开发平台有了更深一步的了解,对微软基础类库的认识与使用也有了大大的提高。以及如何使用SQL Server数据库进行连接操作方面有了本质的提高。
短短的实训结束了,为我将来的就业打下了良好的基础,也提高了我的软件开发的水平,今后我将会更加努力的学习,不断提高自身素质,开拓创新,与时俱进,做一个优秀的软件开发工程师。
软件工程报告心得体会篇2
这学期学习了软件工程实践这门课,我觉得这是对上学期的软件工程课程学习的检验,上学期学习软件工程只是我们浅显的认识,相比之下,这学期就更加全面的说明了开发一个项目所需要的步骤以及开发项目过程中所需要注意的诸多细节。如果说上学期的课程注重理论基础的话,那么这学期的软工实践,顾名思义,就是侧重我们动手操作的能力。
原来我认为开发一个项目最重要的就是写代码,似乎整个软件都是编代码,因为自己动手能力不强所以就很排斥做项目。可是经过我们学习软工课程到团队做项目再到学习软件工程实践课程之后,我才真正意识到实施一个软件工程项目并不是说简单的会编码就能够解决问题的,因为一个软件的生命周期分为三个时期:软件定义时期、开发时期、维护时期,而这三个时期整体又分为七个阶段,他们分别是:问题定义、可行性研究、需求分析、总体设计、详细设计、编码和单元测试、综合测试,由此可看出,当我们开发一个项目时,更多的精力不是放在编码上,编码只是一个很小的模块,而是项目的整体结构上。
在写软工实践体会之前,我想在这里总结一下上学期三人团队做 项目的相关事宜。上学期我们三人团队根据软件开发的步骤开发一个名为“西大老乡‘荟’”的社交系统,主要是为西大学子提供一个找老乡的平台。虽然只进行到详细设计阶段,没有进一步实现,但是我还是从中学到很多东西的。首先要先确定项目主题,也就是这个项目用来做什么,可以解决什么问题。接着就是这个项目是否有研究的必要以及是否有解决的办法,针对我们的项目,我们对西大的一些学生做了问卷调查,并从调查中继续完善系统本身的做用户。第三步根据我们确定的项目主题进行需求分析,这一步骤当时做的不是很好,比如所画E-R图、数据流图等都有考虑不周的问题,导致接下来的概要设计、详细设计进行的很困难,有些步骤甚至还需要返工。
从我们在需求分析中出现的问题,使我们明白了软件定义阶段对于一个项目的开发是至关重要的,当软件定义阶段完成时必须要用正式的文档准确的地记录目标系统的需求。只有前期的准备工作做得好,后面的工作才能顺利进行。虽然项目最后没有完全实现,但是起码我们已经初步体会到软件项目开发的步骤,以及每一步所需要完成的文档等内容。
这学期的软件工程实践虽然不是亲自动手开发一个系统,但是张元平老师以“物联网物流仓储管理系统”为主给我们讲解了一个真实系统的开发过程,从计划到项目系统的发布实施,以及每一步必须生成的文档。我主要从以下五个方面谈一下我的心得体会。
第一、行业背景说明方面
对于一个软件系统的开发,第一步就是问题定义,了解所开发系统的行业背景,制定计划。当我们计划确定以后就要对项目系统本身进行可行性研究,主要从技术可行性、经济可行性和操作可行性三个方面着手。就比如《物联网物流仓库管理系统》的行业背景说明文档中非常详细地分析了当下物联网物流行业的整体业务说明、应用背景、未来发展趋势以及相关应用案例等四个方面,项目团队中系统分析员就可以根据这份文档以及相关的调查资料对将要开发系统的进行定义等工作。
原来我们写这类文档的时候就是草草了事,不会做得这么详细,而这次看到大型项目的行业背景说明也是这么详细,也让自己认识到不管是软件开发的那个阶段都要认真对待,这些琐碎的文档都是后期开发项目的支撑,只要它们做的透彻,后面的开发工作才能更顺利的进行。
第二、项目需求说明方面
这部分项目需求说明就是软件定义时期中需求分析阶段,而该阶段的主要目的就是了解用户的需要,根据用户的需要确定系统必须完成那些工作,并对目标系统提出完整、准确、清晰、具体的要求。在需求分析结束之前系统分析人员要写出一份需求规格说明,即为《物联网物流仓储管理系统》项目需求说明文档。我们可以看出该文档也是非常详细,相比之下我们之前做项目时写的需求规格说明书就非常不合格,不仅格式不正确内容也是少之又少。
在这方面,这篇文档给我启发很大。首先就是文档的格式,要美观整齐,让人看着舒服方便。其次就是文档的内容,原来它不是很重要,写文档的时候也不知道怎么写就借鉴下网上的内容,结果根本就没有把自己项目的需求写明白,以至于自己最后都有些糊涂,所以根据以前的经验教训我会对这部分更加重视。
第三、系统概要设计方面
这部分内容分说的是软件设计时期的概要设计阶段,该阶段的主要目的就是实现系统的功能、设计软件的结构、模块组成以及模块之间的关系。在概要设计阶段,我们可以站在全局的高度上,花较少的成本,从抽象的层次上分析对比多种可能的系统实现方案和软件结构,从中选出最佳方案和最合理的结构。在这个阶段还会具体画出E-R图、数据流图等方面的设计。
比如《物联网物流仓库管理系统》的系统概要设计从项目概述、设计约束、功能单元与功能模块设计、数据E-R图设计、总体设计、界面设计等六个方面介绍,通过读这个文档,我觉得最重要的还是总体设计,分别从逻辑架构设计、物理架构设计、技术架构设计设计系统。在这个阶段中模块要做到高内聚低耦合,这样开发出来的系统才会具有更高的独立性。
在原来做项目时没有编写过这类文档,在该阶段只是画了结构图、层次图以及相关的模块划分,对该类文档尚未重视。通过张老师的讲解和自己的学习,我相信在以后做项目的时候一定会注意到这类文档的编写。
第四、详细设计与分析方面
详细设计阶段就是把概要设计阶段的每个模块进一步设计,确定每个模块所需要的算法和数据结构。在这个阶段还是需要我们设计出程序的详细规格说明,而不是编写程序。在详细设计阶段,系统设计人员可以通过使用程序流程图、盒图、PAD图等过程设计的工具和Jackson图等面向数据结构的设计工具进一步设计系统相关接口,主要包括界面设计接口、业务单设计接口、单元模块设计接口等,这些对于以后的编码工作都是极其重要的。
第五、编码和测试方案方面
关于编码,我认为编码要想做的完美必备条件就是前面的软件定义和软件设计时期要按部就班的做,文档一定要按要求书写,不能偷懒也不能草草书写。对于编码也要有相应的文档书写规范,要使源程序代码的逻辑简明清晰、易读易懂。这样尽管我们不是设计系统的人员,当看到源程序代码的时候也能容易读懂代码的意思。
其次就是测试的内容,从测试的文档中我们可以得出,其实测试在软件开发中同样占据了重要的地位,它主要就是尽可能多的找到问题并排除其中的潜藏的错误,最终把一个高质量的软件系统交给用户使用。它要求测试人员也要有很高的技术水平。
软件工程报告心得体会篇3
一、关于实习公司
我所实习的南京__软件有限公司简称__公司,公司成立于__年,主营软件开发和信息系统集成,专门从事工程建设项目管理信息系统开发和实施,具有自主知识产权的项目管理软件产品__项目管理系列软件(包括__投资控制合同管理软件、进度控制计划管理软件、__质量控制安全管理软件、__项目管理门户、__城建项目管理平台等),并已经在全世界第一大桥苏通长江大桥、国内最大的开发区苏州工业园区以及南水北调工程实施和应用,目前正与南京城建集团合作,开发城建项目管理平台。
二、实习的内容
今年__月__日开始,我正式走进__开始了实习工作,并被调到了江苏省建筑质量检测中心,参加正在进行的一个检测项目。由于我才大三,本身对企业的经营方式等都很陌生,公司让我们的王工带我学习,以师傅带徒弟的方式,指导我的日常实习。在王工的热心指导下,我依次对此次项目的业务流程和大概框架进行了了解,并积极参与相关工作,注意把书本上学到的理论知识对照实际工作,用理论知识加深对实际工作的认识,用实践验证大学所学确实有用。以双重身份完成了学习与工作两重任务。跟公司同事一样上下班,协助同事完成部门工作;又以学生身份虚心学习,努力汲取实践知识。我心里明白我要以良好的工作态度以及较强的工作能力和勤奋好学来适应公司的工作,完成公司的任务。
三、实习的提高与收获
实习收获,主要有四个方面:
一是通过直接参与企业的运作过程,学到了实践知识,同时进一步加深了对理论知识的理解,使理论与实践知识都有所提高,圆满地完成了本科教学的实践任务。
二是提高了实际工作能力,为就业和将来的工作取得了一些宝贵的实践经验。
三是一些学生在实习单位受到认可并促成就业。
四是为毕业后的正式工作做好了准备。
四、结语
到公司实习并没有我想象中的难以融入,通过慢慢的学习,发现在公司用的到得知识在我们的学校学习中都会遇到。至暑期结束,从不懂到渐渐的做了几个检测项目。学到不少的东西。实习生活还没结束,开学了我还是会继续留在公司我的学习和探索。
软件工程报告心得体会篇4
这次软件工程实训是从20__.12.26号开始的,截至20__.12.31号。实训内容是用java相关知识(主要是jsp)做一个物流配送系统。下面谈谈对这次实训的看法。
因为自己平时对java知识储备不足,特别是jsp这一块基本不了解怎么回事,所以一拿到这个项目,我心里都是没有底的,再加上我被分到的那个组,我知道就意味着是我一个人在战斗了。呵呵,26号,实训开始了,我们的老师是来自中软国际公司的程序员,一个是周褀,一个是朱映,都是一身朴素的着装,让我感觉做软件的也没什么两样。老师介绍了自己之后,就直接切入正题了,分析了下我们各个组的系统,即将用到的知识,然后就总体把觉得需要补充的知识(jsp和数据库连接等这几块)给我们实际操作了下,因为当时看到用jsp,还讲的那么认真,当时我就后悔了,平时要是多听点,现在老师这么认真的给我们讲,这是一个多么难得的机会啊。后悔也没用啊,开始还勉强能理解一点,后来就直接晕了。然后再给大家介绍了一些即将用到的工具,比如rationalRose,SVN,MyEclipse等等。接下来的几天就不再细讲了。下面谈谈通过这次实训的心得体会吧。
通过这次实训,让我了解到工程开发的过程,可行性分析——>需求分析——>概要设计——>详细设计——>代码编写——>测试——>验收。从技术方面上,我开始jsp基础基本上就是零的,在老师和syz2(另外一个物流小组,我一个人基本上是跟她们做的,或者说是看着她们做的)的帮助下,对jsp有了一个大概的认识。其实实训开始前,我还以为做个系统没什么大不了,可是当真正拿到一个项目,我却真的无从下手了,而且就是在知道需求分析和详细设计,在代码编写时,一样寸步难行。通过这个实训,也让我了解到,团队协作是多么的重要。一个人的精力是多么的有限。进一步理解到,企业为什么如此重视团队协作。同时借用老师的话就是团队协作固然重要,但是是建立在个人素质的基础上,假设你个人素质不行,将会影响到整个团队,就别提对团队作更多贡献了。_老师说这几句话的时候,朝向了我,估计是有特殊意义的吧,所以,我将谨记老师的教导。
还有一个收获是从一个同学(小胖)那里得到的,他的那组成员跟我的这组大体一样,我倒是觉得没什么了,不过他倒是很重视这个问题吧。然后他说出来,我也觉得这个问题确实其实是个大的问题。就是不管你会不会这门技术,会不会做这个东西,态度要正确才好,就算你不会做,你也应该认真的对待,将来 出身到社会,就不是说像你现在,不会做就不做,跑去玩游戏了。小胖说出了这段话,也在我身上有了一个印证,虽然我jsp技术知识为0,但我也还是在认真的跟着他们一起做,不会做,就多问,毕竟现在我们是学生,可以毫不顾忌的询问各种问题,老师也会尽力为你回答。将来出身社会就不一样了。虽然,我就算个打酱油的水平,但是这个酱油也要打得有涵量啊。不管怎么样,我能对自己有个交待,虽然我不会,但是这次实训我确实是认真对待了,六天的实训,除了晚上加班外,还花了2个通宵来完成不同阶段的任务,完成与否也不重要了,我至少我做了,这点,是这次我应该对自己的一个肯定。
这次实训的心得基本上就是这些了,最后特别感谢中软国际带我们的那两个老师(周褀,朱映),这两个老师对待我们很平易近人,对我们提出的问题,总是不光解决了,还进行了扩展,晚上也跟我们一起加班加到很晚,印象尤其深刻就是朱映老师为了给小胖解决一个问题,脸都变红了,还在继续努力,这点我并不会觉得老师知识储备不够,我想应该是这个问题的突发吧,一时没想到怎么处理。相反让我感觉更多的就是老师很认真,很负责。还要感谢就是syz2小组的倾力支持,辅导。
软件工程报告心得体会篇5
一、 实训目的:
通过对java语言、sql数据库的应用以及sql语言的复习和锻炼,并且通过使用MyEclipse开发平台设计管理项目,以达到充分熟悉开发平台及应用设计。同时掌握并实践软件项目设计规范及其开发流程:需求分析、概要设计、详细设计、代码编写等,以便提前适应软件公司开发流程、环境和工作要求。
二、实训内容:
1. 项目:(“当当网”)
2. 完成(用户注册、登录、列表、购物车、删除、修改)等功能
3. 数据库设计、SQL应用
4. 项目实战
三、实训总结:
转眼间实训已过去一段时间,之前的兴奋、喜悦如今已经让我熟悉,在实训的每一天都会让我有成为一名真正的财富者拥有的冲动。也许,在这期间不一定会让一个人有着翻天覆地的变化,但变化就是这样一点一点产生的。通过这一期的实训,虽然倍感折磨,但是收获却是很大的,学习中我不但有了学习成果的喜悦,而且自己也日渐成熟,有种说不出的喜悦。
在实训的过程中,我深深的体会到了自己在专业知识方面的欠缺和不足,也意识到了自己作为计算机软件专业的学生,要想在以后的职业中崭露头角,除了要有过硬的理论知识,健康的体魄之外,还必须具备良好的心理素质,是自己在以后的途中无论经历什么样的困难,都立于不败之地。通过实训老师的课堂讲解与企业文化标准的培训,使我加深了对自己专业的认识,从而确定自己以后的努力方向,要想在短暂的实训时间内尽多的学到东西,就需要我们跟老师或同学进行良好的沟通,加深彼此的了解,只有我们跟老师多沟通,让老师更了解我们,才能更真切的对我们进行培训工作。由此,班级的文化“共享”就在生活中慢慢形成了。
“纸上得来终觉浅,绝知此事要躬行!”在这短短的时间里,让我深深的感觉到自己在实际应用中所学来专业知识的匮乏。让我真真领悟到“学无止境”这句话的涵义。而老师在专业认识周到中所讲的,都是课本上没有而对我们非常有实际意义的。这又给我们的实训增添了浓墨淡彩的光辉。我懂得了实际生活中,专业知识是怎样应用与实践的。在这些过程中,我不仅知道了职业生涯所需具备的专业知识,而且让我深深体会到一个团队中的各个成员合作的重要性,要善于团队合作,善于利用别人的智慧,这才是大智慧。靠单一的力量是很难完成一个大项目的,在进行团队合作的时候,还要耐心听取每一个成员的意见,是我们的组合达到更加完美。
这次实训除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完成一个任务,懂得了享受工作。当遇到问题,冷静,想办法一点一点的排除障碍,到最后获取成功,一种自信心就由然而生,这应该就是工作的乐趣。有时候不懂的就需要问别人了,虚心请教,从别人的身上真的能学到自己没有的东西,每一次的挫折都会使我更接近成功。还有学会了在工作中与人的合作与交流,同乐同累,合作互助,这是团体的精神,也是必须学习的东西。
经过之前的学习,对程序设计有了一定的认识与理解。在校期间,一直都是学习理论知识,没有机会去参与项目的开发。所以说实话,这次实训,软件项目开发对我来说是比较抽象的,一个完整的项目要怎么分工以及完成该项目所要的步骤也不是很明确。而经过这次实训,让我明白了一个完整项目的开发,必须由团队来分工合作,并在每个阶段中进行必要的总结与论证。
一个完整项目的开发它所要经历的阶段包括:远景范围规划和用例说明、项目结构和风险评估、业务功能说明书、详细设计说明书、代码实现、测试和安装包等等。一个项目的开发所需要的财力、人力都是很多的,如果没有一个好的远景规划,对以后的开发进度会有很大的影响,甚至会出现在预定时间内不能完成项目或者完成的项目跟原来预想的不一样。一份好的项目结构、业务功能和详细设计说明书对一个项目的开发有明确的指引作用,它可以使开发人员对这个项目所要实现的功能在总体上有比较明确的认识,还能减少在开发过程中出现不必要的麻烦。代码的实现是一个项目开发成功与否的关键,也就是说,前期作业都是为代码的实现所做的准备。
我深刻的认识到要成为一名优秀的软件开发人员不是一件容易的事情,不仅要有足够的干劲和热情,还要有扎实的编写代码基础,必须要有事先对文档进行可靠性报告,功能说明书,详细设计说明书等的编写和一些风险评估的编写的能力。
除了图书馆,最能让我感觉到身在大学的就是实训机房,在匆匆过去的两个月内,我往返于实训机房与宿舍之间,使我享受了一个充实的学习时期,让我感受到了大学的魅力,对自己充满信心,对大学充满信心,以积极的心态迎接明天挑战。
实训中要求有扎实的理论基本知识,操作起来才顺心应手,我这时才明白什么是“书到用时方恨少”。这就激发了学习的欲望。 “学以致用”,就是要把学来的知识能运用到实际操作当中,用实践来检验知识的正确性。我想,这是实训的最根本目的。
最初在实训时自己就有一些不自信,但随着项目的进展,我慢慢的找到了自己的位置,找到自己的目标,虽然自己与好的同学还有差距,这也给了我很大压力,但是我相信没有压力就没有动力,所以在整个实训过程中我都在不断地努力。
实训期间让我学到很多东西,不仅在理论上让我对IT领域有了全新的认识,在实践能力上也得到了很大的提高,真正的学到了学以致用,更学到很多做人的道理,对我来说受益匪浅。我意识到自己知识的缺少,这激励我在以后的学习、工作、生活中要不断了解信息技术发展动态以及信息发展中出现的新的技术。
除此之外,我还学到了如何与人相处,如何和人更好的交流,我们组成一个团队大家一起开发一个项目,大家的交流沟通显得尤为重要,如何将自己的想法清楚明白的告诉队友,如何提出自己想法的同时又不伤害其他的队友的面子,这些在我的实训生活中都有一些体会。可是说,第一次亲身体会理论与实际相结合,让我大开眼界。也是对以前学习的一个初审吧,相信这次实训多我以后的学习、工作也将会有很大的影响,在实训的这段时间里这些宝贵的经验将会成为我以后工作的基石。
作为即将毕业走出校园的学生,经过3年的在校学习,对程序设计有了一些基本的理性的认识和理解。在校期间一直忙于理论的学习,没有机会也没有经验来参与我们项目的开发,所以在实习之前软件按开发对我来说是非常抽象的,一个完整的项目要怎么来分工以及完成该项目所需要的基本步骤也不明确,通过这次实训让我明白一个完整项目的完成必须团队分工合作,并在每个阶段进行必要的总结和检查。在我们项目的开发过程中我们项目的步骤:详细设计、详细设计review、编码、编码。在项目开发过程中我也深刻的体会到详细设计对一个项目开发有明确的指引作用,它可以使开发人员对这个项目所要实现的功能在总体上有具体的认识,并能减少在开发过程中出现不必要的脱节。
这次实训是对我们学习的一个检验,虽然项目中很多知识我们在日常的学习中都没有遇到,这同时提醒我:要想成为一个合格的程序员就有具备一种自学能力,在工作中会遇到很多从未接触过的问题,当有了问题时要去解决,在你不断努力,寻找答案的过程中,自己的能力也在潜移默化的提升。有时遇到问题时可能有很多想法但却不知道那个正确,这就让我们不断地去探索,不断地尝试。
软件工程报告心得体会篇6
15天的实训结束了,今天做的是纸牌游戏软件和趣味打字游戏。今天的东西对我来说有点难度,最后没有能过完全做完。但是我还是觉得这是一个不错的实训,在这种集体的环境里和同学们一起学习,每天的生活过的也是非常的充实。
此次实践课我的收获很多。我和同学们这一次真正自己动手制作了一个小软件,虽然还存在很多的问题,而且我做的软件在使用起来还是很不可行的,但是我们从中受到了很多知识,不仅是专业的知识,更让我明白了一个软件从设计到实现的每一个环节真的很不容易,不仅需要扎实的专业知识,更需要一个团队的配合,这才是一个软件成功的关键。这就告诉我们,一个人的出色不算什么,一个团队的出色才是真正有用的。
刚开始拿到题目我们组员都不知如何下手,经过小组成员一起查找资料,并且开会讨论,我们确定了设计的设计目标以及具体实现方式,包括如何将Java的思想运用到实际系统的详细设计之中。
在实验课上,我学会了很多学习的方法。而这是日后最实用的。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。这对于我的将来也有很大的帮助。以后,不管有多苦,我想我都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。就像中国提倡的艰苦奋斗一样,我都可以在实验结束之后变的更加成熟,会面对需要面对的事情,以及学会遇到问题,不急不慌,慢慢解决它。
虽然过程辛苦是不可避免,但收获还是令人感到尤其的欣慰。在这次的软件设计中不仅检验了我所学习的知识,也培养了我的实践能力,让我知道遇到一个问题,如何去寻找思路,如何去解决问题,最终完成整个事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了合作,学会了宽容,学会了理解,也学会了做人与处世。课程设计是我们专业课程知识综合应用的实践训练,是我们迈向社会,从事职业工作前一个必不少的过程。实验过程中,也十分感谢实验指导老师陈中育老师的指点与教导。这次软件设计不仅是对这学期所学知识的一种综合检验,而且也是对自己动手能力的一种提高,增强了自己实践能力。通过这次课程设计使我明白了自己知识还比较欠缺,只是学习书本知识还是远远不够的,自己不会的东西还有太多,学习需要自己长期的积累,在以后的学习、工作中都应该不断的学习,将课本的理论知识与生活中的实践知识相结合,不断提高自己文化知识和实践能力。
软件工程报告心得体会篇7
基于本次暑期实习的情况,我收获很大。
从实训目的来看,本次实训主要是在VS2012开发平台上实现对C#语言、SQL数据库的应用,就我所在小组的项目工作内容来看,还需要掌握水晶报表和MDI多窗口应用技术。除了要充分熟悉开发平台及应用设计之外,还要掌握并实践软件项目设计规范及其开发流程即需求阶段、分析和设计阶段、编码阶段和测试阶段,以便能按时交付作业。
从实训的内容来看,我小组的项目是“人事工资管理系统”,主要实现公司企业对内部员工档案、工资、奖罚考勤等一系列的管理,这在当今不断壮大的企业用人单位是亟待需要的,总的来说,项目的难度系数不是很高,但也是相当困难。
在校外实习之前,老师先在校内培训了5天。5天实训中,着重讲解了c#语言应用,并布置编写“通讯录”工作台程序,windows应用程序和WPF程序,数据先是用文本保存,然后练习用数据库保存,期间每天需上交当日作业。5天的时间里,通过不断地学习,我从完全不懂c#语言成长到初步掌握了这门语言,当然在具体应用中还是会遇到些问题,但我还在学习。其实在实习的前一个月里,老师就上传了一些关于c#语言的资料并通知我们需要配置哪些软件环境,对于这一点,我是相当感谢何老师的,当然在校外的实习里,公司也全都把开发项目用到的一系列软件上传到公共文件夹里,从而免去了我们下载软件的麻烦,在此,感谢众老师。
校内实习要上交的作业我是在校外实习中补充完成的,因为之前上交的作业由于时间仓促大都有错误,所以借着校外实习中对c#语言的进一步应用和讲师的详细讲解后,我重新改正了错误,希望何老师能谅解采纳。
校外实习是从7月12号开始,历时15天,15天的最后一天要回校评审。我对本次校外实习的各个方面都十分满意。相比上次实习,首先这里的住宿学习条件非常好,住宿和实习地都安装了空调,实习地方环境清幽宽敞明亮,伙食也非常好。然后就是实习讲师非常专业和负责,他事先把所有有关实习的资料软件存放在公共文件夹,且规划入微。一开始先是对我们进行C#测试分好组安排好每组项目任务,又指导我们每个小组安装SVN软件,方便小组文件上传与统一,整体一气呵成,不似之前实习的凌乱,这一点我十分敬佩。之后每天都先安排好任务工作,认真且非常详细的给我们操作示范并细心地制作成word文档供小组之后查看。每隔几天都会有小组评审,主要针对小组所编文档的规范程度和不足提出修改建议。作为小组的PM,我必须承认一开始工作任务安排不当,没有完全发挥各成员的优势,以致文档编写的有些瑕疵,不过在小组评审过后,我便及时更改了项目工作的分工,而之后小组项目工作进行的非常顺利,每个人的能力都得到了最大的发挥和升华,当然这完全得力于小组成员的高度配合。
我小组是c#软件开发第一组,组内有6名成员,两个主要负责项目核心代码的编写,其余负责简单模块代码的编写,我主要负责填写与修改相关项目文档并督促小组进度和团结组内成员、合理分配组员任务并及时调节组内安排的各种不适与问题。校外实习的过程中,小组成员高度团结,协调合作,对所有问题都能及时探讨并高效解决,有时遇到分歧,不过在全体讨论后,都能找到合理的统一方案,如在界面设计环节中,就登陆界面和模块界面的设计中,组员有很多不同建议,在询问老师和权衡实现困难程度后,我们达成了一致意见,统一后的界面相比之前更加规整明晰,且功能更加健全,当然这是我们小组齐心合力的结果。在开发的过程中,出现过项目分工不明确的问题,其原因源于我考虑到组员能力的不同,所以就把大部分的工作安排给能力高的人身上,其他能力低的只暂让他们自由学习希望能尽早跟上小组步伐,不过事实证明我错了。让部分组员自由学习而不参与项目的工作中本身就拖累了小组的整体速度,而且在短暂的时间里,他们也实在学不到任何实际的东西,所以后来我更改了战略。我先让能力低的组员尝试参照模板编写一些文档的简单部分,然后让能力稍高点的组员继续补充文档的核心部分,最后由我修改格式和内容,最后让老师审阅。这个方案实施过后,小组的效率整体上明显提高,每个人各司其职,全组团结一致,共同为项目的完成发挥自己的聪明才智。而之后,在项目编码阶段,我们小组的TL负责对项目整个框架的构建,即设计好主要的窗口原型,然后指导小组成员在自己所负责的模块上添加具体事件代码,最后再进行修改,这样做不仅将组员团结在一起提高组内效率,更直接提高了组员的编程能力。
需求分析阶段和设计阶段很快结束了,我们小组齐心协力按时完成了相关文档的编写,包括需求规约、实现规约、界面设计word图形文档、数据库设计说明书、详细设计说明书和概要说明书,在老师评审过后,发现问题还是有很多,作为项目经理的我本该对这些文档进行及时修改和更正,但由于时间仓促且我们是第一组需第一个评审,所以就马马虎虎的拿未精确修改的文档进行审评了,老师着重对系统模块图和模块功能描述那块提出了些许建议,并让演示了小组编写的代码程序,对其中错误问题提出了解决方案。之后进行一番修改过后,我小组正式进入了编码阶段,编码只有短暂的3天,后两天老师分小组评审并提出改进意见,小组修正和改进代码结构语句,完善项目要求,紧接着进入测试阶段,老师又着重介绍了一些测试工具方便小组测试,填写并修改好测试文档后,整个实习就将要进入尾声了。再回校进行最后评审项目PPT和提交作业后,暑期实习就正式结束。
短短半个月的实习中,我深深的感受到自己在实际应用中专业知识的匮乏和短时间学习掌握一门新知识和新技术的困难,这是我非常畏惧的两大难题。就自身来说,我喜欢有所准备,不喜欢临阵磨枪,尽管之前对实习要求的知识技能有些了解,但到真正实施时,还是不免有些不知所措,而之后能慢慢克服畏惧慌张并团结小组成员按时且高效的完成作业,这都得力于实习老师和组员对我的巨大帮助,在此,由衷感谢他们,也感谢我自己。
软件工程报告心得体会篇8
在本学期的软件工程课程的学习中,我们学习了十一章的内容。第一章软件与软件工程的概念,这一章主要讲解的是一些概念性和基础性的内容,例如软件的概念、特性,软件危机的主要表现,软件工程的概念以及软件生存期、典型生存期模型等等。第二章软件工程方法与工具,这一章主要对软件工程方法进行介绍,包括三种方法:传统方法、面向对象方法、形式化方法。还引出了工具UML。第三章软件需求获取与结构化分析方法,本章详细介绍了需求获取与需求分析阶段的任务以及结构化分析方法,画分层的数据流图、E-R图以及状态图式本节的重点。第四章结构化分析方法,这一章重点讲解了使用变换型映射方法和事务型映射方法生成初始的模块结构以及模块结构的改进。第五章编码,这一章重点讲解了编码的风格及规范,还告诉我们编码规范说带来的好处,并告诫我们将来一点要形成好的编码风格。第六章软件测试方法,本章讲解了软件测试相关的概念及重要性,软件测试与开发各个阶段的关系;还介绍了白盒测试技术以及黑河测试技术。第七章统一建模语言UML概述,本章详细介绍了UML的基本模式、事物、关系及建模时用到的各种图进行了介绍。第八章面向对象分析,这一章主要讲解了面向对象分析的3种模型,包括功能模型、静态模型和动态模型。第九章软件体系结构与设计模式,本章对软件体系结构的基本概念、典型风格等进行了讲解。第十章面向对象设计,本章的重点是对面向对象分析时建立的对象模型进行调整和细化。第十一章软件维护,本章主要介绍软件维护的任务、软件维护活动以及软件维护方法进行了介绍。
要学习软件工程,学会如何系统的思考,以及养成良好的编码习惯,想学好软件工程,就必须知道软件工程的目标、过程和原则:软件工程目标:生产具有正确性、可用性以及开销合宜的产品。正确性指软件产品达到预期功能的程度。可用性指软件基本结构、实现及文档为用户可用的程度。开销合宜是指软件开发、运行的整个开销满足用户要求的程度。这些目标的实现不论在理论上还是在实践中均存在很多待解决的问题,它们形成了对过程、过程模型及工程方法选取的约束。
软件工程过程:生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。软件工程过程主要包括开发过程、运作过程、维护过程。它们覆盖了需求、设计、实现、确认以及维护等活动。需求活动包括问题分析和需求分析。问题分析获取需求定义,又称软件需求规约。需求分析生成功能规约。设计活动一般包括概要设计和详细设计。概要设计建立整个软件系统结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义。详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。实现活动把设计结果转换为可执行的程序代码。确认活动贯穿于整个开发过程,实现完成后的确认,保证最终产品满足用户的要求。维护活动包括使用过程中的扩充、修改与完善。伴随以上过程,还有管理过程、支持过程、培训过程等。
软件工程的原则是指围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵循的原则。
我们学习了详细设计的方法,其原则是过程描述是否易于理解、复审和维护,进而过程描述能够自然地转换成代码,并保证详细设计与代码完全一致。包括程序流程图、N-S图、PAD图、HIPO图
程序流程图:程序流程图又称之为程序框图,它是软件开发者最熟悉的一种算法表达工具。它独立于任何一种程序设计语言,比较直观和清晰地描述过程的控制流程,易于学习掌握。在流程图中只能使用下述的五种基本控制结构:顺序型;选择型;while型循环;until型循环;多情况型选择。
N-S图:一种符合结构化程序设计原则的图形描述工具,称为盒图,又称为N-S图。在N-S图中,为了表示五种基本控制结构,规定了五种图形构件。顺序型;选择型;WHILE重复型;UNTIL重复型;多分支选择型。
PAD图:它是用结构化程序设计思想表现程序逻辑结构的图形工具。PAD也设置了五种基本控制结构的图示,并允许递归使用。
HIPO图:HIPO图是由一组IPO图加一张HC图组成。它是美国IBM公司在软件设计中使用的主要表达工具。
HC图既是层次图,用于表示软件的分层结构。HC图中的每一个模块,均可用一张IPO图来描述。IPO图由输入、处理和输出三个框组成,需要时还可以增加一个数据文件框,这种图形的优点,是能够直观地显示输入—处理—输出三者之间的联系。
还有测试方法:按照测试过程是否在实际应用环境中来分,有静态分析与动态测试。测试方法有分析方法(包括静态分析法与白盒法)与非分析方法(称黑盒法)。
静态分析技术:不执行被测软件,可对需求分析说明书、软件设计说明书、源程序做结构检查、流程分析、符号执行来找出软件错误。
动态测试技术:当把程序作为一个函数,输入的全体称为函数的定义域,输出的全体称为函数的值域,函数则描述了输入的定义域与输出值域的关系。
还学习了其他很多工具、语言、方法等,虽然不是都学得很透彻,但我相信在今后的学习中一定会慢慢的完善的。
软件工程对于初学者来说,知识基础较薄弱,对一些应用操作、概念、工具方法等理解起来较为困难,要能从整体概念上较好地理解和把握、学好软件工程,不是仅仅把几本专业书籍细致地看几遍,然后上机练习几次就可以成功,学习过程中要注意多看多练要注意结合实际,更要多思考,面对错误不要一范就问,要尝试自己去解决。但是还要注意什么都学,肯定是什么都学不透的,要集中精力打攻坚战,学习软件工程首先要明白自己的学习目标究竟是什么,根据自己的实际工作出发,有针对性的在相应的学习方向上进行提高,制定出详细的学习规划。还要注意与其他科目的相辅相成,就像我们在学习面向对象分析的时候要结合大一学习的面向对象及其方法学这一专业科目进行研究拓展;在学习语言时,要看看与C语言的联系,多思多想,把从各个科目学到的知识通汇贯通。
在软件工程的学习中,我了解到了软件并非是一些代码这么简单,在开发软件的过程中,编写代码的工作量其实只占不到所有工程量的30%,而后期的管理和维护更是占了60%到80%之多。一个完整的项目规划须包括,软件的定义,可行性分析报告,项目开发计划,软件需求说明书,概要设计说明书,详细设计说明书,用户操作手册,测试计划,测试分析报告,开发进度报告,项目开发总结报告,软件维护手册,软件问题报告,软件修改报告,等多个文档,每个文档都要上级验收审查,而文档数量众多,要做好这点真的不是很容易,而恰恰写好文档正能保证完成软件工程其中一个目的的关键,既研究如何用最小的开销做出生存期较长的软件,再加上各个阶段都要进行周密的策划、详细的分工部署和人员安排,且各阶段要据具体情况不断的反复才能达成,所以代码只是开发软件这个浩大的工程的一个小小的过程。
而编码的学习中,我更了解到形成自己独特的规范的编码风格是非常重要的事。因为这影响到了软件后期繁重的维护,大家都要阅读你的程序,如果你写的程序毫无规范可言,那么别人怎么能读懂你的程序?读不懂程序,维护又从何谈起呢?所以,我们在今后的学习中,一定要注意这方面的培养,在写程序的过程中,要逐步的在规范的基础上形成属于自己的风格,即方便自己的修改,也方便日后他人的阅读。
在学习中,我们还要注意比较三种方法的优缺点,例如:传统方法虽然使软件摆脱了混乱和无序,但其在适应需求变化的方面不够灵活,而且传统方法要么面向行为,要么面向数据,缺乏两者的有机结合。而面向对象方法的程序设计和问题求解更符合人们日常自然的思维习惯,适合大型、复杂及交互性比较强的系统。形式化方法则是一中基于形式化数学变换的软件开发方法,它可将系统的规格说明转换为可执行的程序。
在今后的学习中要注意多读书、多思考、多练习、多讨论,不断熟悉书本的基础,并以此为基础将其扩散开来,应用于今后的实践。不断锻炼自己,向一名合格的程序设计师迈进。