软件工程问答题

软件工程问答题
软件工程问答题

How do software characteristics differ from hardware characteristics?

1软件是设计开发的,而不是传统意义上生产制造的。2软件不会“磨损”。3虽然整个工业向着基于构件的构造模式发展,然而大多数软件仍是根据实际的顾客需求定制的。

What is equivalence partitioning as it applies to software testing? What is scenario-based testing?

等价划分是一种黑盒测试方法,它将程序的输入划分为若干的数据类,从中生成测试用例。理想的测试用例是可以单独的发现一类错误,否者在观察到一般错误之前需要进行许多测试用例,等价划分试图定义一个测试用例以发现一类错误,由此减少所需测试用例的总数。基于场景的测试:它关心的是用户做什么,而不是产品做什么,捕获用户完成的任务,然后在测试时候使用它们及其变体。场景用来发现交互错误。这种测试倾向于用单一测试检查多个子系统。

Describe the differences between software construction and software deployment.

软件的构造包括了编码和测试任务,从而为向客户和最终用户交付可运行软件做好准备。

部署则包括了三个动作:交付,支持和反馈。用于现代软件工程本质上是演变的,因此部署并不是只发生一次。两者都是软件工程的通用框架活动,但是构件肯定是发生在部署之前,部署是构件的下一个活动。

What are the six steps for requirements engineering?

需求工程的六个步骤是:起始,导出,精化,协商,规格说明,确认和管理

Which UML (unified modeling language) diagrams are useful in object-oriented analysis modeling?

静态图:用例图,类图,对象图,构件图,部署图。动态度:状态图,时序图,协作图,活动图。

List the four design models required for a complete specification of a software design and the

role of each.

Data design, architectural design, interface design, procedural design. 数据设计、体系结构设计、接口设计、过程设计

?Data - high level model user’s view data.

?Architecture – relationships among software model and hardware elements

?Interface - externally observable behavior of a class and access to its operations

?Component - internal detail of each software component

Why is regression testing an important part of any integration testing procedure?

回归测试就是用来保证(由于测试或者其他原因)改动不会带来不可预料的行为或者另外的错误的活动。

Describe the differences between black-box testing and white-box testing.

黑盒测试:(也叫功能测试)根据被测试程序的功能来进行的测试。

白盒测试:(也叫结构设计)是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。

区别:黑盒测试:主要从用户的输入和系统输出进行软件外部的测试。

白盒测试:主要对软件内部的逻辑业务进行测试。

Describe the five framework activities involved in the software process.

五个框架活动分别是沟通、策划、建模、构建和部署。

(1)沟通:这个框架活动主要包含与客户(和其他共同利益者)之间大量的交流和协作,还包括需求获取以及其他相关活动。

(2)策划:指为后续的软件工程工作制定计划,它描述了悬疑执行的技术任务,可能的风险,资源需求,工作产品和工作进度计划。

(3)建模:它包括创建模型和设计两个方面,创建模型有助于客户和开发者更好地理解软件需求,而设计可以实现需求。

(4)构建:它包括编码(手写的或者自动生成的)和测试(测试是为了发现编码中得错误)。(5)部署:软件(全部或者完成的部分)交付到用户,用户对其进行评测并给出反馈意见。List the types of models that might be used in requirements modeling and explain the role of each type of model.

(1)基于场景的元素表述用户如何与系统和使用软件时出现的特定活动序列进行交互。(2)基于类的元素建模于系统操作的对象,应用在这些对象间影响操作和对象间关系(某层级)的操作,以及定义的类间发生的协作。(3)行为元素描述了外部事件如何改变系统或驻留在系统里的类的状态。(4)最后,面向流的元素表示信息转换的系统,描述了数据对象在流过各种系统功能时是如何转换的。

Briefly describe the primary differences betweet structured analysis and object-oriented analysis 结构化分析中数据可作为独立实体转换,数据对象模型的方式定义了它们的属性和关系。操作数据对象的建模过程表明当数据对象通过系统时如何转换数据。分析建模的第二种方法称作面向对象分析,这种方法关注于定义类以及影响客户需求的类之间的协作方式。

What are the key differences between validation testing goals and verification (or acceptance) testing goals?

(1)在验证测试中,测试团队的目的,以确保每个软件的功能或性能特点

符合其规格。

(2)在确认测试中,测试团队需要确保软件正常工作为目的的用户在他或

她的正常工作环境。

Describe the differences between the software engineering terms coupling and cohesion?

(coupling)耦合性:指一个模块与其他模块间的联系,也称为块件联系。

(cohesion)内聚性:指模块内部各个成分之间的联系,也称为块内联系。

How does the object-oriented view of component-level design differ from the traditional view?

面向对象的观点侧重于阐述了来自这两个问题和基础设施领域的设计类。类由指定的消息的细节,可识别的接口,定义属性的数据结构,并描述用于操作流程阐述。在传统观念中,三个组成部分细化为:控制模块,模块领域和基础设施模块。这要求为数据结构,接口,和算法创建表示每个程序模块中足够的细节以产生编程语言源代码。

软件项目管理问答题

