《软件工程》教学大纲

合集下载

软件工程课程教学大纲

软件工程课程教学大纲

软件工程课程教学大纲一、课程概述软件工程课程旨在培养学生的软件开发能力和团队协作能力,通过理论学习和实践项目开发,使学生能够独立完成软件开发项目并具备解决实际问题的能力。

二、教学目标1. 理解软件工程的基本概念和原理;2. 掌握软件开发过程中的需求分析、设计、编码和测试等关键技术;3. 培养软件项目管理和团队协作的能力;4. 培养解决实际软件开发问题的能力。

三、教学内容1. 软件工程导论- 软件工程的定义与目标- 软件工程的发展历程- 软件工程的重要性和应用领域2. 软件开发过程- 瀑布模型- 增量模型- 敏捷开发模型- 迭代开发模型- 螺旋模型3. 需求分析与规格说明- 需求获取技术- 需求分析与建模- 法律、伦理和专业责任问题4. 软件设计与建模- 结构化设计- 面向对象设计- UML建模工具的使用- 设计原则与模式5. 软件测试与验证- 软件测试的基本概念- 黑盒测试和白盒测试- 单元测试、集成测试和系统测试- 测试策略与自动化测试工具6. 软件项目管理- 项目计划与进度管理- 项目风险管理- 团队协作与沟通- 质量管理与过程改进四、教学方法1. 理论授课:讲解软件工程基本概念和原理;2. 实践项目:学生以小组形式参与软件开发项目,包括需求分析、设计、编码和测试等环节;3. 讨论与案例分析:通过分析实际软件开发案例,学习解决问题的方法和策略;4. 实验与实践:使用软件工程相关工具进行实验和实践,加深对理论知识的理解和应用能力。

五、教材与参考书目主教材:- 《软件工程导论》(第4版),Ian Sommerville,人民邮电出版社,2020年。

参考书目:- 《软件工程:实践者导向》(第9版),Roger Pressman,机械工业出版社,2020年。

- 《UML和模式应用》(第3版),Craig Larman,机械工业出版社,2017年。

- 《软件测试:原理、技术与工具》(第3版),武汉大学软件工程研究所软件测试团队,清华大学出版社,2018年。

(完整word版)软件工程课程教学大纲

(完整word版)软件工程课程教学大纲

《软件工程》课程教学大纲一、课程代码与名称(小四号宋体加粗)课程代码: CS132201中文名称: 软件工程英文名称: Software Engineering二、课程概述及与相关课程关系软件工程是计算机科学与技术专业的专业必修课, 是指导学生按照工程化、标准化和规范化的方法开发软件系统的一门课程。

通过本课程学习, 学生能够掌握现代软件设计与开发的基本原理、方法和技术;熟悉结构化和面向对象软件设计与开发的全过程;了解软件项目管理、软件维护等方面知识。

软件工程与前后课程间关联关系、课程群对应的局部鱼骨图分别如下所示:图例:应用方向软件工程课程群及对应课程群项目、学年项目(局部)图图例:三、课程教学对象与教学目的适用专业: 计算机科学与技术教学目的:通过理论教学和实践相结合, 使学生初步具备运用软件工程的概念、原理、技术和方法开发与维护软件的能力, 并提高学生编写相关技术文档的能力, 及分析问题和解决问题的能力和团队工作交流能力。

*注: 该表所列指标可对照培养方案中所列指标来解释。

A: 认知, 指从教、学活动中、从生活经验和社会经验等多种信息渠道获得知识, 侧重知识的获取, 没有实训要求。

B: 训练, 指教、学活动中由教师引导开展的基础测试或练习, 匹配有课程讨论、课后研讨等环节。

C: 实践, 指以学生为主导, 通过实练而形成的对完成某种任务所必须的活动方式, 匹配有课程的三级项目或其它实践环节。

D: 探索, 指学生独立探寻问题、摸索、解答的活动, 不设置专门的考核。

(留空表示无该项要求)四、课程内容、学时分配及主要的教学方法本课程对主要软件开发方法采用项目驱动教学模式, 结合实验和项目开发实践, 使课程的实践与理论教学内容紧密配合, 同步进行, 达到理论指导实践, 实践促进理论学习目的。

通过理论教学、实践(实验)、团队项目开发实践3环节将理论与实践紧密联系。

教学中采用问题引导方式推进学生基于问题的学习(problem based learning), 以为学生为中心鼓励学生参与课程讨论, 促进学生采用主动学习方法(active learning)。

软件工程专业教学大纲

软件工程专业教学大纲

