云南大学软件工程考研复试试题(回忆版)

合集下载

云南大学计算机工程与技术复试题

云南大学计算机工程与技术复试题

2009操作系统和编译原理操作系统的主要功能是什么?操作系统的功能:(1)操作系统的主要功能:①资源管理。

②程序控制。

③人机交互。

(2)计算机系统的资源可分为设备资源和信息资源两大类。

(3)操作系统包括五个方面的管理功能:①进程与处理器管理。

②作业管理。

③存储管理。

④设备管理。

⑤文件管理。

什么是进程?进程和程序的区别是什么?从用户角度来看,进程是应用程序的一个执行过程。

从操作系统核心角度来看,进程代表的是操作系统分配的内存、CPU时间片等资源的基本单位,是为正在运行的程序提供的运行环境。

进程与应用程序的区别在于应用程序作为一个静态文件存储在计算机系统的硬盘等存储空间中,而进程则是处于动态条件下由操作系统维护的系统资源管理实体。

区别:(1)进程是一个动态概念,而程序是一个静态概念,程序是指令的有序集合,无执行含义,进程则强调执行的过程。

(2)进程具有并行特征(独立性,异步性),程序则没有。

(3)不同的进程可以包含同一个程序,同一程序在执行中也可以产生多个进程。

自底向上的语法分析的关键是什么?什么时候进行归约,按照哪条产生式进行归约数据结构和算法什么是算法的时间复杂度?如果一个问题的规模是n,解决这一问题所需算法所需要的时间是n的一个函数T(n),则T(n)称为这一算法的时间复杂度。

简述数据的逻辑结构和物理结构的概念和两者的关系?数据元素之间的逻辑关系称为数据的逻辑结构。

数据的逻辑结构可以看作是从具体问题抽象出来的数学模型,它与数据的存储无关。

数据结构在计算机中的表示(又称映像)称为数据的物理结构,或称存储结构。

它所研究的是数据结构在计算机中的实现方法,包括数据结构中元素的表示与元素间关系的表示什么是算法?算法的性质有哪些?算法就是解决问题的方法;算法的一般性质包括:通用性对于那些符合输入类型的任意输入数据,都能根据算法进行问题求解,包保证计算结构的正确性。

有效性组成算法的每一条指令都必须是能够被人或机器确切执行的。

云南大学计算机网络考研复试试题(回忆版)

云南大学计算机网络考研复试试题(回忆版)

云南大学计算机网络考研复试试题1.为什么多处理机系统能显著提高计算机性能?广义上说,使用多台计算机协同工作来完成所要求的任务的计算机系统都是多处理机系统。

传统的狭义多处理机系统的作用是利用系统内的多个CPU来并行执行用户的几个程序,以提高系统的吞吐量或用来进行冗余操作以提高系统的可靠性。

多个处理机(器)在物理位置上处于同一机壳中,有一个单一的系统物理地址空间和每一个处理机均可访问系统内的所有存储器是它的特点2csma/cdCSMA/CD载波监听/冲突检测,属于计算机网络以太网的工作类型,即在总线上不断的发出信号去探测线路是否空闲,如果不空闲则随机等待一定时间,在继续探测。

直到发出信号为止多点接入:说明是总线型网络,许多计算机以多点接入的方式连接在一根总线上载波监听:发送前先监听,即每一个站在发送数据之前先要检测一下总线上是否有其他站在发送数据,如果有则暂时不发送数据,要等待信道变为空闲时再发送碰撞检测:便发送边监听,即适配器发送数据边检测信道上的信号电压的变化情况,以便判断自己发送数据时其他站是否也在发送数据。

当几个站同时在总线上发送数据时,总线上的信号电压将会增大3.模拟信号数字化基本原理声音的数字化包括三大步骤:取样、量化、编码以下是我找到的具体内容一、取样对连续信号按一定的时间间隔取样奈奎斯特取样定理认为,只要取样频率大于等于信号中所包含的最高频率的两倍,则可以根据其取样完全恢复出原始信号,这相当于当信号是最高频率时,每一周期至少要采取两个点但这只是理论上的定理,在实际操作中,人们用混叠波形,从而使取得的信号更接近原始信号二、量化取样的离散音频要转化为计算机能够表示的数据范围,这个过程称为量化量化的等级取决于量化精度,也就是用多少位二进制数来表示一个音频数据。

