软件工程教学大纲.doc

上传人:工**** 文档编号:556493282 上传时间:2024-01-07 格式:DOC 页数:16 大小:93.50KB
返回 下载 相关 举报
软件工程教学大纲.doc_第1页
第1页 / 共16页
软件工程教学大纲.doc_第2页
第2页 / 共16页
软件工程教学大纲.doc_第3页
第3页 / 共16页
软件工程教学大纲.doc_第4页
第4页 / 共16页
软件工程教学大纲.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《软件工程教学大纲.doc》由会员分享,可在线阅读,更多相关《软件工程教学大纲.doc(16页珍藏版)》请在金锄头文库上搜索。

1、软件工程自学指导书一、课程编码及适用专业课程编码:051432211总学时:80面授学时:24自学学时:56适用专业 :计算机应用(函授专科)二、课程性质软件工程是计算机专业的专业课,理论性较强。通过学习,学生应掌握软件工程的基本要求和软件的设计方法和设计过程,学会结构化的分析设计方法、面向对象的分析设计方法以及形式化方法和UML语言,为今后进行大型软件设计打下良好的理论基础。三、本课程的地位和作用软件工程是研究软件开发与设计的技术理论课。由于计算机科学发展十分迅速 软件开发与设计在计算机科学中占有重要的地位软件工程课程在高等工科院校成人教育计算机专业的教学计划中是一门重要的专业技术课。通过本

2、课程的学习,使学生获得1、 软件工程基本概念2、软件生命周期各阶段任务3、 面向对象方法4、 软件项目管理等方面的基本概念、基础理论和基本方法,为今后学习后继课程,从事工程技术及项目开发工作奠定必要的软件分析基础。四、学习目的与要求1. 通过本课程的学习,使学生了解、掌握软件生存周期阶段的工程任务、具体过程、技术过程、技术方法和各种工具;2. 通过本课程的学习,使学生了解软件工程管理的重要性及基本的管理技术;3. 能将上述知识用于该课程的课程设计实习中,实现一个具体题目的全部软件开发过程。五、本课程的学习方法为了学好本课程,首先要具有正确的学习目的和态度,应为我国社会主义现代化事业而学习。在学

3、习中要刻苦钻研、踏踏实实、虚心求教、持之以恒。在学习时要抓住基本概念、基本理论、工作原理和分析方法;要理解问题是如何提出和引申的,又是怎样解决和应用的;要注意各部分内容之间的联系,前后是如何呼应的;要重在理解,能提出问题,积极思考,不要死记;通过习题可以巩固和加深对所学理论的理解,并培养问题分析能力和运算能力,所以应按要求完成布置的作业题。除学习规定教材外,应参阅相关的参考书。如有条件,可通过实验验证和巩固所学理论,训练实验技能,培养严谨的科学作风。为学好软件工程这门课,学习时应注意以下几点:(1)要抓主要矛盾,有条件地略去一些次要因素,找出问题的本质。(2)要抓住重点,即应牢固掌握基本概念、

4、基本原理和方法。(3)学习是要理论联系实际,重视实践的应用六、自学内容与指导第一章 软件工程学概论 (一)自学内容1、软件危机,包括 软件危机的概念 产生软件危机的原因及其 消除软件危机的途径。2、软件工程的基本概念、7条基本原理、软件工程方法学,3、软件生命周期;4、软件过程模型。(二)本章重点1、软件工程的基本概念、7条基本原理、软件工程方法学,2、软件生命周期、 软件过程模型。(三)本章难点软件工程的7条基本原理、软件工程方法学, 软件过程模型。(四)本章考点1、软件工程的7条基本原理、软件工程方法学, 软件过程模型(五)学习指导1、软件工程的目的:倡导以工程的原理、原则和方法进行软件开

5、发,以解决当时出现的软件危机。2、软件危机:在计算机软件开发和维护过程中所遇到的一系列问题。3、软件及组成:计算机系统中的程序和文档称为软件,程序是计算机任务的处理对象和处理规则的描述,文档是为了理解程序所需的阐述性资料。4、软件工程定义:软件工程是一类求解软件的工程,它应用计算机科学、数学及管理科学等原理,借鉴传统工程的原则、方法,创建软件以达到提高质量、降低成本的目的。其中,计算机科学、数学用于构造模型与算法,工程科学用于制定规范、设计范型、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。软件工程是一门指导计算机软件开发和维护的工程学科。5、软件开发模型定义:是软件开发全部过

