软件工程 2017 版本科人才培养方案 一 学科类层面培养 1. 大类简介软件产业作为信息产业的核心是国民经济信息化的基础, 已经涉足工业 农业 商业 金融 科教文卫 国防和百姓生活等各个领域 采用先进的工程化方法进行软件开发和生产是实现软件产业化的关键技术手段 因此, 为积极促进我国软件产业发展, 加速我国信息化建设, 增强其国际竞争力, 急需培养大批软件工程领域的实用型 复合型软件工程技术人才和软件工程管理人才 软件工程大类只包含软件学院的软件工程专业 为促进南京大学软件工程专业本科生在入学 培养 毕业和学位授予等环节的规范化, 确保培养质量, 根据教育部有关要求, 依据南京大学有关本科生培养的规定, 特制定本方案 本方案作为南京大学培养软件工程专业本科生的指导性文件, 规定其培养目标 方向和要求, 以及培养对象 方式及学习年限, 并就其课程设置 课程修读和学位论文要求等给出指导性意见 2. 大一阶段课程设置大一阶段主要开设通修课程 ( 微积分 I 微积分 II 大学英语( 一 ) 大学英语( 二 ) 思想道德修养与法律基础 马克思主义基本原理概论 体育( 一 ) 体育( 二 ) 和军训) 专业方面开设 1 门学科导学课 ( 软件工程导学课 ) 1 门学科平台课 ( 计算机系统基础 ) 1 门专业核心课 ( 软件工程与计算 I ) 3. 学科分流机制因为本大类只有软件工程一个专业, 所以所有学生进入软件工程专业, 不存在分流问题 二 软件学院培养方案 ( 一 ) 院系简介 软件学院成立于 2002 年 4 月, 现设有软件工程本科专业, 软件工程一级学科硕士点, 软件工程一级学科博士点 软件学院目前教学科研及实验用房 6000 多平方米, 教学设备 1500 余台套, 总值 1600 多万元, 设有 11 个专业教学实验室 现有在校学生 1200 余人, 其中全日制本科生 958 人, 全日制研究生 250 余人 南京大学软件学院的综合实力在全国示范性软件学院中位居前列, 已经初步形成了全方位 立体化的实用型软件人才培养体系, 在教学建设方面取得了丰硕的成果, 在全国软件工程专业中处于标杆地位, 对中国软件工程学科的形成和发展起到了积极的作用 642
( 二 ) 培养目标及特色软件工程专业本科生的培养目标是针对国民经济信息化建设和发展的需要, 面向软件产业界对软件工程技术人才的需求, 培养具有国际竞争能力的多层次复合型软件实用人才 作为一名合格的软件工程专业本科毕业生, 应当符合国民经济信息化建设和发展需要, 能够成为企业所需要的较高层次的软件工程技术和管理人才, 其基本能力应当达到 ( 具有国际水准的 ) 程序员 高级程序员 软件开发工程师 以及项目质量管理人员的水平 软件工程专业本科生培养的基本思路是强化基础 注重 针对软件产业的人才需求, 本科生阶段强调宽口径培养, 不具体细分专业培养方向, 但考虑专业课程模块设置, 从而使得毕业生既具备扎实的专业基础和宽广的知识面, 又较深入地认识某类软件系统与应用领域 软件工程专业本科生采用系统化课程学习和软件工程专业相结合的培养方式, 在培养中贯彻理论基础坚实 科学思维敏捷 专业知识宽广 动手能力突出 工程训练有素等措施, 力图实现基础理论与科学素养 专业知识与能力 工程训练与职业素质均衡发展的培养理念 本专业实行学分制, 培养阶段划分为基础理论课程教学阶段 专业技能课程教学阶段和软件工程专业阶段等三个培养阶段 软件工程专业的基础课程应涵盖软件基础, 软件工程基础, 数学 工程与职业基础, 主要在基础理论课程教学阶段实施 该阶段包括 4 个 18 周的正常学期和一 二年级末暑期学校 软件工程专业的专业课程应涉及较广泛的软件系统与应用领域, 主要在专业技能教学阶段实施 该阶段通过安排一组可拆卸与重组的专业方向课程模块供各类学生选修, 实行就业创业 学术研究等 三三制 人才培养分流, 并针对卓越工程师计划和学术研究性人才进行专业深度培养, 对于创业型人才进行跨专业知识融合培养 软件工程专业阶段按三三制培养方案分流, 始于四年级第 14 周, 具体如下 : 学术型 : 进入科研实验室, 通过本科生创新计划完成软件工程专业和毕业论文 ; 创业型 : 进入创业孵化器, 通过创业计划实施完成软件工程专业和毕业论文 ; 就业型 : 通过基于问题的实训 软件研发 实习等完成软件工程专业和毕业论文 ( 三 ) 毕业要求 毕业生在综合素质方面应该具备一下能力 : 1 软件工程专业本科毕业生应较好地掌握马克思主义 毛泽东思想和邓小平理论; 拥护党的基本路线和方针 政策 ; 热爱祖国, 遵纪守法, 品行端正, 身心健康, 具有良好的职业道德和创业精神, 积极为我国经济建设和社会发展服务 2 软件工程专业本科毕业生应具备科学的世界观, 掌握科学方法与工程方法 ; 掌握扎实的软件基础理论知识和较宽广的软件工程专业知识, 具有技术创新能力 ; 受到良好的软件工程训练, 具有较强的工程能力和团队协作能力 ; 熟悉软件应用和工具, 具备运用先进的工程化方法 技术和工具从事某一应用领域软件分析 设计 开发 维护等工作的能力 643
3 软件工程专业本科毕业生应达到基本的数学和语言要求; 熟练掌握英语, 具备良好的阅读 理解和撰写外语资料的能力和进行国际化交流的能力 ; 拥有较好的沟通技巧和团队工作能力, 通晓和遵守法律与职业道德 毕业生在专业技术方面还应具备以下的一般特征 : 对软件系统 计算机系统 信息系统乃至与计算机软件相关的社会系统具有系统级的认识能力 ; 具备扎实的理论基础, 能够全面通晓计算机软件和软件工程的基础知识, 较深入理解至少一个计算机软件应用领域 ; 有较强的动手能力, 能够具有一定的系统分析和软件设计的能力, 熟练使用两种以上主流的操作系统 数据库管理系统和程序设计语言, 做到理论与相结合 ; 能够合理认知软件科学与技术中的重复概念 ; 有实际项目的工作经验 ; 具备自学习的能力以适应软件技术的快速变化, 能够通过自学的方式在较短时间内掌握系统软件的使用 ; 能够综合应用各类方法 技术和工具, 运用工程技术方法解决复杂性软件问题的能力 ; 具备语言 交流 写作等基本的软件从业能力, 认同现行的法律 道德和伦理 ( 四 ) 课程体系课程体系如下图所示 : 毕业设计专业与毕业设计 (10 学分 ) 专业任意选修 ( 含交叉复合 ) 课程 (10 学分 ) 专业限定范围选修课程 ( 第二第三方向任选 8 学分 ) 开放选修 专业方向选修课程 (8 学分 ) 数据科学系统 数据科学应用 面向互联网 + 的软件开发技术 嵌入式物联网 软件工程高级技术 专业自构建 学科专业 专业核心课程 (34 学分 ) 学科平台课程 (21 学分 ) 通识通修 通修课程 (45 学分 ) 文化素质类通识课程 (14 学分 ) 1. 课程模块介绍 1.1. 通修课程 ( 必修环节 ) 共 45 个学分 包括 : 军事 军训 军事理论与军事高科技 (3 学分 ) 思想政治 思想道德修养与法律基础 (3 学分 ) 形势与政策 (2 学分 ) 644
中国近代史纲要 (2 学分 ) 马克思主义基本原理 (3 学分 ) 毛泽东思想理论与 (6 学分 ) 分层次通修 微积分 (10 学分 ) 线性代数 (4 学分 ) 大学英语 (8 学分 ) 体育 (4 学分 ) 1.2. 学科平台课程 ( 必修环节 ) 共 6 门 21 学分, 主要讲授计算系统 软件工程 软件职业和软件数学方面的专业基础知识 包括 : 计算系统基础 (4 学分 ) 数据结构与算法 (4 学分 ) 离散数学 (3 学分 ) 计算机操作系统 (4 学分 ) 计算机组织结构 (3 学分 ) C++ 高级程序设计 (3 学分 ) 1.3. 专业核心课程 ( 必修环节 ) 共 10 门 34 个学分, 主要讲授计算系统与软件工程方面的重要专业知识 包括 : 面向计算思维的专业核心课程 软件工程与计算 I(4 学分 ) 软件工程与计算 II(4 学分 ) 软件工程与计算 III (3 学分 ) 软件系统设计 (3 学分 ) 软件质量与管理 (3 学分 ) 面向互联网 大数据 人工智能思维的专业核心课程 互联网计算 (4 学分 ) 数据科学基础 (3 学分 ) 数据管理基础 (4 学分 ) 需求与商业模式创新 (3 学分 ) 人机交互系统 (3 学分 ) 1.4. 专业方向选修课程包括专业方向课程模块和专业任选课程, 至少选修 26 个学分 针对卓越工程师培养计划, 主要讲授软件分析 设计 开发和支持过程中先进实用的方法 技术和工具, 以及软件系统和软件应用技术方面的知识 针对多元化人才培养要求, 主要讲授学术研究 创业就业 交叉复合等方面的课程 1) 专业方向选修课程模块每个学生必须选修一个专业方向课程模块的 3 门课程 +1 门课程, 计 8 个学分 专 645
业方向课程模块按照可拆卸方式设计, 目前开设的课程模块有 嵌入式物联网专业方向 嵌入式系统概论 (2 学分 ) Linux 程序设计 (2 学分 ) 物联网应用软件开发 (2 学分 ) 数据科学系统 云计算 (2 学分 ) 商务智能 (2 学分 ) 数据集成 (2 学分 ) 数据科学应用 大数据分析 (2 学分 ) 机器学习 (2 学分 ) 计算机视觉 (2 学分 ) 软件工程高级技术 自动化测试 (2 学分 ) 面向服务的软件工程 (2 学分 ) 经验软件工程 (2 学分 ) 面向互联网 + 的软件开发技术 Web 前端开发 (2 学分 ) 服务端开发 (2 学分 ) 服务计算和 SOA 开发 (2 学分 ) 自构建专业方向 4 门课程, 学生自主提出的 4 门体系化专业课程, 经学院在三年级第一周审定备案, 即构成自主构建专业方向 2) 专业任选课课程要求 26 学分, 包括 : 其它专业方向课程模块中的课程 第二三方向课程 : 每个学生必须选修其它两个专业方向课程模块的 4 门课程, 计 8 个学分 目录内常设课程 : 移动互联网软件工程 (2 学分 ) Linux 系统基础 (2 学分 ) 编译原理 (2 学分 ) 管理信息系统 (2 学分 ) 基于多核的并行编程 (2 学分 ) 电子商务 (2 学分 ) 计算机图形学 (2 学分 ) 软件工程经济学 (2 学分 ) 分布式人工智能(2 学分 ) 虚拟机技术(2 学分 ) DevOps(2 学分 ) 数据库开发 (2 学分 ) 卓越工程师训练营(2 学分 ) 目录外课程 :2 学分 / 门, 如 : 外籍教师 企业界专家开设的课程 646
1.5. 文化素质课通识课要求选修 14 学分 ( 其中必含 悦读经典 2 学分 ), 最多计 14 学分 包括 : 通识教育课程 新生研讨课程 悦读经典课程 (2 学分 ) 新生导学课程 (37225001 软件工程导学,1 学分 ) 1.6. 毕业设计 ( 必修环节 ) 计 10 学分, 包括软件工程专业 毕业论文 ( 五 ) 课程体系 - 学习成果矩阵 表 1 课程体系 - 学习成果矩阵 课程体系 学习成果 课程类别课程名知识能力素质 通识教育 通修课程 通修课程 学科专业 学科专业 创新创业 微积分 I 微积分 II 线性代数 大学英语 ( 一 ) 大学英语 ( 二 ) 计算系统基础软件工程与计算 I 软件工程与计算 II 数据结构与算法离散数学操作系统互联网计算数据管理基础数据科学基础 需求与商业模式创新软件系统设计软件质量与管理人机交互系统 软件工程与计算 Ⅲ 卓越工程师训练营 掌握基本的人文和社会科学知识 掌握从事本专业工作所需的数学和其他相关的自然科学 系统科学知识以及一定的经济学与管理学知识 掌握计算学科基础理论知识和专业知识, 了解本学科的核心概念 知识结构和典型方法 掌握软件工程学科的基本理论和基本知识, 熟悉软件需求分析 设计 实现 评审 测试 维护以及过程与管理的方法和技术, 了解软件工程规范和标准 647 具有初步的外语应用能力, 能阅读本专业的外文材料, 具有一定的国际视野和跨文化交流 竞争与合作能力 具备综合运用掌握的知识 方法和技术解决实际问题的能力, 能够权衡和选择各种设计方案, 使用适当的软件工程工具设计和开发软件系统, 能够建立规范的系统文档经过系统化的软件工程基本训练, 具有参与实际软件开发项目的经历, 具备作为软件工程 具有良好的人文社会科学素养 职业道德和心理素质, 社会责任感强 了解与本专业相关的职业和行业的重要法律法规及方针与政策, 理解软件工程技术理论的基本要求
开放选修 师从事工程所需的专业能力 ; 充分理解团队合作的重要性, 具备个人工作与团队协作的能力 人际交往和沟通能力以及一定的组织管理能力 了解软件工程学科的前沿技术和软件行业的发展动态, 在基础研发 工程设计和等方面具有一定的创新能力 ; 能够运用所学的知识 技能和方法对系统的各种解决方案进行合理的判断和选择, 具备一定的批判性思维能力 ; 具备自我终身学习的能力, 自觉学习随时涌现的新概念和新技术, 使自己的专业能力保持与学科的发展同步 ( 六 ) 培养规格与路径 1. 专业教育 ( 专业培养阶段 ) (1) 软件工程专业准入准出要求软件工程专业准入课程包含 1 门学科平台课和 1 门专业核心课 : 准出课程包含 5 门学科平台课程和 9 门专业核心课程 (1) 专业准入其他 ( 院系 ) 大类学生申请准入, 须达到如下标准 :1. 第二学期结束, 完成通识通修课程学习, 至少取得 30 个学分, 第四学期结束, 完成通识通修课程学习, 至少取得 48 个学分, 大学数学课程符合原院系专业要求 ;2. 完成或正在修读软件工程专业 1 门准入课程的学习 ( 计算系统基础 或 软件工程与计算 I ) 课程名称 课程学分 周学时 修读学期 准入 / 准出 计算系统基础 4 4 一 准入 软件工程与计算 Ⅰ 4 5 二 准入 (2) 专业准出课程名称 课程学分 周学时 修读学期 准入 / 准出 离散数学 3 3 三 准出 数据结构与算法 4 5 三 准出 计算机组织结构 3 3 三 准出 软件工程与计算 Ⅱ 4 4 四 准出 互联网计算 4 5 四 准出 数据科学基础 3 3 四 准出 648
软件系统设计 3 3 五准出数据管理基础 4 5 五准出计算机与操作系统 4 5 五准出 C++ 高级程序设计 3 3 五准出需求与模式创新 3 3 六准出软件工程与计算 Ⅲ 3 3 六准出人机交互系统 3 3 七准出软件质量与管理 3 3 七准出外院系学生申请专业准入, 需达到以下标准 : 第二学期结束, 完成通识通修类课程 30 个学分, 大学数学课程符合原院系专业要求 ; 第四学期结束, 完成通识通修课程 48 个学分, 大学数学课程符合原院系专业要求 完成或正在修读软件工程专业 1 门准入课程的学习 ( 计算系统基础 或 软件工程与计算 I ) 具体实施细则如下 : 按学校规定的专业准入工作程序进行 ; 所有申请专业准入学生需参加学院组织的复试, 按复试成绩, 确定准入名单 2. 多元发展 ( 多元培养阶段 ) 在开放选修模块中, 各专业 专业学术类 交叉复合类 就业创业类 不同路径的课程清单及修读建议 (1) 专业学术类人才培养软件工程专业包含一门本硕贯通课程 : 经验软件工程 (2 学分 ) (2) 就业创业类人才培养 : 在学校开设创新创业课程的基础上, 结合各专业特点, 列出本院系开设的创新创业课程清单, 如嵌入式专业课 行业课 平台课等 目前开设的创新创业课程有 嵌入式系统概论 (2 学分 ) Linux 程序设计 (2 学分 ) 物联网应用软件开发 (2 学分 ) 云计算 (2 学分 ) 商务智能 (2 学分 ) 数据集成 (2 学分 ) 大数据分析 (2 学分 ) 机器学习 (2 学分 ) 计算机视觉 (2 学分 ) 自动化测试 (2 学分 ) 面向服务的软件工程 (2 学分 ) 经验软件工程 (2 学分 ) 649
Web 前端开发 (2 学分 ) 服务端开发 (2 学分 ) 服务计算和 SOA 开发 (2 学分 ) 移动互联网软件工程 (2 学分 ) Linux 系统基础 (2 学分 ) 编译原理 (2 学分 ) 管理信息系统 (2 学分 ) 基于多核的并行编程 (2 学分 ) 电子商务 (2 学分 ) 计算机图形学 (2 学分 ) 软件工程经济学 (2 学分 ) 分布式人工智能 (2 学分 ) 虚拟机技术 (2 学分 ) DevOps(2 学分 ) 数据库开发 (2 学分 ) 卓越工程师训练营 (2 学分 ) ( 七 ) 导学指南 明确各专业 专业学术类 就业创业类 在通识教育 专业教育 多元发展各阶 段修读与选课的建议与指导说明 为了迎接新一届 小蓝鲸 的到来, 南京大学面向南大新生重点推出 软件工程导学 课, 帮助学生认识学科脉络 了解大学学习方法 理性抉择未来的学习方向, 从而完成 中学生到大学生的角色转变 在大一第一学期, 我们将由多位软件学院的老师 企业界的工程师和软件学院的杰出 校友从不同的角度来说说他们对软件工程的理解 我们并非试图去覆盖所有软件工程的知 识点, 我们只是希望去让对软件工程有兴趣的学生了解到 我要学什么 我应如何学 我今后能做什么 这样一些基本的问题的部分答案 主要包含下列主题 : 专业认知 - 回顾过去 ( 计算机与操作系统 编程语言 软件工程历史职业和经济 学 ) 思维能力 ( 计算思维 互联网思维 ) 专业认知 - 展望未来 ( 数据管理 AI 和机器学习, 网络互联网 移动互联网 多 媒体和虚拟现实 网络安全 ) 创新创业 ( 老师讲历史典范 企业讲 ) 学习能力 ( 自学习 再学习 专业知识体系的认知 ) 650
软件学院 软件工程专业本科教学计划 备注 : 准入课程以院系培养方案或学校公布的学科分流 专业准入相关文件为准 课程模块 课程分类 通识教育 课程性质 课程编号 课程名称 ( 英文课程名称 ) 通识通识可选修全校通识课程 新生研讨悦读经典新生导学 英语 通识 通识 课程学分 周学时 可选修全校新生研讨课程 可选修全校悦读经典课程 修读学期 准入 / 准出 理论 / 通识 37225001 软件工程导学 1 1 一理论 通修 00020010A 大学英语 ( 一 ) 4 4 一理论 通修 00020010B 大学英语 ( 二 ) 4 4 二理论 通修 00010011A 微积分 I( 第一层次 ) 5 6 一理论 学生毕业应修总学分构成 数学 通修 00010011B 微积分 II( 第一层次 ) 5 6 二理论 通识通修 通修课程 思想政治 通修 00010011C 线性代数 ( 第一层次 ) 4 4 三理论 通修 00000010 马克思主义基本原理概论 3 3 自选 通修 00000020 思想道德修养与法律基础 3 3 自选 通修 通修 00000030A 00000030B 毛泽东思想和中国特色社会主义理论体系概论 ( 理论部分 ) 毛泽东思想和中国特色社会主义理论体系概论 ( 部分 ) 理论 + 理论 + 3 3 自选理论 3 3 修完理论后的假期 通修 00000040 中国近现代史纲要 2 2 自选理论 本模块应修学分总数 :59 ( 其中通识教育模块课程, 要求不少于 14 个学分, 悦读经典 2 学分 ) 通修 00000050A 形势与政策 ( 上 ) 1 1 五理论 通修 00000050B 形势与政策 ( 下 ) 1 1 六理论 体育 通修 00040010A 体育 ( 一 ) 1 2 一 通修 00040010B 体育 ( 二 ) 1 2 二 通修 00040010C 体育 ( 三 ) 1 2 三 通修 00040010D 体育 ( 四 ) 1 2 四 理论 + 理论 + 理论 + 理论 + 军事 通修 00050020 军训 1 1 一 通修 00050010 军事理论与军事高科技 2 2 二理论 学科专业 学科平台 共通性课程 平台 25000010 计算系统基础 4 4 一准入理论 平台 25000400 离散数学 3 3 三准出理论 平台 25000210 计算机组织结构 3 3 三准出理论 平台 25000250 C++ 高级程序设计 3 3 五准出理论 本模块应修学分总数 :55 651
菜单式课程 平台 25000410 数据结构与算法 4 5 三准出理论 平台 25000420 计算机与操作系统 4 5 五准出理论 核心 25000430 软件工程与计算 Ⅰ 4 5 二准入理论 核心 25000440 软件工程与计算 Ⅱ 4 4 四准出理论 核心 25000070 数据科学基础 3 3 四准出理论 核心 25000450 互联网计算 4 5 四准出理论 专业核心 核心 25000460 数据管理基础 4 5 五准出理论 核心 25000110 软件系统设计 3 3 五准出理论 核心 25000380 软件工程与计算 Ⅲ 3 3 六准出 理论 + 核心 25000090 需求与商业模式创新 3 3 六准出理论 核心 25000340 人机交互系统 3 3 七准出理论 核心 25000470 软件质量与管理 3 3 七准出理论 开放选修 专业学术类 就业创业类 本硕贯通专业选修 创新创业课程 选修 25010960 经验软件工程 2 4 六理论 选修 25011040 编译原理 2 4 五理论 行业课 选修选修选修选修选修选修选修选修选修选修选修选修选修选修选修 25010970 自动化测试 2 4 五理论 25011070 嵌入式系统概论 2 4 五理论 25010870 大数据分析 2 4 五理论 25010880 云计算 2 4 五理论 25010980 Web 前端开发 2 4 五理论 25011100 商务智能 2 4 五理论 25011060 Linux 系统基础 2 4 五理论 25011130 面向服务的软件工程 2 4 六理论 25011090 Linux 程序设计 2 4 六理论 25011000 服务端开发 2 4 六理论 25010900 机器学习 2 4 六理论 25011010 物联网应用软件开发 2 4 六理论 25011150 服务计算与 SOA 开发 2 4 六理论 25011140 计算机视觉 2 4 六理论 25011030 数据集成 2 4 六理论 三条发展路径的学生在相应模块应修学分总数 :26 选 25010910 分布式人工智能 2 4 六理论 652
修 创新创业 平台课 选修 选修选修选修选修选修选修选修选修选修选修选修选修选修选修选修 选修 25011050 电子商务 2 4 六理论 25011020 数据库开发 2 4 六理论 25011110 基于多核的并行编程 2 4 六理论 25010890 DevOps 2 4 六理论 25010990 移动互联网软件工程 2 4 七理论 25011080 计算机图形学 2 4 七理论 25011160 25011170 25011180 25011190 25011200 软件工程高级技术方向综合嵌入式物联网方向综合面向互联网 + 的软件开发技术方向综合数据科学应用方向综合数据科学系统方向综合 2 4 七 2 4 七 2 4 七 2 4 七 2 4 七 25011120 管理信息系统 2 4 八理论 25010940 虚拟机技术 2 4 八理论 25010930 软件工程经济学 2 4 八理论 25020140 卓越工程师训练营 2 2 暑期二 可选全校创新创业平台课程 创新创业为 2 学分, 学生可通过参加创新与实验 大学生创新创业训练计划 学科竞赛 发表论文 获得专利等进行学分认定, 具体参照 南京大学大学生创新创业学分认定和转换管理办法 公共选修选修可选修全校公共选修课程 毕业论文 / 设计 25000480 毕业论文与毕业设计 10 八 学分总计 150 理论 + 毕业论文 / 设计学分总数 : 10 653