当前位置:文档之家› 软件工程仿真试题

软件工程仿真试题

软件工程仿真试题
软件工程仿真试题

1、软件设计一般分为总体设计和详细设计,它们之间的关系是

A、全局和局部

B、抽象和具体

C、总体和层次

D、功能和结构

2、在面向数据流的软件设计方法中,一般将流分为

A、变换流和事务流

B、变换流和控制流

C、事务流和控制流

D、数据流和控制流

3、软件设计中一般将用到图形工具,下列哪种可用作设计的图形工具

a.结构图

b.实体联系图

c.IPO图

d.层次图

A、a和b

B、c和d

C、a,c,d

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、高内聚高耦合

A、数据

B、非直接

C、控制

D、内容

A、数据

B、非直接

C、控制

D、内容

A、偶然

B、逻辑

C、功能

D、过程

A、偶然

B、逻辑

C、功能

D、过程

答案:1.A 2.A 3.C 4.B 5.C 6.B 7.D 8.CDBDA

软件工程试题及答案

4. 面向对象的分析方法主要是建立三类模型,即( D )。 A) 系统模型、ER模型、应用模型 B) 对象模型、动态模型、应用模型 C) E-R模型、对象模型、功能模型D) 对象模型、动态模型、功能模型 5. 在E-R模型中,包含以下基本成分( )。 A) 数据、对象、实体B) 控制、联系、对象C) 实体、联系、属性 D) 实体、属性、操作 9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[, ],现从输入的角度考虑一组测试用例:, , , . 设计这组测试用例的方法是( c ) A.条件覆盖法 B.等价分类法C.边界值分析法 D.错误推测法 10、详细设计的基本任务是确定每个模块的( d )A.功能B.调用关系C.输入输出数据 D.算法 11.设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X需要的工作量(时间)。对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:( a ) A.模块化的根据 B.逐步求精的根据 C.抽象的根据 D.信息隐藏和局部化的根据13.面向数据流的设计方法把( D )映射成软件结构。 A.数据流 B.系统结构 C.控制结构 D.信息流 14.内聚程度最低的是( A.偶然 )内聚A.偶然 B.过程 C.顺序 D.时间 15.确定测试计划是在( D )阶段制定的.A.总体设计 B.详细设计 C.编码 D.测试 16.需求分析的产品是( D ) A.数据流程图案 B.数据字典 C.判定表D.需求规格说明书 17.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( C ) A.数据库设计 B.数据通信 C.数据定义 D.数据维护 18.( D )引入了“风险驱动”的思想,适用于大规模的内部开发项目。 A.增量模型 B.喷泉模型 C.原型模型D.螺旋模型 (×)2、系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等测试。 (×)4、软件需求分析的任务是建立软件模块结构图。 (√)5、尽可能使用高级语言编写程序(×)6、以结构化分析方法建立的系统模型就是数据流图。 (×)7、进行总体设计时加强模块间的联系。(×)8、编码时尽量多用全局变量. (√)9、用CASE环境或程序自动生成工具来自动生成一部分程序.(×)10、软件测试是要发现软件中的所有错误。 1. 软件生命期各阶段的任务是什么答:软件生命期分为7个阶段:1、问题定义:要解决的问题是什么 2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性 3、需求分析:系统必须做什么 4、总体设计:系统如何实现,包括系统设计和结构设计 5、详细设计:具体实现设计的系统 6、实现:编码和测试 7、运行维护:保证软件正常运行。 2、软件重用的效益是什么?

研究生现代软件工程期末考试试题

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%经费作为自己奖励。具体需求如下: 有一个医院期望开发一个《医院取药告知管理系统》。该系统要求实现病人在交费处使用自己的就医卡交费完毕后,系统会根据当前的取药人数分配取药窗口和相应的药剂师。每个窗口的药剂师按顺序使用系统,并接收系统分配的菜单。药剂师配药完成后使用系统功能显示并通知病人取药。 每个取药窗口有一个大屏幕显示取药的病人名称,每个人取药时间为2分钟并反复显示并广播病人的姓名;超过两分钟没来取药的病人信息会转到屏幕下方的滚动条滚动显示,可以显示多人姓名。取过药的病人信息随即被清除。取药大厅设置多台自动查询机,病人使用就医卡扫描后,查询机会显示病人姓名、取药窗口号以及在本病人之前未取药的人数或者是否处于超时等待取药。 作为项目经理,请根据上述功能需求回答以下问题: 问题四:给出该系统的功能列表(以用例表示)开发和后期维护的报价。 问题五:给出系统开发的进度安排,并确定关键任务路径上的人员安排使得项目进度效率最高且成本最低。 问题六:请根据自己熟悉的编程语言估算该系统的KLOC、C K(技术状态常数),并由此根据“软件工程”计算该系统开发的工作量。 问题七:给出开发周期内TOP5的风险因素。