软件工程专业教学大纲软件工程专业教学大纲:
第一部分:导论
软件工程的定义与概念
软件工程发展历程
软件工程的重要性与应用领域
第二部分:基础知识
计算机科学与软件工程的关系
软件工程的基本原理
软件生命周期与软件开发过程
需求分析与软件设计
软件测试与质量保证
第三部分:主要课程及内容
数据结构与算法
计算机网络原理
操作系统与系统编程
数据库原理与应用
面向对象程序设计
软件项目管理与团队协作
第四部分:实践教学
软件工程实践课程介绍
软件系统设计与开发实践
软件测试与调试实践
软件项目管理实践
软件质量保证实践
第五部分:教学方法与评估
课堂教学与实践相结合
案例分析与小组讨论
考试、作业与实验报告评估
课程设计与项目实践评估
第六部分:教学目标与培养要求培养学生的计算机基本功
培养学生的软件开发能力
培养学生的团队合作与沟通能力
培养学生的解决问题能力与创新思维
第七部分:教学资源与保障
教材与参考书目
实验室设备与软件环境
教师团队与指导导师
学校资源与实习机会
第八部分:教学内容更新与发展
结合当前软件工程领域热点
引入新技术与新方法
持续改进课程内容与教学方法
总结:
通过本教学大纲的设计,旨在为软件工程专业的学生提供系统全面的课程安排,培养学生的软件工程能力,提高学生在软件领域的竞争力,为其未来的职业发展打下坚实的基础。

愿每一位学生在本专业的学习过程中都能获得实实在在的收获,成为优秀的软件工程师。

软件工程》实践教学大纲(3篇)

软件工程》实践教学大纲(3篇)

第1篇一、课程简介《软件工程》是一门研究软件开发原理、方法和工具的学科,旨在培养学生具备软件开发的基本理论、实践技能和工程素养。

本课程通过实践教学,使学生能够掌握软件工程的基本方法,提高软件开发能力,为后续课程学习和实际工作打下坚实基础。

二、教学目标1. 理解软件工程的基本概念、原理和方法。

2. 掌握软件开发过程中的需求分析、设计、编码、测试和维护等基本技能。

3. 具备使用常用软件开发工具进行实际项目开发的能力。

4. 培养良好的团队协作和沟通能力,提高工程素养。

三、教学内容1. 软件工程概述- 软件工程的定义和发展历程- 软件生命周期和开发模型- 软件工程的目标和原则2. 需求分析- 需求获取和分析方法- 需求规格说明和文档编写- 需求管理3. 软件设计- 设计原则和模式- 数据库设计- 系统架构设计4. 软件开发- 编码规范和最佳实践- 集成开发环境(IDE)的使用- 版本控制工具的使用5. 软件测试- 测试方法和技术- 测试用例设计- 软件测试管理6. 软件维护- 维护过程和方法- 软件配置管理- 软件质量保证7. 软件项目管理- 项目管理的基本概念和原理- 项目计划、执行和监控- 团队协作和沟通四、实践教学安排1. 实践教学课时:共40学时,其中理论课24学时,实践课16学时。

2. 实践教学环节:(1)课堂演示:讲解软件工程的基本概念、原理和方法,演示常用软件开发工具的使用。

(2)案例分析与讨论:分析实际软件项目案例,讨论软件工程在实际开发中的应用。

(3)上机实验:完成以下实验项目:1. 需求分析实验:完成一个简单软件的需求分析,编写需求规格说明书。

2. 设计实验:完成一个简单软件的设计,包括数据库设计、系统架构设计等。

3. 编码实验:使用一种编程语言实现一个简单软件的功能。

4. 测试实验:编写测试用例,对软件进行功能测试和性能测试。

5. 维护实验:对已完成的软件进行维护,修复已知问题和优化性能。

《软件工程》教学大纲

《软件工程》教学大纲

《软件工程》教学大纲一、教学目的及任务本课程是计算机科学与技术专业的主要专业基础课,本课程为理论与实践并重的信息学科的专业基础课。

本课程的主要目的是使学生理解在软件开发过程中应用软件工程方法的必要性和迫切性,要求学生掌握软件工程的基本概念、原理与技术方法。

在让学生了解有关知识与方法的同时,采用实践相配合的方式提高学生对专业知识的综合应用能力与技能,使学生在接收理论知识的基础上提高并加强工程化知识与实践知识的教育,为学生在今后从事计算机大规模软件开发与维护打下扎实的基础。

教学任务是使学生熟练掌握和在实践中运用软件工程基本概念、原理和方法,常用的软件过程模型,软件项目管理与质量保证的基本方法与工具。

使学生能针对具体应用,进行需求分析建模、软件设计及测试,以规范的方法开发软件系统。

使学生具备分析解决软件工程问题的能力,以及团队协作、谈判沟通等能力。

二、教学方法(一)授课方式与要求授课方式:a.教师讲授(讲授核心内容、总结、按顺序提示今后内容、答疑);b.课后作业(每周作业在教学日历中列出);c.课堂测验(就已经学过的内容不定时进行课堂测验);d.案例研讨(就某个典型的应用案例进行课前调研和课堂研讨)e.课堂报告(针对某个知识点,提前布置,让学生在课堂上分享自己的理解)f.实验项目(根据实验要求分组进行软件系统开发,其间编写实验报告,如需求分析报告、总体设计报告、测试报告等,提交可运行的软件系统);g.期末考试(闭卷考试)。

