需求工程期末复习

合集下载

(完整word版)uml期末复习(1)

(完整word版)uml期末复习(1)

第一章1、UML(Unified Modeling Langeage)是一种可视化的建模语言,提供了一种标准的、易于理解的方式描述系统的实现过程,从而实现了用户与设计者之间的有效交流。

2、定义系统的物理元素,用于描述事物的静态特征,包括类、接口、协作、用例、主动类、组件和节点。

3、行为建模元素包括哪些?反映事物之间的交互过程和状态变化,包括交互图和状态图。

4、组织建模元素包括哪些?子系统、模型、包、框架等。

5、关系元素包括哪些?关联、泛化、组成、实现、聚集、依赖、约束6、对于UML的描述,错误的是(A、C)。

A:UML是一种面向对象的设计工具。

B:UML不是一种程序设计语言,而是一种建模语言。

C:UML不是一种建模语言规格说明,而是一种表示的标准。

D:UML不是过程,也不是方法,但允许任何过程和方法使用它。

7、从系统外部用户角度看,用于描述系统功能集合的UML图是用例视图。

8、对如下的用例图的功能进行简单描述。

Buy Goods8、在UML中,描述父类与子类之间关系的是泛化关系。

9、“交通工具”类与“汽车”类之间的关系属于(D)。

A:关联关系B:聚集关系C:依赖关系D:泛化关系第二章1、从软件工程的角度,软件开发可分为:需求分析、系统分析、设计、实现、测试5个阶段。

2、用UML进行建模时会涉及9种图,Rose 2003只支持其中的8种,还有一种图只能用别的图来代替。

这个不能在Rose中直接表示的图是(C)。

A:顺序图B:用例图C:对象图D:构件图3、应用题:Rose分别用哪些图描述系统的静态和动态方面?静态:用例图、类图、构件图、部署图;动态:状态图、协作图、顺序图、活动图。

4、默认情况下,Rose模型文件的扩展名为(A)。

A:.mdlB:.ptlC:.catD:.sub5、关于浏览窗口的描述,正确的是(A、B、C、D)。

A:可视化地显示模型中所有元素的层次结构B:具有托放功能,通过模型元素的托放操作可以方便地改变一个模型的特征C:在浏览器中的模型元素发生变化时,可以自动更新模型中的相关元素D :只有在浏览窗口中才能把模型元素从模型中永久删除 6、Rose 是什么的缩写?Rational Object -oriented Software Engineering第三章1、识别“图书管理系统”中的参与者?系统管理员(Administrator) 图书管理员(Librarian) 读者(Reader)2、识别“图书管理系统”的用例?用户管理(Manage User) 图书管里(Manage Book) 读者管理(Manage Reader) 借阅管理(Borrow -Lend)3、下列关于使用用例的目的,不正确的是( D )? A :确定系统具备哪些功能;B :为系统功能提供清晰一致的描述;C :为系统验证工作奠定基础;D :能够减少程序员的编码工作量。

软件工程期末考试复习题大全解析

软件工程期末考试复习题大全解析

一、填空题1.软件生存周期一般可分为问题定义、可行性研究、需求分析、软件设计、程序编写、软件测试、运阶段。

2.软件生存期分计划、开发、运行三大阶段3.可行性研究的目的不是去开发一个软件项目,而是研究这个软件项目是否有可行的解、_是否值得去解决_。

4.系统流程图是描述_物理系统__的传统工具。

5.数据流图和数据字典共同构成系统的逻辑模型。

6.结构化分析方法是面向数据流进行需求分析的方法。

7.一个模块的作用范围应该在其控制范围之内,且判定所在模块应与受其影响的模块在层次上尽量靠近8.模块之间联系越紧密,其耦合性就越强,模块的独立性就越弱。

9.PAD图清晰地反映了程序的层次结构,图中的竖线为程序的层次线。

10.JSP方法定义了一组以数据结构为指导的映射过程,它根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构,而不是软件的体系结构,因此该方法适用于详细设计阶段。

11.任何程序都可由顺序、选择、重复三种基本结构组成,这三种基本结构的共同点是单入口、单出口。

12.源程序中加注释是帮助理解程序的重要手段,注释分为序言性注释和功能性注释。

13.为了提高程序的易读性,同时减少错误,提高软件开发效率,编码时注意养成良好的程序设计风格。

14.效率是一个性能要求,目标应在需求分析阶段给出。

15.可移植性是指程序从一个计算机环境移植到另一个计算机环境的容易程度。

16.用黑盒技术设计测试用例的方法有等价划分类、边值分析、因果图和错误推测。

17.集成测试是在单元测试的基础上,将所有模块按照设计要求组装成一个完整的系统进行测试,故也称组装测试。

18.动态测试方法中根据测试用例的设计方法不同,分为黑盒测试与白盒测试两类。

19.调试的目的是确定错误的位置和原因,并改正错误。

20.软件维护的内容有完善性维护、适应性维护改正性维护和预防性维护。

二、判断题1.耦合是指一个模块内各个元素彼此结合的紧密程度。

( F )2.内聚是指一个软件结构内各个模块之间互连程度的度量。

ERP复习试题

ERP复习试题

ERP复习试题一、选择题(40分,每题2分)1.闭环MRP在基本MRP的基础上引进了( C )并进行运作反馈,从而克服基本MRP的不足。

A.生产制造计划B.库存需求计划C.能力需求计划D.采购需求计划2. ERP的概念提出于( D ) 。

A.20世纪60年代B.20世纪70年代C.20世纪80年代D.20世纪90年代3. JIT生产中每道工序间的“看板”主要是为了控制( B)的库存。

A.产成品B.在制品C.原材料D.组装件4. ERP的基本思想是( C)。

A.计划和管理B.控制和组织C.计划和控制D.组织和管理5.在ERP系统的主要功能中,( A )是ERP系统的核心所在,它将企业的整个生产过程有机地结合在一起,使得企业能够有效地降低库存,提高效率。

A.财务管理B.物流管理C.人力资源管理 D.生产计划与控制管6. MRP的基本原理是根据需求和预测来测定未来物料供应和生产计划,提供( A )的准确时间和数量A. 物料需求B.采购需求C. 制造资源D.供应需求7. ERP的管理目标是实现对( D )的有效管理A企业任务 B企业财务 C企业人力资源 D企业供应链7.CRP的数据环境主要有:工作中心文件,工艺路线文件,已下达车间订单,MRP计划订单和( D )。

A.战略计划、经营规划和生产规划B.主生产计划C.车间作业控制D.车间日历8.MRPⅡ与MRP的主要区别就是它运用了( B )的概念。

A.会计 B.成本会计 C.管理会计 D.财务管理9.企业向初步选中的供应商发出的请求其提供报价的单据是( C )。

A.报价单B.采购订单C.询价单D.请购单10. 在ERP的计划层次中,( D )计划是宏观向微观过渡的层次A.生产B.能力需求C.物料需求D.主生产11.以下不是制定MRP依据的关键信息有 ( C )A.主生产计划 B.物料清单 C.库存信息 D.提前期12.销售规划是ERP的第一个计划层次,属于( B )。

软件工程期末复习答案

软件工程期末复习答案

软件生存周期一般可以划分为什么?基于软件的功能划分,软件可以划分成哪三种?答:系统软件,支撑软件,应用软件:数据流图的哪些基本四种成分;答::数据源、对数据的加工处理、数据的流向、单表或报表;软件详细设计工具可分为哪些3类?答:图形,表格,语言:1.什么是软件工程?2.3.什么是黑盒测试法?黑盒测试又称功能测试。

在这里,盒子指的是被测试的软件,“黑盒”就是只知道被测试软件的外部情况,主要是界面和接口,被测试软件的内部逻辑结构和数据结构,对测试人员来说是不可见的,主要关注被测试软件的功能实现。