一般有8位,12位或16位。

量化精度越高,声音的保真度越高。

以8位的举例稍微说明一下其中的原理。

若一台计算机能够接收八位二进制数据,则相当于能够接受256个十进制的数,即有256个电平数,用这些数来代表模拟信号的电平,可以有256种,但是实际上采样后的某一时刻信号的电平不一定和256个电平某一个相等,此时只能用最接近的数字代码表示取样信号电平三、编码对音频信号取样并量化成二进制,但实际上就是对音频信号进行编码,但用不同的取样频率和不同的量化位数记录声音,在单位时间中,所需存贮空间是不一样的。

云南大学计算机软件与理论专业考研复试面试问题整理附面试技巧自我介绍

云南大学计算机软件与理论专业考研复试面试问题整理附面试技巧自我介绍

云南大学计算机软件与理论专业考研复试面试问题附面试技巧/自我介绍范文/快速提分技巧第一部分:面试问题(含通用、专业、英文面试问题)复试面试问题整理通用面试问题:1. 为什么你选择云南大学作为你的研究生目的地?2. 你对云南大学的计算机软件与理论专业有什么了解?3. 你在大学期间参加过哪些社团或活动?这些经历对你有什么影响?4. 你认为你的研究生涯应该如何帮助你实现未来的职业目标?5. 你在计算机科学或软件工程方面的研究经历是什么?6. 你在项目中遇到的非常大挑战是什么?你是如何解决的?7. 描述一下你在团队合作中的角色和职责。

8. 在你的研究生涯中,你希望研究哪些具体的主题或领域?9. 你对学术研究的看法是什么?你希望在未来的研究中实现什么目标?10. 你在未来的学习和工作中,如何处理压力和挑战?专业类面试问题:1. 描述一下你对计算机软件与理论专业的理解和兴趣。

2. 你能解释一下你在本科阶段学习过的计算机科学或软件工程的重要概念或技术吗?3. 在你的观点中,计算机软件与理论的主要趋势和发展方向是什么?4. 描述一下你使用过的编程语言和工具,以及你对其的熟练程度。

5. 你是否有过实际的项目经验,或者参与过相关的实践课程?6. 对于数据结构和算法的理解和应用如何?7. 你能解释一下什么是人工智能,以及它在计算机软件与理论中的地位吗?8. 你对软件质量保证和测试的理解是什么?9. 对于软件工程中的各种模型和框架,你的理解是什么?10. 你如何理解云计算和其在计算机软件与理论中的作用?英文提问的面试问题:1. Can you briefly introduce yourself and your academic background in English?2. What is your understanding of the field of computer science in English?3. Please describe in English one of your previous projects or courses that related to computer science or software engineering.4. In your opinion, what are some of the latest trends in computer science or software engineering?5. Can you discuss your research interests and how they align with the field of computer science or software engineering?第二部分:考研复试面试自我介绍范文1、开场白尊敬的各位老师,大家好!首先,我要感谢老师们给予我这次复试的机会,让我有机会向你们展示自己的才华和潜力。

软件工程考研复试题

软件工程考研复试题

1、说出软件工程的四项基本原则?选取适合的开发范型,采用合适的设计方法,提供高质量的工程支持,重视开发过程的管理。

2、请列出软件工程的生命周期的6个阶段?问题的定义及规划,需求分析,软件设计,程序编码,软件测试和运行维护。

瀑布模型有以下优点:1)为项目提供了按阶段划分的检查点。

2)当前一阶段完成后,您只需要去关注后续阶段。

3)可在迭代模型中应用瀑布模型。

增量迭代应用于瀑布模型。

迭代1解决最大的问题。

每次迭代产生一个可运行的版本,同时增加更多的功能。

每次迭代必须经过质量和集成测试。

2、瀑布模型有以下缺点:1)在项目各个阶段之间极少有反馈。

2)只有在项目生命周期的后期才能看到结果。

3)通过过多的强制完成日期和里程碑来跟踪各个项目阶段。

1. Strings=newString(‘xyz’);请问产生几个StringObject?2. 软件工程可以分为几个阶段?请问各个阶段的作用是什么?3. 值类型与引用类型的区别?用C#事例说明?4. 编写一个冒泡排序的程序。