1.什么是项目?它与多数人的日常工作有什么不同? 项目就是为了创造一个唯一的产品或提供一个唯一的服务而进行的临时性的努力;是以一套独特而相互联系的任务为前提,有效地利用资源,在一定时间内满足一系列特定目标的多项相关工作的总称。 项目与日常工作的不同是:项目是一次性的,日常工作是重复进行的;项目是以目标为导向的,日常工作是通过效率和有效性体现的;项目是通过项目经理及其团队工作完成的,日常工作是职能式的线性管理;项目存在大量的变更管理,日常工作基本保持持续的连贯性。 2、项目管理与一般管理有什么不同? (1)从负责人来看,项目管理的负责人是项目经理,而一般管理一般由部门经理负责。 (2)从实施组织来看,项目管理的实施组织是一个项目团队(柔性组织),而一般管理的实施组织一般是一个部门或一个科 室之类的稳定的组织。 (3)从时限性来看,项目管理是一次性的(时间限制),而一般管理是持续不断的(相对无限)。 (4)从目标来看,项目管理是持续不断(相对无限)的,而一般管理具有重复性。 (5)从管理重点来看,项目管理注重效果,而一般管理注重效率。 (6)从资源需求来看,项目管理有多变的资源需求,而一般管理有稳定的资源需求。 (7)从活动性质来看,项目管理有风险和不确定性,一般管理有经验性和确定性。 3、简述软件项目管理的过程。 一般认为项目管理的过程是由以下四个基本工作过程组成的。 (1)项目确立:包括项目评估、立项、招投标、授权等环节。 (2)项目计划:包括软件项目范围计划、成本计划、进度计划、质量计划、人员与沟通计划、风险计划、合同计划等等。 (3)项目执行控制:包括项目集成计划执行控制、核心计划执行控制、辅助计划执行控制等等。 (4)项目结束:包括合同结束和项目结束。 4、项目管理的定义。 项目管理是以项目为对象,通过使用知识、技能、工具和方法来组织、计划、实施并监控项目,使之满足项目目标需求的过程。 5、图示软件项目声明周期与管理过程 6、简述项目生命期中的检查点、里程碑、基线概念。 检查点:它指在规定的时间间隔内对项目进行检查,比较实际现状与计划之间的差异,并根据差异进行调整 里程碑:它是完成阶段性工作的标志,不同类型的项目里程碑不同 基线:它指一个(或一组)配置项在项目生命期的不同时间点上,通过正式评审而进入正式受控的一种状态

软件项目管理大作业

软件项目管理大作业 软件项目购销合同 本合同由下述双方签署: 甲方: 联系电话: 乙方: 联系电话: 根据《中华人民共和国合同法》及其他有关规定,甲乙双方在平等、自愿、公开、

诚实信用的基础上就XXXXXX储蓄软件项目事宜,经甲乙双方友好协商如下: 第一条储蓄软件项目实施所需的条件(人工及人工费由甲方负责,但技术和质量全部由乙方负责),所进行项目开发所需的事宜明细见附件,附件与本合同不可分割,具有同等法律效力。 第二条产品交付甲方验收前所有质量问题由乙方负责,当交付甲方验收合格后,所有利害由甲方负责。 第三条交货方式双方见面交易。合同为证。 第四条交货时间为2014年9月17日,交货地点xxx。对于产品的数量、质 量等问题,全部由乙方负责。 第五条合约执行内容 经甲乙双方协商约定,整个软件项目设计由乙方提供专业人员和技术进行开发,甲方不用参与,按照乙方技术进行开发且监工由乙方负责,开发完成后,应达到国家验收标准,当与国家标准发生冲突时,按国家标准执行,测试达到标准后,视为乙方工程全部验收合格。如未达到验收标准时,所人工费由乙方负责承担,如能补救,由乙方尽快全部负责,直至达到验收标准。 第六条补充说明 乙方计算的全部材料已全部包含软件项目的全部,甲方不再支付任何费用,经乙方设计与预算得出以上内容与附件包含的内容外,不再有任何增项费用,如有乙方全部承担。 第七条双方职责 1、甲方职责 甲方负责协调乙方与同期作业的其他工程之间的关系(作业时间、作业面等)。 2、乙方职责 (1)乙方负责交付工程的可靠性、安全性,如因未按规定施工造成甲方工期延误、财产损害等严重问题,一切责任由乙方承担。

软件工程习题及详细答案

个人收集整理勿做商业用途 软件工程习题及答案 一、选择题: 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、1/6 B、1/5 C、1/4 D、1/3 7. 变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于。 A、变换型 B、事务型 8. PAD(Problem Analysis Diagram)图是一种工具。 A、系统描述 B、详细设计 C、测试 D、编程辅助 9. 分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描绘了系统的。 A、总貌 B、细节 C、抽象 D、软件的作者 10. 数据流图中,当数据流向或流自文件时,。 A、数据流要命名,文件不必命名 B、数据流不必命名,有文件名就足够了 C、数据流和文件均要命名,因为流出和流进数据流是不同的 D、数据流和文件均不要命名,通过加工可自然反映出

软件工程师面试问题总结归纳及答案

面试中常见的问题 1、请你自我介绍一下你自己, 回答提示:一般人回答这个问题过于平常,只说姓名、年龄、爱好、 工作经验,这些在简历上都有,其实,企业最希望知道的是求职者能 否胜任工作,包括:最强的技能、最深入研究的知识领域、个性中最 积极的部分、做过的最成功的事,主要的成就等,这些都可以和学习 无关,也可以和学习有关,但要突出积极的个性和做事的能力,说得 合情合理企业才会相信。企业很重视一个人的礼貌,求职者要尊重考官,在回答每个问题之后都说一句“谢谢”。企业喜欢有礼貌的求职者。 2、你觉得你个性上最大的优点是什么?回答提示:沉着冷静、条理清楚、立场坚定、顽强向上。乐于助人和关心他人、适应能力和幽默感、乐观和友爱。 3、说说你最大的缺点?回答提示:这个问题企业问的概率很大,通常不希望听到直接回答的缺点是什么等,如果求职者说自己小心眼、爱忌妒人、非常懒、脾气大、工作效率低,企业肯定不会录用你。绝对不要自作聪明地回答“我最大的缺点是过于追求完美”,有的人以为这样回答会显得自己比较出色,但事实上,他已经岌芨可危了。企业喜欢求职者从自己的优点说起,中间加一些小缺点,最后再把问题转回到优点上,突出优点的部分。企业喜欢聪明的求职者。 4、你对加班的看法?回答提示:实际上好多公司问这个问题,并不证明一定要

