广州大学软件工程导论大纲

合集下载

软件工程教学大纲正式版

软件工程教学大纲正式版

软件工程教学大纲正式版WTD standardization office【WTD 5AB- WTDK 08- WTD 2C】《软件工程导论》课程教学大纲一、课程基本信息课程编号:英文名称名:Software Engineering总学时:54学时学分:3课程类别:专业必修课适用专业:全校本(专)计算机科学与技术先修课程:数据结构,大学数学,离散数学,计算机算法设计。

二、课程性质与目的、要求《软件工程》是计算机专业的一门工程性基础课程,在软件工程学科人才培养体系中占有重要的地位。

软件开发是建立计算机应用系统的重要环节,人们通过软件工程学把软件开发纳入工程化的轨道,而软件工程学是用以指导软件人员进行软件的开发、维护和管理的科学。

《软件工程》已成为高等学校计算机软件教学体系中的一门核心课程,本课程以IEEE最新发布的软件工程知识体系为基础构建内容框架,注重贯穿软件开发整个过程的系统性认识和实践性应用,以当前流行的统一开发过程、面向对象技术和UML语言作为核心,密切结合软件开发的先进技术、最佳实践和企业案例,力求从“可实践” 软件工程的角度描述需求分析、软件设计、软件测试以及软件开发管理,使学生在理解和实践的基础上掌握当前软件工程的方法、技术和工具。

通过本课程的学习,要求学生能掌握软件工程的基本概念、基本原理、开发软件项目的工程化的方法和技术及在开发过程中应遵循的流程、准则、标准和规范等;学生应能掌握开发高质量软件的方法,以及有效地策划和管理软件开发活动,为学生参加大型软件开发项目打下坚实的理论基础。

本课程注重培养学生理论应用于实践的能力,课堂上教师向学生讲述软件工程中的相关原理和概念,并通过课程设计,培养学生对整个软件开发过程的能力,让学生能切实体会到软件工程在实践中的指导作用,并按软件工程的要求完成规范的各项软件开发文档。

本课程对提高学生的软件开发能力和项目管理能力有重要的现实意义。

三、教学内容及学时分配本课程的教学内容共分十三章。

《软件工程导论》课程教学大纲(5篇)

《软件工程导论》课程教学大纲(5篇)

《软件工程导论》课程教学大纲(5篇)第一篇:《软件工程导论》课程教学大纲《软件工程导论》课程教学大纲课程编号:课程中文名称:软件工程导论课程英文名称:Introduction of Software Engineering 总学分:2 总学时: 36 讲课学时:36习题课学时:0 实验学时:0 上机学时:0 授课对象:软件工程专业本科先修课程:程序设计课程要求:必修课课程分类:专业基础课一、课程教学目的随着计算机技术的发展,软件的规模越来越大,软件的结构越来越复杂,软件开发与维护的难度也越来越高,软件的质量难以保证,软件开发与维护的进度和成本难以控制,这就要求有一种科学的方法指导软件的开发与维护工作。

软件工程就是这样一种指导软件开发和维护的工程学科。

通过本课程的学习,使学生了解软件工程的概念、原理和技术,初步掌握软件开发的基本方法和常用工具,建立软件开发和维护的工程化意识,培养独立思考的能力和团队合作的精神,为后续相关课程的学习以及从事软件开发与维护的实际工作打下良好的基础。

二、教学内容及基本要求教学内容:1.课程内容简介(1学时)本课内容简介,基本要求和目标,教学方法,学习方法,教材(英1 文原版)的主要内容及使用,中文参考教材简介2.软件工程的基本概念(4学时)软件工程的基本概念,软件危机产生的原因,软件危机面临的问题及解决方法,什么是好的软件以及软件的质量的概念,实施软件工程的人员,软件工程的系统方法,软件工程的工程方法,软件工程的发展3.过程建模与生命周期(4学时)过程的概念,软件过程模型,软件生命周期,各种常用的软件过程模型,过程建模的工具和技术 4.软件项目计划与管理(4学时)软件项目进展跟踪,软件项目的人员,工作量的估算,风险管理,项目计划,项目管理 5.需求获取(4学时)需求过程,需求的类型,需求的特征,需求的表示方法,原型需求法,需求文档,需求过程的参加人员,需求确认,需求度量,需求表示方法的选择,表示需求的工具。

《软件工程导论》课程教学大纲

《软件工程导论》课程教学大纲

《软件工程导论》课程教学大纲软件工程导论课程教学大纲一、课程介绍软件工程导论课程致力于介绍软件工程的基本概念、原理和技术,帮助学生了解软件开发的整体流程以及相关的管理和质量控制方法。

