软件工程硕士研究生课程试题
2023年全国硕士研究生入学考试软件工程真题

2023年全国硕士研究生入学考试软件工程真题考试时间:2023年6月10日上午9:00-11:30考试地点:各省考试中心一、单项选择题(共60题,每题2分,共120分)1. 下列哪项不属于软件开发的生命周期?A. 可行性研究B. 需求分析C. 系统设计D. 程序编码2. 软件测试的目的是 ___________ 。
A. 发现全部缺陷B. 提高软件质量C. 验收软件符合需求D. 用户满意度3. 下列哪项不属于面向对象分析方法?A. CRC卡B. 数据流图C. 用例图D. 类图二、简答题(共3题,每题20分,共60分)1. 请简要描述软件工程的定义和作用。
软件工程是一门研究使用工程原理、方法和工具来开发和维护高质量软件的学科。
它涉及软件开发周期的各个阶段,包括需求分析、系统设计、编码、测试和维护。
软件工程的作用在于提高软件的质量、可靠性和可维护性,以满足用户的需求,并提高软件开发的效率和产品的竞争力。
2. 请简要介绍敏捷开发方法并阐述其优势。
敏捷开发是一种以迭代、循序渐进的方式进行软件开发的方法。
它强调团队合作、快速响应变化和持续交付价值。
与传统的瀑布模型相比,敏捷开发具有以下优势:- 灵活性:敏捷开发能够快速适应需求变化和市场变化。
- 透明度:团队成员之间的沟通更加频繁和紧密,项目进展和问题可以及时暴露和解决。
- 用户参与:敏捷开发注重用户的反馈和参与,能够更好地满足用户需求并提高用户满意度。
- 高质量:通过频繁的测试和持续集成,可以尽早地发现和修复软件缺陷,提高软件质量。
- 提高团队效率:敏捷开发强调团队协作和自组织,能够更加高效地开展工作。
3. 请简要解释软件需求的三个关键属性:可行性、一致性和可跟踪性。
- 可行性(Feasibility):软件需求应该在技术、经济和法律等方面是可行的。
也就是说,软件需求在技术上能够实现,经济上可行(考虑成本和收益),并符合法律法规和规范要求。
- 一致性(Consistency):软件需求之间应该是相互协调和一致的。
软件工程考研试题

软件工程考研试题1.问题:简述软件工程的基本原则。
答案:软件工程的基本原则包括抽象、模块化、信息隐藏、一致性、完备性、可靠性、可维护性和可复用性等。
这些原则是指导软件工程师进行软件开发的重要准则,有助于提高软件的质量和可靠性,降低维护成本。
2.问题:什么是软件开发生命周期?请简述其各个阶段的主要任务。
答案:软件开发生命周期是指从软件的需求分析、设计、实现、测试到部署和维护的整个过程。
主要阶段包括需求分析阶段、设计阶段、编码阶段、测试阶段和维护阶段。
需求分析阶段主要任务是确定软件的目标和用户需求;设计阶段主要任务是设计软件的体系结构、数据库和系统流程等;编码阶段主要任务是按照设计要求实现软件功能;测试阶段主要任务是测试软件的各项功能和性能,确保软件符合需求和设计要求;维护阶段主要任务是修复软件缺陷、更新软件版本和提供技术支持等。
3.问题:什么是软件测试?简述软件测试的常用方法。
答案:软件测试是指通过一系列测试用例来验证软件是否符合需求和设计要求的过程。
常用的软件测试方法包括黑盒测试、白盒测试、灰盒测试、单元测试、集成测试和系统测试等。
黑盒测试主要关注软件的功能性需求,通过输入和输出结果来验证软件的正确性;白盒测试主要关注软件的内部结构和逻辑,通过代码的覆盖率来验证软件的可靠性;灰盒测试则介于黑盒和白盒之间,既关注功能性需求也关注内部结构。
单元测试是对单个模块进行测试,集成测试是将多个模块集成在一起进行测试,系统测试是对整个软件的性能和功能进行全面测试。
4.问题:什么是软件维护?简述软件维护的类型。
答案:软件维护是指在软件发布后对其进行修复缺陷、更新版本和改进性能等工作的过程。
根据维护的性质不同,软件维护可以分为纠错性维护、适应性维护、完善性维护和预防性维护等类型。
纠错性维护是指修复已发现的软件缺陷;适应性维护是指修改软件以适应外部环境的变化;完善性维护是指增加软件功能和性能,提高软件的可维护性和可复用性;预防性维护是指通过对软件的审查和评估,预测未来的变化并采取相应的措施。
华中科技大学软件学院软件工程硕士秋级第一学期计算机网络试卷答案

