②简答题(5题共20分)

上传人:M****1 文档编号:476678172 上传时间:2024-01-19 格式:DOC 页数:8 大小:62.01KB
返回 下载 相关 举报
②简答题(5题共20分)_第1页
第1页 / 共8页
②简答题(5题共20分)_第2页
第2页 / 共8页
②简答题(5题共20分)_第3页
第3页 / 共8页
②简答题(5题共20分)_第4页
第4页 / 共8页
②简答题(5题共20分)_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《②简答题(5题共20分)》由会员分享,可在线阅读,更多相关《②简答题(5题共20分)(8页珍藏版)》请在金锄头文库上搜索。

1、第一章简答题1.软件的特点:软件具有抽象性。软件与硬件的生产方式不同。软件与硬件的维护方式不同。软件具有复杂的逻辑性。软件的成本较高。软件的使用和社会因素有关。2.软件危机产生的原因:用户需求不明确。缺乏正确的理论指导。软件开发规模越来越大。软件开发复杂度越来越高。3.软件危机的主要表现:软件开发进度难以预测。软件开发成本难以控制。用户对产品功能难以满足。软件产品质量无法保证。软件产品难以维护。软件缺少适当的文档资料。4.软件工程学的基本原则有哪些:抽象。信息隐蔽。模块化。局部化。确定性。一致性。完备性。可验证性。5.什么是软件的生命周期?答:软件与任何一个事物一样,有它的孕育、诞生、成长、成

2、熟、衰亡的生存过程。这就是软件的生存周期。6.软件工程过程有哪几个基本过程活动?试说明之。答:软件工程过程的基本过程活动有4步:软件规格说明(需求定义)。规定软件的功能及其运行的限制;软件设计与开发(设计开发)。产生满足规格说明的软件;软件确认(测试)。确认软件能够完成客户提出的要求;软件演进(维护)。为满足客户的变更要求,软件必须在使用的过程中演进。第二章简答题1.可行性研究主要做4个方面的研究:经济可行性:进行成本效益分析。从经济角度判断系统开发是否“合算”。技术可行性:进行技术风险评价。从开发者的技术实力、以往工作基础、问题的复杂性等出发,判断系统开发在时间、费用等限制条件下成功的可能性

3、。法律可行性:确定系统开发可能导致的任何侵权、妨碍和责任。方案的选择:评价系统或产品开发的几个可能的候选方案。最后给出结论意见。2.需求获取难的原因是:用户需求具有动态性(不稳定性)。用户需求具有模糊性(不准确性)。对需求达成一致的艰难性。管理体制、机构设置处在变革中。软件书籍没有将需求分析讲清楚。3.需求分析的原则:解决逻辑问题:需求分析是对问题的识别和说明,要回答“做什么”,而不是“怎么做”。以运行环境为基础:需求分析工作应以具体的运行环境为基础,实事求是。用户参与的原则:需求分析工作是系统分析人员同用户不断交互的过程。构造高质量的需求规格说明:需求规格说明是需求分析工作重要的完成标志。4

4、.需求分析的任务有:画出目标系统的组织机构模型。画出目标系统业务操作流程图。画出目标系统的数据流图。列出目标系统的功能点列表,即功能模型。列出系统的性能点列表,即性能模型。列出目标系统的接口列表,即接口模型。确定目标系统的运行环境,即环境模型。目标系统的界面约定,即界面模型。分析与评估开发工期、费用、进度、风险等。5.数据流图的作用:数据流图可以用来抽象地表示系统或软件。它从信息传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程,同时可以按自顶向下、逐步分解的方法表示内容不断增加的数据流和功能细节。因此,数据流图既提供了功能建模的机制,也提供了信息流建模的机制,从而可以建立起系