电大软件工程模拟试题(2)

软件工程模拟试题二 一、选择题,请从四个可选项中选择正确答案。(60分,每题3分) 1.以下哪一项不是软件危机的表现形式() A.成本高 B.生产率低 C.技术发展快 D.质量得不到保证 2.哪种模型分批地逐步向用户提交产品,每次提交一个满足用户需求子集的可运行的产品。()A.演化模型 B.喷泉模型 C.原型模型 D.螺旋模型 3.可行性研究的目的不包括() A.分析开发系统的必要性 B.确定系统建模的方案 C.分析系统风险 D.确定是否值得开发系统 4.可行性分析研究的费用大约是项目总经费的()。 A.2% B.8% C.20% D.50‰ 5.在E-R 模型中,包含以下基本成分()。 A.数据、对象、实体 B.控制、联系、对象 C.实体、联系、属性 D.实体、属性、联系 6.软件需求分析产生两个重要文档,一个是软件需求规格说明书,另一个是()。 A.软件维护说明书 B.概要设计说明书 C.可行性报告 D.初步用户手册 7.内聚程度较低的是()。 A.通信内聚 B.过程内聚 C.顺序内聚 D.时间内聚 8.概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是() A.把软件划分成模块B确定模块之间的调用关系

C.确定各个模块的功能 D.设计每个模块的伪代码 9.UML 语言支持的建模方式不包括有()。 A.静态建模 B.动态建模 C.模块化建模 D.功能建模 10.以下哪一项不是面向对象的特征。() A.多态性 B.继承性 C.封装性 D.过程调用 11.面向对象设计首先要确定系统的总体结构和风格,构造系统的()。 A.逻辑模型 B.物理模型 C.数据模型 D.用例模型 12.面向对象设计的步骤中,正确的顺序是()。 A.系统构架设计、用例设计、类设计 B.系统构架设计、数据库设计和用户界面设计 C.类设计、用例设计、构架设计 D.用例设计、构架设计、类设计 13.类有3种类型,即()。 A.边界类、实体类、控制类 B.实体类、控制类、界面类 C.控制类、实体类、虚类 D.界面类、控制类、公共类 14.()是一般化类与特殊化类之间的一种关联形式,设计时应该适当使用这种耦合。 A.消息连接 B.参数传递 C.方法重写 D.继承 15.结构化程序设计主要强调的是()。 A.程序的规模 B.程序效率 C.程序语言的先进性 D.程序易读性 16.下列关于功能性注释不正确的说法是()。 A. 功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态 B. 注释用来说明程序段,需要在每一行都要加注释 C. 可使用空行或缩进,以便很容易区分注释和程序 D. 修改程序也应修改注释 17.软件测试的目的是()。 A.评价软件的质量 B.发现软件的错误

软件工程考试题带答案

一、选择题 1.软件开发瀑布模型中的软件定义时期各个阶段依次是:(B) A) 可行性研究,问题定义,需求分析。 B) 问题定义,可行性研究,需求分析。 C) 可行性研究,需求分析,问题定义。 D) 以上顺序都不对。 2.可行性研究主要从以下几个方面进行研究:(A) A)技术可行性,经济可行性,操作可行性。 B)技术可行性,经济可行性,系统可行性。 C)经济可行性,系统可行性,操作可行性。 D)经济可行性,系统可行性,时间可行性。 3 耦合是对软件不同模块之间互连程度的度量。各种耦合按从强到弱排列如下:(C) A) 内容耦合,控制耦合,数据耦合,公共环境耦合。 B) 内容耦合,控制耦合,公共环境耦合,数据耦合。 C) 内容耦合,公共环境耦合,控制耦合,数据耦合。 D) 控制耦合,内容耦合,数据耦合,公共环境耦合。4.在详细设计阶段所使用到的设计工具是:(A) A) 程序流程图,PAD图,N-S图,HIPO图,判定表,判 定树. B) 数据流程图,Yourdon 图,程序流程图,PAD图, N-S图,HIPO图。 C) 判定表,判定树,PDL,程序流程图,PAD图,N-S 图。 D) 判定表,判定树,数据流程图,系统流程图,程序流程 图,层次图。 5 按照软件工程的原则,模块的作用域和模块的控制域之间的关系是:(A) A)模块的作用域应在模块的控制域之内。 B)模块的控制域应在模块的作用域之内。