华中科技大学软件学院软件工程硕士2023(秋)级第一学期《计算机网络》试卷答案注意事项:1.本试卷共五大题,满分100分,考试时间150分钟;2. 请将答案按序号分别写在答题纸上,答在试卷上不得分。
一、名词解释(每题1分共10分)1.1 DNS Domin Name System,域名系统或Domin Name Service,域名服务。
域名系统指给Internet上的主机指定域名地址,同时可使其也具有IP地址。
域名地址由用户使用并自动转换成可供IP包路由软件使用的数据形式的IP地址。
域名服务指实现域名系统的Internet工具。
1.2分组互换是存储转发的一种类型,分组就是将要发送的报文提成长度固定的格式进行存储转发的数据单元,长度固定有助于通信节点的解决。
1.3流量控制流量控制是为了避免发送方发送速率大于接受方接受速率的情况,通过某种反馈机制,限制发送方的发送速率,使发送方的发送速率不超过接受方的接受速率。
1.4差错控制差错控制是为了保证发送方发出的所有的数据帧都可以按照对的的顺序交付给网络层。
为了保证可靠传送,常采用的方法是由接受方向发送方提供反馈信息,例如发回特殊的控制帧表达对输入肯定或否认的信息。
同时设定计时器,当一个帧完全丢失时重新传送。
1.5 IP地址IP协议规定所有参与Internet的网络节点要有一个统一规定格式的地址,简称IP地址。
在Internet网上,每个网络和每一台计算机都被分派有一个IP地址,这个IP 地址在整个Internet网络中是唯一的。
IP地址是供全球辨认的通信地址。
在Internet上通信必须采用这种32位的通用地址格式,才干保证Internet网成为向全球的开放互联数据通信统。
它是全球认可的计算机网络标记方法。
IP地址可表达为二进制格式和十进制格式。
1.6 URL URL(Uniform Resource Locator)是Internet上对资源的标准编址机制。
2014年硕士研究生入学考试初试专业课870软件工程试题

北京科技大学2014年硕士学位研究生入学考试试题============================================================================================================= 试题编号: 870 试题名称:软件工程(共 4 页)适用专业:计算机科学与技术、软件工程、计算机技术(专业学位)、软件工程(专业学位)说明:所有答案必须写在答题纸上,做在试题或草稿纸上无效。
=============================================================================================================一、选择题(共20分,每小题2分)1、软件工程学科出现的主要原因是( )。
A.计算机的发展B.其他工程学科的发展C.软件危机的出现D.程序设计方法学的影响2、瀑布模型是()。
A.软件开发方法B.软件开发环境C.程序设计方法学D.软件生存周期模型3、准确地解决“软件系统必须做什么”是()阶段的任务。
A.可行性研究B.详细设计C.需求分析D.编码4、好的模块划分原则应该是()。
A.高耦合、高内聚B.低耦合、高内聚C.高耦合、低内聚D.低耦合、低内聚5、为了提高模块的独立性,模块内部最好是()。
A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚6、每个对象可用它自己的一组属性和它可以执行的一组()来表现。
A.行为B.功能C.操作D.数据7、面向对象程序设计的基本机制有()。
A.结构B.属性C.方法D.继承8、软件测试的目的是为了()。
A.证明软件符合设计要求B.发现软件中的错误和缺陷C.改善软件的功能和性能D.发掘软件的潜在能力9、在软件维护中,()维护是针对用户对软件提出功能和性能要求的。
A.校正性B.适应性C.完善性D.预防性10、软件工程管理的对象是()。
北京邮电大学2020年《807软件工程专业综合》考研专业课真题试卷

