您好,欢迎访问三七文档
软件工程-Ch.1软件与软件工程towangteng@263.net本章主要知识点知识点1、软件的基本概念(如:软件的定义、文档、软件的特点等)2、软件危机的概念3、软件工程学的概念(定义)、研究的内容(三要素)4、软件工程的基本(主要)目标5、软件工程学的原理、原则6、软件生命期的概念及其包含的主要阶段7、几种主要的软件开发模型8、传统的瀑布模型分成哪几个阶段,以及基本任务9、软件工程面临的问题软件工程-Ch.2计算机系统及可行性研究towangteng@263.net本章主要知识点知识点1、基于计算机的系统元素2、可行性研究的概念、目的及任务3、可行性研究内容包括哪几方面的可行性4、常用的系统分析方法5、系统结构模板的组成软件工程-Ch.3软件需求工程towangteng@263.net本章主要知识点知识点1、软件需求分析的概念、原则及任务2、需求分析的过程3、软件需求建模(三个子模型+数据字典)4、结构化分析方法(SA方法)的概念和描述工具(数据流图、数据字典、加工说明等)5、软件规格说明6、需求管理的基本概念软件工程-Ch.4软件设计工程towangteng@263.net本章主要知识点1、软件设计的概念,包括概要设计与详细设计2、软件设计原则3、软件设计原理(模块化、分解与抽象、逐步求精、信息隐蔽)4、软件设计的基本任务5、软件体系结构、系统分解6、模块独立性(内聚性、耦合性的划分)7、将变换流或事务流类型的数据流图转换成软件结构8、数据设计的任务9、界面设计的主要内容10、过程设计的任务及其包含的主要活动11、过程设计常用的描述工具程序流程图、盒图、PAD图、判定表等12、软件重用的概念、软件重用的成份知识点软件工程-Ch.5软件测试工程towangteng@263.net本章主要知识点知识点1、软件测试的定义2、软件测试的目的3、软件测试的原则4、软件测试的方法5、用白盒法设计测试用例逻辑覆盖、循环测试、基本路径测试6、程序流图及与复杂度计算(McMabe复杂度)7、用黑盒法设计测试用例等价分类法、边界值分析法、错误猜测法8、软件测试步骤及各阶段的主要任务单元测试、集成测试、确认测试、系统测试9、调试的目的及方法软件工程-Ch.6软件维护工程towangteng@263.net本章重点、难点及主要知识点知识点1、软件维护的概念2、软件维护的分类3、与软件维护工作量有关的因素4、软件维护的流程5、软件维护的副作用与面临的问题6、软件可维护性的概念及其度量7、提高软件可维护性的途径8、软件再工程的基本概念软件工程-Ch.7传统的开发方法towangteng@263.net本章主要知识点知识点1、结构化方法的概念2、结构化分析方法的概念及其采用的主要描述工具3、表示软件结构的图形工具4、将变换流或事务流类型的数据流图转换成软件结构5、Jackson方法的基本概念6、Jackson图(用于描述数据结构和程序结构)7、Jackson方法的设计步骤软件工程-Ch.8快速原型的开发方法towangteng@263.net本章主要知识点知识点1、快速原型模型的基本思想2、原型开发的分类3、快速原型模型的表示软件工程-Ch.9面向对象的开发方法towangteng@263.net本章主要知识点知识点1、面向对象的基本概念(对象、类、封装性、继承性、多态性、消息和方法)2、面向对象建模1)对象模型概念和描述工具(对象图)2)动态模型概念和描述工具(状态图)3)功能模型概念和描述工具(数据流图)3、面向对象分析1)对象模型的五个层次(主题层、类&对象层、结构层、属性层、服务层)2)面向对象分析的基本过程标识类-&-对象标识结构标识主题定义属性定义服务4、面向对象设计1)面向对象设计的基本概念2)OOD模型(四个垂直部分与五个层次)软件工程-Ch.11软件质量管理towangteng@263.net本章主要知识点知识点1、软件质量的定义2、软件质量的度量与评价3、软件质量保证4、McCall质量度量模型和ISO质量度量模型5、软件复杂性的基本概念和度量方法6、软件可靠性定义、指标、模型7、软件评审8、软件容错技术软件工程-Ch.12软件项目管理towangteng@263.net本章主要知识点知识点1、项目管理及其要素2、软件项目管理的基本概念3、软件项目计划的任务4、软件项目估算5、软件项目进度安排软件工程-Ch.13软件配置管理towangteng@263.net本章主要知识点知识点1、软件配置项的基本概念2、版本控制的概念3、基线的概念4、软件配置的概念5、软件配置管理的定义及其过程软件工程-Ch.14软件安全管理towangteng@263.net本章主要知识点知识点1、软件安全性的工作2、软件安全性分析3、软件安全性设计准则考试题型考试时间:120分钟第一部分选择题一、选择题第二部分非选择题二、填空题三、判断题四、名词解释五、简答题六、应用题应用题总结考核知识点:1、分层的数据流图2、将变换流或事务流类型的DFD,转换成软件结构图3、判定表描述4、流程图、盒图、PAD图5、Jackson方法设计小型题目6、用白盒法、黑盒法设计测试用例7、McCabe度量法8、建立对象模型(对象图)一、数据流图(DFD)数据流图,是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,反映系统必须完成的逻辑功能。举例:某个飞机机票预订系统:旅行社把预订机票的旅客信息(姓名、年龄、单位、身份证号码、旅行时间、目的地等)输入机票预订系统。系统为旅客安排航班,打印出取票通知单(附有应交的账款)。旅客在飞机起飞的前一天凭取票通知单交款取票,系统检验无误,输出机票给旅客。1、基本图形符号数据流图有四种基本图形符号::箭头,表示数据流;数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。数据流应该用名词或名词短语命名。〇:圆或椭圆,表示加工;对数据流进行某些操作或变换。每个加工也要有名字,通常是动词短语,简明地描述完成什么加工。=:双杠,表示数据存储;暂时保存的数据,可以是数据库文件或任何形式的数据组织。□:方框,表示数据的源点或终点。是本软件系统外部环境中的实体(包括人员、组织或其他软件系统),统称外部实体。一般只出现在数据流图的顶层图。2、画数据流图的步骤1)首先画顶层数据流图。顶层流图只包含一个加工,定义了系统的输入输出流。顶层图的作用在于表明被开发系统的范围以及它和周围环境的数据交换关系。具体步骤:从问题描述中提取数据流图的四种成分。首先考虑数据的源点和终点,然后考虑加工,最后考虑数据流和数据存储。旅行社飞机机票预订系统旅客订票单取票通知单取票单机票飞机机票预订系统顶层图源点和终点旅行社、旅客加工飞机机票预订系统数据流订票单、取票通知单、机票2)细化基本系统模型,描绘系统的主要功能一般从0层开始编号,采用自顶向下,由外向内的原则。预订机票1旅客取票2订票单取票通知单取票单机票机票文件飞机机票预订系统0层图(1)预订机票(I:订票单;O:机票文件、取票通知单)(2)旅客取票(I:取票单,机票文件;O:机票)3)对功能级数据流程图中描绘的系统主要功能进一步细化一般沿输入数据流的方向,凡数据流的组成或值发生变化的地方则设置一个加工,这样一直进行到输出数据流。如果加工的内部还有数据流,则对此加工继续分解,直到每个加工足够简单,不能再分解为止。录入并校验1.1订票单有效订票单安排航班1.2航班目录机票文件机票预订信息打印处理1.3取票通知单预订机票(I:订票单;O:机票文件、取票通知单)(1)录入并校验(I:订票单;O:有效订票单)(2)安排航班(I:有效订票单,航班目录;O:机票文件,机票预订信息)(3)打印处理(I:机票预订信息;O:取票通知单)3)对功能级数据流程图中描绘的系统主要功能进一步细化机票文件校验2.1取票单机票信息打印机票2.3机票记账2.2有效取票单记账文件旅客取票(I:取票单,机票文件;O:机票)(1)校验(I:取票单;O:有效取票单)(2)记账(I:有效取票单,机票文件;O:记账文件,机票信息)(3)打印处理(I:机票信息;O:机票)3)对功能级数据流程图中描绘的系统主要功能进一步细化录入并校验1.1订票单有效订票单安排航班1.2航班目录机票文件机票预定信息打印处理1.3取票通知单校验2.1取票单机票信息打印机票2.3机票记账2.2有效取票单记账文件注意事项:①命名:不论数据流、数据存储还是加工,合适的命名使人们易于理解其含义。②画数据流而不是控制流:箭头上的数据流名称只能是名词或名词短语,整个图中不反映加工的执行顺序。③一般不画物质流。数据流一般反映能用计算机处理的数据。④每个加工至少有一个输入数据流和一个输出数据流。⑤遵循加工编号规则。⑥父图与子图的平衡。⑦局部数据存储:随着数据流图的分解,在下层DFD中可能出现父图中没有的文件和外部项。⑧提高数据流图的易懂性:调查表明,一张数据流图中包含的处理多于5~9个,人们就难以领会数据流图的含义,需要将它分层。注意分解层次的均匀性问题。终止加工分解条件——加工简单,功能清晰易懂。二、面向数据流的设计方法SD方法的基本思想是模块化,考虑如何建立结构良好的程序系统。它提出了从反映用户需求的数据流图出发逐步产生软件结构的规则。1、数据流的类型DFD的类型一般可分为变换型和事务型两类。1)变换型数据流图变换型的DFD是由输入、变换和输出组成,其基本思想是取得数据、变换数据和给出数据,是一个顺序结构。2)事务型的数据流图事务流指数据流图中的输入流被分离成许多发散的数据流,形成许多加工路径,并根据输入的值选择其中一条路径来执行。事务型DFD具有平行分别处理的特点。2、设计过程一个大型的软件系统的DFD,经常既具有变换型的特征,又具有事务型特征。面向数据流设计方法的过程如下:1、研究分析DFD,搞清数据流加工过程;2、确定DFD类型;3、分解上层模块,设计中下层模块结构;4、根据优化准则对软件结构求精;5、描述模块功能、接口及全局数据结构;6、复查,如果有错,转向(2)修改完善,否则进入详细设计。3、变换分析设计当DFD具有较明显的变换特征,可按以下步骤设计:1)确定DFD中的变换中心、逻辑输入和逻辑输出。几股数据流的汇合处往往是系统的主加工。DAf1f2BCGEf3Ff11Hf4f9逻辑输入逻辑输出变换中心2)设计软件结构的顶层和第一层——变换结构。(1)变换中心确定以后,就相当于决定了主模块的位置,这就是软件结构的顶层。(2)主模块确定后,设计软件结构的第一层。第一层一般至少有三种功能的模块:输入模块(为顶层模块提供数据)、输出模块(输出顶层模块的信息)和变换模块(将逻辑输入进行变换加工,然后逻辑输出)。主模块获得f3f3将f3变换成f7、f8f3f7f8输出f7输出f8f8f73)设计中、下层模块。对第一层的输入、输出、变换模块自顶向下逐层分解。(1)输入模块下属模块的设计输入模块的功能是向它的调用模块提供数据,所以必须有数据来源。每个输入模块可以设计成两个下属模块:一个接收,一个转换,用类似的方法一直分解下去,直到物理输入端。获得f3获得f2f2Bf2f3获得f1f1Af1f2STS(2)输出模块下属模块的设计输出模块的功能是将它的调用模块产生的数据送出。这样每个输出模块可以设计成两个下属模块:一个转换,一个发送,直到物理输出端。输出f7输出f9Ff7f9f9输出f8Gf8f10输出f10f10Hf10f11输出f11f11SST(3)变换模块下属模块的设计一般对DFD中每个基本加工建立一个功能模块。将f3变成f7、f8Cf3f4f5Df4f6f7f8Ef5f64)设计的优化。变换型举例:ABCDE1、确定DFD中的变换中心、逻辑输入和逻辑输出。2、设计上层模块。3、设计中、下层模块。4、设计的优化。举例:将下列数据流程图转换为控制结构图。1)找出中心加工,逻辑输入和逻辑输出中心加工:计算最优解逻辑输入:校验后数据逻辑输出:
本文标题:软件工程学位考复习
链接地址:https://www.777doc.com/doc-3592801 .html