6 举例说明你所熟悉几种设计模式,说明各种模式在何种情况下使用?7 你如何理解委托,一般在什么情况下用?8 你做过的C/S结构程序中你用的是几层架构,为什么要用,各层间的关系是什么?9:请问此程序的输出结果:usingSystem;u1 非功能性需求:用户对软件质量属性、运行环境、资源约束、外部接口等方面的要求或期望,包括:(1) 性能需求:用户在软件响应速度、结果精度、运行时资源消耗量等方面的要求。

(2) 可靠性需求:用户在软件失效的频率、严重程度、易恢复性,以及故障可预测性等方面的要求。

(3) 易用性需求:用户在界面的易用性、美观性,以及对面向用户的文档和培训资料等方面的要求。

(4) 安全性需求:用户在身份认证、授权控制、私密性等方面的要求。

(4) 运行环境约束:用户对软件系统运行环境的要求。

(5) 外部接口:用户对待开发软件系统与其他软件系统或硬件设备之间的接口的要求。

软件工程考研复试题

软件工程考研复试题

1、说出软件工程的四项基本原则?选取适合的开发范型,采用合适的设计方法,提供高质量的工程支持,重视开发过程的管理。

2、请列出软件工程的生命周期的6个阶段?问题的定义及规划,需求分析,软件设计,程序编码,软件测试和运行维护。

瀑布模型有以下优点:1)为项目提供了按阶段划分的检查点。

2)当前一阶段完成后,您只需要去关注后续阶段。

3)可在迭代模型中应用瀑布模型。

增量迭代应用于瀑布模型。

迭代1解决最大的问题。

每次迭代产生一个可运行的版本,同时增加更多的功能。

每次迭代必须经过质量和集成测试。

2、瀑布模型有以下缺点:1)在项目各个阶段之间极少有反馈。

2)只有在项目生命周期的后期才能看到结果。

3)通过过多的强制完成日期和里程碑来跟踪各个项目阶段。

1。

Strings=newString(‘xyz’);请问产生几个StringObject?2. 软件工程可以分为几个阶段?请问各个阶段的作用是什么?3. 值类型与引用类型的区别?用C#事例说明?4。

编写一个冒泡排序的程序.6 举例说明你所熟悉几种设计模式,说明各种模式在何种情况下使用?7 你如何理解委托,一般在什么情况下用?8 你做过的C/S结构程序中你用的是几层架构,为什么要用,各层间的关系是什么?9:请问此程序的输出结果:usingSystem;u1 非功能性需求:用户对软件质量属性、运行环境、资源约束、外部接口等方面的要求或期望,包括:(1)性能需求:用户在软件响应速度、结果精度、运行时资源消耗量等方面的要求。

(2) 可靠性需求:用户在软件失效的频率、严重程度、易恢复性,以及故障可预测性等方面的要求。

(3)易用性需求:用户在界面的易用性、美观性,以及对面向用户的文档和培训资料等方面的要求.(4) 安全性需求:用户在身份认证、授权控制、私密性等方面的要求。

(4) 运行环境约束:用户对软件系统运行环境的要求。

(5)外部接口:用户对待开发软件系统与其他软件系统或硬件设备之间的接口的要求。

历年云南大学计算机考研复试

历年云南大学计算机考研复试