4.耦合性和内聚性有几种类型? 其耦合度、内聚强度的顺序如何?耦合性 7种从低到高依次是非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内容耦合内聚性 7种从高到低功能内聚,信息内聚,通信内聚,过程内聚,时间内聚,逻辑内聚,巧合内聚,根据下面的伪代码程序,完成相应要求。

(3分)STARTIF C1THENWHILE C2 DOfENDDOELSEBLOCKgpENDBLOCKENDIFREPEAT UNTIL C3qrENDREPSTOP1)画出程序流程图和N—S图2)3)a)有下列伪码程序:STARTINPUT (M,N)IF M>=10THEN X=10ELSE X=lENDIFIF N>=20THEN Y=20ELSE Y=2ENDIFPRINT(X,Y)STOP设计该程序的语句覆盖和路径覆盖测试用例。

复习资料答案将在考试以后公布将下面的关系按继承关系、聚集关系或普通关联进行分类。

小汽车---------红旗轿车(继承)小汽车---------驾驶员(普通)班级------------学生(聚集)2、将下列各项分为类或类的实例我的汽车(类的实例)交通工具(类)软件生命期各阶段的任务是什么?软件重用的效益是什么?自顶而下渐增测试与自底而上渐增测试各有何优、缺点?简述软件测试要经过哪几个步骤,每个步骤与什么文档有关。

【必过宝典】软件工程期末考试复习题库之判断题部分(共80题)【2020最新整理版】

【必过宝典】软件工程期末考试复习题库之判断题部分(共80题)【2020最新整理版】

软件工程期末考试复习分类题型判断题部分1.螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。

(√)2.数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。

(×)3.JA V A语言编译器是一个CASE工具。

(√)。

4.软件是指用程序设计语言(如PASCAL ,C,VISUAL BASIC 等)编写的程序,软件开发实际上就是编写程序代码。

(×)5.软件模块之间的耦合性越弱越好。

(×)6.数据库设计说明书是一个软件配置项(×)7.在面向对象的软件开发方法中,每个类都存在其相应的对象,类是对象的实例,对象是生成类的模板。

(×)8.过程描述语言可以用于描述软件的系统结构。

(×)9.如果通过软件测试没有发现错误,则说明软件是正确的。

(×)10.快速原型模型可以有效地适应用户需求的动态变化。

(√)11.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。

(√)12.集成测试主要由用户来完成。

(×)13.确认测试计划应该在可行性研究阶段制定(×)14.白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。

(×)15.软件概要设计包括软件系统结构设计以及数据结构和数据库设计。

(√)16.在可行性研究中最难决断和最关键的问题是经济可行性。

(×)17.耦合是指一个模块内各个元素彼此结合的紧密程度。

(×)18.一笔交易、一个动作、甚至操作人员按一个按钮都可以看做是一次事物。

(√)19.概要设计阶段完成的主要文档是概要设计说明书。

(√)20.过大的模块可能是由于分解不充分造成的,即使降低模块独立性也必须继续分解。

(×)21.程序设计语言中应绝对禁止使用GOTO语句。

(×)22.类是关于对象性质的描述,由方法和数据组成。

《工程项目管理》期末考试复习资料

《工程项目管理》期末考试复习资料

《⼯程项⽬管理》期末考试复习资料第⼀章1.项⽬的定义。

***项⽬是指在⼀定约束条件下,具有明确⽬标的⼀次性的事业或任务。

2.⼯程项⽬的特点。

***1. ⼯程项⽬具有特定的对象2. 有时间限制3. 有资⾦限制和经济性要求4. ⼀次性5. 特殊的组织和法律条件6. 复杂性和系统性3.⼯程项⽬的全过程。

***①项⽬的前期策划和确⽴阶段②项⽬的设计与计划阶段③项⽬的实施阶段④项⽬的使⽤(运⾏)阶段4.⼯程项⽬管理的基本⽬标及其之间的关系。

***项⽬管理的⽬标主要包括三个⽅⾯:质量⽬标(⽣产能⼒,功能,技术标准等),⼯期⽬标,费⽤⽬标(成本,投资)。

三⼤⽬标之间互相联系,互相影响,共同构成项⽬管理的⽬标系统。

5.什么是项⽬的对象系统、⽬标系统、⾏为系统和⾏为主体系统,其之间有什么关系?解答:课本P25 的图1-4。

对象系统:项⽬⼯程的⽬标最终是通过⼯程的建设和运⾏实现的。

这个⼯程系统是项⽬的可交付成果,是项⽬的对象。

他通常表现为实体系统形式,有⼀定的功能、规模和质量要求,有⾃⾝的系统结构形式-------⼯程分解结构(EBS)。

⽬标系统:是⼯程项⽬所要达到的最终状态描述系统。

⾏为系统:是实现项⽬⽬标、完成⼯程建设任务所有必需的⼯程活动构成的,包括各种设计、施⼯、供应和管理等⼯作。

项⽬组织是由项⽬的⾏为主体构成的系统。

由于社会化⼤⽣产和专业化分⼯,⼀个项⽬的参加单位可能有⼏个、⼏⼗个,甚⾄成百上千个,常见的业主、承包商、设计单位、监理单位、分包商、供应商等。

他们之间通过⾏政的或者合同的关系连接并形成⼀个庞⼤的组织体系,为实现共同的项⽬⽬标承担者各⾃的任务。

第⼆章1、项⽬前期策划过程是怎样的?解答:1、⼯程项⽬构思的产⽣和选择2、项⽬的⽬标设计和项⽬定义3、可⾏性研究4、评价和决策2、项⽬前期策划的⼯作的重要作⽤。

解答:(1)项⽬构思和项⽬⽬标是确⽴项⽬⽅向的问题。

(2)项⽬构思和项⽬⽬标影响全局。

3、项⽬⽬标系统的作⽤。

《工程导论期末复习材料》

《工程导论期末复习材料》

《工程导论期末复习材料》1、为什么解决复杂工程问题必须以工程应用为背景?答:解决复杂工程问题时,要将系统的安全性、可靠性放在首位,要以经济回报作为最终目的,要以用户需求、利益至上,要充分考虑社会环境中的各种非技术冲突因亲,要充分考虑与社会的相容性。

以上这些是解决复杂工程问题的核心内容,所以解决复杂工程问题必须以工程应用为背景,而不是只考虑如何解决技术问题。

2、为什么在传统产品开发、项目管理模式中产品的开发周期、开发费用会失控? 答:由于传统产品开发、项目管理模式中存在体制、机制上的问题,导致业务流程会不断出现“流程反复”,产品开发计划被不断的修改、返工,产品的开发周期、开发费用的计划形同虚设导致开发周期不断延长,开发费用不断增加,以致最终导致传统产品开发、项目管理模式的产品开发周期、开发费用出现失控3、为什么追求产品所用技术的标新立异容易造成新产品的开发失败?答: 若产品开发中以技术驱动为主,过于追求产品所用技术的标新立异,产品只追求技术的先进性,而不追求客户需求的满足,以至于产品定义与市场的脱节,产品开发与市场脱离,从而造成研发不断的设计更改。

4、你能够想出一种改革不是过于剧烈,但又能有效解决由于产品开发组织架构所产生的产品开发效率低下的问题吗?答: 推行集成产品开发模式的主要风险是职能部门、业务执行部门及部门负责人因为权利下降所产生的阻力,为避免过于剧烈的改革,可先解决传统的产品开发、项目管理模式中的核心要害问题,可先强化市场驱动理念,用市场驱动与技术驱动的双驱动来改变唯技术驱动的产品开发指导思想;强化产品开发是投资的理念,对产品开发采用投资管理;二是从未来新产品立项开始,逐步建立产品线模式,而不是先将老产品型号变革为产品线模式。

用这种渐进的方式先着重解决传统的产品开发、项目管理模式中的核心要害问题,使干部、员工看到改革的成就,建立改革的信心。