C)模块的控制域与模块的作用域互相独立。 D)以上说法都不对。 6在软件生命周期中,能准确确定软件系统的体系结构的功能阶段是(C) A.概要设计 B.详细设计 C.需求分析 D.可行性分析 7下面不是软件工程的3个要素的是(C) A过程 B.方法 C.环境 D.工具 8.下面不属于软件的组成的是(B) A程序 B.记录 C.文档 D.数据 9在瀑布模型中,将软件分为若干个时期,软件项目的可行性研究一般归属于(C) A.维护时期 B.运行时期 C.定义时期 D.开发时期 10.在瀑布模型中,下面(C)是其突出的缺点。 A.不适应平台的变动 B.不适应算法的变动 C.不适应用户需求的变动 D.不适应程序语言的变动 11下面不属于软件的特点的是(D)。 A软件是一种软件产品 B软件产品不会用坏,不存在磨损、消耗问题 C软件产品的生产主要是研制 D软件产品非常便宜 12 软件开发工具是协助开发人员进行软件开发活动所使用的软件或环境。下面不是软件开发工具的是(A)。 A.维护工具 B.编码工具 C.测试工具 D.需求分析工具 13.下列叙述中不属于软件生命周期模型的是(D)。 A.原型模型 B.瀑布模型 C.螺旋模型 D.快速组装模型 14.软件设计中,用抽象和分解的目的是(B)。 A.提高易读性 B.降低复杂性 C.增加内聚性 D.降低耦合性 15软件生命周期中所花费用最多的阶段是(D)。 A.详细设计 B.软件编码 C.概要设计 D.软件测试和维护 16.开发软件时对提高开发人员工作效率至关重要的是(B)。

软件工程课程表

软件工程专业本科教学计划 专业代码080611W (国家)0406 (学校) 一、培养目标和基本规格 (一) 培养目标 软件工程专业本科生的培养目标是:针对国民经济信息化建设和发展的需要,面向软件产业界对软件工程技术人才的需求,培养具有良好的综合素质、良好的职业道德、扎实的软件工程理论知识及较强的英语综合应用能力,掌握自然科学和与软件有关的法律基础知识、具有自主学习和使用先进软件开发技术和工具的能力,具有软件开发实践和项目组织的初步经验,具有创新、创业、竞争意识和团队精神。学生毕业后能从事大型软件项目的开发,具有软件企业所需要的较高层次的软件工程技术和管理人才的素质,能适应技术进步和社会需求变化对高素质软件工程专门人才的基本要求。 (二) 培养规格 本专业学生应掌握软件工程领域坚实的基础理论和宽广的专业知识,具有良好的系统分析、设计及软件工程项目的组织与管理能力,具备运用先进软件开发技术、方法和工具的能力,具备与软件有关的法律知识,具备独立工作能力和团队精神。 毕业生应获得以下几方面的知识和能力: 1、掌握软件工程专业的基本理论、基本知识和基本技能,特别是软件项目管理与开发技术、信息系统的分析与设计技术、网络数据库开发技术、网络信息安全和嵌入式软件开发技术; 2、熟练掌握需求分析和建模、软件设计和实现、软件评审与测试、软件过程改进与项目管理、设计人机交互界面的基本方法,能运用先进软件技术和开发工具进行软件系统的开发与维护工作。 3、掌握与软件有关的法律法规、国际惯例,具备自觉运用法律知识进行软件知识产权保护的素质。 4、具有创业意识、创新精神和良好的职业素质,具有良好的人际沟通能力和团队精神。 5、了解软件工程领域的最新成果、发展动态和法律法规; 6、具有良好的英语写作和交际能力,外语水平达到规定的等级要求。 二、学制:四年。 三、授予学位:工学学士。

软件工程(习题与参考答案)

第1章概述(习题与参考答案) [判断题] 1. 由于今天个人计算机不断发展壮大,人们不再采用软件团队的开发方式。(×) 2. 由于软件是产品,因此可以应用其他工程制品所用的技术进行生产。(×) 3. 购买大多数计算机系统所需的硬件比软件更昂贵。(×) 4. 大多数软件产品在其生命周期中不需要增强功能。(×) 5. 大多数软件系统是不容易变化的,除非它们在设计时考虑了变化。(√) 6. 一般来说,软件只有在其行为与设计者的目标一致的情况下才能成功。(×) [选择题] 1. ()因素促使计算机系统越来越复杂。(D) A. 计算机内存和存储容量上的巨大增长 B. 外部输入/输出选项的更加多样性 C. 计算机体系结构方面的深刻变化 D. 以上所有选项 2. 下面的()不再是现代软件工程师关注的问题。(A) A. 为什么计算机硬件的成本这么高? B. 为什么软件需要很长时间才能完成? C. 为什么开发一个软件的成本这么高? D. 为什么不能在产品发布前去除软件错误? 3. 软件会逐渐退化而不会磨损,其原因在于()。(C) A. 软件通常暴露在恶劣的环境下 B. 软件错误通常发生在使用之后 C. 不断的变更使组件接口之间引起错误 D. 软件备件很难订购 4. 大多数软件仍然是定制开发的,其原因在于()。(C) A. 软件组件重用是十分普遍的 B. 可重用的组件太昂贵而无法使用 C. 软件在不使用其他组件的情况下很容易构造出来 D. 商业组件在很多应用领域中可以得到 5. 下面的()说法是正确的。(C) A. 软件危机在20世纪70年代末期全面爆发