北京邮电大学2020年硕士研究生招生考试试题考试科目:807软件工程专业综合请考生注意:(1)所有答案(包括选择题和填空题)一律写在答题纸上,否则不计成绩。
(2)允许使用计算器。
(3)本考题包括数据结构,操作系统,数据库三个科目。
其中数据结构为必选。
操作系统与数据库为二选一,考生需选择其中一个科目答题并且注明所选科目的名称。
必选科目数据结构(90分)一、选择题(每小题2分,共20分)1.考虑下面的程序段void running (int n)int j = 0; int k = O;w h ile (j < n) { k = k+ 1; j = j + k;此段代码的时间复杂度为A.O(logn)B.0 (n112)C.0 (n)D.0 (n2)2.设T是高度为h的平衡二叉树(又称A VL树),并且是高度为h的包含节点最少的平衡二叉树,则T包含节点数目的数量级是?A. 1. 41421 hB. 1. 61803hC.2. 71828hD. 3. 14159h3.循环单链表的主要优点是A.不再需要头节点指针B.从表的任一节点出发都能够遍历整个链表C.已知某个节点位置后能够容易找他其前趋D.在进行插入删除操作时能够保证链表不断开4.将n阶对称矩阵A=[a j,k](O<=j, k<n)的上三角元素按行优先压缩存储在数组b[O, N)中,则矩阵元素a j,k(j<=k)在数组中对应的位置是A. b U*n-j* (j—1) /2 + k]B.b U* (j-1) /2 + k]C.b[j*n-j*(j+l)/2 + k-1]D.b[j*(j+l)/2 +k-1]5.对快速排序算法较为不利的情况是A.数据量太大B.数据基本有序C.数据中包含太多的相同键值D.数据量为奇数6.n个节点的二叉树大约有多少个不同的形状?A.3. 14159"B.2"C.2. 71828"D.4"7.在采用线性探测处理冲突的散列表上作查找操作。
软件考研试题及答案

软件考研试题及答案一、单项选择题(每题2分,共10分)1. 以下哪个选项是面向对象编程语言的特性?A. 结构化B. 模块化C. 封装D. 过程化答案:C2. 在软件开发过程中,需求分析阶段的主要任务是什么?A. 编写代码B. 设计数据库C. 确定软件功能和性能要求D. 进行系统测试答案:C3. 软件测试的目的是?A. 修复软件中的所有错误B. 验证软件是否满足需求C. 编写文档D. 进行代码审查答案:B4. 在敏捷开发方法中,以下哪个不是敏捷的四大价值观?A. 个体和互动B. 工具和过程C. 可工作的软件D. 客户合作答案:B5. 下列哪种软件架构风格是面向服务的?A. 管道-过滤器B. 客户端-服务器C. 主-从架构D. 层级架构答案:B二、多项选择题(每题3分,共15分)1. 以下哪些是软件工程的主要活动?A. 需求分析B. 系统设计C. 编程D. 软件测试E. 软件维护答案:A, B, C, D, E2. 在面向对象编程中,以下哪些是对象的基本特征?A. 封装B. 继承C. 多态D. 抽象E. 并发答案:A, B, C, D3. 以下哪些是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 性能测试E. 回归测试答案:A, B, C, D, E4. 在软件开发过程中,以下哪些是风险管理的策略?A. 风险转移B. 风险接受C. 风险避免D. 风险共享E. 风险消除答案:A, B, C, D5. 在软件项目管理中,以下哪些是项目成功的关键因素?A. 明确的项目目标B. 有效的沟通C. 合适的技术D. 良好的团队合作E. 严格的进度控制答案:A, B, D, E三、简答题(每题5分,共20分)1. 请简述什么是软件危机,并列举出解决软件危机的几种方法。
答案:软件危机是指软件开发过程中出现的一系列问题,如成本失控、进度延误、质量低下等。
解决软件危机的方法包括:采用软件工程方法论、实施严格的项目管理、进行需求工程、采用模块化和组件化设计、进行持续的测试和维护等。
软件工程考研题库

软件工程考研题库1. 下列哪个不属于软件工程的基本原则?A. 高质量产品B. 及时交付C. 严格控制成本D. 持续演化答案:C解析:软件工程的基本原则包括高质量产品、及时交付和持续演化,而严格控制成本不属于软件工程的基本原则。
2. 软件配置管理的目标是:A. 管理软件开发过程中的变更B. 管理软件的测试工作C. 管理软件的开发人员D. 管理软件的需求分析答案:A解析:软件配置管理的目标是管理软件开发过程中的变更,包括版本控制、变更管理和发布管理等。
3. 下列哪个不属于软件维护的类型?A. 纠错性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:D解析:软件维护的类型包括纠错性维护、适应性维护和完善性维护,预防性维护不属于软件维护的类型。
4. 软件需求分析的主要任务是:A. 确定软件的功能需求B. 确定软件的性能需求C. 确定软件的开发环境D. 确定软件的测试用例答案:A解析:软件需求分析的主要任务是确定软件的功能需求,包括系统的功能和行为。
5. 软件测试用例设计的基本原则包括哪些?A. 测试用例应覆盖所有可能的情况B. 测试用例应覆盖大多数情况C. 测试用例应覆盖常见情况D. 测试用例应尽量简单答案:A解析:软件测试用例设计的基本原则是测试用例应覆盖所有可能的情况,以尽可能发现软件中的错误和缺陷。
6. 下列哪个不属于软件项目管理的内容?A. 项目计划B. 项目组织C. 项目实施D. 项目销售答案:D解析:软件项目管理的内容包括项目计划、项目组织和项目实施等,与项目销售无直接关系。
7. 软件度量的目的是:A. 评估软件的质量B. 评估软件的性能C. 评估软件的开发进度D. 评估软件的测试结果解析:软件度量的目的是评估软件的质量,在软件开发过程中通过收集和分析软件相关的数据来评估软件的质量水平。
8. 软件工程中的“五大过程组”包括以下哪些?A. 需求分析、设计、编码、测试、运维B. 规划、需求分析、设计、编码、测试C. 规划、需求分析、设计、实施、运维D. 规划、需求分析、设计、编码、验收答案:C解析:“五大过程组”包括规划、需求分析、设计、实施和运维,是软件工程中的核心流程。
研究生软件工程考试试卷1