通过本课程的学习,学生将掌握软件工程的基本理论和实践技能,为日后的软件项目开发奠定坚实的基础。

二、教学目标1. 让学生了解软件工程的发展历程和重要性,并理解软件工程在实际应用中的作用。

2. 掌握软件工程的基本概念和核心原理,包括需求分析、设计、编码、测试和运维等方面。

3. 学会运用常见的软件工程方法和工具,提高软件开发的效率和质量。

4. 培养学生的团队合作能力和项目管理能力,使其能够适应未来的软件开发工作。

三、教学内容1. 软件工程导论1.1 软件工程的定义和背景1.2 软件工程的发展历程1.3 软件工程的重要性和挑战2. 软件生命周期2.1 软件生命周期模型2.2 软件需求与分析2.3 软件设计与体系结构2.4 软件编码与测试2.5 软件维护与升级3. 需求工程3.1 需求获取与分析3.2 需求规格说明3.3 需求验证与验证4. 软件设计4.1 结构化设计原理4.2 面向对象设计原理4.3 软件设计工具和方法5. 软件测试5.1 测试的基本概念和原理5.2 测试用例设计和执行5.3 软件缺陷的管理和修复6. 软件项目管理6.1 软件项目计划与组织6.2 软件项目进度控制与风险管理6.3 软件质量管理和配置管理四、教学方法1. 理论讲授:通过课堂讲解,介绍软件工程的基本概念、原理和方法。

2. 实践操作:引导学生使用常见的软件工程方法和工具进行实践,加深对软件开发流程的理解。

3. 项目实践:组织学生进行小型软件项目开发,培养团队合作和项目管理能力。

4. 讨论与互动:鼓励学生在课堂上提问和讨论,促进知识的深入理解和应用。

五、评价方式1. 平时表现:包括课堂参与、作业完成情况、实践操作等。

2. 课程项目:对学生参与的实际软件开发项目进行评估。

《软件工程》课程教学大纲

《软件工程》课程教学大纲

《软件工程》课程教学大纲课程名称:软件工程/Software Engineering课程编码:07442511 课程类型:专业限选课课程性质:专业基础课适用范围:03地理信息系统学分数:3 先修课程:高级语言程序设计学时数:54 其中:实验/实践学时:课外学时:考核方式:考查制定日期:2003年制定单位:广州大学理学院地理系审核者:夏丽华执笔者:周涛一、教学大纲说明(一)课程的地位、作用和任务软件工程是指导计算机软件开发与维护的工程学科,经过30多年的研究与发展,软件工程正逐步走向成熟。

为了学生能掌握现代化的软件开发方法,本课程将结合当代软件工程技术的发展实际,向学生系统地讲述软件工程相关知识(包括,软件工程的概念、原理、技术,经时间考验而证明正确的管理技术、当前的技术方法等等),并选择典型的软件工程开发案例进行剖析,使同学能够在牢固掌握软件工程书本知识的同时,可以将所学灵活地应用于实际的软件开发中。

(二)课程教学的目的和要求通过本课程的学习,要求学生掌握软件工程的基本概念、方法、理论体系,熟练掌握一些常用的实用开发方法和技术。

理解工具对实现软件工程的作用,领会一些分析与设计原则的意义,能借助CASE工具、按照软件工程的要求实施跨越软件生命周期的完整开发。

了解软件工程各领域的发展方向,以及开发过程中应遵循的流程、准则、标准和规范。

能够利用所学知识去解决一些实际的应用问题(或模拟案例)。

(三)课程教学方法和手段以课堂讲授为主,辅之以一定的课堂讨论(四)课程与其他课程的联系本课程的先修课程为《计算机导论》或《计算机应用基础(一级)》,要求学生必须具备高级语言程序设计(比如Pascal语言或C语言)的基础知识与基本技能。

同时,本课程与《VB 程序设计》、《VC++语言程序设计》等课程有着密切的联系。