5、原本在新产品开发的业务流程中,中试是研发的下游环节、生产是中试的下游环节,下游环节对上游环节的质量具有制衡的作用,但当上、中、下游都成为同一个产品线的团队成员后,还能保证新产品的开发质量吗?答: 在集成产品开发模式中,原本分布在研发、中试、生产、销售、服务等不同业务执行部门人员,现在都在同一个产品线团队中,原本这些业务执行部门是上、下游的关系,下游部门对上游部门原本具有约束作用,现在大家都在同一个团队里,会不会失去了约束作用?其实这种担心是不必要的,因为在同一个产品线中,大家的利益目标是一致的,都是为了产品的经济回报,对产品线内所有环节的约束者都是市场的客户,市场客户的任何不满意都会导致产品线内所有环节人员的奖金扣罚,不存在产品线内局部利益的纠纷,所以集成产品开发模式能够保证新产品的开发质量6、什么是破坏性技术创新? 什么类型的企业易在破坏性技术创新中获得成功?为什么? 答:所谓“破坏性技术创新”是指其他行业的技术发展对本行业技术发展路径、演进趋势的颠覆,“破坏性技术创新”会影响到本行业的技术传统演进方式,产生了替代性的结果。

软件工程期末复习资料 华南农业大学版

软件工程期末复习资料 华南农业大学版

第二章 系统工程
1.基于计算机的系统是指:通过处理信息来完成某些预定义目标而组织在一起的元素的集合或排列。 组成基于计算机系统的元素主要有:软件、硬件、人员、数据库、文档和规程 2.系统工程的任务: (1)识别用户的要求(2)系统建模和模拟:包括硬件系统模型、软件系统模型、 人机接口模型、数据模型; (3)成本估算及进度安排(4)可行性分析(5)生成系统规格说明 3.可行性分析考虑:成本、效益、货币的时间价值、投资回收期析
第四章 设计工程
1.软件设计开始于软件需求的分析和规约之后,位于软件工程过程中的技术核心位置,是把需求转化 为软件系统的最重要环节 2.软件设计是把软件需求变换成软件表示的过程,它主要包含两个阶段:软件体系结构设计阶段和部 件级设计,前者也被称为概要设计,后者被称为详细设计。软件体系结构设计将软件需求转化为数据结构 和软件的系统结构。部件级设计将软件体系结构性元素转化为软件部件的过程性描述,得到软件详细的数 据结构和算法。 3.软件设计原则:抽象、逐步求精、模块化、信息隐藏 4.模块的独立性可以由两项指标来衡量:内聚度与耦合度。内聚度衡量一个模块内部各个元素彼此结 合的紧密程度,耦合度衡量不同模块之间相互依赖的紧密程度 5.内聚:是一个模块内部各个元素彼此结合的紧密程度的度量。内聚可以分为以下 7 中类型: 1)巧合内聚(偶然内聚) :将几个模块中没有明确表现出独立功能的相同程序代码段独立出来建立的 模块称为巧合内聚模块 2)逻辑内聚 :指完成一组逻辑相关任务的模块,调用该模块时,由传送给模块的控制型参数来确定 该模块应执行哪一种功能 3)时间内聚:指一个模块中的所有任务必须在同一时间段内执行。例如初始化模块和终止模块 4)过程内聚 :指一个模块完成多个任务,这些任务必须按指定的过程(procedural)执行 5)通信内聚 :指一个模块内所有处理元素都集中在某个数据结构的一块区域中 6)顺序内聚:指一个模块完成多个功能,这些功能又必须顺序执行 7)功能内聚 :指一个模块中各个部分都是为完成一项具体功能而协同工作,紧密联系,不可分割的 6.耦合:是模块之间的相对独立性的度量。耦合取决于各个模块之间接口的复杂程度、调用模块的方 式以及通过接口的信息类型。耦合方式有其中类型: 1)内容耦合 :如果一个模块直接访问另一个模块的内部数据;或者一个模块不通过正常入口转到另

工程经济期末题及答案

工程经济期末题及答案

工程经济期末复习题一、名词解释1、资金时间价值:资金随时间推移而增值,其增值的这部分资金就是原有资金的时间价值。

2、融资租赁:是指实质上转移与资产所有权有关的全部或绝大部分风险和报酬的租赁。

3、基本建设程序:是对基本建设项目从酝酿,规划到建成投产所经历的整个过程中的各项工作开展先后顺序的规定。

它反映工程建设各个阶段之内的内在联系,是从事建设工作的有关部门和人员必须遵守的原则。

4、项目融资:是指以项目的资产,预期收益或权益作抵押取得的一种无追索权或有限追索权的融资或贷款活动。

5、固定资产折旧:是指固定资产在使用过程中,逐渐损耗而消失的那部分价值。

6、现金流量:是在整个计算期内各个时点上实际发生的流入和流出,简称现金流。

7、机会成本:是指把一种具有多种用途的稀缺资源用于某一种特定用途上的,所放弃的其他用途中的最佳的收益。

8、盈亏平衡点:指一个项目盈利和亏损之间的转折点。

9、净现值:反映投资方案在计算期内获利能力的动态评价指标。

10、资金成本:投资者在工程项目实施中,为筹集和使用资金而付出的代价。

11、现金流量图:一种反映经济系统资金运动状态的图式。

12、内部收益率:是指工程技术方案在整个寿命期内累计净现值等于零时的收益率。

13、名义利率:“年利率为r,一年计息m次”,则r就为名义利率。

14、价值工程:以功能分析为核心,力求以最低寿命成本可靠地实现必要功能的有组织活动。

15静态投资回收期:不考虑资金时间价值的条件下,以项目的净收益抵偿项目全部投资所需的时间。

二、填空题1、工程经济学的特点有:立体性、实用性、定量性、比较性、预测性。

2、建筑生产的技术经济特点有:流动性、生产过程联系面广、综合性强、影响因素多、受气候条件影响大、不可间断性。

3、影响折旧的因素有:计提折旧的基数、固定资产的净残值、固定资产的使用年限。

4、可行性研究的特点先行性、不定性、预测性、决策性。

5、定量预测方法主要有:时间序列法、回归分析法。

需求工程期末复习

需求工程期末复习

第一章:需求工程导论1.需求工程定义:是所有需求处理活动的和,它收集信息、分析问题、整合观点、记录需求并验证其正确性,最终反映软件被应用后与其环境互动形成的期望效应.2.需求工程的基本活动:1)需求开发:需求获取,需求分析,需求规格说明,需求验证2)需求管理3.1)需求获取的目的是从项目的战略规划开始建立最初的原始需求;2)需求分析的目的是保证需求的完整性和一致性;3)需求规格说明的目的是将完整、一致的需求与能够满足需求的软件行为以文档的方式明确地固定下来;4)需求验证的首要目的是保证需求及其文档的正确性,即需求正确的反映了用户的真实意图;另一个目标是通过检查和修正,保证需求及其文档的完整性和一致性;5)需求管理的主要工作是跟踪后继阶段中的需求实现与需求变更情况,确定需求得到了正确的理解并被正确的是想到了软件产品中。

4.软件需求规格说明定义:软件需求开发用来确定系统需求中应该由软件满足的部分,将其映射为软件行为,产生软件需求规格说明。

第二章:需求基础5.软件系统能够与问题域进行交互和相互影响的原因在于,软件系统中的某些部分对问题域中的某些部分具有模拟特性.6.需求分类:1)功能需求:业务需求,用户需求,系统需求2)性能需求3)质量属性4)对外接口5)约束第三章:(不考)第四章:需求获取概述7.需求工程需要获取的内容主要有三种:1)需求2)问题域描述3)环境与约束8.需求获取信息的主要来源:1)涉众2)硬数据3)相关产品4)重要文档5)相关技术标准和法规9.获取信息的方法:1)传统方法:问卷调查,面谈,文档分析,文档检查,需求剥离2)集体获取方法:头脑风暴,专题讨论会,JAD,JRP3)原型4)模型驱动方法:基于场景,基于用例5)认知方法:任务分析,协议分析6)基于上下文的方法:观察,民族志,话语分析10.常见的组织方式是依照系统特性,确定系统的边界,建立上下文图或系统用例图,然后按照遍历上下文图和系统用例图的方式开展获取活动.第五章:确定项目的前景和范围11.前景:描述了产品的作用以及最终的功能,它将所有涉众都统一到一个方向上。