5、统或软件的功能模型。6.数据词典的作用:分析模型中包含了对数据对象、功能和控制的表示。在每一种表示中,数据对象和控制项都扮演一定的角色。为表示每个数据对象和控制项的特性,建立了数据词典。数据词典精确地、严格地定义了每一个与系统相关的数据元素,并以字典式顺序将它们组织起来,使得用户和分析员对所有的输入、输出、存储成分和中间计算有共同的理解。第三章简答题1.模块的基本属性:功能:描述该模块做什么?逻辑:描述模块内部怎么做?状态:模块使用时的环境和条件。接口:指模块的输入与输出。2.软件设计的具体任务:制定规范。结构设计。处理方式结构设计。数据结构及数据库设计。可靠性设计(质量设计)。编写软件设计文

6、档。设计审查和复审。详细设计。3.模块化的特征:抽象:用层次的方式构造和分析复杂系统。逐步求精:帮助开发人员把精力集中在与当前开发阶段最相关的那些问题上。信息隐蔽:如果一个模块内包含的信息(过程和数据) 不允许外部的模块访问的话,其它模块不能对其访问。局部化:把一些关系密切的软件元素物理地放得彼此靠近。4.软件设计优化的准则:划分模块时,尽量做到高内聚、低耦合,保持模块相对独立性。模块划分的准则:“将相关的各部分放在一起,无关的东西不要放在一起。” 模块的大小要适中。模块的接口要简单、清晰、含义明确,便于理解,易于实现、易于测试和维护。一个模块的作用范围应在其控制范围之内,且判定所在的模块,应

7、与受其影响的模块在层次上尽量靠近。软件结构的深度、宽度、扇入、扇出应适当。力求设计单入口和单出口的模块,避免“病态连接”,以防止内容耦合。 设计功能可预测模块的划分,应防止功能过分局限。 5.结构化设计的优点:减少设计复杂性。将大化小,使复杂问题简单化。结构独立。将程序划分成多个相对独立的模块。模块功能单一化,可使软件设计获得最大的益处。易于进行软件修改。易于开发和维护。加强了代码的可重用性。第四章简答题1.面向对象是:Coad和 Yourdon给出的定义:“面向对象(Object Oriented,OO)=对象(Object)+类(Classification)+继承(Inheritance

8、)+通信(Communication with Messages)”。2.面向对象基本特征是:面向对象技术的基本特征主要是抽象性、封装性、继承性和多态性。3.软件开发过程指:软件开发过程就是将软件系统所涉及到的应用领域和业务范围(现实世界)的问题空间和用于解决某些问题的软件系统的解空间之间的映射。4.传统软件开发方法存在的问题:问题空间不能直接映射到解空间软件复用程度低分析不能直接过渡到设计软件可维护性差软件不满足用户需要5.面向对象开发方法的特点:对软件开发过程所有阶段进行综合考虑。软件生存期各阶段所使用的方法、技术具有高度的连续性,用符合人类认识世界的思维方式来分析、解决问题。增强系统稳定

9、性具有良好的可复用性6.统一建模语言:UML是具有指定的建模元素(图式符号),严格的语法(构图规则),明确的语义(逻辑含义)的建模语言,是面向对象技术领域内占主导地位的标准建模语言。7.Coda/Yourdon方法的面向对象设计模型:Coda/Yourdon方法的OOD模型是在OOA模型5个层次(主题层、类与对象层、结构层、属性层和服务层)基础上,建立4个组元的设计模型:问题域组元(PDC)、人机交互组元(HIC)、任务管理组元(TMC)和数据管理组元(DMC)。8.简述UML视图结构:(1)用例视图:描述系统的外部特性、系统功能等。(2)逻辑视图:描述系统设计特征。(3)进程视图:表示系统内

10、部的控制机制。(4)配置视图:描述系统的物理配置特征。(5)实现视图:表示系统的实现特征,常用构件图表示。第五章简答题1.面向对象分析:面向对象分析就是运用面向对象的方法进行需求分析,其主要任务是分析和理解问题域,找出相应的描述问题域和系统责任所需的类及对象,分析它们的内部构成好外部关系,正确地抽象为规范的对象,定义其内部结构和外部消息传递关系,建立问题域精确模型的过程。2.面向对象分析的模型的构成:基本模型:基本模型是一个类图。构成类图的元素所表达的模型信息,分为三个层次:对象层、特征层和关系层。补充模型:补充模型有主题图和交互图。详细说明 3.面向对象分析的过程:获取客户对系统的需求标识类