课程要求:熟悉软件工程基本知识,掌握从软件计划、需求分析、设计、测试等过程的一系列软件开发方法和工具,提高软件开发能力。

说明:本课程注重实践能力的培养。

课后需要有足够的时间进行课程案例调研以及实验项目的设计和实现。

(二)考试评分与建议a.期末考试占40%b.实验项目占40%c.课堂讨论(含课堂测验和课堂报告)占20%。

三、教学安排(一)教学内容第一次:软件工程概述(模块-1-软件工程概述)主要内容:软件已经成为以计算机为基础的系统和产品中的关键部分,并且成为世界舞台上最为重要的技术之一,软件工程的目的是高效率的开发高质量的软件产品。

软件工程课程教学大纲

软件工程课程教学大纲

软件工程课程教学大纲软件工程课程教学大纲一、课程概述软件工程课程是一门面向软件开发和管理的综合性学科,旨在培养学生的软件系统分析、设计、实现和维护的能力,以及理解并应用软件工程原理和方法进行软件开发和管理的能力。

本课程涵盖软件开发的全过程,包括需求分析、设计、编码、测试、部署、维护和管理等方面。

二、课程目标通过本课程的学习,学生将能够:1、掌握软件工程的基本概念和方法;2、熟悉软件开发的全过程,理解并应用各种软件开发方法和模型;3、掌握常用的软件开发工具和技术,如面向对象编程、设计模式、版本控制等;4、掌握软件测试的基本技术和方法,理解并应用测试流程和管理方法;5、掌握软件维护和管理的基本技术和方法,理解并应用配置管理和版本控制等工具;6、增强团队协作和沟通能力,能够有效地参与和领导软件开发团队。

三、课程内容本课程将分为以下四个模块:1、软件工程基本概念和方法:介绍软件工程的基本概念、软件的生命周期、常用的软件开发方法和管理模型等;2、需求分析和设计:介绍需求分析的方法和工具,如USE Case图、数据流图等,以及软件设计的基本原理和方法,如面向对象设计、设计模式等;3、软件实现和测试:介绍编码的基本技术和规范,如代码风格、代码结构等,以及软件测试的基本技术和方法,如黑盒测试、白盒测试等;4、软件维护和管理:介绍软件维护和管理的基本技术和方法,如Bug 管理、版本控制等,以及配置管理和版本控制等工具的使用。

四、课程安排本课程将持续一个学期,共计36个学时,具体安排如下:1、软件工程基本概念和方法:10学时;2、需求分析和设计:12学时;3、软件实现和测试:10学时;4、软件维护和管理:4学时。

五、评估方式本课程的评估方式将包括以下方面:1、平时作业:占总评分的30%;2、期末考试:占总评分的50%;3、出勤率:占总评分的20%。

六、参考资料本课程将使用以下教材和参考书籍:1、《软件工程》(机械工业出版社,作者:史济民);2、《Head First Software Development》(中国电力出版社,作者:Andy Oram等);3、《敏捷软件开发》(人民邮电出版社,作者:Scott W. Ambler 等)。

软件工程教学大纲

软件工程教学大纲

软件工程教学大纲《软件工程》课程教学大纲一、课程的基本情况课程中文名称:软件工程课程英文名称:softwareengineering课程代码:1302031课程类别:专业基础课课程学分:2.5课程学时:44讲课对象:计算机科学与技术专业、软件工程专业前导课程:高级语言程序设计、数据结构、数据库原理二、教学目的《软件工程》是计算机专业的一门必修的专业课程,通过本课程的学习,要求学生掌握软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的发展方向;如何用工程化的方法开发软件项目,以及开发过程中应遵循的流程、准则、标准和规范。

《软件工程》是一门综合性和实践性很强的专业课程。

应注重方法、技术的实际应用,能应用相应的图形工具开发小型软件项目,为更深入地学习和今后从事软件工程实践打下良好的基础。