B. 当前先进的软件工程方法已经解决了软件危机的问题 C. 软件危机是指在计算机软件的开发和维护过程中遇到的一系列严重问题 D. 软件危机是指在软件产品中存在一系列的质量问题 6. 软件工程的基本目标是()。(B) A. 消除软件固有的复杂性 B. 开发高质量的软件 C. 努力发挥开发人员的创造性潜能 D. 更好地维护正在使用的软件产品 7. ()是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方 法、工具和过程三个要素。(D) A. 软件产品 B. 软件过程 C. 软件测试 D. 软件工程 8. 软件工程的基本要素包括方法、工具和()。(C) A. 软件系统 B. 硬件环境 C. 过程 D. 人员 9. 软件工程师在从事软件工作时应使用下面的()准则。(E) A. 从来不为个人获利而窃取数据 B. 从来不散布或出售项目中自己工作的信息 C. 从来不故意毁坏或修改别人的程序、文件或数据 D. 从来不侵犯个人、小组或组织的隐私 E. 以上所有选项 第2章软件过程(习题与参考答案) [选择题] 1. ()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、 软件确认、软件改进等活动组成。(A) A. 软件过程 B. 软件工具 C. 软件产品 D. 软件工程 2. 软件过程的基本活动是()。(A) A. 分析、设计、实现、测试、演化 B. 沟通、计划、建模、构造、部署 C. 计划、分析、设计、实现、调试 D. 沟通、风险管理、度量、产品化、评审 3. ()软件需求规格说明书在软件开发过程中具有重要的作用,它是软件可行性分析的依据。(B) A. 真 B. 假

软件工程模拟题

[模拟] 软件工程 选择题 第1题: 软件工程方法学的三要素是______。 ①方法②项目管理③过程④开发语言⑤工具 A.①②③ B.①②⑤ C.②③④ D.①③⑤ 参考答案:D 软件工程方法学包含三个要素:方法、工具和过程。方法是指完成软件开发的各项任务的技术方法;工具是指为运用方法而提供的软件工程支撑环境;过程是指为获得高质量的软件所需要完成的一系列任务的框架。 第2题: 螺旋模型的开发实施和______基本相吻合。 A.智能模型 B.快速原型模型 C.喷泉模型 D.V模型 参考答案:B 第3题: 软件设计一般分为外部设计和内部设计,它们之间的关系是______。 A.全局和局部 B.抽象和具体 C.总体和层次 D.没有关系 参考答案:A 这里所说的外部设计实际上是指概要设计,内部设计就是详细设计。概要设计的工作是:·采用某种设计方法,将一个复杂的系统按功能划分成模块;·确定每个模块的功能;·确定模块之间的调用关系;·确定模块之间的接口,即模块之间传递的信息;·评价模块结构的质量。而详细设计的工作是:·为每个模块进行详细的算法设计。用某种图形、

表格、语言等工具将每个模块处理过程的详细算法描述出来。·为模块内的数据结构进行设计。对于需求分析、概要设计确定的概念性的数据类型进行确切的定义。·对数据结构进行物理设计,即确定数据库的物理结构。物理结构主要指数据库的存储记录格式、存储记录安排和存储方法,这些都依赖于具体所使用的数据库系统。可见,这是一个全局和局部的关系,概要设计划分好模块,而详细设计定义每个模块如何工作。 第4题: 瀑布模型把软件生命周期划分为三个阶段,它们分别是:计划阶段、开发阶段和______。 A.可行性分析阶段 B.运行阶段 C.详细计划阶段 D.测试与排错阶段 参考答案:B 瀑布模型的软件生命周期分为计划阶段、开发阶段和运行阶段(即维护阶段)三个大的阶段,这三个阶段又可细分为:可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试、运行维护几个小的阶段。 第5题: 瀑布模型(Waterfall Model)突出的缺点是不能适应______的变动。 A.算法 B.开发或应用平台 C.程序语言 D.用户需求 参考答案:D 瀑布模型有许多优点:可强迫开发人员采用规范的方法;严格规定了各阶段必须提交的文档;要求每个阶段结束后,都要进行严格的评审。但瀑布模型过于理想化,而且缺乏灵活性,无法在开发过程中逐渐明确用户难以确切表达或一时难以想到的需求,有时可能直到软件开发完成之后才发现与用户需求有很大距离,此时必须付出高额的代价才能纠正这一偏差。 第6题: 如果一个模块内各功能部分都使用了相同的输入数据,或产生了相同的输出数据,则称为______模块。 A.功能内聚 B.顺序内聚 C.通信内聚 D.过程内聚

