1、软件工程专业培养计划一、专业培养目标及培养要求1、培养目标本专业培养德、智、体、美全面发展的实用型、工程型高级软件开发技术人才和软件项目管理人才。通过大学四年的学习,学生具备扎实的数理基础、计算机科学基础、软件工程基本理论和基本知识,具有良好的英语运用能力,受到软件工程的基本训练,具备很强的软件开发能力和良好的软件工程素质,以及较强的创新和创业意识、较强的竞争精神和团队协作精神,能够从事计算机软件教学、科学研究、软件开发与项目管理等工作。2、培养要求(1)知识结构要求掌握基本的人文和社会科学知识,包括马列主义、毛泽东思想、邓小平理论、历史、社会学、情报交流、法律、环境等;掌握从事本专业工作所需
2、的工程科学技术知识,包括数学、物理、系统科学以及一定的经济学与管理学知识;掌握计算机学科基础理论知识,了解本学科的核心概念、知识结构、基本原理和典型方法;熟练掌握软件工程的基本理论知识,包括软件系统需求分析与建模、软件设计与实现、软件验证与确认、软件维护、软件项目管理等知识;(2)能力结构要求:具备获取知识的能力、应用知识的能力、实践动手能力、创新能力和组织协调能力知识要求受到程序设计的良好训练,具有较强的程序设计能力,能够熟练使用主流的程序设计工具进行软件代码开发的能力。受到系统的软件开发工程训练,了解通用的软件工程设计方法,具备作为软件工程师从事工程实践所需的专业能力;掌握基本的软件项目管
3、理工具,具有初步的软件项目配置管理能力。了解软件工程学科的发展现状和趋势,具有创新意识,并具有技术创新和产品创新的初步能力;充分理解团队合作的重要性,具备个人工作与团队协作的能力,具备人际交流以及与项目干系人之间的良好沟通能力;具有初步的外语应用能力,能阅读本专业的外文材料,具有一定的国际视野和跨文化交流、竞争与合作能力;(3)素质结构要求:具备思想道德素质、文化素质、专业素质和身心素质。热爱祖国,拥护中国共产党的领导。掌握马克思主义、毛泽东思想和邓小平理论的基本原理。具有爱国主义、集体主义、社会主义观念和法制观念。具有良好的思想道德素质,善于与他人协同工作。自觉职业法律法规、标准规范,以及应
4、遵守的职业道德规范和职业行为准则;具有良好的质量、安全、服务意识,能够履行质量承诺,主动服务用户。养成良好的体育锻炼习惯,受到必要的军事训练,达到国家规定的大学生体育和军事训练合格标准,具备健全的心理和健康的体魄。二、专业人才培养标准0 总则本标准系依据西南交通大学关于修订本科人才培养方案的指导性意见(征求意见稿)制定,旨在为培养软件工程专业的本科生提出其应达到的知识、能力与素质的专业要求。可以简称为:软件本科标准。本科软件工程专业毕业生主要从事软件工程项目或产品的开发、软件运行管理或软件系统维护。按照本标准培养的软件工程专业的本科学生,达到了见习软件工程师岗位工作的技术能力要求,可获得见习软
5、件工程师技术资格。1 掌握一般性和专门的工程技术知识,具备一定的知识推理能力1.1 具备从事软件工程工作所需的工程科学技术知识以及一定的人文和社会科学知识(1)工程科学:以数学和相关自然科学为基础,一般应包括高等数学、线性代数、大学物理等。(2)工程技术:包括数字电子技术、计算方法、概率与统计分析、工程经济学等知识,并侧重发现和解决实际工程问题。(3)人文和社会科学:具备基本的工程经济、管理、社会学、情报交流、法律、环境等人文与社会学的知识。熟练掌握一门外语,可运用其进行技术的沟通和交流。(4)具备文献检索、资料查询及运用现代信息技术获取相关信息的基本知识和方法1.2 掌握软件工程基础知识和本
6、专业的基本理论知识及具备解决工程技术问题的初步技能(1)掌握程序设计的基本知识与技术,包括程序设计基础、数据结构、问题求解技术、抽象、计算机组织结构、系统基本概念、程序设计语言基础、操作系统基础、数据库基础、网络通信基础等。(2)掌握软件系统构造技术,包括 API 设计与应用、面向对象运行时问题、错误处理、异常处理和容错、基于状态的代码开发技术;了解实用设计方法和现代设计方法。(3)掌握软件开发环境的配置和使用方法,掌握 GUI 开发工具、面向应用的编程语言(可视化语言、标记语言等)的使用方法1.3 掌握软件建模与分析的基本理论知识,具备基本的软件需求分析初步能力(1)掌握常用软件建模的种类,
7、包括信息建模,行为建模、结构建模、功能建模、领域建模和企业建模;每种建模方法的原理、针对解决的问题、使用的符号系统;能够根据解决的问题和软件过程的不同选择建模工具。(2)熟悉需求分析的基本理论、需求分析的内容和基本方法,掌握需求获取的基本方法和技术;掌握需求表达的工具和方法,以及软件需求文档编写的基本方法;能够运用需求分析的工具进行软件需求分析,并编写出规范的需求分析文档。(3)熟悉需求确认的基本内容; 1.4 掌握软件设计的基本理论知识,具备软件设计的初步能力(1)熟悉软件设计的内容和设计原理,能够根据特定的开发项目确定需要设计的内容及设计步骤。(2)掌握面向功能的设计和面向对象的设计方法,
8、能够根据特定的软件项目内容和运行环境,选择设计方法,把需求模型映射成设计模型。(3)掌握基本的软件架构设计技术,能够根据软件的功能需求和非功能约束,选择合适的软件架构模式和架构实现技术。(4)掌握基本的软件人机界面设计原理和技术,能够根据用户特性设计可用性强的软件人机交互界面。(5)掌握详细设计的方法和技术,能够运用详细设计的工具进行算法设计;(6)掌握数据库设计的基本原理和技术,能够针对特定领域问题,设计系统的数据库概念模型、逻辑模型和物理模型,并选择合适的数据库管理系统,实现相应的数据库设计。1.5 掌握软件验证与确认的基本理论知识,具备软件测试的基本能力(1)熟悉软件验证和确认的目标、内
9、容、方式方法,以及对软件质量保证的重要性。掌握软件评审的基本方法,会进行常规的软件评审。(2)掌握软件单元测试、集成测试、系统和确认测试的内容和方法;掌握白盒测试、黑盒测试的测试技术,会进行软件白盒测试和黑盒测试。(3)掌握软件测试计划制定、软件测试用例设计的基本方法和技术,能够针对特定的软件项目制定基本的测试计划和设计测试用例。(4)掌握人机界面测试和评价的基本方法。(5)熟悉软件测试工具,能够运用测试工具进行软件测试。(6)熟悉软件测试问题分析的基本方法,掌握基本的软件调试技术。1.6 软件过程与软件质量(1)了解软件过程的基本概念、软件工程过程建模与规范、软件过程度量与分析、软件工程过程
10、改进、软件过程质量分析与控制的基本内容。(2)熟悉软件生命周期模型,基本能够根据特定软件项目的特点选择软件过程模型。(3)熟悉软件质量的概念和软件质量属性及度量方法;熟悉有关软件质量的主要国际标准(如ISO/IEEE 有关的软件质量标准) ;熟悉软件质量保证的主要措施。1.7 软件管理(1)熟悉软件项目管理的基本内容、管理模型、项目管理角色、软件管理类型等相关内容,能够根据软件项目特点扮演好相应的角色,能够与项目组成员建立良好的沟通渠道。(2)熟悉项目计划的内容,能够根据项目特点制定基本的软件项目开发计划。(3)熟悉软件配置管理的知识和内容,能够针对特定的项目,实施软件项目配置管理。1.8 系
11、统与应用(1)掌握基于网络的管理信息系统的开发方法,能够以项目组的形式完整地开发一个特定应用的管理信息系统。(2)熟悉铁路信息系统的软件架构和集成技术,具备基本的开发与铁路运输、铁路运营相关的信息系统的知识和能力。1.9 了解本专业领域技术标准2 软件系统的设计、运行和维护或解决实际工程问题的系统化训练,初步具备解决工程实际问题的能力2.1 能够根据用户初步要求,进行项目可行性分析,制定软件开发的初步计划;2.2 参与软件项目的需求调研,获取用户需求,按照规范的需求分析文档格式和标准的建模工具编写需求分析文档;2.3 参与系统设计,根据需求分析文档中的功能需求和非功能约束建立软件架构模型,给出
12、系统设计方案,包括概要设计和详细设计方案。2.4 选用合适的实现工具(系统环境和开发工具)编写程序代码,并进行单元测试、集成测试和确认测试,使软件的功能和质量指标达到用户需求的要求。2.5 实施软件系统的安装和初始化,建立软件系统的运行环境,使软件系统在特定的运行环境中运行起来。2.6 参与软件开发过程改进建议的提出,主动从实践中不断提高软件过程控制能力;2 .7 具有较强的创新意识,具备软件产品开发、系统维护改造的初步能力。3 掌握项目及工程管理的基本知识并具备参与能力3.1 具有较强的软件产品质量、职业道德、系统安全、信息安全和法律意识,在法律法规规定的范畴内,按确定的相关标准和程序要求开
13、展工作;3.2 使用合适的软件开发过程管理方法,制定开发管理计划,合理配置人力资源和其它资源;3.3 具备应对软件技术变化和需求变化的初步能力,能够发现质量标准、程序和预算的变化,并采取恰当的行动;3.4 参与管理、协调团队工作,确保工作进度;3.5 参与评估项目,提出项目改进建议及软件过程改进建议。4 具备有效沟通与交流的能力4.1 能够使用技术语言,在跨文化环境下进行沟通与表达,以适应我国软件企业参与国际合作的需要;4.2 能够进行工程文件的编纂,如可行性分析报告、项目任务书、投标书等,并可进行说明、阐释;4.3 具备较强的人际交往能力,善于理解用户需求和意愿,善于与同事交流与沟通;4.4
14、 具备较强的适应能力,自信、灵活地处理新的和不断变化的人际环境和工作环境;4.5 能够跟踪本领域最新技术发展趋势,具备收集、分析、判断、归纳和选择国内外相关技术信息的能力;4.6 具备团队合作精神,并具备一定的协调、管理、竞争与合作的初步能力。5 具备良好的职业道德,体现对职业、社会、环境的责任5.1 掌握一定的职业法律法规、标准知识,以及应遵守的职业道德规范。遵守所属职业体系的职业行为准则;5.2 具有良好的质量、安全、服务意识,能够履行质量承诺,自觉遵守计算机系统安全、软件系统安全和信息安全有关的规定,主动服务用户。5.3 为保持和增强其职业能力,根据自身的发展需求,制定并实施继续职业发展
15、计划。三、学制与学位学制:四年学位:工学学士四、专业特色毕业生具备扎实的理论基础,合理的知识结构,掌握最新的软件开发技术和软件项目管理方法,受到系统的软件工程方法训练、全面的的软件开发能力培养和软件工程意识培养,具有较强的工作适应性,能够从事计算机软件系统管理、软件开发和软件项目管理工作。五、主干学科与专业核心课程主干学科:计算机科学与技术、软件工程。 专业核心课程:高等数学、大学物理、外语、程序设计、离散数学、数据结构、数据库原理、操作系统、编译原理、面向对象程序设计、数字电路、计算机组成原理、微机接口技术、计算机网络、算法设计与分析、软件工程、软件项目管理、软件系统分析与设计、软件质量保证
16、与测试、人机交互、计算机图形学。六、主要实践教学环节及基本要求主要实践教学 学时 学分 基本要求军事技能训练 2 周 1 完成解放军条令条例教育与训练、轻武器射击、战术、军事地形学及综合训练软件设计实习 4 周 2掌握面向对象的程序设计方法和一种面向对象的软件开发工具,完成一个小型题目的软件代码设计和测试工作。了解软件开发过程,体验 IT 企业文化,了解公司的具体运作软件工程/程序综合设计实习 4 周 2掌握.net 及 C#开发环境的软件开发方法,完成一个小型题目的软件开发/初步掌握软件开发基本过程和软件开发文档编写规范和方法软件工程/网络软件开发实习 4 周 2掌握基于 J2EE 的软件开
17、发和以客户/服务器为基础的软件开发技术,完成具有一定复杂度和规模的软件项目开发。掌握软件开发过程、文档编写规范和编写技术课外创新实践16 周(每周 4学时)2 社会实践、文化素质教育实践、研学实践、学科竞赛等课内/单列实验课 20 门 21 按课程教学要求进行的设计与实验毕业设计 16 周 16结合技术理论、科研项目和用人单位的要求,进行综合性设计通过调查技术现状,收集资料和毕业设计,提高分析解决问题的能力、知识综合运用的能力和软硬件开发的能力合计 46七、毕业学分基本要求 课程体系 学分要求思想政治类 14军事类 3通识教育类 16外语类 12通识与公共基础课程体育类 449计算机类数学类
18、16物理类 8学科基础课 4学科与专业基础课程专业基础课 5583专业(专业方向)课程 27专业(专业方向)课程专业实验、实践 7 34毕业设计(论文) 16 16课外创新实践 2 2合计 184八、课程设置细化表课程类型 课程代码 课程名称 课程性质 总学分课内实践教学学分开课学期 开课学院思想道德修养与法律基础 必修 3 1 1 学期 政治学院英语 I 必修 4 1 学期 外语学院体育 I 必修 1 1 学期 体育部军事理论 必修 2 1 1 学期 武装部中国近代史纲要 必修 2 2 学期 政治学院英语 II 必修 4 2 学期 外语学院体育 II 必修 1 2 学期 体育部马克思主义基本
19、原理 必修 3 1 3 学期 政治学院通用学术英语 必修 2 3 学期 外语学院体育 III 必修 1 3 学期 体育部高级英语 B 必修 2 4 学期 外语学院通识与公共基础课程模块共 49 学分,必修 45 学分,任选 4学分英语限选课(限选 2 学分) 职场英语 必修 2 4 学 外语学院期英语口语-交际与文化 必修 2 4 学期 外语学院英语口语-思辨与学术 必修 2 4 学期 外语学院体育 IV 必修 1 4 学期 体育部毛泽东思想和中国特色社会主义理论体系概论 I 必修 3 15 学期 政治学院毛泽东思想和中国特色社会主义理论体系概论 II 必修 3 16 学期 政治学院军事技能训
20、练 必修 1 短 1学期 武装部通识类的具体课程设置和要求按照“西南交通大学通识教育课程设置方案”执行高等数学 BI 必修 5 1 学期 数学学院线性代数 B 必修 3 1 学期 数学学院计算机导论 必修 2 1 学期 信息学院高级语言程序设计 必修 4 1 学期 信息学院高级语言程序设计实验 必修 1 1 1 学期 信息学院高等数学 BII 必修 5 2 学期 数学学院大学物理 CI 必修 3 2 学期 物理学院大学物理实验 AI 必修 1 1 2 学期 物理学院离散数学 A 必修 4 2 学期 信息学院面向对象程序设计 * 必修 2 2 学期 信息学院面向对象程序设计实验 * 必修 1 1
21、 2 学期 信息学院程序语言综合课程设计 必修 1 1 2 学期 信息学院大学物理 CII 必修 3 3 学期 物理学院大学物理实验 AII 必修 1 1 3 学期 物理学院概率与数理统计 B 必修 3 3 学期 数学学院数据结构 A * 必修 4 3 学期 信息学院数据结构实验 * 必修 1 1 3 学期 信息学院数字电子技术 B 必修 3 3 学期 信息学院数字电子技术实验 B 必修 1 1 3 学期 信息学院计算机组成原理 B 必修 3 4 学期 信息学院软件工程概论 必修 3 4 学期 信息学院学科与专业基础课程模块共 85 学分,必修 85 学分计算方法 必修 2 4 学 信息学院期
22、操作系统 A * 必修 3 4 学期 信息学院操作系统实验 * 必修 1 1 4 学期 信息学院数学建模 B 必修 2 4 学期 数学学院算法设计与分析 * 必修 3 4 学期 信息学院计算机组成实验 必修 1 1 5 学期 信息学院数据库原理 必修 3 5 学期 信息学院数据库原理实验 必修 1 1 5 学期 信息学院微机与接口技术 A (含汇编语言) 必修 45 学期 信息学院微机与接口技术实验 必修 1 1 5 学期 信息学院软件系统分析与设计 必修 3 5 学期 信息学院计算机网络 * 必修 3 6 学期 信息学院计算机网络工程实验 * 必修 1 1 6 学期 信息学院编译原理 B 必
23、修 3 6 学期 信息学院新技术讲座 必修 1 5 学期 信息学院软件项目管理 * 必修 2 5 学期 信息学院软件质量保证与测试 必修 2 6 学期 信息学院人机交互技术 必修 2 6 学期 信息学院人机交互技术实验 必修 1 1 6 学期 信息学院计算机图形学 必修 3 6 学期 信息学院软件工程专业必修课计算机图形学实验 必修 1 1 6 学期 信息学院Java 程序设计 必修 2 5 学期 信息学院Java 程序设计实验 必修 1 1 5 学期 信息学院J2EE 体系结构及程序设计 必修 26 学期 信息学院数据库技术与应用 必修 2 6 学期 信息学院数据库技术与应用实验 必修 1
24、1 6 学期 信息学院移动计算 * * 必修 2 7 学期 信息学院数据挖掘 * * 必修 2 7 学期 信息学院嵌入式系统设计与应用 必修 2 7 学期 信息学院专业(专业方向)课程模块共 34 学分,必修 19 学分,选修 15学分专业限选课(限选 15学分)嵌入式系统设计与应用实 必修 1 1 7 学 信息学院验 期软件设计模式 必修 2 7 学期 信息学院人工智能 必修 2 7 学期 信息学院软件设计实习 必修 2 2 短 1学期 信息学院军事技能训练 必修 1 1 短 1学期软件工程/程序综合设计实习 必修 2 2短 2学期 信息学院专业实验、实践(暑期实习等)软件工程/网络软件开发
25、实习 必修 2 2短 3学期 信息学院毕业设计(论文)共 16 学分 毕业设计 必修 16 168 学期 信息学院注 1:课外创新实践 2 学分由学生按照西南交通大学创新实践学分认定与管理办法规定修习并取得;注 2:为强化军事理论课程与实践相结合的效果,将理论教学的 1 学分(16 学时)集中在第一个短学期的军训环节中进行授课;注 3:形势与政策课程开课学期为 1-7 学期,每学期 16 学时;注 4:核心课程 8 门(高级语言程序设计,面向对象程序设计,数据结构,计算机原理,软件项目管理,软件质量保证与测试,软件系统分析与设计,数据库原理) ;双语课程* 7 门(面向对象程序设计,数据结构,
26、操作系统,算法设计与分析,计算机网络,数据挖掘,移动计算) ;研讨型课程 * 3 门(软件项目管理,数据挖掘,移动计算) 。 九、知识能力矩阵人文社科课程模块 公共基础课程模块 学科基础课程模块 专业课程模块 实践教学课程模块课程名称执行方式:1、校内理论2、校内实践3、校外实践4、校外理论知识和能力要求思想道德修养与法律基础中国近现代史纲要马克思主义基本原理毛泽东思想邓小平理论三个代表通识教育通识教育基础(限选)军事理论军事训练高等数学线性代数概率与数理统计大学物理大学物理实验外语体育计算方法数学建模离散数学数据结构数字电子技术计算机组成原理计算机网络微机与接口技术高级语言程序设计操作系统编
27、译原理数据库原理面向对象程序设计计算机图形学JAVA程序设计软件工程概论软件系统分析与设计软件项目管理软件质量保证与测试人机交互技术嵌入式系统设计与应用数据库技术与应用J2EE体系结构及程序设计程序语言综合课程设计数据库技术与应用实验等课外创新实践软件设计实习软件工程/程序综合设计实习软件工程/网络软件开发实习毕业设计1.1.1 数学基础 1 1 1 1 11.2,2 自然科学基础 1 21.1 基础科学知识1.3.3 人文科学等 1 1 1 1 1 1 1 3 1 21.2.1 程序设计语言与程序设计方法 1 1 1 11.2.2 问题求解技术与抽象方法 11.2.3 离散结构 11.2.4 操作系统原理与技术 11.2.5 计算机组织结构 11.2.6 计算机网络原理与通信技术 11.2.7 软件系统构造技术 1 1 1 1 1 2 2 2 2 3 31.2 计算机科学基础知识1.2.8 数据库原理与方法 1 11.3.1 信息建模原理和方法 1 11.技术及推理能力1.3 软件建模的工程原理和方 1.3.2 功能建模原理 1 1