研究⽣软件⼯程考试试卷1⼀、填空题1、CMMI将软件开发过程能⼒分为( 5 )个等级如果某组织已处于定量管理级,则开发过程的特点是;附:五个等级分别为:初始级、已管理级、已定义级、量化管理级、优化级。
初始级:软件过程是⽆序的,有时甚⾄是混乱的,对过程⼏乎没有定义,成功取决于个⼈努⼒。
管理是反应式的。
已管理级:建⽴了基本的项⽬管理过程来跟踪费⽤、进度和功能特性。
制定了必要的过程纪律,能重复早先类似应⽤项⽬取得的成功经验。
已定义级:已将软件管理和⼯程两⽅⾯的过程⽂档化、标准化,并综合成该组织的标准软件过程。
所有项⽬均使⽤经批准、剪裁的标准软件过程来开发和维护软件,软件产品的⽣产在整个软件过程是可见的。
量化管理级:分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解与控制。
管理有⼀个作出结论的客观依据,管理能够在定量的范围内预测性能。
优化级:过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。
2、三层体系结构包括:⽤户层、业务层和数据层。
3、统⼀过程模型的特点是:⽤例驱动、以架构为中⼼迭代增量式地开发软件。
4、Gamma将⾯向对象设计模式分为三类:分别是创建型、结构型和⾏为型模式。
5、在UML描述整体和部分关系时,有(组合)和(聚合)两种⽅式,前者的部分不能被整体共享,⽽后者的整体却能被若⼲整体共享。
6、Python语⾔定义类的成员是在(构造/内建)函数中定义。
7、在敏捷软件开发中,Scrum是⼀种(迭代增量)式软件开发过程,就像橄榄球赛的争球过程:快速、⾃组织和有适应性,其开发团队复责(开发团队负责在每个冲刺阶段结束,交付潜在可发布的"已完成"产品增量。
)。
8、SysML是对UML的⼀种扩展,⽤于系统⼯程建模,新增的图包括(需求图)和(参数图)两种。
⼆、简答题1.Petri⽹和Petri⽹系统有何区别?什么是有⾊Petri⽹?Petri ⽹是⼀种⽤于系统描述和分析的数学⼯具,Petri⽹是对离散并⾏系统的数学表⽰。
2024软件工程考研试题

2024软件工程考研试题2024年的软件工程考研试题,是对未来软件工程师的综合能力进行考察的一次重要考试。
本次考试试题涵盖了软件工程的各个方面,旨在评估考生的专业知识、解决问题的能力以及创新思维。
以下是本次考试的试题内容。
一、单项选择题(共30题,每题2分,共60分)1. 软件工程的目标是:A. 提高软件开发效率B. 提高软件质量C. 提高软件可维护性D. 以上都是2. 下列哪个不是软件工程的基本原则?A. 需求分析B. 设计C. 编码D. 测试3. 软件生命周期模型中,不包括以下哪个阶段?A. 需求分析B. 设计C. 实现D. 维护4. 下列哪个不是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 缺陷测试5. 软件需求分析的目的是:A. 确定软件的功能和性能要求B. 确定软件的开发周期C. 确定软件的编程语言D. 确定软件的测试方法二、简答题(共5题,每题10分,共50分)1. 请简要解释软件工程的概念,并列举至少三个软件工程的基本原则。
2. 请简要描述软件生命周期模型,并选择其中一种模型进行详细解释。
3. 请简要解释软件测试的目的和方法,并列举至少两种常用的软件测试方法。
4. 请简要解释软件需求分析的过程,并列举至少三个常用的需求分析方法。
5. 请简要解释软件项目管理的概念,并列举至少三个软件项目管理的常用工具。
三、论述题(共2题,每题20分,共40分)1. 请论述软件工程在现代社会中的重要性,并举例说明。
2. 请论述软件工程师应具备的核心能力,并解释为什么这些能力对软件工程师的职业发展至关重要。
本次考试试题的设计旨在全面考察考生对软件工程的理解和掌握程度。
通过选择题考察考生对基本概念和原则的掌握,通过简答题考察考生对具体知识点的理解和应用能力,通过论述题考察考生对软件工程的整体认识和思考能力。
软件工程作为一门新兴的学科,对现代社会的发展起到了重要的推动作用。
它不仅提高了软件开发的效率和质量,也为各行各业的信息化建设提供了强有力的支持。
郑州大学软件工程考研试题