《软件工程》试题及参考答案(第6套)

第一部分选择题 一、单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。 A 软件过程 B 软件工具 C 质量保证 D 软件工程 2、在各种不同的软件需求中,功能需求描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明,()是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。 A 业务需求 B 功能要求 C 非功能需求 D 用户需求 3、软件测试计划开始于需求分析阶段,完成于()阶段。 A 需求分析 B 软件设计 C 软件实现 D 软件测试 4.下面关于面向对象方法中消息的叙述,不正确的是( )。 A. 键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息 B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息 C. 应用程序之间可以相互发送消息 D.发送与接收消息的通信机制与传统的子程序调用机制不同 5.美国卡内基—梅隆大学SEI提出的CMM模型将软件过程的成熟度分为5个等级,以下选项中,属于可管理级的特征是( )。 A.工作无序,项目进行过程中经常放弃当初的计划 B.建立了项目级的管理制度 C.建立了企业级的管理制度 D.软件过程中活动的生产率和质量是可度量的 6.在McCall软件质量度量模型中,()属于面向软件产品修改。 A.可靠性B.可重用性C.适应性 D.可移植性 7.软件生命周期中所花费用最多的阶段是() A.详细设计 B.软件编码 C.软件测 试 D.软件维护 8.需求分析阶段的任务是确定() A.软件开发方法 B.软件开发工具 C.软件开发费 D.软件系统的功能

软件工程导论课程教学大纲

《软件工程导论》课程教学大纲 一、课程性质、地位和作用 《软件工程导论》是是软件工程专业的专业基础课程,属必修课。 本课程主要讲述建造软件系统的基本方法、技术、流程、工具及规范等。通过学习可以使学生了解软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的基本内容和发展动向;学习用工程化的方法开发软件项目,初步掌握开发过程中应遵循的流程、准则、标准和规范。本门课程为将来从事软件开发学生的软件工程师之路奠定坚实的基础。 二、课程教学对象、目的和要求 本课程适用于软件工程、计算机应用等从事软件开发的本科专业。课程教学目的、要求: (一)从教学内容上,应使学生了解软件工程的基本概念,主要包括软件与软件开发的基本过程,软件危机与软件工程。掌握个人软件开发过程的基本内容和方法,了解软件开发模型及结构化软件设计方法,以及软件质量保证基本内容。(二)从能力方面,应使学生通过对软件工程基本概念和方法的学习和课后练习,培养学生养成规范化个人开发的良好习惯,培养学生按照软件工程的基本过程和方法来设计和开发软件。 (三)从教学方法上,在课堂理论教学中,采用学生可以理解的软件开发素材,通过一边实践一边讲解的方法,讲解软件过程的基本思想和方法,通过学生完成与实践结合的作业,调动学生的积极性,使软件工程的基本思想逐步植根于学生头脑中。 三、相关课程及关系 本课程的先修课程是“C语言程序设计”和“数据结构”等程序设计课程,学习应在学生具有一定的编程能力基础上进行。本课程为后续的“软件制造工程”和“软件设计工程”等课程打下了必要的理论基础。 四、课程内容及学时分配 总学时:32学时 (一)绪论1学时 1、软件工程及其重要性 2、软件开发需要软件工程 3、软件工程课程体系架构(需要什么软件工程) 、课堂的组织、学习方法、章节安排与考核4. 要求学生了解软件工程的起源,软件工程在软件开发中的作用,了解软件工程课程体系。 (二)软件与软件工程4学时 1、软件及软件分类 2、软件工程的由来及概念 3、软件生命周期 4、软件开发与软件开发方法 5、软件工程工具和环境 6、软件开发项目管理介绍

现代软件工程(复习1)