(五)教材与教学参考书教材: 郑人杰,《实用软件工程》(第二版),清华大学出版社,1997.4 第2版教学参考书:[1] 张海藩,《软件工程导论》(第三版),清华大学出版社,1998.1第3版[2] Edward Yourdon &Carl Argila 著,殷人昆等译,《实用面向对象软件工程教程》,电子工业出版社,1998.6 第1版[3] 齐治昌,《软件工程》,高等教育出版社,1997年第1版二、课程的教学内容、重点和难点教学内容:第一章软件工程概述1.1 软件的概念、特点和分类1.2 软件的发展和软件危机1.3 软件工程过程和软件生存期1.4 软件生存期模型1.5 软件工程的基本目标第二章系统分析2.1 基于计算机的系统2.3 系统需求识别2.4 可行性研究2.5 成本效益分析2.6 技术分析2.7 分配与权衡2.8 系统结构的模型化2.9 系统定义与评审第三章软件需求分析3.1软件需求分析的任务3.2需求分析的过程3.3软件需求分析的原则3.4分析员和用户的责任3.5软件需求分析方法3.6原型化方法3.7结构化分析方法第四章软件设计4.1软件设计的目标和任务4.2软件设计基础4.3模块的独立性4.4结构化设计方法(Structure Design,SD)4.6过程设计第五章 Jackson 系统开发(JSD)方法5.1 进程模型5.2 JSD方法的步骤5.3 实体动作分析5.4 实体结构分析5.5 定义初始模型5.6 功能描述第六章用户界面设计6.1用户界面应具备的特性6.2用户界面设计的任务分析6.4界面设计的基本类型6.5数据输入界面6.6数据显示界面设计第七章程序编码7.1对软件的质量要求7.2结构化程序设计(Structure Programming)7.3程序设计风格7.4程序效率第八章软件测试8.1 软件测试的基础8.2 测试用例设计8.3 白盒测试的测试用例设计8.4 黑盒测试的测试用例设计8.5 软件测试的策略8.7 调试第九章面向对象技术9.1面向对象的概念9.3面向对象分析(Object-Oriented Analysis)第十章软件的质量保证10.1软件质量的概念10.2软件质量的度量和评价10.3软件质量保证10.5质量保证的实施10.7技术评审10.8软件可靠性10.10软件容错技术第十一章软件维护11.1软件维护的概念11.2软件维护活动11.3程序修改的步骤及修改的副作用11.4软件可维护性11.8软件配置管理( Software Configuration Management)第十二章软件工程标准化与软件文档12.1什么是软件工程标准12.2软件工程标准化的意义12.4软件工程标准的层次12.8文档的作用与分类第十三章软件项目管理与计划13.1项目的管理过程13.2软件生产率和质量的度量13.4软件项目估算13.5软件开发成本估算13.6风险分析13.7进度安排13.8 软件项目的组织与计划13.9 软件过程成熟度模型教学重点:本课程的教学重点是:从实用的角度讲述软件工程学的基本原理、概念和技术方法,按软件生存周期的顺序介绍问题定义、可行性研究、需求分析、总体设计、详细设计、编码、测试与软件维护等各个阶段的任务、过程、方法和工具。

软件工程导论课程教学大纲

软件工程导论课程教学大纲

软件工程导论课程教学大纲软件工程导论》课程教学大纲一、课程性质、地位和作用《软件工程导论》是是软件工程专业的专业基础课程,属必修课。

本课程主要讲述建造软件系统的基本方法、技术、流程、工具及规范等。

通过学习可以使学生了解软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的基本内容和发展动向;学习用工程化的方法开发软件项目,初步掌握开发过程中应遵循的流程、准则、标准和规范。

本门课程为将来从事软件开发学生的软件工程师之路奠定坚实的基础。

二、课程教学对象、目的和要求本课程适用于软件工程、计算机应用等从事软件开发的本科专业。

课程教学目的、要求:(一)从教学内容上,应使学生了解软件工程的基本概念,主要包括软件与软件开发的基本过程,软件危机与软件工程。

掌握个人软件开发过程的基本内容和方法,了解软件开发模型及结构化软件设计方法,以及软件质量保证基本内容。

(二)从能力方面,应使学生通过对软件工程基本概念和方法的学习和课后练习,培养学生养成规范化个人开发的良好习惯,培养学生按照软件工程的基本过程和方法来设计和开发软件。

(三)从教学方法上,在课堂理论教学中,采用学生可以理解的软件开发素材,通过一边实践一边讲解的方法,讲解软件过程的基本思想和方法,通过学生完成与实践结合的作业,调动学生的积极性,使软件工程的基本思想逐步植根于学生头脑中。

三、相关课程及关系本课程的先修课程是“ C 语言程序设计”和“数据结构”等程序设计课程,学习应在学生具有一定的编程能力基础上进行。

本课程为后续的“软件制造工程” 和“软件设计工程”等课程打下了必要的理论基础。

四、课程内容及学时分配总学时:32学时(一)绪论 1 学时1、软件工程及其重要性2、软件开发需要软件工程3、软件工程课程体系架构(需要什么软件工程)4、课堂的组织、学习方法、章节安排与考核要求学生了解软件工程的起源,软件工程在软件开发中的作用,了解软件工程课程体系。

《软件工程导论》教学大纲

《软件工程导论》教学大纲

