软件工程专业和计算机软件与理论内涵与反思
- 格式:docx
- 大小:18.66 KB
- 文档页数:7
软件工程学习心得体会软件工程是一门涉及软件开发和管理的学科,通过学习软件工程,我不仅对软件开发的过程有了更深入的了解,还掌握了一些有效的管理和组织技巧。
在这篇学习心得中,我将分享我的体会和心得,希望对其他学习软件工程的人有所帮助。
首先,软件工程的学习需要全面的基础知识。
在学习软件工程之前,我需要掌握一些基础的编程技术,如编程语言、算法和数据结构等。
这些基础知识是软件工程的基石,只有掌握了这些知识,才能够更好地理解和应用软件工程的理论和方法。
其次,软件工程需要注重实践。
虽然理论知识很重要,但实践是巩固和应用理论的最有效方式。
在学习过程中,我会尽量多做一些实际项目,通过实践来掌握和运用所学知识。
同时,我也会参加一些软件工程实践研讨会和竞赛,与其他同行进行交流和合作,共同提高。
此外,团队合作是软件工程学习的重要一环。
在现实的软件开发中,很少有人独立完成整个项目,而是需要多个人协同工作。
所以,在学习过程中,我会积极参与团队项目,学习如何与他人合作,如何有效地分配任务和协调团队的工作。
另一个重要的方面是管理和组织技巧。
软件工程涉及到项目的规划、进度的管理、团队的协调等方面,所以需要学习一些管理和组织的技能。
我会学习一些项目管理方法和工具,如甘特图、敏捷开发等,以提高项目的管理效率和质量。
同时,软件工程也需要不断地学习和更新。
软件技术发展迅速,新的编程语言、框架和工具层出不穷。
为了保持竞争力,我需要不断地学习和更新自己的知识,了解行业的最新动态和趋势,并尝试运用新的技术和方法。
最后,软件工程不仅仅是一门学科,更是一种工程思维和方法的应用。
通过学习软件工程,我不仅学会了如何设计和开发软件,还学会了如何分析和解决问题,如何进行系统性的思考和管理。
这些思维和方法不仅在软件开发中有用,也可以应用到其他领域。
总结起来,软件工程是一门综合性很强的学科,需要全面的基础知识、注重实践、注重团队合作和管理技能。
通过学习软件工程,我不仅掌握了一些编程技术和开发工具,还培养了一种系统性思维和解决问题的能力。
软件工程的学习心得体会软件工程是一门与计算机技术密切相关的学科,它涵盖了软件开发的整个过程,包括需求分析、设计、编码、测试和维护等环节。
在我学习软件工程的过程中,我深刻体会到了它的重要性和学习方法的关键。
下面是我对软件工程学习的一些心得体会。
首先,软件工程学习需要注重理论与实践的结合。
仅仅掌握理论知识是远远不够的,需要通过实践来巩固和应用所学知识。
例如,在学习编码技术时,我们要通过编写实际的程序来加深对语法和算法的理解。
理论知识只是给予我们指导和框架,而实践是真正检验我们能力的关键。
其次,软件工程学习需要注重团队合作和沟通能力的培养。
软件开发往往需要多人合作完成,需要与团队成员协作、沟通和分工。
因此,我们需要培养良好的合作意识和团队合作能力,能够顺利和他人共同完成项目任务。
在学习过程中,我积极参与团队项目,通过与他人的合作,不断提升自己的沟通和协作能力。
此外,软件工程学习也需要注重解决问题的能力培养。
软件开发过程中经常会遇到各种各样的问题,包括技术难题和需求变更等。
我们需要善于分析问题,找出解决方案,并能够快速适应和应对变化。
这就要求我们具备学习新知识和自我成长的能力,不断提升自己的技术水平和解决问题的能力。
此外,软件工程学习还需要注重项目管理和时间管理的能力培养。
在实际的软件开发中,项目管理和时间管理是至关重要的。
我们需要合理规划并安排项目的进度,保证在规定的时间内完成各项任务。
同时,我们还要学会分配、调度资源,合理管理项目的进展和风险。
这就要求我们在学习过程中培养良好的时间管理和项目管理的能力。
最后,软件工程学习还需要注重持续学习和自我发展。
软件技术更新换代非常快,我们不能停留在已有的知识上,而要保持持续学习的动力和能力。
只有不断拓宽自己的知识面,学习新的技术和方法,才能不断提升自己的竞争力。
因此,在学习软件工程的过程中,我们要注重培养学习的习惯和方法,保持对知识的渴望和求索,实现自我发展与成长。
软件工程心得体会软件工程是一门富有挑战性的学科,通过学习软件工程课程,我深刻地体会到了软件开发的复杂性和团队合作的重要性。
在这段时间的学习中,我积累了许多宝贵的经验,并对未来从事软件工程工作有了更深层次的理解和认识。
首先,软件工程的学习让我意识到软件开发的复杂性。
在课程中,我们学习了软件生命周期的各个阶段,包括需求分析、设计、编码、测试和维护等。
每个阶段都有其独特的挑战和难点,需要不同的技巧和方法来处理。
例如,在需求分析阶段,我们需要与用户沟通、收集和整理需求,并将其转化为可执行的软件设计。
在编码阶段,我们要熟练掌握各种编程语言和工具,按照设计要求进行编码工作。
而在测试和维护阶段,我们需要不断地修复bug和改进系统,确保软件的质量和可靠性。
通过学习,我发现软件开发是一项高度复杂的任务,需要全面和系统的思维方法来解决问题。
其次,软件工程课程也让我明白了团队合作的重要性。
在实际的软件开发项目中,很少有一个人可以独立完成整个开发过程。
相反,通常需要由多个人合作完成。
与团队合作相比,个人开发不仅效率低下,而且容易出现问题。
在课程中,我们通过小组项目的方式进行实践,体会到了团队合作的重要性。
在小组项目中,我们互相协作、分工合作,共同完成一个软件开发任务。
通过与队友的密切合作,不仅加深了对软件工程的理解,还学会了和他人有效沟通和协调的能力。
每个人在团队中发挥自己的优势,形成了协同合作的局面,使整个项目能够高效地完成。
通过团队合作,我认识到只有通过共同努力,才能实现更大的成果。
最后,软件工程课程还让我认识到不断学习和自我提升的重要性。
在软件行业中,技术发展日新月异,新的编程语言、框架和工具层出不穷。
要保持竞争力,就需要不断地学习和适应变化。
通过软件工程课程,我学会了如何寻找和学习新知识,了解行业的最新动态。
同时,课程还教会了我如何进行自我评估和反思,发现自己的不足之处,并主动寻求提高。
通过不断的学习和实践,我相信自己能够不断进步,并成为一名优秀的软件工程师。
软件工程心得体会软件工程是一门综合性的学科,它涉及到计算机科学、软件开发方法、项目管理、需求工程、质量保证等多个领域。
在我学习软件工程的过程中,我有了一些心得体会。
首先,软件工程注重团队合作。
软件项目往往需要多个人的共同努力才能完成,而且团队中的每个成员都有自己的专长。
因此,在软件工程中,团队协作是非常重要的。
团队成员之间需要相互协作,共同解决问题,合理分工,互相信任。
只有团队成员能够充分发挥自己的优势,高效协作,才能够完成项目的开发工作。
其次,软件工程需要严谨的方法论。
软件工程是一门工程学科,它需要遵循一定的方法论来进行软件开发。
在软件工程中,有许多成熟的开发方法和模型,如瀑布模型、敏捷开发等。
这些方法提供了一种规范的开发流程,能够帮助开发团队高效地完成软件开发任务。
在实际的软件开发过程中,我深刻体会到了方法论的重要性,遵循规范的开发流程能够提高软件的质量和开发效率。
再次,软件工程需要不断学习和更新。
软件工程领域发展迅速,新的技术和方法不断涌现。
作为软件工程师,我们需要不断学习新知识,跟进行业的发展动态。
只有保持学习的态度,才能够跟上时代的步伐,应对各种新的挑战。
此外,软件工程中的技术更新也需要我们不断学习和适应。
在我学习软件工程的过程中,我发现有很多编程语言、框架和工具是我们必须掌握的,为了不断提高自己的能力和竞争力,我们需要不断学习新的技术和工具。
最后,软件工程需要注重质量保证。
软件质量是衡量软件产品优劣的重要标准。
为了保证软件质量,软件工程师需要进行严格的测试和验证工作。
在我实际的软件开发经验中,我发现测试对于保证软件质量的重要性。
软件测试能够发现软件中的潜在问题和错误,及时修复和改进。
因此,软件工程师需要具备良好的测试技能,能够编写高质量的测试用例,进行全面的测试工作。
总之,软件工程是一门综合性的学科,它涵盖了多个领域。
在我学习软件工程的过程中,我深刻体会到了团队合作、方法论、不断学习和质量保证的重要性。
软件工程专业和计算机软件与理论内涵与反思本文从网络收集而来,上传到平台为了帮到更多的人,如果您需要使用本文档,请点击下载按钮下载本文档(有偿下载),另外祝您生活愉快,工作顺利,万事如意!一、引言2011 年8 月,教育部首次在48 所高校增设软件工程一级学科博士点和硕士点,到目前为止拥有软件工程一级学科硕士点的学校达到了百余所。
这对于软件工程学科而言,既是机遇也是挑战。
虽然软件工程专业作为一级学科的时间并不长,但各学校通过对软件工程学科和自身优势的不断探索和研究,依据自身的师资力量、地理位置、商业环境等优势逐步摸索出适合自身的办学体系,使软件工程学科得到了一定发展。
软件工程学科是从计算机科学与技术学科中分化而来,虽然现在已经独立成为一级学科,但由于其与计算机科学与技术学科的紧密联系,在其发展体系中,仍有很多内容与后者相重叠,特别是与计算机科学与技术下的二级学科计算机软件与理论和计算机应用技术极为相似。
为了深入理解软件工程学科内涵,提高研究生培养质量,本文根据60 所具有软件工程一级学科博士点( 39 个单位) 和一级学科硕士点( 21 个单位) 的高校官网,对其公布的研究方向和培养方案进行统计分析,并对其中拥有二级学科计算机软件与理论的高校的研究方向和培养方案进行了对比分析,期望明确两个学科的区别与联系,以便深入理解软件工程专业的学科内涵,不断提高研究生培养质量。
二、两学科在研究方向设置上的比较( 一) 软件工程学科的研究方向鉴于师资力量和办学优势不同,每个学校设置的软件工程专业的研究方向也有所差异,研究方向的数目为1 ~20 个不等,大多数高校为4 ~7 个。
经过统计,60 所高校总共有256 个研究方向,为便于分析与比较,将这256 个方向按照研究内容进行归类后得到24 个方向,其分布如图1 所示。
由图1 可以看出,开设“软件工程理论”方向的高校最多占60%,其次是“智能服务与云计算”占48%,“多媒体应用技术”最少约占3%; 涉及软件相关方向的有“软件工程理论”“嵌入式软件开发” “软件技术与理论”等14 个研究方向,占到了总方向数的58. 3%; 其他研究方向包括占比在第三至第五的 3 个方向“网络与信息安全” “数据挖掘与大数据处理”和“人工智能”也大多涵盖在计算机科学与技术下的另一个二级学科———计算机应用技术中。
软件工程学习心得体会范文软件工程是一门综合性很强的学科,涉及到了计算机科学、计算机技术、软件开发、管理学等多个学科领域,对学生来说学习起来相对较为复杂和困难。
不过,在经过一段时间的学习和实践之后,我对软件工程有了更深入的理解,并且取得了一些心得体会,希望能够和大家分享一下。
首先,我认为软件工程是一门实践性非常强的学科。
传统的学科教育主要注重理论的掌握和书本知识的学习,在软件工程这门学科中,理论是必要的,但是实践才是最重要的。
通过实践,我们才能够真正理解并运用所学到的知识,才能够真正做到“理论联系实际”。
因此,在学习软件工程的过程中,我们必须注重实践能力的培养,通过做项目、做实验等方式来提高自己的实践操作能力。
其次,对于软件工程来说,团队合作和沟通能力是非常重要的。
软件工程的项目通常都是由一个团队共同完成的,每个人都有自己的责任和任务。
在团队合作中,我们需要相互协作,共同解决问题,充分发挥每个人的优势和潜力。
而要达到这个目标,良好的沟通能力是必不可少的。
只有通过良好的沟通,才能够使得团队成员之间的交流顺畅,避免出现误解和偏差,最终使得项目能够顺利进行。
再次,软件工程的核心是问题解决能力。
在软件开发的过程中,我们经常面临各种各样的问题和困难,需要不断地进行思考和分析,找出合适的解决方案。
因此,问题解决能力是软件工程师所必备的核心能力之一。
通过学习软件工程,我逐渐培养了自己的问题解决能力,学会了如何分析和解决问题,这对我的日常工作和学习都有很大的帮助。
最后,一个好的软件工程师不仅需要具备专业知识,还需要具备自学能力和不断学习的习惯。
软件行业发展迅速,新的技术和工具不断涌现,作为软件工程师,我们不能停止学习的步伐。
只有不断地学习,才能够跟上时代的步伐,掌握新的技术和方法,提高自己的竞争力。
因此,我始终坚持自学,通过阅读书籍、参加培训等方式不断学习新的知识和技能。
总的来说,软件工程是一门实践性很强的学科,需要我们注重实践能力的培养,注重团队合作和沟通能力的提升,注重问题解决能力的培养,注重自学能力和持续学习的习惯的养成。
学习软件工程的心得体会软件工程是一门集软件开发、管理和维护于一体的学科。
在学习软件工程的过程中,我对这门学科有了更深入的理解,并积累了一些心得体会。
首先,学习软件工程需要具备良好的基础知识和学习能力。
软件工程涉及到许多计算机科学的基础知识,如数据结构、算法、操作系统等,因此在学习软件工程之前,我需要对这些基础知识进行学习与掌握。
此外,软件工程是一个不断发展的学科,学习者需要具备良好的学习能力,能够主动学习新的知识和技术。
其次,学习软件工程需要注重实践与项目经验。
我发现,在软件工程的学习中,理论与实践是相辅相成的。
只有通过实践,我才能真正理解和掌握所学的理论知识。
因此,我积极参与学校举办的软件开发项目,与队友一起合作,共同完成项目任务。
通过这一过程,我学会了分析需求、设计架构、编写代码、测试等软件开发的全过程,并锻炼了自己的软件开发能力。
另外,学习软件工程需要保持不断学习和创新的态度。
软件工程是一个日新月异的学科,新的技术和方法层出不穷,因此学习者不能止步于学校所教授的知识,还需要不断学习和了解最新的技术和发展趋势。
同时,学习软件工程也需要具备创新的能力。
软件开发过程中,遇到的问题往往并非标准的,需要学习者能够灵活应对,提出创新性的解决方案。
此外,学习软件工程还需要注重团队合作和沟通能力的培养。
软件开发往往是一个团队协作的过程,团队成员需要协同工作,互相合作,才能高效地完成项目任务。
因此,我在学习软件工程的过程中,积极参与团队项目,学会了与他人的合作与沟通,加强了自己的团队意识和沟通能力。
此外,学习软件工程还需要具备问题解决和项目管理的能力。
软件开发过程中,会遇到各种各样的问题,需要学习者能够快速地分析问题、找出解决方案,并进行有效的实施。
此外,项目管理也是软件工程学习中必不可少的一环。
学习者需要了解项目管理方法和工具,并能够有效地进行项目进度的管理和控制。
最后,通过学习软件工程,我对软件开发的流程和方法有了更深入的了解,也掌握了许多实用的开发工具和技术。
《软件工程》学习心得《软件工程》学习心得1、导言在本学期的《软件工程》课程中,我通过系统的学习和实践,对软件工程这门学科有了更深入的了解。
本文将对我在学习过程中的心得体会进行详细的总结和阐述,希望能对其他同学的学习有所帮助。
2、软件工程概述2.1 软件工程定义在学习软件工程的过程中,我了解到软件工程是一门涵盖软件开发全过程的学科,它涉及到需求分析、系统设计、编码、测试和维护等各个阶段。
2.2 软件工程的目标软件工程的目标是提供高质量的软件产品并在规定的时间和预算内完成。
同时,软件工程还强调与用户、开发团队以及其他相关方的有效沟通和合作。
2.3 软件开发生命周期软件开发生命周期包括需求分析、系统设计、编码、测试和维护等多个阶段。
每个阶段都有特定的任务和产出物,如需求规格说明书、系统设计文档、代码和测试报告等。
3、需求分析3.1 需求收集在需求分析阶段,我们需要与用户进行充分的沟通和交流,理解用户需求并将其转化为明确的需求文档。
3.2 需求规格说明书需求规格说明书是需求分析的重要产出物,它包括功能需求、非功能需求和系统约束等内容。
4、系统设计4.1 系统结构设计系统结构设计阶段涉及到整体系统的结构和组织方式,包括模块的划分、接口的设计等。
4.2 数据设计数据设计涉及到数据库的设计和存储方式的选择,需要考虑数据的结构、关系和安全等因素。
4.3 用户界面设计用户界面设计要求界面友好、易于操作,并满足用户的需求和使用习惯。
5、编码与测试5.1 编码规范编码规范是编写高质量代码的基础,它包括命名规范、代码风格、注释规范等内容。
5.2 单元测试单元测试是对代码中最小的可测试单元进行测试,它能够发现很多常见的错误和问题。
5.3 集成测试集成测试是将各个模块进行合并测试,验证系统的整体功能和性能。
5.4 系统测试系统测试是对整个软件系统进行测试,包括功能测试、性能测试、安全测试等。
6、维护与演化6.1 故障修复维护阶段主要是根据用户反馈和系统演化的需求进行故障修复,保证系统的正常运行。
软件工程学习心得体会软件工程作为一门新兴的学科,旨在通过系统化、规范化的方法来开发和维护高质量的软件产品。
在我学习软件工程的过程中,我深刻体会到了软件工程的重要性和不断进化的特点。
下面是我对软件工程学习的心得体会。
一、系统化的学习方法学习软件工程需要具备一种系统化的学习方法。
首先,我们需要了解软件工程的基本概念和原理,掌握软件开发过程中的各个环节。
其次,我们需要学习并掌握各种软件开发工具和技术,包括需求分析、设计、编码、测试等。
最后,我们需要不断实践,通过实际项目的经验来提升自己的软件工程能力。
二、团队合作的重要性软件工程是一门团队合作的学科。
在软件开发中,一个人很难完成一个大型项目的开发,因此团队合作成为软件工程实践中的一个重要环节。
在团队合作中,我们需要与其他开发人员进行有效的沟通和协作,合理分工、互相支持,确保项目的顺利进行。
通过团队合作,我深刻意识到软件工程不仅仅是一个人的力量,而是整个团队的力量。
三、持续学习的重要性软件工程是一个不断进化的领域,新技术和新方法层出不穷。
因此,持续学习是软件工程师的必备素养。
在学习软件工程的过程中,我不仅仅学到了基本的软件开发知识,还学到了学习的方法和原则。
我学会了主动学习、积极思考和不断探索的态度,这些都对我今后的学习和工作起到了很大的帮助。
四、质量意识的培养软件工程最终的目标是开发出高质量的软件产品。
在学习软件工程的过程中,我不断强调质量意识的培养。
从需求分析到设计、编码、测试等各个环节,我都要始终保持对质量的高度敏感,确保每个环节都能够满足高质量的要求。
通过实践和不断改进,我逐渐形成了自己的质量意识,并将其运用到实际项目中。
五、问题解决能力的提升在软件工程学习的过程中,我遇到了许多问题和挑战。
但是,我通过不断的学习和实践,逐渐提升了自己的问题解决能力。
我学会了通过分析和归纳问题,找到解决问题的方法和途径。
我从错误中学习,从经验中吸取教训,不断提高自己的解决问题的能力。
软件工程学习心得体会_工作心得体会总结在学习软件工程的过程中,我获得了许多宝贵的经验和知识。
以下是我在学习软件工程期间的一些心得体会:软件工程是一门需要系统思考和全局观的学科。
在开发软件过程中,需要考虑到整个系统的各个组成部分之间的相互关系和依赖关系。
只有全面地理解系统的整体结构和运作原理,才能够设计出高效、可靠的软件系统。
在学习软件工程的过程中,我养成了注重整体把握的习惯,并且学会了通过系统分析和设计的方法来解决问题。
软件工程是一个不断学习和不断提升的过程。
由于软件技术的更新换代非常快,所以在实际应用中,我们经常需要学习新的编程语言、框架和工具,以适应新的需求和变化。
我意识到要不断地学习和积累新的知识,以保持自己的竞争力。
我还学会了主动参与项目和团队工作,通过实践来提升自己的能力。
软件工程的成功离不开良好的沟通和协作能力。
在软件开发过程中,我们需要与不同的人员进行沟通和协作,包括需求分析师、设计师、测试人员等。
良好的沟通和协作能力可以提高团队的效率,减少误解和冲突,确保项目的顺利进行。
我学会了倾听他人的观点,并且能够清晰地表达自己的想法。
我也学会了如何与他人合作,发挥团队的协同效应。
软件工程的实践是非常重要的。
在学习软件工程的过程中,我不仅学习了理论知识,还要通过实际项目的实践来应用所学的知识。
只有在实际应用中才能够真正理解和掌握软件工程的方法和技术。
我鼓励自己要多参与实际项目的开发和实施,通过实践来提升自己的实际应用能力。
工作心得体会总结态度决定一切。
在工作中,态度是非常重要的。
一个积极、认真、负责任的态度可以让自己更加投入工作,也能够给他人带来积极的影响。
我在工作中时刻保持着一种积极的态度,对待工作中的问题和挑战,勇于面对困难,不断学习和提升自己。
有效的时间管理是工作中的关键。
时间是有限的资源,我们需要合理安排和利用时间来完成工作。
在工作中,我学会了如何制定任务和目标,并合理安排时间来完成任务。
软件工程专业和计算机软件与理论内涵与
反思
一、引言
20xx 年8 月,教育部首次在48 所高校增设软件工程一级学科博士点和硕士点,到目前为止拥有软件工程一级学科硕士点的学校达到了百余所。
这对于软件工程学科而言,既是机遇也是挑战。
虽然软件工程专业作为一级学科的时间并不长,但各学校通过对软件工程学科和自身优势的不断探索和研究,依据自身的师资力量、地理位置、商业环境等优势逐步摸索出适合自身的办学体系,使软件工程学科得到了一定发展。
软件工程学科是从计算机科学与技术学科中分化而来,虽然现在已经独立成为一级学科,但由于其与计算机科学与技术学科的紧密联系,在其发展体系中,仍有很多内容与后者相重叠,特别是与计算机科学与技术下的二级学科计算机软件与理论和计算机应用技术极为相似。
为了深入理解软件工程学科内涵,提高研究生培养质量,本文根据60 所具有软件工程一级学科博士点( 39 个单位) 和一级学科硕士点( 21 个单位) 的高校官网,对其公布的研究方向和培养方案进行统计分析,并对其中拥有二级学科计算机软件与理论的高校的研究方向和培养方案进行了对比分析,期望明确两个学科的区别与联系,以便深入理解软件工程专业的学科内涵,不断提高研究生培养质量。
二、两学科在研究方向设置上的比较
( 一) 软件工程学科的研究方向
鉴于师资力量和办学优势不同,每个学校设置的软件工程专业的研究方向也有所差异,研究方向的数目为 1 ~ 20 个不等,大多数高校为4 ~7 个。
经过统计,60 所高校总共有256 个研究方向,为便于分析与比较,将这256 个方向按照研究内容进行归类后得到24 个方向,其分布如图1 所示。
由图1 可以看出,开设软件工程理论方向的高校最多占60%,其次是智能服务与云计算占48%,多媒体应用技术最少约占3%; 涉及软件相关方向的有软件工程理论嵌入式软件开发软件技术与理论等14 个研究方向,占到了总方向数的58. 3%; 其他研究方向包括占比在第三至第五的3 个方向网络与信息安全数据挖掘与大数据处理和人工智能也大多涵盖在计算机科学与技术下的另一个二级学科计算机应用技术中。
从关于研究方向设置的统计分析来看,软件工程学科与计算机应用技术学科还有很多的交叉。
( 二) 计算机软件与理论的研究方向
除与计算机应用技术学科在方向设置上有一定的交叉外,软件工程还与计算机软件与理论专业一脉相承。
为了更好地区分这两个学科,本文在上述60 所设置软件工程学科的高校中,对其中设置计算机软件与理论学科的、根据官网可以找到的16 所高校的研究方向进行统计,得到了105 个研究方向。
在此基础上根据其研究内容进行归类,得到24 个研究方向。
按其所占比例从高到低进行排序,得到其研究方向的分布如图2所示。
从图2 可以看出,计算机软件与理论专业的研究方向也比较广泛,开设比例从60%到5%各不相同。
其中开设学
校最多的是分布式计算和数据挖掘与大数据处理,最少的为软件体系结构。
涉及软件的研究方向共11个,所占比例为45. 8%,其他研究方向同样也涵盖在计算机应用技术二级学科中。
(三) 软件工程与计算机软件与理论学科在研究方向上的对比
虽然从官网上得到的计算机软件与理论专业的研究方向不够完全,两者仍存在很多相似之处。
为了更好地分析两个学科在方向设置上的异同,按照软件工程学科研究方向设置的比例进行排列,与计算机软件与理论设置的方向进行了对比。
虽然两学科设置研究方向的学校比例有所差异,研究侧重有所不同,但是两者一致或相似的研究方向多达18 个,相似度为75%。
软件工程专业单独的研究方向有 6 个,包括数字媒体分析与计算软件测试软件系统设计与实现软件项目管理信息系统管理和语义技术,偏重于软件系统的设计。
计算机软件与理论专业单独的研究方向也有6 个,分布式计算程序语言设计电子商务机器学习实时系统和知识表示与知识工程,更偏重于计算机理论和计算机应用。
关于两个学科设置的研究方向相似程度的占比分析,其中软件工程学科单独设置的研究方向所占比例为25%; 相似度高于70% 的研究方向占到了25%,不足20% 的仅为8. 33%。
由此可以得出结论: 两个学科在研究方向的设置上非常相似,也说明软件工程学科在方向设置上还没有摆脱计算机软件与理论的影响,基本停留在计算机软件或系统设计层面上,还需对软件工程学科做进一步地探究,根据各高校特点科学合理地设置研究方向。
三、两学科在培养方案上的比较
( 一) 软件工程专业的培养方案
在上述60 所高校中通过查询和统计其官网的公开数据,得到了25 所高校软件工程专业的培养方案。
这25 所高校制定的培养方案各不相同,除去政治、英语等公共基础课程之外,总共开设了161 门课程( 包括专业基础课、专业课、选修课) 。
将课程按照涉及的领域、包含的内容进行归类总结后得到15 个类别( 不区分专业基础课、专业课、选修课) ,其在各统计学校中开设的情况如图 4 所示。
从图中可以看出,算法设计类的课程开设高校最多,占94%; 中文信息处理技术类的课程所占比例最少,为24%; 与软件工程紧密相关的课程包括: 软件设计方法与度量 ( 88%) 、软件工程方法( 64%) 、嵌入式软件设计 ( 56%) 和项目管理 ( 32%) 等 5 类课程,占课程总类别的33. 33%; 有80%以上的学校开设了网络信息从上可以看出,对于软件工程专业的课程培养体系,软件工程学科的专业课程设置较为合理,更侧重于培养学生的学科知识和技能。
( 二) 计算机软件与理论专业的培养方案
为了更好地对比软件工程专业与计算机软件与理论培养方案的区别,通过登陆16 所高校的官方网站进行查询,得到9 所学校计算机软件与理论专业的培养方案。
同样的,除英语、政治等公共基础课程之外,总共有74 门课程( 包括专业基础课、专业课、选修课) 。
按照课程涉及的领域、包含的内容将其归为13 类( 不区分专业基础课、专业课、选修课) ,课程开设情况如图5 所示。
计算机软件与理论专业
开设的课程中,算法设计类课程开设比例为100%,即上述9 所高校都开设了该课程; 软件开发类课程所占比例最少,为11%; 这15 类课程中包含软件工程嵌入式软件系统和软件开发共3 类软件相关课程,占到总课程类别的23%。
开设比例比较多的类别为计算技术数据库理论计算机网络与安全和专业基础课程,涉及的范围也比较广泛。
( 三) 两学科培养方案的对比
以上对软件工程和计算机软件与理论两个学科培养方案的统计与分析可知,两者开设的课程虽然各不相同,但彼此有相似之处,按照软件工程专业课程开设比例进行排列,与计算机软件与理论学科开设的课程进行比较,虽然两学科开设课程学校的比例有所差别,但课程类别基本相同,软件工程学科除包含计算机软件与理论所有课程类别,只多开设了两门课程,两者课程的一致度高达86. 7%。
从两个学科开设课程相似度的比较来看,其中软件工程专业单独开设的课程所占比例为13. 3%; 开设课程比例完全相同的为13. 3%;同一课程类别开设学校比例相似度高于70% 的占了80%,对于这些课程而言,两个学科的开设情况是一致的。
综上可知,对于软件工程专业的培养体系,本质上与计算机软件与理论专业是一致的,并没有太大的区别。
四、几点思考
在传统软件工程学科培养模式的基础上,应结合信息技术发展的最新趋势,凝练研究方向、制定科学先进的课程体系。
第一,由面向服务的软件工程方法向面向数据的软件工程方法转变。
大数据时代的到来对软件工程方法提出了新的要求,数据的获取与存储、组织与管理、
分析与应用等都离不开软件的支持,软件的作用正向计算、存储、数据中心架构甚至整个IT 环境蔓延。
因此,在教学中应体现软件工程方法学的新趋势。
第二,软件开发模式由封闭转向开放,软件开发周期大幅缩短。
作为信息技术的核心,软件系统正变得巨大且复杂,而网络化软件已经成为网络计算和软件技术产业发展的必争之地。
网络软件开发人员已由专业走向大众,通过实现分享、交互和群体智慧,转向协同开发、合作创新、同行及用户评价模式。
同样的,在教学中要向学生介绍这种软件开发模式。
第三,服务计算为软件的定制化奠定基础。
在互联网和云计算环境下,各种软件技术的有效组合使软件发生根本变革软件即服务( software as a Service,SaaS) ,这种理念也将使软件教学变得更加容易。
在教学和研究中应重点关注以服务为导向的架构( SOA) 方法论、参考架构、SOA 工具平台之间的工作模式等。
第四,普适计算是物联网、移动互联网环境下实现智能化服务的关键。
随着移动设备、智能手机和传感器技术的迅速发展,实现人、机、物的相互融合成为可能。
在课程体系中增加情景感知、智能家居、参与感知等普适计算方向的课程,可使学生了解为用户提供更透明、更智能、更广泛、更绿色、更安全的一体化服务,构建未来高度和谐的环境的发展趋势和重要作用。
第五,软件开发工具与平台在新时代软件工程中起着重要作用。
目前软件开发语言大多基于C + +、Java 等,在网络环境和云平台下如何进行软件开发在教学中几乎都未体现,而在多个服务器上实现应用的扩展极为重要,因此在教学中选择好的软件开发工具或平台作为案例讲解,不仅可以为学生展示。