软件的定义:(1)指令的集合,通过执行这些指令可以满足预期的特征、功能和性能需求;(2)数据结构,它使得程序可以充分利用信息;(3)描述程序操作和使用的文档 遗留软件的定义:年代久远的过时的软件。 软件如其他工程原则制造的制品的区别:软件传递了我们这个时代最重要的产品——信息。 软件特征和硬件特征的区别:(1)软件是设计开发的,而不是传统意义上生产制造的。(2)软件不会“磨损”。 (3)虽然整个工业向着基于构件的构造模式发展,然而大多数软件仍是根据实际的顾客需求定制的。 为什么说软件不会随着时间而演化的说法是错误的:不管其应用领域、软件规模或者复杂性如何不同,计算机软件都将随着时间的推移不断演化。软件维护推动了软件演化,它通常是由以下情况引发的:程序纠错,调整软件以适应新的环境,满足用户新特性和功能的需求,以及对软件实施再工程以便在现代应用中发挥作用。 软件生命周期:软件的产生知道报废的生命周期,包括问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级和废弃。 软件工程的四个层次及之间的关系:工具、方法、过程和质量关注点。软件工程的根基在于质量关注点;软件工程的基础是过程层;软件工程方法为构造软件提供技术上的解决方法;软件工程工具为过程和方法提供自动或半自动化的支持。 软件工程的主要目标是什么?基本目标是什么? 软件工程的目标:从管理和技术两个方面开发和维护计算机软件,用低成本,开发出达标、高性能、易于移植、可靠性高的软件。 软件工程的基本目标是:优质、高产。 软件构建与软件部署的区别:软件构建是程序员对软件进行编码和测试,是基于程序员的;软件部署是用户对软件成品的使用和反馈,是基于客户的。 软件过程的定义:(1)将系统化的、规范的、可量化的方法应用于软件的开发、运行和维护,即将工程化方法应用于软件。(2)在(1)所述方法的研究。 软件开发的原型模型的各个阶段:沟通、快速策划、建模快速设计、构建原型和部署交付品及反馈;循环执行以上步骤。 随着时间的推移,为什么软件需要不断演化? (1)环境运行环境的变化(2)用户需求的变化(3)用户业务需求的变化 软件工程中基于构件的软件过程模型的主要优势:基于构件开发模型能够使软件复用,软件复用为软件工程师带来极大收益。 在目前环境下,为什么说增量过程模型被认为是最佳的软件开发方法:早期的增量可以有少量的人员实现;增量可以规避技术风险。 ------------------------------------------------------------------------------------------------------------------------------------------------------------ 软件工程的通用框架以及框架活动:沟通、策划、建模、构建和部署;其中建模包括创建模型和设计,构建包括编码和测试。 惯例模型:规定了一套过程元素(框架活动、软件工程动作、任务、工作产品、质量保证以及每个项目的变更控制机制) ①瀑布模型 定义:传统软件工程方法学的软件过程,基本上可以用瀑布模型来描述。 瀑布模型的特点:1.阶段间具有顺序性和依赖性;2.推迟实现的观点;3.质量保证的观点。瀑布模型的成功在很大程序上是由于它基本上是一种文档驱动的模型。 瀑布模型的主要优点:a.可强迫开发人员采用规范的技术方法; b.严格地规定了每个阶段必须提交的文档; c.每个阶段结束前必须正式进行严格的技术审查和管理复审。 瀑布模型的主要缺点:在可运行的软件产品交付给用户之前,用户只能通过文档来了解未来的产品是什么样的。 开发人员和用户之间缺乏有效的沟通,很可能导致最终开发出的软件产品不能真正满足用户的需求。 ②快速原型模型 定义:所谓“快速原型”,是快速建立起来的、可在计算机上运行的程序,它所能完成的功能往往是最终的软件

软件工程模拟试卷和答案