软件工程教学大纲课程名称:软件工程开课学期:第5学期学时/学分:48 / 3课程类型:专业必修课开课专业:游戏开发选用教材:《软件工程导论》(第四版),张海藩编著,清华大学出版社;主要参考书:1.《实用软件工程》(第二版),郑人杰、殷人昆、陶永雷编著,清华大学出版社;2.《软件工程:实践者的研究方法》(原书第五版),Roger S. Pressman,机械工业出版社;3.《软件工程》(原书第六版),Ian Sommerville,机械工业出版社;4.《面向对象与传统软件工程》(原书第五版),Stephen R. Schach,机械工业出版社。

5.《面向对象的软件工程》,B.Bruegge,A.H.Dutoit著,清华大学出版社一、课程性质、目的与任务软件工程是研究软件开发维护和软件管理的一门工程科学,本课程是计算机科学与技术专业指导性教学计划规定的教学环节中的一部分,教学目的旨在介绍软件工程的基本原理和主要内容,为学生进一步深入学习与软件工程相关的其他课程如:软件需求过程、软件分析与设计和软件项目管理、软件过程管理等打下坚实的理论基础。

同时启发学生把握软件开发过程的基本规律,掌握和运用软件分析、设计的常用方法、软件开发过程的管理方法以及质量保证方法等,来解决软件开发中的实际问题,达到学以致用的目的。

二、教学基本要求1)本门课程是软件工程导论性质的课程,所以它比较全面而概括地介绍了与软件开发、管理和维护相关的各阶段的工作。

学生通过这门课程的学习,能够掌握软件工程的基本含义、它的主要作用、软件开发的过程、软件开发各个阶段的主要目的和可能采用的一些技术手段和方法,并理解软件项目管理的主要思想。

课程完成后,学生能够应用软件工程的思想指导软件开发实践,并能够比较容易地进行软件工程其他相关后续课程的深入学习。

2)要求教师在教学中采用启发式教学和因材施教,并至少给出一些章节的启发式教学内容的设计。

3)制作电子教学课件,运用课件进行教学。

软件工程导论提纲

软件工程导论提纲

软件工程导论提纲一、所有的“课件内容”都在考核范围:以课件内容为主。

不要死记硬背,理解的基础上自由表达;基本的概念,也需要背记一些的。

二、数学的重要性数学既是一种文化、一种“思想的体操”,更是现代理性文化的核心数学是工具、是科学的仆人数学对于思维的逻辑严密性有较强的要求,学习数学有益于提高人们的分析问题能力与思辨能力数学修养对于一般科技工作者,甚至经营管理者、决策者都很重要数学文化是一种真正创新的文化三、思维1、什么是思维、抽象思维、计算思维、哪些问题是计算思维思维(思维方式)思维方式是看待事物的角度、方式和方法,它对人们的言行起决定性作用抽象思维是人们在认识活动中运用概念、推理、判断、直觉等思维形式,对客观现实进行间接的、概括的反映的过程。

又称逻辑思维计算思维运用计算机科学的基础概念进行问题求解,系统设计,以及人类行为的理解等涵盖计算机科学之广泛性的一系列思维活动。

计算思维若干例:a)计算机科学是关于什么的科学?计算与计算机b)计算机怎么计算?算法与数据结构c)人如何指挥计算机进行计算?程序设计语言d)计算机解决问题有没有通用的方法?算法策略e)是计算机出错还是人出错?算法正确性f)什么是计算机解题的“代价”?算法的时空复杂度2、对问题的理解、解决问题的思维、问题表达的能力问题:就是理想状态和现实状态之间的差别解决问题的思维:把单一思维模式切换成多重思维模式(问题到底是什么?找到问题所属的层面。

注意你所表达的含义。

)搞清楚问题所在,表述问题是其中之一3、科学的定义、什么是自然科学、人文科学、社会科学什么是科学?【汉语词典】如实反映自然、社会、思维等的客观规律的知识体系【达尔文】科学就是整理事实、从中发现规律并做出结论【爱因斯坦】设法对人们杂乱无章的感觉经验加以整理,使之符合逻辑一致的思想体系自然科学以自然界为主要研究对象,运用实证、理性、和臻美(即到达完美之意)等方法,揭示自然的奥妙,获取自然的真知人文科学以人类作为主要研究对象,运用实地考察、诠释和启示等方法,认识人、人性、人生的意义,提升人的精神素质和思想境界社会科学以社会领域为主要研究对象,运用调查、统计、归纳等方法,把握社会规律、解决社会问题、促进社会进步4、学科的定义、计算机学科、ACM、IEEE学科a)指高等学校中讲授或研究知识的分科,b)它是高校教学和科研的细胞组织计算机学科Discipline研究计算机的设计与制造以及利用计算机进行信息获取、表示、存储、处理、控制等的理论、原则、方法和技术的学科。

软件工程导论教学大纲

软件工程导论教学大纲

