心中有不少心得体会时,不如来好好地做个总结,写一篇心得体会,如此可以一直更新迭代自己的想法。我们想要好好写一篇心得体会,可是却无从下手吗?以下是小编帮大家整理的心得体会范文,欢迎大家借鉴与参考,希望对大家有所帮助。
软件工程心得体会篇一
软件工程,就是一套用于软件的团队开发,以提高软件质量和程序员工作效率为目的的规范。你知道软件工程心得体会是什么吗?接下来就是本站小编为大家整理的关于软件工程心得体会,供大家阅读!
时间飞逝,不知不觉间《软件工程》的学习已经过了大半了。在这将近半学期的学习中,虽然我不能说我将《软件工程》学习的有多么的好,但是通过学习,我还是受益良多。
在以前,我一直对软件存在一些偏见或则是误解,认为软件就是程序,软件的开发就是编写程序,只要编完了程序,一切也就ok了,而且我还片面的认为只要我掌握了时下最新的语言和工具,那么我就能写程序了。一个人,只要会编程,就能写软件,就是程序员;一个公司,只要招聘一些程序员,就能开发好的软件产品。只要有几个有经验的程序员,再找些兼职的大学生,就能组成一个软件公司。
但是通过了《软件工程》这门课的学习,使我认识到了我以前的错误。软件其实不仅仅是程序,软件开发其实也不仅仅是编写程序,软件是思想在硬件上的载体和体现,处理的是逻辑和信息。唯有对软件和软件的开发过程,有充分的认识,才能更好的开发出,过程受控、质量受控的软件产品。
而且在以前,我一直以为软件的开发其实是一件很轻松快乐的事情,只要一天坐在电脑旁敲敲键盘,那么一切就可以了,但是现在我才发现,我以前的很多的思想是多么的肤浅可笑。编程其实是一种乐趣和苦恼共存的一项创造性活动。因为编程不仅能够满足我们内心深处进行创造的渴望,而且还能愉悦我们内在的情感。
而且通过学习《软件工程》,我还学到了很多其他的东西。比如通过学习《软件工程》,特别是老师每次用实际的软件现场的讲解,为我提供了一个尽早接触世界工作和真实项目的机会。让我知道如何在以最小的成本中,训练自己的基本工程素质和能力,如何激发自己的积极性等。而且通过学习《软件工程》,还让我认识和培养了我的团队协作能力,特别是对于我们这些在校的学生来说,这种学习更是能让我在以后工作中少走很多的弯路。
所以,通过《软件工程》的学习,我是真的学习到了很多有用的东西,让我明白了很多的道理。在此我对老师的辛勤教育表示感谢,因为是你让我学习到了这些,是我获益良多。
软件工程心得体会未接触软件工程之前一直都很想学这门课程,因为觉得这门课很牛,是那些有工程师称号的高手才摆弄的东西。学了一个学期的软件工程课,终于知道了个软件工程的大概。学的时候总觉得很抽象,理解起来好像不难,但总是摸不着头脑一种很茫然的感觉。曾经以为程序就是软件,软件就是程序。学习这门课程第一个收获是,知道了二者的不同之处。以前做过的一些小型的软件比如加密软件,我也只是在程序旁边附上一个软件的说明,看来已经很接近作坊了。不过大的项目没有接触过,用软件工程的方法还是第一次。我想也是程序的不断复杂化导致了软件危机的发生,使得人们不得不探索新的解决方法。
经过倪老师的讲解,理解了软件工程,就是一套用于软件的团队开发,以提高软件质量和程序员工作效率为目的的规范。其核心就是,对于软件开发的5个重要组成部分:需求分析,设计,编码,调试,维护,如何组织这5个部分的工作,以及如何完成每一个工作。吾生也有涯,而知也无涯,学习永无止境。起初,对软件工程处于一知半解的状态,分工比较混乱。
在划分模块后明确了各自分工,渐渐形成良性循环。在学习过程中,知道了团队合作十分重要,争议固然存在,但通过讨论、协商,群策群力,在不断磨合中能够达成一致与默契。团队成员中能力各有高下,互相尊重,各取所长,不宜妄自菲薄。组长多加协调,组员积极配合,才能合作愉快。学习能力体现在能尽快接受新的知识,顺应变化,学为所用。
上《软件工程导论》这门课,我的收获大概如下:我们为什么需要软件工程呢?上面已经给出了一些原因。专业点讲,软件工程最终是为了实现“软件制造业”的社会化,工业化大生产,提高其劳动生产效率。只有如此,软件业才能实现社会化,工业化大生产,才能“做大做强”。没有管理的设计是失败和混乱的设计,没有设计指导的编程是无序的忙碌的。根据开发的软件的规模,应该适当程度的运用软件工程化的思想,需要灵活,毕竟我们开发的软件大多数是中小型的,大型的并不多见(我是这么认为的)。但只要涉及人员间的交流和沟通,或多或少都要需要软件工程才能更有效率,工作成果更稳定。
其实开发软件,就像是解决一个逻辑问题。想想自己平时是怎样写程序的。首先是要有一个想法,即我写的这个程序是要干什么的;然后就是对要实现的核心功能大概构思一种或多种实现方法,并从中选出一种自认为是较好的;接下来就是将涉及的各种主要或次要功能分成各个模块;最后就是分模块来编码和debug。在我看来,除了第一步外,其余的步骤应该是一个循环的过程。在编码的过程中,你总是需要不断地回过头来修改原先的模块设计,甚至最初选定的实现算法。具体到每一步的工作要怎样完成,是非常灵活的,只要把握住大体的方向就行。在进行分析,设计,编码,调试,维护这几部分的工作的时候,最核心的就是文档的编写。1.可行性分析就是关于当前项目能不能干的分析结果。
2.项目描述这是在决定立项以后,对当前项目的一份扼要说明。
3.需求分析就是对客户要求的功能的定义。
4.软件设计这就是对程序的每一个模块的详细设计的说明文档。
5.开发日志我一直都认为这是文档中最有趣的部分。开发日志相当于编码阶段的文档,它的形式可以很随意,主要是记录一些在写程序时突然萌发的灵感,或对代码的一些微小的修改,或对程序结构的一些微小变动等,还要对上述这些修改变动作些说明。
6.测试分析用于指出程序存在或潜在的缺陷和错误,以及程序性能的数字描述。
共2页,当前第1页12软件工程心得体会篇二
按照软件工程的软件过程来说:
1需求分析产生了软件功能规格说明书,需要确定用户对软件的需求,要作到明确、无歧义。不涉及具体实现方法。用户能看得明白,开发人员也可据此进行下面的工作(概要设计)。
2.概要设计产生了软件概要设计说明书,说明系统模块划分、选择的技术路线等,整体说明软件的实现思路。并且需要指出关键技术难点等。
2.本系统在高校应用后将在高校各方面的成本将会有所降低;
3.本系统在高校应用后将教职工的工资达到完全透明,计算更加精确教职工因纠纷事件减少到1%。 根据分析将系统的功能从一般教职工与系统管理者两个角度将功能划分为7个模块,当然介于我们的知识有限,有的功能没有实现:员工工资与考勤直接挂钩,但本系统无法与员工考勤系统挂钩相连,由于涉及此系统时该高校并没有员工考勤系统,而且我们在最初进行商量的时候也没有提出该要求。
从概要阶段开发正式进入软件的实际开发阶段,本阶段完成系统的大致设计并明确系统的数据结构与软件结构。在软件设计阶段主要是把一个软件需求转化为软件表示的过程,这种表示只是描绘出软件的总的概貌。由概要设计说产生大的概要说明书的目的就是进一步细化软件设计阶段得出的软件总体概貌,把它加工成在程序细节上非常接近于源程序的软件表示。
在本阶段主要涉及处理流程的设计、总体结构和模块外部设计、功能分配。在接口设计上有用户接口、外部接口、内部接口;数据结构设计有逻辑结构设计、物理结构设计等等。在接口设计时参考了大量的资料。
最后就是编写文档——软件需求说明书、概要分析说明书。
而文档的作用在于:一是可以帮助整理思路。把要完成的目标,系统的结构,每一个模块的功能等整理一下,然后分门别类地写下来,这样在开发的过程中,就有据可依,在需要回过头来修改设计的时候,也有证可考。二是便于交流。三是可以作为以后维护时的参考资料。
我们进行了为期一周的课程设计。通过这次课程设计,我拓宽了知识面,锻炼了能力,综合素质得到较大提高。安排课程设计的基本目的,在于通过理论与实际的结合、人与人的沟通,进一步提高思想觉悟。尤其是观察、分析和解决问题的实际工作能力,以便培养成为能够主动适应社会主义现代化建设需要的高素质的复合型人才。作为整个学习体系的有机组成部分,课程设计虽然安排在一周进行,但并不具有绝对独立的意义。它的一个重要功能,在于运用学习成果,检验学习成果。运用学习成果,把课堂上学到的系统化的理论知识,尝试性地应用于实际设计工作,并从理论的高度对设计工作的现代化提出一些有针对性的建议和设想。检验学习成果,看一看课堂学习与实际工作到底有多大距离,并通过综合分析,找出学习中存在的不足,以便为完善学习计划,改变学习内容与方法提供实践依据。对我们信息管理与信息系统专业的学生来说,实际能力的培养至关重要,而这种实际能力的培养单靠课堂教学是远远不够的,必须从课堂走向实践。这也是一次预演和准备毕业设计工作。通过课程设计,让我们找出自身状况与实际需要的差距,并在以后的学习期间及时补充相关知识,为求职与正式工作做好充分的知识、能力准备,从而缩短从校园走向社会的心理转型期。课程设计促进了我系人才培养计划的完善和课程设置的调整。
在一个星期的课程设计之后,我们普遍感到不仅实际动手能力有所提高,更重要的是通过对软件开发流程的了解,进一步激发了我们对专业知识的兴趣,并能够结合实际存在的问题在专业领域内进行更深入的学习。
软件工程课程虽已结束,但我对于软件工程的学习才刚刚开始。我体会到项目管理的重要性,随着软件规模、复杂度的不断增加,项目开发中更多的是协作、管理和控制。我学习到很多一般性的方法,例如:需求获取、模块化、计划等等。同时,我也认识到使用计算机解决实际问题的复杂性,人们认识表达的过程不断反复、逐步深化,软件工程方法要提供给程序员们一种更加有效的对客观世界问题域进行形式化的过程方法。
软件工程心得体会篇三
时间飞逝,不知不觉间《软件工程》的学习已经过了大半了。在这将近半学期的学习中,虽然我不能说我将《软件工程》学习的有多么的好,但是通过学习,我还是受益良多。
在以前,我一直对软件存在一些偏见或则是误解,认为软件就是程序,软件的开发就是编写程序,只要编完了程序,一切也就ok了,而且我还片面的认为只要我掌握了时下最新的语言和工具,那么我就能写程序了。一个人,只要会编程,就能写软件,就是程序员;一个公司,只要招聘一些程序员,就能开发好的软件产品。只要有几个有经验的程序员,再找些兼职的大学生,就能组成一个软件公司。
但是通过了《软件工程》这门课的学习,使我认识到了我以前的错误。软件其实不仅仅是程序,软件开发其实也不仅仅是编写程序,软件是思想在硬件上的载体和体现,处理的是逻辑和信息。唯有对软件和软件的开发过程,有充分的认识,才能更好的开发出,过程受控、质量受控的软件产品。
而且在以前,我一直以为软件的开发其实是一件很轻松快乐的事情,只要一天坐在电脑旁敲敲键盘,那么一切就可以了,但是现在我才发现,我以前的很多的思想是多么的肤浅可笑。编程其实是一种乐趣和苦恼共存的一项创造性活动。因为编程不仅能够满足我们内心深处进行创造的渴望,而且还能愉悦我们内在的情感。
而且通过学习《软件工程》,我还学到了很多其他的东西。比如通过学习《软件工程》,特别是老师每次用实际的软件现场的讲解,为我提供了一个尽早接触世界工作和真实项目的机会。让我知道如何在以最小的成本中,训练自己的基本工程素质和能力,如何激发自己的积极性等。而且通过学习《软件工程》,还让我认识和培养了我的团队协作能力,特别是对于我们这些在校的学生来说,这种学习更是能让我在以后工作中少走很多的弯路。
所以,通过《软件工程》的学习,我是真的学习到了很多有用的东西,让我明白了很多的道理。在此我对老师的辛勤教育表示感谢,因为是你让我学习到了这些,是我获益良多。
软件工程心得体会篇四
软件工程心得体会未接触软件工程之前一直都很想学这门课程,因为觉得这门课很牛,是那些有工程师称号的高手才摆弄的东西。学了一个学期的软件工程课,终于知道了个软件工程的大概。学的时候总觉得很抽象,理解起来好像不难,但总是摸不着头脑一种很茫然的感觉。曾经以为程序就是软件,软件就是程序。学习这门课程第一个收获是,知道了二者的不同之处。以前做过的一些小型的软件比如加密软件,我也只是在程序旁边附上一个软件的说明,看来已经很接近作坊了。不过大的项目没有接触过,用软件工程的方法还是第一次。我想也是程序的不断复杂化导致了软件危机的发生,使得人们不得不探索新的解决方法。
经过倪老师的讲解,理解了软件工程,就是一套用于软件的团队开发,以提高软件质量和程序员工作效率为目的的规范。其核心就是,对于软件开发的5个重要组成部分:需求分析,设计,编码,调试,维护,如何组织这5个部分的工作,以及如何完成每一个工作。吾生也有涯,而知也无涯,学习永无止境。起初,对软件工程处于一知半解的状态,分工比较混乱。
在划分模块后明确了各自分工,渐渐形成良性循环。在学习过程中,知道了团队合作十分重要,争议固然存在,但通过讨论、协商,群策群力,在不断磨合中能够达成一致与默契。团队成员中能力各有高下,互相尊重,各取所长,不宜妄自菲薄。组长多加协调,组员积极配合,才能合作愉快。学习能力体现在能尽快接受新的知识,顺应变化,学为所用。
上《软件工程导论》这门课,我的收获大概如下:我们为什么需要软件工程呢?上面已经给出了一些原因。专业点讲,软件工程最终是为了实现“软件制造业”的社会化,工业化大生产,提高其劳动生产效率。只有如此,软件业才能实现社会化,工业化大生产,才能“做大做强”。没有管理的设计是失败和混乱的设计,没有设计指导的编程是无序的忙碌的。根据开发的软件的规模,应该适当程度的运用软件工程化的思想,需要灵活,毕竟我们开发的软件大多数是中小型的,大型的并不多见(我是这么认为的)。但只要涉及人员间的交流和沟通,或多或少都要需要软件工程才能更有效率,工作成果更稳定。
其实开发软件,就像是解决一个逻辑问题。想想自己平时是怎样写程序的。首先是要有一个想法,即我写的这个程序是要干什么的;然后就是对要实现的核心功能大概构思一种或多种实现方法,并从中选出一种自认为是较好的;接下来就是将涉及的各种主要或次要功能分成各个模块;最后就是分模块来编码和debug。在我看来,除了第一步外,其余的步骤应该是一个循环的过程。在编码的过程中,你总是需要不断地回过头来修改原先的模块设计,甚至最初选定的实现算法。具体到每一步的工作要怎样完成,是非常灵活的,只要把握住大体的方向就行。在进行分析,设计,编码,调试,维护这几部分的工作的时候,最核心的就是文档的编写。1.可行性分析就是关于当前项目能不能干的分析结果。
2.项目描述这是在决定立项以后,对当前项目的一份扼要说明。
3.需求分析就是对客户要求的功能的定义。
4.软件设计这就是对程序的每一个模块的详细设计的说明文档。
5.开发日志我一直都认为这是文档中最有趣的部分。开发日志相当于编码阶段的文档,它的形式可以很随意,主要是记录一些在写程序时突然萌发的灵感,或对代码的一些微小的修改,或对程序结构的一些微小变动等,还要对上述这些修改变动作些说明。
6.测试分析用于指出程序存在或潜在的缺陷和错误,以及程序性能的数字描述。
软件工程心得体会篇五
需求获取可能是最困难、最关键、最易出错及最需要沟通交流的活动。对需求的获取往往有错误的认识:用户知道需求是什么,我们所要做的就是和他们交谈从他们那里得到需求,只要问用户系统的目标特征,什么是要完成的`,什么样的系统能适合商业需要就可以了,但是实际上需求获取并不是想象的这样简单,这条沟通之路布满了荆棘。首先需求获取要定义问题范围,系统的边界往往是很难明确的,用户不了解技术实现的细节,这样造成了系统目标的混淆。
其次是对问题的理解,用户对计算机系统的能力和限制缺乏了解,任何一个系统都会有很多的用户或者不同类型的用户,每个用户只知道自己需要的系统,而不知道系统的整体情况,他们不知道系统作为一个整体怎么样工作效率更好,也不太清楚那些工作可以交给软件完成,他们不清楚需求是什么,或者说如何以一种精确的方式来描述需求,他们需要开发人员的协助和指导,但是用户与开发人员之间的交流很容易出现障碍,忽略了那些被认为是"很明显"的信息。最后是需求的确认,因为需求的不稳定性往往随着时间的推移产生变动,使之难以确认。为了克服以上的问题,必须有组织的执行需求的获取活动。
需求获取活动要完成的任务或者步骤的过程如下:
系统的需求包括四个不同的层次:业务需求、用户需求和功能需求、非功能性需求。业务需求说明了提供给用户新系统的最初利益,反映了组织机构或用户对系统、产品高层次的目标要求,它们在项目视图与范围文档中予以说明。用户需求文档描述了用户使用产品必须要完成的任务,这在使用实例文档或方案脚本说明中予以说明。功能需求定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求。
非功能性需求是用户对系统良好运作提出的期望,包括了易用性、反应速度、容错性、健壮性等等质量属性。需求获取就是根据系统业务需求去获得系统用户需求,然后通过需求分析得到系统的功能需求和非功能需求。项目视图和范围文档就是从高层次上描述系统的业务需求,应该包括高层的产品业务目标,评估问题解决方案的商业和技术可行性,所有的使用实例和功能需求都必须遵从的标准。而范围文档定义了项目产品所包括的所有工作及产生产品所用的过程。项目相关人员对项目的目标和范围能达成共识,整个项目组都应该把注意力集中在项目目标和范围上。
系统用户在很多方面存在着差异,例如:使用系统的频度和程度、应用领域和计算机系统知识、所使用的系统特性、所进行的业务过程、访问权限、地理上的布局以及个人的素质和喜好等等。根据这些差异,你可以把这些不同的用户分成不同的用户类。与ulm中usecase的actor概念一样,用户类不一定都指人,也可以包括其他应用系统、接口或者硬件,这样做使得与系统边界外的接口也成为系统需求。将用户群分类并归纳各自特点,并详细描述出它们的个性特点及任务状况,将有助于需求的获取和系统设计。
通常用户和开发人员不自觉的都有一种"我们和他们"的想法,产生一种对立关系,把彼此放在对立面,每一方都定义自己的"边界",只想自己的利益而忽略对方的想法。他们通过文档、记录和对话来沟通,而不是作为一个合作的整体去识别和确定需求完成任务。实践证明这样的方法是不正确的,不会给双方带来一点益处,良好的沟通关系没有建立导致了误解和忽略重要的信息。只有当双方参与者都明白要成功自己需要什么,同时也知道要成功对方需要什么时,才能建立起一种合作关系。
为了建立合作关系通常采取一种组队的方式来获取需求,建立一个由用户代表和开发人员组成的联合小组作为需求获取的核心队伍。联合小组将负责识别需求、分析解决方案和协商分歧,小组成员可以采用会议、电子邮件、综合办公系统等方式进行交流,但交流时应注意以下原则:小组会议应该由中立方来组织和主持,用户和开发人员都要参加;交流预先要确定准备和参与的规则;议题要明确并覆盖所有关键点,但信息来源应该自由;交流目标要明确,并告知所有的成员。
从用户代表处收集他们将使用系统完成所需任务的描述,讨论用户与系统间的交互方式和对话要求,这就是使用实例,一个单一的使用实例可能包括完成某项任务的许多逻辑相关任务和交互顺序。使用实例方法给需求获取带来的好处来自于该方法是用以任务为中心和以用户为中心的观点,比起使用以功能为中心和以开发者为中心的方法,使用实例方法可以使用户更清楚地理解和认识到新系统允许他们做什么和怎么做。描写使用实例的时候要注意使用简洁直白的表述,尽量使用主动语态,用"系统"或者"用户"作为主语,比如"用户提交用户密码,系统验证用户密码是否正确",还有一点在描述中不要设计界面细节,比如"用户从下拉框中选择产品类型"。使用实例为以后写用例场景描述中的基本路径和扩展路径提供了素材。
分析用户工作流程观察用户执行业务任务的过程,通过分析使用实例得到系统的用例图。编制用例图文档将有助于明确系统的使用实例和功能需求,统一建模语言的使用有助于与用户进一步交流。每个用例的描述应包括:编号,为每个用例分配一个唯一的编号,为需求的追溯提供了方便;参与者,与这个用例交互的 actor;前置条件,开始用例前所必须具备的系统状态;后置条件,用例完成后系统达到的状态;基本路径,用例完成的关键路径,也是用户期望的路径;扩展点,基本路径的分枝,表示意外情况;字段说明,路径中名称的进一步分解说明,对以后类属性的定义和数据库字段设计起作用;设计约束,实现用例的非功能约束。
通过检查当前已经运行系统的问题报告来进一步完善需求客户的问题报告及补充需求为新系统或新版本提供了大量丰富的改进及增加特性的想法,负责提供用户支持及帮助的人能为收集需求过程提供极有价值的信息。
如果客户要求的功能与已有的系统很相似,则可查看需求是否有足够的灵活性以允许重用一些已有的软件组件。业务建模和领域建模式需求重用的最好方法,像分析模式和设计模式一样,需求也有自己的模式。
总结:经过一学期的软工实验,深刻感到其重要性的同时也学到了不少的东西 ,将对我在今后的软件开发过程中起极大的作用。
软件工程心得体会篇六
时间过的很快,转眼间已经实习将近5个月,其中有2个月是属于完全被流放的。最先在内部系统组参与内部管理系统开发(struts+mysql+spring+hibernate),之后是去做网络交换机软件的脚本测试。现在又回归内部系统,虽然在脚本组期间,编码能力被别人甩在后头,但至少具有了一些测试经验。
至少自己做的东西,是真正交付到了客户手上,到也稍微有些成就感。
1、浅谈测试
一直以来,我都认为测试是脱离了软件工程范围的工作,不以为屑。但在实际情况中,测试是既重要且难以精湛的.其真正的压力,在于找不到bug,责任在你,而不在于编码人员。一般的测试人员不懂编码,他们靠的是日以累计的经验总结和想象力。而要做到高级测试工程师,则一定要懂编码,因为这是你完全掌握整个系统的方方面面具体运作的前提。但占主导地位的,还是大型系统的集成测试经验。实际项目中,编码时间一般只占30%左右,真正耗费时间的是it阶段的找 bug与对应bug,此阶段基本评定了coder的编码质量。
2、程序员的困惑
有位同事告诉我:代码看几遍都没用,要去抄,例如一个查询模块,在此基础上去做具体记录的历史记录查询模块,你可能会觉得很简单,但实际情况却往往报一堆异常,配置问题涉及到方方面面,以及数据库字段,传值问题等等,一大堆对于新人来说很郁闷的问题。但不用怕,只要学会调试,一个个问题去追踪,一个个去解决,自然而然,那段“源码”才真正属于你。
3、如何调试追踪
如果你能在短短的时间内就看到问题点在那,放下断点去追踪,出去找工作,绝对没问题。出现问题的时候,不要光看代码,要用实际行动去追踪运行期间的具体值,那是最好途径。eclipse是个很爽的ide,这点做的很好。例如页面内容显示不是自己想要的数据,我们要先从数据库查询语句去下手,设置断点,一步一步step over,让sql字段(存取最终sql语句的字符串)运行到有值,inspect进去看,如果还看不出来,就点击它,copy后在sql客户端去实际运行,看看实际查询出来的表是什么,如果是对的,有可能就是页面调用的错误或者action逻辑的传值问题。
页面错误的调试,基本方法是用右键点击实际网页查看源代码,copy到editplus,就能看到具体错误发生在那几行。通常有几种常见的错误,例如:缺少对象这种很多时候是有些被你调用的字段有可能为空的情况出现的,可以加if(xxx=null)语句加保护。追踪的方法基本就是用alert语句,放在有可能出错的地方。
4、一些习惯
遇到问题先自己思考,无从下手再找高手帮忙看看,注意他帮你看的思路,别在一旁闲着,看多了自己也会了,不然你一辈子都停留在那种水平,从人身上学到的东西远远比书多的多。
解决了一个问题后,要去究根问底去找到问题产生的起因,以防你下次遇到类似的问题再浪费同样的时间。
把代码写的漂亮,注释、空行、规范一样不能少,可读性是放在第一位。曾经看过一个高手写的代码,真的一看就是不同水平的人写的,几乎很完美,读起来很流畅,方便自己也方便别人。
任务完后不要呆着,去要求经理给你更有挑战性的任务,只要你肯去尝试,他们就会对你另言相看,把三天的任务一天加班搞定,效率和忠诚都有了,路也比较好走了。
软件工程心得体会篇七
通过对java语言、sql数据库的应用以及sql语言的复习和锻炼,并且通过使用myeclipse开发平台设计管理项目,以达到充分熟悉开发平台及应用设计。同时掌握并实践软件项目设计规范及其开发流程:需求分析、概要设计、详细设计、代码编写等,以便提前适应软件公司开发流程、环境和工作要求。
二、实训内容:
1. 项目:(“当当网”)
2. 完成(用户注册、登录、列表、购物车、删除、修改)等功能
3. 数据库设计、sql应用
4. 项目实战
三、实训总结:
转眼间实训已过去一段时间,之前的兴奋、喜悦如今已经让我熟悉,在实训的每一天都会让我有成为一名真正的财富者拥有的冲动。也许,在这期间不一定会让一个人有着翻天覆地的变化,但变化就是这样一点一点产生的。通过这一期的实训,虽然倍感折磨,但是收获却是很大的,学习中我不但有了学习成果的喜悦,而且自己也日渐成熟,有种说不出的喜悦。
在实训的过程中,我深深的体会到了自己在专业知识方面的欠缺和不足,也意识到了自己作为计算机软件专业的学生,要想在以后的职业中崭露头角,除了要有过硬的理论知识,健康的体魄之外,还必须具备良好的心理素质,是自己在以后的途中无论经历什么样的困难,都立于不败之地。通过实训老师的课堂讲解与企业文化标准的培训,使我加深了对自己专业的认识,从而确定自己以后的努力方向,要想在短暂的实训时间内尽多的学到东西,就需要我们跟老师或同学进行良好的沟通,加深彼此的了解,只有我们跟老师多沟通,让老师更了解我们,才能更真切的对我们进行培训工作。由此,班级的文化“共享”就在生活中慢慢形成了。
“纸上得来终觉浅,绝知此事要躬行!”在这短短的时间里,让我深深的感觉到自己在实际应用中所学来专业知识的匮乏。让我真真领悟到“学无止境”这句话的涵义。而老师在专业认识周到中所讲的,都是课本上没有而对我们非常有实际意义的。这又给我们的实训增添了浓墨淡彩的光辉。我懂得了实际生活中,专业知识是怎样应用与实践的。在这些过程中,我不仅知道了职业生涯所需具备的专业知识,而且让我深深体会到一个团队中的各个成员合作的重要性,要善于团队合作,善于利用别人的智慧,这才是大智慧。靠单一的力量是很难完成一个大项目的,在进行团队合作的时候,还要耐心听取每一个成员的意见,是我们的组合达到更加完美。
这次实训除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完成一个任务,懂得了享受工作。当遇到问题,冷静,想办法一点一点的排除障碍,到最后获取成功,一种自信心就由然而生,这应该就是工作的乐趣。有时候不懂的就需要问别人了,虚心请教,从别人的身上真的能学到自己没有的东西,每一次的挫折都会使我更接近成功。还有学会了在工作中与人的合作与交流,同乐同累,合作互助,这是团体的精神,也是必须学习的东西。
经过之前的学习,对程序设计有了一定的认识与理解。在校期间,一直都是学习理论知识,没有机会去参与项目的开发。所以说实话,这次实训,软件项目开发对我来说是比较抽象的,一个完整的项目要怎么分工以及完成该项目所要的步骤也不是很明确。而经过这次实训,让我明白了一个完整项目的开发,必须由团队来分工合作,并在每个阶段中进行必要的总结与论证。
一个完整项目的开发它所要经历的阶段包括:远景范围规划和用例说明、项目结构和风险评估、业务功能说明书、详细设计说明书、代码实现、测试和安装包等等。一个项目的开发所需要的财力、人力都是很多的,如果没有一个好的远景规划,对以后的开发进度会有很大的影响,甚至会出现在预定时间内不能完成项目或者完成的项目跟原来预想的不一样。一份好的项目结构、业务功能和详细设计说明书对一个项目的开发有明确的指引作用,它可以使开发人员对这个项目所要实现的功能在总体上有比较明确的认识,还能减少在开发过程中出现不必要的麻烦。代码的实现是一个项目开发成功与否的关键,也就是说,前期作业都是为代码的实现所做的准备。
我深刻的认识到要成为一名优秀的软件开发人员不是一件容易的事情,不仅要有足够的干劲和热情,还要有扎实的编写代码基础,必须要有事先对文档进行可靠性报告,功能说明书,详细设计说明书等的编写和一些风险评估的编写的能力。
除了图书馆,最能让我感觉到身在大学的就是实训机房,在匆匆过去的两个月内,我往返于实训机房与宿舍之间,使我享受了一个充实的学习时期,让我感受到了大学的魅力,对自己充满信心,对大学充满信心,以积极的心态迎接明天挑战。
实训中要求有扎实的理论基本知识,操作起来才顺心应手,我这时才明白什么是“书到用时方恨少”。这就激发了学习的欲望。 “学以致用”,就是要把学来的知识能运用到实际操作当中,用实践来检验知识的正确性。我想,这是实训的最根本目的。
最初在实训时自己就有一些不自信,但随着项目的进展,我慢慢的找到了自己的位置,找到自己的目标,虽然自己与好的同学还有差距,这也给了我很大压力,但是我相信没有压力就没有动力,所以在整个实训过程中我都在不断地努力。
实训期间让我学到很多东西,不仅在理论上让我对it领域有了全新的认识,在实践能力上也得到了很大的提高,真正的学到了学以致用,更学到很多做人的道理,对我来说受益匪浅。我意识到自己知识的缺少,这激励我在以后的学习、工作、生活中要不断了解信息技术发展动态以及信息发展中出现的新的技术。
除此之外,我还学到了如何与人相处,如何和人更好的交流,我们组成一个团队大家一起开发一个项目,大家的交流沟通显得尤为重要,如何将自己的想法清楚明白的告诉队友,如何提出自己想法的同时又不伤害其他的队友的面子,这些在我的实训生活中都有一些体会。可是说,第一次亲身体会理论与实际相结合,让我大开眼界。也是对以前学习的一个初审吧,相信这次实训多我以后的学习、工作也将会有很大的影响,在实训的这段时间里这些宝贵的经验将会成为我以后工作的基石。
作为即将毕业走出校园的学生,经过3年的在校学习,对程序设计有了一些基本的理性的认识和理解。在校期间一直忙于理论的学习,没有机会也没有经验来参与我们项目的开发,所以在实习之前软件按开发对我来说是非常抽象的,一个完整的项目要怎么来分工以及完成该项目所需要的基本步骤也不明确,通过这次实训让我明白一个完整项目的完成必须团队分工合作,并在每个阶段进行必要的总结和检查。在我们项目的开发过程中我们项目的步骤:详细设计、详细设计review、编码、编码。在项目开发过程中我也深刻的体会到详细设计对一个项目开发有明确的指引作用,它可以使开发人员对这个项目所要实现的功能在总体上有具体的认识,并能减少在开发过程中出现不必要的脱节。
这次实训是对我们学习的一个检验,虽然项目中很多知识我们在日常的学习中都没有遇到,这同时提醒我:要想成为一个合格的程序员就有具备一种自学能力,在工作中会遇到很多从未接触过的问题,当有了问题时要去解决,在你不断努力,寻找答案的过程中,自己的能力也在潜移默化的提升。有时遇到问题时可能有很多想法但却不知道那个正确,这就让我们不断地去探索,不断地尝试。

一键复制