北京语言大学网络教育学院 《软件工程》模拟试卷一 注意: 1.试卷保密,考生不得将试卷带出考场或撕页,否则成绩作废。请监考老师负责监督。 2.请各位考生注意考试纪律,考试作弊全部成绩以零分计算。 3.本试卷满分100分,答题时间为90分钟。 4.本试卷分为试题卷和答题卷,所有答案必须答在答题卷上,答在试题卷上不给分。 一、【单项选择题】(本大题共15小题,每小题2分,共30分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在答题卷相应题号处。 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、UML术语中,限定符常被用在()。

7、UML 提供的13种图形化工具中,用于概念模型和软件模型静态结构的是( ) 8、RUP 的迭代、增量式开发规定的4个阶段不包括( )。 9、根据RUP 实现的活动,输入为设计类,活动为实现类,则输出为( )。 10、软件评估可分为静态评估和动态评估,其中属于动态评估技术的是( )。 11、黑盒测试技术,又称为( )。 12、若有语句if(A<1 and C>0)then B=1/C else B=1/A ,选用类似数据A=2,C=1;A=-2,C=1;A=2,C=-1;A=-2,C=-1;得到不同B 的值,这种测试策略为( )。 13、在两种模型的基础上,螺旋模型加入两者所忽略的风险分析,这两者是( )。 [A] 瀑布模型和增量模型 [B] 瀑布模型和演化模型 [C] 喷泉模型和增量模型 [D] 喷泉模型和演化模型 14、在软件生存周期模型中,主要用于支持面向对象技术的软件开发模型是( )。 15、CMMI 能力等级中的第一级为( )。 [A] 依赖关系 [B] 泛化关系 [C] 关联关系 [D] 细化关系 [A] 用况图 [B] 状态图 [C] 类图 [D] 活动图 [A] 评审阶段 [B] 构造阶段 [C] 移交阶段 [D] 精化阶段 [A] 用况 [B] 子系统 [C] 接口 [D] 构件 [A] 评审 [B] 走查 [C] 形式化证 明 [D] 软件测试 [A] 功能测试 [B] 结构测试 [C] 系统测试 [D] 集成测试 [A] 定义域测试 [B] 等价类测 试 [C] 路径测试 [D] 事物流测 试 [A] 演化模型 [B] 增量模型 [C] 喷泉模型 [D] 螺旋模型

软件工程试题及答案

综合练习一答案 一.选择题: 1.软件危机出现于____,为了解决软件危机,人们提出了用____的原理来设计软件,这是软件工程诞生的基础。 A.50年代末 B.60年代初C.60年代末 D.70年代初 A.运筹学B.工程学 C.软件学 D.软件学 E.数字 2.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作____。 A.软件投机B.软件危机C.软件工程D.软件产生 3.产生软件危机的原因有如下几点,除了______。 A、软件开发过程未经审查 B、软件开发不分阶段,开发人员没有明确的分工 C、所开发的软件,除了程序清单外,没有其他文档 D、采用工程设计的方法开发软件,不符合软件本身的特点 4.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是____。 A.引入新技术提高空间利用率B.用较少的投资获得高质量的软件 C.缩短研制周期扩大软件功能D.硬软件结合使系统面向应用 5.请按顺序写出软件生命期的几个阶段____,____ ,____,____,____,____。 A.维护 B.测试 C.详细设计 D.概要设计 E.编码 F.需求分析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.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的____。 总貌B.细节C.抽象D.软件的作者 13.变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于____。 A.变换型 B 事务型 14.需求分析说明书不能作为______。

软件工程专业课程

软件工程专业的课程体系设计
骆 斌 张大良 邵 栋1 210093)
(南京大学软件学院 1、引言
南京市汉口路 22 号
软件工程是指开发、操作和维护软件系统的系统、规范、可度量的方法。从历史上看, 软件工程学科曾是计算机科学的一个分支,但随着软件产业不断发展的需求,传统的计算 机学科逐步上升到计算学科, 2001 年 IEEE 发布的计算学科教学规划把计算学科划分为计算 机科学、计算机工程、软件工程、信息系统、信息技术和其他有待发展的学科等子学科, 标志了软件工程这个名词作为与计算机理论相对应的各种软件实践技术的总称已经得到世 界范围内的公认。 我国在 2001 年底推出了示范性软件学院计划,把我国软件工程专业定位在面向软件产 业培养高素质的工程型软件实用人才。围绕这一定位,软件工程教育应该围绕大型软件开 发过程中的工程方法、关键技术和相关工具展开,在专业教学过程力图使得学生具备科学 世界观,掌握科学方法,具有扎实软件基础,受到良好软件工程训练,熟悉软件应用和工 具,参与过实际项目,拥有较好职业素质。 本文研究软件工程专业的课程体系设计,在研究过程中引入了科学的方法,参照 IEEE CC2001 的成熟做法, 首先明确专业的学科定位和人才培养定位, 然后建立相关的知识体系, 再后确定课程体系,最后确定课程设置和教学计划。 2、软件工程专业的相关知识领域简介 课程体系必须建立在对本专业知识体系的全面研究之上。作为软件工程专业人才培养 的基本依据,我校编写的《复合型软件实用人才的知识体系》定义了基本素质 BAS,计算 机软件基础 CSE,软件工程与软件管理 SEM,数学、工程和职业基础 MEP,软件系统与应 用 SSA,软件工具与产品 STP 等 6 个知识体系子类,并在各子类之下细分为知识领域、知 识单元和知识点三级。为方便讨论课程体系设计,现将与专业相关的 5 个子类的知识领域 简单列举如下: 1)CSE 定义了从事软件工作所应具备的软件专业基础知识,包括离散数学基础 CSE.DS,程序设计与算法基础 CSE.PF,计算机硬件基础 CSE.CH,系统软件基础 CSE.SS, 数据库应用基础 CSE.DB,网络通信基础 CSE.NC 和软件构造技术 CSE.CT 等知识领域。 2)SEM 定义了软件工程与软件管理知识,包括软件模型与分析 SEM.MA,软件设计 SEM.DE,软件检验和有效性验证 SEM.VV,软件演化 SEM.EV,软件过程 SEM.PR,软件 质量 SEM.QA 和软件管理 SEM.MG 等知识领域。 3)MEP 定义从事软件工作所应具备的数学、工程和职业知识,包括软件的数学基础 MEP.MF,软件的工程基础 MEP.EF,软件行业的职业素质 MEP.PP,软件业的外国语能力 MEP.FL 等知识领域。 4)SSA 定义从事某一方面软件工作应具备的专业或领域应用知识,包括网络工程与网 络应用 https://www.doczj.com/doc/5514539948.html,(计算机网络进阶 AN,分布式计算 DC,多媒体技术 MM) ,嵌入式与实时
1
骆斌,教授,副院长,博士;张大良,教授,副校长,软件学院教学委员会主任;邵栋,讲师。联系邮件, luobin@https://www.doczj.com/doc/5514539948.html,。

