《软件工程与项目管理》期末试卷及参考答案
- 格式:doc
- 大小:137.00 KB
- 文档页数:9
软件工程(期末试题及答案)软件工程(期末试题及答案)一、选择题(共20题,每题2分,共40分)1. 在软件工程中,以下哪一项不是七大工程()。
A. 软件需求B. 软件设计C. 软件开发D. 软件维护答案: D2. 软件需求分析的目的是()。
A. 理解用户需求B. 设计软件架构C. 编写用户手册D. 测试软件功能答案: A3. 软件开发过程中的迭代模型,不存在的是()。
A. 瀑布模型B. 敏捷开发模型C. 螺旋模型D. 喷泉模型答案: D4. 以下哪个不是软件测试的目的()。
A. 发现错误和缺陷B. 验证软件是否满足需求C. 评估软件的可靠性和质量D. 优化软件的性能答案: D5. 软件项目管理中,以下哪种方法适用于大型复杂项目()。
A. 瀑布模型B. 敏捷开发C. 增量模型D. 螺旋模型答案: D6. 软件开发生命周期中,以下哪个过程不属于()。
A. 需求分析过程B. 设计过程C. 编码过程D. 运维过程答案: D7. 在软件工程中,什么是软件测试()。
A. 软件开发的最后阶段B. 发现软件缺陷的过程C. 确保软件质量的控制过程D. 软件最终验收的流程答案: C8. 以下哪种测试方法旨在评估软件在不同负载下的性能和稳定性()。
A. 单元测试B. 集成测试C. 系统测试D. 性能测试答案: D9. 软件开发中,以下哪个活动不属于软件配置管理()。
A. 版本控制B. 配置变更控制C. 缺陷管理D. 代码评审答案: D10. 以下哪个是敏捷开发的基本原则()。
A. 面对面交流胜过文档B. 完全按照计划进行C. 精确的需求分析是关键D. 严格的变更控制是必要的答案: A11. 下列哪个不属于软件配置管理的内容()。
A. 变更控制B. 版本控制C. 缺陷管理D. 运维管理12. 软件的可靠性是指()。
A. 软件是否能正常运行B. 软件是否符合用户需求C. 软件运行期间不出现故障的能力D. 软件功能的完善程度答案: C13. 下列哪个不属于软件开发的7大原则()。
《软件工程》期末试卷(一)(满分100分)考试时间:120分钟(可根据具体情况适当调整)1.单项选择题(每题2分,共20分)(1)以下哪一项不属于软件工程三要素()。
A.过程B. 方法C. 工具D. 计划(2)以下哪一项不属于软件管理过程()。
A. ISO9000B. CMMC. IEEED. 软件企业文化(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)用例之间的关系有()。
A. 扩展关系、协助关系B. 异步关系、同步关系C. 顺序关系、结构关系D. 包含关系、扩展关系2.填空题(每题2分,共20分)(1)需求分析员参与客户需求调研,撰写________________。
(2)_______________是软件策划的核心、重点与难点。
(3)软件由程序、数据和______________组成。
(4)______________是软件设计的基础,______________是软件开发的核心。
(5)需求分析分为两个阶段,_______________阶段和需求规约阶段。
(6)对象图的组成元素包括对象和______________。
《软件工程》期末试卷及答案一、选择题(每题2分,共20分)1. 下列哪项不是软件工程的基本目标?A. 提高软件的生产率B. 提高软件的质量C. 减少软件的开发成本D. 提高软件的可维护性答案:D2. 软件工程的三要素不包括以下哪项?A. 方法B. 工具C. 管理模式D. 知识库答案:D3. 下列哪种软件过程模型适用于需求不明确的项目?A. 水平模型B. 增量模型C. 迭代模型D. 瀑布模型答案:C4. 在软件项目管理中,项目经理负责以下哪项工作?A. 软件需求分析B. 软件设计C. 软件编码D. 项目计划与组织答案:D5. 以下哪种编程语言不属于面向对象编程语言?A. JavaB. C++C. PythonD. C答案:D6. 下列哪种软件测试方法属于静态测试?A. 单元测试B. 集成测试C. 系统测试D. 代码审查答案:D7. 以下哪种软件维护类型占总维护工作量的比例最大?A. 适应性维护B. 完善性维护C. 纠错性维护D. 预防性维护答案:C8. 下列哪种软件文档是软件开发过程中必须编写的?A. 项目计划书B. 需求规格说明书C. 设计文档D. 测试报告答案:B9. 下列哪种软件工程方法学强调开发过程的结构化和规范化?A. 结构化分析方法B. 面向对象分析方法C. 原型法D. 敏捷开发方法答案:A10. 以下哪个软件工具不属于CASE(计算机辅助软件工程)工具?A. 代码生成器B. 代码审查工具C. 项目管理工具D. 数据库管理系统答案:D二、填空题(每题2分,共20分)11. 软件工程的基本原则包括抽象、封装、模块化、层次化和信息隐藏等,其中______是一种将信息、数据和操作封装在一起的方法。
答案:封装12. 软件开发过程分为需求分析、设计、编码、测试和维护五个阶段,其中______阶段是软件开发过程中的核心阶段。
答案:设计13. 代码行(LOC)和功能点(FP)是衡量软件规模的两个指标,其中______是一种基于软件功能需求的规模度量方法。
中央财经大学2023-2023年度第一学期期末考试《IT项目管理》课程试卷一、单项选择题(合计30题, 30分)1.需求跟踪矩阵旳作用是____。
A.可以体现需求与后续工作成果之间旳对应关系B.固化需求, 防止变更C.明确项目干系人对于需求旳责任D.对于需求复杂旳项目, 可以用来明确需求2. 有关需求管理旳描述, 不对旳旳是()。
A. 需求管理要保证利益有关方对需求旳一致理解B. 需求管理要获取顾客需求并定义产品需求C. 需求管理要与需求开发紧密合作D. 需求管理要获得利益有关方对需求旳一致承诺3. 在需求变更管理中, CCB旳职责是()。
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、某个项目第一年旳预算是150万美元, 次年旳预算是300万美元, 第三年旳预算是300万美元, 第四年旳预算是80万美元。
一、填空题(每空1分, 共20分)1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运行与维护阶段。
2.按软件旳功能进行划分, 软件可以划分为系统软件、支撑软件和应用软件。
3.可行性研究重要集中在如下四个方面经济可行性、技术可行性、法律可行性和抉择。
4.顾客界面旳可使用性是顾客界面设计最重要旳也是最基本旳目旳。
5.常见旳软件概要设计措施有3大类: 以数据流图为基础构造模块构造旳___构造化设计措施_________, 以数据构造为基础构造模块旳__jackson措施__________, 以对象、类、继承和通信为基础旳__面向对象设计措施__________。
6.__数据流图________和__数据字典___共同构成系统旳逻辑模型。
7.软件测试旳措施有__分析措施________和___非分析措施_______(即黑盒法)。
8.单元测试一般以___白盒_____________测试为主, ___黑盒______测试为辅。
9.成本估计措施重要有__自底向上估计________、_自顶向下估计_________和算法模型估计三种类型。
二、单项选择题(每题2分, 共10分)1.下列哪个阶段不属于软件生存周期旳三大阶段( C )。
A.计划阶段B.开发阶段2. C.编码阶段 D.维护阶段3.需求分析是(A )。
A. 软件开发工作旳基础B. 软件生存周期旳开始C. 由系统分析员单独完毕旳D. 由顾客自己单独完毕旳原型化措施是软件开发中一类常用旳措施, 它与构造化措施相比较, 更需要( B )。
A. 明确旳需求定义B.完整旳生命周期C、较长旳开发时间D、纯熟旳开发人员软件维护时, 对测试阶段未发现旳错误进行测试、诊断、定位、纠错, 直至修改旳回归测试过程称为( A )。
A、改正性维护B、适应性维护C、完善性维护D、防止性维护一般说来, 投入运行旳软件系统中有错误(A )。
软件工程期末试题及答案一、选择题(每题2分,共20分)1. 以下哪项不是软件工程的基本目标?A. 提高软件的生产效率B. 提高软件的质量C. 减少软件的开发成本D. 增加软件的复杂性答案:D2. 下面哪个不属于软件工程的三个主要过程?A. 软件规格B. 软件开发C. 软件测试D. 软件维护答案:A3. 下列哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程答案:A4. 以下哪个不属于软件项目的管理活动?A. 项目计划B. 风险管理C. 质量保证D. 软件开发答案:D5. 以下哪个不是软件需求分析的工具?A. 数据流图(DFD)B. 实体关系图(ERD)C. 状态转换图(STD)D. 类图答案:B6. 以下哪个不属于软件设计的原则?A. 模块化B. 抽象C. 封装D. 继承7. 以下哪种测试方法主要用于检测软件的功能是否满足需求?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:C8. 以下哪个不属于软件维护的类型?A. 适应性维护B. 完善性维护C. 纠错性维护D. 预防性维护答案:D9. 以下哪个不属于软件项目管理工具?A. Microsoft ProjectB. JiraC. TrelloD. Visual Studio10. 以下哪个不属于敏捷软件开发的特点?A. 短周期迭代B. 客户参与C. 重构D. 线性开发流程答案:D二、填空题(每题2分,共20分)1. 软件工程的基本目标包括提高软件的生产效率、提高软件的质量和______。
答案:减少软件的开发成本2. 软件工程的三个主要过程分别是软件规格、软件开发和______。
答案:软件维护3. 软件需求分析的主要工具包括数据流图(DFD)、实体关系图(ERD)和______。
答案:状态转换图(STD)4. 软件设计的原则包括模块化、抽象、封装和______。
答案:继承5. 软件测试的四个层次分别是单元测试、集成测试、系统测试和______。
软件工程期末试题(含答案)软件工程期末试题(含答案)1. 选择题(1) 在软件开发过程中,以下哪个活动是与需求分析相关的?A. 代码编写B. 测试C. 需求验证D. 项目规划答案:C(2) 在敏捷开发方法中,以下哪个原则强调“面对面交流”?A. 个体和交互高于工具和过程B. 客户合作高于合同谈判C. 可以交付的软件高于详尽的文档D. 响应变化高于遵循计划答案:A2. 简答题(1) 简述软件开发生命周期的阶段及每个阶段的主要任务。
答案:软件开发生命周期主要包括需求分析、设计、编码、测试和维护阶段。
需求分析阶段的主要任务是收集用户需求、进行需求分析和规格说明;设计阶段的主要任务是根据需求进行软件的整体架构设计、模块设计等;编码阶段的主要任务是根据设计文档进行程序代码的编写;测试阶段的主要任务是对软件进行功能、性能、兼容性等各方面的测试;维护阶段的主要任务是修复软件中的缺陷、升级功能等。
(2) 什么是软件需求?简述软件需求分析的过程。
答案:软件需求是对软件系统的功能、性能、接口、约束和设计约束条件的描述。
软件需求分析是指对软件需求进行识别、获取、明确和规格说明的过程。
其过程包括以下几个步骤:a. 需求获取:通过与用户交流、收集现有文档等方式,获取软件需求相关的信息;b. 需求分析:对获取的软件需求进行整理和分类,识别出需求之间的关联和依赖关系;c. 需求明确:明确每个需求的具体含义,确保需求描述准确清晰;d. 需求规格说明:将明确的需求进行形式化的规格说明,以便后续的设计和开发工作。
3. 论述题软件开发中的版本控制是一项重要的技术,它可以有效地管理和追踪软件代码的变化,并协同开发者之间的合作。
请简要讨论软件版本控制的几种常见方式及其优缺点。
答案:常见的软件版本控制方式包括本地版本控制、集中式版本控制和分布式版本控制。
每种方式都有其优缺点:a. 本地版本控制:通过在本地维护一份完整的代码仓库,实现对代码的版本控制。
四川理工学院成都新华学院期末考试题一、单项选择题。
(本大题共20小题,每小题1分,共20分)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、可使用PDL语言描述设计结果6、下列关于软件工程活动确认阶段任务说法错误的是()。
A、进行各种测试B、确认项目值得开发C、采用集成测试和验收测试D、需要用户参与7、下列关于软件工程活动支持阶段任务说法错误的是()。
A、改正用户发现的错误B、修改软件适应环境变化C、重新设计系统D、根据用户要求改进系统8、下列选项中不属于软件工程原则的是()。
A、选择适宜的开发模型B、选择最经济的开发方案C、采取合适的设计方法D、重视开发过程管理9、软件工程中瀑布模型的第一个阶段是()。
A、问题定义B、可行性与需求分析C、系统设计D、程序实现10、下列选项中属于软件工程模型的是()。
A、关系模型B、树状模型C、螺旋模型D、层次模型11、下列选项中不属于项目管理要素的是()。
A、项目的启动B、范围C、时间D、客户满意度12、导致软件项目失控的原因不包括()。
A、需求不明确B、项目过于庞大C、采用新技术D、管理方法不当13、分析软件需求时,不需要定义的内容是()。
A、系统输入B、系统输出C、系统功能D、系统用户14、软件需求与下列活动中无关的是()。
期末考查题一、请列举出影响软件开发工作效率的主要因素,并解释怎样才能提高软件开发的生产率?一、答:影响软件开发工作效率的主要因素,一般包括资本、方法、技术、质量、员工工作绩效、企业文化。
其中,资本投入影响生产率的主要原因是设备的投资以及设备的利用情况。
技术因素主要是指技术的应用情况,只有技术被充分地应用,才能发挥技术的优势。
员工工作绩效主要是指员工的工作能力和工作动机。
企业文化时时刻刻都在影响着组织的生产率。
提高软件开发的效率的方法:1、提高项目成员的工作技能。
即使在组建项目团队时每个成员的技能都是合格的,每个人仍然需要不断学习,无论对于项目还是人生而言都是有益的。
项目经理应当组织一些有针对性的培训,提高项目成员的工作技能,使他们在开发产品时不仅做得好而且做得快。
2、制定合适的软件过程。
软件过程定义了做事的主要步骤,如果过程混乱,做事颠三倒四的话,势必伤害生产效率。
虽然人们都知道开发软件要经历需求分析、系统设计、编程、测试这些阶段,但是严格的线性顺序并不见得就是最优的,因为许多局部工作可以并行开展甚至提前开展。
二、阅读下述材料,请分析项目出了什么问题?如果由你来担任项目经理,你会如何管理此项目?海正公司的赵晓东最近心里挺烦。
公司前一段签了一个100多万元的单子,由于双方老板很熟,且都希望项目尽快启动,在签合同时也没有举行正式的签字仪式。
合同签完,公司老总很快指定赵晓东及其他8名员工组成项目组,由赵晓东任项目经理.老总把赵晓东引见给客户老总,客户老总在业务部给他们安排了一间办公室。
项目进展开始很顺利,赵晓东有什么事都与客户老总及时沟通。
可客户老总很忙,经常不在公司。
赵晓东想找其他部门的负责人,可他们不是推托说做不了主,就是说此事与他们无关,有的甚至说根本就不知道这事儿。
问题得不到及时解决不说,很多手续也没人签字。
项目组内部问题也不少,有的程序员多次越过赵晓东直接向老板请示问题;几个程序员编的软件界面不统一;项目支出的每笔费用,财务部都要求赵晓东找老板签字。
一、选择题(每题2分,共20分)1. 软件工程项目的生命周期可以分为以下几个阶段,下列哪个不是软件工程项目的阶段?A. 需求分析B. 系统设计C. 硬件开发D. 编码实现2. 下列哪个不是软件工程项目的典型角色?A. 项目经理B. 程序员C. 测试员D. 销售员3. 在软件项目管理中,以下哪个不是项目管理工具?A. Microsoft ProjectB. JIRAC. TrelloD. MySQL4. 下列哪个不是敏捷开发的方法论?A. ScrumB. KanbanC. WaterfallD. Lean5. 以下哪个不是软件项目风险管理的方法?A. 风险识别B. 风险评估C. 风险监控D. 风险规避6. 下列哪个不是软件项目进度控制的方法?A. Gantt图B.PERT图C. 时间序列分析D. 数据挖掘7. 以下哪个不是软件项目质量控制的方法?A. 单元测试B. 集成测试C. 系统测试D. 硬件测试8. 在软件项目管理中,以下哪个不是项目沟通的方式?A. 面对面会议B. 电话会议C. 邮件沟通D. 微信群聊9. 以下哪个不是软件项目团队建设的方法?A. 信任建设B. 角色分配C. 激励机制D. 培训与发展10. 以下哪个不是软件项目合同管理的内容?A. 项目范围B. 项目进度C. 项目质量D. 项目风险二、填空题(每题2分,共20分)1. 软件工程项目管理包括______、______、______、______和______等过程。
2. 软件工程项目的生命周期可以分为______、______、______、______和______等阶段。
3. 软件项目管理的主要目标包括______、______、______和______。
4. 软件项目风险管理的方法包括______、______、______和______。
5. 软件项目进度控制的方法包括______、______和______。
6. 软件项目质量控制的方法包括______、______、______和______。
《软件工程与项目管理》期末试卷及参考答案一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
每小题1分,共20分)1.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( )A.软件工程B.软件周期C.软件危机D.软件产生2.研究开发所需要的成本和资源是属于可行性研究中的( )研究的一方面。
A.技术可行性B.经济可行性C.社会可行性D.法律可行性3.IDEF0图不反映出系统( )A.系统做什么B.系统功能如何实现C.系统由谁来做D.系统实现的约束条件4.模块的内聚性最高的是( )A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚5.在SD方法中全面指导模块划分的最重要的原则是( )A.程序模块化B.模块高内聚C.模块低耦合D.模块独立性6.软件详细设计主要采用的方法是( )A.模块设计B.结构化设计C.PDL语言D.结构化程序设计7.下列关于JSP方法不正确的说法是( )A.JSP方法主要用于规模不大的数据处理系统B.JSP方法不明确的划分软件概要设计和详细设计的两个阶段C.JSP方法适用于输入数据和输出数据之间有对应关系的问题求解D.JSP方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。
因此它只适用于详细设计阶段8.不适合作为科学工程计算的语言是( )A. PascalB. CC. FortranD. Prolog9.黑盒测试在设计测试用例时,主要需要研究( )A.需求规格说明与概要设计说明B.详细设计说明C.项目开发计划D.概要设计说明与详细设计说明10.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。
设计这组测试用例的方法是( )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.在屏蔽硬件错误的冗错技术中,冗余附加技术有( )A.三模冗余B.信息冗余C.冗余备份程序的存储及调用D.关键程序和数据的冗余存储和调用17.软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为( )A.可用性B.可靠性C.正确性D.完整性18.下列文档与维护人员有关的有( )A.软件需求说明书B.项目开发计划C.概要设计说明书D.操作手册19.采用Gantt图表示软件项目进度安排,下列说法中正确的是( )A.能够反映多个任务之间的复杂关系B.能够直观表示任务之间相互依赖制约关系C.能够表示哪些任务是关键任务D.能够表示子任务之间的并行和串行关系20.下列模型属于成本估算方法的有( )A.COCOMO模型B.McCall模型C.McCabe度量法D.时间估算法二、填空题(每空2分,共20分)1.瀑布模型是以文档为驱动、适合于________的软件项目的模型。
2.纯收入是指在整个生存周期之内的________与投资之差。
3.数据项是指________数据单元。
4.软件概要设计的主要任务就是________。
5.结构化程序设计方法是使用________构造程序。
6.软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个_______集成的过程。
7.软件维护的内容包括校正性维持,适应性维护、_________和预防性维护。
8.CASE工具的平台集成指工具运行在相同的________平台上。
9.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和_______。
10.将开发项目与一个或多个已完成的类似项目进行比较,找出与某个相类似项目的若干不同之处,并估算每个不同之处对成本的影响,得出开发项目的总成本。
这种成本估算方法称为________。
三、名词解释(每小题3分,共15分)1.信息隐蔽2.集成测试3.多态性4.CASE5.SA四、简答题(每小题5分,共20分)1.简述软件工程目标和面临的主要问题。
2.简述结构化程序设计方法的基本要点。
3.简述文档在软件工程中的作用。
4.简述提高可维护性的方法。
五、应用题(第1小题8分,第2小题7分,第3小题10分,共25分)1.某旅馆的电话服务如下:可以拨分机号和外线号码。
分机号是从7201至7299。
外线号码先拨9,然后是市话号码或长话号码。
长话号码是以区号和市话号码组成。
区号是从100到300中任意的数字串。
市话号码是以局号和分局号组成。
局号可以是455,466,888,552中任意一个号码。
分局号是任意长度为4的数字串。
要求:写出在数据字典中,电话号码的数据条目的定义(即组成)。
2.某公司为本科以上学历的人重新分配工作,分配原则如下:1.如果年龄不满18岁,学历是本科,男性要求报考研究生,女性则担任行政工作;2.如果年龄满18岁不满50岁,学历本科,不分男女,任中层领导职务,学历是硕士不分男女,任课题组组长;3.如果年龄满50岁,学历本科,男性任科研人员,女性则担任资料员,学历是硕士不分男女,任课题组组长。
要求:画出分析过程,得出判定表,并进行化简。
3.某培训中心要研制一个计算机管理系统。
它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。
1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。
要求:1.对以上问题画出数据流程图。
(5分)2.画出该培训管理的软件结构图的主图。
(5分)参考答案一、单项选择题(每小题1分,共20分)1.C2.B3.B4.D5.D6.D7.D8.D9.A 10.C11.C 12.D 13.B 14.D 15.C16.D 17.B 18.C 19.D 20.A二、填空题(每空2分,共20分)1.软件需求明确2.累计经济效益(折合成现在值)3.不可再分解的4.软件结构的设计5.三种基本控制结构6.自底向上或相反顺序7.完善性维护8.硬件/操作系统9.数据存储对象10.差别估算法三、名词解释(每小题3分,共15分)1.信息隐蔽是指在设计和确定模块时,使得一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说是不能访问的。
2.集成测试也称组装测试或联合测试。
是指在单元测试的基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试。
组装模块的方式有两种:渐增式测试和非渐增式测试。
3.多态性是指相同的操作或函数、过程可作用于多种类型的对象上并获得不同结果。
不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。
4.CASE是一组工具和方法的集合,可以辅助软件开发生命周期各阶段进行软件开发。
CASE把软件开发技术、软件工具和软件开发方法集成到一个统一而一致的框架中,并且吸收了CAD(计算机辅助设计)、软件工程、操作系统、数据库、网络和许多其他计算机领域的原理和技术。
因而,CASE领域是一个应用、继承和综合的领域。
5.结构化分析方法是需求分析中使用最多的方法之一,适用于数据处理类型软件的需求分析。
基本思想是采用自顶向下,逐步分解的方法分析整个系统,有效地控制系统开发的复杂性。
四、简答题(每小题5分,共20分)1.软件工程是一门工程性的学科,其目标主要是成功地建造一个大型软件系统。
包括:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发的软件易于移植;需要较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。
面临的主要问题是:软件费用软件可靠性软件维护软件生产率软件重用。
2.(1)采用自顶向下,逐步求精的程序设计方法。
(2)使用三种基本控制结构构造程序,分别是顺序,选择和循环(3)采用主程序员组的组织形式。
3.(1)提高软件开发过程的能见度(2)提高开发效率(3)作为开发人员阶段工作成果和结束标志(4)记录开发过程的有关信息便于使用与维护;(5)提供软件运行、维护和培训有关资料;(6)便于用户了解软件功能、性能。
4.(1)建立明确的软件质量目标(2)利用先进的软件开发技术和工具(3)建立明确的质量保证工作(4)选择可维护的程序设计语言(5)改进程序文档五、应用题(第1小题8分,第2小题7分,第3小题10分,共25分)1.电话号码=分机号|外线号码分机号=7201 (7299)外线号码=9+[市话号码|长话号码]长话号码=区号+市话号码区号=100 (300)市话号码=局号+分局号局号=[455|466|888|552]分局号=4{数字}42.(7分)(1)判定条件可能取值表:(2)计算组合数2*3*2=12;(3)初步判定表(4)简化后的判定表7,8,9性别------ M ----- M F F 文化程度G U U U U U 年龄------ L Y C L C 组长√领导√科研√行政√资料员√考研√3.(1)数据流图(5分) (2)软件结构(5分)。