三、教学基本建议ch1introduction基本要求:§1.1softwarecrisis§1.2softwareengineering§1.3lifespan§1.4softwareprocess重点与难点:lifespanch2feasibilitystudy基本要求:§2.1task§2.2process§2.3systemflowdiagram§2.4dataflowdiagram§2.5datadictionary§2.6cost/benefit重点与难点:dataflowdiagram,datadictionarych3requirementsanalysis基本建议:§3.1task§3.2process§3.3conceptionmodel&e-rdiagrams§3.4otherdiagramtools重点与难点:conceptionmodel&e-rdiagramsch4formalspecificationmethods基本建议:§4.1statemachine§4.2petrinetwork§4.3zspecificationlanguage重点与难点:statemachinech5systemdesign基本建议:§5.1designprocess§5.2designconcepts§5.3designprinciples§5.4diagramtoolsofsoftwarearchitecture§5.5datafloworienteddesignmethods:transform&transactionmapping重点与难点:datafloworienteddesignmethods:transform&transactionmappingch6programdesign基本要求:§6.1structuredprogramdesign§6.2interfacedesign§6.3proceduredesigntools§6.4datastructureorienteddesignmethods重点与难点:datastructureorienteddesignmethodsch7implementation基本要求:§7.1coding§7.2softwaretestingfundamentals§7.3unittesting§7.4integrationtesting§7.5va lidationtesting§7.6white-boxtesting§77black-boxtesting重点与难点:ch8maintenance基本建议:softwaretestingfundamentals§8.1definitions§8.2softwareevolution§8.3maintainabil ity-softwaremeasurement重点与难点:softwareevolutionch9object-orientedmethodology基本要求:§9.1introduction§9.2concepts§9.3objectmodelingtechniques-3models(object,dynamic,function)重点与难点:3models(object,dynamic,function)ch10object-orientedanalysis基本要求:§10.1modelingprocess§10.2requirementspresentation§10.3createobjectmodel§10.4createdynamicmodel§10.5createfunctionmodel重点与难点:modelingprocess,requirementspresentationch12object-orientedimplement基本要求:§12.1programminglanguages§12.2programmingstyles§12.3ootestingstrategies§12.4testcasedesignforoosoftware重点与难点:ootestingstrategiesch13softwareprojectmanagement基本建议:§13.1softwaresizing§13.2costestimation§13.3softwareplan§13.4personnel§13.5qualityassurance§13.6.projectplan重点与难点:softwareplan,projectplan四、课程内容与学时分配课程内容与学时分配表中内容ch1introductionch2feasibilitystudych3requirementsanalysisch4formalspecificatio nmethodsch5systemdesignch6programdesignch7implementationch8maintenancech9object-orientedmethodologych10object-orientedanalysisch12object-orientedimplementch13softwareprojectmanagement总学时4444426462242444学时五、教材与参考书教材:张海藩主编,《软件工程导论(第四版)》,清华大学出版社,2021参考书:[1]rogers.pressman,《softwareengineeringapractitioner’sapproach》5edition,chinamachinepress,2000[2]rogers.pressman著,梅宏译,《软件工程-实践者的研究方法》原书第5版,机械工业出版社,2002th六、教学方式和考核方式1、教学方式课程的讲授应当将理论教学与实验教学紧密结合,并使之相互辅助,提升教学效率。

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

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

软件工程课程教学大纲(SoftwareEngineering)学时数:32其中:实验学时:6课外学时:0学分数:2适用专业:计算机科学与技术一、课程的性质、目的与任务《软件工程》是计算机科学与技术专业教学计划中一门综合性和实践性很强的核心课程,主要内容包括软件工程概述、可行性分析、需求分析、概要设计、详细设计、面向对象分析与设计、编码、软件质量与质量保证、项目计划与管理。

根据培养基层应用型人才的需要,本课程的目的与任务是使学生通过本课程的学习,了解软件项目开发和维护的一般过程,掌握软件开发的传统方法和最新方法,为更深入地学习和今后从事软件工程实践打下良好的基础。

二、课程教学的基本要求(-)基本概念和基本知识:软件与软件工程,生存周期与软件开发模式,结构化分析、设计与编码,面向对象分析、设计与编码,软件的评审、测试与维护,项目计划与项目管理。

(二)基本技能:能用软件工程的方法参与软件项目的分析、设计、实现和维护重点:系统分析、系统设计、系统实现、系统维护难点:需求分析、软件测试课程的教学要求在每一章教学内容之后给出,大体上分为三个层次:了解、理解和掌握。

了解即能正确判别有关概念和方法:理解是能正确表达有关概念和方法的含义;掌握是在理解的基础上加以灵活应用三、课程的教学内容、重点和难点第一章概论一、软件(一)软件的发展;(二)软件的定义;(三)软件的特点、软件的种类。

二、软件工程的概念(一)软件危机与软件工程的定义;(二)软件工程的目标;(三)软件工程的原则。

三、软件生存周期与软件开发模型(一)瀑布模型、原型模型、螺旋模型、基于四代技术模型、面向对象与组件模型、混合模型。

教学要求:软件和软件工程的基本概念,软件生命周期及软件开发的各个模型重点:软件生存周期与软件开发模型第二章可行性分析一、可行性研究的任务二、可行性研究的步骤三、系统流程图四、成本/效益分析第三章需求分析一、需求分析的任务与步骤(一)需求分析的任务;(二)需求分析的步骤;(三)需求分析的原则。

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

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

《软件工程》课程教学大纲一、课程基本信息课程名称:软件工程英文名称:Software Engineering课程编码:11223C课程类别:专业主干课总学时:48学时(含实验10学时)总学分:3适用专业:计算机科学与技术/网络工程方向先修课程:高级语言程序设计,数据库设计原理,数据结构开课系部:计算机科学与技术系二、课程的性质和任务《软件工程》是计算机科学与技术专业本科生的一门专业主干课程。

它是一门指导计算机软件系统开发和维护的工程学科,也是计算机科学与技术领域的一个重要学科。

