收藏 分享(赏)

软件工程考核知识点-第1章-绪论.doc

上传人:精品资料 文档编号:10852642 上传时间:2020-01-14 格式:DOC 页数:9 大小:44KB
下载 相关 举报
软件工程考核知识点-第1章-绪论.doc_第1页
第1页 / 共9页
软件工程考核知识点-第1章-绪论.doc_第2页
第2页 / 共9页
软件工程考核知识点-第1章-绪论.doc_第3页
第3页 / 共9页
软件工程考核知识点-第1章-绪论.doc_第4页
第4页 / 共9页
软件工程考核知识点-第1章-绪论.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

1、软件工程考核知识点 -第 1 章-绪论1.1 软件工程的产生1.1.1 软件的特点“软件”一词是 20 世纪 60 年代才出现的,它是指:计算机程序及其说明程序的各种文档。软件与硬件一起构成完整的计算机系统,它们是相互依存,缺一不可的。软件是一种特殊的产品,它具有以下独特的特性。(1)软件是一种逻辑产品,它与物质产品有很大的区别。软件产品是看不见摸不着的,因而具有无形性,它是脑力劳动的结晶,它以程序和文档的形式出现,保存在计算机存储器和光盘介质上,通过计算机的执行才能体现它的功能和作用。(2)软件产品的生产主要是研制,软件产品的成本主要体现在软件的开发和研制上,软件开发研制完成后,通过复制就产

2、生了大量软件产品。(3)软件产品不存在磨损、消耗问题。(4)软件产品生产的成本主要是脑力劳动,还未完全摆脱手工开发方式,大部分产品是“定做”的。(5)软件费用不断增加,软件成本相当昂贵。软件的研制工作需要投入大量的、复杂的、高强度的脑力劳动,它的成本非常高。1.1.2 软件生产的发展自从第一台计算机诞生以后,就开始了软件的生产,到现在为止,经过了三个阶段。即程序设计时代(个体手工劳动 ),程序系统时代(作坊的小集团合作生产),软件工程时代。1.1.3 软件危机软件危机产生的原因:(1)软件的规模越来越大,结构越来越复杂。(2)软件开发管理困难而复杂。(3)软件开发费用不断增加。(4)软件开发技

3、术落后。(5)生产方式落后。(6)开发工具落后,生产提高缓慢。1.1.4 软件工程1.软件工程定义软件工程有多种定义,其中一种是:用科学知识和技术原理来定义、开发、维护软件的一门学科。2.软件工程性质软件工程是一门综合性的交叉学科,它涉及计算机科学、工程科学、管理科学、数学等领域。3.软件工程目标(1)付出较低的开发成本;(2)达到要求的软件功能;(3)取得较好的软件性能;(4) 开发的软件易于移植;(5)需要较低的维护费用;(6)能按时完成开发任务,及时交付使用;(7)开发的软件可靠性高。4.软件工程内容软件工程研究的主要内容是软件开发技术和软件管理两方面。1.2.1 软件工程过程软件工程过

4、程包含如下七个过程(1)获取过程。(2)供应过程。(3)开发过程。(4)操作过程。(5)维护过程。(6)管理过程。(7)支持过程。1.2.2 软件生存周期 软件生存周期是指一个软件从提出开发要求开始直到该软件报废为止的整个时期。1.可行性分析和项目开发计划能否做 值不值得做2.需求分析需求分析阶段的任务是准确地确定软件系统必须做什么,确定软件系统具备哪些功能。写出软件需求规格说明书。3.概要设计概要设计的任务是把软件需求规格说明书中确定的各项功能转换成需要的体系结构。4.详细设计详细设计阶段就是为每个模块完成的功能进行具体描述,要把功能描述转变为精确的、结构化的过程描述。5.编码编码阶段就是把

5、每个模块的控制结构转换成计算机可接受的程序代码。6.测试测试是保证软件质量的重要手段,其主要方式是在设计测试用例的基础上检验软件的各个组成部分。测试分为单元测试、集成测试、确认测试。7.维护软件维护是软件生存周期中时间最长的阶段。已交付的软件投入正式使用后,便进入软件维护阶段,它可以持续几年甚至几十年。1.3 软件生存周期模型,方法和工具1.3.1 软件生存周期模型 软件生存周期模型是描述软件开发过程中各种活动如何执行的模型。1.瀑布模型瀑布模型是将软件生存周期各个活动规定为自上向下,按照线性顺序连接的若干阶段的模型。该模型支持结构化的设计方法,但它是一种理想的线性开发模式,缺乏灵活性,无法解

6、决软件需求不明确或不准确的问题。2.增量模型增量模型是一种非整体开发的模型。软件在该模型中是“逐渐”开发出来的。该模型有较大的灵活性,适合于软件需求不明确、设计方案有一定风险的软件项目。3.螺旋模型螺旋模型是一种风险驱动的模型。螺旋模型适合于大型软件的开发,它吸收了软件工程“演化”的概念,包括需求定义、风险分析、工程实现及用户评估四个阶段,螺旋模型由上述四个阶段组成的迭代模型,迭代的结果必须尽快收敛到客户允许的或可接受的目标范围内。4.喷泉模型喷泉模型是一种以用户需求为动力,以对象作为驱动的模型,适合于面向对象的开发方法。1.3.2 软件开发方法软件开发方法是一种使用早已定义好的技术集及符号表

