软件工程专业调研报告

软件工程专业调研报告

一、什么是软件工程

软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。在现代社会中,软件应用于多个方面。典型的软件有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,如工业、农业、银行、航空、政府部门等。这些应用促进了经济和社会的发展,也提高了工作和生活效率。

二、软件工程专业的发展过程

软件是由计算机程序和程序设计的概念发展演化而来的,是在程序和程序设计发展到一定规模并且逐步商品化的过程中形成的。软件开发经历了程序设计阶段、软件设计阶段和软件工程阶段的演变过程。

程序设计阶段

程序设计阶段出现在1946年~1955年。此阶段的特点是:尚无软件的概念,程序设计主要围绕硬件进行开发,规模很小,工具简单,无明确分工(开发者和用户),程序设计追求节省空间和编程技巧,无文档资料(除程序清单外),主要用于科学计算。

软件设计阶段

软件设计阶段出现在1956年~1970年。此阶段的特点是:硬件环境相对稳定,出现了“软件作坊”的开发组织形式。开始广泛使用产品软件(可购买),从而建立了软件的概念。随着计算机技术的发展和计算机应用的日益普及,软件系统的规模越来越庞大,高级编程语言层出不穷,应用领域不断拓宽,开发者和用户有了明确的分工,社会对软件的需求量剧增。但软件开发技术没有重大突破,软件产品的质量不高,生产效率低下,从而导致了“软件危机”的产生。

软件工程阶段

自1970年起,软件开发进入了软件工程阶段。由于“软件危机”的产生,迫使人们不得不研究、改变软件开发的技术手段和管理方法。从此软件产生进入了软件工程时代。此阶段的特定是:硬件已向巨型化、微型化、网络化和智能化四个方向发展,数据库技术已成熟并广泛应用,第三代、第四代语言出现;第一代软件技术:结构化程序设计在数值计算领域取得优异成绩;第二代软件技术:软件测试技术、方法、原理用于软件生产过程;第三代软件技术:处理需求定义技术用于软件需求分析和描述。

三、软件工程的目标

软件工程的目标是:在给定成本、进度的前提下,开发出具有适用性、有效性、可修改性、可靠性、可理解性、可维护性、可重用性、可移植性、可追踪性、可互操作性和满足用户需求的软件产品。追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。

(1)适用性:软件在不同的系统约束条件下,使用户需求得到满足的难易程度。

(2)有效性:软件系统能最有效的利用计算机的时间和空间资源。各种软件无不把系统的时/空开销作为衡量软件质量的一项重要技术指标。很多场合,在追求时间有效性和空间有效性时会发生矛盾,这时不得不牺牲时间有效性换取空间有效性或牺牲空间有效性换取时间有效性。时/空折衷是经常采用的技巧。

(3)可修改性:允许对系统进行修改而不增加原系统的复杂性。它支持软件的调试和维护,是一个难以达到的目标。

(4)可靠性:能防止因概念、设计和结构等方面的不完善造成的软件系统失效,具有挽回因操作不当造成软件系统失效的能力。

(5)可理解性:系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制系统软件复杂性,并支持软件的维护、移植或重用。

(6)可维护性:软件交付使用后,能够对它进行修改,以改正潜伏的错误,改进性能和其它属性,使软件产品适应环境的变化等。软件维护费用在软件开发费用中占有很大的比重。可维护性是软件工程中一项十分重要的目标。

(7)可重用性:把概念或功能相对独立的一个或一组相关模块定义为一个软部件。可组装在系统的任何位置,降低工作量。

(8)可移植性:软件从一个计算机系统或环境搬到另一个计算机系统或环境的难易程度。

(9)可追踪性:根据软件需求对软件设计、程序进行正向追踪,或根据软件设计、程序对软件需求的逆向追踪的能力。

(10)可互操作性:多个软件元素相互通信并协同完成任务的能力。

四、软件工程专业的主修课程