云南大学2011年考研计算机软件与理论专业复试专业一组:计算机网络的题目:选择重传协议+计算机组成原理:移码和补码的区别;有了补码为什么还要有移码呢专业组二:数据库:范式+数据结构:栈的用法+算法:动态规划专业组三:计算机图形学:直线在计算机怎么形成颜色怎么显示+编译原理:自动机+离散数学英语:自我介绍+英文短文阅读+文章句子翻译+专业问题云南大学2011年考研计算机应用技术专业复试英语:先自我介绍,自我介绍之后,老师又问“你最擅长的是什么”我说“数据库”,然后老师找了一段有关SQL的英语短文,让我读一遍,然后挑了一个句子翻译,然后问了一个问题,数据库怎么加入新的数据计算机:第一个组,抽的题“简单说一下ALU”,随机问的:“计算机的乘法运算是怎么做的”,“那除法运算呢”第二个组,抽的题“什么是最小连通图”,随机问的:“如何产生最小连通图说一下大概的编码过程;”,“防止出现环的问题”第三个组,抽的题“C语言与C++的区别”,随机问的:“代码如何检查错误,有哪些方法”,“学过哪些课程”云南大学2011年考研计算机应用技术专业复试英语:模式是问答式对话,而不是背一篇自我介绍就行了,问的是你的名字,专业,来自哪里,还有就是你之前工作是什么What do you do、为何选择云南大学,昆明的天气你感觉如何将来打算在昆明发展吗等等;然后让你读一篇跟你专业相近的英语文章一段,翻译一下就OK了;专业1组:我抽的题目是“,传输距离上可以加中继器,是否能够无限延伸”当然不能,还要说出为何,跟数据包有关,数据包长度多大,这个你要知道;还有就是组成原理“关于移码的问题”答案是移码方便比较;专业2组:我抽的题目是“数据结构顺序表有哪些缺点”还有就是如何逆置一个链表专业3组:C语言上机编程,编程题也是抽的,题目是:“实现34矩阵,又给你3组数据输入,要求找出最大值还有指出所在的位置”;云南大学2011年考研计算机软件与理论专业复试英语组:云大的自我介绍要求很简洁说说名字,毕业学校,专业,家乡,爱好等;接着老师问我什么是website,老师又问通过什么访问website;计算机一组数据结构,数据库:题目是什么是函数依赖;什么是码,关系表根据什么来简化根据复杂程度来划到最小颗粒;计算机二组计算机组成原理,计算机网络:加法器怎么实现减法和加法,原码转补码时要注意什么,比如B和-B转补码时要注意什么;什么是网关;计算机三组离散数学也有高数,编程原理,实际神马都有点,操作系统,数据库,多媒体:命题和谓词有什么区别;云南大学2010年考研计算机软件与理论专业复试计算机第3组:抽到的题目是:随机变量的含义是什么什么是关系数理逻辑中逻辑是什么意思数理又是什么意思离散数学和高等数学有什么不同;极限的思想在计算机中是怎么体现的英语组:先是背了准备好的自我介绍,结束后老师根据自我介绍问了一些问题,另一个老师又问我擅长什么语言,我说VC++,他就问我用VC++做过什么东西,然后又问我软件都有什么作用读一段计算机专业英语文章并翻译成中文,我的那段是关于浏览器的,翻译完之后又问我经常浏览哪些网站;计算机二组: Cache是什么它与主存的关系怎样它的工作原理是什么 VLAN是什么数据库设计的原则和规范是什么范式计算机一组:数组、广义表和线性表有什么联系和区别简述一下迪杰斯特拉算法,偏序关系转化为全序关系的算法是什么;云南大学2010年考研计算机软件与理论专业复试英语组:做自我介绍,读一段专业英语,是关于P2P的,读完后就翻译;计算机一组:面向对象数据库编译原理:关于面向对象的测试方法自顶向下自下向上.计算机二组:计算机网络组成原理:广播风暴是什么什么情况下发生;计算机三组:数据结构数据库 :函数依赖让我举一个例子;关于e-r图,并且e-r 图是属于什么模型的联系有没有属性关于队列,并举出一个队列的例子;云南大学2010年考研计算机软件与理论专业复试英语:自我介绍,一些普通问题,如你平时做什么运动,我回答足球,然后让我谈谈世界杯···最后就是一篇专业英文了,先朗诵,再翻译,然后就其中的名词问几个问题;专业组问的基本上基本集中在软件工程、计算机操作系统、数据库、数据结构、计算机网络、计算机组成原理上云南大学2011年考研计算机应用技术专业复试复试涉及到的题目:英语阅读翻译关于JAVA的涉及到的题目有:1组:怎样用图的遍历确定是否连通2组:CPU —cache —主存 cpu-主存—辅存的异同3组:C语言云南大学2011年考研计算机系统结构专业复试专业一组:在后序遍历的线索二叉树中,如何找结点直接前驱在中序线索二叉树中,如何找节点的直接前驱如何在计算机上实现线索二叉树的遍历二叉树与离散数学中关系紧密,把偏序全序化,就是二叉树线索化,知道什么是偏序吗专业二组:高速缓冲存储器-主存和主存-辅存的差别;什么是多核保证网络安全的要素有哪些专业三组:什么是软件测试软件测试的功能是什么软件测试有哪几类如何区分大学都学过什么课程有没有学过图形图像方面的课程做过什么项目没有软件开发与写程序一样吗为什么什么是文法什么是上下文无关文法都有哪些文法你认为大学为什么既要学离散数学又要学高数高数与离散数学的区别是什么英语:二组,20多分钟的时间里,除了读了一段文章外,其余时间,老师一直在问问题,先是闲谈,后来就问与计算机相关的了;云南大学2009年考研信息学院计算机方向复试简要专业流程:首先从电脑里抽出三道题,题目内容涉及几乎全部计算机专业本科知识;老师一般会先让你自我介绍一下,以大概了解你的背景,然后让你回答这三道题,并根据题目和你的回答情况问些相关问题,以及一些他们感兴趣的问题,如工作经历往届生,毕业设计应届生等;一、操作系统和编译原理类简述编译程序的组成结构;如果操作系统的源代码是公开的,你认为这样的操作系统是安全的吗编译如何实现“括号配对检查”操作系统的主要功能是什么什么是进程进程和程序的区别是什么现代编译系统中一般采用什么技术来提高符号表的管理效率一遍的代码生成算法中,当生成一条跳转指令时,可能并不知道跳转的目标地址,采用什么技术来解决什么是上下文无关文法计算机为什么能懂高级语言编译程序中怎样实现先乘除后加减自底向上的语法分析的关键是什么二、数据结构和算法什么是算法时间复杂度简述数据的逻辑结构和物理结构的概念和两者的关系;什么是算法算法的性质有哪些快速排序在什么情况下效率最高,什么情况下最差简述程序正确性证明的思想和方法;什么是递归算法什么是NP问题如何用顺序结构存储完全二叉树堆的特征是什么如何利用堆进行排序贪心算法的思想是什么能得到最佳结果吗简述用非递归实现递归的方法;树的遍历有几种方法对链表设置头节点的好处是什么分治法的基本思想是什么为什么采用递推关系进行分治算法的时间复杂度分析三、离散数学什么是命题和谓词的区别什么是等价关系什么是充分条件和必要条件什么是全序关系任何命题的主合取范式都是存在并且唯一吗简述有向图和无向图的关系;四、软件工程谈谈你对软件工具的理解,你用过什么软件工具什么是软件的可维护性软件开发和写程序有什么不同什么是软件设计的“高内聚,低耦合”简述CASE在软件工程中的作用;为什么要进行软件测试常用软件测试方法有哪些谈谈你对保证软件质量的技术和方法的认识;提高软件生产率有哪些基本手段什么是软件的可靠性和可用性什么是软件规格说明作用是什么将其形式化的意义是什么什么是软件重用实现软件重用的方法有哪些什么是软件移植你认为若构造一个工具,实现Windows软件到Unix/Linux的移植有意义吗难度大不大五、数据库Armstrong公理的完备性的含义是什么给出求X属性闭包的算法;如何证明该算法的正确性简述数据库中码的概念;简述数据库中依赖逻辑蕴含的概念;相对文件系统而言,数据库的数据独立性指什么六、网络和分布式为什么多处理机系统能显着提高计算机系统的性能什么是CSMA/CD简述其基本原理;简述模拟信号数字化的基本原理;在网络多路复用机制中,ADSL采用的是哪一种TCP传输连接建立时为什么要使用“三次握手”的机制分布式处理涉及哪些关键技术简述虚电路和数据报;什么是IP地址逻辑上IP地址如何构成半双工总线型局域网的覆盖范围取决于什么因素通常路由协议有距离向量法和链路状态法,RIP和OSPF分别是哪一种简述计算机网络和分布式系统的异同;网际互联常用的网间连接器有哪些分别对应哪一层的协议转换TCP/IP和OSI网络体系结构的异同;什么是网桥谈谈你了解的几种网络安全技术,你认为他们分别适用于什么场合Internet划分成很多自治系统AS,在AS内部和AS之间的路由通常采用什么协议实现路由选择简述数据链路层和传输层在流量控制上的区别;决定局域网特征的主要技术有哪些七、面向对象面向对象方法的“封装性”有什么问题怎样解决为什么说面向对象设计所获得的软件结构同问题本身的结构是一致的继承机制是面向对象技术的重要特征,谈谈继承机制软件技术所产生的作用;简述面向对象方法的概念;云南大学2009年考研计算机应用专业复试题目:什么是CISC,它的特点离散数学的研究内容什么是E-R图怎么把E-R图转换为表树的遍历种类,确定一棵树的方法云南大学2011年考研计算机技术专业复试一、专业面试一组:1.什么是软件阶段式开发有哪些阶段2.说说树和图之间的区别3.什么是E-R图如果有多个人同时在设计一个数据库的E-R图,应该注意什么问题二、专业面试二组:1.根据Flynn分类法,可以将计算机系统分为哪几类2.说说模拟信号数字化的原理;3.说说网络应用层有哪些协议三、专业上机实践组:抽到的题目是:输入两个学生的名字,年龄,随后输出年龄较大的学生信息;我用C 语言,需要使用结构体四、英语面试组:1.姓名,年龄,家乡,毕业学校,毕业时间都是一个个的小问题2.因为我工作过,所以让我简述了下工作经历;3.上学时学过哪些你认为重要的课程,为什么觉得重要4.第一次来昆明吗感觉昆明怎么样5.让你读一段有关专业方面的英语,然后翻译前两句话;云南大学2011年考研计算机技术硕士专业复试计科二组:1、C++语言,什么是继承性,在程序中如何实现,在现实生活中举例2、位图和矢量图有什么区别计科一组:1、存储元、存储单元、存储体、存储单元地址等的区别和联系 2、2MByte大小的内存空间寻址需要多少跟地址线、不同单位之间换算的题计科三组:机试用程序实现一个数列的前十项的结果,数列的定义是当n=1时,fn=1;当n=2时,fn=1;当n>2时, fn=fn-1+fn-2;英语组:自我介绍一段英文阅读+翻译有关数码照相机优于胶片相机问两个关于以上那段英文的问题。