工程经济学期末复习题重点

工程经济学期末复习题重点

1A.净现值和益本比B .投资回收期和内部收益率D B C D A ; 11 —15: C B A D B ; 16— 20: C AA B D考虑到通货膨胀,投资风险和收益的不确定性,基准贴现率应() A.低于贷款利率B.等于贷款利率C.高于存款利率D.高于贷款利率 7.对于纯私人物品() A.排除成本很高 B.排除成本很低 C.额外一个人使用这种物品的边际成本很低 D.额外一个人使用这种物品的边际成本为 08. 某建设项目估计总投资50万元,项目建成后各年收益为8万元,各年支出为2万元,则该项目的静态投资回收期为()A. 6.3 年 B . 25 年 C . 8.3 年 D . 5 年9. 当在一系列方案中某一方案的接受并不影响其他方案的接受时,这种方案称为( A.互斥方案 B .互为从属方案 C .兼容方案 D .相互独立的方案10. 设年利率为10%已知某项目的净现值NPVdOAO ,贝U 将来值和年度等值可能出现的情况是()A. FW(10)A 0,AE(10)A 0 B . FW(10)A 0,AE(10)<0C. FW(1O)=O ,AE(10)A 0 D . FW(1O)<O ,AE(10)A 0 11.必须使用增量分析法以保证结果唯一性的指标是()《工程经济学》期末复习题、单项选择(第一部分) 1. 货币等值是指()A . 考虑货币时间价值的价值相等 B.发生的时间相同 C . 使用同一利率D.金额相等2. 第一年年初借出 1000元,以复利计息,年利率8%半年计息一次,第四年年末可收回多A . 1368.57 元B .1360.49 元C . 1850.93 元D . 1169.86 元3. 关于残值的说法正确的是() A .残值是一种会计术语B .残值=资产原值—折旧C . 残值可正可负D.残值就是账面价值 1 — 5 : A A C A D ; 6 —10 : 6.C.内部收益率和益本比 D .净现值和益本比212. 设方案甲、乙、丙的各年净现金流量如下表所示:则有可能出现3个内部收益率的方案为:()A.方案甲B .方案乙C .方案丙D .方案乙和方案丙都有可能 13. 受决策者心理导向影响最大的评价类型为() A.不确定性分析评价 B .风险性分析评价15. 从许多可以利用的方案中进行选择,从而使有限投资资金获得最佳收益,这种方法叫做16. 下列不形成无形资产的是:17. 已知某一项目生产能力为20吨,当时的投资额为300万元;现拟建一类似的新项目,生产能力设计为40吨,由于时隔三年,物价上涨,根据估计给出综合调整系数为 1.5 ;又根据经验给出生产能力指数为0.7,则拟建新项目的投资估算额为:()B . 600 万C . 900 万D . 630 万18. 关于投资资金总额的说法正确的是:()19.下列说法正确的是:() C 确定性分析评价D.概率性分析评价A. 可行性分析 B .资本预算C .投资控制D .经济评价 A.非专利技术B . 土地使用权C .环境保护费D .商誉A. 731 万 A. 主要来自于自有资金、赠款、以及负债资金B. 可以来源于负债资金,但只能来源于长期负债C. 不包含资本溢价D. 只要达到注册资本金即可A.流动资产=流动资金-流动负债 B .流动资产=流动资金+流动负债 C.流动负债=流动资金+流动资产D .流动资金=流动资产20.下列对于VE 对象的一般性选择原则正确的是( )C.选择结构较为简单的、单项选择(第二部分)第一年年初借入 5000 元,年利率 12%,以复利计息,第三年年末归还多少 ?( ) 7024.64 元 B .5600元 C .7867.60 元 D .6272元某项目初始投资 40 万元,预计年收益 5 万元,年支出 1 万元,则该方案投资效果系数为:400元。

软件工程期末复习资料二

软件工程期末复习资料二

软件工程期末复习资料二模拟试题心之所向,所向披靡一、填空题1.软件开发模型有()、()、第四代技术模型、()、构件组装模型、混合模型。

2.可行性研究一般可以从()可行性、()可行性、运行可行性、法律可行性和开发可行性等方面来研究。

3.现在向银行存款,年利率为i,若希望在n年后从银行得到F元,现在应该存入的钱数为()。

4.数据流图从数据传输和()角度,以()方式描述数据流从输入到输出的传输变换过程。

5.Jackson图除了可以表达程序结构外,还可以表达(),它首先要分析(),并用适当的工具来描述。

6.HIPO图是由一组()图加上一张()图组成。

7.把程序从一个硬件或软件环境中转移到另一种配置环境称为软件的()。

8.如果一个模块完成一组任务,这些任务彼此之间的关系是很松散的,这种內聚称为()。

9.白盒法的具体设计程序测试方法有语句覆盖、()、()、和路径覆盖。

10.组成UML的三种基本建筑块是()、关系和()。

11.面向对象的软件工程方法包括面向对象的分析、()、()、()和面向对象的软件维护等主要内容。

12.保证软件质量的措施主要有()、复查和管理复审、()。

13.提高软件质量和可靠性的技术大致分为两类,即()和()。

二、单项选择题1.下列()属于系统软件。

A.WINDOWS 2000B.WordC.FlashD.3D MAX2.下列哪个图是N-S图的构件()。

A.B.C. D.3.对于螺旋模型,下列()不是利用笛卡尔坐标表达的活动。

A. 制定计划B. 实施工程C. 风险分析D. 程序编码4.某次程序调试没有出现预计的结果,下列()不可能是导致出错的原因。

A.变量没有初始化B.编写的语句书写格式不规范C.循环控制出错D.代码输入有误5.下列关于程序效率的描述错误的是()。

A.提高程序的执行速度可以提高程序的效率B.降低程序占用的存储空间可以提高程序的效率C.源程序的效率与详细设计阶段确定的算法的效率无关D.好的程序设计可以提高效率三、多项选择题1.软件危机可以表现为()。

软件工程期末复习题(含答案)

软件工程期末复习题(含答案)

软件工程必备期末复习题选择题1.软件设计中划分模块的一个准则是(C)。

A低内聚低耦合B低内聚高耦合C高内聚低耦合D.高内聚高耦合2.(A)是用户和设计交换最频繁的方法。

A、原型化方法B、瀑布模型法C、螺旋模型方法D、构件组装模型3.试判断下列叙述中,哪个些是正确的(C)。

a、软件系统中所有的信息流都可以认为是事务流b、软件系统中所有的信息流都可以认为是变换流c、事务分析和变换分析的设计步骤是基本相似的A、aB、bC、cD、b和c4.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C)A、硬件环境B、软件开发的环境C、软件开发工具和软件开发的环境D、开发人员的素质5.20世纪50年代以来,出现了许多不同的程序设计语言,下列语言中哪个语言是低级语言(D)A、PASCALB、VISUALBASICC、C++D、汇编语言6.软件测试的目的是?(D)A.软件的正确性B.找出软件系统中存在的所有错误C.证明软件系统中存在错误D.尽可能多的发现软件系统中的错误7.使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准。

A、程序的内部逻辑B、程序的复杂程度C、该软件的编辑人员D、程序的功能8.软件维护工作的最主要部分是(C)。

A、纠正性维护B、适应性维护C、完善性维护D、预防性维护9.PDL是(B)语言。