加班。只是想测试你是否愿意为公司奉献。 回答样本:如果是工作需要我会义不容辞加班。我现在单身,没有任何家庭负担,可以全身心的投入工作。但同时,我也会提高工作效率,减少不必要的加班 5、你对薪资的要求? 回答提示:如果你对薪酬的要求太低,那显然贬低自己的能力;如果你对薪酬的要求太高,那又会显得你分量过重,公司受用不起。一些雇主通常都事先对求聘的职位定下开支预算,因而他们第一次提出的价钱往往是他们所能给予的最高价钱。他们问你只不过想证实一下这笔钱是否足以引起你对该工作的兴趣。 回答样本一:“我对工资没有硬性要求。我相信贵公司在处理我的问题上会友善合理。我注重的是找对工作机会,所以只要条件公平,我则不会计较太多回答样本二:我受过系统的软件编程的训练,不需要进行大量的培训。而且我本人也对编程特别感兴趣。因此,我希望公司能根据我的情况和市场标准的水平,给我合理的薪水。 回答样本三:如果你必须自己说出具体数目,请不要说一个宽泛的范围,那样你将只能得到最低限度的数字。最好给出一个具体的数字,这样表明你已经对当今的人才市场作了调查,知道像自己这样学历的雇员有什么样的价值 6、在五年的时间内,你的职业规划? 回答提示:这是每一个应聘者都不希望被问到的问题,但是几乎每个人都会被

旅游管理系统 软件项目管理大作业

目录 1.合同书-------------------------------------------------------------------2 2.生存期-------------------------------------------------------------------3 3.需求规格说明------------------------------------------------------------4 目标-----------------------------------------------------------------4 用户类和特征-------------------------------------------------------4 运行环境------------------------------------------------------------4功能需求------------------------------------------------------------5确定执行者---------------------------------------------------5 确定用例-----------------------------------------------------5 用例文档-----------------------------------------------------6非功能需求----------------------------------------------------------8故障处理-------------------------------------------------------------8 4.任务分解------------------------------------------------------------------8 5.项目估算------------------------------------------------------------------9 直接成本-------------------------------------------------------------9 间接成本------------------------------------------------------------12 估算的误差----------------------------------------------------------12 6.进度计划-----------------------------------------------------------------13 活动顺序-------------------------------------------------------------13 甘特图----------------------------------------------------------------14

软件工程问答题

/*****************************简答题********************************************/ 1.什么是软件工程?软件工程的目标是什么? 答:软件工程是①将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护过程,即将工程化应用于软件开发和管理之中,②对①中所选方法的研究。目标:1合理预算开发成本,付出较低的开发费用。2实现预期的软件功能,达到较好的软件性能,满足用户的需求。3 提高软件的可维护性,降低维护费用。4 提高软件开发生产率,及时交付使用 2.指出瀑布模型中下列任务的顺序:验收测试,项目计划,单元测试,需求评审,成本估计,概要设计,详细设 计,系统测试,设计评审,编码,需求规格说明书。 答:项目计划,成本估计,需求规格说明书,需求评审,概要设计,详细设计,设计评审,编码,单元测试,系统测试,验收测试 3.可行性研究报告的主要内容是什么? 答:可行性研究主要包括以下几个部分: (1)概述(2)技术可行性(3)项目成熟程度(4)市场需求情况和风险分析(5)投资估算及资金筹措(6)经济与社会效益(7)综合实力和产业基础(8)项目实施进度计划(9)其它尚需要说明的必要的方面(10)结论 4.什么是需求分析?需求分析阶段的基本任务是什么? 答:所谓"需求分析",是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。可以说,“需求分析”就是确定要计算机“做什么”。 任务:确定软件项目的目标和范围。调查使用者的要求,分析软件必须做什么,编写需求规格说明书等它相关文档,并进行必要的需求审查。除此之外,还包括需求变更控制,需求风险控制,需求版本控制等对需求的管理工作 5.什么是结构化分析方法?该方法使用什么描述工具? 答:结构化的分析方法是面向数据流的方法,因此,此方法研究的核心是数据的组成和数据流向和对数据的加工处理。 结构化分析方法用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直至找到满足功能要求的所有可实现的软件元素为止 描述工具:1系统流程图 2 数据流程图3数据字典4 IPO图 5层次方框图6实体—关系图 7状态—变迁图 6.结构化分析方法通过哪些步骤来实现? 答:1)确定系统的功能要求 2)确定系统的数据要求 3)确定系统的操作要求和界面要求 4) 确定系统的性能要求 5)确定系统的运行要求 6)获得当前系统的物理模型 7)抽象出当前系统的逻辑模型 8)建立目标系统的逻辑 模型。9)修正开发计划 10)如果需要则开发系统原型 7.什么是数据流图?其作用是什么?其中的基本符号各表示什么含义? 答:数据流图:简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。 数据流图的基本符号的意思: 1.矩形表示数据的外部实体;2.圆角的矩形表示变换数据的处理逻辑; 3.少右面的边矩形表示数据的存储; 4.箭头表示数据流。 8.什么是数据字典?其作用是什么?它有哪些条目? 答:数据字典,主要用来描述数据流程图中的数据流、数据存储、处理过程和和数据源点/终点。 作用:数据流程图描述了系统的逻辑结构,其中的四个基本图形元素的含义无法在数据流程图中详细说明,因此数据流程图需要与其他工具配合使用,数据字典就是这样的工具之一。 包括的条目:数据流词条数据元素词条数据存储词条数据加工处理词条数据源点及终点词条 9.什么是概要设计?有哪些基本任务? 答:概要设计:根据用户的需求先确定软件系统的总体结构和总的设计原则 基本的任务:设想供选择的方案。推荐最佳方案。功能分解,确定软件结构。设计软件结构。制定测试计划。数据设计。书写文档。包括总体设计规格说明书。用户手册。测试计划。设计审查和复审。 10.详细设计的基本任务是什么?有那几种描述方法? 答:详细设计阶段的任务是要为编写程序代码设计“图纸”,由程序员按“图纸”用某种高级程序设计语言编写程序代码。主要方法有设计程序流程图,表格设计符号以及过程设计语言。 11.什么是变换流?什么是事物流? 答:变换型数据流可以划分为明显的三部分:逻辑输入,中心变换,逻辑输出。事务流的特点是数据沿某个输入路径流动,该路径将外部信息转换成事务,其中发射出多条事务处理路径的中心处理被称为中心事务 12.模块的内聚有哪几种?模块间的耦合有哪几种? 答:内聚分为七种类型:巧合内聚:一个模块执行多个完全互不相关的动作,那么这个模块就有巧合内聚逻辑内聚:当一个模块执行一系列相关的动作时,称其有逻辑内聚。时间性内聚:当一个模块内的多个任务是与时间有关时,这个模块具有时间性内聚。过程内聚:模块执行的若干动作之间有顺序关系。通信内聚:模块执行的若干动作之间有顺序关系,并且所有动作是在相同的数据上执行。信息内聚:一个模块中执行一系列动作,每个动作都有自己的入口点和处理代码,所有的动作都作用在相同的数据结构上,这样的模块叫做信息内聚。功能性内聚:一个模块中各个部分都是完成某一具体功能必不可少的组成部分 耦合分为七类:内容耦合:如果一个模块直接参考另一个模块的内容,则这两个模块是内容耦合。公共耦合:如果多个模块都访问同一个公共数据环境,则称它们是公共耦合。外部耦合:如果两个模块都访问同一个全局简单变量而不是同一全局数据结构,而且,不是通过参数表传递该全局变量的信息,则这两个模块属于外部耦合。控制耦合:如果