郑州大学软件工程考研试题1.下面函数不能满足算法的要求,他违反了算法的()。
sam ( ){ y=0;x=5/y;printf(x,y);}A.有穷性B.确定性C.可行性D.健壮性2.链式存储结构的线性表中,逻辑上相邻的元素其物理位置上()。
A.一定相邻B.一定不相邻C. 不一定相邻D.在同一个数据块3.若用数组b[1]~b[n]作为栈s1和队列s2的共用存储结构,s1是栈底为bottom,s2的队头front,对于栈s1和队列s2,只有当b[1..n]全满时才不能作入栈或入队操作。
为栈S1和队列S2分配空间的最佳初始方案是()。
A.bottom=0,front=n+1 B. bottom=0,front=n/2C. bottom=1,front=nD. bottom=1,front=n/24.设有顺序栈S,元素1,2,3,4,5,6依次进栈,如果6个元素的出栈顺序是2,3,4,5,6,1则栈的容量至少应为()。
A.2B.3C.5D.65.数组通常具有的两种基本操作是()。
A.建立和删除B.索引和修改C.查找与索引D.查找与修改6.已知完全二叉树有26个结点,则整棵二叉树中度为1的节点数为()。
A.0B.1C.2D.137.用哈夫曼树构造{3421 4331 2313 1413}电文(不考虑空格)的二进制通讯编码,则字符“04”的编码可能是()。
A.01B.1C.001D.108.求图中某个源点到其余各定点的最短路径采用的算法是()。
A.PrimB.PleydC.KruskalD.Dijkstra9.长度为m的哈希表,采用线性探测再散列处理冲突,一个关键字第一次计算的哈希地址为d,则第三次计算的哈希地址为()。
A.(d+1)%mB.(d+2)%mC.(d+3)%mD.(d-1)%m10.9阶B-树中,除根以外的任何一个非叶子节点中的关键字数目均在()。
A.4~8之间B. 4~9之间C. 3~8之间D. 5~9之间11.下列排序算法中,在某趟结束后不一定能选出一个元素放在其最终位置上的算法是()。
电子科技大学秋季软件工程硕士入学考试试题+答案

电子科技大学秋季软件工程硕士入学考试试题答案考试科目: 301 计算机原理一﹑单项选择题(每小题1分,共10分)请从每小题的四个备选答案中选择一个正确答案。
1、下列关于补码除法的叙述中,错误的是(③)。
①操作数用补码表示②符号位参加运算③根据余数的正负决定商值④根据商值决定下一步操作2、在DMA传送中,主存地址和读/写命令(③)。
①由CPU发出②由总线控制器发出③由DMA控制器发出④由设备控制器发出3、堆栈指针SP存放(①)。
①栈顶单元的地址②栈顶单元的内容③栈底单元的地址④栈底单元的内容4、下列关于静态存储器的叙述中,正确的是(①)。
①依靠触发器存储信息②常用作大容量主存③所存内容静止不变④读出后需重写5、CPU响应中断后,保存断点的操作由(②)完成。
①现行程序②硬件③中断服务程序④专用子程序6、串行接口是指(③)串行传送数据。
①接口与系统总线之间②接口的两侧③接口与外设之间④接口内部7、下列关于微程序控制方式的叙述中,错误的是(④)。
①一段微程序包含若干条微指令②一条微指令包含一步操作所需的微命令③微程序存放在CPU中④微命令用逻辑式表示8、下列选项中,能引起外部中断的事件是(①)。
①键盘输入②除数为0 ③浮点运算下溢④访存缺页9、下列寄存器中,可被CPU编程访问的寄存器是(②)。
①存储器地址寄存器MAR ②程序计数器PC③存储器数据寄存器MDR ④指令寄存器IR10、按数据传送格式划分,常将总线分为(②)。
①同步总线与异步总线②并行总线与串行总线③存储总线与I/O总线④系统总线与外总线二、判断题(每小题1分,共10分)共3页第1页下列说法有的正确,有的错误,请作出正/误判断。
1、在原码除法中,够减商1,不够减商0。
正2、在同步控制方式中,时钟周期长度也可以按需改变。
错3、可以用传送指令实现I/O操作。
正4、中断向量表中存放的是中断源的向量地址。
错5、PCI总线常用来连接运算部件和寄存器。
错6、DMA方式常用来实现外设与CPU之间的数据传送。
考研软件工程试题及答案

