2022年软件工程期末复习 .docx
《2022年软件工程期末复习 .docx》由会员分享,可在线阅读,更多相关《2022年软件工程期末复习 .docx(28页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品_精品资料_软件工程期末复习可编辑资料 - - - 欢迎下载精品_精品资料_作者:日期:2可编辑资料 - - - 欢迎下载精品_精品资料_一 基本概念1 简述 1983 年 IEEE 为软件下的定义. 5822926运算机程序、 方法、规章、相关的文档资料以及在运算机上运行程序时所必需的数据.2 简述软件危机的表现有哪些?以及解决软件危机的途径有哪些?软件危机的主要表现包括:(1) 软件开发进度难以猜测,开发成本难以掌握,导致超预算、超时.(2) 产品功能难以满意用户需求.(3) 软件产品质量无法保证.(4) 软件缺少适当的文档资料,保护困难.(5) 软件成本超过硬件成本.(6) 软件开发
2、生产率的提高速度跟不上运算机应用普及深化的趋势. 解决软件危机的途径有:1 治理措施:项目治理、配置治理、过程治理、质量掌握2 技术措施:开发过程、开发技术与方法和开发工具3 软件工程的定义1993 年 IEEE 给出的定义:软件工程是:系统的、 规范的、 可度量的途径应用于软件开发、运行和保护过程,也就是把工程应用于软件.争论中提到的途径.”软件工程是环绕软件开发的一门交叉学科:软件工程 =运算机科学 +工程学 +治理学4 软件工程的 10 个学问领域软件工程过程 Software Engineering Process软件工程工具和方法 Software Engineering Tools
3、 and Methods 软件需求 Software Requirementl软件设计 Software Design 软件构造 Software Construction软件测试 Software Testing3可编辑资料 - - - 欢迎下载精品_精品资料_软件保护 Software Maintenance软件配置治理Software Configurationmanagement软件工程治理 Software Engineering management 软件质量 SoftwareQuality5 软件工程的目标是什么,软件工程的三要素都是什么?软件工程的目标: 软件工程必需以有组织的
4、质量保证为基础,进行全面质量治理, 不断的过程改进使软件工程方法走向成熟.软件工程的三要素包括:过程、方法和工具过程为准时合理的开发出满意用户需求的运算机软件而进行一系列有组织的活动.过程定义了技术方法的接受、工程产品包括模型、文档、数据、报告、表格等的产生、里程碑的建立、质量的保证和变更的治理.方法为软件开发供应“如何做”的技术,它涵盖了项目方案、需求分析、系统设计、程序实现、 测试与保护等一系列的开发活动如何来做.开发方法经受了从面对结构、 面对对象、面对组件到面对服务的进展工程.工具为过程和方法供应自动的或半自动的支持.这些软件工具被集成起来,建立起一个支持软件开发的系统,称之为运算机帮
5、助软件工程CASE, ComputerAidedSoftware Engineering .6 软件工程的七条基本原理美国闻名的软件工程专家巴利.玻姆 Barry Boehm提出了软件工程的七条基本原理:1. 用分阶段的生命周期方案严格治理.2. 坚持进行阶段评审.3. 实行严格的产品掌握.4. 接受现代程序设计技术.5. 结果应能清晰的审查.6. 开发小组的人员应少而精.7. 承认不断改进软件工程实践的必要性.7 简述软件过程的定义,软件过程又可以分为那几个类型?软件过程 Software Procedure 是为获得软件产品,在软件工具支持下由软件工程师完成的一系列软件工程活动.软件过程可
6、概括为基本过程、支持过程和组织过程等三种类型.其中,基本过程包括:猎取过程、供应过程、开发过程、运作过程和保护过程.支持过程包括:文档编制过程、配置治理过程、质量保证过程、验证过程、确认过程、联合评审过程和问题解决过程等过程.组织过程包括:治理过程、基础设施过程、改进过程和培训过程.4可编辑资料 - - - 欢迎下载精品_精品资料_8 里程碑 Mile Stone 思想阶段工作的目标进行总结、评审、调整和部署下一个里程碑.目的: 合理安排, 细化治理“粒度”,降低项目风险.9 基线思想基线是指一个 或一组 配置项在项目生命周期的不同时间点的一种状态,各阶段有各阶段的基线:需求基线、设计基线、测
7、试基线等.基线一旦建立后变化需要受掌握.10 简述软件生存周期的概念, 说明软件生存周期划分为那几个主要时期?每个时期有包括哪些主要阶段?软件生存周期是指软件产品从定义到开发、使用和保护, 直到最终被弃用的时期, 称为生存周期.生存周期的可划分为方案时期、开发时期和运行时期等三个主要时期.其中方案时期包括问题定义和可行性争论两个阶段.开发时期包括需求分析、 总体设计、 具体设计和实现等四个阶段.运行时期的又称为运行和保护阶段.11 简述教材中介绍了那些软件开发模型?这些模型各有什么特点?教材中重点介绍了瀑布、原型、增量、螺旋四个传统模型和RUP 、XP 两个现代模型.其中, 瀑布模型严格依据生
8、存周期开发软件,每个阶段必需完成规定的、完整、精确的合格文档,前一阶段的输出文档就是后一阶段的输入文档.其主要特点包括: 活动间具有次序性和依靠性.推迟实现的观点. 质量保证的观点.快速原型模型法是开发人员在一个基本的需求的基础上快速开发出一个软件原型,然后由用户使用和评判原型、开发人员依据用户看法再修改原型,然后再使用评判再修改、 直至将原型进化为最终产品.快速原型模型的特点包括:做出系统原型,及早向用户展现系统要实现的界面及功能,增强用户的合作信心. 直观化的表达,简洁沟通,排除懂得上的歧义.修改集中在前期的原型确认上,较大程度削减后期实施中的返工.入手快,加快开发进度.增量模型是一种演化
9、模型, 先完成一个系统子集的开发, 再按同样的开发步骤增加子集,如此递增下去直至满意全部系统需求.每个增量可按快速原型法进行.增量模型的特点包括:无须等待猎取完整需求就可入手,尽快见到成果,增强双方信心. 分步开发, 降低复杂性和难度, 削减技术风险, 并可并行开发. 边开发边投入, 可及早发觉问题,削减投资风险.各个子集是逐步并入已有的系统中,加入子集不能破坏已构造好的部分, 这需要软件具备开放式的体系结构. 适用于需求不完整的软件开发, 指的是需求逐步摸清、逐步完善,并非随便转变,需求转变过大会导致整体性失控.后面要5可编辑资料 - - - 欢迎下载精品_精品资料_介绍的 XP(极限编程)
10、属于该模型.螺旋模型 Spiral model 是一种融合了瀑布模型、快速原型模型和增量模型的演进模型, 并引入风险分析机制.适合大型复杂的系统开发.螺旋模型特点包括:多种模型结合的一种演进模型,融合了瀑布模型、快速原型和增量模型的全部特点,融进了循环往复、迭代演进的思想. 增加风险分析,一旦风险成立,原方案应终止、修订,力求风险可控 客户始终参加每个阶段的开发,每个阶段的成果需客户确认,防止错误的积存.统一过程 RUP RationalUnifiedProcess是由 Rational 公司在推出统一建模语言UML后,推出的一个软件开发框架RUP ,称为软件统一开发过程.12 统一过程 RU
11、P 定义了那几个主要阶段?初始阶段 Inception: 主要完成商业需求, 确定项目边界. 里程碑是生命周期目标Lifecycle Objective ,评判项目基本的生存才能.细化阶段 Elaboration: 主要完成领域问题分析和软件设计.猎取用户需求(功能和非功能需求),建立需求模型.进一步确立体系结构和设计软件结构等工作.里程碑是生命周期结构 Lifecycle Architecture .构造阶段 Construction: 主要完成系统实现、 测试,里程碑是初始功能Initial Operational , 产品版本常被称为“ beta ”版.交付阶段 Transition:
12、重点是确保软件对最终用户是可用的.里程碑:产品发布Product Release13 统一过程 RUP 工作流16 个核心过程工作流Core Process Workflows商业建模 Business Modeling :弄清项目边界和约束,做出方案.需求 Requirements :描述系统应做什么,开发人员和用户达成需求基线.分析和设计 Analysis & Design :将需求转化成运算机可以实现的模型.实现 Implementation :用程序设计语言将设计模型组织成可执行的文件、数据.测试 Test:是发觉软件中的错误,在试验环境下验证全部的需求是否被正确的实现.部署 Depl
13、oyment :将软件分发给最终用户,安装在真实的环境下,由用户操作运行.2 3 个核心支持工作流 Core SupportingWorkflows 是对核心过程工作流的配套支持和治理,保证核心过程工作流顺畅、高效运行.配置和变更治理:工作文档的治理,在版本更新、需求变更中做到各类文档准时、同步跟踪,保证各文档内容完整、一样.项目治理 Project Management :资源配置、评估监控、风险掌握、方案调整等治理工作,目的效益最大化.环境 Environment :软件开发环境,包括人员、设备、过程和工具,以及各种规范、指导手册和保证措施.6可编辑资料 - - - 欢迎下载精品_精品资料
14、_14 简述 rup 模型中基线与里程碑的概念,二者之间的关系.基线, 是软件文档或源码 或其它产出物 的一个稳固版本 ,它是进一步开发的基础, 也可以懂得成为一个阶段的起点并已经制定了相应的工作标准,并且只有经过授权后才能变更这 个标准.里程碑, 是方案中确定的阶段性工作完成目标,要求提交阶段交付物, 作为阶段评估的标准.基线和里程牌的关系: 基线是为了建立参照点, 是阶段的起点. 里程牌是建立阶段性目标,是阶段终点,最终的里程牌可能是一次迭代的终结.15 简述软件方案的目标和主要工作 .软件方案的目标:争论项目的可行性,争论合理的运用软件项目开发所需的资源、经费,把握开发进度,掌握项目开发
15、过程按此方案进行.主要工作包括 :确定项目实施范畴、定义递交的工作成果、评估实施过程中主要的风险、制定项目实施的时间方案、成本和预算方案、人力资源方案等.16 软件方案的活动有哪些?这些活动的内容是什么?软件方案主要活动包括:问题定义,可行性争论,项目方案.这些活动的内容是:问题定义:确定项目实施范畴,回答项目“做什么?”的问题.可行性争论:项目的必要性和可能性.制定项目方案:编制项目开发方案.17 简述问题定义的目的和主要任务.问题定义的目的:弄清要运算机解决的根本问题所在要解决的问题是什么?,确定新系统的作用域,以及项目所需的资源、工期和经费.问题定义的主要任务:编写项目报告提交审查,作为
16、可行性分析的依据.18 简述可行性分析的目的、任务和内容.可行性分析的目的:确定项目的必要性和可能性.可行性分析的任务包括:可行性分析.写可行性争论报告.编制开发方案.可行性分析的内容包括:技术、经济和社会三个方面的可行性:7可编辑资料 - - - 欢迎下载精品_精品资料_19 简述需求分析的目的、必要性和参加角色需求分析的目的是:弄清用户对系统的细节要求,完整、精确、清晰、具体的回答目标系统“做什么”.精确的懂得用户提出的软件功能、性能及其环境的要求.需求分析的必要性:用户与开发者的学问领域不同,产生歧义.软件开发失败50%是需求不合理,早期错误易放大.参加角色: 开发方包括分析师、 设计师
17、和架构师. 用户方包括领域专家、用户和部门负责人.20 需求开发的任务有哪些?需求开发的任务包括需求猎取:收集用户对目标软件系统在功能、性能、行为、设计约束等方面的期望.需求分析: 通过符号和文字说明描述系统模型,使用户和开发者间建立共同语言基础,排除懂得上的歧义的过程.需求说明: 既编写需求文档, 也称编写需求规格说明书.需求说明书是需求分析阶段的最终成果, 也是需求分析阶段复审的依据.是用户领域专家、软件分析师、 软件设计师共同沟通的途径和媒介.是交付给用户文档的一部份.需求验证 :即需求评审.依据需求说明书,分析师、设计师、客户会审文档,对需求的正确性、一样性、完整性、无二义行进行评审、
18、确认.21 需求的层次软件需求包括三个不同的层次:业务需求、用户需求、功能需求,也包括非功能需求.1. 业务需求 business requirement业务需求是反映企业 /组织对软件系统的高层次目标要求,即软件系统的建设目标. 业务需求通常是“问题定义”或“可行性争论”阶段猎取的内容.在需求规格说明书中反映在项目背景、系统目标或任务概述的描述中.猎取的主要对象是客户方的高管、专家、部门负责人.2. 用户需求 user requirement用户需求:用来描述用户使用产品必需要完成的任务.使用业务领域的术语描述,接受开发者与用户都能懂得的语言和图形表达.用户需求是经过调查、归纳后双方认同的结
19、果.猎取的主要对象是部门负责人、软件的操作者或称终端用户.3. 功能需求 functional requirement功能需求定义了开发人员必需实现的软件功能,结果在需求规格说明书中; 功能需求用软件行业术语表达: 通常是需求建模的结果即目标系统的规律模型,如结构化的功能模型、 数据模型、行为模型,面对对象的类模型等.4. 非功能需求特性是指一些非功能需求,是满意业务需求的性能要求.如界面的交互性、数据的安全性、数据的事务性、用户的并发性、响应的快速性、操作的实时性、错误与反常的复原性、软件的容错性等等. 项目的失败或拖延一般不是在功能上,而恰恰倒是在性能要求上,由于这些性能与软件的体系结构有
20、关, 与构成系统的网路与硬件环境等底层技术有关, 往往超越一8可编辑资料 - - - 欢迎下载精品_精品资料_般开发人员的技术才能.22 需求猎取的一般方法需求猎取方法以采访、观看、座谈、对从前的系统版本的测试等.必要时接受快速原型法.先集中在使用者对系统的观点上,以收集用户原始资料,数据、工作方式、工作流程、使用要求等为工作起点,深化到部门、车间、班组,做好原始纪录.然后依据对问题及环境的懂得与开发体会,改正用户需求的模糊、 歧义和不一样性要求,排除用户的不合理要求, 挖掘用户尚未提出但具有价值的潜在需求,使用户需求逐步精确化、一样化和完全化.需求猎取非一次完成:需要往复进行、逐步深化.需求
21、猎取的内容:写进“需求规格说明书”,确认.23 需求猎取的策略 循序渐进的策略. 确定优先级:先进行重点的需求调研,有助于识别出重大的风险,并为制定迭代方案供应指导. 不要陷入技术:需求未明确,应回避对技术问题争论. 挖掘用户需求 :“诱导式” 就是挖掘用户需求. 客户并非 IT 专业人士, 需求的概念是模糊的、笼统的,而且尺度难以把握,猜测潜在需求. 区分不必要的需求:客户对有些需求提不出来,自然也会提出一些不必要的需求.24 简述概要设计和具体设计的内容.软件设计包括概要设计和具体设计.概要设计又分为体系结构设计和领域问题结构设计.体系结构设计: 是支撑和治理软件运行的环境设计.由于现代的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年软件工程期末复习 2022 软件工程 期末 复习
限制150内