软件项目管理案例教程(第2版)课后习题答案(精准版)

课后练习题答案 第三章练习题 一、选择题 1.快速跟进是指(A ) A.采用并行执行任务,加速项目进展 B.用一个任务取代另外的任务 C.如有可能,减少任务数量 D.减轻项目风险 2.赶工一个任务时,你应该关注(C ) A.尽可能多的任务 B.非关键任务 C.加速执行关键路径上的任务 D.通过成本最低化加速执行任务 3.“软件编码完成之后,我才可以对它进行软件测试”,这句话说明了哪种依赖关系? ( A ) A.强制性依赖关系 B.软逻辑关系 C.外部依赖关系 D.里程碑 4.如果用户提供的环境设备需要5月10日到位,所以环境测试安排在5月10日以 后,这种活动安排的依赖依据是:(C) A.强制性依赖关系 B.软逻辑关系 C.外部依赖关系 D.里程碑 5.对一个任务进行进度估算时,A是乐观者,估计是6天完成,B是悲观者,估计是24天 完成,C是有经验者认为最有可能是12天完成,那么这个任务的历时估算是介于10 天到16天的概率是(B ) A.50% B.68.3% C.70% D.99.7% 6.下面哪项将延长项目的进度?(A) https://www.360docs.net/doc/5714153395.html,g B.Lead C.赶工 D.快速跟进 7.关于浮动,下面除了哪个都是不正确的?(D) A.每个任务都有浮动 B.只有复杂的项目有浮动 C.浮动是在不增加项目成本的条件下,一个活动可以延迟的时间量

D.浮动是在不影响项目完成时间的前提下,一个活动可以延迟的时间量 8.资源平衡最好用于(C )活动 A.时间很紧的 B.按时的 C.非关键路径 D.关键路径 9.下面哪项可以决定进度的灵活性(B ) A.PERT B.Total float C.ADM D.赶工 二、根据表3-11和图3-32,采用PERT方法估算,说明项目在20天内完成的概率的近似值? 图3-32:项目网络图 表3-11: PERT方法估计项目历时 均值=(8+24+4*10)/6+(1+9+4*5)/6=17,标准差=(约等于)3 所以,17+3=20天完成的概率大概是84.2%。 第四章练习题 一、选择题 1.(A)是用系统的功能数量来测量其规模,与实现产品所使用的语言和技术没有关系 的。() A.功能点 B.对象点 C.代码行 D.用例点 2.如果你是某项目的项目经理,你已经估算出每个单元的成本是¥129。这个项目一共有 1200单元,你采用什么估算方法?( D ) A.自下而上估算法 B.类比估算法

网上购物系统软件项目管理大作业

《网上购物系统》项目管理目录 1.合同 (1) 1.1合同双方 (1) 1.2供应的商品和服务 (1) 1.3时间地点 (1) 1.4专利成果分配 (1) 1.5验收标准 (1) 1.6报酬计算 (1) 1.7违约处理 (1) 2. 生存期 (2) 3.需求管理 (3) 3.1 功能需求 (4) 3.2确定用例 (4) 3.3用例文档 (5) 3.4非功能需求 (6) 3.4.1 性能需求 (6) 3.4.2安全性需求 (7) 3.4.3故障处理 (7) 4.任务分解 (7) 5.项目估算 (9) 5.1直接成本 (9) 5.2间接成本 (9) 5.3网上购物系统总成本 (10) 6. 进度计划 (10) 7.质量计划 (12) 7.1组织机构 (12) 7.2职责 (14) 7.2.1项目负责人的职责 (14) 7.2.1质量保证人员的职责 (14) 7.3质量目标 (14) 7.4质量策略 (15) 7.5软件质量保证活动 (15) 7.5.1审计 (15) 8.风险计划 (15) 8.1风险种类 (16) 8.1.1资金风险 (16) 8.1.2人员风险 (16) 8.1.3时间风险 (16) 8.1.4技术风险 (17) 8.1.5进度风险 (17) 8.2风险控制 (18)

8.2.1风险的化解 (18) 8.3风险监控 (18) 9.团队管理 (18) 9.1项目组织结构 (19) 9.2团队沟通管理 (19) 10.项目结束 (20) 14.1项目终止 (20) 14.2结束计划 (20) 14.3项目收尾 (20)