软件工程导论教学大纲一、说明(一)课程性质软件工程导论是计算机科学与技术专业的核心课程之一,属于必修课程。

该课程的先修课程有计算机导论、程序设计基础、数据结构、面向对象程序设计、离散数学等,后续课程有算法分析与设计,程序设计、软件测试等。

软件工程是研究软件开发维护和软件管理的一门工程科学,本课程是计算机科学与技术专业指导性教学计划规定的教学环节中的一部分。

通过本课程的学习,使学生了解软件工程的概念、原理和技术,初步掌握软件开发的基本方法和常用工具,建立软件开发和维护的工程化意识,培养独立思考的能力和团队合作的精神,为后续相关课程的学习以及从事软件开发与维护的实际工作打下良好的基础。

(二)教学目的本课程的教学目的,应使学生掌握大型复杂软件系统的开发方法、规则和工具。

首先,应使其克服长期书写小程序形成的“重编码、轻分析设计;重编码、轻技术资料建设和管理”的习惯;其次,要理解软件工程原理/方法/规则的必要性和掌握其技术细节;第三,要了解软件工程学的进展和前沿动态;第四,要通过软件系统设计的练习,巩固和应用所学知识。

(三)教学内容本课程面向软件工程专业的学生,介绍软件系统性质、目标、环境的分析方法,目标系统逻辑联系、功能联系、控制联系和状态转换过程的描述方法,软件结构、测试方案的设计要求和分析方法,软件工程学新进展,以及上述过程所用的规范化图文数表模型。

具体包括:软件工程概念及其过程模型、结构化分析/设计/实现方法和工具,面向对象方法学及面向对象的概念、模型、分析方法、设计方法、实现方法,软件项目管理及其定量度量方法、相关国际标准。

最后介绍佩特网等形式化方法、统一建模语言、软件常用技术和软构件的分类与检索。

(四)教学时数本课程的教学总时数为90学时,其中,课堂教学时数为54学时,实验教学时数为36学时。

(五)教学方式本课程的难点在于,学生不曾经过大型软件开发的训练,因此在讲解中要适时插入大量软件开发事例,要求教师具有一定的软件开发经验;本课程不安排具体编程环境和开发语言的学习,但必须以大型软件开发实例说明问题,因此要求教师熟悉多种开发环境和开发语言;此外,软件开发技术的滞后和软件应用的广泛性所形成的反差,要求教师了解并适时提出计算机辅助软件工程(CASE)的问题。

软件工程导论期末复习提纲(精)

软件工程导论期末复习提纲(精)

第一章绪论软件:是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。

软件工程:是指导计算机软件开发和维护的工程学科。

它采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。

软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

主要是两个问题:1. 如何开发软件,怎样满足对软件的日益增长的需求。

2. 如何维护数量不断膨胀的已有软件。

主要表现:1. 对软件开发成本和进度的估计不准确2. 用户不满意3. 软件质量不高、可靠性差4. 软件常常不可维护、错误难以改正5. 缺乏适当的文档资料6. 软件成本占系统总成本的比例逐年上升7. 软件开发速度跟不上计算机发展速度产生软件危机的原因1. 与软件本身的特点有关:软件不同于硬件,它是计算机系统的逻辑部件而不是物理部件。

在写出程序代码并在计算机运行之前,软件开发过程的进展情况较难衡量,软件开发的质量也较难评价。

因此,管理和控制软件开发过程相当困难。

