软件工程考试题-2012

合集下载

计算机二级考试软件工程题库及答案

计算机二级考试软件工程题库及答案

计算机二级考试软件工程题库及答案一、选择题1. 下列哪个不是软件工程的基本特征?A. 可靠性B. 可维护性C. 可重复性D. 可移植性答案:C2. 软件需求分析的目的是什么?A. 建立软件体系结构B. 确定软件需求C. 设计软件模块D. 编写软件代码答案:B3. 下列哪个不是软件开发生命周期的阶段?A. 需求分析B. 设计C. 测试D. 销售答案:D二、填空题1. 软件工程的目标是提高软件的_________。

答案:质量2. 软件需求分析阶段的主要任务是对用户的需求进行_________。

答案:分析3. 软件测试的目的是为了发现软件中的_________。

答案:缺陷三、简答题1. 什么是软件开发生命周期?请简要描述各个阶段的主要任务。

答案:软件开发生命周期指的是软件从开始开发到结束的整个过程。

主要阶段包括需求分析、设计、编码、测试和维护。

需求分析阶段的主要任务是确定用户的需求;设计阶段的主要任务是根据需求设计软件的结构和模块;编码阶段的主要任务是根据设计编写软件代码;测试阶段的主要任务是发现并修复软件中的缺陷;维护阶段的主要任务是对软件进行更新和修复。

2. 请简要说明软件工程的重要性。

答案:软件工程的重要性体现在以下几个方面。

首先,软件工程可以提高软件的质量,确保软件能够满足用户的需求。

其次,软件工程可以提高软件的可维护性,使得软件可以持续更新和修复。

最后,软件工程可以提高软件的开发效率,节省时间和资源。

以上是计算机二级考试软件工程题库及答案的内容。

希望对您有所帮助!。

软件工程师考试题库(含答案)

软件工程师考试题库(含答案)

软件工程师考试题库(含答案)以下是一些软件工程师考试的常见题目及其答案:1. 什么是软件工程?软件工程是一门系统性、规范性的学科,涉及开发和维护软件的原则、方法和工具。

2. 软件生命周期包含哪些阶段?软件生命周期包含需求分析、设计、编码、测试和维护等阶段。

3. 请解释需求分析阶段的重要性。

需求分析阶段是确定软件系统的需求和功能的过程,它对于后续的设计和开发非常重要。

在需求分析阶段,开发人员需要与用户明确需求,确保开发出满足用户需求的软件系统。

4. 请解释软件设计模式是什么。

软件设计模式是一套被广泛接受并经过验证的解决软件设计问题的经验法则。

它们是一些被认为有效的设计解决方案的模板。

5. 什么是软件测试?软件测试是检查和评估软件系统是否满足需求和预期的过程。

它有助于发现和修复软件中的错误和缺陷。

6. 解释一下集成测试和单元测试的区别。

单元测试是针对软件的最小可测试单元进行的测试,通常是对函数、方法或类进行测试。

而集成测试是将多个单元进行组合,并测试它们之间的交互是否正确。

7. 请简要介绍软件维护的类型。

软件维护包括以下类型:纠错性维护(修复错误)、适应性维护(适应环境变化)、完善性维护(改进性能和可用性)和预防性维护(预防潜在问题)。

8. 请说明软件工程师需要具备的技能和素质。

软件工程师需要具备良好的编程能力、系统思维、沟通能力和问题解决能力。

此外,他们还应具备团队合作和持续研究的精神。

以上是关于软件工程师考试题库的一些题目及答案,希望能对您的学习和准备有所帮助。

请自行补充更多题目和答案以扩展题库。

2012年软件开发考试复习题

2012年软件开发考试复习题

