Q1:软件工程专业的学习(研究)对象是什么?
软件工程是采用工程的概念、原理、技术、和方法来开发、维护软件,把管理技术与开发技术有效地结合起来。本专业旨在培养具有良好软件设计能力、国际交流能力、管理与沟通能力和职业发展能力的复合型、应用型高层次软件工程人才,使学生毕业后能够从事软件系统的分析设计与开发、项目管理以及软件系统的运行维护等方面的工作。
具体而言,学生主要学习数学、科学和人文社会科学基础知识,计算机与软件工程方面的基本理论和基本知识,接受系统设计与分析、软件项目管理、团队合作与交流等方面能力的训练。毕业生应达到以下要求:
1、具有宽厚的数学、科学和工程知识基础,较好的人文社会科学基础;
2、掌握本专业领域必要的技术基础和理论知识,包括程序设计技术、系统平台技术、软件工程方法等;
3、具有软件系统分析与设计的初步能力,具备软件系统的实现能力以及测试能力,具有使用软件开发工具的能力;
4、了解本领域的技术发展趋势,了解相关应用领域的基本知识,具有良好的获取新知识与技术的能力;
5、能认识和遵循职业规范与社会伦理道德,具有职业责任感;
6、有一定的组织、沟通与职业发展能力,国际跨文化交流能力。
Q2:本科核心课程有哪些?
软件工程专业的核心课程有:离散数学及其应用、数据结构基础、高级数据结构与算法分析、面向对象程序设计、计算机系统原理、数据库系统原理、操作系统原理、操作系统分析与实验、软件工程基础、计算机网络基础项目管理与案例分析、软件需求分析与设计、软件体系结构、人机交互工程。
除此之外,软件工程专业还结合学院的科研和应用特色,贴合目前技术和就业的热点,联合知名企业开设了软件开发技术、金融信息技术、信息安全技术三个应用领域方向课程。如今,工程专业非常重视国际化的人才培养,学院的主干课程都采用双语教学,并有多门全英课程可供学生选择。
软件工程专业非常重视实践,在大一的暑假安排了短学期课程实践,加强大家对于基础编程技术和工具的掌握;在大二暑假安排了认识实习,由学院组织学生到各种规模、各种类型、各种所有制地IT企业和金融公司去实地走访,体会IT企业的发展现状和对个人需求的特点,帮助学生后续的选课和自我定位;在大三暑假安排了项目实训,学院内部的实训基地模拟运行一个IT企业,让学生们提前体验在企业上班的任务分配、检查和考核,帮助学生适应真正的企业工作环境;在大四的一整年,学院将帮助同学们联系好实习单位,或者是到国外公司、高校、进行长时间带薪实习,提高实干能力。
Q3:学软件工程专业的学生需要具备什么特质?
从技术和兴趣的角度上看,如果你喜欢搭积木(组装产品),但对于做积木块本身不是很有兴趣,那么你会对软件工程专业很有兴趣。从个性和人生规划的角度上看,如果你喜欢在商界叱咤风云的感觉,喜欢跟着一批志同道合地伙伴一起创业,喜欢与人沟通,那么你会对软件工程专业很有兴趣。
Q4:软件工程专业和计算机科学与技术专业的区别是什么?
由于这两个专业都与计算机和编程技术相关,因此很多同学有这个疑问。确实,这两个专业都需要掌握计算机科学的基础知识以及编程的基本功,前两年的课程非常相似(除了软件工程专业对硬件的知识要求少一点)。但是这两个专业的关注点有很大不同。计算机专业学习技术,是为了改进技术,做出更好的技术,研究出更好的理论。扎实地知道计算机底层是怎么工作的,才能研究出更好地解决问题,更关注开发大型软件系统的组织方法和流程。因此,会有专门的系列课程,训练学生详细了解软件工程的各个环节。
用建筑行业打比方:计算机专业研究物理、力学理论,研究新型材料;而软件工程专业则听取客户的盖房要求,选择合适的材料和技术,组织成百上千的工人把房子盖起来。两者工作的难度和重心是不同的。从同学们熟知的偶像角度打个比方,计算机专业攒够图灵,而软件工程专业则仰慕盖茨和乔布斯。
Q5:社会上是否有对这个专业的认知误区?社会生活中有哪些问题需要通过软件工程专业的人来解决?
有些人认为,学计算机相关的专业是青春饭,到了30多岁后就没有发展前途了,总不能一辈子就当个程序员吧?这是一个很大的认识误区。软件工程专业更关注开发大型软件系统的组织方法和流程,培养学生掌握大型软件开发和管理的能力,随着经验和能力的增长,他们更能胜任越来越大的项目的组织和管理,成为千百程序员的管理者。
还有人认为,现在懂编程的人太多了,凡是理工专业都学过编程,抓来就能用。但是,软件工程专业所掌握的大型软件开发的组织、软件和管理技术,不是普通的编程技术可以比拟的。打个比方说,普通的工人稍微训练一下,让他盖个猪圈、砌堵墙没问题,但是让他去造一个摩天大楼就不行了。而软件工程培养的是有能力设计和制造摩天大楼的人才。
Q6:软件工程专业的毕业生的就业主要面向哪些行业,哪些职业种类?
软件工程专业的毕业生主要面向两类就业岗位:一类是各种规模的IT企业,从事项目管理、软件设计和质量保证等相关岗位;另一类是进入到对IT技术依赖度很高的金融、电信等行业的IT部门,从事这些行业的业务软件的开发、测试、维护等相关工作。
Q7:软件工程专业最大的优势是什么?
软件的规模和复杂度在不断上升,仅仅掌握编程技术已经无法胜任当今的软件工程师。目前,学习编程的学校和专业很多,但是只有软件工程专业通过完善的培养体系,教会学生通过团队合作,构建复杂、大型软件的能力,这些非常有益于学生毕业后在软件产业占据领导地位。