1.合同 1.1合同双方 甲方:胡某某 乙方:盛某某 1.2供应的商品和服务 供应的软件:乙方为甲方提供所需的网上购物系统 提供的服务:乙方为甲方提供所需的日常维护和服务器管理。 提供的文档:乙方在交付软件时提供详细的软件规格说明书和使用文档。 安装服务:乙方为甲方提供软件的安装。 公文处理:乙方负责将甲方提供的公文资料加载入系统并进行分类。 维护协议:当甲方在使用该产品时,在正常操作的情况下出现BUG或系统错误,乙方免费为甲方提供修复服务以保障软件的正常使用。当由于甲方的错误使用等非软件原因导致出现故障,乙方同样提供修复服务。由于甲方拥有该软件的源代码所有权,因此甲方需要承担部分维修和进一步开发的责任。当软件需要新的功能拓展或改版升级时,由双方共同协商决定。 1.3时间地点 6月10日上午9:00在河北省沧州市黄骅市 1.4专利成果分配 该软件是由甲方向乙方定制,甲方拥有该软件的版权,乙方不能将该软件的任何版本卖个其他客户。软件提交时,项目源代码的所有权自动移交到甲方,乙方不得擅自对源代码进行修改。 1.5验收标准 乙方在开发过程中必须遵守ISO 12207关于软件生命周期和文档的标准。 1.6报酬计算 软件总价为2万元。合同签订后,甲方向乙方支付1万元定金。项目的第二个月,乙方按计划时间表完成需求分析、系统分析、设计和完成系统的基本框架后,甲方向乙方支付0.5万元。该系统完成后,甲方进行验收测试,在签字验收后完成后,甲方向乙方支付全款。 1.7违约处理 任何一方违反本协议导致本协议无法继续履行的,违约方需赔偿守约方违约金人民币2万元,该违约金不足以弥补守约方实际损失的,违约方应赔偿守约方所有实际损失。 甲方法人代表:胡某某

最新软件工程各章作业习题的名词解释和问答题参考答案讲课稿

软件工程各章作业习题的名词解释和问答题参考答案 第一章: 1:什么是软件危机 开发软件由于管理混乱,加入软件规模越来越大,越来越复杂,造成软件开发失败。 2:软件工程过程 指获取、供应、开发、操作和维护软件时要实施的过程、活动和任务。 3:软件生成周期 可行性研究与计划、需求分析、总体设计、详细设计、实现、测试、使用与维护 4:有哪些软件周期模型 瀑布模型、原型模型、增量模型、螺

旋模型。 5:软件 计算机程序及说明程序的各种文档6:个体手工劳动 个人编写程序 7:小生产合作方式 多人编写程序 8:软件的特点 是一种逻辑产品,软件的生产主要是研制,软件产品不会用坏,软件生产主要是脑力劳动,软件的成本高。

9:软件文档 有关程序的功能、设计、图形资料等等。 第二章: 三. 名词解释 1.可行性研究 以最小代价, 在尽可能短的时间内, 确定该软件项目是否能够开发, 是否值得开发. 2.技术可行性 主要研究开发的软件技术风险有多大 3.经济可行性 主要研究开发成功后能否得到应有的效益 4.社会可行性 主要研究开发的软件是否存在责任和侵

权, 以及与当前管理制度, 人员素质, 操作方式的矛盾能否解决. 四.问答题 1. 可行性研究的任务是什么? 首先初步确定项目的规模, 目标, 约束和限制条件, 决定系统的主要功能, 进行简要压缩, 提出几种解决方案.对每种方案提出意见. 2.可行性研究有那些步骤? 确定任务; 分析技术可行性; 分析经济可行性; 分析社会可行性; 作出系统流程图; 作出开发计划。

3.可行性研究的目的. 减少开发大型软件的风险,缩短开发周期, 减小投资, 减少使用资源, 在尽可能短的时间内, 确定该软件项目是否能够开发, 是否值得开发. 第三章 三. 名词解释 1. 需求分析 指开发人员为了准确地理解, 表达用户的要求, 通过调查, 分析, 把系统的功能, 性能等方面准确地表达出来 2. DFD 数据流图 四.简答题

java高级软件工程师面试题

java高级软件工程师面试题 招聘java高级工程师,职位描述如下,有兴趣的加394504340交流,打扰了,谢谢! 职位名称:java高级开发工程师(急) 职位描述:互联网产品的开发和维护。 职位要求:1. 熟悉JAVA、J2EE体系结构,熟练掌握Spring、Struts、Hibernate、ibatis 的开发技术。 2. 熟悉MySql等数据库开发,熟练掌握SQL语句,有较好的数据库设计能力。 3. 熟练掌握HTML、javascript、ajax等web开发技术,熟悉http协议。 4. 熟悉SVN、Maven、Junit等工具。 5. 具有良好的学习能力、沟通能力,乐于承担工作压力。 6. 有大型门户或社区网站开发经验者优先。 职位所在城市:杭州 职位所在行业:高科技 -------------------------========================================================= 1.说一下struts中常用的对象 2.怎样整合apatche和tomcat 3.说一下在linx系统中搭建服务器 4.简述一下sql server 建模 5.请写一个程序,把一个10进制转换成16进制 6.表student 列id name age WA(本科以上,大专,高中,初中以下) 毕业学校ID,学校信息表 问:统计出文化学历本科以上,大专,高中,初中以下,每个年龄各有多少人(一条SQL语句) 7.有两位少年从隧道的一端向另一端行走.当他们走过隧道的五分之二时,发现隧道外面迎来一辆火车.火车很快就要进入隧道.两位少年向来时隧道跑去.两位少年都是每小时10公里.两位在千钧一发跑出了隧道.假设火车速度恒定,并且两位少年都在瞬间达到最大速度,请问火车的速度 8.请写出常用的oracle语句及说明,存储过程的语句及说明 ---------------------------------------------------------------------------------------------------------------------------------

软件项目管理复习题

