专业名称与代码:软件工程 080902
专业培养目标:
面向数字经济发展,结合地学领域软件需求,培养拥有坚实的软件工程理论和计算机科学技术等专业基础和交叉学科知识,系统地掌握软件工程的基础理论和方法,具有可持续竞争力、创新力、国际视野、过硬的软件研发能力,毕业后能够胜任企业、政府或科研单位的软件工程技术与管理的创新性人才。毕业生能够胜任IT或相关领域公司、企事业单位软件研发等工作岗位,能够从事复杂软件系统分析设计、软件开发及新技术研发、项目管理、系统运维等工作。
本专业学生毕业后经过5年左右的工作锻炼和综合素质能力提升,预期可成为软件工程相关领域的中高层次专业人才,并展现出如下职业能力:
(1)具有良好团队协作能力、人际交往与沟通表达能力,在工程实践中遵纪守法,严格遵循职业道德与工程标准,具有较强的社会责任感;
(2)能够运用软件工程相关理论知识和技术方法,有效解决所在专业领域的复杂软件工程技术问题,胜任复杂软件相关技术或产品的研发、运维服务等高级技术工作;
(3)能够系统、深入掌握和运用业界主流软件生命周期方法、技术和工具,针对所在专业领域复杂软件工程实践提出整体解决方案并组织开展有效实践,胜任产品经理、软件设计师、项目经理、质量经理、软件服务咨询师等岗位;
(4)能够把握软件与信息技术服务领域发展趋势,具有一定的专业技术洞察力和国际视野,具有立足岗位或行业进行开拓创新的意愿和能力;
(5)能够通过自我学习不断进行知识迭代更新,具有较强的心理承受能力,能快速适应社会与科技快速发展变化,胜任软件工程相关领域新工作内容。
专业毕业要求:
软件工程专业本科毕业生在知识、能力和素质方面应达到如下基本要求:
1.工程知识:掌握软件和信息技术服务工程涉及的数理基础、计算基础及软件工程基础知识,以及一定的地球科学等领域知识,并能够将其应用到复杂软件工程实践中。
2.问题分析:能够运用数理、计算科学及软件相关工程科学的基本原理,识别、表达、分析复杂软件工程问题,以获得有效结论。
3.设计/开发解决方案:能够针对特定复杂软件与信息技术服务需求设计解决方案,包括软件架构、软件模块/构件、数据组织管理等设计,并能够在设计环节中体现创新意识,考虑社会、健康、安全、法律、文化以及环境等因素。
4.研究:能够基于科学理论并采用先进技术方法,对复杂软件工程问题进行研究,包括建立计算模型、设计实验、分析与解释数据、并通过信息综合得到合理有效的结论和创新解决方法。
5.使用现代工具:能够针对复杂软件工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对复杂软件系统的分析、模拟、设计、验证、实现、应用、维护与管理,并能够理解其局限性。
6.工程与社会:能够基于工程相关背景知识合理分析、评价软件工程实践和复杂软件工程问题解决方案对社会、健康、安全、法律以及文化等的影响,并理解应承担的责任。
7.环境和可持续发展:能够理解和评价针对复杂问题的软件工程实践对于环境、社会可持续发展的影响,并能够将环境、社会可持续发展的要求体现于解决方案。
8.职业规范:具有人文社会科学素养、社会责任感,能够在软件工程实践中理解并遵守工程职业道德和规范,履行责任。
9、个人和团队:具备团队协作精神,能在多学科背景下的软件项目团队中承担个体、团队成员以及负责人的角色。
10.管理与沟通:能够就复杂软件工程问题与业界同行及社会公众进行有效沟通和交流,包括撰写项目申请书、报告和软件文档、陈述发言、清晰表达或回应指令,并具备一定的国际视野,能够在跨文化背景下进行沟通和交流。
11.项目管理:理解并掌握软件工程项目管理原理与经济决策方法,并能在多学科环境中应用,具有一定的软件项目管理能力。
12.终身学习:具有终身学习意识以及运用现代信息技术获取相关信息和新知识、新技术的能力,能通过不断学习适应发展需要。
毕业要求实现及途径如表1所示,软件工程专业毕业要求对培养目标的支撑关系如表2所示。
表1 软件工程专业毕业要求的实现途径
序号 | 毕业要求 | 课程体系与教学环节 |
1 | 1.工程知识:掌握软件和信息技术服务工程涉及的数理基础、计算基础及软件工程基础知识,以及一定的地球科学等领域知识,并能够将其应用到复杂软件工程实践中 | ①通识教育课:地球科学概论、生态学概论; ②大类平台课:计算机科学导论、计算机高级语言程序设计、高等数学A、概率论与数理统计A、线性代数A、大学物理基础; ③学科基础课:离散数学、数据结构、计算机组成原理、计算机网络、操作系统原理; ④专业主干课:软件工程基础、算法设计与分析、数据库原理及应用、地理信息系统原理与软件开发; ⑤实践环节:计算机高级语言课程设计 |
2 | 2.问题分析:能够运用数理、计算科学及软件相关工程科学的基本原理,识别、表达、分析复杂软件工程问题,以获得有效结论 | ①大类平台课:面向对象程序设计、概率论与数理统计A、大学物理基础; ②学科基础课:数据结构、操作系统原理; ③专业主干课:算法设计与分析、数据库原理及应用、软件设计与体系结构、软件测试、软件工程基础; ④实践环节:数据结构课程设计、操作系统原理课程设计、数据库原理与应用课程设计、软件工程综合实践 |
3 | 3.设计/开发解决方案:能够针对特定复杂软件与信息技术服务需求设计解决方案,包括软件架构、软件模块/构件、数据组织管理等设计,并能够在设计环节中体现创新意识,考虑社会、健康、安全、法律、文化以及环境等因素 | ①大类平台课:面向对象程序设计; ②专业主干课:软件工程基础、算法设计与分析、Java软件开发、数据库原理及应用、软件过程与项目管理、软件设计与体系结构、软件测试; ③实践环节:面向对象程序设计课程设计、计算机高级语言课程设计、软件开发综合实践、数据库原理与应用课程设计、软件工程综合实践、软件企业实习、毕业设计(论文) ④创新创业自主学习:其他(学科竞赛、发明创造、科研报告) |
4 | 4.研究:能够基于科学理论并采用先进技术方法,对复杂软件工程问题进行研究,包括建立计算模型、设计实验、分析与解释数据、并通过信息综合得到合理有效的结论和/或创新解决方法 | ①学科基础课:计算机组成原理、计算机网络; ②专业主干课:软件工程基础; ③实践环节:计算机组成原理实验、操作系统原理课程设计、软件工程综合实践、毕业设计(论文); ④创新创业自主学习:其他(学科竞赛、发明创造、科研报告) |
5 | 5.使用现代工具:能够针对复杂软件工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对复杂软件系统的分析、模拟、设计、验证、实现、应用、维护与管理,并能够理解其局限性 | ①大类平台课:计算机高级语言程序设计、面向对象程序设计; ②专业主干课:软件工程基础、Java软件开发、软件过程与项目管理、软件设计与体系结构、软件测试; ③实践环节:软件开发综合实践、软件工程综合实践、毕业设计(论文) |
6 | 6.工程与社会:能够基于工程相关背景知识合理分析、评价软件工程实践和复杂软件工程问题解决方案对社会、健康、安全、法律以及文化等的影响,并理解应承担的责任 | ①通识教育课:思想道德与法治、劳动教育; ②大类平台课:计算机科学导论; ③专业主干课:地理信息系统原理与软件开发; ④实践环节:劳动实践、软件企业实习; ⑤创新创业自主学习:其他(学科竞赛、发明创造、科研报告)、社会调查 |
7 | 7.环境和可持续发展:能够理解和评价针对复杂问题的软件工程实践对于环境、社会可持续发展的影响,并能够将环境、社会可持续发展的要求体现于解决方案 | ①通识教育课:形势与政策、地球科学概论、生态学概论; ②专业主干课:软件过程与项目管理; ③实践环节:软件企业实习; ④创新创业自主学习:社会调查 |
8 | 8.职业规范:具有人文社会科学素养、社会责任感,能够在软件工程实践中理解并遵守工程职业道德和规范,履行责任 | ①通识教育课:马克思主义基本原理、毛泽东思想和中国特色社会主义理论体系概论、习近平新时代中国特色社会主义思想概论、中国近现代史纲要、思想道德与法治、大学英语、军事理论; ②实践环节:软件企业实习,毕业设计(论文); ③创新创业自主学习:其他(学科竞赛、发明创造、科研报告) |
9 | 9.个人和团队:具备团队协作精神,能在多学科背景下的软件项目团队中承担个体、团队成员以及负责人的角色 | ①通识教育课:军事理论; ②专业主干课:软件过程与项目管理; ③实践环节:军事训练、软件工程综合实践、软件企业实习; ④创新创业自主学习:其他(学科竞赛、发明创造、科研报告) |
10 | 10.沟通:能够就复杂软件工程问题与业界同行及社会公众进行有效沟通和交流,包括撰写项目申请书、报告和软件文档、陈述发言、清晰表达或回应指令,并具备一定的国际视野,能够在跨文化背景下进行沟通和交流 | ①通识教育课:大学英语; ②专业主干课:软件工程基础 ③实践环节:软件工程综合实践、软件企业实习、毕业设计(论文); ④创新创业自主学习:其他(学科竞赛、发明创造、科研报告) |
11 | 11.项目管理:理解并掌握软件工程项目管理原理与经济决策方法,并能在多学科环境中应用,具有一定的软件项目管理能力。 | ①专业主干课:软件工程基础、软件过程与项目管理; ②实践环节:软件工程综合实践 |
12 | 12.终身学习:具有终身学习意识以及运用现代信息技术获取相关信息和新知识、新技术的能力,能通过不断学习适应发展需要。 | ①通识教育课:马克思主义基本原理、毛泽东思想和中国特色社会主义理论体系概论、习近平新时代中国特色社会主义思想概论、形势与政策、体育、大学英语; ②实践环节:软件企业实习、毕业设计(论文); ③创新创业自主学习:其他(学科竞赛、发明创造、科研报告) |
主干学科:
软件工程、计算机科学与技术。
专业核心课程:
计算机高级语言程序设计、面向对象程序设计、离散数学、数据结构、计算机组成原理、计算机网络、操作系统原理、软件工程基础、算法设计与分析、Java软件开发、数据库原理及应用、软件过程与项目管理、地理信息系统原理与软件开发、软件设计与体系结构、软件测试。
主要实践性教学环节:
计算机高级语言课程设计、面向对象程序设计课程设计、数据结构课程设计、计算机组成原理实验、操作系统原理课程设计、软件开发综合实践、数据库原理与应用课程设计、地理信息系统原理与软件开发课程设计、软件工程综合实践、软件企业实习、毕业设计(论文)、社会调查、创新创业实践。
核心课程与核心能力素质对应关系如表3所示。
毕业学分要求:159.5。
学制与学位:四年,工学学士学位。
本专业学生可以辅修的其他专业:通信工程、电子信息工程、自动化、数据科学与大数据技术、信息安全技术、智能科学与技术、空间信息与数字技术、工程管理、公共事业管理、市场营销、数字媒体艺术。
相近专业:计算机科学与技术。