软件工程学是用以指导软件人员进行软件的开发、维护和管理的科学,通过本课程的学习,使学生掌握软件工程的基本概念、基本原理、实用的开发方法和技术,了解软件工程各领域的发展动向;开发软件项目的工程化的方法及在开发过程中应遵循的流程、准则、标准和规范等。

使学生掌握开发高质量软件的方法,以及有效地策划和管理软件开发活动,为今后从事软件开发和应用打下良好的基础。

通过本课程的学习,培养学生对软件开发能力和项目管理能力。

三、课程教学基本要求(一)理论教学内容和基本要求第1章软件工程概述了解软件工程的产生和发展、软件危机的原因,知道如何消除软件危机。

明白软件工程的基本概念,知道软件工程中包含的领域范围重点:软件危机的产生和消除方法第2章软件过程软件与软件生命周期任务,软件开发过程中的基本开发模型,软件开发工具与软件开发环境。

掌握软件生存期模型,软件开发模型方法介绍。

重点:软件与软件生存期,软件开发过程模型难点:软件开发过程模型第3章结构化分析掌握软件需求获取的方法、软件需求工程的任务、软件需求的原则、主要的需求分析方法;需求工程的基本活动、需求的有效性验证、需求变动管理、需求规格说明;建立结构化分析的三种模型;三种模型对应的描述方法:E-R图,数据流图,状态图。

掌握分层数据流图、数据词典和加工逻辑说明的基本构造方法。

重点:软件需求获取方法、结构化分析方法、分析建模方法难点:结构化分析建模方法第4章结构化设计理解软件结构化分析与结构化设计的映射关系,软件设计的基本原理。

《软件工程》 杜文峰 教学大纲(思政)

《软件工程》 杜文峰 教学大纲(思政)

《软件工程》杜文峰教学大纲(思政)软件工程是一门重要的学科,是计算机科学和工程学的交叉领域,需要学习者掌握软件开发的基本原理及应用技术。

杜文峰教授担任软件工程的思政课程的授课教师,他制定的教学大纲包括课程的目标、教学内容、教学方法以及考核方式等内容,旨在为学生提供全面而深入的软件工程知识,培养学生的软件开发能力和综合素质。

一、课程目标本课程的目标是使学生了解软件工程学科的基本概念、方法和原则,理解软件开发的技术和管理的基本要求,掌握软件开发过程中的常用方法和工具,培养学生的团队协作能力和问题解决能力,从而提高学生的综合素质和职业能力。

二、教学内容1.软件工程的概念和基本原理:介绍软件工程的基本概念、软件开发生命周期、软件需求分析和软件设计等基本原理。

2.软件开发过程:介绍软件开发过程中的需求分析、系统设计、编码实现、测试和维护等各个阶段,以及常用的软件开发方法和过程模型。

3.软件工程的管理:介绍软件项目管理的基本原理和实践技术,包括项目计划、进度控制、资源分配等内容。

4.软件质量保证和测试:介绍软件质量的概念和评估方法,以及软件测试的方法和技术。

5.软件开发工具和环境:介绍软件开发过程中常用的开发工具和集成开发环境,包括代码编辑器、调试器、版本控制工具等。

6.软件项目实践:通过小组项目实践,培养学生的团队合作和项目实施能力,并为他们提供实际的软件开发经验。

三、教学方法本课程采用多种教学方法,包括课堂讲授、案例分析、小组讨论和项目实践等。

教师将根据具体的教学内容和学生的需求,合理选择教学方法,以激发学生的学习兴趣,提高他们的主动学习能力。

四、考核方式本课程的考核方式包括平时成绩和期末考试。

平时成绩的主要依据是学生的课堂表现、小组讨论和项目实践成果。

期末考试主要考察学生对软件工程知识的理解和掌握程度。

以上是杜文峰教授制定的《软件工程》思政课程的教学大纲。

通过本课程的学习,学生将全面了解软件工程的基本概念和方法,掌握软件开发的技术和管理要求,提高团队协作和问题解决能力,为今后的职业发展打下良好的基础。

《软件工程》教学大纲

《软件工程》教学大纲

《软件工程》教学大纲一、课程概述本课程向学生介绍与大型软件相关的规划. 分析. 设计. 实现. 测试. 维护等概念. 原理. 技术与工具,同时向学生讲述传统的结构化开发方法与当前流行的面向对象开发方法。

要求学生牢固掌握软件生命周期. 软件质量. 软件成本等基本概念以及传统的结构化分析. 设计与实现方法;掌握面向对象软件工程的基本概念与表示技术,基本掌握软件开发中的管理技术。

通过本课程的学习,让学生对软件工程学有一个全貌的了解,对其所涉及的基本概念. 原理. 方法和有关技术逐步领会并进行运用。

要求学生能够在已有的程序设计. 数据结构. 数据库等理论基础上,为今后进行实际的软件开发奠定一个良好的基础。

本课程应强调实际运用,最好在教学中安排学生参予系统开发的策划. 分析. 设计. 编码. 测试等阶段工作的环节,积极引导学生从个人的单纯编程活动转移到进行系统分析与设计方面上来。