1. 项目开发过程中可以无限制地使用资源。(X ) 2. 项目具有暂时的特征。(√) 3. 项目管理核心的三角形是范围、进度、风险。(X ) 4. 过程管理与项目管理在软件组织中是两项很重要的管理,项目管理用于保证项目的成功,而过程管理用于管理最佳实践。(√) 5. 运作管理(Operation Management)是从宏观上帮助企业明确和把握企业发展方向的管理。(√) 1. 项目经理是一个综合的角色(√) 2. 软件项目都是需要签署合同的(√) 3. 增量式模型可以避免一次性投资太多带来的风险(√) 4. 项目章程类似一个项目授权书(√) 5. 在甲乙合同项目中,提出需求的一方是乙方(X ) 6. 如果是内部项目,在项目初始阶段可以不提交招标书(√) 1. 需求分析过程是确定项目如何实现的过程,并确定项目的技术方案(√) 2. 对于一个重来没有做过的项目,开发WBS时,可以采用用自底向上的方法(X ) 1. 间接成本是与一个具体的项目相关的成本(X ) 2. 软件项目的估算结果是比较准确的(X ) 3. 在进行软件项目估算的时候,可以参照其它企业的项目估算模型(√) 4. COCOMO 81有3个等级的模型: 基本(basic)模型、中等(intermediate)模型、高级(详细(detailed))模型。(√) 1、质量计划中可以确定质量保证人员的特殊汇报渠道。(V) 2、质量计划可以在项目进行过程中编写,不一定在前期完成。(X ) 1、组织分解结构(OBS Organizational Breakdown Structure)是一种特殊的WBS。(V) 2、责任分配矩阵是明确其角色与职责的有效工具(V ) 3、职能型组织结构中项目经理的权利最大(X ) 4、为了创建一个组织结构图,项目管理者首先明确项目需要的人员类型(V ) 1、在项目管理过程中,沟通是项目管理者的一部分工作,而且是很少的一部分工作(X ) 2、沟通计划是项目计划的一部分( V) 3、沟通管理的基本原则是及时性,准确性,完整性,可理解性(V ) 4、在IT项目中,许多专家都认为:对于成功,威胁最大的就是沟通的失败。( V) 1. 如果一个项目的合同类型是固定价格(FFP),合同价格是100万,实际花费160万,则项目结算金额为160万( X) 2. 成本加奖金CPIF(Cost Plus Incentive Fee) 合同具有激励机制(V ) 3. 采购是为了执行项目而从项目团队外部采购或者获取产品、服务或者结果的过程。(V ) 1. 软件配置管理的目的是建立和维护整个生存期中软件项目产品的完整性和可追朔性。(V ) 2. 软件配置项是变更控制系统中的决策系统(X ) 3. 统计被批准的配置项是一种配置审计(X ) 4. 在进行配置管理过程中,一定要采用高档的配置管理工具(X ) 1、进度和成本是关系最为密切的两个目的,几乎成了对立关系,进度的缩短一定依靠增加成本实现,而成本的降低也一定牺牲工期进度为代价的。(V ) 2、项目无论大小,在编写项目集成计划的时候需要按照统一的标准模版进行编写(X) 3、为了编写一个好的集成项目计划,项目经理应该通晓项目知识域的相关知识,与项目团队人员一起协作完成项目计划(V ) 4、为了节约成本,可以适当减低项目过程中的质量标准。(X )

网上购物系统软件项目管理大作业

网上购物系统软件项目管 理大作业 Revised by BLUE on the afternoon of December 12,2020.

《网上购物系统》项目管理目录

1.合同 合同双方 甲方:胡某某 乙方:盛某某 供应的商品和服务 供应的软件:乙方为甲方提供所需的网上购物系统 提供的服务:乙方为甲方提供所需的日常维护和服务器管理。 提供的文档:乙方在交付软件时提供详细的软件规格说明书和使用文档。 安装服务:乙方为甲方提供软件的安装。 公文处理:乙方负责将甲方提供的公文资料加载入系统并进行分类。 维护协议:当甲方在使用该产品时,在正常操作的情况下出现BUG或系统错误,乙方免费为甲方提供修复服务以保障软件的正常使用。当由于甲方的错误使用等非软件原因导致出现故障,乙方同样提供修复服务。由于甲方拥有该软件的源代码所有权,因此甲方需要承担部分维修和进一步开发的责任。当软件需要新的功能拓展或改版升级时,由双方共同协商决定。 时间地点 6月10日上午9:00在河北省沧州市黄骅市

专利成果分配 该软件是由甲方向乙方定制,甲方拥有该软件的版权,乙方不能将该软件的任何版本卖个其他客户。软件提交时,项目源代码的所有权自动移交到甲方,乙方不得擅自对源代码进行修改。 验收标准 乙方在开发过程中必须遵守ISO12207关于软件生命周期和文档的标准。 报酬计算 软件总价为2万元。合同签订后,甲方向乙方支付1万元定金。项目的第二个月,乙方按计划时间表完成需求分析、系统分析、设计和完成系统的基本框架后,甲方向乙方支付万元。该系统完成后,甲方进行验收测试,在签字验收后完成后,甲方向乙方支付全款。 违约处理 任何一方违反本协议导致本协议无法继续履行的,违约方需赔偿守约方违约金人民币2万元,该违约金不足以弥补守约方实际损失的,违约方应赔偿守约方所有实际损失。 甲方法人代表:胡某某 乙方法人代表:盛某某

软件工程的100道经典问答题

