上海大学软件工程复习_计算机硬件及网络_IT计算机_专业资料—培训
- 格式:ppt
- 大小:254.00 KB
- 文档页数:46
、单项选择题(本大题共20小题,每小题 1 分,共20分)在每小题列出的备选项中只有一个是符合题目要求的,多选或未选均无分。
请将其代码填写在题后的括号内。
错选、1. 在软件生命周期的各个阶段中,工作量最大的阶段是A .需求分析B.总体设计C.综合测试 D .软件维护2. 瀑布模型的特点不包括A.前一阶段的任务没有完成,不能进入下一阶段工作B.进入某个阶段工作后,不再回复到之前的阶段工作C.只有完成并评审了规定的文档,才标志着一个阶段的工作结束D.在软件产生之前,需求无法得到充分的测试3. 螺旋模型强调的开发手段是A.分阶段开发C.风险驱动开发4. 需求分析阶段的工作不包括A.获得当前系统的物理模型C.建立目标系统的逻辑模型5. 总体设计阶段的工作不包括A.确定程序的模块组成C.确定实现各个模块功能的处理逻辑6. 描绘系统物理模型的传统工具是A .系统流程图C.实体-联系图7. 符合信息隐藏原理的是A .将信息隐藏起来不被发现C.将可能要修改的设计决策隐藏起来B.废弃式原型开发D.增量式开发B.抽象出当前系统的逻辑模型建立目标系统的物理模型D.B.确定模块间的相互关系D.制定测试计划B.数据流图D.状态转换图B.将信息隐藏起来确保安全D.将不要修改的设计决策隐藏起来8. 模块的独立性原则是指软件设计时要尽量使模块具有A .低内聚、低耦合B.低内聚、高耦合C.高内聚、低耦合D.高内聚、高耦合[ 9. 有利于提高模块独立性的做法是A.尽量使模块具有逻辑型内聚B.尽量使模块间具有内容型耦合C.使判定作用范围内的模块尽量成为该判定所在模块的直属下级模块D.尽量提高模块的扇入数和扇出数[ 10. 有关结构化设计(SD )方法的正确叙述是]A.只使用顺序、选择和循环 3 种控制结构B.由数据结构映射出软件的结构C.是一种面向对象的设计方法D.是一种面向数据流的设计方法[ 11. 有关总体设计阶段所使用的结构图的不正确叙述是]A.能够描述软件系统的模块组成B.结构图中的模块是按照自上而下、自左向右的顺序执行的C.能够描述模块间的调用关系以及模块间调用时所传递的信息D.将模块间调用时所传递的信息分成两种:数据信息和控制信息[ 12. 要求使用顺序、选择和循环控制结构的组合或嵌套来表达程序的过程设计工具是A .程序流程图B.盒图C .判定表D.PDL13.关于好的编码风格的正确叙述是A.把多个语句写在同一行以节省空间B.要求用户指定输入数据的数目C .检查输入项重要组合的合法性D.表达式中不使用多余的括号,以简化表达式14.能发现软件需求规格说明书中的错误的测试步骤是A.模块测试B.子系统测试C .系统测试D.验收测试15.自顶向下集成测试和自底向上集成测试都具有的优点是A.较早发现主要设计错误B.可采用深度优先策略和宽度优先策略C .支持故障隔离D.可复用模块得到充分测试19.不符合面向对象设计准则的是A.用对象的封装性来实现信息隐藏B.尽可能松散对象之间的交互耦合C .尽可能减小继承耦合度D.尽可能设计小而简单的类20. 上海大学校内电话号码由 5 位数字组成,但第 1 位数字只能是 5 或6。
软件工程复习资料2023软件概念:是计算机系统中的一个重要组成部分,从系统工程的角度来看,它作为系统元素,与计算机硬件、人、数据库、过程等共同构成计算机系统。
它由两部分组成,计算机程序及其相关文档。
其中,计算机程序是按事先设汁的功能和性能规定执行的指令序列,文档是与程序开发、维护和使用有关的图文资料,它又可以分为系统文档,用户文档和web 站点。
系统文档用于描述系统的结构,用户文档针对软件产品解释如何使用系统,web站点用于下载系统信息。
软件也是用户与硬件之间的接口。
软件危机:软件危机是指软件在开发和维护过程中碰到的一系统严重问题,重要包含二方面的问题,一是如何开发运用软件,二是如何维护数量不断膨胀的已有软件。
重要体现在软件开发进度无法预测,成本增长无法控制,软件可靠性没有保证,软件维护费用大幅上升,开发人员无限增多,软件产品无法满足用户的规定。
解决办法:采用先进的开发技术和方法;使用好的软件开发工具,提高软件生产率,有良好的组织,严密的管理,各类人员互相配合共同完毕任务。
总之,消除软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。
软件工程正是从管理和技术两方面研究如何更好地开发和维护计算机软件的一门新兴学科。
因素:(1)软件的规模越来越大,结构越来越复杂。
(2)软件开发管理困难而复杂。
(3)软件开发费用不断增长。
(4)软件开发技术落后。
(5)生产方式落后。
(6)开发工具落后,生产率提高缓慢。
软件的发展阶段:a.程序设计阶段(1946~1956)b.程序系统阶段(1956~1968)c.软件工程阶段(1968年以来)。
实现满足用户规定的软件产品的定义开发发布和维护的工程或进行研究的学科。
是指导软件开发和维护的工程性学科,它以计算机科学理论和其他相关学科的理论为指导,采用工程化的概念原理技术和方法进行软件的开发与维护,把通过时间考验而证明是对的的管理技术和分析,设计,实现,V&V(验证与确认),支持。
软件工程--复习资料第一章软件工程概论1.软件的特点是什么?1) 软件是逻辑实体;具有抽象性;软件的形态不可见;――必须通过观察、分析、思考、判断来了解其功能、性能和其它特性。
2) 软件是人脑思维的产物,其生产过程与硬件不同。
――开发过程的质量控制及软件产品保护问题。
3) 软件的开发和运行受计算机系统限制。
――软件移植问题。
4) 软件的开发技术落后,手工开发方式仍占统治地位。
――开发效率低。
2.2006年发布的国家分类标准是什么?独立式,组合式,集成式,嵌入式。
3.软件危机的表现有哪些?1) 对开发成本和进度的估算偏差太大2) 没有适当的文档3) 软件成本比重上升4) 质量很不可靠5) 供不应求6) 用户很不满意4.产生软件危机的原因是什么?l客观:软件本身特点1逻辑部件2规模庞大l主观:不正确的开发方法1忽视需求分析2“软件开发=程序编写”的错误观念3轻视软件维护5.什么是软件工程三要素?1.方法:为软件开发提供了“如何做”的技术。
2.工具:为软件工程方法提供了支撑环境。
3.过程:定义了方法使用的顺序、要交付的文档资料、为保证质量和适应变化所需要的管理、软件开发各个阶段完成的里程碑。
5.软件工程的基本目标是什么?1) 付出较低的开发成本2) 达到要求的软件功能3) 取得较好的软件性能4) 开发的软件易于移植5) 需要较低的维护费用6) 能按时完成开发工作,及时交付使用7.软件工程的基本原则是什么?1) 抽象2) 信息隐蔽3) 模块化4) 局部化5) 确定性6) 一致性7) 完备性8) 可验证性8.软件工程的基本原理是什么?1) 用分阶段的生命周期严格管理;2) 坚持进行阶段评审;3) 实行严格的产品控制;4) 采用现代程序设计技术;5) 结果应能清楚地审查;6) 开发小组人员应少而精;7) 承认不断改进软件工程实践的必要性。
9.瀑布模型有什么特点?1.里程碑或基线驱动,或者说文档驱动;2.过程逆转性很差,或者说不可逆转。
第1 章软件工程概述1.1 软件的概念、特点和分类1.1.1 软件的概念与特点基本概念软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。
程序是按事先设计的功能和性能要求执行的指令序列。
数据是使程序能正常操纵信息的数据结构。
文档是与程序开发,维护和使用有关的图文材料。
软件的特点软件是一种逻辑实体,它具有抽象性。
软件开发过程中没有明显的制造过程。
软件运行期间,没有硬件那样的机械磨损老化问题。
软件对计算机系统有着不同程度的依赖性。
软件的开发尚未完全摆脱手工艺的开发方式。
软件本身是复杂的:实际问题的复杂性;程序逻辑结构的复杂性。
软件技术的发展落后于复杂的软件需求。
软件成本相当昂贵。
相当多的软件工作涉及到社会因素。
1.1.2 软件的分类按软件的功能进行划分:系统软件、支撑软件、应用软件。
按软件的规模进行划分:微型、小型、中型、大型、甚大型、极大型按软件的工作方式进行划分:实时处理软件、分时软件、交互式软件、批处理软件按软件的服务对象的范围划分:项目软件、产品软件按软件的使用频度进行划分:一次使用软件、频繁使用软件按软件的失效的影响进行划分:高可靠性软件、一般可靠性软件1.2 软件的发展和软件危机1.2.1 软件的发展(三个阶段)程序设计阶段、程序系统阶段、软件工程阶段1.2.2 软件的危机1、概念:在软件发展的第二阶段,随着计算机硬件技术的进步,软件的发展一直未能满足需求。
在软件开发过程中遇到的问题找不到解决的办法,形成了日益尖锐的矛盾。
2、表现:软件开发无计划性。
软件需求不充分。
软件开发过程无规范。
软件产品无评测手段。
3、软件危机的主要特征软件开发周期大大超过规定日期。
软件系统开发成本高,周期长,质量差,满足不了市场需求。
软件质量无保证。
软件系统开发人员数量少,质量低。
软件系统维护难度大。
软件开发缺乏合适的工具和方法。
软件的版权问题得不到保证。
1.3软件工程过程和软件生存期1.3.1 软件工程过程概念: 软件工程过程是为获得软件产品,在软件工具支持下由软件工程师完成的一系列软件工程活动。
2.文档有何作用?程序代码属不属于文档?答:文档指的是在软件开发和维护过程中形成的文字记录。
从软件计划、分析、设计、实现(编码和测试)、维护等开发活动中形成的各种文件。
文档属于软件的一部分,是软件维护和升级的重要依据,并且文档内容要与代码同步更新。
没有文档的软件维护不但不能延长反而会缩短软件寿命。
文档包括需求规格说明书、设计说明书、用户使用说明书、在线帮助等,当然程序代码是必不可少的一种软件文档。
3.什么是软件危机?什么原因产生了软件危机?答:软件危机指的是在计算机软件的开发和维护过程中所遇到的一系列严重问题。
产生的原因是主客观不相适应。
见书图1-2。
●客观上:软件规模增大、功能要求越来越复杂,需求不断变化等;●主观上:传统的个体化开发观念和方法,无开发过程指导,无开发过程管理;由于主客观矛盾,必然产生软件质量差、开发超期、超预算、维护困难等现象。
5.软件工程三要素是什么?答:软件工程三要素是从计算机科学观点看软件工程,即从软件开发的技术层面应该有过程、方法和工具。
见图1-4。
(2)“过程”是软件产品加工所经历的一系列有组织的活动,保证能够合理、高质量和及时地开发出软件。
过程定义的活动集合及其序列见第2章。
(3)“方法”为软件开发提供“如何做”的技术,它涵盖了项目计划、需求分析、系统设计、程序实现、测试与维护等一系列活动的做法。
如经常说的面向结构、面向对象、面向组件等开发方法,项目管理中估算、度量、计划等管理方法。
软件工程以介绍方法为主,本书从第3章开始逐步介绍开发过程所用到的方法。
(4)“工具”为过程和方法提供自动的或半自动的支持。
这些工具既包括软件也有硬件。
软件工具包括编程、建模、管理等开发工具。
通过网络环境把这些软件工具集成起来搭建一个支持团队开发的平台,称之为计算机辅助软件工程 (Computer Aided Software Engineering,CASE)。
CASE集成了软件、硬件和一个存放开发过程信息的软件工程数据库,形成了一个软件工程环境。
一、写出下列缩写英文的中文涵义CFD DFD OOA SA SD SP CMM CMMI UML CASE XP C/S B/SATAM PDL SQA MVC CRC MBS CBSD GUI SQL MTTR MTTFMTBF FTR PERT SCM CPM RMMP二、概念[1] 在《计算机科学技术百科全书中》,对计算机软件作出如下定义:计算机软件指计算机系统中的程序和文档,前者是计算任务的处理对象和处理规则的描述;后者是为了便于了解程序所需的阐述性资料。
[2] 软件和硬件具有完成不同的特性,软件是设计开发的,而不是传统意义上生产制造的。
[3] 软件工程是一种层次化技术,是建立在以质量焦点为基础的,分过程、方法、工具三个研究层次的综合技术。
[4] 软件工程是应用计算机科学、数学及管理学等原理,开发软件的工程,其框架可概括为:目标、过程和原则。
[5] 结构化设计方法中,要把数据流图转换成软件结构,若某个加工将它的输入流分离成许多发散的数据流,形成许多加工路径,并根据输入的值选择其中一个路径来执行,这种特征的DFD称为事务型的数据流图。
[6] 数据流图仅反映系统必须完成的逻辑功能,所以它是一种功能模型。
[7]耦合性是定性度量模块独立性的标准之一,它根据模块的外部特征提出的,是对软件系统结构中各模块间相互联系紧密程度的一种度量,也称块间关系。
[8] 衡量软件的独立性有两个定性的度量标准,即耦合和内聚。
[9] 任何程序都可由选择结构、循环结构和顺序结构3种基本控制结构构造,其共同点是单入口、单出口。
[10] 统一过程(UP)是一种用例驱动的迭代式增量开发过程,每次迭代过程中主要的工作流包括捕获需求、分析、设计、实现和测试等,这种软件过程的用例图式通过分析得到。
[11] 软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个自底向上或相反顺序集成的过程。
[12] 软件测试的目的是尽可能多地发现软件中存在的错误,将测试结果作为纠错的依据。
一、选择题:1、用例图中,用来表示用例的符号为( B ) 。
2、协作图中包含的元素包括(A ) 。
A. 对象 B. 链 C. 激活 D. 消息3、在类图中,哪种关系表达整体与部分的关系( D ) 。
A .泛化 B. 实现 C. 依赖 D. 聚合4、下列各种图形符号中,用来表示组成关系的符号为 (B )。
A. B. C. D.5 、(A )工具在软件的详细设计中不能使用。
A . DFD B. N-S 图 C. 流程图 D. PDL6 、 “软件危机”是指 (C )。
A. 计算机病毒的出现B. 利用计算机进行经济犯罪活动C. 软件开发和维护中出现的一系列问题D. 人们过分迷恋计算机系统7 、 快速原型是利用原型辅助软件开发的一种新思想,它是在研究 (A )的方法和技术中产生 的。
A. 需求阶段B. 设计阶段C. 测试阶段D. 软件开发的各个阶段8、从严格意义上讲,下列 4 个选项中属于顺序图的元素是(ABCD ) 。
A.对象B. 参与者C. 消息D. 激活9、下列 UML 图形中, (ABCD )属于 UML 的动态视图。
A. 协作图B. 状态图C. 活动图D. 顺序图10、数据字典是软件需求分析阶段的最重要的工具之一,其最基本的功能是( D ) 。
A. 数据库设计B. 数据通信C. 数据关系描述D. 数据定义11、详细设计与概要设计衔接的图形工具是 (D )。
A. DFD 图B. 程序图C. PAD 图D. SC 图12 、UML 中,大多数建模者把节点分为(AC )A . 设备 B. 构件 C. 处理器 D. 显示器13 、(C)是一种特殊形式的状态机,用于对计算流程和工作流程建模。
A .时间图 B. 流程图 C. 活动图 D. 状态图14 、(A )描述从状态到状态的控制流程,常用来对系统的动态特征进行建模。
A. 状态图B. 序列图C. 协作图D. 活动图15、下列特点属于描述用例的特点的是( D ) 。
一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的备选项屮只有一个是符合题目要求的,请将K 代码填写在题P 的括号内。
错选、 多选或未选均无分。
1. 在软件生命周期的各个阶段屮,丁.作景最人的阶段是 A. 需求分析 B.总体设计C.综合测试D.软件维护2. 瀑介模型的特点不妲括A. 前一阶段的任务没有完成,不能进入K 一阶段工作B. 进入某个阶段工作后,不再M 复到之前的阶段工作C. 只奋完成并评审了规定的文档,才标志着一个阶段的工作结束D. 在软件产生之前,需求无法得到充分的测试 3. 螺旋模型强凋的开发手段是A. 分阶段开发 C.风险驱动开发4. 需求分析阶段的工作不包括A. 获得当前系统的物理模型 C.建立目标系统的逻辑模型5. 总体设计阶段的工作不包拈 A.确定程序的模块组成C.确定实现各个模块功能的处理逻辑6. 描绘系统物理模型的传统工具是 A.系统流程图 C.实体-联系图7. 符合信息隐藏原理的是 A.将信息隐藏起来不被发现 C.将可能耍修改的没计决策隐藏起来8. 模块的独立性原则是指软件设计吋要尽鲎使模块貝-有 A.低内聚、低禍合 B.低内聚、髙概合 C.高内聚、低耦合 D.高内聚、高耦合B.废弃式原型开发 D.增景式开发B.抽象fli 当前系统的逻辑模沏 D.建立目标系统的物理模型B.确定模块叫的相互关系 D.制定测试计划B.数据流图 D.状态转换图B.将信息隐藏起來确保安全 D.将不耍修改的设计决策隐藏起来9. 行利于提高模块独立性的做法是 A. 尽M 使模块具有逻辑型内聚 B. 尽fi 使模块间具冇A 容型耦合c.使判定作用范ra 内的模块尽景成为该判定所在模块的直属下级模块 D.尽量提高模块的扇入数和扇出数 10. 冇关结构化设计(SD)方法的正确叙述是 A. 只使用顺序、选择和循环3种控制结构 B. 由数据结构映射出软件的结构 C. 是一种凼句对象的设计方法 D. 是一种向数据流的设计方法11. 有欠总体设计阶段所使用的结构阁的不•:确叙述是 A. 能够描述软件系统的模块组成B. 结构图中的模块是按照£1上而下、B 左叫右的顺序执行的C. 能够描述模块间的调用关系以及模块间调用吋所传递的倌息D. 将模块间调用时所传递的信息分成W 种:数据信息和控制信息12. 要求使用顺序、选择和循环控制结构的组合或嵌套来表达程序的过程设汁工具是 A.程序流程图 B.盒图C.判定表 D. PDL13. 关于好的编码风格的正确叙述是A.把多个语句写在同一行以节省空间B.要求川户指定输入数据的数0C.检查输入项重要组合的合法性D.表达式中不使用多余的括号,以简化表达式14. 能发现软件需求规格说明15中的错误的测试步骤是 A.模块测试 B.子系统测试 C.系统测试D.验收测试 15. 自顶14下集成测试和&底句上集成测试都具杏的优点是 A.较早发现主耍设计错误 C.支持故障隔离19. 不符合面向对象设计准则的足 A.用对象的封装性來实现信息隐藏 B.尽可能松散对象之间的交互耦合 C.尽讨能减小继承耦合度D.尽可能设计小而简单的类20. 上海人学校A 电话号码由5位数字组成,但第1位数字只能是5或6。
计算机系统结构复习题一、单项选择题1、直接执行微指令的是( C )A.汇编程序 B.编译程序C.硬件 D.微指令程序2、对系统程序员不透明的应当是( D )。
A.Cache存贮器 B.系列机各档不同的数据通路宽度C.指令缓冲寄存器 D.虚拟存贮器3、对机器语言程序员透明的是( B )。
A.中断字 B.主存地址寄存器C.通用寄存器 D.条件码4、计算机系统结构不包括( A )。
A.主存速度 B.机器工作状态C.信息保护 D.数据5、从计算机系统结构上讲,机器语言程序员所看到的机器属性是( C )。
A.计算机软件所要完成的功能 B.计算机硬件的全部组成C.编程要用到的硬件组织 D.计算机各部件的硬件实现6、计算机组成设计不考虑( B )。
A.专用部件设置 B.功能部件的集成度C.控制机构的组成 D.缓冲技术7、以下说法中,不正确的是( B )。
软硬件功能是等效的,提高硬件功能的比例会:A.提高解题速度 B.提高硬件利用率C.提高硬件成本 D.减少所需要的存贮器用量8、在系统结构设计中,提高软件功能实现的比例会( C )。
A.提高解题速度 B.减少需要的存贮容量C.提高系统的灵活性 D.提高系统的性能价格比9、下列说法中不正确的是( D )。
A.软件设计费用比软件重复生产费用高B.硬件功能只需实现一次,而软件功能可能要多次重复实现C.硬件的生产费用比软件的生产费用高D.硬件的设计费用比软件的设计费用低10、在计算机系统设计中,比较好的方法是( D )。
A.从上向下设计 B.从下向上设计C.从两头向中间设计 D.从中间开始向上、向下设计11、"从中间开始"设计的"中间"目前多数是在( A )。
A.传统机器语言级与操作系统机器级之间B.传统机器语言级与微程序机器级之间C.微程序机器级与汇编语言机器级之间D.操作系统机器级与汇编语言机器级之间12、系列机软件应做到( B )。