C语言程序设计,电路原理,计算机组成原理,计算机网络,微机原理与接口技术,信号与系统,数据结构,算法设计与分析,计算方法,操作系统原理,软件体系结构,数据库系统原理,软件工程,个体软件过程,面向对象程序设计,软件过程管理,需求工程,软件质量与测试,软件项目管理等。

五、软件工程专业的培养目标

本专业面向社会经济发展和国防现代化建设的需求,培养具有基础宽厚,知识、能力、素质协调发展,系统地掌握计算机软件领域的基本理论、知识和技能,具有较强的国际交流能力,德才兼备、身心健康、求真务实、敢于创新、勇于实践,能在科研院所、教育、企事业和行政管理等单位从事计算机软件开发、科研、教学和应用的高素质研究应用型专门人才。

六、软件工程专业的培养要求

本专业是计算机软件、硬件和网络相结合,注重软件理论和软件开发能力的培养。要求学生掌握计算机系统的软硬件的基础知识以及计算机系统的设计、研究、开发及综合应用的知识和技能,接受从事软件研究和开发的基本训练,了解计算机系统设计技术,掌握计算机网络技术并具备应用能力,具备系统软件和应用软件的分析、设计、测试和维护能力。

本专业毕业生应具备以下方面的知识和技能:

1.掌握计算机科学与技术的基本理论、基本知识;

2.掌握软件系统的需求分析与设计的基本方法;

3.具备软件设计、软件测试和维护能力;

4.具有良好的沟通交流能力,具有良好的团队合作精神;

5.能跟踪软件相关领域的国际发展动态,能迅速适应新型软件开发模式;

6.掌握文献检索、资料查询的基本方法,具有获取信息的能力;

7. 了解计算机软件相关的法律法规、知识产权等知识。

七、软件工程专业就业前景分析

3G软件工程就业前景:

如今是3G4G时代,传统的2G逐步向3G转变,随着3G4G的来临,可视电话,手机视频等等一些业务也丰富起了,手机普及率为60.06%,手机吞并了越来越多的行业,手机将取代电脑上网,很多人都用手机上QQ、看电视和视频聊天、打游戏等 。手机将取代传统电视,很多电视台都上手机电视了。 手机吞掉了MP3/MP4、数码相机、DV摄像机、收音机、蓝牙、商务通等等,它还将并吞更多行业。中国手机市场如此之大,如果从事手机相关的开发,可以获利的空间将会有多大呢

软件工程(服务外包)专业:

随着世界产业转移的加速,欧美、日本等发达国家将大量的软件开发业务转移到中国、印度等国家。据统计,目前全球软件外包市场规模超过1000亿元,我国软件服务外包产业总收入在未来三年将达260多亿美元,随之而来的是对软件服务外包人才的巨大需求,未来5年,国内服务外包产业人才需求量至少要达到100万。目前软件外包从业人员的薪资水平普遍高于一般软件开发人员,就业前景广阔。

Java开发工程师:

据有关数据显示,目前,我国对软件人才的需求已达20万,并且以每年20%左右的速度增长。在未来5年内,合格软件人才的需求将远大于供给。2010年,我国软件人才的缺口已达43.5万,其中尤以JAVA人才最为缺乏。当前世界各地持有Java Programmer证书的人员供需差距极大,迫使企业不得不用高薪聘请Java程序员。因此,Java Programmer的含金量比一般的技术人员要高出很大一块。在美国、加拿大、澳大利亚、新加坡等发达国家和中等发达国家,持有Java Programmer认证证书的人年薪均在4-10万美金,而在国内持有Java Programmer认证的程序员也有极好的工作机会和很高的薪水。要想有个好的专业技术,首先得有扎实的技术作为基础,其次,要经常了解专业方面的最新信息,学习最新的技术;再次实践经验必不可少,在校期间通过多种渠道积累了实践经验,如暑期有针对性的打工,或通过熟人关系积累实践经验,也可有目的性地参加见习培训,学校安排的实习等等.了解行业有哪些职位,以及这些职位需要什么技术,有针对性地做好就业准备。

相关推荐