软件工程心得体会Word下载.docx
- 文档编号:18508608
- 上传时间:2022-12-18
- 格式:DOCX
- 页数:14
- 大小:36.75KB
软件工程心得体会Word下载.docx
《软件工程心得体会Word下载.docx》由会员分享,可在线阅读,更多相关《软件工程心得体会Word下载.docx(14页珍藏版)》请在冰豆网上搜索。
时间真的很快,周六就要考试了,已上三年大学的我们都知道考试比神马都要重要,我们就开始了学习和实践结合的生产方式,据说这是最有效、最给力的,希望如此!
收获与体会
课程设计总会是要结束的,不管做得怎么样总归是要给老师看看我们的成果的,都做了这么多天了,成果虽然不是很理想,但是收获还是有的。
这期间学到了HTML页的编写方法,一些HTML的基本语法,也能编写出一个简单的页,对于互联应用程序的开发还要了解和解决络带宽的限制,服务器响应的时间比,知道了这么安装和配置TOMCAT服务器,在期间学习了UML用例图的绘制,软件工程开发的一些基本工具的使用,软件开发文档编写的方法和实践,人机交互应用程序开发时人机界面的设计,人机对话的实现,人性化的界面设等是需要认真努力做得,要充分考虑用户的感受和体验。
觉得“XX一下,你就知道”也不过如此,还是知识装在大脑里比神马都要重要,比任何来的知识都要详细和易懂。
打字速度也有了一定的提升。
努力与改进方向
经过本期的软件工程课程设计,发现了学习和实践中的不足。
互联的基础知识知道的太少了,相反需要了解和掌握的还很多,在下学期要开设一门计算机络课程,现在生活已经不能离开互联了,不管以后是否从事这方面的工作,这部分都是需要认真学习的,络应用程序的开发需要认真理解与提升。
软件工程中需求分析的不充分,软件开发方法的体会这些都是需要以后改进和学习的,软件开发中的各种文档编写能力还需要提升,在以后学习和实践中认真总结和完善,参考他人的软件工程项目,体会优秀软件工程的思想。
在做任何事情的时候都要有觉得是站在巨人的肩上,而不是重复的生产车轮的思想来坐事情,要对前人的经验教训加以总结,学习、参考和引用别人的先进研究成果,重视团队的协作,虚心的学习精神。
这期间得到了老师的悉心指导,得到了队员的理解,得到了同学们的热心帮助,谢谢你们!
2021年软件工程心得体会2
我们是20__年3月7号进入宏天实训公司参加软件开发实训的,在此次实训中,除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完成一个任务,懂得了享受工作。
当遇到问题,冷静,想办法一点一点的排除障碍,到最后获取成功,一种自信心就由然而生,这应该就是工作的乐趣。
有时候不懂的就需要问别人了,虚心请教,从别人的身上真的能学到自己没有的东西,每一次的挫折都会使我更接近成功。
还有学会了在工作中与人的合作与交流,同乐同累,合作互助,这是团体的精神,也是必须学习的东西。
经过之前的在校学习,对程序设计有了一定的认识与理解。
在校期间,一直都是学习理论知识,没有机会去参与项目的开发。
所以说实话,在实训之前,软件项目开发对我来说是比较抽象的,一个完整的项目要怎么分工以及完成该项目所要的步骤也不是很明确。
而经过这次实训,让我明白了一个完整项目的开发,必须由团队来分工合作,并在每个阶段中进行必要的总结与论证。
一个完整项目的开发它所要经历的阶段包括:
远景范围规划和用例说明、项目结构和风险评估、业务功能说明书、详细设计说明书、代码实现、测试和安装包等等。
一个项目的开发所需要的财力、人力都是很多的,如果没有一个好的远景规划,对以后的开发进度会有很大的影响,甚至会出现在预定时间内不能完成项目或者完成的项目跟原来预想的不一样。
一份好的项目结构、业务功能和详细设计说明书对一个项目的开发有明确的指引作用,它可以使开发人员对这个项目所要实现的功能在总体上有比较明确的认识,还能减少在开发过程中出现不必要的麻烦。
代码的实现是一个项目开发成功与否的关键,也就是说,前期作业都是为代码的实现所做的准备。
我深刻的认识到要成为一名优秀的软件开发人员不是一件容易的事情,不仅要有足够的干劲和热情,还要有扎实的编写代码基础,必须要有事先对文档进行可靠性报告,功能说明书,详细设计说明书等的编写和一些风险评估的编写的能力。
2021年软件工程心得体会3
对于一个软件系统的开发,第一步就是问题定义,了解所开发系统的行业背景,制定计划。
当我们计划确定以后就要对项目系统本身进行可行性研究,主要从技术可行性、经济可行性和操作可行性三个方面着手。
就比如《物联物流仓库管理系统》的行业背景说明文档中非常详细地分析了当下物联物流行业的整体业务说明、应用背景、未来发展趋势以及相关应用案例等四个方面,项目团队中系统分析员就可以根据这份文档以及相关的调查资料对将要开发系统的进行定义等工作。
原来我们写这类文档的时候就是草草了事,不会做得这么详细,而这次看到大型项目的行业背景说明也是这么详细,也让自己认识到不管是软件开发的那个阶段都要认真对待,这些琐碎的文档都是后期开发项目的支撑,只要它们做的透彻,后面的开发工作才能更顺利的进行。
第二、项目需求说明方面
这部分项目需求说明就是软件定义时期中需求分析阶段,而该阶段的主要目的就是了解用户的需要,根据用户的需要确定系统必须完成那些工作,并对目标系统提出完整、准确、清晰、具体的要求。
在需求分析结束之前系统分析人员要写出一份需求规格说明,即为《物联物流仓储管理系统》项目需求说明文档。
我们可以看出该文档也是非常详细,相比之下我们之前做项目时写的需求规格说明书就非常不合格,不仅格式不正确内容也是少之又少。
在这方面,这篇文档给我启发很大。
首先就是文档的格式,要美观整齐,让人看着舒服方便。
其次就是文档的内容,原来它不是很重要,写文档的时候也不知道怎么写就借鉴下上的内容,结果根本就没有把自己项目的需求写明白,以至于自己最后都有些糊涂,所以根据以前的经验教训我会对这部分更加重视。
第三、系统概要设计方面
这部分内容分说的是软件设计时期的概要设计阶段,该阶段的主要目的就是实现系统的功能、设计软件的结构、模块组成以及模块之间的关系。
在概要设计阶段,我们可以站在全局的高度上,花较少的成本,从抽象的层次上分析对比多种可能的系统实现方案和软件结构,从中选出最佳方案和最合理的结构。
在这个阶段还会具体画出E-R图、数据流图等方面的设计。
比如《物联物流仓库管理系统》的系统概要设计从项目概述、设计约束、功能单元与功能模块设计、数据E-R图设计、总体设计、界面设计等六个方面介绍,通过读这个文档,我觉得最重要的还是总体设计,分别从逻辑架构设计、物理架构设计、技术架构设计设计系统。
在这个阶段中模块要做到高内聚低耦合,这样开发出来的系统才会具有更高的独立性。
在原来做项目时没有编写过这类文档,在该阶段只是画了结构图、层次图以及相关的模块划分,对该类文档尚未重视。
通过张老师的讲解和自己的学习,我相信在以后做项目的时候一定会注意到这类文档的编写。
第四、详细设计与分析方面
详细设计阶段就是把概要设计阶段的每个模块进一步设计,确定每个模块所需要的算法和数据结构。
在这个阶段还是需要我们设计出程序的详细规格说明,而不是编写程序。
在详细设计阶段,系统设计人员可以通过使用程序流程图、盒图、PAD图等过程设计的工具和Jackson图等面向数据结构的设计工具进一步设计系统相关接口,主要包括界面设计接口、业务单设计接口、单元模块设计接口等,这些对于以后的编码工作都是极其重要的。
第五、编码和测试方案方面
关于编码,我认为编码要想做的完美必备条件就是前面的软件定义和软件设计时期要按部就班的做,文档一定要按要求书写,不能偷懒也不能草草书写。
对于编码也要有相应的文档书写规范,要使源程序代码的逻辑简明清晰、易读易懂。
这样尽管我们不是设计系统的人员,当看到源程序代码的时候也能容易读懂代码的意思。
其次就是测试的内容,从测试的文档中我们可以得出,其实测试在软件开发中同样占据了重要的地位,它主要就是尽可能多的找到问题并排除其中的潜藏的错误,最终把一个高质量的软件系统交给用户使用。
它要求测试人员也要有很高的技术水平。
2021年软件工程心得体会4
学习了这门课程,还有老师们的多元化教课,不但让我从理论上掌握软件工程,还有从不同的实例,让理论和实践得到了很好的结合。
整一个学期下来,总的来说还是学到了很多东西的,有很多地方是值得肯定的,其实在我看来,软件工程与其说是一门课程,不如说是一门思想。
是一个如何去分析和处理问题的过程,应该说其范畴已经远远不止局限于该门课程,成为了一个综合的一个能够解决问题的思想集合。
整本书的内容逻辑很清晰明了,由浅入深循序渐进,首先我就大概描述下我们所学的内容,第一章是从整体分析软件工程这门学科的发展和所处的社会环境,接着后面的几章深入分析了软件开放过程和模式、软件项目管理、计算机工程、需求分析、结构化分析建模以及基于UML面向对象分析建模等。
接着我就详细介绍下我对这门课程知识点的理解概括:
软件:
软件是能够完成预定功能和性能的可执行的计算机程序和使程序正常执行所需要的数据,加上描述程序的操作和使用的文档。
软件的特征:
①软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。
②软件是通过人们的智力活动,把知识与技术转化成信息的一种产品。
③软件成为产品后,其生产只是简单的拷贝,不同于硬件制造。
④维护过程比硬件复杂的多,甚至会引发新的错误。
软件危机:
指的是软件开发和维护过程中遇到的一系列严重问题。
出现软件危机的原因:
①软件维护费用急剧上升,直接威胁计算机应用的扩大。
②软件生产技术进步缓慢。
软件工程是指导计算机软件开发和维护的工程学科。
软件生存周期:
一个软件从定义到开发、使用和维护,直到最终被弃用,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期。
软件的生存周期可分为八个阶段:
①问题定义;
②可行性研究;
③需求分析;
④总体(概要)设计;
⑤详细设计;
⑥编码与单元测试;
⑦综合测试;
⑧软件维护;
瀑布模式:
是传统的软件开发模式,其中的“瀑布”是对这个模式的形象表达,由山顶倾泻下来的水,自顶向下、逐渐细化。
其特点是:
线性化过程;
分为分析、设计、编码、集成等几个阶段,并且各阶段逐级推进,不允许跨越。
里程碑管理;
阶段评审;
文档驱动;
简洁便于工程应用的线性化过程步骤,并可以通过里程碑管理机制而使项目进程量化。
其明显的优点就是没个阶段结束前都要对所完成的阶段成果进行评审,这使得软件的错误能够在个阶段内尽早发现并尽早解决,总的来说瀑布模式具有良好的质量保证机制,有很强的生命力。
原型进化模式:
对软件进行直接模拟或仿真,只需要分析需求框架后进行原型创建,再对原型系统进行逐步细化与完善,通过版本更新逐步满足用户对于软件的多方面需要。
增量模式:
开发过程有三个任务域,分别是设计结构、开发构件和集成系统,它既有完善的工程管理机制,又能适应用户需求变更,有利于质量的监控,并且各局部基于构件构造,有利于逐步构建与完善;
由于先交付核心构件可利于降低项目的技术风险。
螺旋模式:
是一种可较好的规避开发风险过程的模式,项目是基于任务的螺旋式推进,每个螺旋由内之外分别是需求分析、软件设计、系统集成、验证与交付。
软件开发的整个过程:
①需要项目团队,组建优秀的团队可以开发出更搞质量的软件产品。
任务开发团队要求小而精,成员大多在8人以内,主要成员有项
目负责人、开发人员、资料管理员和软件测试员。
②项目计划是为了使软件开发各项工作有秩序地进行,包括任务分配和基于里程碑的进度安排,甘特图和任务络图是用来描述进度计划的工具。
项目计划书可以作为软件开发的工作指南。
③项目成本估算,由于项目有来自各方面的成本包括工资开支、场地费、差旅费、设备费和资料费等,但是软件主要是对人力成本的估算,常用的方法有程序代码成本估算法等。
④软件风险管理包括很多不确定的风险因素,如计划风险、管理风险、需求风险、技术风险、人员风险、产品风险、用户风险和商业风险等等,而风险管理的主要任务是:
风险识别、风险评估、和风险防范。
⑤软件文档管理,软件文档是工程模式软件开发的成果体现,包括技术文档、管理文档和用户文档。
⑥软件配置管理与软件质量管理,包括配置规划、软件变更控制、软件版本控制和质量控制计划。
计算机系统由硬件、软件、数据资源、络资源、使用系统的人等诸多元素。
有三种典型的计算机体系结构:
①主机结构,主机集中了全部智能,并依靠终端接口与外部设备连接。
②Client/Server结构,智能分布于服务器与客户机,并依靠络连接成系统,其中,服务器处于核心位置,提供被动核心服务;
客户机处于边缘位置,可主动访问服务器,寻求服务支持。
③Browser/server结构,可适应互联远程交互的特殊结构,基于Web服务器构建。
需求分析:
系统开发前期需求分析很重要,它是为了有效解决用户问题的需要进行的一项工程活动,所需要考虑的需求问题是功能需求、数据需求、性能需求和接口需求,开发者承担分析任务,核心是用户。
其步骤有三个:
①获取客户需求,客户泛指某个人或机构部门等,一般方法是调查,包括访谈、座谈、问卷、跟班和收集资料,需求规约可表达用户的软件价值。
②建立需求模型,它是用户需求的图解,一些常用的模型有:
业务树图、用例图、活动图。
分别用于结构化需求建模、系统业务举例和反映系统工作流程。
③进行需求验证,要验证的主要内容有:
有效性验证、一致性验证、完整性验证、现实性验证和可检验性验证。
结构化分析建模:
它是建立在需求规约基础上的,对软件问题进行全面解说,包括四个方面:
①数据建模,它与数据库设计密切相关,ER图涉及实体、关系、属性等图形元素,在业务层面建立数据库概念模型,一般用于前期的建模构想。
②功能建模,是对系统数据加工的图解,数据流程图是常用的建模工具,涉及数据接口、数据处理、数据流、数据存储等图形元素,用于描述系统数据加工细节。
③行为建模,行为模型用于说哦名软件系统与环境的交互,状态转换图常用的软件行为建模工具涉及状态、事件等图形元素。
⑤数据字典,是用于定义软件的元素,使软件元素获得严肃的、详密的、精确的规格说明。
需求分析模型中的数据、功能、行为等诸多方面的元素,都有必要通过数据字典给予细节说明,以达到对系统较完整全面的规格定义。
基于UML对象面向对象分析建模:
UML是统一建模语言,有统一的语法、语义和语用规则,其建模过程的特点是:
用例驱动、以构架为中心和增量迭代,通过包实现对模型的有效的一体化管理。
包括三部分:
①用例建模,它面向用户需求的,能够反映系统的用户价值,用例图的基本元素有用例、参与者、交流;
用例之间有泛化、延伸和包含关系。
②活动建模,活动图用于描述系统动态过程,主要图形元素有:
活动、转换、起点、终点、判断、并发、同步、泳道等。
可描述高层业务级活动,涉及整个业务流程,针对每个用例活动建模,反映用例内部活动细节。
③类分析建模,这里就只考虑实体类,实体类所代表的数据相互之间通常有一定的关系,依靠这种关系可形成有组织的程序数据结构。
实体类之间的
主要数据关系有:
关联、聚类、泛化。
接下来我就简单说下我上这门课的简单的心得体会,我们是大四的学生了,也只有这个学期有课了,刚开始课表安排出来的时候觉得挺意外的,只有前八周有课,当时我还是有点小感动的,大四事情很多,有要考研的和工作的,大家也都有各自的事情,如果有16周的课,那么每周课不是特别多,但是时间特别分散,也不能集中某段时间去做什么事情。
但是相对于老师的压力也有,课程压缩了相当于每节课的教学任务大大增加了,在加上有些假期冲掉课,就感觉我们好像上课学不到什么东西,也只是一些关键的和考试挂钩的才重点讲,完全没有扩展的时间和空间了。
但是总的来说,学校开了这门课,我们上了这门课,总是学到了点东西的,不可能明明上了软件工程这门课,却像没上一样什么都不懂。
在上课的时候我还是很认真地去听老师所讲述的内容的,我觉得他的思想和我一向而来的培养计算机学生综合素质的理解还是在一定程度上不谋而合了,所谓的需求获取,那就是一个谈判,辩论,交流的过程,已经不是单纯的编编程序就能解决的问题了。
从我所看到的听到的来说,我最怕的就是计算机系的学生被别人说成是个带着厚眼镜的,只能够在电脑前编编程序的,在交际场上不知道说什么而一个字都说不出来的人。
我觉得这样的人进入社会之后是没有什么前途的,起码他们缺乏了与人沟通交流的能力。
而这门课程在一定程度上给了我们这些学生一个机会来锻炼自己在另一方面的能力,设想一下,一个又有技术又能够与人交流合作的人所取得的成就自然要比一个单单只会编程序的人要大得多。
其次,这门课程教给了我们在完成一个实际项目时的一般程序及过程,我认为这是一份非常具有实际意义的教学内容。
当我们在毕业之后,这是我们实际要运用的一项非常有用的技能,而且不仅仅局限于软件工程的范畴,我们即使是从事与其它行业,不也是要从需求获取开始,一直有条有理地到最后成品的出炉吗?
应该说这就是这门课的价值所在。
无论是在上课,还是在学生会里面做学生工作,我都深深地感觉到,技术性的工作就好比变魔术,其实原理是非常简单的,甚至可以说简单的可笑,但是当你就是做出这么一个简单的东西出来之后,一些外行们有时候会用崇拜的眼光看着你,觉得你很厉害,很高深莫测。
但是制作的过程他们却不知道,也许知道之后他们只是会哑然失笑,原来这个东西的制作过程是如此的简单。
这个可以说就是技术的魅力了,而作为需求获取及之后的一系列过程则是类似于魔术揭秘的过程,但是作为这个秘密我们并不需要一揭到底,至于揭的程度如何那就是我们那就是我们学出的程度如何了,我们要让对方知道我们在做什么?
以及如何去做?
这些东西需要我们以一定的技巧叙述出来,所起到的作用就是能够让对方了解自己的进度,却又能够不让对方来干涉自己的工作过程。
因为我们是技术员,对方只是外行,即使对方知道了这个魔术的操作过程,也并不代表他们就能够向变着魔术的我们来随便修改这个魔术的变法,况且我们能够用不同的过程来得出一个同样的结果,这个过程的得出的主动权如何掌握在我们的手上,就看我们如何以高明的方式来揭开这个魔术的谜底了。
当然了,在纯粹的理论上,我觉得开设这样一门课程是很成功的。
但是毕竟现实里有太多的不确定的因素。
最重要的因素就是授课的老师和听课的学生。
这两个可以说是这门课成与败的决定性的因素。
作为我们学生来说,应该负起比较主要的责任。
在大学里有了太多的基础课程,基础课程大多都比较枯燥无味,也许在第一个学期里我们还能够保持着新鲜感,但是在6学期之后,可以说再有新鲜感就是一件比较困难的事情了,我们都已经开始变得迟钝了。
其次的,没有认识到这门课程的价值。
这门课的价值我已
经在上面说过了,是不言而喻的。
但是并不是每个同学毕业之后都回从事计算机行业,也不是每个同学都知道这门课程的意义已经不仅仅局限于计算机这个范畴。
或许有些人觉得反正以后不是这个发展方向,也就不在乎这个课程吧。
我个人觉得这门课确实是挺好的,如果认真学必能学到很多东西,动手实践能力和从整个大体分析系统开发的逻辑性思维也会明显增强,不管以后从事哪个方面的工作,这对以后来说都是一笔很大的隐性财富。
说到我自己对这么课的学习,还是有点愧疚的,前面四周我每周每节课都去上的,并且上课也认真听,一边听老师讲课一边自己看书本的介绍,但是后来我上这门课的次数就降低了,因为觉得时间很紧吧,而且老师上课的节奏我个人觉得有点慢,我都可以自己预习看到后面去了,但是这门课我还是每周至少上一节课的,虽然我早上7点多一点就出门,在自习室,但是有时候明明知道到了上课的时间,明明上课的地方离自习的地方不远也不太想去。
我记得有次上课时候老师生气了,说来上课的人少,我仔细环顾了下四周发现确实人很少,稀稀疏疏的分散着,看起来确实不太舒服,让我不得不反思了,这大学的教育到底怎么了,怎么到了大四大家都不来上课,虽然我不是每节课都来,但是我还是时不时来上课的,可能是比较浮躁吧,快毕业了,觉得上课学不到什么实际的东西,要么实际一点好好考研继续深造,要么去培训增强实践能力这样才能较好的为找个满意的工作做好铺垫。
《软件工程》课程既强调基本概念和基本知识的理解和掌握,又侧重软件项目的分析、设计、实现和维护的基本技能。
比较注意“点”和“面”的结合。
我还是蛮喜欢这门课的,通过对这门课的学习让我意识到理论学习很重要,实践更重要,实践是检验真理的唯一标准,只有将理论与实际结合,才更能发挥我们所学的知识的作用,更能直接的创造效益,社会和国家做出贡献。
2021年软件工程心得体会5
时间过的很快,转眼间已经实习将近5个月,其中有2个月是属于完全被流放的。
最先在内部系统组参与内部管理系统开发(struts+mysql+spring+hibernate),之后是去做络交换机软件的脚本测试。
现在又回归内部系统,虽然在脚本组期间,编码能力被别人甩在后头,但至少具有了一些测试经验。
至少自己做的东西,是真正交付到了客户手上,到也稍微有些成就感。
1、浅谈测试
一直以来,我都认为测试是脱离了软件工程范围的工作,不以为屑。
但在实
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 心得体会