如果受条件所限,可让学生在毕业设计中将这一环节补上。

本课程的先修课程为“面向对象程序设计”. “数据结构与算法”与“数据库”。

本课程的后续课程可以为“程序设计方法学”与“算法分析与设计”。

二、课程目标1.知道《软件工程》这门学科的性质. 地位. 独立价值. 研究范围. 基本框架. 研究方法. 学科进展和未来方向等。

2.理解该门学科的主要概念. 基本原理和策略等。

3.学会运用一些具体的策略或技术等,如软件测试过程中所用到的黑盒测试法和白盒测试法。

4.能够把所学的原理应用到具体的实践中去,如对于具体系统开发过程中所遇到的问题能够自行进行处理,培养学生发现. 分析和解决问题的能力等。

三、课程内容和教学要求这门学科的知识与技能要求分为知道、理解、掌握、学会四个层次。

这四个层次的一般涵义表述如下:知道———是指对这门学科和教学现象的认知。

理解———是指对这门学科涉及到的概念、原理、策略与技术的说明和解释,能提示所涉及到的教学现象演变过程的特征、形成原因以及教学要素之间的相互关系。

《软件工程》实验教学大纲

《软件工程》实验教学大纲

《软件工程》实验教学大纲一、课程基本信息课程名称:软件工程实验英文名称:SoftwareEngineering课程编码:11223C课程性质:非独立设课课程类别:专业主干课课程总学时:14课程总学分:3开设实验项目数:1适用专业:计算机科学与技术/网络工程方向先修课程:高级语言程序设计,数据库设计原理,数据结构开课系部:计算机科学与技术系二、实验课程的目的与要求《软件工程课程设计》是一个综合性的设计型实验,是培养训练学生软件开发能力的重要实践性教学环节,与《软件工程》课程的教学内容紧密配合,同步进行。

开设该课程设计的主要目的是:通过软件开发的实践训练,使学生进一步掌握软件工程的方法和技术,树立团队合作精神,培养自主学习能力和创造性的工程设计能力,提高综合分析和解决问题的能力。

在教师的指导下,组成开发小组,实践应用软件的设计与开发。

以软件设计为中心,完成从需求分析、软件设计、编码到软件测试运行的软件开发全过程。

三、主要仪器设备与实验基本要求硬件要求:微型计算机一台(PerltiUm或以上)软件要求:WindoWS操作系统,SQLSERVER2000,MSVisio2003,MyEclipse,IBMRationalrose7.0,实验要求:1、上机前要作好充分准备,根据要求学习相应文档的编写。

2、对上机操作过程中可能出现的问题预先分析,确定调试步骤和测试方法,对运行结果如何分析等。

3、上机实验完成后,认真编写相应文档,并对实验中出现的问题进行分析、总结。

4、上机过程中要遵守实验室的各项规章制度,爱护实验设备,服从指导老师安排。

5、本课程的实验过程中,不得进行游戏、上网等操作。

四、实验项目名称和学时分配实验采取分组完成,每个小组完成一个独立的项目,要求学生严格按照下面步骤完五、实验内容及要求实验项目一实验项目名称:命题实验项目的目的和任务:选定课程设计要开发的项目。

由教师命题,以开发小组为单位选择课题,经教师审查调整后确定。

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

《软件工程》课程教学大纲《软件工程》是一门为计算机科学与技术专业开设的专门介绍软件开辟思想、方法、技术、管理和应用的专业基础课程。

通过本课程的学习,旨在使学生树立良好的软件开辟理念,建立正确的、符合工程规范的、系统化的软件工程思想,训练软件分析的思维能力,掌握软件系统的各种开辟方法,提高软件设计水平,为以后的软件开辟打下良好的基础。

课堂教学51 学时,机动3 学时。

采用课堂讲授、多媒体课件为主,课外做开辟一个小型软件系统作业的实践活动为辅的教学方法。

本课程面向计算机科学与技术专业的本科专业。

通过本章的学习,了解软件、软件危机和软件工程的有关概念。

主要内容:软件和软件工程的有关概念以及软件工程的基本理论。

教学重点:软件定义和软件产品特点;软件危机和解决软件危机的途径;软件工程定义和基本原则。

教学难点:软件工程的基本原则。

1、软件工程过程的定义2、软件工程的三要素3、软件工程工具本章采用课堂讲授和多媒体课件的方式进行教学。

1.5 学时。

通过本章的学习,了解软件和软件工程过程的有关概念,掌握软件工程过程、软件生命周期及其模型等内容。

主要内容:软件工程过程的概念、软件工程过程模型及软件工程过程技术和软件重用的基本理论。

教学重点:软件工程过程模型及技术。

教学难点:软件重用。

本章采用课堂讲授和多媒体课件的方式进行教学。

2 学时。

通过本章的学习,了解可行性研究的目的任务,掌握可行性研究的方法和技术。

主要内容:系统需求识别的目标、过程,可行性研究的目的、任务、步骤,可行性研究的成本/效益分析的方法和系统体系结构建模、方案制定与评价。