A.高级程序设计语言B、伪码式C、中级程序设计语言D、低级程序设计语言10.软件的结构化设计(SD)方法中,一般分为概要设计和详细设计两阶段,其中详细设计主要是要建立(C)。

A、软件结构B、软件过程C、软件模型D、软件模块11.在数据流图中,○(椭圆)代表(B)A、数据流B、转换C、数据源D、外部实体12.总体设计目的是确定整个系统的(D)。

A、规模B、测试方案C、费用D、功能及模块结构13.检查软件产品是否符合需求定义的过程称为(A)。

A、确认测试B、集成测试C、验收测试D、验证测试14、在七种偶合中,最低偶合是(C)。

软件项目管理期末复习题集与参考答案解析

软件项目管理期末复习题集与参考答案解析

软件项⽬管理期末复习题集与参考答案解析软件项⽬管理期末复习题及参考答案⼀、单项选择题(1)赶⼯⼀个任务时,你应该关注(C )A. 尽可能多的任务B. ⾮关键任务C. 加速执⾏关键路径上的任务D. 通过成本最低化加速执⾏任务(2)下列哪个不是项⽬管理计划的⼀部分?(C)A. ⾥程碑图⽰B. 进度C. 数据库设计D. 风险清单(3)对⼀个任务进⾏进度估算时,A是乐观者,估计是6天完成,B是悲观者,估计是24天完成,C是有经验者认为最有可能是12天完成,那么这个任务的历时估算是介于10天到16天的概率是()E1=(O+4M+P)/6 δ1=(P-O)/6A. 50%B. 68.3%C. 70%D. 99.7%(4)关于浮动,下⾯除了哪个之外都是不正确的?(b )A. 每个任务都有浮动B. 只有复杂的项⽬有浮动C. 浮动是在不增加项⽬成本的条件下,⼀个活动可以延迟的时间量D. 浮动(时间)是在不影响项⽬完成时间的前提下,⼀个活动可以延迟的时间量(5)关于⽹络图,下⾯哪个是不正确的?(D )A. ⽹络图可⽤于安排计划B. ⽹络图展⽰任务之间的逻辑关系C. ⽹络图可⽤于跟踪项⽬D. ⽹络图可⽤于详细的时间管理(6)需求分析是回答系统必须( a )的问题A. 做什么B. 怎么做C. 何时做D. 为谁做(7)为了有效地管理项⽬,应该将⼯作分解为更⼩的部分,以下各项中,哪⼀项不能说明任务应该分解到什么程度?(A )A. 可以在80⼩时内完成B. 不能再进⼀步进⾏逻辑细分了C. 可由⼀个⼈完成D. 可以进⾏实际估算(8)下⾯哪个不是需求管理的过程(D )A. 需求设计B. 需求获取C. 需求分析D. 需求变更(9)(a )是⽤系统的功能数量来测量其规模,与实现产品所使⽤的语⾔和技术没有关系的。

A. 功能点B. 对象点C. 代码⾏D. ⽤例点(10)如果你是某项⽬的项⽬经理,你已经估算出每个单元的成本是¥129。

这个项⽬⼀共有1200单元,你采⽤什么估算⽅法?(b )A. ⾃下⽽上估算法B. 类⽐估算法C. 专家估算法D. 参数估算法(11)风险的三个属性是(c)A. 风险发⽣的时间、地点、负责⼈B. 风险事件、时间、影响C. 风险事件、概率、影响D. 风险数量、风险影响程度、概率(12)“质量成本”是⼀个项⽬管理概念,它说明了下列哪项成本(a )A. 额外需求的成本B. 需求变更的成本C. 确保符合需求的成本D. 固定成本(13)在风险分析过程中,确定已经识别的⼀个风险事件是⽆法避免的,也是不能减轻的,也不能投保,这是⼀个关键的风险事件,⼀旦发⽣可能造成项⽬的失败,项⽬经理最佳的选择是(C )A. 降低风险的级别,项⽬团队将找到⼀个克服故障的⽅法B. 特别关注,加强管理该风险事件和所有的相关事件C. 让风险评估⼩组继续分析该风险事件,直到降低预期影响D. 忽略风险评估,因为不管赋予什么值,都只是⼀个估算。

软件工程期末复习资料2(1)

软件工程期末复习资料2(1)

软件工程复习资料选择题,请从四个可选项中选择正确答案。