11、和对象定义类的结构和层次建造对象-关系模型建立对象-行为模型4.确定服务:确定访问对象属性的操作来自事件驱动的操作处理对应的操作消除冗余操作5.动态模型:对于一个系统来说,功能模型指明了系统应该“做什么”,而动态模型则明确规定了“什么时候做”。即在何种状态下、接受了什么事件的触发,来确定对象的可能事件的顺序。6.准备脚本:在建立动态模型的过程中,脚本是指在某一执行期间内系统中的对象(或其他外部设备)与目标系统之间发生一个或多个典型的互换信息时产生的事件,所互换的信息值就是该事件的参数,对于各事件,应确定触发事件的动作对象和该事件的参数。7.准备事件跟踪图:事件跟踪图能形象、清晰地表示事件序列以

12、及事件与对象的关系。在事件跟踪图中,一条竖线代表一个类和对象,每个事件用一条水平的箭头线表示,箭头方向从事件的发送对象指向接受对象。事件按照先后顺序排列,时间从上向下递增。8.确定基本系统模型图:基本系统模型是用来确定系统的边界和输入/输出数据流的,表明一个计算如何从输入值得到输出值,表明值之间的依赖关系及相关的功能,它不考虑计算的次序。9.面向对象分析的目的:面向对象分析的目的是对客观世界的系统进行建模,是定义所有与待解决问题相关的类。完成对所求解问题的分析,确定系统“作什么”,并建立系统的模型。10.面向对象分析的基本任务:面向对象分析的基本任务是运用面向对象的方法,软件工程师和用户必须充

13、分沟通,以了解基本的用户需求,对问题域和系统责任进行分析和理解。11.为建立分析模型,要运用的基本原则:建立信息域模型;描述功能;表达行为;划分功能、数据、行为模型,揭示更多的细节;用早期的模型描述问题的实质,用后期的模型给出实现的细节。12.建立对象-行为模型的步骤:评估所有的用例,完全理解系统中交互的序列。标识驱动交互序列的事件,理解这些事件如何和特定的对象相关联。为每个用例创建事件轨迹(event trace)。为系统建造状态机图。复审对象行为模型,以验证准确性和一致性。第六章简答题1.优化对象设计:(1)确定优先级(2)提高效率(3)调整继承关系2.设计内部结构:(1)确定遗漏的属性和

14、操作(2)指定类型,声明可见性3.面向对象启发规则是:设计结果应该清晰易懂一般-特殊结构的深度应适当设计简单类使用简单的协议使用简单的操作把设计变动减至最小4.面向对象设计:面向对象设计是面向对象方法在软件设计阶段应用与扩展的结果,就是根据在问题域中已建立的分析模型,运用面向对象技术进行系统软件设计,并且补充实现的细节部分,如人机界面、数据存储、任务管理等,形成符合成本和质量要求的、抽象的系统实现方案,在求解域中建立设计模型。5.设计任务管理子系统:任务管理的设计包括:确定要执行的任务并识别它的特征、确定任务的优先级、创建协调任务来协调所有其他任务、为每个任务设计对象,并定义它们之间的关系。6

15、.设计数据管理子系统:数据管理子系统也称数据管理部分。数据存储管理是建立在某种数据存储管理系统之上,提供了数据在数据管理系统中存储和检索对象的基本结构,是系统存储或检索对象的基本设施。7.对全局资源管理:全局资源包括物理资源(磁盘驱动器、处理器、通信线路)或逻辑资源(数据库、对象)。不但有访问权限的问题,还有访问冲突的问题。所以,应该标识全局资源,并制定访问它们的策略。8.选择控制流机制:分析模型中所有交互行为都表示为对象之间的事件。系统设计必须从多种方法中选择某种方法来实现软件的控制。9.设计边界条件:设计中的大部分工作都与系统稳定的状态行为有关。但必须考虑边界条件:系统如何启动、初始化、关闭以及故障处理。10.评审:分析模型与设计模型映射,每

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号