软件工程考研复试基本概念

软件工程面试基本概念

1.软件危机
软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。

2.软件生命周期
软件生命周期是指软件从开始研制到最终被废弃所经历的各个阶段。在不同的阶段里,由不同的组织和人员执行不同的任务,需要消耗不同的资源。
生命周期常见的有:瀑布模型、V模型、敏捷开发模型。
阶段:需求分析->软件设计->程序编码->软件测试->运行维护

3.软件过程模型
所谓软件过程模型就是一种开发策略,这种策略针对软件工程的各个阶段提供了一套范形,使工程的进展达到预期的目的。对一个软件的开发无论其大小,我们都需要选择一个合适的软件过程模型,这种选择基于项目和应用的性质、采用的方法、需要的控制,以及要交付的产品的特点。一个错误模型的选择,将迷失我们的开发方向。
常见过程模型有: 瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型、Rational统一模型。

4.结构化程序设计
结构化程序设计(structured programming)是进行以模块功能和处理过程设计为主的详细设计的基本原则。结构化程序设计是过程式程序设计的一个子集,它对写入的程序使用逻辑结构,使得理解和修改更有效更容易。

5.黑盒测试
黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。

6.白盒测试
白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,即清楚盒子内部的东西以及里面是如何运作的。"白盒"法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。"白盒"法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。

7.模块独立性
模块独立性是指模块内部各部分及模块间的关系的一种衡量标准,由内聚和耦合来度量。

8.软件工程
软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。

9.软件质量

  1. 概括地说,软件质量就是“软件与明确的和隐含的定义的需求度相一致的程度”。
  2. 具体地说,软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的软件都应具有的隐含知特征的程度。

10.集成测试
集成测试,也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求(如根据结构图)组装成为子系统或系统,进行集成测试。

11.软件维护
软件维护(Software maintenance)是一个软件工程名词,是指在软件产品发布后,因修正错误、提升性能或其他属性而进行的软件修改。

12.回归测试
回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。自动回归测试将大幅降低系统测试、维护升级等阶段的成本。

13.用例
用例(英语:use case),或译使用案例、用况,是软件工程中对系统如何反应外界请求的描述,是一种通过用户的使用场景来获取需求的技术。每个用例提供了一个或多个场景,该场景说明了系统是如何和最终用户或其它系统互动,也就是谁可以用系统做什么,从而获得一个明确的业务目标。

14.参与者
所有参与到软件项目中的人员称为参与者。把项目或系统的一组职责称为角色。一个角色与一组任务联系在一起,且被派给一个参与者。一个参与者能充当多个角色。

15.给出模块内聚的定义,并举例说明3 种模块内聚类型。
模块内聚是模块内各处理成分之间的相互关联。作为模块化度量指标之一,它是指导人们进行模块结构设计的重要概念。模块内聚可分为:

  1. 偶然内聚:即一个模块内各成分之间毫无关系,则称为偶然内聚。
  2. 逻辑内聚:即把几个逻辑上相关的功能放在一个模块中,则称为逻辑内聚。
  3. 时间内聚:即如果一个模块完成的功能必须在同一时间内执行,则称为时间内聚。
  4. 过程内聚:即如果一个模块内部的处理成分相关,且这些处理成分必须以特定的次序执行,则称为过程内聚。
  5. 通信内聚:即如果一个模块的所有成分都操作同一数据集或生成同一数据集,则称为通信内聚。
  6. 顺序内聚:即如果一个模块的各个处理成分和同一功能相关,且一个成分的输出作为另一成分的输入,则称为顺序内聚。
  7. 功能内聚:即模块的所有成分对于完成单一功能都是基本的,则称为功能内聚。

16.状态图
状态图(Statechart Diagram)是描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的事件做出反应。通常我们创建一个UML状态图是为了以下的研究目的:研究类、角色、子系统、或组件的复杂行为。

17.软件配置管理
软件配置管理(Software Configuration Management,SCM)是一种标识、组织和控制修改的技术。软件配置管理应用于整个软件工程过程。在软件建立时变更是不可避免的,而变更加剧了项目中软件开发者之间的混乱。SCM活动的目标就是为了标识变更、控制变更、确保变更正确实现并向其他有关人员报告变更。从某种角度讲,SCM是一种标识、组织和控制修改的技术,目的是使错误降为最小并最有效地提高生产效率。