1.软件工程学科出现的主要原因是(C。

A. 计算机的发展B. 其他工程科学的影响C. 软件危机的出现D. 程序设计方法学的影响2、(A)是职业软件工程师的必要条件。

A.自律、善于沟通、具有一定的软件技能B.编程速度快C.熟悉众多的软件环境D.语言天赋3.在E-R 模型中,包含以下基本成分(C)。

A.数据、对象、实体B.控制、联系、对象C.实体、属性、联系D.实体、数据、联系4.软件需求分析产生一个重要文档是(.B )。

A.软件维护说明书B.需求规格说明书C.可行性报告D.初步用户手册5.内聚程度较低的是(D )。

A.通信内聚B.过程内聚C.顺序内聚D.时间内聚6.概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是(D )A.把软件划分成模块B确定模块之间的调用关系C.确定各个模块的功能D.设计每个模块的伪代码7、程序流程图与数据流程图的关系(A)。

A.不确定B.数据流程图可以转换成程序流程图C.数据调用关系D.程序流程图可以转换成数据流程图8.对象实现了数据和操作的结合,使数据和操作(D)于对象的统一体中。

A.结合B.隐藏C.封装D.抽象9.类有3种类型,即(B )。

A.边界类、实体类、控制类B.实体类、控制类、界面类C.控制类、实体类、虚类D.界面类、控制类、公共类10.(D )是一般化类与特殊化类之间的一种关联形式,设计时应该适当使用这种耦合。

A.消息连接B.参数传递C.方法重写D.继承11、软件工程的研究内容具有层次化结构,最底层是质量保证层,中间层是(C),最上层是工具层。

A.过程层B.方法层C.过程层和方法层D.系统层12、可行性研究的四大要素是(D)。

A.经济、技术、法律和社会环境B.经济、技术、开发组织能力和领导者水平C.经济、技术、计算机硬件环境和网络带宽D.经济、技术、软件开发工具和人员的稳定性13、针对需求不确定的软件开发,比较好的模型是(A)。

软件工程期末复习要点归纳总结

软件工程期末复习要点归纳总结

第一章软件工程学概论1、软件危机产生的原因软件本身的特点:难于维护、逻辑复杂软件开发与维护的方法不正确:忽略需求分析重要性、轻视软件维护课本表述:1、软件不同于硬件,它是计算机中的逻辑部件而不是物理部件2、软件不同于一般程序,它的一个显著特点是规模庞大,而且程序的复杂性将规模的增加而呈现指数上升;3、软件本身特有的特点确实给开发和维护带了一些客观困难4、软件开发与维护有关的许多错误认识与做法有关忽略需求分析,轻视软件维护5、对用户要求没有完整准确的认识就匆忙开始着手编写程序6、在软件不同阶段进行修改需要付出的代价是很不相同的2、软件危机的表现什么是软件危机1、成本高:2、软件质量得不到保证:软件质量问题导致失败的软件项目非常多3、进度难以控制:●项目延期比比皆是●由于进度问题而取消的软件项目较常见●只有一小部分的项目能够按期完成4、维护十分困难:▼软件维护的多样性▼软件维护的复杂性▼软件维护的副作用3、克服软件危机1、管理的角度:软件开发过程的研究、文档的标准化以及人员的交流方式等2、软件开发方法的研究结构化软件开发方法, 面向对象的开发4、软件工程的定义概括的说,软件工程师指导计算机软件开发和维护的一门工程学科;采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程;1、软件工程就是建立和使用一套合理的工程原理,从而经济地获得可靠的、可以在实际机器上高效运行的软件;2、①把系统的、规范的、可度量的方法应用于软件开发、运行和维护的过程,也就是把工程应用于软件.②研究①中提到的途径总之:软件工程是应用计算机科学、数学及管理科学等原理开发软件的工程;他借鉴传统工程的原理、方法,以提高质量,降低成本为目的;5、软件工程的本质特性1、关注与大型程序的构造2、中心课题是控制复杂度3、软件经常变化4、开发软件的效率非常重要5、和谐的合作是开发软件的关键6、软件必须有效地支持它的用户7、在软件工程领域中通常由具有一个文化背景的人替另外一种文化背景的人创造产品6、软件工程的基本原理1、用分阶段的生命周期计划严格管理2、坚持进行阶段评审3、实行严格的产品控制4、采用现代程序设计技术5、结果应能清楚地审查6、开发小组应该少而精7、承认不断改进软件工程实践的必要性软件工程学包含3个要素:方法、工具和过程7、软件生命周期1、概念:软件生命周期由软件定义、软件开发和运行维护也成软件维护3个时期组成;2、内容:1、问题定义回答“要解决的问题是什么“,写出关于问题性质、工程目标和工程规模的书面报告2、可行性分析回答”对于问题是否有行得通的解决办法“,即探索问题是否值得去解,是否有可行的办法3、需求分析确定”为了解决这个问题,目标系统必须做什么“,确定目标系统必须具备哪些功能,得到需求规格说明书;4、总体设计回答”概括地说,应该怎样实现目标系统“,确定程序由哪些模块组成以及模间的关系5、详细设计回答”应该怎样具体地实现这个系统呢”,确定实现模块功能所需要的算法与数据结构6、编码和单元测试写出正确的容易理解、容易维护的程序模块,然后仔细测试每个模块7、综合测试通过各种类型的测试及相应的调试是软件达到预定要求8、软件维护通过各种必要活动是系统持久地满足用户需求8、生命周期模型1、瀑布模型传统瀑布模型特点:1、阶段间具有顺序性与依赖性2、推迟实现的观点3、质量保证的观点瀑布模型优点:1、可强迫开发人员使用规范的方法例如:结构化技术;2、严格规定每个阶段必须提交的文档;3、要求每个阶段交出的所有产品都必须通过验证;缺点:1、“瀑布模型是由文档驱动的”成为主要缺点适用范围:适合于用户需求明确、完整、无重大变化的软件项目开发;2、快速原型模型适用范围:用户不能给出完整、准确的需求说明,或者开发者不能确定算法的有效性、操作系统的适应性或人机交互的形式等情况;3、增量模型特点:1、反复的应用瀑布模型的基本成分和原型模型的迭代特征,每一个线型过程产生一个“增量”的发布或提交,该增量均是一个可运行的产品;2、早期的版本实现用户的基本需求,并提供给用户评估的平台;优点:1、在较短时间内向用户提交可完成部分工作的产品;2、逐步增加产品功能可以使用户有较充裕的时间学习和适应新产品,从而减少一个全新的软件可能给客户组织带来的冲击;缺点:1、软件体系结构必须是开放的;2、开发人员既要把软件系统看作整体;又要看成可独立的构件,相互矛盾;3、多个构件并行开发,具有无法集成的风险;4、螺旋模型基本思想:使用原型或其他方法来降低风险;适用范围:适用于内部开发大规模软件项目;优点:1、对可选方案和约束条件的强调有利于已有软件的重用,也有助于把软件质量作为软件发的一个重要目标2、减少了过多测试或测试不足3、维护和开发之间并没有本质区别缺点:1、风险驱动,需要相当丰富的风险评估经验和专门知识,否则风险更大2、随着迭代次数的增加,工作量加大,软件开发成本增加5、喷泉模型特点:喷泉模型是一种以用户需求为动力,以对象为驱动的模型,主要用于采用对象技术的软件开发项目;该模型认为软件开发过程自下而上周期的各阶段是相互迭代和无间隙的特性;6、Rational统一过程RUP重复一系列周期,每个周期由一个交付给用户的产品结束;每个周期划分为初始、细化、构造和移交四个阶段,每个阶段围绕着五个核心工作流需求、分析、设计、实现、测试分别迭代;第二章可行性研究1、概念目的用最小的代价在尽可能短的时间内确定问题是否能够解决,不是解决问题,而是确定问题是否值得去解决;2、可行性研究任务了解客户的要求及现实环境,从技术、经济和社会因素等三方面研究并论证本软件项目的可行性,编写可行性研究报告,制定初步项目开发计划;即对软件开发以后的行动方针提出建议;3、研究内容(1)技术可行性使用现有的技术能实现这个系统吗(2)经济可行性这个系统的经济效益能超过它的开发成本吗(3)操作可行性系统的操作方式在这个用户组织内行得通吗(4)法律可行性新系统开发是否会侵犯法藤、集体或国家利益4、数据字典1、内容1、数据流2、数据流分量即数据元素3、数据存储4、处理2、作用对于数据流图中出现的所有被命名的图形元素在字典中作为一个词条加以定义,使得每一个图形元素都有一个确切的定义;第三章需求分析1、需求分析的任务(1)确定对系统的综合要求(2)分析系统的数据要求(3)导出系统的逻辑模型(4)修正系统的开发步骤2、获取需求的方法(1)访谈(2)面向数据流自顶向下(3)简易的应用规模说明技术(4)快速建立软件模型3、实体-关系图P63、层次方框图P68和IPO图P694、结构化分析模型●数据流图:描绘当数据在软件系统中移动时被变换的逻辑过程,指明系统具有的变换数据的功能,是建立功能模型的基础●实体-联系图:描绘数据对象及数据对象之间的关系,用于建立数据模型;●状态转换图:指明了作为外部事件结果的系统行为;描绘了系统的各种行为模式称为“状态”和在不同状态间转换的方式;是行为建模的基础第四章总体设计1、模块独立性与耦合性P97(1)模块化把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求模块化的优点:1.使软件结构清晰,容易设计也容易阅读与理解2.容易测试与调试,提高可靠性3.提高软件的可修改性4.有助于软件开发工程的组织管理(2)模块独立的重要性○有效的模块化即具有独立的模块的软件比较容易开发出来○独立的模块比较容易测试和维护(3)耦合衡量不同模块彼此间互相依赖连接的紧密程度,耦合要低,即每个模块和其他模块之间的关系要简单1、数据耦合:两个模块之间通过参数交换信息,而且交换的信息仅仅是数据2、控制耦合:传递的信息中有控制信息3、特征耦合:当把整个数据结构作为参数传递而被调用的模块只需要使用其中一部分数据元素4、公共环境耦合:两个或多个模块通过一个公共环境相互作用5、内容耦合:出现一下情况之一,则为内容耦合:1、一个模块访问另一个模块的内部数据2、一个模块不通过正常入口而转到另一个模块的内部3、两个模块有一部分代码重叠4、一个模块有多个入口数据耦合<控制耦合<特征耦合<公共环境耦合<内容耦合(4)内聚P99衡量一个模块内部各个元素彼此结合的紧密程度;内聚要高,每个模块完成一个相对独立的特定子功能信息隐藏P96应该这样设计和确定模块,使得一个模块内包含的信息过程和数据对于不需要这些信息的模块来说,是不能访问的2、启发规则1、改进软件结构提高模块独立性2、模块规模应该适中3、深度、宽度、扇入、扇出都应适中4、模块的作用域应该在控制域之内5、力争降低模块接口的复杂度6、设计单入口、单出口模块7、模块功能应该可以预测3、层次图和HIPO图P1024、面向数据流的设计方法P104(1)概念面向数据流设计就是把信息流映射成软件结构,信息流的类型决定了映射的方法;信息流包括变换流、事物流;(2)变换分析与事务分析P1055、小结i.进行软件结构设计遵循的最主要的原理是模块独立原理ii.抽象和求精是一对互补概念iii.软件工程师在实践中总结经验得出一些很有参考价值的启发式规则iv.自顶向下逐步求精是进行软件结构设计的常用途径v.用形式化的方法由数据流图映射出软件结构第五章实现1、选择程序设计语言为了使程序容易测试和维护以减少软件的总成本,所选用的高级语言程序应该有理想的模块化机制,以及可读性好的控制结构和数据结构:为了便于调试和提高软件可靠性,语言特点应该是编译程序能够尽可能多地发现程序中的错误;为了降低软件开发和维护的成本,选用的高级语言应该有良好的独立编译机制;第六章软件测试2、测试的概念(1)测试是为了发现程序中的错误而执行程序的过程(2)好的测试方案是极可能发现了至今为止尚未发现的错误的测试方案;(3)成功的测试是发现了至今为止尚未发现的错误的测试;3、测试的过程与步骤P153大型软件的测试过程基本由下述几个步骤组成(1)模块测试单元测试发现编码和详细设计的错误(2)子系统测试(3)系统测试集成测试(4)验收测试确认测试(5)平行运行4、单元测试P153着重从下述5个模块进行测试主要使用白盒测试技术(1)模块接口(2)局部数据结构(3)重要的执行通路(4)出错处理通路(5)边界条件5、集成测试P156集成测试就是测试和组装软件的系统化技术,主要目标是发现与接口有关的问题;有两种集成策咯(1)自顶向下集成(2)自底向上集成6、确认测试P160也称验收测试,它的目标是验证软件的有效性;通常使用黑盒测试法;7、白盒测试技术P162白盒方法测试软件时设计测试数据的典型技术(1)逻辑覆盖1、语句覆盖2、判定覆盖3、条件覆盖4、判定/条件覆盖5、条件组合覆盖6、点覆盖7、边覆盖8、路径覆盖(2)控制结构测试1、基本路径测试2、条件测试3、循环测试8、黑盒测试技术P171黑盒测试力图发现下述类型的错误:(1)功能不正确或遗漏了功能;(2)界面错误;(3)数据结构错误或外部访问数据库错误(4)性能错误(5)初始化和终止错误黑盒测试用到的技术(1)等价划分(2)边界值分析(3)错误推测第七章维护1、维护的定义P189所谓软件维护就是在软件已经交付使用周,为了改正错误或满足新的需要而修改软件的过程;根据交付使用之后可能进行的4项活动具体定义软件维护(1)改正性维护纠正在使用过程中暴露出来的错误;诊断和改正错误的过程,(2)适应性维护为了和变化了的环境适当地配合而进行的修改软件活动(3)完善性维护在使用软件的过程中增加新的功能或修改已有功能,还可能提出一般性的改进意见的过程(4)预防性维护为了改进未来的可维护性与可靠性,或为了给未来的改进奠定更好的基础而修改软件的过程;2、维护的过程P192(1)维护组织(2)维护报告(3)维护的事件流(4)保存维护记录(5)评价维护活动3、小结1、软件生命周期每个阶段的工作都和软件可维护性有密切关系;2、再工程过程可以在完成任意一个活动之后中止第八章面向对象技术1、面向对象方法学要点(P203面向对象方法学的出发点和基本原则,是尽可能模拟人类思维方法,是开发软件尽可能接近人类认识世界解决问题的方法与过程;2、面向对象方法学优点1、与人类习惯的思维方法一致2、稳定性好3、可重用性好4、较易开发大型软件产品5、可维护性好3、对象模型(P216对象模型表示静态的,结构化的系统的“数据”性质;它是对模拟客观世界实体的对象以及对象彼此之间的关系的映射,描述了系统的静态结构;4、动态模型(P223动态模型表示瞬时的、行为化的系统的”控制“性质,它规定了对象模型中的对象的合法序列;5、功能模型(P224功能模型表示变化的系统的”功能“性质,他指明了系统应该”做什么”,因此更直接反映了用户对目标系统的需求;6、 三种模型之间的关系(P 228功能模型指明了系统应该“做什么”;动态模型明确规定了什么时候即在何种状况下接受什么时间的触发做;对象模型则定义了做事情的实体;在面向对象方法学中,对象模型是最基本的,它为其他两种模型奠定了基础,人们依靠对象模型完成了3中模型的集成;下面扼要地叙述3种模型之间的关系; 三种模型描述了系统的不同方面: 对象模型 动态模型 功能模型 对象的静态结构及相互关系与时间和顺序有关的系统性质 与值的变化有关的系统性质 描述系统的数据结构控制结构 系统的功能 “干事的主体”“什么时候干” “干什么”7、 其他复杂问题大型系统的对象模型通常由下述5个层次组成:主题层、类与对象层、结构层、属性层、服务层主题层类与对象层结构层属性层服务层功能模型与对象模型的关系--对象模型描述了功能模型中的动作对象,数据存储以及数据流结构 --功能模型中的处理对应于对象模型中的操作 动态模型与对象模型的关系 --状态转换驱使行为发生,这些行为在DFD 中被映射成处理,它们同时与对象模型的操作相对应 --针对每个建立的动态模型描述了类实例的生命周期或运行周期动态模型与功能模型的关系--功能模型中的处理可能产生动态模型中的事件;面向对象开发方法包括OOA面向对象分析、OOD面向对象设计、OOP面向对象实现三个部分第九章软件项目管理1、估算软件规模P305(1)代码行技术每个人了估计程序的最小规模a,最大规模b和最可能规模m,分别算出这3中规模的平均值a̅、b̅和m̅之后,用下面公式计算程序规模:L=a̅+4m̅+b̅6(2)功能点技术2、项目进度Gantt图3、质量保证概括得说,软件质量就是“软件与明确地和隐含地定义的需要相一致的程度”;更具体地说,软件质量是软件与明确地叙述的功能和性能需求、文档中明确描述的开发标准以及任何专业开发的软件产品都应该具有的隐含特征相一致的程度;4、软件配置管理软件配置管理事是在软件的整个生命周期内管理变化的一组活动;具体地说,这组活动用来:(1)标识变化(2)控制变化(3)确保适当地实现了变化(4)向需要知道这类信息的人报告变化5、基线基线是一个软件配置管理概念,它有助于人们在不严重合理变化的前提下来控制变化,简而言之,基线就是通过了正式复审的软件配置项;;在软件配置项变成基线之前,可以迅速而非正式地修改它;其他复习简答题1、简述文档在软件工程中的作用;1 提高软件开发过程的能见度2 提高开发效率3 作为开发人员阶段工作成果和结束标志4 记录开发过程的有关信息便于使用与维护;5 提供软件运行、维护和培训有关资料;6 便于用户了解软件功能、性能;。

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

第一章:需求工程导论1.需求工程定义:是所有需求处理活动的和,它收集信息、分析问题、整合观点、记录需求并验证其正确性,最终反映软件被应用后与其环境互动形成的期望效应。

2.需求工程的基本活动:1)需求开发:需求获取,需求分析,需求规格说明,需求验证2)需求管理3.各个活动的目的:1)需求获取的目的是从项目的战略规划开始建立最初的原始需求;2)需求分析的目的是保证需求的完整性和一致性;3)需求规格说明的目的是将完整、一致的需求与能够满足需求的软件行为以文档的方式明确地固定下来;4)需求验证的首要目的是保证需求及其文档的正确性,即需求正确的反映了用户的真实意图;另一个目标是通过检查和修正,保证需求及其文档的完整性和一致性;5)需求管理的主要工作是跟踪后继阶段中的需求实现与需求变更情况,确定需求得到了正确的理解并被正确的是想到了软件产品中。