教学重点:可行性研究的目的、任务、步骤,可行性研究的成本/效益分析的方法和系统体系结构建模、方案制定与评价。

教学难点:可行性研究的成本/效益分析的方法和系统体系结构建模。

1、硬件和硬件工程2、软件和软件工程3、人机交互工程4、数据库和数据库工程1、目的2、任务本章采用课堂讲授和多媒体课件的方式进行教学。

2.5 学时。

通过本章的学习,要求学生了解需求分析的目的、任务、步骤和方法,掌握原型化方法的有关内容,重点掌握需求分析的方法、步骤、需求分析的工具以及需求分析文档的书写和验证。

主要内容:系统需求分析的目的、任务、步骤、方法和需求分析使用的工具。

教学重点:需求分析的步骤、方法和需求分析的工具。

教学难点:数据流图的细化和系统逻辑模型的导出。

2、特点1、确定系统的功能性需求2、确定系统的非功能性需求1、通过调查研究获取用户需求2、确定系统的真正需求3、描述需求,建立系统的逻辑模型4、书写需求文档,进行需求复审1、能够将复杂问题的功能分解和逐层细化2、表达和理解问题的数据域和功能域3、建立模型1、概述2、实体模型中的基本符号3、建立实体模型1、作用2、图形符号3、示例1、作用2、图形符号3、示例1、作用2、图形符号1、建立顶层的数据流图2、分层细化1、作用2、图形符号3、状态迁移图的细化3、示例1、Petri 网的概念2、Petri 网的基本符号和示例1、数据字典的作用2、数据字典的基本符号1、数据流条目2、数据项条目3、数据文件条目4、数据加工条目1、结构化语言2、判定表3、判定树1、建立的方法2、建立的原则1、基本手段—分解和抽象2、基本思想—自顶向下、逐层分解3、基本工具1、描述需求分析的工具2、需求分析的文档1、验证的必要性2、验证的四个方面本章采用课堂讲授和多媒体课件的方式进行教学。

3 学时。

通过本章的学习,要求学生了解总体设计的目的、任务、步骤,掌握总体设计的图形工具,重点掌握软件设计的概念和原理、面向数据流和数据结构的设计方法以及总体设计的文档的书写。

主要内容:总体设计的目的、任务、步骤和软件设计的普通原理,以及总体设计的图形工具、面向数据流和数据结构的设计方法。

教学重点:软件设计的、原理和规则;总体设计的图形工具;面向数据流的设计方法。

教学难点:面向数据流设计方法中的事物流和变换流的识别以及映射成软件结构的方法。

1、模块和模块化2、如何使模块独立3、模块独立的标准:耦合和内聚1、软件体系结构设计2、数据结构和数据库设计3、系统可靠性和安全性设计4、编写文档和参加复审1、HIOP 图2、结构图1、事物流2、变换流3、混合流1、设计步骤2、变换流设计3、事物流设计4、混合流设计5、设计优化本章采用课堂讲授和多媒体课件的方式进行教学。

2 学时。

通过本章的学习,要求学生了解详细设计的目标、任务,掌握详细设计的原则和方法、描述算法的图形工具和详细设计的文档。

主要内容:详细设计的目标、任务、原则和方法,以及详细设计中用于算法描述的图形工具、面向数据结构的设计方法和详细设计的文档。

教学重点:结构化程序设计;算法设计的图形工具;面向数据结构设计方法。

教学难点:面向数据结构设计方法中的模块映射方法。

1、程序流程图2、结构流程图(盒图)3、PAD 图4、结构化语言1、Jackson 图2、改进的Jackson 图3、Jackson 设计方法本章采用课堂讲授和多媒体课件的方式进行教学。

2 学时。

通过本章的学习,要求学生了解编码设计的目的、任务,掌握选择语言的原则,编码的风格及软件效率,软件复杂度的度量方法。

主要内容:编码设计的目的、任务、编码语言的选择、编码设计的风格和编码的容错技术。

教学重点:编码语言及其选择;程序设计的风格和效率;软件复杂度的度量方法。

教学难点:软件复杂度的度量方法。

1、内部文档2、标识符的命名及说明3、语句的构造及书写4、输入/输出1、用于提高运行速度的指导原则2、用于优化存储空间使用的指导原则1、环形复杂度的度量方法2、文本复杂度的度量方法本章采用课堂讲授和多媒体课件的方式进行教学。

2 学时。

通过本章的学习,要求学生了解软件测试的目的和任务,重点掌握软件测试的方法、策略和技术,以及软件测试的文档的编制。

主要内容:软件测试的目的、原则、策略和软件测试的方法。

教学重点:测试用例的设计技术。

教学难点:测试用例的设计。

