下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章软件与软件工程的概念软件是计算机系统中与硬件相互依存的另一部分,软件包括程序,数据,及其相关文档的完整集合.软件的特性包括:形态特性,智能特性,开发特性,质量特性,生产特性,管理特性,环境特性,维护特性,废弃特性,应用特性.软件分类:系统软件,应用软件,支撑软件,可复用软件软件工程:软件工程是开发,运行,维护和修复软件的系统方法.典型的软件生存期模型:瀑布模型,原型模型,增量模型,螺旋模型,喷泉模型等瀑布模型:特点1,阶段间具有顺序性和依赖性。2,推迟实现的观点。3,质量保证的观点。优点1可强迫开发人员采用规范化的方法。2,严格地规定了每个阶段必须提交的文档3要求每个阶段交出的所有产品都必须是经过验证的。缺点1瀑布模型几乎完全依赖于书面的规格说明,很可能最终开发的软件不能真正满足用户的需要。2,瀑布模型只适用于项目开始时需求已确定的情况。快速原型模型:优点1,有助于满足用户的真实需求。2,原型用户已经通过与用户的交互而得到验证,据此产生的规格说明文档能够正确地描述用户需求。3,软件产品的开发基本上是按线性顺序进行。4开发过程的后续阶段不会因为发现规格说明文档的错误而进行较大的返工。5,开发人员在设计和编码阶段发生错误的可能性小。增量模型:1能够在较短的时间内向用户提交一些有用的工作产品。2逐步增加产品的功能可以使用户有较充裕的时间适应新产品,减少全新产品带来的冲击。3项目失败的风险较低。优先级最高的首先交付,然后其他增量主次集成进来。螺旋模型:螺旋模型每个循环可划分为四个象限:1,目标设定。2风险估计与弱化。3开发与验证。4计划优点:1对可选方案和约束条件的强调有利于对已有软件的重用,也有助于把软件质量作为软件开发的目标。2减少了过多的测试或测试不足带来的风险。3,维护和开发没有本质的区别。缺点:螺旋模型是风险驱动的,因此要求软件开发人员具有丰富的风险评估经验和这方面的专门知识,否则将出现真正的风险;第二章软件工程方法与工具软件工程方法学的三个要素:方法,工具和过程。方法覆盖面很广,包括沟通,需求分析,设计建模,编程,测试和支持。目前最广泛使用的方法是传统方法和面向对象方法,另外还包括形式化方法。工具是为方法的运行提供自动的或半自动的软件支撑环境。过程是为了获得高质量的软件所需要的一系列任务的框架,它规定了完成各项任务的工作步骤。第三章软件需求获取与结构化分析方法软件需求分析阶段的主要工作产品有“软件需求规格说明书“和“初步的用户手册“软件需求分析阶段的任务:1需求获取,2需求分析(包括完整性,正确性,合理性,可行性,充分性)3需求定义,4需求验证结构化分析方法是一种建模技术,它建立的分析模型的核心是数据字典,围绕这个核心有3种图,数据流图(DFD)。实体-关系图(ER图),状态-迁移图(STD)第三章结构化设计方法软件设计的原则1,分而治之2,模块独立性(高度内聚,松散耦合)3,提高抽象层次4,复用性设计5,灵活性设计结构化设计方法的实施要点是:1,首先研究,分析和审查数据流图。2,然后根据数据流图决定问题的类型。3,由数据流图推导出系统的初始结构图。4利用一些启发式原则来改进系统的初始化结构图,直到得到符合要求的结构图为止5根据分析模型中的实体-关系图和数据字典进行数据设计,包括数据库设计和数据文件的设计6在上面设计的基础上,并依据分析模型中的加工规格说明,状态转换图及控制规格说明进行过程设计7指定测试计划软件的结构包括两部分,一部分是软件的模块结构(分为传入模块,传出模块,变换模块,协调模块),另一部分是软件的数据结构。接口设计主要包括3个方面:模块或软件间接口设计;软件与其他软硬件系统之间的接口设计,软件与人(用户)之间的交互设计。程序流程图(五种基本的控制结构是:1,顺序型,选择型,先判定型循环,后判定型循环,多情况型选择)第五章编码从软件工程的观点,对编码有一些工程上的性能要求:1详细设计应能直接容易地翻译成代码程序。2,源程序应具有可移植性。3,编译程序应具有较高的效率。4尽可能应用代码生成的自动工具。5,可维护性。程序设计语言的分类:1从属于机器的语言一一第一代语言。2汇编语言一一第二代语言。3高级程序设计语言第三代语言。4第四代语言第六章软件测试方法软件测试是软件投入生产性运行之前,对软件需求分析,设计规格说明和编码的最终复审,是软件质量控制的关键步骤。如果给软件测试下定义的话:软件测试是为了发现错误而执行程序的过程。所谓确认,是一系列的活动和过程,其目的是想证实在一个给定的外部环境中软件的逻辑正确性。所谓验证,则试图证明在软件生存期各个阶段以及阶段间的逻辑协调性,完备性和正确性。黑盒测试:已知产品的功能设计规格,可以通过测试证明每个实现了的功能是符合要求的。白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是符合设计规格要求,所有内部成分是否已经过检查。白盒测试的测试用例设计:1逻辑覆盖。2语句覆盖。3判定覆盖。4条件覆盖。5判定一条件覆盖。6条件组合覆盖。7路径覆盖。软件测试的策略:通常软件测试过程按4个步骤进行,即单元测试,组装测试,确认测试和系统测试。第七章统一建模语言UML概述UML由事物,关系和图组成。事物是对模型中最具代表性的抽象,在UML中,可以分为结构事物,行为事物,分组事物和注释事物4类。结构事物是UML模型的静态部分,主要用来描述概念的或物理的元素,包括类,主动类,接口,对象,用例,参与者,协作,构件和结点等。行为事物是UML模型的动态部分,包括1交互。2状态机。分组事物是UML模型的组织部分,它的作用是为了降低模型的复杂性。UML中的分组事物是包。注释事物是UML模型的解释部分。在UML中常见的关系有依赖,关联(包括普通关联和限定关联,关联类,以及聚合与复合),泛化(包括普通泛化和受限泛化),实现和实现4种,还有聚合,复合等关系。UML定义了6种类型的图:用例图,类图,交互图,状态图,活动图和实现图。第八章面向对象分析概述面向对象分析模型由三个独立的模型构成:由有力和场景表示的功能模型(用例模型);用类和对象表示的静态模型(对象模型);由状态图和顺序图表示的动态模型(交互模型)。对象模型的5个层次:主题层,类-对象层,结构层,属性层和服务层。第九章软件体系结构与设计模式UML开发过程有3个主要特征:迭代和增量,用例驱动,以体系结构为中心。体系结构模式,风格和框架的概念模式分为以下3类:体系结构模式,设计模式,惯用法。风格是带有一种倾向性的模式,同一个问题可以有不同的解决问题的方案和模式,但我们根据经验,通常会强烈倾向于采用特定的模式,这就是风格。体系结构的重要作用:1体系结构的表示有助于风险承担着进行交流。2体系结构突出了早期设计决策。3软件体系结构是可传递和可复用的模型。典型体系结构风格:数据流风格,调用-返回风格,仓库风格管道/过滤器,批处理序列都属于数据流风格。设计模式4个基本要素:模式名称,问题,解决方案,效果。常用设计模式:1抽象工厂(1目的,2思路,3结构,4参与者职责,5协作),2,单件,3外观,4适配器,5职责链,6,中介者,7观察者简答试题第一章软件与软件工程的概念什么是软件工程?答:软件工程师开发,运行,维护和修复软件的系统方法。其中“软件”的定义为:计算机程序,方法,规则,相关的文档资料以及在计算机上运行时所必须的数据。简述软件软件生存期有哪些主要阶段组成?每一阶段的主要任务是什么?答:软件生存期由软件定义,软件开发和运行维护三个时期组成。定义时期的主要任务是解决“做什么”的问题,它通常被分为三个阶段:问题定义,可行性研究和需求分析。开发时期的主要任务是解决“如何做“的问题,由概要设计,详细设计,编码和测试四个阶段。维护时期的主要任务是使软件持久地满足用户的需要。第二章软件工程方法与工具软件工程的三种基本要素是什么?各自的作用是什么?答:软件工程的3个要素是:方法,工具和过程。作用:软件工程方法为建造软件提供技术上的解决方法(“如何做“)。方法覆盖面很广,包括沟通,需求分析,设计建模,编程,测试和支持。工具为方法的运行提供自动的或半自动的软件支撑环境。过程是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。简述传统方法和面向对象方法的特点(包括形式化方法)答:传统方法也称为生命周期方法或结构化范型,它采用结构化技术来完成软件开发的各项任务。面向对象方法是从面向对象的程序设计发展起来的面向对象方法开发软件的过程是多次反复迭代的演化过程。形式化方法是一种基于形式化教学变换的软件开发方法,它可将系统的规格说明转换为可执行的程序。第三章软件需求获取与结构化分析方法顶层数据流图(环境图)的作用是什么?答:环境图也称顶层数据流图,它仅包括一个数据处理过程,也就是要开发的目标系统。环境图的作用是确定系统在其环境中的位置,通过确定系统的输入和输出与外部实体的关系确定其边界。在对数据流图进行分解时需要注意哪些问题?答:在分层的数据流图中,各层数据流图之间应保持“平衡“关系。第四章结构化设计方法简述结构化程序设计方法的基本特点。(5分)答::1).是尽可能少用goto语句的程序设计方法;2).每个代码块都单入单出;3).使用控制结构:顺序、选择和循环+Do_UNTIL和Do_CASE;4).自顶向下逐步求精。衡量模块独立性的两个定性标准是什么?这两个标准的定义分别是什么?在我们的软件设计中,关于模块独立性我们追求的目标是什么答:衡量模块独立性的两个定性标准是内聚和耦合耦合是指对一个软件结构内不同模块彼此之间互相依赖(连接)的紧密程度;而内聚则标志一个模块内部各个元素彼此结合的紧密程度。在我们的软件设计中,关于模块独立性我们追求的目标是紧密内聚松散耦合第六章软件的测试方法说明验证和确认的区别答:所谓确认,是一系列的活动和过程,其目的是想证实一个给定的外部环境中软件的逻辑正确性。所谓验证,则试图证明在软件生存期各个阶段以及阶段间的逻辑协调性,完备性和正确性。简要说明白盒测试和黑盒测试的区别。如果认真做了两者之一,还需要再做另一种测试吗?答:黑盒测试:已知产品的功能设计规格,可以通过测试证明每个实现了的功能是否符合要求。白盒测试:已知产品内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否已经过检查。需要:黑盒和白盒测试为互补关系,结合起来进行测试用例的设计更为合理第七章统一建模语言UML概述简要说明UML中有哪些基本事物,一般可分为哪几种类型?答:事物是对模型中最具代表性成分的抽象,在UML中,可以分为结构事物,行为事物,分组事物和注释事物4类。结构事物是UML模型的静态部分,行为事物是UML模型的动态部分,分组事物是UML模型的组织部分,注释事物是UML模型的解释部分。UML中有哪些关系,解释类图中聚合和关联的相同点和不同点。答:在UML中常见的关系有依赖,关联,泛化和实现4种,还有聚合,复合等关系。关联是一种结构关系,它描述了两个或多个类的实例之间的连接关系。聚合也称为聚集,是一种特殊的关联。它藐视了整体和部分之间的结构关系。UML中有那几种图,每种图的作用是什么?答:UML规范定义了6种类型的图:用例图,类图,交互图,状态图,活动图和实现图。用例图的主要元素是用例和参与者,一个用例实质上是用户与计算机系统之间的一次典型的交互作用,它代表的是系统的一个完整的功能。类图显示了类(及其接口)累的内部结构以及与其它类的联系。交互图是为用例,用例组或者拒不用例开发的,在UML中有两种交互图:顺序图和协作图。状态图描述一个特定对象的所有可能的状态以及引起状态转换的事件;活动图用来捕捉用例的活动。4.讨论顺序图与协作图的关系答:虽然顺序图和协作图都描述对象间的交互关系,但他们的侧重点不同,顺序图着重表现交互的事件顺序,协作则着重表现交互对象的静态链接关系。第八章面向对象分析面向对象分析需要建立的三个模型是什么?答:面向对象分析模型有三个对立的模型构成:由用例和场景表示的功能模型(用例模型);用类和对象表示的静态模型(对象模型);由状态图和顺序图表示的动态模型(交互模型)。1.某旅馆的电话服务如下:(8分)可以拨分机号码和外线号码。分机号是从72
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 47764-2026压水堆核动力厂启动物理试验
- 市场部门市场份额增长KPI绩效考核表
- 合作伙伴信用审核确认函(4篇)范文
- 2026年联合品牌推广活动确认信函4篇
- 零售超市店长KPI考核表
- 科学探索:发现身边的神奇小学主题班会课件
- 酒店行业智能化酒店运营与管理方案
- 心理健康周:快乐情绪管理小学主题班会课件
- 农业工程中智能灌溉系统实施方案
- 公共安全事情即时处置预案
- (2026年)手术室相关法律法规解读课件
- 头疗销售实战话术
- 加油站安全隐患排查奖惩制度
- 安全风险辨识分级及管控制度
- 2025年煤质化验采制样工技能理论考试题库及答案
- 针车基础知识培训课件
- 桥梁排水系统设计与施工方案
- 八上物理必考知识38天早背晚默
- 糖厂安全知识培训课件
- 化工设备拆除施工方案范本
- 劳务班组承包管理办法
评论
0/150
提交评论