4.软件需求规格说明定义:软件需求开发用来确定系统需求中应该由软件满足的部分,将其映射为软件行为,产生软件需求规格说明。

第二章:需求基础5.软件系统能够与问题域进行交互和相互影响的原因在于,软件系统中的某些部分对问题域中的某些部分具有模拟特性。

6.需求分类:1)功能需求:业务需求,用户需求,系统需求2)性能需求3)质量属性4)对外接口5)约束第三章:(不考)第四章:需求获取概述7.需求工程需要获取的内容主要有三种:1)需求2)问题域描述3)环境与约束8.需求获取信息的主要来源:1)涉众2)硬数据3)相关产品4)重要文档5)相关技术标准和法规9.获取信息的方法:1)传统方法:问卷调查,面谈,文档分析,文档检查,需求剥离2)集体获取方法:头脑风暴,专题讨论会,JAD,JRP3)原型4)模型驱动方法:基于场景,基于用例5)认知方法:任务分析,协议分析6)基于上下文的方法:观察,民族志,话语分析10.常见的组织方式是依照系统特性,确定系统的边界,建立上下文图或系统用例图,然后按照遍历上下文图和系统用例图的方式开展获取活动。

第五章:确定项目的前景和范围11.前景:描述了产品的作用以及最终的功能,它将所有涉众都统一到一个方向上。