6、程、活动和任务的结构框架。1、)瀑布模型内容及特点:瀑布模型将软件生存周期的各项活动规定为依固定顺序连接的软干阶段工作,是一种线性模型。各阶段活动为,提出系统需求、提出软件需求、需求分析、设计、编码、测试和运行。每个开发阶段具有以下特征,从上一阶段接受本阶段工作的对象作为输入,对上述输入实施本阶段的活动,给出本阶段的工作成果作为输出传入下一阶段,对本阶段工作进行评审,若本阶段工作得到确认,则继续下阶段工作,否则返回前一阶段甚至更前阶段。瀑布模型最为突出的缺点是该模型缺乏灵活性。2、) 快速原型模型内容及特点:快速原型模型主要针对事先不能完整定义需求的软件开发,其开发过程一般是首先快速建立一个能

7、反映用户主要需求的原型系统,让用户试用,软件开发人员根据用户的反馈,实施开发的迭代过程,每一迭代过程均由需求、设计、编码、测试、集成等阶段组成,直到软件开发结束。快速原型模型在一定程度上减少了软件开发活动的盲目性。3)螺旋模型内容及特点:它是在瀑布模型和演化模型的基础上,加入两者所忽略的风险分析所建立的一种软件开发模型。沿螺旋模型顺时针方向,依次表达了四个方面的活动,制定计划、风险分析、实施工程、客户评估。4)增量模型内容:在设计了软件系统整体体系结构之后,首先完整的开发系统的一个初始子集,继之,根据这一子集,建造一个更加精细的版本,如此不断的进行系统的增量开发。5)瀑布模型、快速原型模型、螺

8、旋模型之间的联系:相同点是这三个模型都分为多个阶段,而瀑布模型一次完成软件,快速原型模型分为多次完成,每次迭代完成软件的一个部分,螺旋模型也分为多次完成,每次完成软件的一个新原型,并考虑风险分析。第二章 可行性研究 (一)自学内容1、可行性研究的任务及过程2、系统流程图与数据流图3、数据字典4、成本效益分析(二)本章重点系统流程图与数据流图。(三)本章难点建立系统的数据流图,(四)本章考点1、 可行性研究的任务2、 建立系统的数据流图,数据字典,成本效益分析(五)学习指导1、可行性研究阶段位于软件开发的前期,它的基本任务是准确地定义未来系统的目标 确定系统的规模。2、系统流程图:是描述物理系统

9、的工具,是描述数据在系统各部件之间的流动情况;是描述系统的物理模型。3、数据流图:是描述数据在软件中流动和被处理的逻辑过程,是系统逻辑功能的图形表示,其描述的是系统的逻辑模型。4、数据流图的4种组成成分: 源点/终点(用正方形表示)、变换数据的处理(用圆形表示)、数据存储(用开口矩形表示)、数据流(用箭头表示)5、数据流图的方法与过程:(1) 画出基本系统模型 确定系统的4种成分得到功能级数据流图;(2) 对功能级数据流图中描绘的系统主要功能进行细化 ,在细化时 必须保持信息连续性(3) 继续对上一步细化的数据流图的每个功能进一步细化,直到涉及到如何具体实现时就不在分解细化。6、数据字典:数据

10、字典以一种准确的和无二义的方式定义所有被加工引用的数据流和数据存储,通常包括三类内容,数据流条目、数据存储条目、数据项条目第三章 需求分析(一)自学内容1、解需求分析任务以及获取需求分析的方法2、掌握实体-联系图中的内容及状态转换图3、了解其他的图形工具(二)本章重点重点是系统的分析建模 即 系统的实体_联系图,状态转换图, (三)本章难点:建立系统的实体_联系图,状态转换图(四)本章考点:需求分析的任务;建立系统的实体_联系图、状态转换图。(五)学习指导1、需求分析阶段的主要任务是确定系统必须“做什么”,形成软件的需求规格说明书;2、需求获取通常面临三大挑战:问题空间理解、人与人之间的通信、