软件工程的100道经典问答题 1、什么是软件危机?产生软件危机的原因?怎样消除? 2、什么是软件工程?包括哪些内容? 3、软件生存周期包含哪些内容? 4、软件开发模型有几种?各有什么特点? 7、在软件开发的早期阶段,为什么要进行可行性研究?应该从哪些方面研究目标系统的可行性? 8、一个软件开发系统的可行性研究报告应如何编写? 9、数据流图有哪几种基本符号? 10、画数据流图原则是什么? 11、数据流图在软件分析中的作用是什么? 12、数据字典的作用? 13、什么是数据字典?有几个定义?各自特点是什么? 14、有几种效益的分析方法? 15、需求分析的任务是什么? 16、需求分析通常采用哪些分析技术? 17、什么是结构化分析?他的结构化体现在哪里? 18、简述面向对象分析技术的主要步骤? 19、原型开发技术的目的,特点是什么? 20、简述总体设计的一般过程? 21、什么叫软件结构?什么叫软件工程?二者之间关系? 22、解释深度、宽度、扇出、扇入对软件的影响。 23、什么叫模块化?M代表的含义是什么? 24、模块化的三个重要特征是什么?阐明各自的作用。 25、举例说明各种耦合情况和各种内聚情况。 26、简述设计准则的内容。 27、简述层次方框图与软件结构图的异同点。 28、事物型软件结构图有什么特点?原因是什么? 29、详细设计的任务是什么? 30、什么是结构化程序设计?用N-S图表示三种基本结构。 31、简述Jackson程序设计方法的主要内容。 32、简述Wariner程序设计方法的主要内容。 35、C语言属于第几代语言?第四代语言特点是什么? 36、简述高级语言的应用特点和内在特点。 37、试分析程序设计语言特点及软件可*性、可理解性、可修改性、可测试性及成本的关系。 38、选择一种语言的实用标准是什么? 39、简述开发环境、计算机体系结构、软件设计方法、软件开发过程与程序设计语言之间的促进和制约作用。 40、程序的编码风格主要体现在哪几个方面? 41、软件测试的基本任务是什么?测试与调试区别是什么? 42、软件测试的目标是什么? 43、软件测试分几个步骤进行?每个步骤解决什么问题?

CC++软件工程师笔试题...

、估计一下广州有多少理发师,如果允许,你还需要那些调研工作并给出你的推导过程。你认为你的估算结果可信吗? 2、看过那些软件方面的书籍 3、什么是软件,软件开发包括那些步骤,并说出你对这些步骤的理解 4、OSI网络结构的七层模型分别是什么,并说出你认为划分为7层的理由。 5、软件过程中了解、使用过版本控制或建模工具吗对你工作有什么帮助? 6、软件过程中你都写过什么文档分别是什么目的及其对你的帮助? 7、我们知道,C++将内存划分为三个逻辑区域:堆、栈和静态存储,请说出它们的区别及你的理解。 8、字符串A是由n个小写英文字母(a ~ z)构成的,定义为char A[n]。你能用更少的空间表示这个字符串吗请写出从char A[n]到你的新的储存格式的转换函数。(请用C/C++编程,不允许上机操作) 12、对现在的Stack(栈)数据结构进行改进,加一个min()功能,使之能在常数,即O(1),时间内给出栈中的最小值。可对push()和pop()函数进行修改,但要求其时间复杂度都只能是O(1)。 9、C++构造函数为什么不能是虚函数? 10、C++中virtual与inline的含义分别是什么虚函数的特点;内联函数的特点;一个函数能否即是虚函数又是内联函数? 12、请列出实现C++代码你认为需要注意的一些问题。 11、你在原来的项目中有没有遇到什么困难,又是如何解决的? 1 dll,lib处理实现.lib文件中包含什么dll在内存中被多个函数共享,有几个拷贝? 2 template,template等编译的时候作为几个类 3 struct ,class的区别,联系 4 MAcro,inline区别,实现.编译运行时 5 进程与线程区别 6 hdc-cdc区别联系 7 model dialog,modeless dialog,从创建到销毁全过程具体描述 8 各个线程new的内存,别的线程是否可以使用? 9 RUNTIME_CLASS, is what】

《软件项目管理》期末考试题-问答题.

项目的特征有哪些? 有明确的目标 项目之间的活动具有相关性 限定的周期 有独特性 资源成本的约束性 项目的不确定性 项目与日常运作有什么不同? 项目是一次性的,日常运作是重复进行的 项目是以目标为导向的,日常运作是通过效率和有效性体现的 项目是通过项目经理及其团队工作完成的,而日常运作是职能式的线性管理项目存在大量的变更管理,而日常运作则基本保持连贯性的。 软件项目有什么特殊性? 为逻辑实体而非物理实体,具有抽象性 没有明显的制造过程,也不存在重复生产 软件项目的开发受到计算机硬件的制约 不可能完全摆脱手工开发模式 软件本身是相当复杂的,涉及因素众多,需求多变软件项目投入大、成本高软件项目管理有什么特征?

软件是纯知识产品,其开发进度和质量很难估计和度量,生产率也难以预测和保证。 项目周期长,复杂度高,变数多。 软件项目提供的是一种服务,需要满足一群人的期望,即需要满足一群想法和利益各不相同的人的需 求。 PMBOK包括哪9个知识领域? 集成管理范围管理时间管理 成本管理人力资源管理沟通管理 风险管理质量管理采购管理 常用的生存期模型有哪些?各适用于什么项目? 瀑布模型:分析、设计、编码、测试和维护严格按步骤进行,适合于项目开始前有明确需求和明确的 解决方案的项目,如公司的财务系统、库存管理系 统、短期项目等。 V模型:是瀑布模型的变种,强调测试的重要性,将开发活动与测试活动紧密联系在一起。适合于对 系统的性能、安全有严格要求的项目。 原型模型:适合于在项目开始前对项目需求不明确,为了减少项目需求的不确定性而先开发项目的

基本原型系统以验证可行性,然后逐步补充完善。 增量模型:由瀑布模型演变而来,假设需求可分阶段,分成一系列增量产品分别开发。适合于项目开 始明确了需求的大部分,但对市场和用户把握不是 很准。对于有庞大和复杂功能的系统也可考虑增量 开发。 螺旋式模型:该模型在四个象限上分别表达了计划制定、风险分析、项目实施、客户评估四个方面的 活动,通过一系列瀑布模型的不断循环来逐步规避 风险。适合于不确定因素较多、风险较大的项目。 渐近式阶段模型:综合了增量模型和螺旋式模型的一个实用模型,渐进式前进,阶段式提交。适合各 种规模的项目,尤其是大中型项目,以及希望随时 看到未来的项目。如何为项目选择合适的生成期模型? 熟悉各种生存期模型 评审、分析项目的特性 选择适合项目的生存期模型 标识生存期模型与项目不一致地方,并进行裁减 何谓需求获取?它包括哪些主要活动?

图书管理系统-软件项目管理大作业