2. 软件不易于维护:(1软件维护通常意味着改正或修改原来的设计,客观上使软件较难维护。

(2软件不同于一般程序,它的规模大,不易于维护。

3. 在软件开发过程中,或多或少地采用了错误的方法和技术。

4. 对用户需求没有完整准确的认识,就匆忙着手编写程序。

解决软件危机的途径:⑴研制新一代体系结构的智能计算机,以改变软件的实现方式,降低软件的复杂性。

目前尚未研制成功。

⑵采用工程化、规范化的开发方法来指导软件的开发:这就是产生“软件工程学”的背景,并在70年代形成了结构化分析、设计方法。

⑶在求解方法上采用面向对象的软件设计方法。

即在软件开发中,以客观世界的问题空间入手进行软件设计,以减少求解方法空间与客观世界问题空间存在的“鸿沟”。

“生命周期法”的起源:软件工程采用的“生命周期法”,就是从时间角度对软件开发和维护的复杂问题进行分解,把软件生存的漫长周期依次划分为若干个阶段,每个阶段有相对独立的任务,然后再逐步完成每个阶段的任务.生命周期划分的原则:任务的性质尽可能相同,从而降低每个阶段任务的复杂性,简化不同阶段之间的联系,有利于软件开发过程的组织管理。

2024年《软件工程导论》讲稿(二篇)

2024年《软件工程导论》讲稿(二篇)

2024年《软件工程导论》讲稿计算机系统发展迅速,但是人们仍然没有彻底摆脱“软件危机”的困扰,软件已经成为限制计算机系统发展的瓶颈。

计算机软件工程学就是为了研究如何消除软件危机而发展起来的。

那么什么是软件危机呢。

在开始讲软件危机时我要先提出一个概念:什么是软件。

(板书:软件危机、什么是软件)简单来举例像我们平时用的word、e____cel 都是计算机软件。

软件就是计算机系统中与硬件相互依存的另一部分,它包括程序、相关数据及其说明文档。

(软件的英文名为software板书:software____program+data+document)那它具有什么特性呢。

在这里我向大家绘制两幅图,大家可以比较讨论一下硬件的失效率刚开始是降低的,这个阶段就是磨合调整,通过调整失效率降低并达到一定时期的稳定,那____会失效率增高呢,硬件是物理实体它存在磨损用坏的问题。

再来看软件的失效图像,我绘制了两条,一条是理想情况下,另一天是实际情况下。

大家可以看出来吗。

没错,开发出来的软件并不是永远有效的,随着用户的需求增大等情况失效率会增高。

从图中我们还可以看出在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题。

因为软件是一种逻辑实体,并非具体的物理实体。

另外呢,软件复杂性很高,软件技术的发展落后于需求,成本也相当昂贵。

讲完软件的概念,那么软件危机就比较容易理解了,软件危机就是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

那么大家思考一下,能够正常运行的软件可能会存在软件危机吗。

答案是可能会。

实际上,几乎所有软件都不同程度地存在这些问题。

比方说,你在用软件时,它不能与你的计算机硬件环境兼容或是不能满足你的要求。

总结下来,软件危机需要应对两方面的问题:(1)如何开发软件,以满足对软件日益增长的需求(2)如何维护数量不断膨胀的已有软件软件危机又有哪些典型表现呢。

我们在进行一项工程时是不是经常会有一个工程预算,软件工程也不例外,如果对软件开发成本和进度的估计不准确,那么就很容易使用户不满。

软件工程导论的命题范围提纲

软件工程导论的命题范围提纲

软件工程导论的命题范围提纲考试提纲如无异议,每个知识点请出对错题2个,选择题2个,知识点3个及以上的部分出简答题2道,知识点2个及一下的部分出简答题1个。

题目与答案一起本周发送给我。

举例来说,第一部分涉及知识点2个,因此需出对错题4个,选择题4个,简答题1个。

第一部分1、计算系统的分层2、计算历史第二部分4 4 11、位置记数法(2、8、16进制及其转化)2、数据与计算机第三部分:8 8 21、门2、存储器电路3、CPU芯片4、RAM与ROM1. 是用来存放程序和数据的部件,它是一个记忆装置。

(B)A.输入设备B。

存储器C。

输出设备D。

控制器2. 世界上第一台电子数字计算机是。

(A)A.ENIAC B.深蓝C.银河D.PC机3、计算机中存贮信息的最小单位是。

(A)A.字节B.ByteC.字D.Bit4.十进制11在十六进制中表示为。

(B)A、aB、bC、cD、d5. 以下二进制运算表达式中,错误的为。

(B)A、0·0=0B、1·1=0C、0 + 0=0D、1 + 0=16、一旦断电,数据就会丢失的存储器是。

(B)A、ROMB、RAMC、硬盘D、软盘7、计算机能直接执行的程序是。

(B)A、汇编语言程序B、机器语言程序C、BASIC程序D、C语言8、微机采用总线结构对CPU,存储器和处部设备进行连接,总线通常由组成。

(D)A 、逻辑总线,传输总线和通信总线B 、数据总线,信息总线和传输总线C 、地址总线,运算总线和逻辑总线D、数据总线,地址总线和控制总线9、计算机系统由两大部分组成。

(C)A、系统软件和应用软件B、主机和外部设备C、硬件系统和软件系统D、输入设备和输出设备10、关于存储器的存取速度快慢的比较中,__ __是正确的。

(B)A、硬盘>软盘>RAMB、RAM>硬盘>软盘C、软盘>硬盘>RAMD、硬盘>RAM>软盘11、用MHz来衡量计算机的性能,它指的是__ ___。

广州大学软件工程导论大纲

广州大学软件工程导论大纲

《软件工程导论》课程教学大纲课程名称 课程编码 课程性质 软件工程导论/Introductionto Software Enginerring 0600086 课程类型 专业选修课 专业主干课 适用范围 计算机类各专业 程序设计基础、面向对 象程序设计、 数据结构、 2 先修课程 计算机网络、数据库原 理 32 实验/实践学时 无 无 考核方式 考试 计算机科学与教育软 制订日期 2012 年 10 月 件学院 张志青 审核者 张为学分数学时数 课外学时 制订单位 执笔者一、教学大纲说明 1)课程的地位、作用和任务 《软件工程导论》是计算机软件专业的必修课程。

该学科涉及到为高效率地构建满足 客户需求的软件系统所需的理论、 知识和实践的应用。

软件工程适用于各类软件系统的开发, 它包含需求分析和规约、设计、构建、测试、运行和维护等软件系统生存周期的所有阶段。

本课程是计算机及相关专业的核心课程之一,是指导软件开发、研究的系统的科学的 工程方法学科。

掌握必要的、丰富的软件工程知识、原理、方法、工具和管理知识等是开发 出优秀软件产品基础条件。

2) 课程教学的目的和要求 本课程让学生理解如何以工程技术的概念、原理和方法来开发和维护软件系统。