(完整版)19云南大学历年计算机专业复试题

数据结构云南大学抽两道题并答题。

从一个大盒子里面抽俩,每个纸条上面的题目只有1个。

根据回答情况追问,复试去的早的话,如果早上,那么老师问的比较多。

学硕最长30分钟(前几个进去的同学)。

专硕最短不到10分钟。

老师如果感觉一天复试不完那么就会压缩时间,每个同学进入房间自我介绍(有的是中文,有的是英文),英语抽提,一个题有100多个单词,特别短,生词不多,read and translate 翻译结束英语就结束了。

接下来是专业问题抽提了。

俩指头宽度的纸片,20多厘米长。

塞满一个塑料盒子,叠着的。

这篇文章里面的题能碰到1个就nice了。

我就碰到了一个,是我瞄到一张没有完全折叠好的纸片,我熟悉那个问题所以perfect。

专业题特别杂,看运气英语好的,能看懂句子成分的就不用准备英语了,下午去的同学,就随便准备一些英语问题,your family ,your university ,why, and your outlook?可能会问,时间紧就不问了,逆置一个顺序表,链表顺序表逆置:由于顺序表是连续存储的,循环表厂的一半,交换第一个和最后一个元素。

i 交换length-i,每做一次循环,i++。

逆置一个链表:先保存第一个数据节点,p=L->next,后把头结点摘下L->next=NULL;遍历p的链表,头插法插入L表。