考研软件工程试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的主要目标是()。
A. 提高软件的可靠性B. 提高软件的生产率C. 降低软件的成本D. 以上都是答案:D2. 软件需求分析阶段的主要任务是()。
A. 确定软件的功能需求B. 确定软件的非功能需求C. 确定软件的界面需求D. 确定软件的性能需求答案:A3. 在软件测试中,黑盒测试的主要依据是()。
A. 程序内部逻辑B. 程序外部功能C. 程序设计文档D. 用户操作手册答案:B4. 软件开发过程中,需求变更可能导致()。
A. 项目延期B. 成本增加C. 质量下降D. 以上都是答案:D5. 面向对象分析与设计的主要概念不包括()。
A. 对象B. 类C. 模块D. 继承答案:C二、多项选择题(每题3分,共15分)1. 以下哪些是软件工程的基本原则?()A. 系统性原则B. 可维护性原则C. 可测试性原则D. 可扩展性原则答案:ABCD2. 软件项目管理包括以下哪些方面?()A. 时间管理B. 成本管理C. 风险管理D. 质量管理答案:ABCD3. 软件测试的目的是()。
A. 发现软件中的缺陷B. 验证软件是否满足需求C. 确保软件的可靠性D. 提高软件的性能答案:ABC三、简答题(每题5分,共20分)1. 简述软件生命周期的各个阶段。
答案:软件生命周期包括需求分析、设计、编码、测试、维护等阶段。
2. 什么是软件危机?它主要表现在哪些方面?答案:软件危机是指在软件开发过程中出现的一系列问题,如成本超支、进度延误、质量低下等。
3. 请解释什么是软件重构。
答案:软件重构是指在不改变软件外部行为的前提下,对软件内部结构进行调整,以提高其可理解性和可维护性。
4. 什么是敏捷开发?答案:敏捷开发是一种以人为核心、迭代、循序渐进的软件开发方法,强调团队合作、客户反馈和对变化的响应。
四、计算题(每题10分,共20分)1. 假设一个软件项目的开发周期为18个月,预计成本为1000万元。
研究生现代软件工程期末考试试题(推荐阅读)

研究生现代软件工程期末考试试题(推荐阅读)第一篇:研究生现代软件工程期末考试试题2013年研究生现代软件工程期末考试2014年6月20日某软件企业已经具有5年以上的开发经历,为了进一步拓展市场和提升市场竞争能力,在三个项目组以及SQA小组选拔了一些技术骨干作为SEPG小组成员,期望在公司内部推广CMM,争取3年之内能够通过CMM3的评级认证。
公司管理层要求一年内通过CMM2评级,第三年申请CMM3的资质认证并争取通过评审。
为此,三个项目组的项目经理与SEPG和SQA小组成员共同商讨如何能够满足近期和远期目标。
经了解,发现三个项目组的管理方式各不相同,开发方法也不统一:项目组A:采用传统的演化模型并使用基于数据流图的结构化方法进行系统开发;项目组B:采用基于面向对象方法的UP模型进行系统开发;项目组C:采用极限编程方法进行开发;问题一:SEPG要求各项目组的项目经理给出各自项目组的基于里程碑的软件开发过程及相应的文档编制计划。
问题二:为了CMM3的目标SEPG根据各小组的软件开发过程决定采用通用的面向对象方法定义一个公司级的统一软件工程过程并给出基于KPA组织过程定义必须执行的活动(Key Practices)。
问题三:SQA小组基于SPEG定义的公司级的软件工程过程,参考ISO的质量模型开始着手制定CMM3需要的针对软件需求分析阶段的质量评估模型及其必须的尺度度量准则。
除此之外,项目组A各人员组成的工资待遇如下:1、项目经理:12000;2、工程师_X:5000;3、工程师_Y:6500;4、工程师_Z:3000;公司规定项目经理有权掌握项目40%经费进行管理,其中包括项目组的人员成本和平时加班补贴(平时加班按工资的2倍支付,国家法定假日3倍支付)。
此时,公司交付给项目组A一个必须在2个月完成的项目,要求项目必须按照客户的具体需求完成分析、设计和开发任务,并能实现20%的利润,同时项目经理自己也打算给自己保留5%经费作为自己奖励。
软件工程硕士研究生课程试题及答案