现代软件工程作业

(一)名词解释 1.软件: 软件是计算机程序、数据以及相关的各种文档的集合。 2.软件危机 软件危机是在软件发展第二阶段末期的规模较大的项目开发中,出现了与当初的计划推迟交工、费用比预算大幅度上升、不能满足用户要求、可靠性低、维护困难等问题,导致了软件危机。 3.数据流图 数据流图是以图形的方式描述数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,是一种功能模型。 4.数据字典、 数据字典是用来定义数据流图中的各个成分的具体含义的。它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。 5.变换流 变换流指数据流图(简称DFD)具有明显的输入、变换和输出界面。 6.事务流 事务流指数据流图中输入流被分离成许多数据流,形成许多加工路径,并根据输入值选择其中一条路径来执行。 7.耦合性 耦合性也称块间关系,指软件系统结构中各模块间相互联系紧密程度的一种度量。 8.内聚性 内聚性又称块内联系,指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。 9.程序设计语言(PDL) 程序设计语言(简称PDL),又称伪码,它是一种用于描述模块算法设计和处理细节的语言。 (二)填空题 1. 在信息处理和计算机领域内,一般认为软件是_程序____、__文档___ 和__数据___ 。 2. 数据流图的基本组成部分有_数据流__、_加工_、_数据存储_、_数据源点或终点_。 3. 数据流图和数据字典共同构成了系统的__逻辑_模型,是需求规格说明书的主要组成部分。 4. 数据流图一般可分为_变换型_和_事务型_两类。 5. 结构化设计方法中,要把数据流图转换成软件结构,若某个加工将它的输入流分离成许多发散的数据流,形成许多加工路径,并根据输入的值选择其中一个路径来执行,这种特征的DFD称为_事务型_数据流图。

软件工程模拟试题二及参考答案

软件工程》试题 一、选择 1、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。 A 软件过程 B 软件工具 C 质量保证 D 软件工程 2、()是以追求更高的效益和效率为目标的持续性活动。 A 质量策划 B 质量控制 C 质量保证 D 质量改进 3、CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。除第 1级 外,每一级都包含了实现这一级目标的若干关键过程域,每一个关键过程域又包含若干 ()。 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 软件测试 二、问答题 1、判断下列叙述的正确性,将结果(V正确,X错误)填入()中,并改正错误的说法。 (1). ()在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花 费的代价就会降低。改正: __ (2). ()在需求分析中,分析员要从用户那里解决的最重要的问题是明确软件做什 么。改正: __ (3). ( )软件需求规格说明书在软件开发中具有重要的作用,是软件可行性分析的依据。改正: __

软件工程试题与答案 ()

《软件工程》试卷及答案A卷 专业年级姓名得分 一、名词解释(每个2分,共10分) 1.软件危机 2.纯收入 3.模块 4.原型 5.BROOKS定律 二、填空题(每题2分,共20分) 1.____是计算机程序及其说明程序的各种文档。_____是有关计算机程序功能、设计、编制、使用的文字或图形资料。 2.软件生存周期是指一个软件从提出开发要求开始直到该软件报废不止的整个时期。通常,软件生存周期包括问题定义、____、____、总体设计、详细设计、____、____、软件维护活动,可以将这些活动以适当方式分配到不同阶段去完成。 3.软件详细设计阶段采用的工具有______。 4.____的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。 5.模块的耦合性分为四种类型:____、____、____、____。 6.内聚性有七种类型,最强的是____,最弱的是____。 7.结构图的深度指结构图______,结构图宽度指________。 8.集成测试采用的具体方法有--____、______ 9.对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的 ____、逻辑输入、逻辑输出。 10.软件编码阶段要善于积累编程的经验,使得编出的程序____,易于____,从而提高软件质量。 三、选择题(每题2分,共20分) 1.系统定义明确之后,应对系统的可行性进行研究。可行性研究应包括()。 A.软件环境可行性、技术可行性、经济可行性、社会可行性 B.经济可行性、技术可行性、操作可行性 C.经济可行性、社会可行性、系统可行性 D.经济可行性、实用性、社会可行性 2.通过()可以完成数据流图的细化。 A.结构分解 B、功能分解 C、数据分解 D、系统分解 3.模块(),则说明模块的独立性越强。 A.耦合越强 B、扇入数越高 C、耦合越弱 D、扇入数越低 4.模块()定义为受该模块内一个判断影响的所有模块集合。 A.控制域 B、作用域 C、宽度 D、接口 5.面向数据结构的设计方法(Jackson方法)是进行()的形式化的方法。 A.系统设计 B、详细设计 C、软件设计 D、编码

相关主题
文本预览
相关文档 最新文档