图书管理系统项目管理 2016年6月22日 目录 1.合同管理------------------------------------------------------------------2 2.生存期--------------------------------------------------------------------4 3.需求管理 3.1 软件需求管理过程 ---------------------------------------------------5 3.1 需求概述 ---------------------------------------------------5 3.2 目标 --------------------------------------------------------5 3.4 功能需求 -------------------------------------------------- 5 3.8 编写用例文档 ----------------------------------------------7 4.任务分解---------------------------------------------------11 4.1 任务清单 -----------------------------------------------------------11 4.2 WBS---------------------------------------------------------------14

软件工程简答题

简答题: 软件工程的内容和方法 1.开发文档都有哪些?用图来表示他们之间的关系。 开发文档包括目标程序、源程序、详细设计说明书、概要设计说明书、需求规格说明书、用户需求报告、软件合同,它们之间的关系如图所示。 2.说明软件工程研究的内容。 软件工程研究的内容包括软件开发方法、软件开发模型、软件支持过程和软件管理过程。 其中软件开发方法的内容又含盖市场调研、正式立项、需求分析、项目策划、概要设计、详细设计、编程、测试、试运行、产品发布、用户培训、产品复制、销售、实施、系统维护、版本升级。 常用的软件开发模型有瀑布模型、迭代模型、增量模型和原型模型。 软件支持过程由所支持的CASE工具组成,常用的CASE工具有PowerDesigner和RationalRose。 软件管理过程主要有CMMI、ISO9000、微软企业文化和敏捷文化现象。 3.请详细解释软件的定义和程序的定义。 软件的定义:软件=程序+数据+文档。这里的程序是指程序系统。这里的数据不仅包括初始化数据、测试数据,而且包括研发数据、运行数据、维护数据,也包括软件企业积累的项目工程数据和项目管理数据中的大量决策原始记录数据。这里的文档指的是软件开发过程中的分析、设计、实现、测试、维护文档、管理文档。 现在有一种新提法正在引起关注,这种提法是:软件=知识+程序+数据+文档。 程序是计算机为完成特定任务而执行的指令的有序集合。从应用的角度可理解为: 面向过程的程序=算法+数据结构 面向对象的程序=对象+信息 面向构件的程序=构件+构架 4.是否存在这样一种现象:搞系统软件的公司不需要采用CMMI和ISO9000模式?CMMI 和ISO模式只适用于搞应用软件的企业?如果是,为什么?如果不是,又是为什么? 不是。因为CMMI和ISO9000模式规定了严格的管理制度、文档和评估软件能力与成

软件工程师常见面试题及答案.doc

软件工程师常见面试题及答案 需求调查: 全面了解您的系统概况、应用领域、软件开发周期、软件开发环境、开发组织、时间安排、功能需求、性能需求、质量需求及测试要求等根据系统概况进行项目所需的人员、时间和工作量估计及项目报价。 制定初步的项目计划: 在与您充分共同和协商的基础上制定我们的测试计划。 测试准备: 组织测试团队、培训、建立测试和管理环境等。 测试设计: 按照测试要求进行每个测试项的测试设计,包括测试用例的设计及测试脚本的开发等。 测试实施: 按照测试计划进行实施测试。 测试评估: 根据测试的结果,出具测试评估报告。 2、根据你的经验说说你对软件测试/质量保证的理解? 软件质量保证与测试是根据软件开发阶段的规格说明和程序的内部结构而精心设计的一批测试用例(即输入数据和预期的输出结果),并利用这些测试用例去运行程序,以发现错误的过程。它是对应用程序的各个方面进行测试以检查其功能、语言有效性及外观排布.。 3、(1) 你对SQA的职责和工作活动(如软件度量)的理解: SQA就是独立于软件开发的项目组,通过对软件开发过程的监控,来保证软件的开发流程按照指定的CMM规程(如果有相应的CMM规程),对于不符合项及时提出建议和改进方案,必要是可以要高层经理汇报以求问题的解决。通过这样的途径来预防缺陷的引入,从而减少后期软件的维护成本。SQA主要的工作活动包括制定SQA工作计划,参与阶段产物的评审,进行过程质量、功能配置及物理配置的审计等;对项目开发过程中产生的数据进行度量等等;

(2) 说说你对软件配置管理的理解: 项目在开发的过程中要用相应的配置管理工具对配置项(包括各个阶段的产物)进行变更控制,配置管理的使用取决于项目规模和复杂性能及风险的水平。软件的规模越大,配置管理就显得越重要。还有在配置管理中,有一个很重要的概念,那就是基线,是在一定阶段各个配置项的组合,一个基线就提供了一个正式的标准,随后的工作便基于此标准,并且只有经过授权后才能变更这个标准。配置管理工具主要有CC,VSS,CVS等,偶只用过CVS,对其它的不熟悉 (3) 怎样写测试计划和测试用例: 简单点,测试计划里应有详细的测试策略(测试方法等),合理详尽的资源安排等,至于测试用例,那是依赖于需求(包括功能与非功能需求)是否细化到功能点,是否可测试等。 (4) 说说主流的软件工程思想(如CMM,CMMI,RUP,XP,PSP,TSP等)的大致情况以及对它们的理解: CMM:SW Capability Maturity Model 软件能力成熟度模型,其作用是用于软件过程的改进、评估及软件能力的评鉴CMMI:Capability Maturity Model Integration 能力成熟度模型集成CMMI融入了大部分最新的软件管理实践,同时弥补了SW-CMM模型中的缺陷 RUP:rational unified process 是软件工程化过程。 XP:extreme program,即极限编程的意思,适用于小型团队的软件开发,想上面第三个问题就可以结合原型法采用这样的开发流程。要明白测试对于xp开发的重要性,强调测试(重点是单元测试)先行的理念。编程可以明显提高代码的质量,持续集成对于快速定位问题很有好处。 PSP ,TSP 分别是个体软件过程(Personal Software Process),群组软件过程(Team Software Process)大家都知道,CMM只是告诉你怎么做但并没有告诉你如何做,所以PSP/TSP就是告诉你企

相关文档
最新文档