一、单项选择题(本大题共10 小题,每小题2 分,共20 分)CBBCA CDCAD1.第三代程序设计语言属于()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.AD/Cycle 中的需求分析阶段的任务是()A.充分了解用户需求B.制定发展规划C.建立逻辑模型D.完成系统总体设计9.决定购置还是自行开发软件开发工具,要考虑多种因素,其中最基本的是()A.待开发软件的性质与要求B.软件开发人员希望从开发工具得到的帮助C.待开发软件的工作平台D.软件开发人员的知识背景10.对应用领域的特点依赖最多的软件是()A.操作系统B.数据库管理系统C.高级语言D.软件开发工具二、多项选择题(本大题共10 小题,每小题2 分,共20 分)11.软件开发工具能够帮助开发人员(ABCE)A.明确需求B.提高编程效率C.完善文档D.维修硬件E.加强项目管理12.以下软件属于软件开发工具范围的有(ABD )A.报表生成器B.集成的软件开发环境C.防病毒软件D.数据字典管理系统E.游戏软件13.在可视化程序设计中,运用的技术手段包括(BCE)A.编辑与绘图B.指点与卡嗒C.删剪与粘贴D.显示与打印E.拖拉与扔下14.在软件工程中,为实现表达方式的标准化,需要统一规格的(ABC )A.数据流图B.数据字典C.模块结构图D.程序设计语言E.数据结构15.在SAA 的用户界面中,包括的内容有(ABCE)A.键盘操作B.鼠标操作C.数据录入D.资源分配E.帮助系统16.项目管理的基本目标有(BDE)A.尽量提高产品的数量B.有效地控制产品的质量C.保证安全,提高保密程度D.保证整个系统按预定的进度完成E.合理利用各种资源,尽量减少资料浪费和闲置17.属于SAA 对外系统的通信接口提供的功能是(ACDE )A.数据库查询B.数据流C.代码生成D.作业管理E.数据安全控制18.在信息库(Repository)中应存放的信息有(BDE )A.系统状况B.软、硬件资源的特点C.系统设计成果D.运行与测试状况记录E.项目管理与版本管理信息19.为了减少选择软件开发工具的盲目性,必须考虑(ABCE )A.是为了一个项目还是为了一批项目而购置工具B.在哪些工作阶段使用工具C.工具将供哪些人使用D.工具的销售情况E.工具在什么软、硬件环境下运行20.目前,软件开发工具的动向是(ABDE)A.智能化B.网络化C.商品化D.一体化E.标准化三、填空题(本大题共16 小题,每空1 分,共20 分)21.需求分析阶段产生的文档是软件功能说明书。

2012软件工程期末试题与答案

2012软件工程期末试题与答案

考题一.选择题(每题1.5分,共30分)( )1. 软件质量因素不包括。

A.正确性B.高性能C.可测试性D.可理解性( )2. 软件可行性研究实质上是要进行一次需求分析、设计过程。

A.简化、压缩的B.详细的C.彻底的D.深入的( )3. 以下哪个软件生存周期模型是一种风险驱动的模型A.瀑布模型B.增量模型C.螺旋模型D.喷泉模型( )4. 可行性分析中,系统流程图用于描述。

A.当前运行系统B.当前逻辑模型C.目标系统D.新系统( )5. 结构化分析建立功能模型的工具是A.DFDB.判定树/判定表C.SCD.结构化语言( )6. 检查软件产品是否符合需求定义的过程称为A.确认测试B.集成测试C.系统测试D.单元测试( )7. 在整个软件维护阶段所花费的全部工作中,所占比例最大的是A.校正性维护B.适应性维护C.完善性维护D.预防性维护( )8. 通信内聚是指。

A.把需要同时执行的动作组合在一起形成的模块B.各处理使用相同的输入数据或者产生相同的输出数据C.一个模块中各个处理元素都密切相关于同一功能且必须顺序执行D.模块内所有元素共同完成一个功能,缺一不可( )9. 一个只有顺序结构的程序,其环形复杂度是A.0B.1C.3D.5( )10. 下述四个能力成熟度等级,级别最高的是A.已定义级B.优化级C.可重复级D.已管理级( )11. 结构化程序设计,主要强调的是A.程序的执行效率B.模块大小C.程序的可理解性D.模块关系( )12. 软件调试技术包括A.边界值分析B.演绎法C.循环覆盖D.集成测试( )13. 需求分析中开发人员要从用户那里了解A.软件做什么B.用户使用界面C.输入的信息D.软件的规模( )14. 数据字典是对数据定义信息的集合,它所定义的对象都包含于。