遍历完出来L就是逆置的。

排序一个顺序表,链表顺序表排序:2路归并排序,堆排序,冒泡排序,插入排序。

折半插入排序排序链表:我们假设递增有序,采用直接插入排序法。

先构造一个只有一个数据节点的有序单链表,然后外层循环依次遍历源单链表剩余节点,直到遍历结束,内层循环在有序单链表中比较大小查找合适节点插入。

把一个有序单链表A插入另一个有序单链表B,合成的B链表任然有序:扫描A链表,取下节点,扫描B链表找到合适节点插入,若发现A链表空,则结束,若发现A链表不为空,B链表为空,则直接将A中剩余节点放入B中。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

您所下载的资料来源于 获取更多考研资料,请访问
考研资料下载中心
您所下载的资料来源于 获取更多考研资料,请访问
考研资料Байду номын сангаас载中心
,比如你用 C 语言编程,你可以使用 C 语言本身的库,但不要用 WindowsAPI 函数,因为 WindowsAPI 函数在 Linux 下是没有的,如果想移植到 Linux 平台 下,使用 WindowsAPI 函数的部分代码就要做出修改了
您所下载的资料来源于 获取更多考研资料,请访问
考研资料下载中心
还有就是自定而下,和自下而上的方法 谈谈你对保证软件质量的技术和方法的认识? 1.作为一个软件质量保证人员需要良好的沟通能力,因为如果没有良好的沟通能力 很多问题都没有办法解决,原因很简单,测试人员发现了 bug,开发人员或项目经理在怎么不 理,但是他们都会想到,万一测试人员发现了 bug 而自己忽视了,那么就有可能成为软件里 的一颗不定时地炸弹,那么作为一个开发人员或项目经理对 bug 的重视程度肯定相对比较 高,至少要看测试人员发现的 bug ,但是 QA 就不一定了,因为 QA 保证的流程的正确的 执行,相关人员就是认为流程不重要,只要我开发的产品没有问题那就没有问题,客户肯定 不会关注我的流程,在加上古人的名言“结果说明了一切”,所以没有良好的沟通能力,一些 问题将很难去解决,做起来就没有成就感 2.个人感觉比沟通能力更重要的是,坚持原则,在遇到困难的时候,是不是还能坚持 原则,在遇到项目组的种种不理不睬的时候,是不是还能坚持原则,在项目组不按照计划走 的时候,是不是还能坚持原则 3.个人心态,我工作三年的经历告诉我,如果开发和测试相比,开发是天堂,测试是 地狱的话,但如果测试和 QA 相比的话,那测试就是天堂 QA 就是地狱,所以心态很重要 在三年里我就锻炼成一个非常好的心态,随便怎么说 CMMI 没用,随便怎么说 CMMI 就是 写文档,随便怎么说 QA 真烦人,我笑容依然灿烂,从容面对,而且一个 QA 要有坚定的信 念,如果你都不相信过程能给项目开发带来好处,那你还指望谁能相信 提高软件生产率有哪些手段? 1.挑选精干人员 (管理 计划不好 技术搭配不当) 2.提高阶段效率 3.消除人工阶段 4.减少重复劳动 5.建造简单产品 6.重用软部件库(已经存在的软件功能部件 9.什么是软件的可靠性和有用性 可靠性就是指软件运行的稳定性,可用性就是操作的便利性。比如一辆汽车,可靠性好 应该归功于机械部分,可用性好则是内饰和中控系统的功劳 什么是软件规格说明?作用是什么?将其形式化的意义是什么? 11.什么是软件重用?实现软件重用的方法有哪些? 软件重用,是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过 程。软件元素包括程序代码、测试用例、设计文档、设计过程、需要分析文档甚至领域知识 通常,可重用的元素也称作软构件,可重用的软构件越大,重用的粒度越大 根据软件开发的不同阶段实现软件重用主要有四个途径 抽象:对重用对象概括提炼 从而得到能全面描述侧重算法和数据结构的软件构件的 各部分的描述 选择:是对重用对象进行存放,匹配和检索的功能 实例化:对数据类型中对象进行参数的提供 转换 集成 12.什么是软件移植?你认为构造一个工具实现 windows 到 Unix 的移植有意义吗?难大 不? 软件可移植性是指代码可以在不同平台间移植,我们一般说的软件的可移植性指的是软 件可移植性,简单的说就是指源代码移到不同的平台下(不同的操作系统,例如从 Windows 下移到 Linux 下)时,需要修改的内容越少,移植性越好。要保证软件可移植性,就是少用
您所下载的资料来源于 获取更多考研资料,请访问
考研资料下载中心
编码 软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表 示的"源程序清单"。充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的选 择以及保证软件产品的开发质量 测试 软件测试的目的是以较小的代价发现尽可能多的错误。不同的测试方法有不同的测试用 例设计方法。两种常用的测试方法是白盒法测试对象是源程序,依据的是程序内部的的逻辑 结构来发现软件的编程错误、结构错误和数据错误。结构错误包括逻辑、数据流、初始化等 错误。用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果。白盒法和黑盒法 依据的是软件的功能或软件行为描述,发现软件的接口、功能和结构错误。其中接口错误包 括内部/外部接口、资源管理、集成化以及系统错误。黑盒法用例设计的关键同样也是以较 少的用例覆盖模块输出和输入接口。黑盒法 维护 维护是旨在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对 软件产品所进行的一些软件工程的活动。即根据软件运行的情况,对软件进行适当修改,以 适应新的要求,以及纠正运行中发现的错误。编写软件问题报告、软件修改报告 什么是软件设计的”高内聚 低耦合” 内聚:一个模块内各个元素彼此结合的紧密程度 耦合:一个软件结构内不同模块之间互连程度的度量 对于低耦合,(模块的独立性) 一个完整的系统,模块与模块之间,尽可能的使其独立存在。也就是说,让每个模块 尽可能的独立完成某个特定的子功能。模块与模块之间的接口,尽量的少而简单。如果某两 个模块间的关系比较复杂的话,最好首先考虑进一步的模块划分。这样有利于修改和组合 对于高内聚 在一个模块内,让每个元素之间都尽可能的紧密相连。也就是充分利用每一个元素的功 能,各施所能,以最终实现某个功能 case 在软件工程中的作用 CASE(Computer Aided(or Assisted)Software Engineering 计算机辅助软件工程 CASE 的一个基本思想就是提供一组能够自动覆盖软件开发生命周期各个阶段的集成的、减少劳动 力的工具 CASE 已被证明可以加快开发速度 提高应用软件生产率并保证应用软件的可靠 品质 CASE 工具由许多部分组成 一般我们按软件开发的不同阶段分为上层 CASE 和下层 CASE 产品。上层或前端 CASE 工具自动进行应用的计划、设计和分析 帮助用户定义需求 产生需求说明 并可完成与应用开发相关的所有计划工作。下层或后端 CASE 工具自动进行 应用系统的编程、测试和维护工作 除非下层 CASE 和上层 CASE 工具的供应商提供统一界面 否则用户必须编写或重新将 所有信息从上层 CASE 工具转换到下层 CASE 工具。独立的 CASE 工具供应商愈来愈希望 将它们的工具连接在一起建立统一的界面以减少用户不必要的开发工作 CASE 工具带来的好处 计算机专业人员利用计算机使他们的企业提高了效率 企业的各个部门通过使用计算机 提高了生产率和效率 增强了企业的竞争力并使之带来了更多的利润 为什么要进行软件测试?常用的软件测试的方法有哪些? 软件测试的目的:尽可能发现并改正被测试软件中的错误,提高软件的可靠性 软件测试方法主要包括单元测试,集成测试,系统测试,用户测试,回归测试
云南大学软件工程考研复试试题 一、谈谈你对软件工具的理解,你用过什么软件工具
软件工具是指为支持计算机软件的开发、维护、模拟、移植或管理而研制的程序系统 它是为专门目的而开发的,在软件工程范围内也就是为实现软件生存期中的各种处理活动 (包括管理、开发和维护)的自动化和半自动化面开发的程序系统
开发软件工具的最终目的是为了提高软件生产率和改善软件的质量 软件工具分为六类:模拟工具、开发工具、测试和评估工具、运行和维护工具、性能质 量工具和程序设计支持工具 应该是看对象来选择测试工具!比如 功能测试工具 WinRunner 性能测试工具 LoadRunner 内存泄漏测试工具 Purify 单元测试工具 Junit 测试管理工具 TestDirector 还有东软的 bugbase IBM 开发的 rational 什么是软件的可维护性 软件可维护性即维护人员对该软件进行维护的难易程度 具体包括理解、改正、改动和 改进该软件的难易程度 决定可维护性的因素 1.系统的大小 2.系统的年龄 3.结构合理性 可维护性的度量 可理解性 可测试性 可修改性 可移植性 软件开发和写程序有什么不同? 软件开发的内容是:需求、设计、编程和 测试 维护 需求分析 软件需求分析就是回答做什么的问题。它是一个对用户的需求进行去粗取精、去伪存真、 正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的 过程。本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求 规格说明书文档并最终得到用户的认可。需求分析的主要方法有结构化分析方法、数据流程 图和数据字典等方法。本阶段的工作是根据需求说明书的要求,设计建立相应的软件系统的 体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间的接口关系,对 各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数据结构设计 说明书,组装测试计划 设计 软件设计可以分为概要设计和详细设计两个阶段。实际上软件设计的主要任务就是将软 件分解成模块是指能实现某个功能的数据和程序说明、可执行程序的程序单元。可以是一个 函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和 可更换的功能单元。模块,然后进行模块设计。概要设计就是结构设计,其主要目标就是给 出软件的模块结构,用软件结构图表示。详细设计的首要任务就是设计模块的程序流程、算 法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法
相关文档
最新文档