12.范围:指出了当前项目是要解决产品长远规划中的哪一个部分,范围声明它为项目规定了需求的界限。

13.对于不明确的问题,直接抛弃是一种错误的做法,正确的做法应该是使用不同的方法发现涉众提出不明确问题的原因,理解不明确问题背后深藏的问题。

14.需要注意的是问题解决方案的边界不是系统的边界,一个解决方案外部的输入可能来自于同一个系统中另一个问题解决方案的输出,即系统的内部。

15.描述系统的边界,通常会用上下文图和系统用例图。

第六章:涉众分析与硬数据采样16.涉众定义:所有能够影响软件系统的实现,或者被实现后的软件系统影响的个人和团体。

17.四种常见涉众类型:1)参与者2)环境设定者3)被影响者4)观众(优先级最低):领域专家和市场力量是比较常见的观众18.硬数据1)定量硬数据:数据收集表格,统计报表2)定性硬数据:整个组织的描述文档,业务指导文档,业务备忘第七章:需求获取方法之面谈19.面谈结构:1)金字塔结构2)漏斗结构3)菱形结构20.面谈分为三种类型:1)结构化面谈2)半结构化面谈3)非结构化面谈21.调查问卷,头脑风暴(P130)第八章:需求获取方法之原型22.原型:是一个系统,它内化了一个更迟系统的本质特征。

原型系统通常被构造为不完整的系统,以在将来进行改进、补充或者代替。

23.原型的类别1)按照开发方法进行分类:演化式原型,抛弃式原型(探索式原型,实验式)2)按照构建技术进行分类:水平原型,垂直原型24.原型的需求内容:(三个)1)外观2)角色3)实现第九章:需求获取方法之观察与文档审查25.常见的观察方法:1)采样观察2)民族志3)话语分析4)协议分析5)任务分析26.应用观察方法解决的问题:1)理解复杂的协同事件2)获取工作中的异常处理3)获取与用户认知不一致的实际知识4)了解用户的认知5)获取默认知识27.采样观察法:1)时间采样2)事件采样28.文档审查中文档分为三种类型:1)相关产品的需求规格说明2)硬数据3)客户的需求文档29.另外,需要注意的是,文档虽然来自于当前计算机或手工系统的产物,但这并不表示它就是正确的。

第十章:需求组织——需求获取中的模型驱动方法30.模型驱动方法:是一类以定义明确的模型为理论基础,依据模型指导和组织活动开展的需求工程方法。

31.目标模型(P165)32.场景方法的分类框架:1)场景的形式:描述,外观2)场景的内容3)场景的目的:描述,探索,解释4)场景的生命周期33.用例描述1)用例是静态的结构化文本描述2)用例可以用于各种目的的应用,包括描述、探索、解释34.用例之间的关系:(三种)1)包含2)扩展3)泛化35.在需求工程中,主要产生三类重要的文档:1)项目前景和范围文档2)用户需求文档3)需求规格说明36. 用例文档通常被用来代替用户需求文档,起到记录、交流领域信息和用户期望的作用。

在特殊的情况下,用例文档还可以用来代替需求规格说明,但总的来说这是一种并不值得提倡的方法。

第十一章:需求分析概述37.总的来说,需求获取得到的信息和需求开发应该建立的软件系统解决方案之间有着很大的差距,需求分析就是用来解决这个差距的需求工程活动。

38.需求分析的根本任务:1)建立分析模型(分析的活动主要包括识别、定义和结构化,它的目的是获取某个可以转换为知识的事物的信息,这种分析活动被称为建模——建立需求分析模型。

)2)创建解决方案(创造性)39.建模常用的两种手段:1)抽象2)分解40.两个世界与三种模型(P190)41.模型语言的三要素:1)语法2)语义3)语用42.需求分析方法:1)结构化方法2)信息工程方法3)面向对象方法(是目前工业界使用的主流方法)43.前期需求阶段分析的重点是理解问题世界,因此它关注的是整个问题世界,注重于系统的环境、开发组织的业务分析背景、涉众的特征以及目标等等,软件系统只是整个背景下的一个要素;后期需求阶段分析关注的是解系统解决方案的建立,因此它以软件系统为中心,注重于分析系统的内部功能以及它与环境的互动,是对系统功能的详细信息的分析。

44.需求细化:需求分析活动的一个重要任务是进行需求细化,明确用户需求的隐含信息,展开为明确的对软件系统的行为期望,即系统需求。

第十二章:过程建模45.过程建模定义:过程建模是结构化分析方法的典型技术。

过程建模将系统看做是过程的集合,其中一些由人来执行,另一些由软件系统来执行。

46.过程建模使用的技术:1)上下文图2)数据流图3)微规格说明(又称为过程规范)4)数据字典47.数据流图中的外部实体:外部实体是指处于待构建系统之外的人、组织、设备或者其他软件系统,它们不受系统的控制,开发者不能以任何方式操纵他们。

所有的外部实体联合起来构成了软件系统的外部上下文环境,他们与软件系统的交互流就是软件系统与其外部环境的接口,这些接口联合起来定义了软件系统的系统边界。

48.上下文图:是DFD最高层次的图,是系统功能的最高抽象。

49.0层图:通常被用来作为整个系统的功能概图。

0层图中不应该出现太过具体的过程和数据存储。

50.微规格说明(P245):结构化英语,行为图,决策树,决策表51.数据字典:是一个存储库,包含软件使用和产生的所有数据对象的描述,其中也包括DFD当中数据流的数据存储的定义。

第十三章:数据建模52.数据模型:(P265)53.属性取值范围称为域。

54.标识符(键),主键,替代键55.关系的度数是指参与关系的实体数量,是度量关系复杂度的一个指标:1)一元关系(递归关系)2)二元关系3)三元关系56.关系的基数:1)最大基数(键约束)2)最小基数(参与约束)57.被关系影响的实体:1)弱实体2)关联实体(常见形式:进程实体)58.ERD的创建步骤:1)从描述信息中辨别实体2)确定实体的标识符3)建立实体之间的关系4)添加详细的描述信息59.复杂情况下的ERD创建步骤:1)发现系统的概念域2)建立对概念域的描述3)展开概念域4)合并概念域的局部数据结构60.功能/实体矩阵(P281)第十四章:面向对象建模61.行为模型分为三种:1)交互图:依据交互行为进行的用例实现;2)状态图:依据处理流程(控制流和数据流)进行的用例实现;3)活动图:以状态机模型的方式进行的用例实现。

62.交互图概念:用于描述在特定上下文环境中一组对象的交互行为,该上下文环境就是被实现用例的某个场景。

所以,交互图通常描述的是单个用例的典型场景。

交互图中的每一个交互都描述了环境中的对象为了实现某个目标而执行的一系列消息交换。

相关文档
最新文档