图1 软件工程专业课程间层次关系

图2 软件工程专业培养目标及定位图
软件工程专业培养目标分解及定位
表2 软件工程专业毕业要求对培养目标的支撑关系矩阵
毕业要求 | 培养目标 |
目标1 | 目标2 | 目标3 | 目标4 | 目标5 |
1.工程知识 |
| √ | √ |
|
|
2.问题分析 |
| √ |
| √ |
|
3.设计/开发解决方案 |
| √ | √ | √ |
|
4.研究 |
| √ |
| √ |
|
5.使用现代工具 |
| √ | √ |
|
|
6.工程与社会 | √ |
| √ |
| √ |
7.环境和可持续发展 | √ |
| √ |
| √ |
8.职业规范 | √ |
|
|
| √ |
9.个人和团队 | √ |
| √ |
|
|
10.沟通 | √ |
| √ | √ |
|
11.项目管理 |
|
| √ |
|
|
12.终身学习 |
|
|
| √ | √ |
表 3 核心课程与核心能力素质对应关系表
课程 类别 | 课程名称 | 能力 | 素质 |
工程基础 | 问题分析 | 设计/开发解决方案 | 研究 | 使用现代工具 | 沟通 | 项目管理 | 工程与社会 | 环境和可持续发展 | 职业规范 | 个人和团队 | 终身学习 |
通 识 教 育 课 | 马克思主义基本原理 |
|
|
|
|
|
|
|
|
| M |
|
|
毛泽东思想和中国特色社会主义理论体系概论 |
|
|
|
|
|
|
|
|
| H |
| M |
习近平新时代中国特色社会主义思想概论 |
|
|
|
|
|
|
|
|
| H |
| M |
中国近现代史纲要 |
|
|
|
|
|
|
|
|
| M |
|
|
思想道德与法治 |
|
|
|
|
|
|
| H |
| M |
|
|
形势与政策 |
|
|
|
|
|
|
|
| H |
|
| M |
体育 |
|
|
|
|
|
|
|
|
|
|
| M |
大学英语 |
|
|
|
|
| H |
|
|
| L |
| M |
军事理论 |
|
|
|
|
|
|
|
|
| L | M |
|
大类平台课 | 计算机科学导论 | L |
|
|
|
|
|
| L |
|
|
|
|
计算机高级语言程序设计 | L |
|
|
| M |
|
|
|
|
|
|
|
面向对象程序设计 |
| M | M |
| M |
|
|
|
|
|
|
|
高等数学A | H |
|
|
|
|
|
|
|
|
|
|
|
概率论与数理统计A | M | L |
|
|
|
|
|
|
|
|
|
|
线性代数A | L |
|
|
|
|
|
|
|
|
|
|
|
大学物理基础 | L | L |
|
|
|
|
|
|
|
|
|
|
学科基础课 | 离散数学 | M |
|
|
|
|
|
|
|
|
|
|
|
数据结构 | M | H |
|
|
|
|
|
|
|
|
|
|
计算机组成原理 | M |
|
| M |
|
|
|
|
|
|
|
|
计算机网络 | L |
|
| H |
|
|
|
|
|
|
|
|
操作系统原理 | L | H |
|
|
|
|
|
|
|
|
|
|
专 业 核 心 课 | 软件工程基础 | L | H | H |
| M |
| M |
|
|
|
|
|
算法设计与分析 | H | M | H |
|
|
|
|
|
|
|
|
|
Java软件开发 |
|
| M |
| M |
|
|
|
|
|
|
|
数据库原理及应用A | H | L | H |
|
|
|
|
|
|
|
|
|
地理信息系统原理与软件开发 | H |
|
|
|
|
|
| H |
|
|
|
|
软件设计与体系结构 |
| H | M |
| H |
|
|
|
|
|
|
|
软件测试 |
| M | M |
| H |
|
|
|
|
|
|
|
专业前沿 文献阅读 |
| M |
| M | H | H |
| M |
| M | M | L |
软件过程与项目管理 |
|
| L |
| L |
| H |
| H |
| H |
|
实 践 环 节 | 军事训练 |
|
|
|
|
|
|
|
|
|
| M |
|
计算机高级语言课程设计 | L |
| L |
|
|
|
|
|
|
|
|
|
面向对象程序设计课程设计 |
|
| L |
|
|
|
|
|
|
|
|
|
数据结构课程设计 |
| M |
|
|
|
|
|
|
|
|
|
|
计算机组成原理实验 |
|
|
| L |
|
|
|
|
|
|
|
|
操作系统原理课程设计 |
| L |
| L |
|
|
|
|
|
|
|
|
软件开发综合实践 |
|
| L |
| H |
|
|
|
|
|
|
|
数据库原理及应用课程设计 |
| L | M |
|
|
|
|
|
|
|
|
|
地理信息系统原理与软件开发课程设计 | H |
|
|
|
|
|
| H |
|
|
|
|
软件工程综合实践 |
| H | M | M | H | H | H |
|
|
| H |
|
软件企业实习 |
|
| H |
|
| H |
| H | H | H | H | H |
毕业设计(论文) |
|
| H | H | H | H |
|
|
| H |
| H |
创 新 创 业 自 主 学 习 | 社会调查 |
|
|
|
|
|
|
| M | M |
|
|
|
其他(学科竞赛、发明创造、科研报告) |
|
|
| H |
| M |
|
|
|
| H | H |