1、软件测试的概念2、软件测试的目的3、软件测试的基本原则1、静态分析技术2、动态测试技术1、语句覆盖2、判断覆盖3、条件覆盖4、判断/条件覆盖5、条件组合覆盖6、点覆盖7、边覆盖8、路径覆盖1、等价类划分2、边界值分析3、因果图法4、错误猜测法1、单元测试的内容2、单元测试的步骤1、非渐增式测试2、渐增式测试1、确认测试标准2、软件配置审查3、α 和β 测试本章采用课堂讲授和多媒体课件的方式进行教学。

3 学时。

通过本章的学习,要求学生了解软件维护的目的和任务,掌握提高软件可维护的方法、技术和文档的编制。

主要内容:软件维护的概念、特点和方法。

教学重点:软件的可维护性和维护的方法。

教学难点:决定软件可靠性的因素和软件维护的方法及技术。

1、长期维护小组2、暂时维护小组本章采用课堂讲授和多媒体课件的方式进行教学。

3 学时。

通过本章的学习,要求学生了解传统方法的缺陷,面向对象方法的由来和发展;掌握面向对象方法的基本概念,重点掌握面向对象方法的三个模型的建立方法。

主要内容:面向对象方法的发展历史、基本概念、以及面向对象的建模。

教学重点:面向对象方法的基本概念;对象模型、动态模型和功能模型的概念。

教学难点:对象模型、动态模型和功能模型的概念。

本章采用课堂讲授和多媒体课件的方式进行教学。

3 学时。

通过本章的学习,要求学生了解面向对象分析的目的,掌握面向对象分析的基本概念和步骤,重点掌握面向对象分析的方法和技术。

主要内容:面向对象分析的目的、步骤、分析的方法和技术。

教学重点:对象模型、动态模型和功能模型的构建。

教学难点:三个模型构建的方法。

本章采用课堂讲授和多媒体课件的方式进行教学。

3 学时。

通过本章的学习,要求学生了解面向对象设计的目的,掌握面向对象设计的基本原则,重点掌握面向对象设计的方法、原理和技术。

主要内容:面向对象设计的目的、原则、内容和任务。

教学重点:面向对象设计的基本原则、启示式规则;面向对象设计的任务。

教学难点:面向对象设计任务的类中提供的服务的设计和关联的设计。

1、模块化2、抽象化3、信息隐蔽4、弱耦合5、强内聚6、可复用性1、设计结果应清晰易懂2、普通-特殊结构的深度应适当3、设计简单的类4、设计简单的协议5、设计简单的服务6、减少设计变动1、面向对象设计的五个层次四个部份2、子系统间的交互方式3、系统组织4、设计系统的拓扑结构1、文件管理系统2、关系数据库管理系统3、面向对象数据库管理系统1、设计数据格式2、设计相应的服务3、设计实例1、确定类中的应有服务2、设计实现服务的方法1、关联的遍历2、单向关联的实现3、双向关联的实现4、链属性的实现本章采用课堂讲授和多媒体课件的方式进行教学。

6 学时。

通过本章的学习,要求学生了解面向对象实现的目的和面向程序设计语言的特点,掌握选择面向对象程序设计语言的基本原则,面向对象程序设计的风格和面向对象的测试技术。

重点掌握面向对象实现的方法和技术。

主要内容:面向对象实现的目的,面向对象的程序设计语言,面向对象程序设计风格和面向对象程序设计的测试。

教学重点:面向对象实现的方法和技术。

教学难点:面向对象的测试。

1、一致的表示方法2、可重用性3、可维护性1、支持类与对象概念的机制2、实现整体-部份结构的机制3、实现普通特殊机构的机制4、实现属性和服务的机制5、类型检查6、类库7、效率8、永久保存对象9、类模板10、开辟环境1、未来能否占主导地位2、可重用性3、类库和开辟环境1、可重用的概念2、提高可重用性的方法1、传统测试中的技术2、面向对象的特有技术1、确认测试2、系统测试1、面向对象概念对测试用例设计的影响2、测试用例的设计1、组件的概念2、组件的特点1、组件分类2、组件开辟技术1、组件开辟原则2、组件管理1、推荐模型开辟2、应用组建技术开辟应用系统本章采用课堂讲授和多媒体课件的方式进行教学。

3 学时。

通过本章的学习,了解软件项目管理的概念,掌握软件项目管理的内容和方法。

主要内容:软件项目管理的概念,人员管理、问题管理和过程管理的内容和方法。

教学重点:人员管理、问题管理和过程管理的内容和方法。

教学难点:人员管理、问题管理和过程管理的方法。

1、常见的组织形式2、四种“范型”1、问题界定2、问题分解本章采用课堂讲授和多媒体课件的方式进行教学。

2 学时。

通过本章的学习,了解软件度量的必要性,掌握软件度量和评价软件质量的相关概念,重点掌握软件度量和提高软件质量的方法和技术。

主要内容:软件度量的概念,软件度量的模式,软件质量的度量和软件过程中度量数据的集成等内容。

教学重点:软件度量评价技术,软件质量的度量技术。

教学难点:软件过程中度量数据的集成技术。

1、采集过程2、度量数据的计算和评价本章采用课堂讲授和多媒体课件的方式进行教学。

相关文档
最新文档