A.数据流图B.程序框图C.软件结构D.方框图( )15. 面向对象的主要特征除唯一性、继承性、多态性外,还具有。

A.封装性B.移植性C.完整性D.兼容性( )16. 关于软件维护的说法错误的是。

2012软件工程复习题(附答案)

2012软件工程复习题(附答案)

《软件工程》复习题一、单项选择题1. ( C )是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。

A.多态B.继承C.封装D.消息2.Jackson方法是在软件开发过程中常用的方法,使用Jackson方法时,可以实现( A )A.从数据结构导出程序结构B.从模块结构导出数据结构C.从数据流图导出初始结构图D.从模块结构导出程序结构3.下列模型属于成本估算方法的有(A )A.COCOMO模型B.McCall模型C.McCabe度量法D.时间估算法4.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称为( C )A.软件工程B.软件周期C.软件危机D.软件产生5. 在软件生存周期中,(D)阶段所占用的工作量最大,约70%。

A.分析B.设计C.编码D.维护6. 软件测试的目的是(B)。

A.评价软件的质量B.发现软件的错误C.找出软件中所有错误D.证明软件是正确的7.模块的内聚性最高的是( D )A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚8.在SD方法中全面指导模块划分的最重要的原则是( B )A.程序模块化B.模块独立性C.模块低耦合D.模块高内聚9.下列属于维护阶段的文档是( C )A.软件规格说明B.用户操作手册C.软件问题报告D.软件测试分析报告10.快速原型模型的主要特点之一是( D )A.开发完毕才见到产品B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件D.及早提供工作软件11.因计算机硬件和软件环境的变化而作出的修改软件的过程称为( B )A.教正性维护B.适应性维护C.完善性维护D.预防性维护12.类库这种机制是( A )级别的信息共享。

A.不同应用B.不同类C.同一应用D.同一类13.只有单重继承的类层次结构是( C )层次结构。

A.网状型B.星型C.树型D.环型14.软件详细设计主要采用的方法是( D )A.模块设计B.结构化设计C.PDL语言D.结构化程序设计15.下列关于JSP方法不正确的说法是( D )A.JSP方法主要用于规模不大的数据处理系统B.JSP方法不明确的划分软件概要设计和详细设计的两个阶段C.JSP方法适用于输入数据和输出数据之间有对应关系的问题求解D.JSP方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。

软件测试期末试题(A卷)(英文)

软件测试期末试题(A卷)(英文)

软件学院级软件工程专业(2012-1)《软件测试》期末试题试卷(A)(考试形式:闭卷考试时间:2小时)考试作弊不授予学士学位方向:___________ 姓名:______ 学号:成绩:____________注意:答案一定要写在答卷中,写在本试题卷中不给分。

答题时注明各题题号,并在答题纸上写上姓名和学号。

本试卷要和答卷一起交回。