软件 工程使用工程化方法、技术和度量,学生应该了解使用管理软件开发的工具、软件制品的分 析和建模工具、 质量评估与控制工具、 确保有条不紊且有控制地实施软件演化和复用的工具, 掌握选择最适合开发环境的工具、方法和途径以控制软件系统生产的质量、进度、成本等。

通过本课程的学习, 使学生既掌握软件工程的基本原理和方法, 又掌握软件开发过程及 过程中使用的各种方法、工具,熟悉开发大型软件系统所需的各种知识,重点掌握面向对象 的软件开发理论及方法,了解软件项目管理和测试知识,培养设计、实现、管理软件项目的 能力。

3)课程教学方法与手段 本课程以多媒体教案为教学手段。

《软件工程导论》是一门技术和管理交叉型的学科, 旨在培养高级软件开发人才, 而学生的基础差距很大,致使教学难度很大。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《软件工程导论》课程教学大纲
一、教学大纲说明
1)课程的地位、作用和任务
《软件工程导论》是计算机软件专业的必修课程。

该学科涉及到为高效率地构建满足客户需求的软件系统所需的理论、知识和实践的应用。

软件工程适用于各类软件系统的开发,它包含需求分析和规约、设计、构建、测试、运行和维护等软件系统生存周期的所有阶段。

本课程是计算机及相关专业的核心课程之一,是指导软件开发、研究的系统的科学的工程方法学科。

掌握必要的、丰富的软件工程知识、原理、方法、工具和管理知识等是开发出优秀软件产品基础条件。

2)课程教学的目的和要求
本课程让学生理解如何以工程技术的概念、原理和方法来开发和维护软件系统。

软件工程使用工程化方法、技术和度量,学生应该了解使用管理软件开发的工具、软件制品的分析和建模工具、质量评估与控制工具、确保有条不紊且有控制地实施软件演化和复用的工具,掌握选择最适合开发环境的工具、方法和途径以控制软件系统生产的质量、进度、成本等。

通过本课程的学习,使学生既掌握软件工程的基本原理和方法,又掌握软件开发过程及过程中使用的各种方法、工具,熟悉开发大型软件系统所需的各种知识,重点掌握面向对象的软件开发理论及方法,了解软件项目管理和测试知识,培养设计、实现、管理软件项目的能力。

3)课程教学方法与手段
本课程以多媒体教案为教学手段。

《软件工程导论》是一门技术和管理交叉型的学科,旨在培养高级软件开发人才,而学生的基础差距很大,致使教学难度很大。

在教学中拟采用课堂讲授与实习研讨并重的方式以提高学生的学习兴趣和效果。

教学管理和考核拟以学习
小组为基本单元(而不是个人)从而强化团队作业精神和协作能力。

除课上可参考的power point课件外,还会推荐给学生一些经典资料,供学生在课外参考。

4)课程与其它课程的联系
计算机原理、数据结构、C++程序设计语言、操作系统、计算机网络、数据库原理是《软件工程导论》课程的先行课程,该课程是这些先行课程在实际开发中的运用。

5)教材与教学参考书
教材:《软件工程》(第3版),齐治昌等著2012年05月出版
参考书:《软件工程》郑人杰等著,人民邮电出版社2009-11版,2012年第3次印刷。

《实用软件工程》赵池龙,杨林,孙伟,电子工业出版社,2006年7月2版。

《软件工程导论》张海藩编著,清华大学出版社,2008年第5版。

《软件工程》邓良松等编著,西安电子科技大学出版社,2000年。

