南京大学软件工程专业课程计划
南京大学软件工程专业本科生培养方案与教学计划
南京大学软件工程专业本科生培养方案与教学计划(2005年6月1日修订)软件产业作为信息产业的核心是国民经济信息化的基础,已经涉足工业、农业、商业、金融、科教文卫、国防和百姓生活等各个领域。
采用先进的工程化方法进行软件开发和生产是实现软件产业化的关键技术手段。
因此,为积极促进我国软件产业发展,增强其国际竞争力,加速我国信息化建设,急需培养大批软件工程领域的实用型、复合型软件工程技术人才和软件工程管理人才。
为促进南京大学软件工程专业本科生在入学、培养、毕业和学位授予等环节的规范化,确保培养质量,根据教育部有关要求,依据南京大学有关本科生培养的规定,特制定本方案。
本方案作为南京大学培养软件工程专业本科生的指导性文件,规定其培养目标、方向和要求,以及培养对象、方式及学习年限,并就其课程设置、课程修读和学位论文要求等给出指导性意见。
一、培养目标、方向和要求1、培养目标软件工程专业本科生的培养目标是针对国民经济信息化建设和发展的需要,面向软件产业界对软件工程技术人才的需求,培养具有国际竞争能力的多层次复合型软件实用人才。
作为一名合格的软件工程专业本科毕业生,应当符合国民经济信息化建设和发展需要,以及软件企业对软件工程技术人才需求,能够成为企业所需要的较高层次的软件工程技术和管理人才,其基本能力应当达到(具有国际水准的)程序员、高级程序员、软件工程师、以及项目质量管理人员的水平。
2、培养方向软件工程专业本科生培养的基本思路是强化基础、注重实践。
针对软件产业的人才需求,本科生阶段强调宽口径培养,不具体细分专业培养方向,但考虑专业课程模块设置,从而使得毕业生既具备扎实的基础和宽广的知识面,又较深入地认识某类软件系统和应用领域。
软件工程专业的基础课程应涵盖软件基础,软件工程基础,数学、工程与职业基础。
软件工程专业的专业课程应覆盖软件设计开发、软件过程与管理、计算机网络、数字化技术、信息安全技术、嵌入式软件、信息系统、图形系统等。
软件工程专业课程有哪些
软件工程专业课程有哪些软件工程专业是现在非常热门的专业,因为许多人看到了其中的前景。
于是有同学问软件工程专业主要学什么呀?下面是由小编为大家整理的“软件工程专业课程有哪些”,仅供参考,欢迎大家阅读。
软件工程专业课程有哪些马克思主义理论、大学外语、高等数学、大学物理、物理实验、线性代数、概率论与数理统计、程序设计语言、数据结构、离散数学、操作系统、编译技术、软件工程概论、统一建模语言、软件体系结构、软件需求、软件项目管理。
拓展阅读:软件工程专业培养目标与要求本专业是培养适应计算机应用学科的发展,特别是软件产业的发展,具备计算机软件的基础理论、基本知识和基本技能,具有用软件工程的思想、方法和技术来分析、设计和实现计算机软件系统的能力,毕业后能在IT行业、科研机构、企事业中从事计算机应用软件系统的开发和研制的高级软件工程技术人才。
本专业学生主要学习软件工程方面的基本理论和基本知识,接受从事研究与软件开发的基本训练,具有一般计算机相关工程的分析设计和解决实际问题的能力。
软件工程专业必备能力1、掌握和计算机科学与技术相关的基本理论知识;2、掌握计算机系统的分析和设计的基本方法;3、了解文献检索、资料查询的基本方法,具有一定的科学研究和实际工作能力;4、了解与计算机有关的法规;5、能够运用学习知识和外文阅读能力查阅外文资料;6、掌握文献检索、资料查询的基本方法,具有获取信息的能力。
软件工程专业学什么东西软件工程专业主要学习的内容有C++程序设计,java,python,高等数学,数据结构,算法设计与分析,汇编语言程序设计,数据库系统,软件工程等等。
软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。
从软件开发的观点看,它就是使用适当的资源(包括人员,软硬件资源,时间等),为开发软件进行的一组开发活动,在活动结束时输入(即用户的需求)转化为输出(最终符合用户需求的软件产品)。
南京大学软件工程学科教程——附件2-1南京大学软件学院选课规则
南京大学软件工程学科教程——附件2-1南京大学软件学院选课规则一、 总则1、目的。
为规范化南京大学软件学院选修课开设和学生选课,特制定本规则。
2、适用范围。
南京大学软件学院学生选修学院开设的各类选修课,学校及其他院系提供的选修课和学院开设的公共指定选修课不适用此规则。
二、 选修课及其开设规则3、适用本规则的选修课类别。
南京大学软件学院开设的方向课程模块指定选修课,方向课程模块指定实践课程,任选课程。
4、选修课开设班次规定。
选修人数超过160人,开设两个教学班次;其他情况,开设一个班次。
5、选修课班次最大人数。
120人。
6、选修课取消。
当次选修人数少于10人,取消开班;连续3年选修人数少于20人,经学院批准后取消该选修课程。
三、 学生选修7、方向课程模块选修的提出。
二年级末,学生提出联系方向课程模块。
每个学生应提出3个方向课程模块选修志愿,放弃填写第二/三志愿者,意味默认其他任何方向课程模块为志愿。
8、任选课程选修的提出。
每学期第二周,学生提出课程选修志愿。
9、修读课程数限制。
每个小学期,每个学生修读的学院开设课程数(含必修课、指选课、任选课)原则不少于3门,不多于5门;特殊情况应书面报教务办公室批准。
四、 选修优先权10、方向课程模块选修优先权。
a)每个学生的初始方向课程模块选修优先权为该联系方向指定专业核心课修读成绩;b)若学生在确定选修的方向课程模块之前获得过软件设计比赛优胜,可以获得30个方向课程模块选修优先权加分。
11、选修绝对优先权。
使用两个选修绝对优先权,可以保证选修一门任选实践课程;使用一个选修绝对优先权,可以保证选修一门其他任选课程。
a)每个学生的初始选修绝对优先权为0;b)若学生按照第二志愿确定方向课程模块,可以获得3个选修绝对优先权;c)若学生按照第三志愿确定方向课程模块,可以获得5个选修绝对优先权;d)若学生按照服从志愿确定方向课程模块,可以获得7个选修绝对优先权;e)若学生获得过软件设计比赛优胜,可以获得2个选修绝对优先权。
软件工程课程安排
大一是网页制作,经典算法,c语言,军事理论,写作,高数1和高数2,离散1,中国近代史,思想道德,电子电路,英语1和2。
大二是数据库原理,编译原理,离散2,数字电路,汇编语言,c++语言,mfc,计算机组成原理,英语3和4,日语1和2,马克思原理,毛邓。
大三时jsp课程设计,sql server数据库,计算机体系结构,计算机网络,操作系统,计算机图形学,算法,日语3和4,人工智能,软件工程。
大四我就不知道了。
我刚读到大三。
软件工程专业本科教学计划一、培养目标和基本规格(一) 培养目标本科生的培养目标是:针对国民经济信息化建设和发展的需要,面向软件产业界对软件工程技术人才的需求,培养具有良好的综合素质、良好的职业道德、扎实的软件工程理论知识及较强的综合应用能力,掌握自然科学和与软件有关的法律基础知识、具有自主学习和使用先进软件开发技术和工具的能力,具有软件开发实践和项目组织的初步经验,具有创新、创业、竞争意识和团队精神。
学生后能从事大型软件项目的开发,具有软件企业所需要的较高层次的软件工程技术和管理人才的素质,能适应技术进步和社会需求变化对高素质软件工程专门人才的基本要求。
(二) 培养规格本专业学生应掌握领域坚实的基础理论和宽广的专业知识,具有良好的系统分析、设计及软件工程项目的组织与管理能力,具备运用先进软件开发技术、方法和工具的能力,具备与软件有关的法律知识,具备独立工作能力和团队精神。
毕业生应获得以下几方面的知识和能力:1、掌握的基本理论、基本知识和基本技能,特别是软件项目管理与开发技术、信息系统的分析与设计技术、网络数据库开发技术、网络信息安全和嵌入式软件开发技术;2、熟练掌握需求分析和建模、软件设计和实现、软件评审与测试、软件过程改进与项目管理、设计人机交互界面的基本方法,能运用先进软件技术和开发工具进行软件系统的开发与维护工作。
3、掌握与软件有关的法律法规、国际惯例,具备自觉运用法律知识进行软件知识产权保护的素质。
软件工程如何学习计划
软件工程如何学习计划引言软件工程是一个不断发展和变化的领域,要成为一名优秀的软件工程师,需要不断学习、提高自己的技能和知识水平。
本文将提供一个系统的软件工程学习计划,帮助学习者在软件工程领域快速成长。
第一阶段:基础知识学习(3个月)在软件工程的学习过程中,首先需要掌握一定的基础知识。
这包括数据结构、算法、操作系统、计算机网络等基础知识。
这些知识对于软件工程师来说是非常重要的,它们可以帮助你更好地理解和应用在实际工作中。
1.1 数据结构与算法数据结构与算法是软件工程中的基础,它们是用来解决实际问题的工具。
学习者可以通过《算法导论》、《数据结构与算法分析》等书籍来系统学习相关知识。
另外,还可以通过LeetCode、HackerRank等在线平台来刷题,提高自己的编程能力。
1.2 操作系统操作系统是支持软件运行的基础环境,学习者可以通过《操作系统概念》等书籍来了解操作系统的基本原理和架构,了解操作系统调度、内存管理、文件系统等相关知识。
1.3 计算机网络计算机网络是连接计算机和其他设备的网络,学习者可以通过《计算机网络-自顶向下方法》等书籍来学习网络的基本原理和协议,了解网络的分层结构、常用协议、网络传输等知识。
第二阶段:编程语言学习(3个月)在软件工程中,编程语言是一个非常重要的技能。
通过学习不同的编程语言,可以帮助学习者更好地理解和应用在实际工作中。
在这里,我们推荐了几种编程语言,供学习者选择学习。
2.1 JavaJava是目前最受欢迎的编程语言之一,它具有良好的跨平台性和广泛的应用范围。
学习者可以通过《Java核心技术卷Ⅰ》、《Effective Java》等书籍来学习Java的基本语法和高级特性,了解Java的面向对象特性、内存管理、多线程等知识。
2.2 PythonPython是一种简单易学的编程语言,它具有丰富的库和工具,非常适合用来进行数据处理和科学计算。
学习者可以通过《流畅的Python》、《Python编程-从入门到实践》等书籍来学习Python的基本语法和常用库,了解Python的函数式编程、生成器、装饰器等知识。
软件工程学学习计划
软件工程学学习计划软件工程学是计算机科学与工程领域中的一门重要学科。
它关注的是软件的开发、组织以及维护等方面的理论和方法。
在不断发展和进化的数字时代,软件工程学的学习变得越来越重要。
为了更好地掌握软件工程学的知识和技能,我制定了以下学习计划。
第一阶段:学习基础知识在开始深入学习软件工程学之前,我打算先学习一些基础知识,包括计算机科学的基本原理和编程基础。
这将为我后续的学习打下坚实的基础。
我计划通过参加在线课程和自学来完成这一阶段的学习。
1. 学习计算机科学基础:我将通过学习计算机科学的核心概念,包括算法、数据结构、操作系统等来建立起对计算机科学基础原理的理解。
2. 学习编程语言:我将选择一种常用的编程语言,如Python或Java,并通过课程和项目实践来掌握编程的基本技能。
第二阶段:深入学习软件工程学在掌握了计算机科学基础知识和编程技能后,我将进一步深入学习软件工程学的相关内容。
这一阶段的学习将更加注重软件开发流程、项目管理以及软件质量保证等方面的知识。
1. 学习软件开发模型:我将学习常见的软件开发模型,如瀑布模型、敏捷开发等,了解它们的优缺点以及适用场景。
2. 学习需求工程:我将学习如何有效地收集和分析用户需求,并将其转化为可实现的软件系统。
3. 学习软件测试与质量保证:我将学习软件测试的方法和技术,以及如何确保代码的质量和可靠性。
4. 学习软件项目管理:我将学习项目管理的基本原理和方法,包括团队协作、进度管理、风险管理等。
第三阶段:实践项目理论学习只是学习软件工程学的一部分,实践才能真正锻炼和提升自己的能力。
在这一阶段,我计划通过参与实践项目来应用所学的知识和技能。
1. 参与开源项目:我将积极参与开源项目,贡献自己的代码和解决问题,与其他开发者进行交流和学习。
2. 完成个人项目:我将选择一个自己感兴趣的主题,独立开发一个小型软件系统,并将其完整地从需求分析、设计、实现到测试和发布等各个阶段都经历一遍。
《软件工程》南京大学计算机专业课程教材
Basic Concepts
Software Characteristics
• Software is developed or engineering, it is not manufactured in the classical sense. 软件是由开发或工程化而形成的,而不是传统意义上由制造 产生的。 • Software doesn’t “wear out”. 软件不会“磨损”。 • Although the industry is moving toward component-based assembly, most software continues to be custom build. 大多数软件是自定的,而不是通过已有的构件组装起来的。
System Engineering
What is it?
Before software can be engineered, the “system” in which it resides must be understood. To accomplish this,
Software Engineering 软 件 工 程
李 宣 东 南京大学计算机科学与技术系
/people/lixuandong/softE.html
Contents
• Conventional Methods for Software Engineering 传统软件工程方法 • Object-Oriented Software Engineering 面向对象软件工程 • Software Process, Management, and Quality 软件过程、管理与质量
软件工程生的学习计划
软件工程生的学习计划一、学习目标1. 熟练掌握常用的编程语言,包括Java、C++、Python等,能够进行独立的软件开发和设计。
2. 深入了解软件工程的理论和方法,掌握软件项目管理和软件质量保障的相关知识。
3. 提高自己的团队合作能力和沟通技巧,能够有效地与团队成员合作完成软件开发项目。
4. 学习并掌握软件测试、软件架构设计等方面的知识,提高自己的技术水平和工作能力。
二、学习计划1. 学习编程语言- 深入学习Java语言,包括面向对象编程、多线程编程、数据库操作等方面的知识。
- 学习C++语言,包括面向对象编程、STL等方面的知识。
- 学习Python语言,包括数据分析、人工智能等方面的知识。
2. 学习软件工程基础知识- 学习软件工程的基本概念和原理,包括软件生命周期、软件需求工程、软件设计等方面的知识。
- 学习软件项目管理的理论和方法,包括项目规划、需求分析、设计开发、测试交付等方面的知识。
3. 学习软件测试和质量保障- 学习软件测试的方法和工具,包括功能测试、性能测试、安全测试等方面的知识。
- 学习软件质量保障的理论和方法,包括代码审查、自动化测试、持续集成等方面的知识。
4. 学习软件架构设计- 学习软件架构设计的原则和方法,包括模块化设计、分层设计、微服务架构等方面的知识。
- 学习常用的软件架构模式和框架,包括MVC、MVVM、Spring等方面的知识。
5. 提高团队合作能力和沟通技巧- 参加团队项目实践,提高团队合作能力和项目管理技能。
- 加强沟通技巧的训练,包括书面沟通和口头表达等方面的能力。
三、学习方法1. 多练习编程- 多参加编程比赛和项目实践,不断提高编程能力和项目经验。
- 阅读经典的编程书籍,了解编程语言和算法的基本原理。
2. 多阅读相关书籍和文献- 阅读软件工程和计算机科学的经典著作和论文,了解软件工程的基本概念和发展方向。
- 关注软件工程领域的最新动态和研究成果,保持自己的学习状态和思考能力。
软件工程大一学习计划
软件工程大一学习计划一、学习目标软件工程是一个非常重要的专业领域,它涉及到计算机科学、工程学和管理学等多个学科的知识,是当今社会信息化发展的重要支撑。
在大一这个阶段,我将通过系统的学习和实践,掌握软件工程专业基础知识和相关技能,为将来在这个领域中取得优异的成绩做好准备。
具体学习目标如下:1. 熟练掌握计算机基础知识,包括计算机原理、数据结构、算法和数据库等。
2. 熟练掌握编程语言和开发工具,包括C/C++、Java、Python等主流编程语言,以及常用的集成开发环境和版本控制工具。
3. 理解软件工程的基本原理和方法,包括软件开发生命周期、需求分析、设计、编码、测试和维护等。
4. 掌握软件项目管理的基本知识和技能,包括项目规划、时间成本控制、团队协作和沟通等。
5. 培养良好的实践能力,通过项目实践和实习经验,熟悉软件开发过程和实际工作环境。
二、学习内容在大一这个阶段,我将主要学习以下内容:1. 计算机基础知识:包括计算机组成原理、计算机网络、操作系统、数据结构和算法等。
这些知识是软件工程的基础,对于掌握编程和软件开发非常重要。
2. 编程语言和工具:我将学习C/C++、Java、Python等主流编程语言,并熟悉常用的集成开发环境和版本控制工具,如Visual Studio、Eclipse、Git等。
3. 软件工程基础:学习软件工程原理和方法,包括软件开发生命周期、需求分析、设计原则、编程规范、测试方法等。
这些知识将帮助我理解软件开发的整个过程,并提高开发效率和质量。
4. 项目管理和团队协作:学习软件项目管理的基本知识和方法,了解团队协作的原则和技巧,培养良好的团队合作精神和沟通能力。
5. 实践经验:通过实习、参与项目实践和参加比赛等方式,积累实际工作经验,提升自己的实践能力和职业素养。
三、学习计划在大一这一年的学习中,我将按照以下计划进行学习和实践:1. 秋季学期(9月-12月):主要学习计算机基础知识和编程语言,包括数据结构和算法、C/C++和Java编程等。
软工大学学习计划
软工大学学习计划第一部分:学习目标1. 提高编程技能:学习并掌握多种编程语言,包括Java、C++、Python等,提高编程能力和解决问题的能力。
2. 学习软件工程知识:深入学习软件工程的原理、方法和技术,包括需求分析、软件设计、软件测试等相关知识。
3. 学习项目管理技能:学习项目管理知识,包括项目规划、进度控制、团队管理等方面的知识。
4. 提高沟通能力:学习沟通技巧,包括书面沟通和口头沟通技巧,以及团队协作能力。
第二部分:学习计划1. 学习编程技能- 持续学习Java编程语言,掌握面向对象编程的思想和技巧,完成相关编程实践项目。
- 学习Python编程语言,了解Python的语法及应用领域,完成相关编程练习。
- 学习C++编程语言,掌握C++语法和模板编程,完成相关编程练习。
2. 学习软件工程知识- 学习软件需求分析理论及方法,了解常用的需求分析技术和工具,完成相关需求分析实践项目。
- 学习软件设计原理和模式,深入理解面向对象设计和UML建模,完成相关软件设计实践项目。
- 学习软件测试理论和方法,掌握自动化测试工具和技术,完成相关软件测试实践项目。
3. 学习项目管理技能- 学习项目规划和进度控制理论和方法,了解项目管理工具和技术,完成相关项目管理实践项目。
- 学习团队协作和沟通技能,了解团队协作工具和方法,完成相关团队合作实践项目。
4. 持续学习和提高- 参加软件工程相关的沙龙、讲座和研讨会,了解最新的技术和发展趋势。
- 阅读相关书籍和论文,深入学习软件工程理论和实践,提高自己的专业水平。
- 参与相关项目实践,锻炼自己的实际能力和解决问题的能力。
第三部分:学习方法1. 充分利用课堂教学资源,认真听讲课、课后复习。
2. 多参加实验课、实践课,动手实践,提高编程和解决问题的能力。
3. 积极参与讨论和交流,与同学和老师多交流,相互学习提高。
4. 多做项目实践,提高实际操作和项目管理能力。
5. 每周总结学习内容,定期复习巩固所学知识。
软件工程大一至大四课程
软件工程大一至大四课程
(最新版)
目录
1.软件工程专业简介
2.大一课程安排
3.大二课程安排
4.大三课程安排
5.大四课程安排
6.总结
正文
【软件工程专业简介】
软件工程是一门以计算机科学与技术为基础,以软件开发与设计为研究对象的学科。
软件工程师主要负责编写、测试、维护和改进计算机软件,以满足用户需求。
软件工程专业旨在培养具备扎实的计算机理论知识、较强的软件开发能力以及良好的团队协作和沟通能力的高素质软件工程师。
【大一课程安排】
大一阶段主要学习计算机基础知识和编程语言,课程包括:计算机导论、数据结构与算法、计算机组成原理、计算机网络、高等数学、离散数学、英语、体育等。
【大二课程安排】
大二阶段开始学习软件工程的基础知识,课程包括:软件工程、数据库原理与设计、操作系统、编译原理、软件测试技术、软件项目管理、软件质量保证等。
【大三课程安排】
大三阶段主要学习软件开发技术和工具,课程包括:软件需求工程、软件体系结构设计、软件开发方法、软件工程实践、软件工程案例分析、Web 开发技术、软件工程实验等。
【大四课程安排】
大四阶段主要进行实践性课程和毕业设计,课程包括:软件工程综合实践、软件工程项目管理与实务、软件工程前沿技术、软件工程实践课程设计、毕业设计等。
【总结】
软件工程专业从大一到大四,课程设置由浅入深,逐步引导学生掌握计算机基础知识、软件开发技能和软件工程实践能力。
南京大学软件工程专业本科教程——附录B专业基础核心课程描述1
a
E
1
SEF-VV.tst.0
测试
1
SEF-VV.tst.1
单元测试
a
E
1
SEF-VV.par.0
问题分析和报告
1
SEF-VV.par.2
调试/错误隔离技术
a
E
1
STP-PL.c.0
C 语言
10
STP-PL.c.1
词法与关键字
a
E
2
STP-PL.c.2
表达式和语句
a
E
1
STP-PL.c.3
声明、类型
1
a
E
1
5 教学补充事项
5.1 对前驱课程的教学需求
无
5.2 本课程的教学考虑
为了给大一新生建立起计算系统的概念,本课程采取:1)自底向上的教学模式,逐层构建计 算系统;2)围绕一个假想的简单的计算机进行从比特到 C 语言的全面、系统的介绍。
5.3 对后续课程的教学建议
《计算与软件工程 II》课程对结构化分析、设计的介绍从程序级别提升到建模级别;本课程 只介绍《计算机组成原理》、《数据结构与算法》、《操作系统》等课程的基本概念,更深入的知识 将在这些课程中进行介绍。
描述 数字逻辑和数字系统 计算机发展历史回顾 计算机的基本组成,硬件结构,软件的分类,计 算机语言及其编译 逻辑表达式 计算机的工作过程 计算机系统结构的概念 数据的机器级表示 数值表示和数制 定点数和浮点数系统 有符号数的表示方法和基本运算方法 非数值数据的表示 汇编级机器组织 指令格式 数据的存储方式与寻址方式 指令集及其分类(数据操作、控制、输入/输出) 子程序调用和返回机制 汇编语言和机器语言编程基础 存储系统组织和结构 主存储器的组织和操作 接口和通信 输入/输出基本原理 程序控制 I/O,中断驱动 I/O 程序设计基本结构 变量、类型、表达式和语句 高级语言的基本语法和语义 输入和输出基础 顺序、条件和循环控制结构 函数定义、函数调用和参数传递 程序结构分解基础 基本数据结构 记录
南京大学软件工程专业本科生课程体系规划与核心
软件 工具
软件 产品 STP
基本素质 Leabharlann AS图一 南京大学软件工程专业的知识体系
与专业相关的 5 个子类的知识领域简单列举如下: 1)CSE 定义了从事软件工作所应具备的软件专业基础知识,包括离散数 学基础 CSE.DS,程序设计与算法基础 CSE.PF,计算机硬件基础 CSE.CH,系 统软件基础 CSE.SS,数据库应用基础 CSE.DB,网络通信基础 CSE.NC 和软 件构造技术 CSE.CT 等知识领域。 2)SEM 定义了软件工程与软件管理知识,包括软件模型与分析 SEM.MA, 软件设计 SEM.DE,软件检验和有效性验证 SEM.VV,软件演化 SEM.EV,软 件过程 SEM.PR,软件质量 SEM.QA 和软件管理 SEM.MG 等知识领域。 3)MEP 定义从事软件工作所应具备的数学、工程和职业知识,包括软件 的数学基础 MEP.MF,软件的工程基础 MEP.EF,软件行业的职业素质 MEP.PP, 软件业的外国语能力 MEP.FL 等知识领域。
如图一所示,该知识体系定义了基本素质 BAS,计算机软件基础 CSE, 软件工程与软件管理 SEM,数学、工程和职业基础 MEP,软件系统与应用 SSA,
软件工具与产品 STP 等 6 个知识体系子类,并在各子类之下细分为知识 领域、知识单元和知识点三级。
数学 工程 职业 基础 MEP
软件系统与应用 SSA:网络|嵌入式|信息管理|图形|… 软件工程与软件管理 SEM 计算机软件基础 CSE
4)SSA 定义从事某一方面软件工作应具备的专业或领域应用知识,包括 网络工程与网络应用 (计算机网络进阶 AN,分布式计算 DC,多媒 体技术 MM),嵌入式与实时系统 SSA.EM,图形软件系统 SSA.GH,信息系 统 SSA.IS(组织和管理 GM,系统开发理论 SD,智能信息处理 IP,ERP 系统 EP,电子商务系统 EC)等领域。毕业生应该深入理解其中至少一个软件应用 领域。
软件工程专业课程安排
软件工程专业课程安排
软件工程专业的课程安排通常包括以下几个部分:
1.公共基础课:这是所有工程类专业都需要学习的通识课程,包括思想政治理论、英语、数学、物理等。
2.专业基础课:这些课程是软件工程学科的核心课程,为学生打下坚实的专业基础。
主要包括计算机科学基
础、算法与数据结构、计算机组成原理、操作系统、数据库原理等。
3.专业必修课:这些课程着重于软件开发的全过程,包括软件工程方法论、软件设计、软件测试、软件维护
等方面的知识。
其中,软件工程方法论包括面向对象编程、软件需求工程、软件开发生命周期等。
4.专业选修课:这些课程是针对学生的兴趣和职业发展方向而设定的,包括人工智能、机器学习、软件安全、
云计算、大数据处理等方面的课程。
5.实践课程:软件工程是一门实践性很强的专业,因此实践课程也是必不可少的。
这包括课程设计、实习实
训、毕业设计等环节,着重培养学生的实践能力和团队协作能力。
总体来说,软件工程专业的课程安排非常丰富,从基础理论到实践应用都有涵盖。
学生需要具备扎实的计算机科学基础和算法与数据结构知识,同时还需要掌握软件开发的全过程,包括需求分析、设计、测试和维护等。
此外,学生还需要具备一定的实践能力和团队协作能力,以便更好地适应未来的职业发展需求。
CSE软件需求工程课程描述
南京大学软件工程专业本科教程——附录 B:专业基础/核心课程描述C311SE:《软件需求工程》课程描述0 课程基本信息课程编号: 课程名称: 英文名称: 英文简称: 预备课程: 授课时间: 时间分配: 学分数: C311SE 软件需求工程 Software Requirements Engineering RE 计算与软件工程 I、计算与软件工程 II、计算与软件工程实践 三年级第一学期 课堂教学(36 课时)+实验安排(36 课时)+课后作业与阅读(36 课时) 31 课程简介本课程是软件工程专业的专业核心课程。
课程内容包括需求工程的基础知识、软件需求的基 础理论、常用的需求获取方法与技术、常用的需求分析方法、常用的需求分析模型与建模技术、 需求管理知识和初步的需求工程过程管理知识。
课程在整个软件工程的背景下介绍需求工程知识, 试图让学生理解需求工程工作可能给后继软件项目工作带来的影响,并在此基础上全面深入的了 解软件需求领域的各项方法、技术与工具。
2 教材与参考资料 2.1 教材与指定阅读材料1) 1) 2) 3) 4) 5) 6) 7) 8) 9) 10) 11) 12) 13) 骆斌,丁二玉,需求工程——软件建模与分析,高等教育出版社 Karl E. Wiegers,软件需求,机械工业出版社 Benjamin L.Kovitz,实用软件需求,机械工业出版社 Dean Leffingwell,Don Widrig,软件需求管理——统一方法,机械工业出版社 Ralph R. Young,有效需求实践,机械工业出版社、中信出版社 David C. Hay,Requirement Analysis(英文影印版) ,清华大学出版社 Carig Larman, Philippe Kruchten,UML 和模式应用,机械工业出版社 Grady Booch,面向对象分析与设计,机械工业出版社 Kenneth E. Kendall etc.,系统分析与设计,清华大学出版社 Sharon Allen,数据建模基础教程,清华大学出版社 相关课程:/~sme/CSC2106S/index.html 相关课程:http://www.cs.uta.fi/re/ 需求工程论文汇总:/adavis/UCCS/reqbib-demog.html 需求管理工具:/tools.htm2.2 参考资料3 教学目标通过本课程的学习,学生应该能够: 1) 理解需求工程及其各个活动,掌握常用的需求工程技术,能够组织并完成复杂系统的各 项需求工程工作;附录 B 第 72 页南京大学软件工程专业本科教程——附录 B:专业基础/核心课程描述 2) 3) 4) 5) 6) 掌握常用的需求获取方法与技术,能够用多种方法与技术发现或者提取需求; 掌握常用的需求分析方法与技术, 能够完成需求分析、 目标分析和用例分析等建模工作, 能够正确的描述和度量质量属性,能够检测并解决特征交互; 理解常用的需求规格说明技术,能够使用形式化、半形式化和非形式化技术为不同类型 系统表示功能性和非功能性需求; 理解常用的需求确认与验证技术,能够根据标准确认需求,如可行性、清晰性和无二义 性; 理解与需求工程相关的软件“工程性”,能够组织需求,确定需求的优先次序,能够与 不同人员会谈得到一致的需求集。
南京大学院系专业年级()级1999-2000学年第二学期
2014-2015学年第一学期
注:硕士生英语-综合、硕士生英语-阅读、硕士生英语-听力以及硕士生英语-口语均为网上选课;需要上硕士生英语的学生只需任选以上四门课程中的一门即可;工程硕士的英语课程在第二学期。
本学期上课时间:2014年9月1日(新生至9月15日)至2015年1月4日(共18周)
复习考试时间:2015年1月5日至2015年1月18日
2014--2015年第一学期
注:博士生学术交流英语单周教室上课,双周网络课堂;博士生英语听力和博士生英语口语只需任选一门即可。
本学期上课时间:2014年9月1日(新生至9月15日)至2015年1月4日(共18周)
复习考试时间:2015年1月5日至2015年1月18日。