1.试述数据、数据库、数据库系统、数据库管理系统的概念。
答:(1)数据(Data):描述事物的符号记录称为数据。
数据的种类有数字、文字、图形、图像、声音、正文等。
数据与其语义是不可分的。
(2)数据库(D砒aBase,简称DB):数据库是长期储存在计算机内的、有组织的、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
(3)数据库系统(DataBase Sytem,简称DBS):数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
(4)数据库管理系统(DataBase Management Sytem,简称DBMS):数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。
DBMS 的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。
2.数据库管理系统的主要功能有哪些?答:(1)数据库定义功能;(2)数据存取功能;(3)数据库运行管理;(4)数据库的建立和维护功能。
3.某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。
这些零件由不同的原材料制成,不同零件所用的材料可以相同。
这些零件按所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。
请用 E 一R 图画出此工厂产品、零件、材料、仓库的概念模型。
答:E-R图:产品组成零件储存制造材料存放仓库mn mnn 11n各实体的属性为:产品:产品号,产品名零件:零件号零件名原材料:原材料号,原材料名,,类别仓库:仓库号,仓库名各联系的属性为:产品组成:使用零件量零件制造:使用原材料量零件存储:存储量材料存放:存放量其DBTG模型:零件储存:零件号,仓库号,存储量仓库:仓库号,仓库名零件:零件号,零件名产品:产品号,产品名称原材料:原材料号,原材料名,类别,仓库号,存放量产品组成:产品号,零件号,使用零件量零件组成:零件号,原材料号,使用原材料量对应的关系模型为(其中有下横线的属性是主码属性):产品(产品号,产品名,仓库号)零件(零件号,零件名)原材料(原材料号,原材料名,类别,仓库号,存放量)仓库(仓库号,仓库名)产品组成(产品号,零件号,使用零件量)零件组成(零件号,原材料号,使用原材料量)零件储存(零件号,仓库号,存储量)4.试述SQL 语言的特点。
软件工程计算机考研题目及答案

软件工程计算机考研题目及答案### 软件工程计算机考研题目及答案#### 题目一:面向对象设计原则问题描述:在面向对象设计中,有五个基本的设计原则,它们是:1. 单一职责原则(Single Responsibility Principle, SRP)2. 开闭原则(Open/Closed Principle, OCP)3. 里氏替换原则(Liskov Substitution Principle, LSP)4. 接口隔离原则(Interface Segregation Principle, ISP)5. 依赖倒置原则(Dependency Inversion Principle, DIP)请简述每个原则的含义,并提供一个简单的示例来说明如何应用这些原则。
答案:1. 单一职责原则(SRP):一个类应该只有一个引起它变化的原因。
例如,一个类负责用户登录,不应该同时负责用户数据的存储。
2. 开闭原则(OCP):软件实体应对扩展开放,对修改关闭。
例如,通过使用抽象类或接口来允许扩展新功能,而不需要修改现有代码。
3. 里氏替换原则(LSP):子类对象必须能够替换其父类对象被使用,而不影响程序的正确性。
例如,如果有一个形状类,其子类是圆形,圆形对象应能替换形状对象而不破坏代码逻辑。
4. 接口隔离原则(ISP):客户端不应该被强制依赖于它不使用的接口。
例如,如果一个类只需要一个接口的一小部分功能,它应该只依赖于这个接口的子集。
5. 依赖倒置原则(DIP):高层模块不应该依赖于低层模块,两者都应该依赖于抽象。
例如,使用抽象类或接口作为依赖,而不是具体类。
#### 题目二:软件测试的分类问题描述:软件测试是确保软件质量的重要环节。
请列举并简述以下软件测试的分类:1. 白盒测试2. 黑盒测试3. 灰盒测试4. 单元测试5. 集成测试6. 系统测试7. 验收测试答案:1. 白盒测试:测试者需要了解程序内部逻辑,通过检查代码来发现错误。
考研武汉理工大软件工程真题