一、选择题(每题3分)1. How many statements are true?(1) You can perform dynamic black-box testing without a product specification orrequirements document.(2) If your product development is in a hurry, you can skip module testing and proceeddirectly to integration testing.(3) Threat modeling is an informal process done by the software testers to decide where bestto apply their tests for security vulnerabilities.Answers: A) 0 B) 1 C) 2 D) 32. How many statements are true?(1) Regression tests show if all defects have been resolved.(2) Regression tests are typically well-suited for test automation.(3) Regression tests should be performed in integration testing.Answers: A) 0 B) 1 C) 2 D) 33. How many statements are true?(1) All software has a user interface and therefore must be tested for usability.(2) Compatibility is a product feature and can have different levels of compliance.(3) Always design your black-box test cases first.Answers: A) 0 B) 1 C) 2 D) 34. How many statements are true?(1) With the big-bang model of software development, we have lower cost of testing.(2) An invasive(侵入性) tool is the best type because it operates closest to the softwarebeing tested.(3) A good tester relentlessly strives(坚持不懈地追求) for perfection.Answers: A) 0 B) 1 C) 2 D) 35. How many statements are true?(1) Software testing is mainly needed to improve the quality of the developer’s work.(2) Rigorous testing and fixing of defects found can help reduce the risk of problemsoccurring in an operational environment.(3) Rigorous testing is sometimes used to prove that all failures have been found.Answers: A) 0 B) 1 C) 2 D) 36. Which statement below BEST describes non-functional testing?A) The process of testing an integrated system to verify that it meets specifiedrequirements.B) The process of testing to determine the compliance of a system to coding standards.C) Testing without reference to the internal structure of a systemD) Testing system attributes, such as usability, reliability or maintainability.7. Which one of the review types below are the BEST fitted (most adequate) options to review source code.A) Formal reviewB) InspectionC) Peer reviewD) Technical Review8. One of the test goals for the project is to have 100% decision coverage. The following three test cases have been executed for the control flow graph shown below.Test case 1 covers path: A, B, D, E, G.Test case 2 covers path: A, B, D, E, F, G.Test case 3 covers path: A, C, F, C, F, C, F, G.AB CDE FGWhich of the following statements related to the decision coverage goal is correct?A) Decision D has not been tested completely.B) 100% decision coverage has been achieved.C) Decision E has not been tested completely.D) Decision F has not been tested completely.9. An e mployee’s bonus is to be calculated. It cannot become negative, but it can be calculated to zero. The bonus is based on the duration of the employment. An employee can be employed for less than or equal to 2 years, more than 2 years but less than 5 years, 5 to 10 years, or longer than 10 years. Depending on this period of employment, an employee will get eitherno bonus or a bonus of 10%, 25% or 35%.How many equivalence partitions are needed to test the calculation of the bonus?A) 3 B) 5 C) 2 D) 410. Which one of the following techniques is structure-based?A) Decision testing (Logical Coverage).B) Boundary value analysis.C) Equivalence partitioning.D) State transition testing.二、简答题(每题6分)1. Why would a software tester like the spiral or iterative model better than the others?2. Why is it impossible to test a program completely?3. Explain what's wrong with this specification statement: When the user selects the Compact Memory option, the program will compress the mailing list data as small as possible using a Huffman-sparse-matrix approach.4、If you're testing a program's ability to print to a printer, what generic test-to-fail test cases might be appropriate?5、What are the three basic states of a software bug's life cycle and the two common additional states?三、应用题(每题20分)1、White-box(1) Give a flow chart for the following source code.(2) Analyze the basis path for the flow chart, and list the basis test paths.(3) Design a suite of test cases to coverage all these paths.Program list: binary search - c (simple)1. /**2. #include <stdio.h>3. /**4. * binary search (simple)5. *6. * @param7. * arr pointer of array8. * @param9. * len length of array10. * @param11. * x target to search12. *13. * @return14. index of target in the array,return -1 if not found,15. */16. int bin_search(int *arr,int len,int x) {17. // indexs18. int start = 0,end = len-1,middle;19. while (end >= start) {20. middle = (start + end) >> 1;21. if (*(arr+middle)==x) {22. return middle;23. } else if(x < *(arr+middle)) {24. end = middle - 1;25. } else {26. start = middle + 1;27. }28. }29. // not found30. return -1;31. }2、Black-boxDesign functional test cases for the following QQ login form.(1)Design the effective and efficiency test cases.(2)Explain the reasons why we select these test cases.。

下半年软考系统集成项目管理工程师上午下午试题解析及答案

下半年软考系统集成项目管理工程师上午下午试题解析及答案

2012 年下半年软考系统集成项目管理师上午试题解析及答案●某系统集成企业成立于 2010 年 6 月,注册资金 200 万元人民币,截止2012 年 8 月有 5项软件进行了著作权登记,但均未进行软件产品登记,该企业于 2012 年 9 月 1 日向资质评审机构提出计算机信息系统集成三级企业资质的申请,根据《计算机信息系统集成资质等级评定条件(2012 年修定版)》,下面说法正确的是(1)。

(1)A. 该企业已达到三级的评定条件B. 该企业成立时间不符合三级资质的要求C. 该企业因未取得软件产品登记而不符合三级资质要求D. 该企业的注册资金不符合三级资质要求●根据《计算机信息系统集成资质等级评定条件(2012 年修定版)》,关于计算机信息系统集成项目管理人员资质的人数要求,下面说法不正确的是(2)。

(2)A.一级资质企业要求具有计算机信息系统集成项目管理人员资质的人数不少于 30 名,其中高级项目经理人数不少于 10 名B. 二级资质企业要求具有计算机信息系统集成项目管理人员资质的人数不少于 18 名,其中高级项目经理人数不少于 4 名C. 二级资质企业要求具有计算机信息系统集成项目管理人员资质的人数不少于 5 名,其中高级项目经理人数不少于 2 名D. 四级资质企业要求具有计算机信息系统集成项目管理人员资质的人数不少于 2 名●C2C 电子商务模式中,常用的在线支付方式为(3)。

(3)A.电子钱包B.第二方支付C. 第三方支付D.支付网关●政府机构利用 Intranet 建立有效的行政办公和员工管理体系,以提高政府工作效率服务和公务员管理水平,这种电子政务的模式是(4)。

●在下列技术中,(5)提供了可靠消息传输、服务接入、协议转换、数据格式转换、基于内容的路由器等功能,能够满足大型异构企业环境的集成要求。

(5)A.ESB B.RUP C.EJB D.PERT●信息系统工程监理活动被概括为“四控、三管、一协调”,其中三管是指(6)。

软件工程试卷与答案

软件工程试卷与答案

石家庄邮电职业技术学院201X 级2017/2018(2)学期考试试卷( A )课程名称:软件工程任课教师:考试时间: 120 分钟一、判断题(1 X 20=20分,正确的划√,错误的划×,请将答案画在题后表格内)。

1、模块的作用范围应该在模块的控制范围之内。

2、检查模块间的接口和通信关系的测试过程称为集成测试。

3、完善性维护占各种维护总量的一半以上。

4、在DFD中,最高层图称为0层图。

5、软件的维护与硬件的维护其本质不相同。

6、语句覆盖法属于黑盒测试方法。

7、在规定的条件下和规定的时间间隔内,软件实现其规定功能的概率称为可移植性。

8、应用程序原来使用Oracle8.0.5版本,现在需要在Oracle9i版本下运行,为此而对程序的修改,这一类维护属于适应性维护。

9、程序员应该自己测试自己编写的程序。

10、使用黑盒法进行测试时,测试用例应根据软件需求规格说明书设计。

11、在编程过程中要多用中间变量。

12、白盒测试法主要在验收测试中使用。

13、模块间的耦合越弱越好。

14、测试程序就是调试程序。

15、路径覆盖的测试功能最强,语句覆盖的功能最弱。

16、白盒法和黑盒法最大的不同在于测试用例的设计方法不同。

17、α测试是由用户在开发环境下进行,而β测试是由用户在实际使用环境下进行。

18、Putnam模型常用于软件进度管理。

19、对象图是一种静态图。

20、甘特图可用于软件项目的成本控制。

请将本题答案填入下表:二、单选题(1X15=15分)1、软件工程的目标是()A. 生产满足用户需要的产品B. 生产正确的、可用性好的产品C. 以较少的投入、最快的时间生产出高质量的软件D. 以合适的成本生产满足用户需要的产品2、软件可行性研究的目的是()A. 证明软件开发项目不可行B. 证明软件开发项目可行C. 说明软件开发项目值得或不值得做D. 确定软件开发项目要不要做3、数据流图的每个加工都必须有()。

A.一个输入和输出数据流 B.一个输入数据流C.一个输出数据流 D.一个输入或输出数据流4、评价模块独立性的标准是()。

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

河南师范大学计算机与信息工程学院2013―2014学年度 2010级计算机科学与技术专业期末考试《软件工程》A 卷
1. 软件:按照特定顺序组织的计算机数据和指令的集合
软件生命周期模型:指人们为开发更好的软件而归纳总结的软件生命周期的典型实践参考 软件危机:(泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题。


2. 软件工程:应用计算机科学、数学及管理科学等原理开发软件的工程。

它借鉴传统工程的原则、方法,以提高质量,降低成本为目的。

3. 结构化分析方法:强调开发方法的结构合理性以及所开发软件的结构合理性的软件开发方法。

4. 软件工程三要素:方法、工具和过程。


5. 软件开发工具:支持软件开发人员开发和维护软件活动而使用的软件(指的是很方便地把一种编程语言代码化并编译执行的工具。

其中主要的语言开发工具有几大类:java 开发工具、net 开发工具、delphi 开发工具等。


1. 在进行了可行性分析后,需求分析就只需要解决目标系统的设计方案(X )
2. SA 方法是面向数据流,建立在数据封闭原则上的需求分析方法(√ )
3. 模块的设计要力求做到高内聚、低耦合(√ )
4. 软件开发、设计几乎都是从头开始,成本和进度很难估计。

(√ )
5. 类图用来表示系统中类和类之间的关系,它是系统动态结构的描述(X )
6. 划分模块可以降低软件复杂度和工作量,所以应该将模块划分得越小越好。

(X )
7. 一个好的开发人员应具备的素质和能力包括善于与周围人员团结协作,建立良好的人际关系,善于听取别人的意见。

( √ )
8. 用于需求分析的软件工具,应该能够保证需求的正确性,即验证需求的一致性、完整性、现实性和有效性。

( √)
9. 缺乏处理大型软件项目的经验。

是产生软件危机的唯一原因。

( X )
10. 信息建模方法是从数据的角度来建立信息模型的,最常用的描述信息模型的方法是E -
R 图。

(√)
11. 纠错性维护是改正运行期间发现的潜伏错误。

(√)
12. 软件复杂性不能反映出软件的可理解性、模块化、简单性等属性。

(X )
13. 设计用户界面只需要计算机科学的理论和知识,而不一定需要认知心理学以及人-机工
程学、语言学等学科的知识。

(X )
14. 第四代语言(4GL )还局限在某些领域内,如数据库查询语言。

(√) 15. 用穷举测试是较现实的测试方法。

(X )
16. 测试不能找出软件中存在的所有错误,因此软件设计完成后可以不进行测试。

(X ) 17. 软件开发过程中不存在所谓的风险,因此分析分析软件开发过程不重要。

(X) 18. 软件开发过程中,文档是非常重要的,它既是软件开发过程中阶段结束标记,也是软件
设计、测试、维护等工作的依据。

(√)
19. 软件是手工产品,软件的开发只能定制,所有软件费用较高。

(√) 20. 没有开发经验的程序员,不能开发出高质量的软件。

( X )
一、概念解释(每题2分,共10分)
二、判断题(每题1分,共20分)
姓名:________ 学号:__________ 年级:______________ 专业:_____________
…….……………………….密…………………封…………………线…………………………
1. 什么是需求分析?需求分析阶段的基本任务是什么?
需求分析:开发人员准确地理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的
2. 说明软件测试在软件开发阶段的地位和作用,比较测试和调试的异同点。

答:软件测试是保证软件质量的关键步骤,它是对软件规格说明、设计和编码的最后复审,对软件的可靠性有着非常重要的影响。

(2分) 测试是为了发现程序中的错误而执行程序的过程。

(1分) 调试是在测试发现错误之后排除错误的过程。

(1
分) 测试的目标是发现软件中的错误,但发现错误并不是最终目的,通过测试发现的错误之后必须诊断并改正错误,这就是调试的目的,调试是测试阶段最困难的工作。

(2分)
(1、保证软件质量的关键步骤,是对软件规格说明、设计和编码的最后复审。

2、测试是为了发现错误、调试是为了改正错误。


3. 为什么说瀑布模型是软件生存周期中最基本的模型,说明瀑布模型的优、缺点 瀑布模型是最早出现的软件开发模型,在软件工程中占有重要的地位,它提供了软件开发的基本框架。

瀑布模型的优点:
开发的各个阶段比较清晰 强调早期计划及需求调查 适合需求稳定的产品开发 瀑布模型的缺点:
依赖于早期需求调查,不适应需求的变化 单一流程,不可逆
风险往往迟至后期才显露,失去及早纠正的机会 测试仅是编码的后一阶段
4. 软件危机的表现、产生软件危机的原因,及软件危机的解决方法? 表现:.开发的软件不能满足用户的要求
.软件费用和进度失控 .软件可维护性差 软件的生产率低
软件规模的增长,导致软件复杂度增加 软件文档不完整 原因:软件规模越来越大
软件开发管理困难 软件开发技术落后 软件开发费用不断增加 生产方式落后 开发工具落后
解决方法:(1) 充分吸收和借鉴人类长期以来从 事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。

在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。

(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。

(3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。

将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发环境。

总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施:(用工程的、科学的概念、原理、技术和方法,进行软件的开发、管理和维护。


5. 软件在使用过程中维护有哪几种? 1)改正性维护 2)完善性维护 3)适应性维护 4)预防性维护
1、软件工程的目标是什么?(10分)
软件工程的目标是:在给定成本、进度的前提下,开发出具有适用性、有效性、可修改性、可靠性、可理解性、可维护性、可重用性、可移植性、可追踪性、可互操作性和满足用户需求的软件产品。

追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。

◆ (付出较低的开发成本 ◆ 达到要求的软件功能 ◆ 取得较好的软件性能 ◆ 开发的软件易于移植 ◆ 需要较低的维护费用
◆ 能按时完成开发,及时交付使用

2. 画出银行存取款过程的0层数据流图。

问题的描述为:储户用存折取款。

首先填写取款单,根据“帐卡”中的信息检验取款单与存折,如有问题,将问题反馈给用户,否则,登陆“储户存储数据库”,修改相应的数据,并更新“帐卡”,同时发出付款通知,出纳向储户付款。

(10分)
三、简答题(每题3分,共15分)
四、综合题(共55分)
3.试述对用户要求没有完整的认识就匆忙着手编写程序是许多软件开发工程失败的主要原因。

(10分)
1、没有反映用户需求的文档和很好的总体设计、详细设计,使软件的可维护性差
2、后期增加需求,可能需要修改软件结构,使工作量大量增加
3、不能满足用户的需求
4、要满足用户需求必须大量的打补丁,造成软件质量下降
5、超出费用预算和工期延误
说明需求分析在软件设计过程中的重要性,而需求的困难性表现在那些方面?
需求分析是软件开发过程中最重要、最关键的工作,决定了软件开发的最终成败与效益。

需求分析可以使得开发和测试更能够了解客户的需求,把一些技术难点和可能遇到的难点问题提出来,尽早解决,并且达到一致,便于以后的开发和测试
客户对功能的具体要求并不完全清楚;
客户可能忘记了某些重要的功能需求;
客户不能确定数据的格式;
客户无法理顺数据之间的关系;
软件工程师对数据的理解与客户的差异较大;
软件工程师不知道缺少了重要的数据甚至功能;
软件工程师的数据处理不符合客户的习惯
4.针对右下图给出的程序流程图,请写出所有的条件组合,并给出一组合理的测试用例,
覆盖所有的条件组合。

(10)
124,125,134,135,
下面组测试用例,可以满足路径覆盖票准a=2,b=0,x=2 覆盖路径124,覆盖条件1和
a=2,b=1,x=1 覆盖路径134,覆盖条件2和
a=1,b=1,x=1 覆盖路径135,覆盖条件4和
a=3,b=0,x=1 覆盖路径125,覆盖条件1和
5. 结合自己的实际经验和体会,谈谈对软件开发和软件管理的体会(15分)
1. 软件领域中的知识在于积累。

2. 做软件开发,就类似算数学题和世界杯足球赛一样:重在结果,而不在乎过程。

3. 软件服务于人类,软件是在解决一些生活中的问题和错误,问题决定解决方案。

第一,相信团队合作才可能把项目做到最好。

3、要有很强的沟通与协调能力。

4、建立一个有凝聚力的高效团队。

5、能真正地理解软件管理。

6、无论多辛苦,都要持之以恒地工作。

相关文档
最新文档