11、需求的不断变化。3、用户需求的分类及内容:可以分为两大类,功能性需求和非功能性需求,前者定义了系统做什么,后者定了系统工作时的特性。4、需求获取的基本原则及内容:需求获取过程中,划分、抽象和投影是人们常用的组织信息的三条基本原则,划分捕获问题空间的“整体/部分”关系,抽象捕获问题空间的“一般/特殊”或“特例”关系,投影捕获问题空间的多维“视图”。5、用况(use-case)及其内容,用况之间的关系:一个用况表示了一个系统、一个子系统或其他语义实体所提供的“一块”高内聚的功能,这样的功能是通过该语义实体与一个或多个外部交互者(称为参与者)之间所交换的消息序列,以及该语义实体所执行的一些动作予以表

12、现的,用况之间的关系为,包含、扩展、泛化。6、作为一个好的需求获取技术的显著特征:方便通信(可以通过易于理解的语言),提供定义系统边界的方法,提供定义划分、抽象和投影的方法,鼓励分析员用问题空间的术语而不是软件术语去思考问题和编制文档,允许并提醒分析员有多种可供选择的设计方案,适应需求的变化。7、需求规约的目的:是对需求定义进行分析,解决其中存在的二义性和不一致性,并以一种系统化的形式准确地表达用户的需求,形成所谓的需求规格说明书。8、结构化方法及其手段:结构化方法是一种系统化开发软件的方法,该方法基于模块化的思想,采用“自顶向下,逐步求精”的技术对系统进行划分,分解和抽象是它的两个基本手段,

13、结构化方法是结构化分析、结构化设计和结构化编程的总称9、实体联系图 描述系统的数据模型 ,有数据对象、数据对象的属性及其数据对象之间的相互关系组成。10、状态转换图 通过描述系统的状态及引起系统状态转换的事件,来表示系统的行为。11、IOP图:描述系统的输入数据、对数据的处理和输出数据之间的关系。第四章 形式化说明技术(一)自学内容1、形式化说明技术的概述,有穷状态机 ,Petri网,Z语言(二)本章重点:有穷状态机,Petri网,Z语言(三)本章难点:1、有穷状态机,2、Petri网,Z语言(四)本章考点:有穷状态机的概念及组成(五)学习指导1、 有穷状态机、Petri网,Z语言 是三种典型

14、的形式化的系统的需求分析的规格说明的描述工具。其优点(1)形式化规格说明可以用数学方法研究验证 (2)形式化规格说明消除了二义性第五章 总体设计 (一)自学内容1、总体设计的任务及过程,软件设计的重要概念及规则;2、件设计的图形工具 ,面向数据流的设计方法(二)本章重点:1、总体设计的任务,软件设计的重要原理及规则;2、件设计的图形工具 ,面向数据流的设计方法(三)本章难点:1、面向数据流的设计方法(变换分析与事物分析)(四)本章考点:1、总体设计的任务,软件设计的重要原理 2、面向数据流的设计方法(五)学习指导1、总体设计阶段的主要任务及其内容:总体设计阶段的主要任务是把系统的功能需求分配给

15、软件结构,形成软件的模块结构图(MSD),在结构图中矩形表示功能单元,称为“模块”,连接上下层模块的线段表示它们之间的调用关系,在总体设计阶段,每个模块还处于黑盒子级,模块通过外部特征标识,名字、输入、输出。2、 总体设计的表示形式及其内容(层次图、HIPO图、结构图):层次图是软件总体设计阶段最常使用的表示形式之一,用来描绘软件的层次结构,图中的每个方框代表一个模块,方框间的连线表示模块的调用关系,层次图很适合于在自顶向下设计软件的过程中使用;HIPO图是由美国IBM公司发明的“层次图+输入/处理/输出图”的英文缩写,HIPO图实际上由H图和IPO图两部分组成,H图就是上面提到的层次图,为了能使HIPO图具有可跟踪性,在H图里除了最顶层的方框之外,每个方框都加了编号;结构图和层次图类似,图中每个方框代表一个模块,方框之间的箭头(或直线)表示模块的调用关系,在结构图中通常还用带注释的箭头表示模块调用过程中来回传递的信息,尾部是空心圆表示传递的是数据,实心圆表示传递的是控制信息。3、 模块及其组成:模块是执行一个特殊任务或实现一个特殊的抽象数据类型的一

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号