考研武汉理工大软件工程真题今年初始专业课略坑...题型全数是简承诺用题没选择没填空。
初试题目记的不全望其他童鞋补全纠正简答题1.考察大体概念、一个正确算法应该知足的几本要求和一个好的算法的标准。
2.链表和广义表的区别3.Next字符匹配方式4.最短路径的求法5.函数XXX(一个递归的函数,具体函数不记得了)求它算法实现的时间空间复杂度6.完全二叉树在第七层有十个叶接点、求该二叉树总接点数。
7.算法时间复杂度考察、问是不是存在一个算法的时间复杂度比O(....)小,且算法实现N个数的排序(具体是排序仍是求最大值什么的忘记了、时间复杂度也忘记了...)算法题:1.有两个无序二叉链表、实现链表的归并(有序仍是无序可能记错了终归就这几个肯定以后备考的童鞋们这两种情况都得掌握)2.判断平衡二叉树算法3.Kruskal算法求最小生成树算法具体实现(这个是真的不会做)PS:题目肯定还有几个简答题我想不起来了的望其他童鞋补充只能说此后要考理工的童鞋乃至任何其他院校要考数据结构的童鞋必然要做《算法与数据结构考研试题精析》就是传说中的1800题此刻的试题大部份都是里面的原题或是略加修改而来的!复试笔试部份:1.谓词逻辑命题的证明“所有计算机学院的研究生或是推免生或是统考生,所有推免生本科课程必然都学的好,但不是所有研究生本科课程都学的好,所以必然有统考生...”具体命题我也记不全了终归考的就是将这句话转化成为符号命题然后证明它的有效性。
2.<G , 。
>是一个群,存在<G , *>对任意a,b属于G 存在x属于G知足a。
b=a*x*b,证明<G , *>也是一个群3.面向对象程序设计里的大体方式和思想,类,属性,事件,事件处置的概念4.函数XXX(一个递归函数)写一个递归算法实现该函数,这个题大体算送分题5.这个题想不起来了...希望有人补充只记得最后结果要用文档输出6.windows环境下多线程编程实现某功能...这个题我完全懵了没温习到、原谅学渣一枚啊。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.什么叫软件工程?软件工程是如何克服软件危机的?答:软件工程是开发、运行、维护和修复软件的系统方法。
克服软件危机,需要认真分析软件危机的原因,探索用工程的方法进行软件生产的可能性,即用
现代工程的概念、原理、技术和方法进行计算机软件的开发、管理、维护和更新。
2.什么是软件的生命周期模型?它主要由哪些模型?
答:软件生命周期是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统
设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段。
3.软件工程过程包括那些过程?
答:(1)软件工程目标:生产具有正确性、可用性以及开销合宜的产品。
(2)软件工程过程:生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。
软件工程过程主要包括开发过程、运作过程、维护过程。
它们覆盖了需求、设计、实现、确认以及维护等活动。
需求活动包括问题分析和需求分析。
概要设计建立整个软件系统结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义。
详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。
实现活动把设计结果转换为可执行的程序代码。
确认活动贯穿于整个开发过程,实现完成后的确认,保证最终产品满足用户的要求。
维护活动包括使用过程中的扩充、修改与完善。
伴随以上过程,还有管理
过程、支持过程、培训过程等。
(3)软件工程的原则是指围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵循的原则。
4.软件质量的定义是什么?
答:软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的
软件都应具有的隐含特征的程度。
5.黑箱测试原理是什么?测试目的是什么?
答:把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需
求规格说明书。
测试目的:检查程序的功能是否符合它的功能说明。
6.白箱测试原理是什么?测试目的是什么?
答:把测试对象看做一个透明的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择
测试用例,对程序所有逻辑路径进行测试。
测试目的:通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。
7.简述UML的含义及在软件工程中的作用。
答:UML是一种标准化的图形建模语言,它是面向对象分析与设计的一种标准表示。
由:视图,图, 模型元素,通用机制等几个部分构成。
UML从考虑系统的不同角度出发,定义了用案图、类图、
对象图、状态图、活动图、序列图、协作图、构件图、部署图等9种图。
作用:在现代软件工程中,需求到详细设计是非常重要的环节,后续的编码、测试、维护都只是
按照前面的规划计划进行,一个非常详细的设计,利用UML几乎能将整个的代码通过 UML表示
出来。
8.简述数据流图DFD的定义及其在软件工程中的作用。
答:从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
作用:1、便于用户表达功能需求和数据需求及其联系;2、便于两类人员共同理解现行系统和规
划系统的框架;3、清晰表达数据流的情况;4、有利于系统建模。
9.结合软件工程所学知识,进行淘宝、京东的用户需求解析(至少买家的功能需求进行分析)。
完成UML的用例图、数据流图,并进行对比。
用UML工具画出买家类图、买家的用例图(提示:可根据买家的信息,可进行的购物功能,付款的方式,购物的方式和流程等进行分析),并以阐述他们之间的优缺点。
数据库打开网页选购商品
会员注册
Y
正确
填写详细联系信
息,提交
卖家看到信息,与
物流方联系,确认
送货
数据库
客户收到商品检查
商品交易结束。