7、示习惯来组织软件生产的过程。软件开发的目标是在规定的投资和时间内,开发出符合用户需求的高质量的软件。为了达到此目的,需要成功的开发方法。下面介绍几种常用的软件开发方法。1.结构化方法结构化方法由结构化分析、结构化设计、结构化程序设计构成。它是一种面向数据流的开发方法。该方法采用自顶向下、逐步求精的指导思想,应用较广,技术成熟。结构化分析是根据分解与抽象的原则,按照系统中数据处理的流程,用数据流图来建立系统的功能模型,从而完成需求分析工作。结构化设计是根据模块独立性准则、软件结构准则将数据流图转换为软件的体系结构,用软件结构图来建立系统的物理模型,实现系统的概要设计。结构程序设计是根据结构程序设

8、计原理,将每个模块的功能用相应的标准控制结构表示出来,从面实现详细设计。2.Jackson 方法这是一种面向数据结构的开发方法。JSP 方法是以数据结构为驱动的,适合于小规模的项目。4.面向对象的开发方法面向对象开发方法包括面向对象分析、面向对象设计、面向对象实现。面向对象开发方法有 Booch 方法、Coad 方法和 OMT 方法等。为了统一各种面向对象方法的术语、概念和模型,1997 年推出了统一建模语言,即 UML(Unified Modeling Language)语言。它是面向对象的标准建模语言,通过统一的语义和符号表示,使各种方法的建模过程和表示统一起来,将成为面向对象建模的工业标

9、准。1.3.3 软件开发工具1. 软件工具的重要性软件工具一般使指为了支持软件人员开发和维护活动而使用的软件。3.软件开发环境由于工具箱存在的问题,人们在工具系统的整体化及集成化方面开展一系列研究工作,使之形成完整的软件环境。4.计算机辅助软件工程计算机辅助软件工程可以简单地定义为软件开发地自动化,通常简称为CASE( Computer Aided Software Engineering)。一、填空题1.软件与物质产品有很大的区别,软件是一种_产品。2.软件工程是一门综合性交叉学科,计算机科学着重于理论和原理,软件工程着重于_。3.概要设计主要是把各项功能需求转换成系统的_。4.最基本、应用

10、广泛、以文档为驱动、适用于开发功能明确的软件项目生存期模型是_。5.简单实用、应用广泛、技术成熟的开发方法是_。二、选择题1.同一软件的大量软件产品的生产主要是通过( ) 而得到。A.研究 B.复制 C.开发 D. 研制2.作坊式小团体合作生产方式的时代是( ) 时代。A.程序设计 B.软件生产自动化 C.程序系统 D. 软件工程3.软件工程与计算机科学性质不同,软件工程着重于( ) 。A.理论研究 B.原理探讨 C.建造软件系统 D.原理的理论4.将每个模块的控制结构转换成计算机可接受的程序代码是( ) 阶段的任务。A.编码 B.需求分析 C.详细设计 D. 测试5.软件生存周期中时间最长的

11、是( ) 阶段。A.需求分析 B.概要设计 C.测试 D. 维护一、填空题答案1.逻辑2.建造一个软件系统3.体系结构4.瀑布模型5.结构化方法二、选择题答案1.B2.C3.C4.A5.D一、名称解释1.软件 2.文档 3.软件工程4.软件生存周期 5.软件工程过程 6.软件生存周期模型7.软件开发方法 8.软件工具二、填空题1.构成一个完整计算机系统的两部分是硬件与_。2.程序设计时代的生产方式是_。3.软件工程涉及到几个学科,它是一门_学科。4.软件开发划分的各阶段任务尽可能独立,同一阶段任务性质尽可能_。5.将软件生存周期各个活动规定为依线性顺序联接的若干阶段的模型是_模型。6.喷泉模型

12、是一种以用户需求为动力,以_为驱动的模型。7.结构化方法是一种面向数据流的开发方法。由结构化分析、_、结构化程序设计构成。8.软件工程研究的主要内容是软件开发管理和_两个方面。9.软件工具是支持软件开发人员的开发和维护活动而使用的_。10.一个软件项目的开发中,要采用一种生存周期模型,要按照某种_,使用相应的工具来进行。三、选择题1.软件是一种( )产品。A.物质 B.逻辑 C.有形 D. 消耗2.软件产品的开发主要是( )。A.复制 B.再生产 C.拷贝 D. 研制3.个体手工劳动生产方式的时代是( ) 。A.程序设计 B.软件生产自动化 C.程序系统 D.软件工程4.与计算机科学的理论研究

13、不同,软件工程是一门( ) 学科。A.理论性 B.原理性 C.工程性 D. 心理性5.软件重用的单位是( )。A.软件模块 B.性能 C.系统 D. 功能6.软件开发费用只占整个软件系统费用的( ) 。A.1/2 B.1/3 C.1/4 D.2/37.软件开发中大约要付出( )的工作量进行测试和排错。A.20 B.30 C.40 D.508.准确地解决“软件系统必须做什么”是( ) 阶段的任务。A.可行性研究 B.需求分析 C.详细设计 D. 编码9.软件生存周期中最长的是( )阶段。A.需求分析 B.概要设计 C.测试 D. 维护 四、简答题1.软件产品的特性是什么?2.软件生产有几个阶段?各有何特征?3.什么是软件危机?产生的原因是什么?4.软件工程的性质、目标和内容是什么?5.软件工程面临的问题是什么?6.软件工程过程有哪些过程?7.软件生存周期有哪几个阶段?8.软件生存周期模型有哪些主要模型?9.有哪些主要软件开发方法?参考答案二填空题1.软件 2.个体手工劳动3.综合性交叉 4.相同5.瀑布 6.对象7.结构化设计 8.软件开发技术9.软件 10.开发方法三、选择题1.B 2.D 3.A 4.C5.A 6.B 7.C 8.B 9.D

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报