二、课程的教学内容、重点和难点
第1章软件与软件工程
1.1软件的概念
1.2软件工程的概念
1.3软件过程模型
1.4敏捷软件开发原则和应用
1.5软件工程人的因素
1.6软件工具及软件开发环境
1.7基于计算机的系统
第2章UML与RUP统一过程
2.1案例说明
2.2面向对象的软件开发方法
2.3UML概述
2.4RUP统一过程
第3章需求工程概论
3.1软件需求的概念
3.2需求工程的预备知识
3.3需求工程的过程模型
第4章需求获取
4.1软件需求的初始表示
4.2需求获取的过程模型
4.3定义软件问题
4.4创建框架用例
4.5精化用例
4.6评审用例模型
第5章需求分析与验证
5.1分析模型的表示
5.2需求分析的过程模型
5.3需求优先级分析
5.4用例分析
5.5利用快速原型辅助需求分析
5.6评审分析模型
5.7需求规约
5.8需求验证
第6章软件设计概论
6.1软件设计的概念
6.2软件设计的基本原则
6.3软件设计的过程模型
第7章软件体系结构设计
7.1软件体系结构的概念
7.2体系结构的表示
7.3体系结构设计的过程模型
7.4体系结构设计模式
7.5概念设计
7.6体系结构精化
7.7基于构件的体系结构设计
7.8体系结构验证
第8章人机交互设计
8.1以用户为中心的设计
8.2用户界面设计的基本原则
8.3用户界面设计模型的表示
8.4用户界面设计的过程模型
8.5用户及任务分析
8.6用户界面的概念设计
8.7用户界面流设计
8.8用户界面的精化
第9章软件详细设计
9.1详细设计的任务与过程模型
9.2用例设计
9.3子系统设计
9.4构件设计
9.5类设计
9.6数据模型设计
9.7设计整合与验证
9.7.1设计规约
9.7.2设计验证
第10章软件实现
10.1软件实现的任务
10.2软件实现过程
10.3软件实现与程序设计语言
10.4编程实现
10.5软件调试
第11章结构化软件开发
11.1面向数据流的分析方法
11.2面向数据流的设计方法
11.3实时系统设计
第12章软件测试
12.1软件测试的概念
12.2软件测试的过程模型
12.3软件测试方法
12.4软件测试活动及实施策略
12.5面向对象软件的测试
第13章软件维护
13.1软件维护与进化的概念
13.2软件维护的过程模型
13.3可维护性
13.4维护活动及实施策略
13.5维护的副作用
13.6逆向工程与软件重构
第14章Web软件工程(*选讲)
14.1基于Web的软件及其特性
14.2Web软件的需求工程
14.3Web软件体系结构设计
14.4Web界面设计
14.5Web软件的详细设计
第15章软件度量与估算(*选讲)
15.1软件测量、度量与估算的概念
15.2软件规模度量
15.3软件复杂性度量
15.4软件质量度量
15.5软件可靠性度量
15.6制定软件度量大纲的方法和工具
第16章软件项目管理与过程改进
16.1软件项目管理与过程模型
16.2软件项目度量与估算(*选讲)
16.3风险分析(*选讲)
16.4软件项目计划
16.5软件项目人员和组织
16.6软件质量保证
16.7软件配置管理
16.8软件过程改进
本课程从教学目的和教学结果来判断,其深度有从了解到掌握2个层次;而内容的组织限于学生的接受程度和水平,本课程通过某些实例的分析与练习,使学生能掌握一些基本的概念与方法,学会使用各种工具进行软件开发(如ROSE软件工程工具软件)。

本课程是针对编程有一定基础的学生开设的软件开发的工程方法课程,其主要目的是让学生对软件的开发过程及过程中用到的理论、方法、工具具有一定的了解和掌握。

所以授课内容覆盖知识面较广,包括软件开发所需主要知识点。

并就面向对象方法与软件开发过程在深度和广度上加以展开。

本课程的重点在软件的过程描述、管理与控制,面向对象分析方法中的用例图、用例规约、模块化理论、顺序图、活动图、状态图等。

难点在于:学生能否利用所学知识进行简单的软件分析、设计;能看懂社会上实用的、
较复杂的分析、设计文档,并以此开发软件。

三、课程的学时安排
教学内容各教学环节学时分配采用何种
多媒体教章节主要内容讲授实验讨论习题实践其它小计
学手段
第1章软件与软件工程22PPT
第2章UML与RUP统一过程22PPT
第3章需求工程概论11PPT
第4章需求获取11PPT
第5章需求分析与验证44PPT
第6章软件设计概论22PPT
第7章软件体系结构设计44PPT
第8章人机交互设计22PPT
第9章软件详细设计44PPT
第10章软件实现22PPT
第11章结构化软件开发22
第12章软件测试44PPT
第13章软件维护22PPT 合计3232
四、课内实践教学安排(不含实验)
说明:本课程无课内实践教学。

相关文档
最新文档