18.软件的可靠性
软件可靠性 (software reliability )是软件产品在规定的条件下和规定的时间区间完成规定功能的能力。规定的条件是指直接与软件运行相关的使用该软件的计算机系统的状态和软件的输入条件,或统称为软件运行时的外部输入条件;规定的时间区间是指软件的实际运行时间区间;规定功能是指为提供给定的服务,软件产品所必须具备的功能。软件可靠性不但与软件存在的缺陷和(或)差错有关,而且与系统输入和系统使用有关。软件可靠性的概率度量称软件可靠度。

19.总体设计
系统总体结构设计是要根据系统分析的要求和实际情况来对新系统的总体结构形版式和可利用的组件进行大致的设计,是宏观上的规划。在总体设计阶段应该将系统的物理元素划分出来——权程序、文件、数据库、人工过程和文档

20.软件测试和调试的区别
软件测试是软件测试人员和程序员都参与的一项工作,是贯穿整个生命周期的, 只需要发现软件的错误,而软件调试主要是程序员自己参与,对程序(设计、编 码)进行修改、排除错误,主要是在开发阶段。

21.可行性研究的目的
可行性研究的基本任务,是对新建或改建项目的主要问题,从技术经济角度进行全面的分析研究,并对其投产后的经济效果进行预测,在既定的范围内进行方案论证的选择,以便最合理地利用资源,达到预定的社会效益和经济效益。

22.简述三种面向对象模型的作用
对象模型:表示了静态的结构化的系统数据性质,描绘了系统的静态结构,抄从客观世界实体的对象关系角度来描对象 .
动态模型:该模型描述了系统百的控制结构,它表示了瞬间的,行为化的系统的系统控制性质,它关心的是系统的挖掘度及操作的执行顺序,序幕宏观世界从对象的事件和状态的角度出发,表现知了对象的相互行为.
功能模型:描述了系统的所有计算,指出发生的时间,事件和道客观.

23.数据字典
数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明,使用数据字典为简单的建模项目。简而言之,数据字典是描述数据的信息集合,是对系统中使用的所有数据元素的定义的集合。

24.详细设计
详细设计包括业务对象设计、功能逻辑设计、数据库设计和界面设计等工作。详细设计是系统实现的依据,需要考虑所有的设计细节。

25.什么是需求分析,需求分析的主要作用是什么
需求分析:开发来人员准确地理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,源再由需求定义转换到相应的需求规格说明的过程。
基本任务:

  1. 问题识别:双方确定对问题的综合度需求,这些需求包括功能需求,性能需求,环境需求,用户界面需求。
  2. 分析与综合,导出软件的逻辑模型
  3. 编写知文档:包括编写"需求规格说明书",“初步用户使用手册”,“确认测试计划”,"修改完善软件开发计划。

26.就程序设计语言的工程特性而言,对程序编码有哪些要求?

  1. 可移植性
  2. 开发工具的可利用性
  3. 软件的可重用性
  4. 可维护性

27.用例和场景之间的关系
用例与场景的关系)就像类与实例的关系,即用例是场景的抽象,场景是用例的具象化实现

28.顺序图和协作图的区别
顺序图与协作图都表示对象之间的交互作用,只是它们的侧重点有所不同:

  1. 顺序图描述了交互过程中的时间顺序,但没有明确地表达对象之间的关系;协作图描述了对象之间的关系,但时间顺序必须度从顺序号获得
  2. 两个图中所使用的建模元素,也各有特点。顺序图中有生命周期线和控制焦点,协作图中没有;协作图中有路径,协作图中的消息必须要有消息顺序号,顺序图中没有路径,也可内以没有消息顺序号
  3. 和协作图相比,顺序图在表示算法,生命周期,具有多线程特征的对象等方面相对来说更容易一些,但在表示并发控制流方面困难一些。
  4. 两种图的语义是等价的,可以从一种形式的图转换成另一种形式的图,而不丢失任何信息。但两者不能完全代替。顺序图能表示协作图不能表示的信息,协作图也同理。
  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小七月 搬砖记

你的认可是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值