Newer
Older
csv2brain / app / src / main / assets / exam / l_2.json
ubt on 24 Jan 2024 227 KB 增加习题列表
{"msg":"第一节 论文","code":200,"data":{"currentIndex":null,"examId":null,"examTime":null,"questionList":[{"id":"796239876721758209","title":"论敏捷开发在企业软件开发中的应用<br>敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。尽管目前敏捷开发的具体名称、理念、过程、术语尚不尽相同,但业界普遍认为:相对于“非敏捷”,敏捷开发更强调程序员团队与业务专家之间的紧密协作、面对面的沟通、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重软件开发中人的作用。\n请围绕“敏捷开发在企业软件开发中的应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与实施的应用敏捷开发的软件项目以及你所担任的主要工作。<br>2.叙述你在软件项目实践过程中采用了怎样的敏捷开发基本原则并说明理由。<br>3.具体阐述该项目采用的敏捷开发方法,以及实施过程中存在问题和解决方法。","analyze":"写作要点<br>1.概要叙述你参与实施的应用敏捷开发的企业项目以及你所担任的主要工作。<br>2.叙述你在该企业项目实践过程中采用的敏捷开发基本原则并说明理由。<br>2001年2月的《敏捷宣言》(Agile Manifesto)是由多位当时称之为“轻量级方法学家”所编写签署的,他们的价值观是:个人与交互重于开发过程与工具;可用的软件重于复杂的文档;寻求客户的合作重于对合同的谈判;对变化的响应重于始终遵循固定的计划。<br>(1)个人与交互重于开发过程与工具:一个由优秀的人员组成但使用普通的工具,要比使用优秀的工具但由普通人组成、紊乱的小组做得更好。多年来人们花了很多时间试图建立一种过程,以便把人当作机器上的一个可以替代的齿轮,但结果却并不成功。敏捷过程是承认每个人都有特定的能力(以及缺点)对之加以利用,而不是把所有的人当成一样来看待。更重要的是,在这样的理念下,几个项目做下来,每个人的能力都从中得以提高。这种人的能力的提高,对公司是无价之宝。而不至于把人当成齿轮,随着时间的推移,人的能力慢慢被消耗掉,最后变成留之无用、弃之可惜的尴尬人物。<br>(2)可用的软件重于复杂的文档:可用的软件可以帮助开发人员在每次迭代结束的时候,获得一个稳定的、逐渐增强的版本。从而允许项目尽早开始,并且更为频繁地收集对产品和开发过程的反馈。随着每次迭代完成软件的增长,以保证开发小组始终是处理最有价值的功能,而且这些功能可以满足用户的期待。<br>(3)寻求客户的合作重于对合同的谈判的原因:敏捷开发小组希望与项目有关的所有团体都在朝共同方向努力,合同谈判有时会在一开始就使小组和客户处于争执中。敏捷开发追求的是要么大家一起赢,要么大家一起输。换句话说,就是希望开发小组和客户在面对项目的时候,以一种合作的态度共同向目标前进。当然,合同是必需的,但是如何起草条款,往往影响到不同的团体是进行合作式的还是对抗式的努力。<br>(4)对变化的响应重于始终遵循固定的计划:敏捷开发认为对变化进行响应的价值重于始终遵循固定的计划。他们最终的焦点是向用户交付尽可能多的价值。除了最简单的项目以外,用户不可能知道他们所需要的所有功能的每个细节。不可避免地在过程中会产生新的想法,也许今天看起来是必需的功能,明天就会觉得不那么重要了。随着小组获得更多的知识和经验,他们的进展速度会比开始的时候期望值慢或者快。对敏捷开发来说,一个计划是从某个角度对未来的看法,而具有多个不同的角度看问题是有可能的。<br>(针对所承担项目的具体问题和特点,围绕敏捷开发基本原则的一项或多项进行论述均可)<br>3.具体阐述该企业采用的具体敏捷开发方法,以及实施的效果。<br>常见的敏捷开发方法有极限编程,Scrum,水晶方法等。<br>极限编程是敏捷软件开发中最富有成效的几种方法学之一,是敏捷过程的一种具体形式,提供敏捷方法最一般原则的指导方针,包括5项价值标准和12个实践操作。极限编程的主要目标在于降低因需求变更而带来的成本,极限编程透过引入基本价值、原则、方法等概念来达到降低变更成本的目的。<br>Scrum是一种迭代式增量软件开发过程,通常用于敏捷软件开发。包括了一系列实践和预定义角色的过程骨架。Scrum中的主要角色包括Scrum主管,产品负责人和开发团队。它使用迭代的方法,把每个30天一次的迭代称为一个“冲刺”(Sprint),按照需求优先级别来实现产品。多个自组织和自治小组并行递增地实现产品。通过简短的日常情况会议(称为“Scrum”)进行。<br>水晶敏捷方法发展和提倡了一种机动性的软件开发方法,定义了一系列方法,包含核心元素,角色、过程模式、工作产品和实践。水晶敏捷方法实际是一组经过证明对不同类型项目都非常有效的敏捷过程,其目的是使得敏捷团队可以根据其项目和环境选择最合适的水晶系列成员。<br>(论述只需说明一种具体的敏捷开发方法)","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239872661671937","title":"论快速应用开发在系统建模中的应用<br>快速应用开发(RAD)是一个增量型的软件开发过程模型,强调极短的开发周期。该模型是瀑布模型的一个“高速”变种,通过大量使用可复用构件,采用基于构件的建造方法加速信息系统的开发过程。如果能够及时与用户进行交流和沟通,正确地理解需求并约束项目的范围,利用这种模型可以很快创建出功能完善的信息系统。RAD依赖于广泛的用户参与、联合应用设计会议、原型化方法、集成的CASE工具和代码生成器。\n请围绕“快速应用开发在系统建模中的应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与分析和开发的信息系统项目以及你所担任的主要工作。<br>2.简要分析快速应用开发方法的生命周期,并给出各个阶段的主要任务。<br>3.分析快速应用开发方法的目标,并结合实际项目的实施结果讨论快速应用开发与传统的结构化开发方法相比有哪些优点和缺点。","analyze":"一、简要描述所参与分析和开发的信息系统,并明确指出在其中承担的主要任务和开展的主要工作。<br>1.快速应用开发是一个完整的方法,生命周期包含了需求、设计、构建和验收四个阶段,和传统的软件开发生命周期各阶段相对应。<br>2.四个阶段的主要任务<br>(1)需求阶段结合了软件开发生命周期的系统规划和系统分析阶段。用户、经理和技术人员通过讨论对业务需求、项目范围、约束条件和系统需求达成一致意见。当团队成员对关键问题达成一致意见,并获得管理部门继续进行的授权时,需求计划阶段结束。<br>(2)设计阶段,用户与系统分析员互相交流,并创建模型和原型来描述所有的系统过程、输入和输出。RAD组或者子组通过结合使用JAD技术和CASE工具,从而将用户需求转变成工作模型。用户设计是一个连续的、相互影响的过程,帮助用户理解、修改并最终通过满足他们需求的系统工作模型。<br>(3)构建阶段强调程序和应用开发任务,类似于软件开发生命周期。所不同的是,在RAD中,用户一直参与其中,并且在实际界面或报表开发出来以后仍然可以提出修改建议。<br>(4)验收阶段类似于传统的软件开发生命周期的实施阶段的最终任务,包括数据转换、测试、转变为新系统,以及用户培训。和传统的方法相比,整个过程是被压缩的。这样,新系统就更快地被创建、交付和投入使用。<br>三、分析快速应用开发方法的目标,并讨论快速应用开发方法与传统的结构化分析方法相比有哪些优点和缺点。<br>1.所有RAD方法的主要目标是通过用户参与系统开发的每一个阶段来缩减开发时间和费用。由于RAD是一个连续的过程,因此随着设计的进行,RAD允许开发小组迅速地做出必要的修改。当公司预算紧张时,对于发生在一个已制定好的长时期的进度表中的变化所带来的花费进行限制尤为重要。<br>2.和传统的结构化分析方法相比,主要优点是强调用户参与,可以尽快明确需求,降低系统开发风险,缩短系统开发周期。缺点一是RAD强调系统本身的结构,系统可能在短时间内工作得很好,但是系统的整体和长期的目标可能得不到满足。缺点二是加速开发周期可能会导致没有更多的时间提高项目质量、连贯性和设计的标准化。缺点三是并非所有应用软件都适合于使用RAD,如果一个系统难以模块化,那么建造RAD所需构件就会有问题;如果需要高性能的指标,且该指标必须通过调整接口使其适应系统构件才能获得,使用RAD方法就有可能失败;RAD不适合技术风险很高的情况,当一个新应用要采用很多新技术或新软件要求与已有计算机程序有较高的可互操作性时,项目也可能会失败。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239912658554881","title":"论软件需求管理及其应用<br>软件需求工程关注创建和维护软件需求文档需展开的一切活动。需求工程可分为需求开发和需求管理两项工作,其中需求管理的目标是为软件需求建立一个基线,供软件开发及其管理使用,确保软件计划、产品和活动与软件需求的一致性。从软件需求工程的角度来看,需求管理包括在软件开发过程中维持需求一致性和精确性的所有活动。\n请围绕“软件需求管理及其应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。<br>2.详细论述软件需求管理的主要活动及其所包含的主要内容。<br>3.结合你具体参与管理和开发的实际项目,说明是如何采用软件需求管理方法进行需求管理的,说明具体实施过程以及应用效果。","analyze":"写作要点<br>1.简要叙述所参与管理和开发的软件项目.,并明确指出在其中承担的主要任务和开展的主要工作。<br>2.需求管理的主要活动有变更控制、版本控制、需求跟踪和需求状态跟踪。<br>(1)需求变更管理过程包括:<br>①问题分析和变更描述。需要识别和分析需求问题,形成明确的变更协议,以检查它的有效性,从而产生一个更明确的需求变更提议。<br>②变更分析和成本计算。使用可追溯性信息和系统需求的一般知识,对需求变更提议进行影响分析和评估。变更成本计算应该包括对需求文档的修改、系统修改的设计和实现的成本。一旦分析完成并且被确认,应该进行是否执行这一变更的决策。<br>③变更实现。这要求需求文档和系统设计以及实现都要同时修改。<br>(2)版本控制:主要包括确定需求文档版本。<br>(3)需求跟踪:包括定义对其他需求的链接;定义对其他系统元素的链接;使用的工具即需求跟踪矩阵。<br>(4)需求状态跟踪:定义需求状态;跟踪需求的每一^t•状态。<br>3.考生需结合自身参与项目的实际状况,指出其参与管理和开发的项目中所进行的需求管理活动,说明该活动的具体实施过程、使用的方法和工具,并对实际应用效果进行分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239845952344065","title":"论企业业务流程优化<br>业务流程优化是通过不断发展、完善、优化业务流程,保持企业竞争优势的重要方法。在流程的设计和实施过程中,要对流程进行不断改进,以期取得最佳效果。业务流程优化不仅仅指做正确的事,还包括如何正确地做这些事。为了解决企业面对新的环境,在传统的以职能为中心的管理模式下产生的问题,必须对业务流程进行调整,从本质上反思业务流程,优化或重新设计业务流程,以便在衡量绩效的关键指标(如质量、成本、速度、服务)上取得突破性的改善。\n请围绕“论企业业务流程优化”论题,依次从以下三个方面进行论述。<br>1 .概要叙述你参与管理和开发的业务流程优化项目以及在其中所担任的主要工作。<br>2.详细论述业务流程优化的过程及业务流程方法。<br>3.结合你具体参与管理和开发的实际项目,举例说明所选取的需要优化的业务流程以及优化的具体实施过程,并详细分析流程优化的效果。","analyze":"一、简要叙述所参与管理和开发的业务流程优化项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、业务流程优化的过程包括:流程问题汇总细化、设计优化方案、优化方案细化及调整等步骤。<br>流程优化第一步:流程问题汇总细化。<br>1.识别关键流程<br>根据相关原则方法确定关键流程,即需要进行优化的流程。<br>确定关键流程时,可以考虑具有以下特点的流程:效率低下,影响其他流程的正常运行;对企业至关重要的流程;改进容易、效益大流程;耗时的流程;被多个流程引用、共享的流程;出现重大失误和事故的流程;冗余和重复的流程;返工和重复的流程;过多审批和监控的流程;重要性高绩效低的流程。<br>2.绘制高阶流程<br>根据已有的低阶流程绘制,对于绘制中发现的不完整或缺失的流程进行补充,使流程完整。<br>3.问题汇总<br>收集资料,了解流程现状,分析现有流程,挖掘流程中存在的问题。可以采用流程访谈、问卷调查、流程调研、FMEA实效模式分析(Potential Failure Mode &amp; Effects Analysis)等方法。<br>4.量化描述<br>量化描述包括周期时间、流程的绩效指标等,需要严格根据目前的情况详细列出,以发现真实的关键点。<br>流程优化第二步:设计优化方案。<br>1.确定优化目标<br>确定流程的主要优化方向对流程的愿景和目标达成一致。<br>优化目标主要从以下四方面考虑:<br>(1)质量:用适当的业务控制满足并超越客户现在和将来的服务期望(如增加一次性成功率,与客户合作或参与产品设计)。<br>(2)成本:降低资源消耗,争取竞争机遇。良好的流程设计可以使流程成本大幅度下降,其幅度会远远超出传统削减成本的做法。<br>(3)时间:缩短业务处理时间,增加业务机会,降低成本,提高服务质量。<br>(4)风险:通过设立适当的关键控制点来降低营运风险。<br>2.优化方案设计<br>目标业务流程设计的基本方法:ESIA (Elimination, Simply, Integrate, Automate)。<br>(1) Elimination (清除)<br>删除无附加值的步骤。无效活动首先要予以清除。<br>等待时间。由于上一个环节总是不到位,出现虚耗,这就是一种浪费,必须清除。故障/缺陷和失误。由于失误,在工作中产生了残次品,而每生产一个残次品就是对成本的调高,就是对资源的浪费,必须清除。<br>重复性劳动。单位中有时会存在因人设事或重复性劳动,这些都是要坚决清除的。<br>(2) Simply (简化)<br>简化所有过于复杂的环节,包括过于复杂的表格、过于复杂的技术系统、过于专业分工的程序、复杂的沟通形式。<br>(3) Integrate (整合)<br>集成功能,理顺流程过程。包括职责、部门、客户和供应商各方面。<br>(4) Automate (自动化)<br>运用先进的信息技术加速流程运转,提高流程运行质量。<br>流程优化的常用方法:时间标记法、鱼骨图法、消除流程中的非增值性因素、任务整合、简化活动、流程任务自动化、增加环节、重排环节等。<br>3. To-be 流程<br>获得改进后的流程,绘制新流程、流程描述。<br>4.可行性分析、收益性分析<br>对新流程进行可行性分析,以预测实施的难度,包括实施风险分析,对新流程的收益性进行分析,获得收益性指标。<br>流程优化第三步:优化方案细化及调整。<br>1.实施计划安排<br>流程的改善往往涉及很多部门和人员的配合,所以改善的内容应多探讨,考虑各方面的意见。<br>制订周密的行动计划,对实施的时机、实施前后的交接,实施的注意事项做出明确的说明,尽量避免管理工作的混乱。<br>2.保障体系调整<br>设计实施方案需要考虑调整保障体系以支持优化,包括流程与制度、组织与人员、信息技术、材料与设备、方法等方面的配套体系。<br>3.试运行<br>通过试运行,发现存在的问题,对发现的问题收集整理。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239963145392129","title":"请以“企业信息集成技术和应用”大题,分别从以下三个方面进行论述。\n1.概要叙述你参与的企业信息集成项目以及你所担任的主要工作。<br>2.详细论述企业内部信息集成和企业外部信息集成分别包括哪些方面,其主要集成内容有哪些。<br>3.具体阐迷你所参与的企业信息集成项目,涵盖了哪些内、外部信息集成内容,实现了哪些信急集成功能,具体实施效吴如何。","analyze":"一、简要描述所参与的企业信息集成项目,并明确指出在其中承担的主要任务开展的主要工作。<br>二、详细论述企业内部信息集成和企业外部信息集成分别包括哪些方面及其主要集成内容。<br>企业内部信息集成:<br>技术平台集成。技术平台技术足系统底层的体系结构、软件、硬件以及异构网络的集成,集成内容不仅包括信息技术硬件所组成的新型操作平台,如各类大型机、小型机、工作站、微机、通信网络等信息技术设备,还包括置入信息技术或者说经过信息技术改造的机床、车床、自动化工具、流水线设备等新型设施和设备。<br>数据集成。数据集成是对数据进行标识并编成目录,确定元数据模型。只有在建立统一的模型后,数据才能在数据库系统中分布和共享。数据集成采用的主要数据处理技术有数据复制、数据聚合和接口集成等。<br>应用系统集成。应用系统集成是实现不同系统之间的互操作,使得不同应用系统之间能够实现数据和方法的共享。<br>业务过程集成。业务过程集成是在各种业务系统中定义、授权和管理各种业务信总的交换,以便改进操作、减少成本、提高响应速度。业务过程集成使得在不同应用系统中的流程能够无缝连接,实现流程的协调运作和流程信息的充分共享。<br>企业外部信息集成:<br>(1)通过门户网站和互联M实现公众、社会团体、社会和客户的互动,实现企业内外部信息资源的有效交流和集成。<br>(2)通过与合作伙伴信息系统的对接,建立动态的企业联盟,发展基于竞争合作机制的虚拟企业,重塑企业的战略模式和竞争优势。<br>三、阐述你参与的企业信息集成项目,具体说明该项目中涵盖了哪些集成内容,实现了哪些信息集成功能,并详细说明实施效果。<br>企业信息集成的功能主要包括:<br>信息共享。信息共享对于企业提高服务质量、降低运营成本有着非常直接的作用。<br>信息协作平台。通过信息集成,可实现各部门、各应用系统之间的协调运作,实现业务流程的定制、改造和优化,为企业的各种应用和系统提供一个统一的运行协作平台,实现流程协作和信息共享。<br>信息价值提升。通过信息集成将一些静态的数据加工成流动的信息,并对信息进行高度综合和深入挖掘,可形成企业知识,为企业管理决策提供支持。企业还可以将信息系统进行有机整合,提升企业信息系统的价值,为企业面对日益激烈的竞争和日趋苛刻的客户提供强有力的支持。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239925111443457","title":"论面向对象建模方法的应用<br>随着软件技术的发展,面向对象方法日益成为信息系统软件开发的主流技术,而面向对象建模技术是其中的关键。模型是软件开发的根本,大型、复杂的软件系统的开发是一项工程,而建模是系统化认识所开发软件的一个初步途径。<br>面向对象建模技术流派众多,包括OMT方法、OOSE方法、OOA/OOD方法等。统一建模语言的出现极大地促进了面向对象建模方法的普及与应用,己经成为当前面向对象建模方法的标准.\n1 概要叙述你参与管理和开发的信息系统项目以及你在其中所承担的主要工作。<br>2. 论述常见的面向对象建模方法的主要内容,包括每种模型的核心思想。<br>3. 具体阐述你参与管理和开发的项目中使用的是哪种面向对象建模方法以及选择该方法的原因,给出具体的实施过程和实施效果。","analyze":"一、概要叙述你参与管理和开发的信息系统项目以及你在其中所承担的主要工作。<br>二、论述常见的面向对象建模方法的主要内容,包括每种模型的核心思想。应结合自己熟悉的业务领域,较为详细地说明目前常见的面向对象建模方法的核心思想,并对其内容进行描述。<br>(1)OOA/OOD方法。一个OOA模型由主题层、类及对象层、结构层、属性层和服务层组成。其中,主题层描述系统的划分,类及对象层描述系统中的类及对象,结构层捕获类和对象之间的继承关系及整体-部分关系,属性层描述对象的属性和类及对象之间的关联关系,服务层描述对象所提供的服务(即方法)和对象之间的消息链接。OOD模型由人机交互(界面)构件、问题域构件、任务管理构件和数据管理构件组成。<br>(2)OOSE方法。该方法的最大特点是面向用例(use case)。OOSE是由用例模型、域对象模型、分析模型、设计模型、实现模型和测试模型组成的。其中用例模型贯穿于整个开发过程,它驱动所有其他模型的开发。<br>(3)OMT方法。系统是通过对象模型、动态模型和功能模型来描述的。其中,对象模型用来描述系统中各对象的静态结构以及它们之间的关系;功能模型描述系统实现什么功能(即捕获系统所执行的计算),它通过数据流图来描述如何由系统的输入值得到输出值。功能模型只能指出可能的功能计算路径,而不能确定哪一条路径会实际发生。动态模型则描述系统在何时实现其功能(控制流),每个类的动态部分是由状态图来描述的。<br>(4)统一建模语言是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格说明,到构造和配置。UML是在开发阶段,可视化构建和书写一个面向对象软件系统,进行规格说明的方法。UML展现了一系列最佳工程实践,这些最佳实践在对大规模、复杂系统进行建模方面,特别是在软件架构级别已经被验证有效。UML被OMG采纳作为业界的标准。<br>三、论文中需要结合实际工作,详细论述在项目中如何使用所选择的建模方法创建系统的逻辑模型和物理模型,井说明这些模型对项目开发所产生的影响。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239904509022209","title":"论软件系统测试及其应用<br>软件系统测试是将已经确认的软件与计算机硬件、外设、网络等其他设施结合在一起,进行信息系统的各种组装测试和确认测试,系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,进而完善软件。系统洌试的主要内容包括功能测试、健壮性测试、性能测试、用户界面测试、安全性测试、安装与反安装测试等,其中,最重要的是功能测试和性能测试。功能测试主要采用黑盒测试方法。\n1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。<br>2.详细论述软件系统测试中功能测试的主要方法,自动化测试的主要内容和如何选择适合的自动化测试工具。<br>3.结合你具体参与管理和开发的实际项目,说明你是如何采用软件系统测试方法进行系统测试的,说明具体实施过程以及应用效果。","analyze":"写作要点:<br>一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、功能测试主要的方法为黑盒测试。黑盒测试又称为基于规格说明的测试,它是指那些使用基于规格说明方法和准则的测试活动,根据程序需求和产品规格说明来发现错误。黑盒测试将软件看作是不透明的黑盒子,完全不考虑程序的内部结构和内部特性,只检查软件功能是否按照软件需求说明书的要求正常使用,软件是否能适当地接收输入数据并产生正确的输出信息,软件运行过程中能否保持外部信息的完整性等。<br>黑盒测试根据软件需求说明书所规定的功能来设计测试用例,一般包括功能分解、等价类划分、边界值分析、判定表、因果图、状态图、随机测试、错误推测和正交实验法等。<br>测试自动化是一个通过编程完成测试的过程,一旦测试实现自动化,大量的测试用例就可以迅速执行。自动化测试通常需要构建存放程序软件包和测试软件包的文件服务器、存储测试用例和测试结果的数据库服务器、执行测试的运行环境、控制服务器、Web服务器和客户端程序。自动化测试的主要实现方法包括代码的静态与动态分析、测试过程的捕获与回放、测试脚本技术、虚拟用户技术和测试管理技术等。<br>自动化测试工具的选择需要考虑以下几点:<br>1. 测试工具应该具有相应的容错处理系统,可以自动处理一些异常状况;<br>2. 能够提供类似软件集成开发环境中的调试功能,支持脚本的运行、设置断点、得到变量返回结果等,可以更有效地对测试脚本的执行进行跟踪、检查并迅速定位问题;<br>3. 测试脚本的开发需要支持团队的开发环境,即测试工具对脚本代码能够很好地控制和管理。<br>三、考生需结合自身参与项目的实际状况,指出其参与管理和开发的项目中所进行的系统测试,说明测试的具体实施过程、使用的方法和工具,并对实际应用效果进行分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239870619045889","title":"论工作流管理技术在CIM系统协作中的应用<br>计算机集成制造(Computer Integration Manufacturing,CIM)是信息技术和生产技术的综合应用,旨在提高制造业企业的生产率和响应能力。企业面临的任务是:将企业先后建立的多个分立的CIM系统集成起来,形成一个协调的企业CIM综合应用平台,实现各个不同CM系统间的协同工作,使得企业的业务过程、数据信息和组织管理都被作为CIM集成平台的组成部分。利用工作流管理技术为企业构建上述CIM综合应用平台,使企业可以方便地协调各种业务功能,优化资源的组织利用,从而获得最佳的运行效益。但企业已有的工作流管理系统往往用于管理企业的业务过程和控制企业的业务活动,并不能直接用来支持CIM综合应用平台的建设。<br>\n请围绕“工作流管理技术在CIM系统协作中的应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与分析和开发的CIM系统协作项目以及你所担任的主要工作。<br>2.简要分析现有工作流管理系统直接支持企业实施CIM系统协同工作有何不足,并从工作流执行角度详细论述通过哪些方式可以支持应用协作;阐述你所选择的协作方式及其理由。<br>3.工作流管理系统提供动态创建工作流模型功能的基础上,分析并说明用户可以采用哪些方式完成CIM系统间的协同工作,以及在你所参与的项目中用户所采用的协作方式。","analyze":"一、简要描述你所参与分析和开发的CIM协作系统,并明确指出你在其中承担的主要任务和开展的主要工作。<br>二、简要分析传统的工作流管理系统在对CIM系统所提供的协作能力的不足,并详细阐述工作流管理系统如何提供不同层次的协作能力。<br>1.传统工作流管理系统在对CIM系统所提供的协作能力的不足表现在以下几个方面。<br>(1)现有工作流管理系统基本上是一个任务管理系统,主要实现按照一定的流程对任务进行管理和活动间控制流的导航,对于CIM系统中需要实现的信息和数据协作管理的支持能力弱,尤其是缺乏信息协作机制和企业信息模型管理功能。<br>(2)目前的工作流管理系统在支持异构分布应用上能力不足,尤其是应用协作和应用封装能力不足。<br>(3)对于企业CIM系统环境下分布应用的管理和监控能力不足,目前的工作流管理系统在企业组织模型上提供了一定的建模和管理能力,但是,在资源模型管理能力上与企业实际应用需求差别较大,对于不是由工作流管理系统直接启动的应用没有任何管理能力(缺乏用户管理、软件配置、配置管理和权跟管理等功能)。<br>2.为了实现CIM系统间的协作功能,需要从工作流模型的定义到模型的执行、分布式工作流机的实现等方面扩展现有工作流管理系统的功能。从工作流执行角度,可以通过以下几种方式实现不同层次的应用协作。<br>(1)激活式。对于不同应用,用户给出应用的可执行文件名,由工作流机直接调用执行,当应用被激活以后,工作流机就不再对它进行控制。这种方式是最简单的协作方式,无须对应用程序进行包装,只是一种命令的执行方式。<br>(2)接口式。这种方式要求应用提供一定形式的、可被调用的接口函数,工作流机通过调用这些接口函数来控制应用程序的启动、相关操作的执行以及最后的退出。<br>(3)控件式。对于桌面应用间的协作,利用面向对象的封装性,将己有的控件嵌入应用组件内部实现应用间协作。<br>(4)包装式。将不同应用封装成为CORBA对象,工作流执行程序通过调用封装后的CORBA对象所提供的方法对应用程序的有关操作进行控制。这一方式继承了CORBA的语言无关性和互操作性等优点,但实现过程比较复杂,需要第三方CORBA产品的支持。<br>(5)服务式。基于服务包装技术,将不同Web应用包装成为服务,工作流以服务调用流程的方式控制不同应用的执行过程并实现数据间的协作和转换。<br>考生需要明确说明所采用的应用协作方式及其理由。<br>三、在工作流管理系统提供动态创建工作流模型功能的基础上,用户可以采用以下方式完成应用协作。<br>(1)直接定义。用户可以通过工作流建模工具定义一个过程模型,在过程模型中确定应用的集成和控制逻辑,然后提交工作流机执行。<br>(2)嵌入式。用户通过定义过程模型,并将这个过程作为一个执行函数嵌入某个应用中,在应用执行到这个函数时,工作流机自动完成这个过程模型的执行,实现嵌入式的过程协作。<br>(3)对话式。由用户定义一个宏过程,在宏过程的每个步骤中都给出一组可供选择的应用,用户控制整个宏过程的执行,并在每个步骤中选择一个或多个应用提交工作流机执行,并返回执行的结果。如果不是本地工作流机管理的应用,则通过由本地工作流 机向其他工作流机提交请求的方式完成应用的执行。<br>考生需要明确说明用户通过何种方式实现应用协作。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239969906610177","title":"随着企业信息化程度不断提高,企业的正常运作高度依赖于信息系统为其持续不断地提供有效服务,这对信息系统的可靠性提出了更高的要求。为了提高系统的可靠性,需要对系统进行可靠性分析与设计,对信息系统生命周期中故障的发生、发展规律进行研究,实现预防故障、消灭故障的H标。信息系统的可靠性分析与设计的重要内容是根据业务可靠性需求,建立可靠性模型,反复进行可靠性指标的预计与分配,选择合适方案,逐步将可靠性指标分配到系统各个层次或部件中。<br>\n请围绕“信息系统的可靠性分析与设计”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与管理和开发的信息系统以及你在其中所担任的主要工作。<br>2.容错技术是提高系统可靠性的常用技术,请列举两种常见的系统容错技术,并对每种技术进行解释。<br>3.结合你具体参与管理和开发的信息系统,说明在系统分析与设计过程中针对何种具体的可靠性要求,使用了哪些提高系统可靠性的技术,具体实施过程和效果如何。","analyze":"一、简要描述你所参与管理和开发的信息系统项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、容错是指系统在运行过程中发生一定的硬件故障或软件错误时,仍能保持正常工作而不影响正确结果的一种措施,容错技术主要采用冗余方法来消除系统的故障。常见的容错技术包括:<br>1.冗余方法<br>冗余是指在正常系统运行所需的基础上加上一定数量的资源,包括信息、时间、硬件和软件。冗余是容错技术的基础,通过冗余资源的加入,可以使系统的可靠性得到大大的提高。主要的冗余技术有结构冗余(硬件冗余和软件冗余)、信息冗余、时间冗余和冗余附加4种。<br>(1)结构冗余。结构冗余是常用的冗余技术,按其工作方式,可以分为静态冗余、 动态冗余和混合冗余三种。静态冗余又称为屏蔽冗余或被动冗余,通过表决和比较来屏蔽系统中出现的错误。动态冗余又称为主动冗余,通过故障检测、故障定位及故障恢复等手段来达到容错的目的。混合冗余将静态冗余和动态冗余结合起来,以提高系统的可靠性。<br>(2)信息冗余。信息冗余是在实现正常功能所需要的信息外,再添加一些信息,以保证运行结果正确性的方法,通常采用编码和译码技术来提高信息冗余的效率。<br>(3)时间冗余。时间冗余是以时间(即降低系统运行速度)为代价以减少硬件冗余和信息冗余的开销来达到提高系统可靠性的目的。实现时间冗余的方法很多,其主要思想是对相同的计算任务重复执行多次,然后通过比较计算结果确定是否存在故障。<br>(4)冗余附加。冗余附加是指为实现上述冗余技术所需的资源和技术,包括程序、指令、数据,以及存放和调用它们的空间等。<br>2.软件容错技术<br>软件容错的基本思想是从硬件容错中引申而来,利用软件设计的冗余和多样化来达到屏蔽信息错误的影响,提高系统可用性的目的。软件容错的主要方法是提供足够的冗余信息和算法程序,使系统在实际运行时能够及时发现程序设计错误,采取补救措施,以提高系统的可靠性,保证整个系统的正常运行。常见的软件容错技术有N版本程序设计、恢复块方法和防卫式程序设计等。<br>(1)N版本程序设计。N版本程序设计是一种静态的故障屏蔽技术,主要设计思想是用N个具有相同功能的程序同时执行一项计算,结果通过多数表决来选择。其中N个版本的程序必须由不同的人(小组)独立设计,使用不同的方法、不同的设计语言、不同的开发环境来实现,目的是减少N个版本的程序在表决点上相关错误的概率。<br>(2)恢复块方法。恢复块方法是一种动态的故障屏蔽技术,提供具有相同功能的主块和几个后备块,一个块就是一个执行完成的程序段,主块首先投入运行,结束后进行验证测试,如果没有通过验证测试,系统经现场恢复后由后备块1运行,后备块1运行结束后也进行验证测试,如果没有通过验证测试,则由后备块2运行,重复这一过程, 直到耗尽所有的后备块,或者某个程序故障行为超出预料,从而导致不可恢复的结果。<br>(3)防卫式程序设计。防卫式程序设计不采用任何传统的容错技术,基本思想是通过在程序中包含错误检查代码和错误恢复代码,使得一旦发生错误,程序就能撤销错误状态,恢复到一个已知的正确状态中。其实现策略包括错误检测、破坏估计和错误恢复三个方面。<br>3.双机容错技术<br>双机容错技术是一种软硬件结合的容错应用方案,通常由两台服务器和一个外接共享磁盘阵列及相应的双机软件组成,其屮共享磁盘阵列是一个可选的部件,可以在两台服务器中分别采取RAID卡来取代。在双机容错系统中,两台服务器一般区分主系统和从系统(备用系统),两台服务器互为主从关系。每台服务器都有自己的系统盘,安装操作系统和应用程序。每台服务器至少安装两块网卡,一块连接到网络上,对外提供服务, 另一块与另一台服务器相连,用以侦测对方的工作状况,并通过“心跳”方法保证主系统与备用系统的联系。同时,每台服务器都连接在共享磁盘阵列上,用户数据存放在共享磁盘阵列中,当一台服务器出现故障时,另一台服务器主动替代工作,保证网络服务不间断。双机容错系统有双机热备、双机互备和双机双工三种工作模式。<br>4.集群技术<br>集群技术就是将多台计算机组织起来进行协同工作,是提高系统可用性和可靠性的一种技术。在集群系统中,每台计算机均承担部分计算任务和容错任务,当其中一台计算机出现故障时,系统使用集群软件将这台计算机从系统中隔离出去,通过各计算机之间的负载转嫁机制完成新的负载分担,同时句系统管理人员发出警报。集群系统通过功能整合和故障过渡,实现了系统的高可用性和可靠性。按照解决问题的不同,一般将集群系统分为高性能计算集群、负载均衡集群和高可用集群。<br>三、考生需要以实际开发项目为背景,首先说明系统对可靠性有哪些具体的指标要求,针对每种要求,对应采用了哪些提高系统可靠性的方法,详细描述各种方法的具体实施过程,并对使用效果进行描述。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239892613976065","title":"论软件企业的软件过程改进<br>软件过程是人们用来开发和维护软件以及相关产品的一组活动、方法和实践,是软件企业中最复杂、最重要的业务流程。软件过程改进(Software Process Improvement, SPI)帮助软件企业规划、实施软件过程的改进,为企业的业务服务,必须受企业发展战略的指导。软件过程改进通过在软件开发实践中发现软件过程中的问题,并在实践中找到解决问题的办法,不断推动软件过程的持续改进,提高产品或服务的质量,提高软件开发的效率。软件企业想要高效率、高质量和低成本地开发软件,必须以软件过程改进为中心,全面开展软件工程和质量管理。\n1. 概要叙述你参与的软件过程改进项目以及你所担任的主要工作。<br>2. 详细论述软件企业实施软件过程改进的主要步骤及每个步骤的工作内容。<br>3. 结合你参与的软件过程改进项目,具体阐述软件企业主要是对软件过程的哪些环节实施软件过程改进,并详细说明实施效果。","analyze":"一、简要描述你所参与的软件过程改进项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、分析软件企业实施软件过程改进的主要步骤,并详细阐述每个步骤工作内容。<br>软件企业实施软件过程改进的主要步骤:<br>(1) 制定过程改进方案。评审结束后,策划组要对评审结果进行分析,筛选出改进点;然后将每个改进点都作为一个改进项目,分别制定改进方案。<br>(2) 评价改进方案。评价主要是考察三方面的因素:对商业目标的影响、风险和在CMM中的定位。<br>(3) 改进方案排序。按照分值对各个改进方案进行排序,总分的计算方法如下:总分=(权重1)(对商业目标的影响)+(权重2)(风险)+(权重3)(在CMM中的定位)。<br>(4) 制定方案实施进度表。考虑各个改进点的依赖关系,根据优先级顺序和依赖关系进行总体战略策划,并制定进度表。<br>(5) 获得管理层的承诺。高层管理人员参与确定关键成功因素是非常必要的,W为他们要负责批准战略计划、授权启动改进项目并且不断重申对于过程改进的承诺。<br>三、结合你参与的软件过程改进项目,具体阐述软件企业主要是对软件过程的哪些环节实施软件过程改进,并详细说明实施效果。<br>软件过程改进建议主要针对软件过程的6个环节进行,包括:<br>(1) 改进用户需求过程;<br>(2) 改进需求分析方式;<br>(3) 改进系统分析和设计原则;<br>(4) 改进系统的实施和验证;<br>(5) 改进用户验收被动局面;<br>(6) 改进系统维护过程。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239918853541889","title":"论软件项目质量管理及其应用<br>软件工程的目标是生产出高质量的软件。ANSI/IEEE Std 729-1983对软件质量的定义是“与软件产品满足规定的和隐含的需求能力有关的特征或特性的全体”,实际上反映了三方面的问题:<br>(1)软件需求是度量软件质量的基础。<br>(2)只满足明确定义的需求,而没有满足应有的隐含需求,软件质量也无法保证。<br>(3)不遵循各种标准定义的开发规则,软件质量就得不到保证。<br>软件质量管理贯穿于软件生命周期,极为重要。软件质量管理过程包括软件项目质量计划、软件质量保证和软件质量控制。质量管理的关键是预防重于检査,应事前计划好质量,而不只是事后检査,这有助于降低软件质量管理成本。<br>\n请围绕“软件项目质量管理及其应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与管理和开发的软件项目以及你在其中担任的主要工作。<br>2.详细论述在该项目中进行质量保证和质量控制时所实施的活动,并论述二者之间的关系。<br>3.分析并讨论你所参与的项目中的质量管理成本,并给出评价。","analyze":"一、概要叙述你参与管理和开发的软件项目,并明确指出在其中承担的主要任务和参与的主要工作。<br>二、项目实施过程中进行质量保证和质量控制时所实施的活动,并论述二者的关系。质量保证是为了使项目将会达到有关质量标准而开展的有计划、有组织的工作活动。软件质量保证的目的是验证在软件开发过程中是否遵循了合适的过程和标准,其主要职责是保证软件透明开发的主要环节,它贯穿于整个项目的始终。<br>质量保证的主要活动是项目产品审计和项目执行过程审计。项目产品审计是根据质量保证计划对项目过程中的工作产品进行质量审查的过程:项目执行过程审计(有时也称为质量审查)是对项目质量管理活动的结构性复查,是对项目的执行过程进行检査,以确保所有活动都遵循规程进行。<br>质量控制可以确定项目结果是否与质量标准相符,同时确定消除不符的原因和方法,控制产品的质量,及时纠正缺陷。质量控制的关键是所有的工作产品都具有良好定义的、可度量的规约,而反馈循环的引入对于把产生的缺陷减少到最低程度至关重要。质量控制的主要活动是技术评审(包括同行技术评审)、代码走查、代码评审、单元测试、集成测试、压力测试、系统测试、验收测试和缺陷追踪等。<br>技术评审是通过正式的评审会议,对工作产品进行评审,以尽早发现工作成果中的缺陷,并帮助开发人员及时消除缺陷,从而有效地提高产品的质量。<br>代码走查是以小组(3~4人)为单位进行代码阅读,互相帮助来检查代码中存在的错误,这是一种不太正式的代码检査,可以看成是开发人员的个人质量行为。<br>代码评审是由一组人通过阅读、讨论和争议来对程序进行静态分析的过程,往往采用比较正式的会议形式,是比代码走查更高一层的质量控制。<br>测试也是质量控制的基本活动。单元测试检验单个模块是否按其详细设计说明运行,测试的是程序逻辑:集成测试是测试系统各个部分的接口以及在实际环境中的性能级别;系统测试是检验系统作为一个整体是否按其需求规格说明正确运行,验证系统整体的运行情况;压力测试是测试系统在特殊条件下的限制和性能,测试系统在大数据量、低资源条件下的健壮性、系统恢复能力等;验收测试是在客户的参与下检验系统是否满足客户的所有需求,尤其是在功能和使用方便性方面。<br>质量保证与质量控制的关系:<br>•质量保证的焦点在于过程,而质量控制的焦点在于交付产品(包括阶段性产品)前的质量把关。<br>•质量保证是一种通过采取组织、程序、方法和资源等各种手段的保证来得到高质量软件的过程,属于管理职能;质量控制是直接对项目工作结果的质量进行把关的过程,属于检查职能。<br>•质量保证的关键点是确保正确地做:质量控制的关键点是检查做得是否正确。<br>•质量保证和质量控制有共同的目标,有一组既可用于质量保证,也可用于质量控制的方法、技术和工具。<br>考生应该对自己在项目中采用的质量保证和质量控制的具体活动进行论述,并对取得的效果进行说明,同时论述质量保证和质量控制的关系。<br>与任何管理活动一样,质量管理也有成本。质量成本是为了取得产品或服务的质量而付出的所有努力的总成本。<br>三、分析并讨论在该项目中的质量管理成本,并给出评价。<br>质量成本包括预防成本和缺陷修复成本。预防成本是为了确保项目质量而进行预防工作所耗费的费用,缺陷修复成本是为确保项目质量而进行修复缺陷工作所耗费的费用。—般而言,预防成本应大于缺陷修复成本。<br>预防成本包括评估费用和预防费用。评估费用是使项目符合所提要求检测缺陷所衍生的成本,例如质量审计、测试和V&amp;V等;预防费用是使项目符合所提要求预防失败所衍生的成本,例如用户满意确定、过程评审和改进等。<br>缺陷修复成本包括内部费用和外部费用。内部费用是对于不能符合所提要求、尚未发行的软件(返工)所衍生的费用,例如缺陷标记、返工和重新测试等;外部费用是对于已经发布但是不符合要求的软件所衍生的费用,例如技术支持、问题估计、修正和索赔等。<br>考生应该对项目质量活动中的成本进行论述,对成本组成予以评价。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239854546472961","title":"论信息化建设中的企业知识管理<br>企业知识管理(Enterprise Knowledge Management, EKM)是指利用现代信息技术,开发企业知识资源,调动人力资源学习潜能,并建立与之相适应的组织模式,推进企业现代化进程,提高企业核心竞争力和经济效益的过程。信息化建设是企业实施知识管理的基本工具,它为企业知识管理提供技术和资源支持;企业知识管理为解决信息化建设 出现的问题提供理论指导。构建企业知识管理系统是信息化建设中企业知识管理的重要组成部分,利用知识管理系统对有价值的信息即知识进行强化管理,采用信息技术与人 相结合的方式建立并管理联接于客户、企业及供应商之间的知识链,以整合组织知识学习过程,提高组织竞争力。\n请围绕“信息化建设中的企业知识管理”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与的企业知识管理系统的开发项目以及你所担任的主要工作。<br>2.分析在信息化建设中实施企业知识管理的主要阶段,并详细阐述每个阶段的内容和主要工作。<br>3.企业知识管理系统的构成是与知识管理过程密切相关的,简要介绍你所参与构建的企业知识管理系统的主要模块及其功能。","analyze":"写作要点<br>1.简要描述所参与的企业知识管理系统的开发项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>2.分析在信息化建设中实施企业知识管理的主要阶段,并详细阐述每个阶段的内容和主要工作。<br>信息化建设中实施企业知识管理包括五个主要阶段:<br>(1)认知阶段。统一企业对知识管理的认知,梳理知识管理对企业的作用与意义,评估企业的知识管理现状。帮助企业认识是否需要知识管理,并确定知识管理实施的正确方向。主要工作包括:全面完整的认识知识管理,对企业中高层进行知识管理认知,特别是让企业高层认识知识管理;利用知识管理成熟度模型等评价工具多方位评估企业知识管理现状及通过调研分析企业管理的主要问题;评估知识管理为企业带来的长、短期效果;从而为是否推进知识管理实践提供决策支持;制定知识管理战略和推进方向等。<br>(2)规划阶段。通过对知识管理现状、知识类型的详细分析,并结合业务流程等多角度,进行知识管理规划。主要工作包括:从战略、业务流程及岗位来进行知识管理规划;企业管理现状与知识管理发展的真实性分析;制订知识管理相关战略目标和实施策略,并对流程进行合理化改造;知识管理落地的需求分析及规划;在企业全面建立知识管理的理论基础。<br>(3)试点阶段。按照规划选取适当的部门和流程依照规划基础进行知识管理实践。并从短期效果来评估知识管理规划,同时结合试点中出现的问题进行修正。主要工作包括:每个企业都有不同的业务体系,包括生产、研发和销售等,各不同业务体系的任务特性均不相同,其完成任务所需要的知识亦有不同,因此需要根据不同业务体系的任务特性和知识应用特点,拟订最合适、成本最低的知识管理方法。另外,考虑到一种业务体系下有多方面的知识,如何识别关键知识,并判断关键知识的现状,进而在知识管理模式的指导下采取有针对性的提升行为。<br>(4)推广和支持阶段。在试点阶段不断修正知识管理规划的基础上,知识管理将大规模在企业推广,以全面实现其价值。主要工作包括:知识管理试点部门的实践,在企业中其他部门的复制;知识管理全面地融入企业业务流程和价值链;知识管理制度初步建立;知识管理系统的全面运用;学习型组织、头脑风暴等知识管理提升计划的全面运行,并将其制度化。<br>(5)制度化阶段。企业重新定义战略,并进行组织构架及业务流程的重组,准确评估知识管理在企业中实现的价值。主要工作包括:企业开始意识到知识管理是企业运作的一种战略,而且有必要成为综合企业运作机制的一部分,从而把知识管理全面融入企业战略、流程、组织、绩效等管理体系。在此基础上,知识管理将逐渐演变为企业核心竞争力的一部分,有力促进企业每一位员工的发展。<br>3.企业知识管理系统的构成是与知识管理过程密切相关的。知识管理过程是知识生成、知识挖掘、知识重组和知识应用多个步骤相互连接、反复进行的交互过程,因此,知识管理系统可按下面的4个模块进行设计和开发。<br>(1)知识生成模块。本模块的目标是从海量的信息中抽取出针对某个应用领域的知识,它包括:确定某个应用领域,建立一个目标数据集,进行信息整理和预处理,对知识进行标记。<br>(2)知识挖掘模块。本模块的目标是按照一定的知识提取算法,从知识库中发现隐含的、有意义的知识,获取能改变对事物认识的知识。这些方法主要有关联分析、聚类、概念描述和偏差检测4类。<br>(3)知识重组模块。本模块是结合具体的用户需求,形成特定用户系统化的知识。具体方法就是运用情报研究领域的方法,如层次分析法,将零散的知识转换为针对用户需求且让用户易于理解的知识。<br>(4)知识应用模块。本模块结合决策分析方法,如SWOT方法、SPACE方法等,将知识重组得到的系统化的知识运用到实际生产运行过程中,从而形成新的知识,即决策备选方案或新的科技成果。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239868425424897","title":"论大数据处理技术及其应用<br>近年来,互联网、云计算、移动计算和物联网技术迅速发展,数以亿计的网络用户、无所不在的移动设备、RFID和无线传感器时时刻刻都在产生海量的数据,并且需要处理 的数据呈几何级数增长。另一方面,企业业务需求和竞争压力对海量数据处理的实时性、有效性提出了更高的要求,传统的数据处理方法往往无法适应这种变化。在这种背景下, 企业需要针对“大数据”的应用特征,选取更加合适的数据处理方法与技术。\n请围绕“大数据处理技术及其应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与实施的、与大数据处理相关的开发项目及你所担任的主要工作。 <br>2请从数据量、数据分析需求和硬件平台三个方面阐述大数据处理系统与传统数据处理系统的差异;列举并解释大数据处理系统应该具有的重要特征(至少列举四个)。<br>3.阐述你参与实施的项目在进行大数据处理时遇到了哪些问题,是如何解决的。","analyze":"写作要点<br>1.论文中要介绍企业的业务背景、组织结构、数据分析需求、大数据处理系统的架构、采用的技术等内容和担任的实际工作。<br>2.从数据量、数据分析需求和硬件平台三个方面来看,大数据处理系统与传统数据处理系统之间的差异是:<br>(1)从数据量角度看,传统数据处理系统可以处理的数据量一般在GB或TB级,而大数据处理系统需要处理的数据量一般都在PB级。<br>(2)从数据分析需求角度看,传统数据处理系统主要关注常规的数据分析,包括对现有数据的分析和检测。大数据处理系统主要关注数据的深度分析(Deep Analytics), 期望能够对未来趋势有更多的分析和预测,以增强企业竞争力。深度分析包括移动平均线分析、数据关联关系分析、回归分析等多种复杂统计分析方法。<br>(3)从硬件平台角度看,传统数据处理系统主要由高端服务器构成。由于数据量迅速增加,数据库规模不断增加,从而导致系统成本急剧上升。出于成本考虑,越来越多的企业将大数据处理系统的硬件平台由高端服务器转向了由中低端硬件构成的大规模集群平台。<br>大数据处理系统应该具有的重要特征包括:<br>(1)高度可扩展性。数据库不能依靠一台或少数几台机器的升级(scale-up,纵向扩展)满足数据量的爆炸式增长,而是希望能方便地做到横向扩展(scale-out)来实现此目标。因此,大数据处理系统应该支持横向大规模可扩展,并支持大规模并行处理。<br>(2)高性能。数据量的增长并没有降低对数据库性能的要求,反而有所提高。软件系统性能的提升可以降低企业对硬件的投入成本、节省计算资源,提高系统吞吐量。大数据处理系统应该能够快速响应复杂查询与分析。<br>(3)高度容错。一方面,大数据系统所采用硬件集群平台,随着节点数的增加会带来节点失效概率的增加。另一方面,大数据的容错性要求在查询执行过程中,一个参与节点失效时,不需要重做整个查询。在这种情况下,系统不能依赖于硬件来保证容错性,要更多地考虑软件级容错。<br>(4)支持异构环境。由于计算机硬件更新较快,一次性购置大量同构的计算机设备是不可取的,而且也会在未来添置异构计算资源。在这种情况下,大数据处理系统需要支持异构环境,并需要通过负载均衡、任务调度等方面的设计调整并提高系统的整体处理性能。<br>(5)较短的分析延迟。分析延迟指的是分析前的数据准备时间。在大数据时代,分析所处的业务环境是变化的,因此也要求系统能动态地适应业务分析需求。在分析需求发生变化时,减少数据准备时间,系统能尽可能快地做出反应,快速地进行数据分析。<br>(6)易用且开放的接口。传统的关系型数据库通常采用SQL进行数据查询。SQL的优点是简单易用,但其主要用于数据的检索查询,对大数据上的深度分析来说,是不够的。原因在于:<br>①其提供的服务方式依赖于数据移动来实现:将数据从数据库中取出,然后传递给应用程序,该实现方式在大数据时代代价过高;<br>②复杂的分析功能SQL难以胜任。<br>因此,除对SQL的支持外,系统还应能提供开放易用的接口,让用户自己开发需要的功能。<br>(7)较低成本。在满足需求的前提下,需要尽量降低硬件、软件、日常维护和管理人员等综合成本的指标。<br>(8)向下兼容性。数据仓库技术发展了 30多年,产生了大量面向客户业务的数据处理工具、分析软件和前端展现工具等。这些软件已被分析人员所熟悉,是大数据时代中小规模数据分析的必要补充。因此大数据分析系统需要考虑与传统数据分析工具的兼容性。<br>(以上特征,只要任意给出4个即可)<br>3.在进行大数据处理系统开发时可能遇到的问题包括:如何对数据需求进行梳理;如何选择底层数据存储系统(包括关系型数据库、NoSQL数据库等),如何选择合适的数据处理算法与处理流程;如何对处理算法进行调整,使其适应大数据处理平台的要求;等等。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239929393827841","title":"论面向服务的企业应用集成技术及其应用<br>企业应用集成(Enterprise Application Integration,EAI)是每个企业都必须要面对的实际问题。面向服务的企业应用集成是一种基于面向服务体系结构的新型企业应用集成技术,强调将企业和组织内部的资源和业务功能暴露为服务,实现资源共享和系统之间的互操作性,并支持快速地将新的应用以服务的形式加入到已有的集成环境中,增强企业IT环境的灵活性。<br>\n请围绕“面向服务的企业应用集成技术及其应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与实施的企业应用集成项目以及你在其中所担任的主要工作。<br>2.阐述面向服务的企业应用集成技术的三个重要软件层次,并对每个层次的主要功能进行详细论述。<br>3.阐述在使用面向服务的企业应用集成技术进行应用集成时所遇到的问题及你是如何解决的。","analyze":"一、论文中要具体介绍组织的业务背景、组织结构、现有应用系统的分布、采用的技术的等等内容和担任的实际工作。<br>二、面向服务的企业应用集成技术以服务作为封装资源和业务功能的核心概念。服务从整体的角度看待系统功能的实现,使用与实现技术无关的标准化结构进行构建,并为业务带来了灵活性和敏捷性,通过松散耦合、封装和信息隐藏使重构更加容易。<br>面向服务的企业应用集成技术主要包含三个重要的软件层次,它们分别是基础设计层、应用结构层和业务组织层,各层的主要功能如下:<br>1.基础设计层<br>基础设计层的主要功能是能够快速有效地设计、开发以及执行灵活且可扩展的底层服务构件。<br>2.应用结构层<br>企业应用集成需要整合来自多个组织的异构信息系统信息和功能,因此需要协调并保证各种解决方案的一致性。应用结构层的主要功能正是以表示业务服务的逻辑构件为中心,集中定义服务之间的接口和服务级协定。<br>3.业务组织层<br>业务组织层的主要功能是以服务为基础提供设计、建模以及运行业务流程的集成环境。业务流程中操作的排序、选择和执行会形成流程编排,流程编排也可进一步封装为服务,响应业务事件。<br>三、使用面向服务的企业应用集成技术进行应用集成时可能存在的问题包括如何发现服务;如何进行服务规约,包括服务候选服务的分类与选择,服务编排,服务库的设计,等等;如何实现服务,包括将服务的实现分配到相应的服务构件中,并决定服务的实现方式。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239843645476865","title":"论Web系统的测试技术及其应用<br>随着网络技术的广泛应用,许多传统的信息系统已经逐渐被移植到互联网上,Web系统已经对日常的工作和生活产生了深远的影响。为了保证Web系统的正确性,在系统开发阶段就要对其进行全面的测试、确认和验收,而且由于Web系统具有与传统信息系统截然不同的特点,需要采用针对Web系统特点的测试技术与方法。<br>\n请围绕“Web系统的测试技术及其应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与实施的Web系统开发项目以及你所担任的主要工作。<br>2.阐述主要针对哪几个方面进行Web系统测试,并对每个方面的具体测试内容进行详细论述。<br>3.阐述在进行Web系统的测试时遇到了哪些问题,如何解决。","analyze":"写作要点:<br>一、论文中要具体介绍组织的业务背景、组织结构、Web系统的架构、采用的技术等内容和担任的实际工作。<br>二、Web系统测试包括以下几方面。<br>1.功能测试<br>(1)链接测试。链接测试可分为三个方面。首先,测试所有链接是否按指示链接到正确的页面;其次,测试所链接的页面是否存在;最后,保证Web应用系统上没有孤立页面。链接测试可以自动进行,现在已经有许多工具可以采用。<br>(2)表单测试。当用户给Web应用系统管理员提交信息时,就需要使用表单操作,例如用户注册、登录、信息提交等。在这种情况下,必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。如果使用默认值,还要检验默认值的正确性。如果表单只能接受指定的某些值,则也要进行测试。<br>(3)Cookies测试。如果Web应用系统使用了 Cookies,就必须检查Cookies是否能正常工作。测试的内容可包括Cookies是否起作用,是否按预定的时间进行保存,刷新对Cookies有什么影响,等等。<br>(4)设计语言测试。Web设计语言版本的差异可以引起客户端或服务銮端严重的问题,例如使用哪种版本的HTML等。当在分布式环境中开发时,开发人员都不在一起,这个问题就显得尤为重要。除了 HTML的版本问题外,不同的脚本语言,例.如Java、JavaScript、ActiveX、VBScript 或 Perl 等也要进行验证。<br>(5)数据库测试。在Web应用中,最常用的数据库类型是关系型数据库。在使用了数据库的Web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确造成的,而输出错误往往是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。<br>2.性能测试<br>(1)连接速度测试。由于用户连接到Web应用系统的速度差异较大,需要对Web系k响应时间进行测试;另外,需要对页面响应速度和超时设置进行测试;最后,需要考虑由于连接速度太慢而引起的数据丢失。<br>(2)负载测试。负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。<br>(3)压力测试。压力测试是指实际破坏一个Web应用系统,测试系统的反映。压力测试是测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。压力测试的区域包括表单、登录和其他信息传输页面等。<br>3.可用性测试<br>(1)导航测试。导航测试需要考虑导航是否直观,Web系统的主要部分是否可通过主页存取,Web系统是否需要站点地图、搜索引擎或其他的导航帮助等导航可用性问题。 Web系统的层次一旦决定,就要着手测试用户导航功能,让最终用户参与这种测试,效果将更加明显。<br>(2)图形测试。图形测试的内容有:验证图形用途,减少传输时间与传输量;验证所有页面字体的风格是否一致;验证背景颜色是否与字体颜色和前景颜色相搭配;检查图片的大小和质量,等等。<br>(3)内容测试。主要检验Web应用系统提供信息的正确性、准确性和相关性。<br>(4)整体界面测试。考查整个Web系统的页面结构设计,是否给用户的一个整体感。<br>对所有的可用性测试来说,都需要有外部人员的参与,最好是最终用户的参与。<br>4.客户端兼容性测试<br>(1)平台测试。需要在各种操作系统下对Web系统进行兼容性测试。<br>(2)浏览器测试。测试不同厂商、不同版本的浏览器对某些构件和设置的适应性。<br>5.安全性测试<br>(1)用户名、密码测试。必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登录而直接浏览某个页面等。<br>(2)超时测试。测试Web系统是否有超时的限制。<br>(3)日志信息测试。需要测试相关信息是否写进了日志文件、是否可追踪。<br>(4)安全套接字测试。当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。<br>(5)服务器端脚本问题。服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要就没有经过授权,就不能在服务器端放置和编辑脚本的问题进行测试。<br>三、在进行Web系统测试时可能存在的问题包括如何构建测试环境;如何选择合适的工具进行自动化测试;如何模拟大规模并发访问,并进行系统的性能测试;如何设计调查问卷,进行系统的可用性测试,等等。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239874666549249","title":"论政务流程的优化与再造<br>政务流程是一组相关的、结构化的活动集合,这些活动集合为公众提供特定的服务或产品。一般而言,政务流程有三类:面向公众的流程,为公众提供产品或服务;支持流程,为政府内部提供产品、服务和信息;管理流程,促使面向公众的流程和支持流程有效配合,以符合公众和用户的期望与需要。<br>为提升政府的治理能力,许多地区政府在建设电子政务系统的同时,都进行了政务流程的规范、优化与再造。<br>流程再造是用成本、质量、服务和速度等来衡量和改善工作业绩,对业务流程进行的根本性再思考和彻底再设计。政府流程的优化与再造是对政府治理的理念、原则、结构、行为等进行大的改进,以提高政府绩效和服务品质,而不是简单的组织精简和结构重组。<br>\n请围绕“政务流程的优化与再造”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与管理、分析的电子政务类信息系统项目以及你所担任的主要工作。<br>2.论述你在实施电子政务项目时,现有政务流程存在的问题。<br>3.阐述如何实施电子政务流程的优化与再造,效果如何。","analyze":"一、概要叙述你参与管理、分析的电子政务类信息系统项目,应明确指出你所担任的主要工作。<br>二、论述你在实施电子政务项目时,现有政务流程存在的主要问题。<br>目前,现有的政务流程普遍存在以下问题:<br>(1)当流程涉及若干个职能部门时,因部门只对自己的工作和上级负责,流程的责任人很难明确。<br>(2)政府部门层级繁多,容易与公众脱节,信息容易失真。<br>(3)由于技术的限制不能实现整个业务条块的网络化,业务数据流只能按照地理位置分割在多个部门,增加了交接环节和复杂程度,政务流程复杂而且分散。<br>(4)流程的各个环节由不同职能部门负责,可能会出现因影响职能部门利益而使流程受阻,从而导致整个组织的效能弱化。<br>考生也可不限于上述内容进行论述。<br>三、阐述如何实施电子政务流程的优化与再造,效果如何。<br>—般情况下,流程优化与再造的实施主要考虑的内容如下所述。<br>1.基本思想<br>以公众为出发点、以流程为中心、注重节约成本和提高效能。考生就其中的一项进行论述即可。<br>2.基本方法<br>(1)将政府的管理、决策与事务性工作分开。<br>(2)清理,消除原有流程中非增值的环节;整合,对清理后的流程予以简化,并对分解开的流程进行整合,使整个流程更加顺畅。<br>(3)简化中间管理层,扩大授权,最大限度地发挥每个人的工作潜能与责任心并承担相应管理责任。<br>(4)按照流程的自然次序梳理流程,克服人为的、硬性的直线序列。<br>(5)从源头一次捕获信息,实现信息在整个流程上的共享。<br>(6)流程应该能够可以订制,适应不同情况可有多种变化形式。<br>考生论及其中两项即可。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239961153097729","title":"请以“业务流程建模方法及应用”为题,分别从以下三个方面进行论述。\n1.概要叙述你参与实施的项目以及你所担任的主要工作。<br>2.给出三种业务流程建模方法,并对每种方法进行简要描述。说明你在该项目中采用了哪种业务流程建模方法,结合项目特征说明采用该方法的原因,并详细描述业务流程建模过程。<br>3.阐迷在进行业务流程建模过程中遇到的主要问题及如何解决的。","analyze":"一、论文中要具体介绍组织的业务背景、组织结构、软件系统的架构、采用的技术等内容和担任的实际工作。<br>二、常见的业务流程建模方法包括:<br>(1)标杆睢准(BenchMarking)方法<br>标杆瞄准是一个连续、系统化地对外部领先企业进行评价的过程,通过分析和评价,确定出最佳的经营过程和工作过程,以便合理地确定本企业的业务流程。由于企业中的许多业务流程在不同的行业都是相似的,因此,运用标杆瞄准法对这些项目实施标准,尤其是在不同的行业对同一项目实施标杆瞄准时,对企业的参考价值可能更大。<br>(2)IDEF 方法<br>IDEF是一系列建模、分析和仿真方法的统称,从IDEF0到IDEF14 (包括IDEF1X) 在内共有16套方法,每套方法都是通过建模程序来获取某个特定类型的信息。分别是IDEF0 (功能建模)、IDEF1 (信息建模)、IDEF1X (数据建模)、IDEF2 (仿真建模设计)、IDEF3 (过程描述获取)、IDEF4 (面向对象设计)、IDEF5 (本体论描述获取)、IDEF6 (设计原理获取)、IDEF7 (信息系统审计)、IDEF8 (用户界面建模)、IDEF9 (场景驱动信息系统设计)、IDEF10C实施架构建模)、IDEF11 (信息制品建模)、IDEF12(组织建模)、IDEF13 (三模式映射设计)和IDEF14 (网络规划)。在IDEF方法中, IDEF0可以用来对业务流程进行建模。IDEF0是对企业所完成的各项活动及活动之间相互关系的一种结构化描述,其基本要素是用“盒子”表示功能活动。IDEF0的特点是其层次分解性,利用一套完整的、严密的规则,将一个复杂的系统逐层往下分解,即较高层次的一个活动可以按需要细化成一组较低层次上的活动。<br>Perti网方法<br>Petri网作为一种从流程的角度出发描述和分析复杂系统的模型工具,适用于多种系统的图形化、数学化建模丁具,为描述和研究具有并行、异步、分布式和随机性等特征的信息系统提供了强有力的手段,应用Petri网可以有效地对企业业务流程进行建模和系统仿真,实现业务流程的执行和控制管理。<br>DEMO 方法<br>DEMO ( Dynamic Essential Modeling of Organization)方法定义了 信息系统中行为角色之间的通信方式,这种通信方式可以看作是一种对角色行为的支配方式,而这种支配方式是通过在行为角色之间创建指导其行动的约定来实现的,其理论基础是对话行为理论(Speech Action Theory)。DEMO的核心是业务事物,业务流程由一系列的相关业务事物组成,业务事物是一种通信模式和客观行为,通过两个行为角色实现,分别是发起者和执行者。一个业务事物包括三个阶段,分别是要求阶段、执行阶段和结果阶段。<br>业务流程建模语言<br>主流的业务流程建模语言标准有业务流程执行语言(Business Pricess Execution Language, BPEL)、业务流程建模语言(Business Process Modeling Language,BPML)、业务流程建模标注(Business Process Modeling Notation, BPMN)和XML流程定义语言 (XML Process Definition Language, XPDL)和UML 五种。BPEL 是一种使用XML 编写,用于自动化业务流程的形式规约语言,流程中的处理通常为Web服务;BPML与BPEL 的设计理念类似,也是用XML对流程和流程执行语义进行描述,它是业务流程建模的元语言。XPDL是工作流管理联盟定义的一套流程建模标准,用来支持BPM的各种工具和引擎间交换流程设计的定义。BPMN是一种图形化流程建模语言,主要用于对流程的直观表示。<br>(以上5种建模方面,只要给出其中任意3个即可。意思正确即可酌情给分)<br>2.考生针对问题1中的项0背景描述,提炼所参与项目在业务流程建模方面的特点,针对项目特点从上述建模方法中选择一个较为合适的方法,并明确指出选择这种方法的原因。最后按照该建模方法的步骤,详细描述是如何进行业务流程建模的。<br>三、在流程建模中可能遇到的问题包括:如何识别企业的基本流程;如何表达流程之间存在的交叉和嵌套等关系;如何定义流程内部的角色及角色之间的通信方式;如何描述具有并行、异步、分布式和随机性等特性的复杂业务流程,等等。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239965448065025","title":"请以“数据库集群技术及应用”为题,分别从以下三个方面进行论述。\n1.概要叙述你参与实施的软件项目以及你在其中所担任的主要工作。<br>2.请说明你所参与的软件项目对数据管理的契示需求,结合数据库集群技术的特点,论述你是如何应用数据库集群技术或设计数据库集群系统的。<br>3.简要说明数据库集群产品的应用效果及存在的问题。","analyze":"一、简要介绍企业的业务背景、数据分析需求、采用的数据库集群技术等内容,说明自己担任的实际工作。<br>二、详细论述所参与的软件项目对数据管理的实际需求,论述如何应用或设计数据库集群技术。<br>数据库集群系统是利用多台数据库服务器,构成一个虚拟单一的数据库逻辑映像,如同单数据库一样,向客户端提供透明的数据服务。<br>为保证虚拟单一的数据库逻辑映像,数据库集群系统有多种实现方式:单份数据集,两份或多份相似但非实时同步的数据集,两份或多份实时一致的数据集等。数据库集群的特点包括:数据库集群系统往往是同构系统,集群中各个节点具有相同的操作系统和数据库系统版本;数据库集群往往建立在高速局域网内,一般通过多台服务器提供数据冗余,为客户端提高数据的高可用性和高可靠性;通过多种负载均衡技术为客户端提供高性能。<br>按照数据库集群的架构可分为共享磁盘型和非共享磁盘型数据库集群。共享磁盘型的数据库集群只有一个单一的数据集,不存在节点之间的数据同步问题。非共享磁盘型数据库集群系统包含多个物理机器,为保持统一的逻辑数据视图,数据同步是一个核心问题。数据库集群系统中常见的数据同步机制包括:<br>串行数据复制分为串行异步复制和串行同步复制<br>串行异步复制:主要采用数据库事务日志传送或者硬盘数据块传送技术来实现。主数据库完成事务处理后,生成事务日志或将数据写入数据块中,通过FIFO队列的形式,将数据传送到备份数据库,得到一致数据。存在的主要问题是:异步会存在时间差,带来主、备数据库的数据的不一致,也可能会丢失数据;同时存在一定的额外开销。<br>串行同步复制:此类集群往往是由昂贵的专用软硬件构成,采用专用的高速网络和软件技术,将每个数据库的请求,通过同步复制的方式,同步在主备两台数据库服务器执行正确后,才将结果返回给数据库客户。其主要特点是主备服务器同时处理,性能低,而且专用系统造价昂贵。<br>基于共享存储技术:典型的产品是数据库的双机容错技术,也包括Oracle的RAC 产品。该系统的架构是多个机器共享一个磁盘阵列,服务器通过虚拟IP提供服务,形成单一的逻辑数据库。一旦某个机器异常,则通过心跳检测或其他信息交换协议,完成主备机器的切换。主要特点是单一数据存储,存在数据同步问题,但是单一数据往往成为整个系统的单点错误源;而且只能通过数据库中常用的备份或复制方法获取第二份数据,以保证数据安全,因此,所有复制或备份方法的缺点,此类系统全部存在。另外,主备机器的切换也需要时间开销。<br>基于实时数据同步技术:此类集群的基本特征是节点有自己独立的存储设备,数据采用非共享存储。因此该集群一般均提供负载均衡技术,采用的负载均衡技术有基于连接的负载均衡和基于请求的负载均衡两种。在实现节点之间的数据同步上,或者通过专门的高速数据同步技术,或者通过分布式数据库中的两阶段提交协议来实现。此类集群系统的核心特点是:1)实时冗余一致的数据存储,理论上实现了数据的零丢失,可以做到很高的可用性;2)由于需要额外的数据同步操作,因此性能会受到一定的影响,如采用两阶段提交来实现同步,则慢一些;同时,额外的数据同步也限制了集群中的节点数目。<br>目前基于共享存储和基于实时数据同步技术(即非共享存储)是数据库集群中的主流技术,串行数据机制也可以算作是非共享存储中的一种,但由于性能较差,缺陷明显,在市场上采用的较少。在实际选择数据库集群产品时,需要考虑的问题包括:数据的并发/性能需求、数据容量、数据可靠性、数据可用性、实现成本等问题。<br>三、论述采用了具体的数据库集群技术后,取得的应用效果,说明是否满足了企业的数据需求,并说明存在的问题。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239967884955649","title":"请以“论信息系统开发方法及应用”为题,分别从以下三个方面进行论述。\n1.简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>2.目前比较主流的信息系统开发方法主要包括:结构化方法、面向对象方法、面向服务的方法、原型化方法、快速应用开发、敏捷开发等。<br>3.考生需结合自身参与项目的实际状况,指出其参与管理和开发的项目中是如何应用所选择的开发方法指导系统开发的,说明具体的实施过程、使用的方法和工具,并对实际实施效果进行分析。","analyze":"一、简要介绍企业的业务背景、数据分析需求、采用的数据库集群技术等内容,说明自己捎任的实际下作。<br>二、详细论述所参与的软件项目对数据管理的实际需求,论述如何应用或设计数据库集群技术。<br>结构化方法是一种传统的信息系统开发方法,由结构化分析、结构化设计和结构化程序设计三部分有机组合而成,其精髓是自顶向下、逐步求精和模块化设计。<br>结构化方法的基本思想是将系统的生命周期划分为系统规划、系统分析、系统设计、系统实施和系统维护等阶段。这种方法遵循系统工程原理,按照事先设计好的程序和步骤,使用一定的开发工具,完成规定的文档,在结构化和模块化的基础上进行信息系统的开发工作。结构化方法的开发过程一般是先把系统功能视为一个大的模块,再根据系统分析与设计的要求对其进行进一步的模块分解或组合。<br>结构化方法的主要特点是:开发目标清晰化;开发工作阶段化;开发文档规范化: 设计方法结构化。<br>结构化方法是目前最成熟、应用较为广泛的一种工程化方法,它特别适合于数据处理领域的问题,但是不适用于规模较大、比较复杂的系统开发。其局限性体现在:开发周期长,难以适应需求变化,很少考虑数据结构等。<br>面向对象方法是当前的主流开发方法。面向对象方法认为,客观世界是由各种对象组成的,任何事物都是对象,每一个对象都有自己的运动规律和内部状态,都属于某个类,是该类的一个元素。复杂的对象可由相对简单的各种对象以某种方法而构成,不同对象的组合及相互作用就构成系统。<br>面向对象方法也包括面向对象分析(OOA)、面向对象设计(OOD)和面向对象程序设计(OOP)三个阶段。OOA的任务是了解问题域所涉及的对象、对象间的关系和操作,然后构造问题的对象模型。OOD在分析对象模型的基础上,设计各个对象、对象之间的关系和通信方式,其主要作用是对OOA的结果作进一步的规范化整理。OOP实现在OOD阶段所规定的各个对象所应完成的任务,它包括每个对象的内部功能实现,确定对象哪-些处理能力应在哪些类中进行描述,确定并实现系统的界面、输出的形式等。<br>面向对象方法使系统的描述及信息模型的表示与客观实体相对应,符合人们的思维习惯,有利于系统开发过程中用户与幵发人员的交流和沟通,缩短开发周期,提供系统开发的正确性和效率。面向对象方法可以普遍适用于各类信息系统的开发,但是也存在明显的不足。当前一些大型信息系统的开发,通常是把结构化方法和面向对象方法结合起来。<br>面向服务方法<br>在面向对象之后发展起来的建模技术将相关对象按照业务功能进行分组,就形成了构件的概念。对于跨构件的功能调用,则采用接口的形式接露出来,进一步将接口的定义与实现进行解耦,则催生了服务和面向服务的开发方法。<br>面向服务的开发方法也分为面向服务的分析与设计(SOAD)阶段。OOA/OOD、企业架构(Enterprise Architecture, EA)和业务流程建模(BMP)分别从基础设计层、应用结构层和业务组织层三个层次上为SOAD提供理论支撑。<br>服务建模的过程实际上是进行流程分解、对业务目标和现有系统进行分析,发现候选服务,并对其进行分类,确定哪些服务可以被暴露,最终实现服务和架构设计的过程。按照实施的阶段,服务建模可以分为服务发现、服务规约和服务实现三个阶段。<br>面向服务的方法加强了系统的灵活性、可复用性和可演化性。因此服务基础架构基于粗粒度、松散耦合和基于标准的服务,使得信息系统的建设能够保持主动,这种方法使信息系统能够通过自身的业务和转换来应对市场挑战。<br>原型化方法<br>原型化方法也称为快速原型法,它是一种根据用户初步需求,利用系统开发工具,快速地建立一个系统模型展示给用户,在此基础上与用户交流,最终实现用户需求的信息系统快速开发的方法。<br>原型法的开发过程包括如下步骤:确定用户基本需求;设计系统初始原型;试用和评价原型;修正和完善原型;整理原型和提供文档。<br>原型法的特点:可以使系统开发的周期缩短、成本和风险降低,速度加快,获得较高的综合开发效益;提高用户参与程度,增加用户满意度,提高系统开发的成功率:由于用户参与了系统开发的全过程,对系统的功能和结构容易理解和接受,有利于系统的移交,有利于系统的运行和维护。<br>原型法的优点主要在于能更有效地确认用户需求。从直观上来看,原型法适用于那些需求不甚明确的系统开发。对于分层层面难度大、技术层面难度不大的系统,适合于原型法,而对于技术层面的困难远大于分析层面的系统,则不宜采用原型法。<br>快速应用开发(RAD)<br>快速应用开发强调极短的开发周期,通过使用基于构件的开发方法获得快速开发。 如果需求理解得很好,且约束了项目范围,利用这种方法可以很快开发出功能完善的信息系统。<br>RAD的开发阶段包括:业务建模、数据建模、过程建模、应用生成、测试与交付。<br>RAD的局限性:RAD对模块化要求比较高,开发者和客户必须在很短时间完成一系列需求分析,任何一方配合不当,都会导致RAD项目失败;RAD只能用于管理信息系统的开发,不适合技术风险很高的情况。<br>敏捷开发方法<br>敏捷方法是一种以人为核心、迭代、循序渐进的开发方法。在敏捷方法中,软件项目的构件被切分成多个子项目,各个子项目成果都要经过测试,具备集成和可运行的特征。敏捷方法主要适用于以下场合:<br>项目团队人数不能太多,适合于规模较小的项目;<br>项目经常发生变更;<br>高风险项目的实施;<br>从组织结构的角度看,组织结构的文化、人员、沟通性决定了敏捷方法是否使用。<br>(包括实际采用的开发方法在内,至少介绍三种开发方法即可。对于实际采用的开发方法,应结合项目实际情况,说明选择这种/这些方法的原因。)<br>三、论述采用了具体的数据库集群技术后,取得的应用效果,说明是否满足了企业的数据需求,并说明存在的问题。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239890625875969","title":"论联合需求计划在系统需求获取中的应用<br>需求获取是系统分析师用来确定、分析和理解系统需求的过程,访谈是需求获取的主要方式。为了提高需求获取的效率,越来越多的企业倾向于使用小组工作会议来代替大量独立的访谈。联合需求计划(Joint Requirement Planning, JRP)是一个通过高度结构化组织的群体会议来分析企业内的问题并获取需求的过程。JRP会议包括一些不同的参与者和角色,期望每个参与者都能够参加并主动地参与整个JRP会议。.<br>\n请围绕“联合需求计划在系统需求获取中的应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你使用JRP方法,参与分析和开发的信息系统项目以及你所担任的主要工作。<br>2.简要分析JRP的参与者,并说明每个参与者在会议讨论中所发挥的作用。<br>3.分析实施JRP时应该把握的原则,有效组织的JRP会议和其他需求获取方法相比有哪些优点。","analyze":"写作要点:<br>一、论文中要具体介绍组织的业务背景和组织结构,信息系统开发时的人员组成、任务分工和管理方式等内容,并明确指出你在其中承担的主要任务和开展的主要工作。<br>二、简要分析JRP的参与者,并说明每个参与者在会议讨论中所发挥的作用。<br>(1)负责人:通常是位于管理层的人,并且他的职权跨越系统项目中涉及的不同部门和用户,负责人通过鼓励用户主动参与JRP会议对系统项目给予完全的支持,并负责做出需求是否入选的最后决策。负责人通过介绍与会者来启动会议,并在会议结束时做最后小结。<br>(2)会议主持人:通常负责领导一个系统项目的所有会议,这个人具有出色的沟通能力,拥有协商和解决小组矛盾的能力,拥有业务知识,具有出色的组织能力,对将做出的决策保持公平,并且不用向任何与会者汇报工作。主要工作包括策划JRP会议,主持会议直至会议结束。会议期间,负责引导讨论,鼓励出席者主动参与,解决可能产生的矛盾,确保实现会议的预期目标和目的,并建立会议期间将遵守的基本规则。<br>(3)用户和管理人员:通常由项目负责人选择,人数为十几人或者更多。用户主要用来有效地明确或确认业务规则和需求、评审设计原型并做出是否接受的策略。管理人员是用来批准项目目标、设置项目优先枝,批准进度和费用以及批准确定的培训需求和实现计划。<br>(4)记录员:负责记录会议上讨论的每件事情,这些记录在会后立即发给与会者,以便维持JRP会议及其成员的动力。使用CASE工具来收集JRP会议期间沟通的众多事实。这个角色通常由系统分析人员扮演。<br>(5)IT职员:主要负责聆听和记录用户和管理人员说的有关问题和需求。除非被邀请,否则不会主动发言。他们的任何问题和关注都在JRP会议之后或之前不久直接提交给JRP主持人。IT职员通常由项目团队的成员组成,这些成员和记录员密切合作,以形成开发模型和会议期间沟通结果的其他相关文档。<br>三、分析实施JRP时应该把握的原则,有效的JRP和其他需求获取方法相比有哪些优点。<br>1.在JRP实施之前,应制定详细的议程,并严格按议程进行;按既定的时间安排进行;尽量完整地记录会议期间的内容;在讨论期间尽量避免使用专业术语;充分运用解决冲突的技能;会议期间设定充分的间歇时间;鼓励团队取得一致的意见;保证参加JRP的所有人员能够遵守事先约定的规则。<br>2.有效组织的JRP会议具有的优点:JRP积极地将用户和管理人员引入到开发项目中;JRP通过小组会议代替传统的、耗时的一对一地与每个用户和管理人员面谈,减少了开发系统所需的时间。小组会议有助于获得用户和管理人员的一致意见,解决互相矛盾的信息和需求;JRP把原型化技术包括进来作为一种证实需求和获得设计建议批准的手段,能够有效发挥原型化技术的优点。<br>JRP会议的成功取决于JRP主持人及其计划与主持JRP会议的能力。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239856534573057","title":"论信息系统中的访问控制<br>访问控制主要任务是保证系统资源不被非法使用和访问。访问控制规定了主体对客体访问的限制,并在身份识别的基础上,根据身份对提出资源访问的请求加以控制。<br>访问控制是策略和机制的集合,它允许对限定资源的授权访问。访问控制也可以保护资源,防止无权访问资源的用户的恶意访问。访问控制是系统安全保障机制的核心内容,是实现数据保密性和完整性机制的主要手段,也是信息系统中最重要和最基础的安全机制。<br>\n请围绕“信息系统中的访问控制”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。<br>2.详细论述常见的访问控制策略和访问控制机制。<br>3.阐述在项目开发中你所采用的访问控制策略和机制,并予以评价。","analyze":"一、论文中要说明所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、访问控制是策略和机制的集合,它允许对限定资源的授权访问。<br>1.访问控制的策略<br>访问控制策略包括登录访问控制、操作权限控制、目录安全控制、属性安全控制和服务器安全控制等方面的内容。<br>(1)登录访问控制策略。登录访问控制为系统访问提供了第一层访问控制,它控制哪些用户能够登录系统并获取资源,控制准许用户登录时间和具体工作站点。<br>(2)操作权限控制策略。操作权限控制是针对可能出现的非法操作而采取的安全保 护措施。用户和用户组被赋予一定的操作权限,系统管理员可以设置用户或用户组的具 体权限。<br>(3)目录安全控制策略。系统应该允许管理员控制用户对目录、文件和设备的操作。目录安全允许用户在目录一级的操作对目录中的所有文件和子目录都有效。用户还可以进一步自行设置对子目录和文件的权限。<br>(4)属性安全控制策略。属性安全控制策略允许将设定的访问属性与服务器的文件、目录和设备联系起来。系统资源都应预先标出一组安全属性,用户对资源的操作权限对应一张访问控制表,属性安全控制级别高于用户操作权限设置级别。<br>(5)服务器安全控制策略。系统允许在服务器控制台上执行一系列操作。用户通过控制台可以加载和卸载系统模块,可以安装和删除软件。系统应该提供服务器登录限制、非法访问者检测等功能。<br>2.访问控制机制<br>常见的访问控制机制主要有自主访问控制、强制访问控制、基于角色的访问控制、基于任务的访问控制和基于对象的访问控制等。 .<br>(1)自主访问控制。这是目前信息系统中实现最多的访问控制机制,是在确认主体身份以及它们所属组的基础上,对访问进行限定的一种方法。其基本思想是允许某个主体显式地指定其他主体对该主体所拥有的资源是否可以访问,以及可执行的访问类型。<br>(2)强制访问控制。其基本思想是,每个主体都有既定的安全属性,每个客体也都有既定的安全属性,主体对客体是否能够执行特定的操作取决于两者安全属性之间的关系<br>(3)基于角色的访问控制。由于其对角色和层次化管理的引进,特别适用于用户数量庞大、系统功能不断扩展的大型$统。基于角色的访问控制,在用户和访问许可权之间引入了角色的概念,用户与特定的一个或多个角色相联系,角色与一个或多个访问许可权相联系。<br>(4)基于任务的访问控制。该机制从应用和企业层角度来解决安全问题。它采用面向任务的观点,从任务的角度来建立安全模型和实现安全机制,在任务处理的过程中提供动态实时的安全管理。其访问权限控制并不是静止不变的,而是随着执行任务的上下文环境发生变化,是一种动态安全模型。<br>(5)基于对象的访问控制。控制策略和控制规则是基于对象的访问控制的核心。在基于对象访问控制模型中,将访问控制与受控对象及其属性相关联,并将访问控制选项设计成为用户、组或角色及其对应权限的集合。同时,允许对策略和规则进行复用、继承和派生操作。这种方式对信息量巨大、信息内容更新变化频繁的管理信息系统非常有益,可以减轻由于信息资源的派生、演化和重组带来的分配和设定角色权限等的工作量。<br>三、结合具体项目,指出所选择的访问控制策略和机制,并说明具体的实施过程和对实际开发效果的分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239916865441793","title":"论软件项目管理技术及其应用<br>软件项目管理是为了使软件项目能够按照预定的成本、进度和质量顺利完成,对人员、产品、过程和项目进行分析和管理的活动。软件项目管理的根本目的是为了让软件项目,尤其是大型软件项目的整个生命周期都能在管理者的控制之下,以预定成本按期、按质地完成并交付用户使用。而研究软件项目管理技术则是为了从已有的成功或失败的 项目案例中总结出能够指导今后开发的通用原则和方法,同时避免重复失误。<br>\n请围绕“软件项目管理技术及其应用”论题,依次从以下三个方面进行论述。<br>概要叙述你参与实施和管理的软件开发项目以及你所担任的主要工作。<br>请根据项目实际情况,从成本、进度和质量三个方面,结合软件开发过程,说明你是如何进行软件项目管理的。<br>阐述你在进行软件项目管理时遇到了哪些问题,如何解决。","analyze":"写作要点:<br>一、论文中要具体介绍组织的业务背景和组织结构,软件系统开发时的人员组成、任务分工和管理方式等内容和担任的实际工作。<br>二、本题应根据项目的实际情况,从成本、进度和质量三个方面,结合软件开发过程,对软件管理内容进行论述。相关的内容包括:<br>1.在成本方面,需要进行软件项目成本管理。软件项目成本管理就是根据企业的情况和项目的具体要求,利用公司既定的资源,在保证项目的进度\\质量达到客户满意的情况下,对软件项目成本进行有效的组织、实施、控制、跟踪、分析和考核等一系列管理活动,最大限度地降低项目成本,提高项目利润。<br>项目成本管理包括确保在批准的预算范围内完成项目所需的各个过程。软件项目成本的管理可以用估算和控制来概括,首先对软件的成本进行估算,然后形成成本管理计 划,在软件项目开发过程中,对软件项目施加控制使其按照计划进行。成本管理计划是成本控制的标准,不合理的计划可能使项目失去控制,超出预算。因此成本估算是整个 成本管理过程中的基础,成本控制是使项目的成本在开发过程中控制在预算范围之内。<br>成本管理的过程包括:<br>(1)资源计划,包括决定为实施项目活动需要使用什么资源(人员、设备和物资)以及每种资源的用量。其主要输出是一个资源需求清单。<br>(2)成本估算,包括估计完成项目所需资源成本的近似值。其主要输出是成本管理计划。<br>(3)成本预算,包括将整个成本估算配置到各单项工作,以建立一个衡量绩效的基准计划。其主要输出是成本基准计划。<br>(4)成本控制,包括控制项目预算的变化。其主要输出是修正的成本估算、更新预算、纠正行动和取得的教训。<br>2.在进度方面,需要进行软件进度管理。软件进度管理采用科学的方法,确定进度目标,编制进度计划和资源供应计划,进行进度控制,在与质量,成本目标协调的基础上,实现工期目标。进度管理主要包含以下6个过程。<br>(1)活动定义:确定完成项目各项可交付成果而需要开展的具体活动。<br>(2)活动排序:识别和记录各项活动之间的先后关系和逻辑关系。<br>(3)活动资源估算:估算完成各项活动所需要的资源类型和数量。<br>(4)活动历时估算:估算完成各项活动所需要的具体时间。<br>(5)进度计划编制:分析活动顺序、活动持续时间、资源要求和进度制约因素,制定项目进度计划。<br>(6)进度控制:根据进度计划开展项目活动,如果发现偏差,则分析原因或进行调整。<br>3.在质量方面,需要进行软件质量管理。质量管理是指确立质量方针及实施质量方针的全部职能及工作内容,并对其工作效果进行评价和改进的一系列工作。软件质量管理需要关注软件生命周期的质量模型,编制软件管理计划,实施软件质量保证与质量控制活动。<br>(1)软件生命周期的质量模型主要包括过程质量、内部质量属性、外部质量属性等内容。<br>(2)软件管理计划的主要内容有评审与检查、项目计划阶段的质量管理活动、软件配置管理等。<br>(3)软件质量保证是指为保证软件系统或软件产品充分满足用户要求的质量而进行的有计划、有组织的活动,这些活动贯穿于软件生产的各个阶段。软件质量保证由各项任务构成,这些任务的参与者有两类人:软件开发人员和质量保证人员。前者负责技术工作,后者负责质量保证的计划、监督、记录、分析和报告工作。质量保证的相关技术有质量审计和过程分析等。<br>质量控制是指监视项目的具体结果,确定其是否符合相关的质量标准,并判断如何能够去除造成不合格结果的根源,质量控制活动应贯穿于项目的始终。进行质量控制的主要活动是软件评审和软件测试等。<br>三、在进行软件项目管理时可能存在的问题包括:如何有效发现并解决项目开发中的问题;如何对开发方案进行决策;如何对项目开发人员进行组织协调;如何提高团队工作效率,包括激励机制和惩罚机制;等等。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239852541595649","title":"论企业服务总线技术及其在应用集成中的作用<br>企业应用集成(Enterprise Application Integration,EAI)是企业必须要面对的实际问题,企业服务总线(Enterprise Service Bus,ESB)技术是一种基于面向服务体系结构的新型企业应用集成技术。与传统的EAI技术相比,ESB采用总线式的体系结构集成多个应用系统,基于开放标准实现其内部核心功能,并支持快速加入新的应用到已有的集成环境中。<br>\n请围绕“企业服务总线技术及其在应用集成中的作用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与实施的企业应用集成项目(包括业务背景、组织结构、现有应用系统的分布、采用的技术等)以及你所担任的主要工作。<br>2.论述企业服务总线的核心功能;列举目前流行的ESB产品;指出你参与的项目所选择的ESB产品,并从ESB核心功能的角度说明选择该产品的理由。<br>3.阐述在使用企业服务总线技术进行应用集成时遇到了哪些问题,如何解决。","analyze":"一、论文中要具体介绍组织的业务背景、组织结构、现有应用系统的分布、采用的技术等内容和担任的实际工作。<br>二、企业服务总线是传统中间件技术与XML、Web服务等技术结合的产物。ESB是一个集成平台,将现有的IT设施和应用系统暴露为服务。由于ESB基于开放标准,企业的遗产系统使用的私有技术能够基于开放和现代的技术(例如Web服务和消息机制等)暴露为服务。<br>1.其核心功能包括位置透明性、传输协议转换、消息转换、消息路由、消息增强、安全以及监控和管理7项内容,具体如下:<br>(1)位置透明性(Location transparency)。<br>位置透明性是指当一个服务消费者与一个服务提供者通过ESB进行通信时,服务消费者不需要知道服务提供者的实际位置,这意味着服务消费者与服务提供者之间是解耦合的。<br>(2)传输协议转换(Transport protocol conversion)。<br>当服务请求者与服务提供者采用不同的传输协议时,ESB能够将基于输入传输协议格式的数据转换为不同输出传输协议格式的数据。<br>(3)消息转换(Messagetransformation)。<br>在服务请求者和服务提供考进行交互时,ESB基于开发标准(XLST和XPath等)提供了将消息从一种格式转换为另外一种格式的能力。<br>(4)消息路由(Message router)。<br>在实际的集成环境中,对于一个特定的输入请求消息,可能有多个应用程序参与进来作为该消息传递的目标。ESB能够决定一个消息必须发送到哪些相关的应用程序中,处理这种逻辑的核心功能称为消息路由。<br>(5)消息增强(Message enhancement)。<br>在某些情况下,可能需要为请求数据添加额外的数据或转换已有的数据,在这种情况下,ESB应该提供对外部数据的访问能力,支持用户编写客户端代码对数据进行访问和处理。<br>(6)安全(Security)。<br>ESB必须支持对消息的授权和认证能力,如果输入数据可能被恶意解析,还要提供加密能力。ESB的安全包括消息的机密性、完整性和可用性等,支持不同的安全策略与方法。<br>(7)监控和管理(Monitor and management)。<br>关注ESB的维护和管理能力。监控与管理功能包含多个方面,例如对于消息层来说,其管理主要包括管理消息队列,监控消息大小和消息队列的吞吐率等。对于Web服务,主要包括监控每个服务是否启动和运行,在每分钟有多少调用请求,对于一个Web服务,有多少服务实例在运行等等。<br>(论文中只要给出以上7个核心功能中的5个即可)<br>2.目前流行的ESB产品包括商业产品和开源产品两类:<br>(1)商业产品:EBM的WebSphere ESB、Oracle 的Oracle Service Bus(前身是BEA的AquaLogic Service Bus)、微软的BizTalk Server等。<br>(2)开源产品:Mule、Apache ServiceMix、JBossESB、OpenESB和WS02等。<br>(论文中只要给出以上产品中的4个即可)<br>3.首先说明考生参与的项目所采用的ESB产品,然后围绕7个核心功能,并结合集成应用的实际特点,论述选择该ESB产品的原因。<br>4.使用企业服务总线技术进行应用集成时可能遇到的问题包括:<br>(1)如何根据企业应用集成的需求选择合适的ESB产品;<br>(2)如何根据企业的组织结构确定集成系统的体系结构,并据此设计系统的功能分布与物理拓扑结构;<br>(3)相关子系统之间的数据格式转换;<br>(4)针对具体业务编写合适的处理逻辑并确定消息路由;<br>(5)其他。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239883948544001","title":"论模型驱动的软件开发方法及其应用<br>模型驱动架构(MDA)是对象管理组织(OMG)提出的一种新的软件开发方法,它强调由软件系统的建模行为驱动整个系统的开发过程,来完成系统的需求分析、架构设计、构建、测k、部署和运行维护等工作。与传统的UML模型相比,MDA能够创建出机器可读和高度抽象的模型,这种模型通过转换(Transformation)技术可自动转换为代码、测试脚本、数据库定义以及各种平台的部署描述。通过使用MDA技术,可以有效解决传统软件开发过程中的生产效率问题、系统移植问题、互操作问题以及文档和系统后期维护问题。<br><br>\n请围绕“模型驱动的软件开发方法及其应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与实施的模型驱动的软件开发项目以及你所担任的主要工作。<br>2.阐述模型驱动的软件开发过程中的主要活动,并论述模型驱动的软件开发过程与传统的软件开发过程的区别。<br>3.阐述在进行模型驱动的软件开发时遇到了哪些问题,如何解决。","analyze":"写作要点:<br>一、论文中要具体介绍组织的业务背景、组织结构、软件系统的架构、采用的技术等内容和担任的实际工作。<br>二、相关的内容包括:模型驱动的软件开发过程中的主要活动包括:<br>(1)需求分析人员根据领域需求得到描述软件系统外部特征的计算无关模型(CIM);<br>(2)在对CIM进行分析的基础上得到平台无关模型(PIM),并根据业务逻辑进一步精化PIM;<br>(3)进行PIM到平台特定模型(PSM)的模型转换;<br>(4)将每个PSM转换为实现特定模型(ISM),生成应用程序代码,并进行测试。<br>与传统的软件开发过程相比,模型驱动的软件开发方法有5个主要区别。<br>(1)自动实现模型变换。<br>传统的开发过程中,模型到模型的变换,或模型到代码的变换都是手工完成的;而模型驱动的开发过程中,模型变换都是由相关工具自动完成的,PIM到PSM、PSM到ISM(2)都可以自动转换实现。<br>模型是开发产品,也是程序生成的基础设施。<br>模型驱动的开发过程中,模型是软件开发生命周期中的核心产品,通过一系列转换最终可以自动生成执行代码,是产生执行代码的基础设施。而在传统开发过程中,模型只是分析人员、设计人员进行分析与交流的文档与图标,不能生成可用的应用程序代码。<br>(3)模型变换过程与代码生成过程同步,可维护性强。<br>模型驱动开发过程中,执行代码是由模型通过转换直接生成的,保证了模型与代码的同步。开发人员维护系统的重心不在是传统开发方法中的程序代码,而是与业务逻辑相关、与技术平台无关的平台无关模型PIM。<br>(4)业务逻辑模型与实现技术平台分离。<br>需求分析阶段生成的PIM模型与开发技术、开发平台以及实现技术无关,并且PIM模型可以根据不同的技术平台,自动生成以模型为基础的、适用于不同技术平台的软件系统。<br>(5)提高了开发效率与软件质量。<br>模型驱动开发的模型架构代表了对系统不同层次的抽象,使得开发人员更加清晰地了解系统的整个架构,而不会被具体的实现技术所困扰。开发人员专注于根据系统业务逻辑构建PIM,通过代码生成技术自动生成实现代码,减少了由于人为因素导致的系统实现错误。<br>三、在进行模型驱动的软件开发时可能存在的问题包括:如何对CIM和PIM进行建模;如何进行模型之间的转换,特别是PIM到PSM的转换;如何根据需求进行实现平台选择;如何根据PSM生成ISM (代码);如何进行系统测试;等等。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239923005902849","title":"论非关系型数据库技术及应用<br>非关系型数据库(NoSQL数据库)在数据模型、可靠性、一致性等诸多数据库核心机制方面与关系型数据库有着显著的不同。非关系型数据库技术包括:(1)使用可扩展的松耦合类型数据模式未对数据进行逻辑建模;(2)为遵循CAP定理的跨多节点数据分布模型而设计,支持水平伸缩;(3)拥有在磁盘和(或)内存中的数据持久化能力; (4)支持多种非SQL接口来进行数据访问。非关系型数据库都具有非常高的读写性能,尤其在大数据量下,依然表现优秀,数据之间的弱关联关系使得数据库的结构简单,实现了更细粒度的缓存机制,具有更好的性能表现。\n1.简要叙述你参与的使用了非关系型数据库的软件系统开发项目以及你所承担的主要工作。<br>2.详细论述非关系型数据库有哪几类不同实现方式,每种方式有何技术特点和代表性数据库产品。<br>3.根据你所参与的项目中使用的非关系型数据库,具体阐述使用方法和实施效果。","analyze":"写作要点:<br>一、简要描述所参与的使用了非关系型数据库的软件系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、详细论述非关系型数据库的四种不同实现方式,并说明每种方式的技术特点和相关数据库产品。<br>(1) 键值(Key-Value)存储数据库。这一类数据库主要会使用到一个哈希表,<br>(2) 这个表中有一个特定的键和一个指针指向特定的数据。Key/value模型对于IT系统来说的优势在于简单、易部署。但是如果DBA只对部分值进行查询或更新的时候,key/value就显得效率低下了。数据库产品包括:TokyoCabinet/Tyrant,Redis,Voldemort,Oracle BDB。<br>(3) 列存储数据库。这部分数据库通常是用来应对分布式存储的海量数据。键仍然存在,但是它们的特点是指向了多个列。这些列是由列家族来安排的。数据库产品包括:Cassandra,HBase,Riak。<br>(4) 文档型数据库。文档型数据库的灵感来自于Lotus Notes办公软件,而且它同第一种键值存储相类似。该类型的数据模型是版本化的文档,半结构化的文档以特定的格式存储,比如JSON。文档型数据库可以看作是键值数据库的升级版,允许中间嵌套键值。而且文档型数据库比键值数据库的查询效率更高。数据库产品包括:CouchDB,MongoDb,SequoiaDB。<br>(5) 图形(Graph)数据库。图形结构的数据库同其他行列以及刚性结构的SQL数据库不同,它使用灵活的图形模型,并且能够扩展到多个服务器上。NoSQL数据库没有标准的查询语言(SQL),因此进行数据库査询需要制定数据模型。许多NoSQL数据库都有REST式的数据接口或者查询API。数据库产品包括:Neo4J,InfoGrid,Infinite Graph。<br>三、针对考生本人所参与的项目中使用的非关系型数据库,说明使用方法和具体实施效果。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239931730055169","title":"论项目风险管理及其应用<br>项目风险是一种不确定的事件或条件,一旦发生,会对项目目标产生某种负面(或正面)的影响。项目风险管理是项目管理人员通过风险识别、风险估计和评价,并以此为基础合理地使用多种管理方法、技术和手段,对项目活动设计的风险实施有效的控制,采取主动行动,创建条件,可靠地实现项目的总体目标。\n1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。<br>2.论述在信息系统项目中,风险管理的基本过程。<br>3.针对你参与的实际项目中的风险,阐述该项目的风险管理过程,并具体说明其实施效果。","analyze":"写作要点:<br>一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、风险管理的基本过程包括风险管理计划编制、风险识别、风险定性分析、风险定量分析、风险应对计划编制和风险监控。<br>1. 风险管理计划编制<br>风险管理计划描述的是如何安排与实施项目风险管理,它是项目开发计划的从属计划。风险管理计划主要包括角色与职责、预算、风险类别、风险概率和影响的定义、汇报格式、风险跟踪等内容。<br>2. 风险识别<br>风险识别包括确定风险的来源、风险产生的条件、描述风险特征和确定哪些风险事件有可能影响整个项目。风险识别应当在项目的生命周期自始至终定期进行。风险识别可分为三步进行:收集资料、估计项目风险形式、根据直接或间接的症状将潜在的风险识别出来。<br>3. 风险定性分析<br>(1) 风险可能性与影响分析。风险影响分析包括对时间、成本、范围等各方面的影响。对于同一个风险,由于不同角色和参与者会有不同的看法,因此一般采用会议的方式进行风险可能性与影响的分析。<br>(2) 确定风险优先级。<br>(3) 确定风险类型。<br>4. 风险定量分析<br>风险定量分析是在不确定的情况下进行决策的一种量化方法,该过程主要采用灵敏度分析、期望货币价值分析、决策树分析、蒙特卡洛模拟等技术。<br>5. 风险应对计划编制<br>风险应对计划中,包括应对每一个风险的措施、风险的责任人等内容。<br>风险应对策略分为两种类型:预防策略和响应策略。<br>6. 风险监控<br>风险监控是指跟踪已识别的风险,监测残余风险和识别新风险,保证风险计划的执行,并评价这些计划对减轻风险的有效性。在风险监控的过程中,如果发生了没有识别出来的风险事件,则无法按照风险应对计划来处理。此时需要一种新的措施来应对,这种措施称为权变措施。<br>三、考生必须结合自身参与项目的实际状况,给出风险管理的过程,并对该管理过程的实际实施效果进行分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239910657871873","title":"论软件维护及软件可维护性<br>软件维护指软件交付使用后,为了改正错误或满足新的需要而修改软件的过程。软件维护活动花费了整个软件生命期成本的50%~90%,要降低维护成本,需要提高软件的可维护性。软件可维护性(SoftwareMaintainability)是指软件能够被理解、校正、增强功能及适应变化的容易程度。提高软件的可维护性是软件开发阶段的关键目标之一。<br>\n请围绕“软件维护及软件可维护性”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。<br>2.请给出常见的三种软件维护的类型并分别对其特点进行论述。说明影响软件可维护性的主要因素并详细论述提高软件可维护性的主要方法。<br>3.具体阐述你参与管理和开发的项目中所进行的软件维护活动和所采取的提高软件可维护性的方法,说明具体实施的过程以及实际应用的效果。","analyze":"一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、常见软件维护类型及特点<br>1.软件维护的类型<br>软件维护分为正确性维护、适应性维护、完善性维护和预肪性维护等。<br>(1)正确性维护(改正性维护):在软件投入运行后,可能会暴露一部分在测试阶段没有发现的错误,为改正这些错误而对软件进行的修改就是正确性(改正性)维护。<br>(2)适应性维护:由于软件运行的外部环境(软件,硬件)和数据环境等的变化而修改软件使之适应这些变化,就是适应性维护。<br>(3)完善性维护:用户的需求是经常变化的,在软件使用过程中,用户会对软件提出新的功能和性能要求,为了满足这些新的要求而对软件进行修改,使之功能和性能得到完善。<br>(4)预防性维护:就是采用先进的软件工程方法对需要维护的软件或某部分软件重新进行设计、编码和测试,以提高软件的可维护性和可靠性等,为以后进一步改进软件打下基础。<br>2.影响软件可维护性的因素及提高软件可维护性的主要方法<br>软件的可维护性是软件开发阶段的关键目标。影响软件可维护性的因素较多,设计、编码及测试中的疏忽和低劣的软件配置,缺少文档等都将对软件的可维护性产生不良影响。软件可维护性可用下面七个质量特性来衡量,即可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。对于不同类型的维护,这七种特性的侧重点也不相同。<br>可从下面几个方面来阐述如何提高软件的可维护性。<br>(1)建立明确的软件质量目标。<br>(2)使用先进的软件开发技术和工具。利用先进的软件开发技术能大大提高软件质量和减少软件费用。<br>(3)建立明确的质量保证。质量保证是指为提高软件质量所做的各种检查工作。质量保证检查是非常有效的方法,不仅在软件开发的各阶段中得到了广泛应用,而且在软件维护中也是一个非常主要的工具。为了保证可维护性,以下四类检查是非常有用的:在检查点进行检查、验收检查、周期性的维护检查和对软件包的检查。<br>(4)选择可维护的语言。程序设计语言的选择对维护影响很大。低级语言很难掌握,很难理解,因而很难维护。一般来说,高级语言比低级语言更容易理解,第四代语言更容易理解,容易编程,程序容易修改,改进了可维护性。<br>(5)改进软件的文档。软件文档是对软件功能、软件各组成部分之间的关系、程序设计策略、程序实现过程的历史数据等的说明和补充。软件文档对提高程序的可阅读性有重要作用,从而会提高软件的可维护性。<br>三、需结合自身参与项目的实际状况,指出其参与管理和开发的项目中所进行的软件维护活动和所采取的提高软件可维护性的方法。要给出实施软件维护活动和提高软件可维护性的具体过程、方法以及对实际应用效果的分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796239906497122305","title":"论软件系统的容灾与恢复<br>随着计算机应用的日益普及和不断深入,软件系统的规模和复杂性急剧增大,软件已经成为系统中的核心部件。在航空航天、武器装备、医疗设备、交通、核能、金融等安全攸关的应用领域,软件系统失效将导致灾难性的后果。因此,当软件系统的一个完整应用环境因灾难性事件遭到破坏时,为了迅速恢复系统的数据和环境,需要采用灾难备份和恢复技术,确保软件系统能够快速从灾难造成的故障或瘫痪状态恢复到正常运行状态,并将其支持的业务功能从灾难造成的不正常状态恢复到可接受状态。\n1.概要叙述你参与管理和开发的软件项目及在其中所担任的主要工作。<br>2.详细论述容灾系统灾难恢复的主要技术,涵盖灾难恢复的技术指标、灾难恢复等级划分、容灾系统的分类等方面。<br>3.结合你具体参与管理和开发的实际项目,说明该项目中是如何实施灾难恢复的,实际效果如何。","analyze":"写作要点:<br>一、简要叙述所参与管理和开发的安全攸关软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、灾难恢复是指为了将信息系统从灾难造成的故障或瘫痪状态恢复到可正常运行状态,并将其支持的业务功能从灾难造成的不正常状态恢复到可接受状态而设计的活动和流程。灾难恢复措施在整个备份制度中占有相当重要的地位。因为它关系到系统在经历灾难后能否迅速恢复。<br>1. 灾难恢复的技术指标<br>灾难恢复的指标主要与容灾系统的数据恢复能力有关。灾难恢复的两个关键概念是恢复点目标(Recovery Point Objective,RPO)和恢复时间目标(Recovery Time Objective,RTO)。RPO是指灾难发生后,容灾系统能将数据恢复到灾难发生前时间点的数据,它是衡量企业在灾难发生后会丢失多少数据的指标;RTO则是指灾难发生后,从系统宕机导致业务停顿时刻开始,到系统恢复至可以支持业务部门运作,业务恢复运营之时,此两点之间的时间。RPO可简单描述为企业能容忍的最大数据丢失量,RTO可简单描述为企业能容忍的恢复时间。<br>理想状态下,希望RTO=0,RPO=0,即灾难发生对企业生产毫无影响,既不会导致生产停顿,也不会导致生产数据丢失。但显然这不现实,企业要做的是尽量减少灾难造成的损失。企业在构建容灾备份系统时,首先要找到对企业自身而言比较适合的RTO目标,即在该目标定义下,用于灾难备份的投入应不大于对应的业务损失。<br>2. 灾难恢复等级<br>在《信息系统灾难恢复规范》(GB/T20988-2007)中,将灾难恢复划分为6个等级。第1级为基本支持,第2级为备用场地支持,第3级为电子传输和部分设备支持,第4级为电子传输及完整设备支持,第5级为实时数据传输及完整设备支持,第6级为数据零丢失和远程集群支持。同时,该规范对灾难恢复能力等级评定原则和灾难备份中心的等级等也作了规范要求。<br>3. 容灾系统的分类<br>容灾系统的归类要由其最终达到的效果来决定,从其对系统的保护程度来分,可以将容灾系统分为数据容灾和应用容灾.它们的高可用性级别逐渐提高。<br>数据容灾的关注点在于数据,即灾难发生后可以确保用户原有的数据不会丢失或遭到破坏。<br>应用容灾是在数据容灾的基础上,再将执行应用处理能力复制一份,也就是说,在备份站点同样构建一套应用系统。应用容灾系统能提供不间断的应用服务,让用户应用的服务请求能够透明地继续运行,而感受不到灾难的发生,保证信息系统提供的服务完整、可靠和安全。<br>三、考生需结合自身参与项目的实际状况,论述该项目如何实施软件灾难恢复规划。答案需要涵盖灾难恢复需求的确定、灾难恢复策略的制定、灾难恢复策略的实现和灾难恢复预案的制定和管理等内容,并需要说明具体实施过程及实际效果。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235629905072129","title":"论企业应用集成<br>在企业信息化建设过程中,由于缺乏统一规划和总体布局,使企业信息系统形成多个信息孤岛,信息数据难以共享。企业应用集成(Enterprise Application Integration,EAI)可在表示集成、数据集成、控制集成和业务流程集成等多个层次上,将不同企业信息系统连接起来,消除信息孤岛,实现系统无缝集成。\n请围绕\"企业应用集成\"论题,依次从以下三个方面进行论述。<br>1. 概要叙述你参与管理和开发的企业应用集成项目及你在其中所承担的主要工作。<br>2. 详细论述实现各层次的企业应用集成所使用的主要技术。<br>3. 结合你具体参与管理和开发的实际项目,举例说明所采用的企业集成技术的具体实现方式及过程,并详细分析其实现效果。","analyze":"写作要点<br>1. 简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>2. 企业应用集成的主要技术。<br>(1) 表示集成的主要技术:屏幕截取和模式模拟技术。<br>(2) 数据集成的主要技术:可利用中间件工具进行数据集成。例如,批量文件传输,即以特定的或是预定的方式在原有系统和新开发的应用系统之间进行文件传输;用于访问不同类型数据库系统的ODBC标准接口;向分布式数据库提供链接的数据库访问中间件技术等。<br>(3) 控制集成的主要技术:远程过程调用或者远程方法调用、面向消息的中间件、分布式对象技术和事务处理监控器来实现。<br>(4) 业务流程集成:利用Business Process Execution Language (BPEL)、Business Process Model and Notation (BPMN)、Business process management (BPM)等基于统一数据格式的业务流程描述、定义、管理标准和相关工具完成业务流程集成。<br>3.考生需结合自身参与项目的实际状况,指出其参与管理和开发的企业应用集成项目的实现方式,说明该实现方式的具体实施过程、使用的技术和工具,并对实际应用效果进行分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235613736030209","title":"论企业智能运维技术与方法<br> 智能运维(Artificial Intelligence for IT Operations, AIOps)是将人工智能应用于运维领域,基于已有的运维数据(日志数据、监控数据、应用信息等),采用机器学习方法来进一步解决自动化运维难以解决的问题。具体来说,智能运维在自动化运维的基础上,增加了一个基于机器学习的智能决策模块,控制监测系统采集运维决策所需的数据,做出智能分析与决策,并通过自动化脚本等手段去执行决策,以达到运维系统的整体目标。 智能运维能够提高企业信息系统的预判能力和稳定性,降低IT成本,提升企业产品的竞争力。\n请围绕“企业智能运维技术与方法”论题,依次从以下三个方面进行论述。<br> 1. 概要叙述你参与管理与实施的软件运维项目以及你在其中所担任的主要工作。<br> 2. 智能运维主要从效率提高、质量保障和成本管理等三个方面提升运维水平,其成熟程度可以分为尝试应用、单点应用、串联应用、能力完备和能力成熟等五个级别,请任意选择三个成熟度级别,说明其在效率提升、质量保障和成本管理等方面的特征。<br> 3. 结合你具体参与管理与实施的实际软件系统运维项目,举例说明如何采用智能运维技术和方法提高运维效率、保障运维质量并降低运维成本,实施效果如何。在智能运维过程中都遇到了哪些具体问题,是如何解决的。","analyze":"一、简要描述所参与管理与实施的软件系统运维项目,并明确指出在其中承担的主要任务和开展的主要工作。<br> 二、智能运维主要从效率提高、质量保障和成本管理等三个方面提升运维水平,其成熟程度可以分为尝试应用、单点应用、串联应用、能力完备和能力成熟等五个级别,每个级别在效率提升、质量保障和成本管理的特征如下表所示:<br> <img src=\"https://image.chaiding.com/ruankao/a4d51024e73632a2ac3e180085b52681.jpg?x-oss-process=style/ruankaodaren\" alt=\"\" width=\"580\" height=\"114\" title=\"\" align=\"\"><br> <img src=\"https://image.chaiding.com/ruankao/9b712e4d2b2ab746cb0ec21f6eb928f2.jpg?x-oss-process=style/ruankaodaren\" alt=\"\" width=\"600\" height=\"482\" title=\"\" align=\"\"><br> (可以任意选取三个级别,每个级别需要描述效率提升、质量保障和成本管理三个方面的特征进行论述)<br> 三、针对具体参与管理与实施的实际软件系统运维项目,说明采用了哪些具体的智能运维技术和方法,解决了何种运维问题,如何提高运维效率,保障运维质量并降低运维成本,实施的效果如何。并且需要举例说明在实施智能运维过程中遇到了哪些实际的问题,具体的解决方案是什么。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235617724813313","title":"论信息系统开发方法论<br>信息系统的开发一般分为系统规划、需求定义、系统设计、实施和维护等主要五个阶段,每一个阶段都应该在科学方法论的指导下开展工作。随着信息系统规模的变化和传统开发方法论的演变,信息系统开发过程经历了“自底向上”和“自顶向下”两种方式。\n请围绕“信息系统开发方法论”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与分析和开发的信息系统以及你所担任的主要任务和开展的主要工作。<br>2.分别说明信息系统“自底向上”和“自顶向下”两种系统分析设计方式。详细阐述系统遵循“自底向上”方式和“自顶向下”方式设计开发的优缺点。<br>3.详细说明你所参与的信息系统是如何遵循“自底向上”、“自顶向下”或综合“自底向上”和“自顶向下”两种方式进行的分析、设计和开发的。","analyze":"一、简要描述所参与分析和开发的软件系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、分别说明信息系统“自底向上”和“自顶向下”两种系统分析设计方式。详细阐述系统遵循“自底向上”方式和“自顶向下”方式设计开发的优缺点。<br>1. “自底向上”方式<br>早期对信息系统的分析、设计和开发方法山于规模较小,基本上是采用“自下而上”的,或称“自底向上”的方式。系统的开发是从单项、局部的应用向多项、全面的应用发展。它们从部分现有的应用向外或向上延伸和扩展,这种方法主要用于对早期的事务处理应用。一些系统加上另外一些系统,将它们联系起来使企业的信息系统逐渐扩大,从而支持管理部门的业务控制、管理规划甚至战略决策。它们是从现有的信息系统开始,根据企业需求的变化而不断演化。所以“自底向上”的分析、设计和开发方法也称为演变法。<br>自底向上方法的优点有:<br>•使信息系统的开发易于适应组织机构的真正需要。<br>•有助于发现和理解每个系统的附加需要,并易于判断其费用。<br>•每一阶段所获得的经验和教训有助于下一阶段的开发。<br>•相对而言,每一阶段的规模较小,易于控制和管理。<br>自底向上方法的缺点有:<br>•由于方法的演变性质,信息系统难以实现其整体性。<br>•由于系统未进行全局规划,系统的数据一致性和完整性难以保证。<br>•为了达到系统的性能要求,往往不得不重新调整系统,甚至要重新设计系统。<br>•由于系统实施的分散性和演变性,因而与企业目标的联系往往是间接的,系统往往难以支持企业的整体战略目标。<br>2. “自顶向下”方式<br>随着信息系统规模的不断扩大和对传统开发方法论的探讨,另一种系统开发的方法论被提倡和发展,这就是所谓“自顶向下”的系统分析、设计和开发方法,这也是当前大系统开发所常用的方法。它是从企业或部门的经营和管理目标出发,从全局和整体来规划其信息需求。它从企业或机构的最高层出发并覆盖所有或主要的业务领域。运用这类方法可以为企业或部门信息系统制定中期或长期发展规划奠定基础。自顶向下方法在一定程度上保证了合理的开发顺序和所有应用的最后整体化。<br>自顶向下方法的优点有:<br>•可为企业或机构的重要决策和任务实现提供信息。<br>•支持企业信息系统的整体性规划,并对系统的各子系统的协调和通信提供保证。<br>•方法的实践有利于提高企业人员的整体观察问题的能力,从而有利于寻找到改进企业组织的途径。<br>自顶向下方法的缺点有:<br>•对系统分析和设计人员的要求较高。<br>•开发周期长。<br>•对于大系统而言,自上而下的规划对于下层系统的实施往往缺乏约束力。<br>•从经济角度来看,很难说自顶向下的做法在经济上是合算的。<br>上述在信息系统开发时常见的两种实施方法,是对不同时期、不同对象的信息系统开发方法的归纳,各有其优缺点,但实践证明在工程实施时,两种方法并非是绝对排斥的,往往在事情进一步的发展中,它们都能取长补短、相互补充。有经验的分析和设计人员会首先确定企业的信息需求环境和性质,然后来选择适合于它的分析和设计方法,他们甚至会从方法的基本原理和适应对象出发使用变通的方法来进行对特定系统的开发,如自顶向下的整体规划和自底向上的分步实施。这无疑是一种对方法论的发展和创造。<br>三、针对作者实际参与的软件系统开发项目,说明该项目是如何遵循“向底向上”“自顶向下”或综合“自底向上”和“自顶向下”两种方式进行的系统分析、设计和开发的。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235643733692417","title":"论信息系统规划及实践<br>信息系统建设是投资大、周期长、复杂度高的系统工程。系统规划可以减少信息系统建设的盲目性,使系统具有良好的整体性和较高的适应性,建设工作有良好的阶段性,并能缩短系统开发周期,节约开发费用。信息系统规划紧密围绕组织发展目标,统筹分析组织发展、业务开展所需的各类信息以及相关的业务系统、信息管理系统,提出完整的信息整合、集成方案,各类信息系统的建设方案,提出面向组织战略发展的系统开发计划。信息系统的规划是系统生命周期中的第一个阶段,也是系统开发过程的第一步,其质量直接影响系统开发的成败。\n请围绕“信息系统规划及实践”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与管理和开发的信息系统建设项目及其其中所担任的主要工作。<br>2.根据系统规划的主要人数,详细论述系统规划工作的主要步骤。<br>3.结合你具体参与管理和开发的实际项目,说明如何实施系统规划,并指出具体实施过程中遇到的问题和解决方案。","analyze":"一、简要叙述所参与管理和开发的信息系统建设项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、根据系统规划的主要任务,可以按照以下步骤开展系统规划工作:<br>(1)对现有系统进行初步调査。根据企业战略和发展目标,从类似企业和本企业内部收集各种信息,站在管理层的高度观察企业的现状,分析现有系统的运行状况。<br>(2)分析和确定系统目标。系统目标应包括服务的质量和范围、政策、组织和人员等,它不仅包括信息系统的目标,还要反映整个企业的目标。<br>(3)分析子系统的组成和基本功能。自顶向下对系统进行划分,并且详细说明各个子系统应该实现的功能。<br>(4)拟定系统的实施方案和实施计划。可以对子系统的优先级进行设定,以便确定子系统的开发顺序。<br>(5)进行系统的可行性研究,编写可行性研究报告,召开可行性论证会。<br>(6)制订系统建设方案。对可行性研究报告中提出的各项技术指标进行分析、比较,落实各项假设的前提条件,制订系统建设方案,并根据该方案及其实施计划编写成系统设计任务书。系统设计任务书经上级主管部门批准后,正式作为系统建设的依据。<br>三、考生需结合自身参与项目的实际状况,论述该项目如何进行信息系统规划工作的。论述需要涉及初步调查、分析和确定系统目标、分析子系统的组成和基本功能、拟定系统的实施方案、进行系统的可行性研究、制订系统建设方案等6个步骤的工作,并说明具体实施过程、遇到的问题和解决方案。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235582417162241","title":"论原型法及其在信息系统开发中的应用<br> 作为一种信息系统开发方法,原型法(Prototyping)被普遍使用,原型法是指在获取一组基本的需求定义后,利用可视化的开发工具,快速建立一个目标系统的最初版本,并交由用户试用,并根据用户反馈进行补充和修改,再形成新的版本。反复进行这个过程,直到得出系统的“精确解”,即用户满意为止。\n请围绕“原型法及其在信息系统开发中的应用”论题,依次从以下三个方面进行论述。<br> 1.概要叙述你参与管理和开发的软件项目以及你在其中所承担的主要工作。<br> 2.请简要描述原型法的开发过程。<br> 3.具体阐述你参与管理和开发的项目是如何基于原型法进行信息系统开发的。","analyze":"论文暂无解析","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235611689209857","title":"论处理流程设计方法及应用<br> 处理流程设计(Process Flow Design,PFD)是软件系统设计的重要组成部分,它的主要目的是设计出软件系统所有模块以及它们之间的相互关系,并具体设计出每个模块内部的功能和处理过程,包括局部数据组织和控制流,以及每个具体加工过程和实施细节,为实现人员提供详细的技术资料。每个软件系统都包含了一系列核心处理流程,对这些处理流程的理解和设计将直接影响软件系统的功能和性能。因此,设计人员需要认真掌握处理流程的设计方法。\n请围绕“处理流程设计方法及应用”论题,依次从以下三个方面进行论述。<br> 1. 简要叙述你参与的软件开发项目以及你所承担的主要工作。<br> 2. 详细说明目前主要有哪几类处理流程设计工具,每个类别至少详细说明一种流程设计工具。<br> 3. 根据你所参与的项目,说明是具体采用哪些流程设计工具进行流程设计的,实施效果如何。","analyze":"写作要点<br> 一、简要描述所参与的软件系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。<br> 二、详细说明目前主要有哪几类处理流程设计工具,每个类别至少详细说明一种流程设计工具。<br> 1.图形工具(程序流程图、IPO图、N-S图、问题分析图)<br> (1)程序流程图。<br> 程序流程图(Program Flow Diagram,PFD)用一些图框表示各种操作,它独立于任何一种程序设计语言,比较直观、清晰,易于学习掌握。为更好地使用流程图描述结构化程序,必须对流程图进行限制,流程图中只能包括5种基本控制结构,任何复杂的程序流程图都应由这5种基本控制结构组合或嵌套而成。<br> (2)IPO图。<br> IPO图是由IBM公司发起并逐步完善的一种流程描述工具。系统分析阶段产生的数据流图经转换和优化后形成的系统模块结构图的过程中将产生大量的模块,分析与设计人员应为每个模块写一份说明,即可用IPO图来对每个模块进行表述,IPO图用来描述每个模块的输入、输出和数据加工。<br> (3)N-S图。<br> N-S图中也包括5种控制结构,分别是顺序型、选择型、WHILE循环型(当型循环)、UNTIL循环型(直到型循环)和多分支选择型,任何一个N-S图都是这5种基本控制结构相互组合与嵌套的结果。在N-S图中,过程的作用域明确;它没有箭头,不能随意转移控制;而且容易表示嵌套关系和层次关系;并具有强烈的结构化特征。<br> (4)问题分析图。<br> 问题分析图是一种支持结构化程序设计的图形工具。PAD也包含5种基本控制结构,并允许递归使用。PAD的执行顺序是从最左主干线的上端的结点开始,自上而下依次执行。每遇到判断或循环,就自左而右进入下一层,从表示下一层的纵线上端开始执行,直到该纵线下端,再返回上一层的纵线的转入处。如此继续,直到执行到主干线的下端为止。<br> 2.表格工具(判定表)<br> (1)判定表。<br> 对于具有多个互相联系的条件和可能产生多种结果的问题,用结构化语言描述则显得不够直观和紧凑,这时可以用以清楚、简明为特征的判定表(Decision Table)来描述。判定表采用表格形式来表达逻辑判断问题,表格分成4个部分,左上部分为条件说明,左下部分为行动说明,右上部分为各种条件的组合说明,右下部分为各条件组合下相应的行动。在表的右上部分中列出所有条件,T表示该条件取值为真,F表示该条件取值为假,空白表示这个条件无论取何值对动作的选择不产生影响,在判定表右下部分中列出所有的处理动作,Y表示执行对应的动作,空白表示不执行该动作;判定表右半部分的每一列实质上是一条规则,规定了与特定条件取值组合相对应的动作。<br> 3.语言工具(过程设计语言)<br> (1)过程设计语言。<br> 过程设计语言是一种混合语言,采用自然语言的词汇和结构化程序设计语言的语法,用于描述处理过程怎么做,类似于编程语言。过程设计语言用于描述模块中算法和加工逻辑的具体细节,以便在开发人员之间比较精确地进行交流。过程设计语言的语法规则一般分为外层语法和内层语法。外层语法用于描述结构,采用与一般编程语言类似的关键字(例如,IF-THEN-ELSE,WHIEL-DO等),外层语法应当符合一般程序设计语言常用语句的语法规则;内层语法用于描述操作,可以采用自然语句(例如,英语和汉语等)中的一些简单的句子、短语和通用的数学符号来描述程序应执行的功能。过程设计语言仅仅是对算法或加工逻辑的一种描述,是不可执行的。使用过程设计语言,可以做到逐步求精,从比较概括和抽象的过程设计语言程序开始,逐步写出更详细、更精确的描述,其写法比较灵活,它使用自然语言来描述处理过程,不必考虑语法错误,有利于设计人员把主要精力放在描述算法和加工逻辑上。<br> 三、针对考生本人所参与的项目中使用的流程设计工具,说明实施过程和具体实施效果。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235624314064897","title":"论数据挖掘方法及应用<br>随着信息技术和数据库技术的普遍应用,人类获取数据的能力不断增强,数据库的数量和规模在迅速增加。数据挖掘又称数据库中的知识发现(Knowledge Discover in Database, KDD),是识别数据库中以前不知道的、新颖的、潜在有用的和最终可被理解的模式的非平凡过程。数据挖掘是数据库知识发现过程的一个步骤,其目标就是要智能化和自动化地把数据转换为有用的信息和知识。\n请围绕“数据挖据方法及应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与分析和开发的软件系统以及你所担任的主要任务和开展的主要工作。<br>2.详细阐述三种常用的数据挖掘方法。<br>3.详细说明你所参与分析和开发的软件系统是如何基于常用的数据挖掘方法进行数据挖掘的。","analyze":"一、简要描述所参与分析和开发的软件系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、详细阐述三种常用的数据挖掘方法。<br>考生阐述下列方法中的任意3种即可得分。<br>1. 关联规则挖掘。关联规则挖掘的典型问题是:给定一个销售交易的数据库,要求发现数据项之间的重要关联性,即在一个交易中出现某些数据项蕴含着其他一些数据项也可能会在同一交易中出现。例如许多顾客在购买尿布的同时也购买啤酒的结论就足通过关联规则分析所得到的结果。关联规则分析是一个从现象到本质的揣测推现过程。也就是说,通过关联分析所得到的结果,仅仅是一种可能的因果关系,它能够协助业务专家对事物的本质进行分析,深化对事物关系的认识,但需要业务专家加以确认,并予以合理的解释,才能够成为对决策进行指导的规律。<br>2. 特征描述。数据库中通常存放大量的细节数据,然而,用户常常希望能够得到对于所关心的一类数据的简洁概貌描述。特征描述是对目标类数据的一般特征或特性进行汇总,并以直观易理解的方式显示给用户。通常,用户首先通过数据库査询来对目标类数据进行查询,例如为研究上一年在某超市消费超过1000美元以上的顾客特征,可以通过执行一个SQL査询收集关于这些产品的数据。特征描述通常采用的方法足进行数椐概化,将庞大的任务相关的数据集从较低的概念层抽象到较高的概念层。例如,对于上述消费超过1000美元以上的顾客,特征描述的结果可能是顾客的一般轮廓,如年龄在40至50岁之间、已婚、有工作等。<br>3. 分类分析。分类分析是找出数据集中各组对象的共同特征,并建立分类模型,从而能够将数据集中的其他对象分到不同的组中分类也称作制导的学习,为了建立分类模型,需要有一个用做训练集的示例数据库E,其中的每个元组都有一个给定的类标识。分类过程是首先分析训练集中的数掘,根据每个类中数据的特征为每个类生成分类模型,然后用得到的分类模型对未知类別的数据进行分类。表示分类模型的一种常用方法是决策树。<br>4. 聚类分析。若干个相似的数据对象组合在一起称作一个聚簇。聚类分析是将数据集分割为若干个有意义的聚簇的过程。聚类分析也称作无制导的学习,因为聚类分析与分类分析不同,它不依赖于没有事先确定的类,也没有已具有类标识的训练集。好的聚类分析算法应该使得所得到的聚簇内的相似性很高,而不同的聚族间的相似性很低。<br>三、针对考生实际参与的软件系统开发项目,说明该项目是如何基于常用的数据挖掘方法进行数据挖掘的。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235632027389953","title":"论数据流图在系统分析与设计中的应用<br>数据流图 (Data Flow Diagram ,DFD) 是进行系统分析和设计的重要工具,是表达系统内部数据的流动并通过数据流描述系统功能的一种方法。DFD从数据传递和加工的角度,利用图形符号通过逐层细分描述系统内各个部件的功能和数据在它们之间传递的情况,来说明系统所完成的功能。在系统分析中,逻辑DFD作为需求规格说明书的组成部分,用于建模系统的逻辑业务需求;在系统设计中,物理DFD作为系统构造和实现的技术性蓝图,用于建模系统实现的技术设计决策和人为设计决策。\n请围绕“数据流图在系统分析与设计中的应用”论题,依次从以下三个方面进行论述。<br>1. 简要叙述你参与的软件开发项目以及你所承担的主要工作。<br>2. 列举出DFD中的几种要素及含义,简要说明在系统分析与设计阶段逻辑DFD和物理 DFD中这些要素之间有何区别。<br>3. 根据所参与的项目,具体阐述你是如何通过绘制数据流图来进行系统分析与设计的。","analyze":"写作要点<br>1. 简要描述所参与的软件系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>2. 列举出DFD中四种不同要素,并详细论述在系统分析和系统设计阶段各个要素之间的区别。<br>(1) 外部实体(数据源及数据终点):位于被建模系统之外的信息产生者或消费者,是不能由计算机处理的成分,它们分别表明数据处理过程的数据来源及数据去向。<br>(2) 数据流:具有名字和流向的数据,描述系统中运动的数据,表示到一个过程的数据输入,或者来自一个过程的数据输出。<br>(3) 加工/处理:对数据流的变换,在输入数据流或条件上执行,或者对输入数据流或条件做出响应的工作。<br>(4) 数据存储:可访问的存储信息,描述系统中静止的数据,表示系统牛需要保存的数据。<br>在系统设计阶段,物理DFD中各要素与系统分析阶段逻辑DFD的区别:<br>(1) 物理外部实体与逻辑DFD中的外部实体一致,如果需求有变化,可能会引入新的外部实体。<br>(2) 物理数据流表示一个物理加工的输入或输出的计划实现,一个数据库命令或动作,网络从另一个信息系统输入数据或者向另一个信息系统输出数据,同一个程序中两个模块或子程序之间的数据流。<br>(3) 物理加工是一个处理器(计算机或人),或者是要执行的特定工作的技术性实现(计算机程序或人工过程)。<br>(4) 物理数据存储表示数据库、数据库中的表、计算机文件、重要数据的磁带等介质备份、程序需要的临时文件或批处理文件、任意未经过计算机处理的文件。<br>3. 针对考生本人所参与的项目中使用的数据流图,说明绘制方法和具体实施效果。<br>数据流图的绘制过程:<br>(1) 画系统的输入与输出:在图的边缘标出系统的输入数据流和输出数据流;<br>(2) 画DFD的内部:将系统的输入、输出用一系列的处理连接起来,可以从输入数据流画向输出数据流,也可以从中间画出去;<br>(3) 为数据流命名:给每个系统数据流命名,名字应该与DFD的可理解性密切相关;<br>(4) 为加工命名:使用动宾短语为每个加工命名;<br>(5) 检查和修改DFD。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235609646583809","title":"论系统自动化测试及其应用<br> 软件系统测试是在将软件交付给客户之前所必须完成的重要步骤之一,目前,软件测试仍是发现软件缺陷的主要手段。软件系统测试的对象是完整的、集成的计算机系统,系统测试的目的是验证完整的软件配置项能否和系统正确连接,并满足系统设计文档和软件开发合同规定的要求。系统测试工作任务难度高,工作量大,存在大量的重复性工 作,因此自动化测试曰益成为当前软件系统测试的主要手段。\n请围绕“系统自动化测试及其应用”论题,依次从以下三个方面进行论述。<br> 1. 概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。<br> 2. 详细论述系统自动化测试的主要工作内容及优缺点。<br> 3. 结合你具体参与管理和开发的实际项目,说明是如何进行系统自动化测试的,说明具体实施过程以及应用效果。","analyze":"写作要点<br> 一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br> 自动化测试通常需要构建存放程序软件包和测试软件包的文件服务器,存储测试用例和测试结果的数据库服务器,执行测试的运行环境,控制服务器,Web服务器和客户端程序。自动化测试工具应该包含对测试执行的支撑功能,具体应包括:具备相应的容错处理系统,能够自动处理测试中的异常情况;提供测试的集成环境,支持对脚本的执行、跟踪、检查、错误定位,以及故障重演等能力,并提供对外部自动化测试工具的集成扩展能力;提供对脚本代码的控制与管理等。<br> 自动化测试的优点:<br> 1.提高测试执行的速度;<br> 2.提高工作效率;<br> 3.保证测试结果的准确性;<br> 4.连续运行测试脚本;<br> 5.模拟现实环境下受约束的情况。<br> 自动化测试存在受约束的情况。例如:自动化测试不能取代手工测试,能够发现的缺陷不如手工测试;自动化测试对所测产品质量的依赖性大;测试工具本身不具备智能与想象力,依然需要人工介入。<br> 考生需结合自身参与项目的实际情况,指出其在参与管理和开发的项目中所进行的系统测试活动,说明该活动的具体实施过程、使用方法和自动化测试工具,并对实际应用效果进行分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235607612346369","title":"论系统需求分析方法<br> 系统需求分析是开发人员经过调研和分析,准确理解用户和项目的功能、性能、可靠性等要求,将用户非形式的诉求表述转化为完整的需求定义,从而确定系统必须做什么的过程。系统需求分析具体可分为功能性需求、非功能性需求与设计约束等三个方面。\n请围绕“系统需求分析方法”论题,依次从以下三个方面进行论述。<br> 1. 概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。<br> 2. 详细论述系统需求分析的主要方法。<br> 3. 结合你具体参与管理和开发的实际软件项目,说明是如何使用系统需求分析方法进行系统需求分析的,说明具体实施过程以及应用效果。","analyze":"写作要点<br> 一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br> 二、从系统分析出发,可将需求分析方法大致分为功能分解方法、结构化分析方法、信息建模方法和面向对象的分析方法。<br> (1)功能分解方法。<br> 将新系统作为多功能模块的组合。各功能模块可分解为若干子功能及接口,子功能再继续分解。便可得到系统的雏形,即功能分解:功能、子功能和功能接口。<br> (2)结构化分析方法。<br> 结构化分析方法是一种从问题空间到某种表示的映射方法,是结构化方法中重要且被普遍接受的表示系统,由数据流图和数据词典构成并表示。此分析法又称为数据流法。其基本策略是跟踪数据流,即研宄问题域中数据流动方式及在各个环节上所进行的处理,从而发现数据流和加工。结构化分析可定义为数据流、数据处理或加工、数据存储、端点、处理说明和数据字典。<br> (3)信息建模方法。<br> 它从数据角度对现实世界建立模型。大型软件较复杂。很难直接对其分析和设计,常借助模型。模型是开发中常用工具,系统包括数据处理、事务管理和决策支持。实质上,也可看成由一系列有序模型构成,其有序模型通常为功能模型、信息模型、数据模型、控制模型和决策模型。有序是指这些模型是分别在系统的不同开发阶段及开发层次一同建立的。建立系统常用的基本工具是E-R图。经过改进后称为信息建模法,后来又发展为语义数据建模方法,并引入了许多面向对象的特点。<br> 信息建模可定义为实体或对象、属性、关系、父类型/子类型和关联对象。此方法的核心概念是实体和关系,基本工具是E-R图,其基本要素由实体、属性和联系构成,该方法的基本策略是从现实中找出实体,然后再用属性进行描述。<br> (4)面向对象的分析方法。<br> 面向对象的分析方法的关键是识别问题域内的对象,分析它们之间的关系,并建立三类模型,即对象模型、动态模型和功能模型。面向对象主要考虑类或对象、结构与连接、继承和封装、消息通信。这些只表示面向对象分析中几项最重要特征。类的对象是对问题域中事物的完整映射,包括事物的数据特征(即属性)和行为特征(即服务)。<br> 三<span>、</span>考生需结合自身参与项目的实际状况,指出其参与管理和开发的项目中如何应用系统需求分析方法进行系统需求分析的,说明具体实施过程、使用的方法,并对实际应用效果进行分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235641745592321","title":"论软件开发模型及应用<br>软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发过程包括需求、设计、编码和测试等阶段,有时也包括维护阶段。软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要任务和活动,用来作为软件项目工作的基础。对于不同的软件项目,针对应用需求、项目复杂程度、规模等不同要求,可以采用不同的开发模型,并采用相应的人员组织策略、管理方法、工具和环境。\n请围绕“软件开发模型及应用”论题,依次从以下三个方面进行论述。<br>1.简要叙述你参与的软件开发项目以及你所承担的主要工作。<br>2.列举出几种典型的软件开发模型,并概要论述每种软件开发模型的主要思想和技术特点。<br>3.根据你所参与的项目中使用的软件开发模型,具体阐述使用方法和实施效果。","analyze":"一、简要描述所参与的软件系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、列举出几种典型的软件开发模型,并详细论述每种软件开发模型的主要内容和优缺点。<br>1.瀑布模型<br>瀑布模型是经典的软件开发模型,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被覆盖或者发现了问题,那么最好“返回”上一个阶段并进行适当的修改,项目开发进程从一个阶段“流动”到下一个阶段,每个阶段之间的依赖性强。<br>优点:(1)为项目提供了按阶段划分的检查点;(2)当前一阶段完成后,只需要去关注后续阶段。<br>缺点:(1)各个阶段的划分完全同定,阶段之间产生大量的文档,极大地增加了工作量;(2)与用户见面晚,从而增加了开发的风险;(3)早期的错误可能要等到开发后期的测试阶段才能发现,发现问题越晚代价越高。<br>2.增量模型<br>增量模型是一种非整体开发的模型,分为两种形式:基于瀑布模型的渐增模型;基于原型的快速原型模型。<br>优点:(1)人员分配灵活,刚开始不用投入大量人力资源;(2)如果核心产品很受欢迎,则可增加人力实现下一个增量客户可以不断地看到所开发的软件,从而降低开发风险。<br>缺点:(1)由于各个构件是逐渐并入已有的软件体系结构中的,所以加入构件必须不破坏已构造好的系统部分,这需要软件具备开放式的体系结构;(2)在开发过程中,需求的变化是不可避免的。增量模型的灵活性可以使其适应这种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改模型,从而是软件过程的控制失去整体性。<br>3.快速原型模型<br>快速原型模型又称原型模型,它是增量模型的另一种形式;它是在开发真实系统之前,构造一个原型,在该原型的基础上,逐渐完成整个系统的开发工作。快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足客户的要求开发人员可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客广满意的软件产品。<br>优点:减少由于软件需求不明确带来的开发风险。<br>缺点:所选用的开发技术和工具不一定符合主流的发展;快速建立起来的系统结构加上连续的修改可能会导致产品质量低下。<br>4.螺旋模型<br>螺旋模型将瀑布模型和增量模型结合起来,并加入了风险分析,主要分为四个工作步骤:(1)制订计划:确定软件目标,选定实施方案,弄清项目开发的限制条件;(2)风险分析:分析评估所选方案,考虑如何识别和消除风险;(3)实施工程:实施软件开发和验证;(4)客户评估:评价开发工作,提出修正建议,制订下一步计划。<br>优点:(1)设计上的灵活性,可以在项目的各个阶段进行变更;(2)以小的分段来构建大型系统,使成本计算变得简单容易;(3)客户始终参与每个阶段的开发,保证了项目不偏离正确方向以及项目的可控性;(4)随着项目推进,客户始终掌握项目的最新信息,从而能够和管理层进行有效地交互;(5)客户认可这种公司内部的开发方式带来的良好的沟通和高质量的产品。<br>缺点:(1)采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能够及时标识风险,势必造成重大损失;(2)过多的迭代次数会增加开发成本,延迟提交时间。<br>5.喷泉模型<br>喷泉模型是一种以用户需求为动力,以对象为驱动的模型,主要用于描述面向对象的软件开发过程。<br>优点:该模型的各个阶段没有明显的界线,开发人员可以同步进行开发。其优点是可以提高软件项目开发效率,节省开发时间,适应于面向对象的软件开发过程。<br>缺点:由于喷泉模型在各个开发阶段是重叠的,因此在开发过程中需要大量的开发人员,因此不利于项目的管理。此外这种模型要求严格管理文档,使得审核的难度加大,尤其是面对可能随时加入各种信息、需求与资料的情况。<br>三、针对考生本人所参与的项目中使用的软件开发模型,说明使用方法和具体实施效果。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235620098789377","title":"论软件构件管理及其应用<br>软件构件是软件复用的重要组成部分,为了达到软件复用的目的,构件应当是高内聚的,并具有稳定的对外接口。同时为了使构件更切合实际、更有效地被复用,构件应当具备较强的适应能力,以提高其通用性。而存在大量的、可复用的构件是有效使用复用技术的前提。对大量构件进行有效管理,以方便构件的存储、检索和提取,是成功复用构件的必要保证。<br>\n请围绕“软件构件管理及其应用”论题,依次从以下三个方面进行论述。<br>1.简要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。<br>2.详细说明构件管理中常见的构件获取方法,以及构件组织分类的常见方法。<br>3.结合你具体参与管理和开发的实际项目,说明在项目中如何获取和组织构件,以及如何进行构件组装。\n<div>\n &nbsp;\n</div>","analyze":"一、简要叙述你参与管理和开发的软件项目以及你在其中所枳仟的主要工作。<br>二、详细说明构件管理中常见的构件获取方法,以及构件组织分类的常见方法。<br>常见的构件获取方法有:<br>1. 从现有构件中获得符合要求的构件,直接使用或作适应性修改,得到可复用的构件;<br>2. 通过遗留工程,将具有潜在复用价值的构件提取出来,得到可复用的构件;<br>3. 从市场上购买现成的商业构件,即COTS(Commercial Off-The-Shell)构件;<br>4. 开发新的符合要求的构件。<br>企业或项目组进行构架获取决策时,必须考虑到不同方式获取构件的一次性成本和以后的维护成本。<br>常见的构件组织分类方法有:<br>1. 关键字分类法:将应用领域的概念按照从抽象到具体的顺序主次分解为树形或有向无回路图结构,每个概念用一个描述性的关键字表示。构件库中新增构件时,需要对构件的功能或行为进行分析。若存在该构件的属主关键字,则在已有的关键字分类结构中,加入到最合适的原子级关键字之下。如果无法找到该构件的属主关键字,则引进新的关键宁,扩充原有的关键字分类结构。<br>2. 刻面(facet)分类法:定义若干用于刻画构件特征的“刻而”,每个面包含若干个概念,这些概念描述构件在刻面上的特点。刻面可以描述构件执行的功能、被操作的数据、构件应用的语境及其他特征。描述构件的刻面集合称为刻面描述符。<br>3. 超文本方法:基于全文检索技术,其主要思想是所有构件必须附以详尽的功能或行为说明文档;说明中出现的重要概念或构件以网状链接方式相互连接;检索者在阅读文档的过程中可按照人类的联想思维方式任意跳转到包含相关概念或构件的文档;全文检索系统将用户给出的关键字与说明文档中的文字进行匹配,实现构件的浏览式检索。<br>三、结合你具体参与管理和开发的实际项目,说明在项目中如何获取和组织构件,以及如何进行构件组装。<br>说明自己在项目中具体所采用的构件获取和组织的方法。<br>构件组装是指将库中的构件经适当修改后相互连接,或者将它们与当前开发系统中的软件元素相连接,最终构成新的目标软件。构件组装技术大致可以分为三种:<br>1. 基于功能的组装技术:采用子程序调用和参数传递的方式将构件组装起来。要求库中的构件以子程序/过程/函数的形式出现,并且接口说明必须清晰。此方法依赖于功能分解的设计方法。<br>2. 基于数据的组装技术:首先根据当前软件问题的核心数据结构设计出一个框架,然后根据框架中各节点的需求提取构件并进行适应性修改,再将构件逐个分配至框架中的适当位置。构件的组装方式仍然是传统的子程序调用与参数传递。此方法依赖于而向数据的设计方法。<br>3. 面向对象的组装技术:由于封装和继承特征,面向对象方法比其他软件开发方法更适合支持软件复用。在面向对象软件开发方法中,如果从类库中检索出来的基类能够完全满足新系统的需求,可以直接使用;否则必须以基类为父类,生成相应的子类,满足新系统的需求。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235639803629569","title":"论软件的系统测试及其应用<br>软件测试是软件交付客户前必须要完成的重要步骤之一,目前仍是发现软件错误(缺陷)的主要手段。系统测试是将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,针对整个系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,从而提出更加完善的方案。系统测试的主要内容包括功能性测试、健壮性测试、性能测试、用户界面测试、安全性测试、安装与反安装测试等。\n请围绕“软件的系统测试及其应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。<br>2.详细论述软件的系统测试的主要活动及其所包含的主要内容,并说明功能性测试和性能测试的主要的目的。<br>3.结合你具体参与管理和开发的实际项目,概要叙述如何采用软件的系统测试方法进行系统测试,说明具体实施过程以及应用效果。","analyze":"一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、软件系统测试的主要活动有:<br>1.制定系统测试计划,主要包括测试范围、测试方法、测试环境与辅助工具、测试完成准则,以及人员与任务列表等内容;<br>2.设计系统测试用例,系统测试小组各成员设计和撰写《系统测试用例》。软件系统测试通常采用黑盒测试方法,常见的测试用例设计方法包括功能分解、等价类划分、边界值分析、判定表、因果图、状态图、随机测试、错误推测和正交实验法等;<br>3.执行系统测试,系统测试小组各成员依据《系统测试计划》和《系统测试用例》执行系统测试。将测试结果记录在《系统测试报告》中,用缺陷管理工具来管理所发现的缺陷,并及时通报给开发人员;<br>4.缺陷管理与改错,缺陷管理工具记录所有缺陷的状态信息,并自动产生《缺陷管理报告》。开发人员及时消除已经发现的缺陷,并及时进行回归测试,以确保不会引入新的缺陷。<br>功能测试的目的:为了确保程序以期望的方式运行而按功能要求对软件进行的测试,通过对软件的所有的特性和功能都进行测试来确保软件功能符合需求和规范。<br>性能测试的目的:是确认软件系统是否能够达到用户提出的性能指标,同时发现软件中存在的性能瓶颈,根据测试结果来优化软件,最后起到优化系统的目的。具体内容包括发现缺陷、性能调优、评估系统能力、验证稳定性和可靠性等。<br>三、考生需结合自身参与项目的实际状况,指出其参与管理和开发的项目中所进行的软件系统测试活动,说明该活动的具体实施过程、使用的方法和工具,并对实际应用效果进行分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235634183262209","title":"论软件的系统测试及其应用<br>软件系统测试的对象是完整的、集成后的计算机系统,其目的是在真实系统工作环境下,验证完整的软件配置项能否和系统正确连接,并满足系统设计文档和软件开发合同规定的要求。常见的系统测试包括功能测试、性能测试、压力测试、安全测试等。同时,在系统测试中,涉及到众多的软件模块和相关干系人,测试的组织和管理是系统测试成功的重要保证。\n请围绕\"软件的系统测试及其应用\"论题,依次从以下三个方面进行论述。<br>1. 简要叙述你参与管理和开发的软件项目以及你在其中所承担的主要工作。<br>2. 概要论述系统测试过程中测试管理的主要活动内容,论述性能测试的目的和基本类型。<br>3. 结合你具体参与管理和开发的实际项目,说明如何管理性能测试的各项活动,以及性能测试具体采用的方法、工具、实施过程以及应用效果。","analyze":"写作要点<br>1. 简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>2. 论述软件测试的管理的主要活动内容,论述性能测试的目的和基本分类。<br>(1)软件测试的管理包括过程管理、配置管理和评审工作。<br>①过程管理。过程管理包括测试活动管理和测试资源管理。<br>②配置管理。按照软件配置管理要求,将软件测试过程中产生的各种工作产品纳入配置管理,建立专门的配置管理库。<br>③评审。测试过程中的评审分为测试就绪评审和测试结果评审。测试就绪评审指测试前对测试计划和测试说明进行评审,评审测试计划的合理性和测试用例的正确性、完整性和覆盖程度,以及测试组织、环境、设备、工具是否齐全并符合技术要求;测试结果评审是指在测试完成后,评审测试过程和结果的有效性,确定是否达到测试目的,主要评审内容包括测试记录和测试报告等。<br>(2)性能测试的目的和分类。<br>①性能测试的主要目的是验证软件系统是否能够达到用户提出的性能指标,同时发现系统中存在的性能瓶颈,并用于优化软件和系统。具体内容有:<br>•发现缺陷,发现与性能密切相关的软件缺陷;<br>•性能调优,更好地发挥系统的潜能;<br>•评估系统能力,测试能够满足性能需求的极限条件;<br>•验证稳定性和可靠性。<br>②性能测试的分类<br>根据测试内容的不同,性能测试主要包括压力测试、负载测试、并发测试和可靠性测试。<br>3.考生需结合自身参与项目的实际状况,指出其参与管理和开发的项目中所进行的系统测试活动,说明实施性能测试的具体过程、使用的方法和工具,并对实际应用效果进行分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235622250467329","title":"论软件系统需求获取技术及应用<br>需求获取(Requirement Discovery, RD)是一个确定和理解不同类用户的需要和约束的过程。需求获取是否科学、充分对所获取的结果影响很大,直接决定了系统开发的目标和质量。由于大部分用户无法完整的描述需求,也不可能看到系统的全貌,所以在需求获取中,系统分析师需要与用户进行有效沟通和合作才能成功。系统分析师根据要获取的信息内容和信息来源采用不同的需求获取技术,并且熟练地在实践中运用它,进而获得用于描述系统活动的特定软件需求,构建系统开发目标和质量要求。\n请围绕“软件系统需求获取技术及应用”论题,依次从以下三个方面进行论述。<br>1.简要叙述你参与的软件开发项目以及你所承担的主要工作。<br>2.详细说明目前主要有哪些需求获取技术,不同需求获取技术各自有哪些特点。<br>3.根据你所参与的项目,具体阐述如何根据需求内容采用不同的需求获取技术获取系统需求。","analyze":"—、简要描述所参与的软件系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、详细说明目前主要有哪些需求获取技术,不同需求获取技术各自有哪些特点。<br>1.用户访谈<br>用户访谈是最基本的一种需求获取手段,其形式包括结构化和非结构化两种。结构化是指事先准备好一系列问题,有针对地进行;而非结构化则是只列出一个粗略的想法,根据访谈的具体情况发挥。最有效的访谈是结合这两种方法进行,毕竟不可能把什么都一一计划淸楚,应该保持良好的灵活性。为了进行有效的用户访谈,系统分析师需要在三个方面进行组织,分别是准备访谈、主持访谈和访谈的后续工作。<br>用户访谈具有良好的灵活性,有较宽广的应用范围。但是,也存在着许多困难,例如,用户经常较忙,难以安排时间;面谈时信息量大,记录较为困难;沟通需要很多技巧,同时需要系统分析师具有足够的领域知识等。另外,在访谈时,还可能会遇到一些对于企业来说比较机密和敏感的话题。因此,这看似简单的技术,也需要系统分析师具有丰富的经验和较强的沟通能力。<br>2. 问卷调査<br>问卷调查通过精心设计调查表,然后下发到相关的人员手中,让他们填写答案。问卷调査表使系统分析师可以从大量的项目干系人处收集信息,甚至当项目干系人在地理上分布很广'时,他们仍然能通过问卷调查表来帮助获取需求。一张好的问卷调查表要花费大量的时间进行设计与制作,包括确定问题及其类型、编写问题、设计问卷调査表的格式三个重要活动。<br>问卷调查可以在短时间内,以低廉的代价从大量的回答中收集数据;问卷调査允许回答者匿名填写,大多数用户可能会提供真实信息;问卷调查的结果比较好整理和统计。问卷调查最大的不足就是缺乏灵活性,较好的做法是将用户访谈和问卷调查结合使用。具体来说,就是先设计问题,制作成为问卷调查表,下发填写完后,进行分组、整理和分析,以获得基础信息。然后,再针对分析的结果进行小范围的用户访谈,作为补充。<br>3. 采样<br>采样是指从种群中系统地选出有代表性的样本集的过程,通过认真研究所选出的样本集,可以从整体上揭示种群的有用信息。对于信息系统的开发而言,现有系统的文档(文件)就是采样种群。当开始对一个系统做需求分析时,査看现有系统的文档是对系统有初步了解的最好方法。但是,系统分析师应该查看哪些类型的文档,当文档的数据庞大,无法一一研究时,就需要使用采样技术选出有代表性的数据。<br>采样技术不仅可以用于收集数据,还可以用于采集访谈用户或者是采集观察用户。在对人员进行采样时,上面介绍的采样技术同样适用。通过采样技术,选择部分而不是选择种群的全部,不仅加快了数据收集的过程,而且提高了效率,从而降低开发成本。另外,采样技术使用了数理统计原理,能减少数据收集的偏差。但是,由于采样技术基于统计学原理,样本规模的确定依赖于期望的可信度和已有的先验知识,很大程度上取决于系统分析师的主观因素,对系统分析师个人的经验和能力依赖性很强,要求系统分析师具有较高的水平和丰富的经验。<br>4. 情节串联<br>很多用户对信息系统是没有直观认识的,这样就很容易产生盲区,这时,系统分析师就需要通过情节串联板技术来帮助用户消除盲区,达成共识。情节串联板通常就是一系列图片,系统分析师通过这些图片来讲故事。在一般情况下,图片的顺序与活动事件的顺序一致,通过一系列图片说明会发生什么。人们发现,通过以图片辅助讲故事的方式叙述需求,有助于有效和准确地沟通。在情节串联板中可以使用的图片类型包括流程图、交互图、报表和记录结构等。简单地说,情节串联板技术就是使用工具向用户说明(或演示)系统如何适合企业的需要,并表明系统将如何运转。系统分析师将初始的情节串联板展示给讨论小组,小组成员提供意见。<br>由于情节串联板给用户一个直观的演示,因此它是最生动的需求获取技术,其优点是用户友好、交互性强,对用户界面提供了早期的评审。情节串联板的缺点是花费的时间很多,需求获取的效率较低。<br>5.联合需求计划<br>为了提高需求获取的效率,越来越多的企业倾向于使用小组工作会议来代替大量独立的访谈。联合需求计划(Joint Requirement Planning,JRP)是一个通过高度组织的群体会议来分析企业内的问题并获取需求的过程,它是联合应用开发(Joint Application Development,JAD)的一部分。JAD是以小组形式定义和建立系统的,它是由企业主管部门经理、会议主持人、用户、协调人员、IT人员、秘书等共同组成的专题讨论组。由这个专题讨论组来定义并详细说明系统的需求和可选的技术方案。JAD的过程大致如下:(1)确定JAD项目,主要指确定系统的范围和规范。(2)在JAD专题预备会上,会议主持人向参与者介绍项目和JAD专题讨论内容。(3)准备JAD专题讨论材料。(4)进行JAD专题讨论会,其目的是要达成对需求的一致意见,并对各种可选的技术方案加以讨论,从中研究出几套可供选择的方案。<br>JAD方法充分发挥了JAD专题讨论会的优势,以更好地满足用户的需求。使用JAD法,比传统的收集需求的时间更快,可以加速系统开发周期。JAD方法充分发挥了管理人员和用户的积极性,增强了管理人员和用户的责任感,从而使系统开发工作做得更好。JRP将会起到群策群力的效果,对于一些问题最有歧义的时候、对需求最不清晰的领域都是十分有用的一种方法。这种方法最大的难度是会议的组织和相关人员的能力,要做到言之有物,气氛开放。否则,将难以达到预想的效果。<br>三、针对考生本人所参与的项目中使用的需求获取技术,说明实施过程和具体实施效果。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235637794557953","title":"论软件需求验证方法及其应用<br>在软件开发过程中,如果后期或在交付之后发现了需求问题,则修补需求错误需要投入大量的人力物力。因此,开展软件需求验证,对软件需求规格说明书(SRS)的正确性和质量进行验证,是需求分析的重要工作内容。需求验证也称为需求确认,主要内容包括:确定SRS正确地描述了预期的、满足项目干系人需求的系统行为和特征;确定软件需求是从用户需求、业务规格和其他来源中正确推导而来的;确定需求的完整性、一致性和高质量。需求验证为后续的系统设计、实现和测试提供了足够的基础。\n请围绕“软件需求验证方法及其应用”论题,依次从以下三个方面进行论述。<br>1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。<br>2.简要说明需求验证的主要方法及实施过程。<br>3.结合你具体参与管理和开发的实际项目,阐述所选择的验证方法及其原因,说明具体实施过程,并详细分析实施效果。","analyze":"一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>二、需求验证的方法主要有需求评审和需求测试两种。<br>1.需求评审<br>实际工作中,需求评审可以分为正式评审和非正式评审。正式评审是指通过召开评审会的形式,组织多个专家,将工作产品涉及到的人员集合在一起,并定义好评审人员的角色和职责,对工作产品进行正规的会议评审。而非正式评审并没有这种严格的组织形式,一般也不需要将人员集合在一起评审,而是通过电子邮件、文件汇签,甚至是网络聊天等多种形式对工作产品进行评审。<br>正式评审是一种结构化的评审技术,一般通过会议的形式来进行评审,需要经过以下过程:<br>(1)计划。首先要对评审制订计划,以确定评审的重点和范围,并确保所有参与者理解自己的角色和评审的目标。<br>(2)准备。评审之前,应该收集要评审的工作产品和所有背景材料,并分发给评审参与者。<br>(3)进行评审。要进行成功的评审,首先,评审小组人员应理解评审流程,理解自己的角色。一般来说,评审流程是一个重复进行的循环过程,包括评审员提出问题,讨论问题,同时对问题进行确认,确定缺陷(确定需要解决的地方),直到没有问题时再继续下一步;其次,会议主持人(协调员)要确保评审按议程进行,并以当前的问题为重点。主持人应该确保对枝节问题的讨论不会使评审脱离正轨,而且所有评审人都以平等的身份参加讨论;最后,在评审的过程中,要注意确定问题而不要试图解决问题,要对所有问题和讨论做好记录。<br>(4)对评审结果采取行动。如果不对评审结果采取行动,那么评审就没有什么价值。因此,评审结束时,要确定问题列表的优先顺序,并跟踪问题及其解决办法。<br>2.需求测试<br>软件测试应该从需求定义开始,如果在开发过程的早期就开始制订测试计划和进行测试用例的设计,就可以在发生错误时立即检测到并纠正它。这样,就可以防止这种错误进一步“放大”,并且可以减少测试和维护费用。另一方面,需求的遗漏和错误具有很强的隐蔽性,仅仅通过阅读SRS,通常很难想象在特定环境下的系统行为。只有在业务需求基本明确,用户需求部分确定时,同步进行需求验证,才可能及早发现问题,从而在需求开发阶段以较低的代价解决这些问题。需求测试一个重要的工作是设计概念测试用例。<br>(1)概念测试用例<br>以功能需求为基础(SA方法)或者从用例派生出来(OO方法)的测试用例,可以使项目干系人更清楚地了解系统的行为。虽然没有在系统上执行测试用例,但是涉及测试用例的简单动作可以解释需求的许多问题。这种测试用例通常称为概念测试用例。它们可以发现SRS中的错误、二义性和遗漏,还可以进行模型分析,以及作为用户验收测试的基础。在正式的系统测试中,还可以将它们细化成测试用例。<br>概念测试用例的设计应该覆盖用例的主事件流和备选事件流(OO方法),或者系统的功能描述(SA方法),以及在需求获取和分析期间所确定的约束条件。通常意义上,概念测试用例来源于用户需求,重点反映用例(或功能需求条目)的描述,完全独立于实现,仅仅是概念上的描述测试脚本。<br>概念测试用例可以用文本的方式描述,也可以采用对话图(Dialog Map)的方式给出。<br>(2)需求测试的过程<br>棊于概念测试用例进行需求测试的基本过程如下:<br>①需求测试人员根据概念测试用例所描述的若干可能的过程,进行“概念上”的执行,期望发现遗漏的、错误的和不必要的需求。<br>②根据测试结果快速修改对应的需求文档,完成一轮完整的需求测试过程。<br>基于该过程,需求测试人员应用概念测试用例来进行需求测试,直至概念测试覆盖所有的用例和功能需求条目为止。需求测试人员和系统分析师根据需求测试的结果,进一步讨论修订SRS的内容和版本。至此,整个需求测试过程结束。<br>三、考生需结合自身参与项目的实际状况,说明选择这种/这些方法的原因,指出其参与管理和开发的项目中是如何应用所选择的开发方法指导系统开发的,说明具体的实施过程、使用的方法和工具,并对实际实施效果进行分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235627921166337","title":"论需求分析方法及应用<br>需求分析是提炼、分析和仔细审查已经获取到的需求的过程。需求分析的目的是确保所有的项目干系人(利益相关者)都理解需求的含义并找出其中的错误、遗漏或其它不足的地方。需求分析的关键在于对问题域的研究与理解。为了便于理解问题域,现代软件工程所推荐的需求分析方法是对问题域进行抽象,将其分解为若干个基本元素,然后对元素之间的关系进行建模。常见的需求分析方法包括面向对象的分析方法、面向问题域的分析方法、结构化分析方法等。而无论采用何种方法,需求分析的主要工作内容都基本相同。\n请围绕\"需求分析方法及应用\"论题,依次从以下三个方面进行论述。<br>1. 简要叙述你参与管理和开发的软件系统开发项目以及你在其中所承担的主要工作。<br>2. 概要论述需求分析工作过程所包含的主要工作内容。<br>3. 结合你具体参与管理和开发的实际项目,说明采用了何种需求分析方法,并举例详细描述具体的需求分析过程。","analyze":"写作要点<br>1. 简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>2. 需求分析的工作通常包括以下7个方面:<br>(1) 绘制系统上下文范围关系图。用于定义系统与系统外部实体间的界限和接口的简单模型,它可以为需求确定一个范围。<br>(2) 创建系统原型。通过快速开发工具开发一个抛弃式原型,或者通过PowerPoint、Flash等演示工具制作一个演示原型,甚至是用纸和笔画出一些关键的界面接口示意图,将帮助用户更好地理解所要解决的问题,更好地理解系统。<br>(3) 分析需求的可行性。对所有获得的需求进行成本、性能和技术实现方面的可行性研究,以及这些需求项是否与其他的需求项有冲突,是否有对外的依赖关系等。<br>(4) 确定需求的优先级。对于需求优先级的描述,可以采用满意度和不满意度指标进行说明。其中满意度表示当需求被实现时用户的满意程度,不满意度表示当需求未被实现时用户的不满意程度。<br>(5) 为需求建立模型。即建立分析模型,这些模型的表现形式主要是图表加上少量的文字描述。根据采用的分析方法不同,采用的图也将不同。例如,OOA中的用例模型和领域模型,SA中的DFD和E-R图等。需求分析模型主要描述系统的数据、功能、用户界面和运行的外部行为,它是系统的一种逻辑表示技术,并不涉及软件的具体实现细节。需求分析模型可以帮助系统分析师理解系统,使需求分析任务更加容易实现。同时,它也是以后进行软件设计的基础,为软件设计提供了系统的表示视图。<br>(6) 创建数据字典。数据字典是对系统用到的所有数据项和结构进行定义,以确保开发人员使用了统一的数据定义。<br>(7) 使用质量功能展开(Quality Function Deployment, QFD)方法,将产品特性、属性与对用户的重要性联系起来。<br>(只要包含上述5项工作内容即可)<br>3.考生需要结合自身具体参与管理和开发的实际项目,说明采用了哪一种需求分析方法(面向对象的分析、面向问题域的分析方法、结构化分析等),并基于对应的需求分析方法,针对一个或多个功能举例详细描述具体的需求分析过程。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235584342347777","title":"论面向对象设计方法及其应用<br> 系统设计是根据系统分析的结果,运用系统科学的思想和方法,设计出能满是用户所要求的目标(或目的)系统的过程。面向对象设计方法是一种接近现实的系统设计方法。在该方法中,数据结构和在数据结构上定义的操作算法封装在一个对象之中。\n请围绕“面向对象设计方法及其应用”论题,依次从以下三个方面进行论述。<br> 1.概要叙述你参与管理和开发的软件项目以及你在其中所承担的主要工作。<br> 2.面向对象设计方法包含多种设计原则,请简要描述其中的三种设计原则。<br> 3.具体阐述你参与管理和开发的项目是如何遵循这三种设计原则进行信息系统设计的。","analyze":"论文暂无解析","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235587957837825","title":"试题一<br>\n论面向对象的信息系统分析方法<br>\n信息系统分析是信息系统生命周期的重要阶段之一,是使用系统的观点和方法,把复杂系统分解为简单组成部分并确定这些组成部分的基本属性和关系的过程。在此过程中可使用多种分析方法,以及相应的辅助工具。其中,面向对象分析方法(Object-Oriented AnalysisMethod,00AM)是在系统开发过程中进行了系统业务调查后,按照面向对象的思想来分析问题的方法。<br>\n请围绕“面向对象的信息系统分析方法”论题,依次从以下三个方面进行论述。<br>\n1.概要叙述你参与管理和开发的软件项目以及你在其中所承担的主要工作。<br>\n2.请简要描述面向对象系统分析方法的主要步骤。<br>\n3.具体阐述你参与管理和开发的项目是如何基于面向对象分析方法进行信息系统分析的。","analyze":"写作要点<br>\n一、简要叙述所参与管理和开发的软件项目,需要明确指出在其中承担的主要任务和开展的主要工作。<br>\n二、面向对象分析方法通常按照下面的步骤来进行:<br>\n(1)标识对象和类。可以从应用领域开始,逐步确定形成整个应用的基础类和对象。这一步需要分析领域中目标系统的责任,调查系统的环境,从而确定对系统有用的类和对象。(2)标识结构。典型的结构有两种,即一般-特殊结构和整体-部分结构。一般-特殊结构表示一般类是基类,特殊类是派生类。比如,汽车是轿车和卡车的基类,这是一种一般-特殊结构。整体-部分结构表示聚合,由属于不同类的成员聚合成为新的类。比如,轮子、车体和汽车底盘都是汽车的一部分,这些不同功能的部件聚合成为汽车这个整体。<br>\n(3)标识属性。对象所保存的信息称为它的属性。类的属性描述状态信息,在类的某个实例中,属性的值表示该对象的状态值。需要找出每个对象在目标系统中所需要的属性,并将属性安排在适当的位置,找出实例连接,最后再进行检查。应该给出每个属性的名字和描述,并指定该属性所受的特殊限制(如只读、属性值限定在某个范围之内等)。<br>\n(4)标识服务。对象收到消息后执行的操作称为对象提供的服务。它描述了系统需要执行的处理和功能。定义服务的目的是定义对象的行为和对象之间的通信。<br>\n(5)标识主题。为了更好地理解包含大量类和对象的概念模型,需要标识主题,即对模型进行划分,给出模型的整体框架,划分出层次结构。<br>\n三、论文中需要结合项目实际工作,详细论述在项目中是如何基于面向对象的分析方法进行信息系统分析的。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235573047087105","title":"试题一,给信息系统可行性分析,信息系统可行性分析的目的是确认在当前条件下企业是否有必要建设新系统,以及建设新系统的工作是否具备必要的条件,如何进行可行性分析是系统分析师所必须面临的问题。请围绕信息系统可行性分析论题,依次从以下三个方面进行论述。<br>\n1.概要叙述你参与管理和开发的软件项目,以及你在其中承担的主要工作。<br>\n2.请简要描述应从哪些方面完成信息系统的可行性分析?<br>\n3.具体阐述你参与管理和开发的项目是如何从不同的方面进行系统可行性分析的。","analyze":"暂无","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235601878732801","title":"试题三 论软件设计模式及其应用<br> 设计模式(Design Pattern)是一套被反复使用的代码设计经验总结,代表了软件开发人员在软件开发过程中面临的一般问题的解决方案和最佳实践。使用设计模式的目的是提高代码的可重用性,让代码更容易被他人理解,并保证代码可靠性。现有的设计模式已经在前人的系统中得以证实并广泛使用,它使代码编写真正实现工程化,将已证实的技术表述成设计模式,也会使新系统开发者更加容易理解其设计思路。根据目的和用途不同,设计模式可分为创建型(creational)模式、结构型(structural)模式和行为型(behavioral)模式三种。&nbsp;<br>\n请围绕“论软件设计模式及其应用”论题,依次从以下三个方面进行论述:<br> 1.简要叙述你参与的软件开发项目以及你所承担的主要工作。<br> 2.详细说明每种设计模式的特点及其所包含的具体设计模式,每个类别至少详细说明两种代表性设计模式。<br> 3.根据你所参与的项目,论述具体采用了哪些设计模式,其实施效果如何。","analyze":"写作要点<br> 一、简要描述所参与的软件系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。<br> 二、详细说明每种设计模式的特点及其所包含的具体设计模式,每个类別至少详细说明两种代表性设计模式。<br> 1.创建型模式。<br> 创建型模式对类的实例化过程(即对象的创建过程)进行了抽象,能够使软件模块做到与对象的创建和组织无关。创建型模式隐藏了对象是如何被创建和组合在一起的,以达到使整个系统独立的目的。创建型模式包括工厂方法模式、抽象工厂模式.,原型模式、单例模式和建造者模式等。<br> 2.结构型模式。<br> 结构型模式描述如何将类或对象结合在一起形成更大的结构。结构型模式描述两种不同的事物,即类与类的实例(对象),根据这一点,可以分为类结构型模式和对象结构型模式。 结构型模式包括适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模弍和代理模式等。<br> 3.行为型模式。<br> 行为型模式足在不同的对象之间划分责任和算法的抽象化,它不仅仅是关于类和对象的,而且是关于它们之间的相互作用的。行为型模式分为类行为模式和对象行为模式两种,其中类行为模式使用继承关系在几个类之间分配行为,而对象行为模式则使用对象的聚合来分配行为。行为型模式包括职责链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式、访问者模式等。<br> 三、针对考生本人所参与的项目中使用的设计模式,说明实施过程和具体实施效果。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235591900483585","title":"试题三<br>\n论富互联网应用的客户端开发技术<br>\n富互联网应用(Rich Internet Application,RIA)是一种新型Web应用程序架构。它结合了桌面软件良好的用户体验和Web应用程序易部署的优点,利用丰富的数据模型和丰富的客户端呈现形式,保证了在无刷新页面之下提供更高效的界面响应速度和通用的用户界面特征,迅速响应用户输入并进行相应处理,从而为用户构建一个快速响应、交互性强的应用程序。近年来,各技术厂商相继推出了多种新的技术来支持RIA应用开发。<br>\n请围绕“富互联网应用的客户端开发技术”论题,依次从以下三个方面进行论述。<br>\n1.简要叙述你参与的软件开发项目以及你所承担的主要工作。<br>\n2.说明目前有哪些主要的RIA客户端开发技术,详细阐述每种技术的特点和优势。<br>\n3.根据你所参与的项目,具体采用了哪种RIA客户端开发技术,其实施效果如何。","analyze":"写作要点<br>\n一、简要描述所参与的软件系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>\n二、说明目前有哪些主要的RIA客户端开发技术,详细阐述每种技术的特点和优势。<br>\n(1) Flex。<br>\nFlex是一个表示服务器和应用程序框架,它可以运行于J2EE 和.NET 平台。Flex应用程序框架由MXML (Macromedia XML)、ActionScript和Flex类库构成。开发人员利用MXML定义应用程序用户界面元素,利用ActionScript 定义客户逻辑与程序控制。Flex类库中包括Flex组件、管理器和行为等。<br>\n(2) Bindows。<br>\nBindows是用JavaScript和 DHTML (Dynamic HTML,动态 HTML)开发的Web窗口框架。JavaScript用于客户端界面的显示和处理,XML和 HTTP用于客户端与服务器的信息传输。<br>\n(3) Java。<br>\n一些相当复杂的系统都是用Java 编写的,这说明可以用Java来建立几乎任何一个能够想象得到的RIA。使用Java建立RIA 的主要缺陷是它的复杂性,例如,即使对简单的窗口和图形,也要求编写非常烦琐的代码。<br>\n(4) Laszlo。<br>\nLaszlo是一个开源的RIA开发环境。使用Laszlo平台时,开发人员只需编写名为LZX的描述语言(其中整合了XML 和JavaScript),运行在J2EE 应用服务器上的 Laszlo表示服务器会将其编译成SWF格式的文件并传输给客户端展示。<br>\n(5) XUL。<br>\nXUL (XML User Interface Language,基于 XML 的用户界面语言)可用于建立窗口应用系统,这些系统既可以在Mozilla浏览器上运行,也可以在其他描述引擎上运行。XUL描述引擎都非常小,它既可以使用XML 数据,也可以生成XML数据。<br>\n(6)Avalon。<br>\nAvalon是 Vista的一部分,是一个图形和展示引擎,主要由.NET框架中的一组类集合而成。Avalon定义了一个在 Longhorn中使用的新标记语言,其代号为 XAML (eXtensibleApplication Markup Language),即可扩展应用标记语言。可以使用XAML 来定义文本、图像和控件的布局,程序代码可以直接嵌入到XAML 中,也可以将它保留在一个单独的文件内。<br>\n三、针对考生本人所参与的项目中使用的RIA客户端开发技术,说明实施过程和具体实施效果。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235577107173377","title":"试题三、给敏捷开发方法,敏捷软件开发遵循一套软件开发的价值和原则,在开发中,需求和解决方案通过自组织跨功能的团队达成。敏捷软件开发主张适度计划,迭代开发,提前交付与持续改进,并且快速灵活地应对变更,作为敏提开发方法之一,Scrum方法被广泛应用。<br>\n请围绕敏捷开发方法论题从以下3点进行论述。<br>\n1.概要叙述你参与管理和开发的软件项目,以及你在其中担任的主要工作<br>\n2.请简要“摘述Scrum的提开发方法中的角色、工件和活动。<br>\n3.具体阐述你参与管理和开发的项目如何基于Scrum敏捷开放方法进行系统开放的","analyze":"暂无","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235599618002945","title":"试题二 论快速应用开发方法及其应用<br> 快速应用开发(Rapid Application Development, RAD)是一种比传统生命周期法快得多的信息系统开发方法,它强调极短的开发周期。RAD模型是瀑布模型的一个变种,通过使用基于构件的开发方法进行快速开发。如果需求理解得很好,且约束了项目范围,利用这种模型可以很快开发出功能完善的信息系统。RAD强调复用已有的程序结构或使用构件,或者创建可复用的构件。一般来说,如果一个业务能够被模块化,且其中每一个主要功能均可以在不到三个月的时间内完成,它就适合采用RAD方法。每个主要功能可由一个单独的RAD组来实现,最后再集成起来,形成一个整体。<br>\n请围绕“论快速应用开发方法及其应用”论题,依次从以下三个方面进行论述:<br> 1.概要叙述你参与管理和开发的软件项目以及你在其中所承担的主要工作。<br> 2.RAD方法的流程从业务建模开始,随后是数据建模、过程建模、应用生成、测试与交付。请简要对上述5个步骤的主要工作和特点进行论述。<br> 3.具体阐述你参与管理和开发的项目是如何采用RAD方法进行开发的,并围绕上述5个步骤,详细论述在项目开发过程中遇到了哪些实际问题,是如何解决的。","analyze":"写作要点<br> 一、简要叙述所参与管理和开发的软件项目,需要明确指出在其中承担的主要任务和开展的主要工作。<br> 二、RAD方法的流程主要包括以下5个步骤:<br> (1)业务建模。确定驱动业务过程运作的信息、要生成的信息、如何生成、信息流的去向及其处理等,可以使用数据流图来帮助建立业务模型。<br> (2)数据建模。为支持业务过程的数据流查找数据对象集合、定义数据对象属性,并与其他数据对象的关系构成数据模型,可以使用E-R图来帮助建立数据模型。<br> (3)过程建模。将数据对象变换为要完成一个业务功能所需的信息流,创建处理描述以便增加、修改、删除或获取某个数据对象,即细化数据流图中的加工。<br> (4)应用生成。利用第四代语言(4GL)写出处理程序,复用已有构件或创建新的可复用构件,利用环境提供的工具自动生成并构造出整个应用系统。<br> (5)测试与交付。因为RAD强调复用,许多构件已经是测试过的,这就减少了测试的时间。由于大量复用,所以一般只做总体测试,但新创建的构件还是要进行充分测试。<br> 三、论文中需要结合项目实际工作,详细论述在项目中是如何采用RAD方法进行项目开发的,并围绕RAD方法的5个主要步骤,描述在实际开发过程中遇到了哪些具体问题,采用何种方法解决的。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235589937549313","title":"试题二<br>\n论静态测试方法及其应用<br>\n软件测试是在将软件交付给客户之前所必须完成的重要步骤之一。目前,软件的正确性证明技术尚不成熟,软件测试仍是发现软件错误的主要手段。软件测试方法可分为静态测试和动态测试,其中静态测试是指被测程序不在机器上运行,而通过人工检测和计算机辅助的手段对程序进行测试,该方法能够有效地发现软件30%~70%的设计和编码错误。<br>\n请围绕“静态测试方法及其应用”论题,依次从以下三个方面进行论述。<br>\n1.概要叙述你参与管理和开发的软件项目,以及你在其中所承担的主要工作。<br>\n2.详细论述静态测试主要方法的内容和过程。<br>\n3.结合你具体参与管理和开发的实际项目,说明如何进行静态测试,并说明如何选择合适的静态测试方法及具体实施过程和效果。","analyze":"写作要点<br>\n一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>\n二、静态测试是指被测程序不在机器上运行,而采用人工检测和计算机辅助静态分析的手段对程序进行测试。静态测试的目标包括文档和代码。对代码的静态测试一般采用桌前检查、代码审查、代码走查。经验表明,使用这种方法能够有效地发现30%~70%的逻辑设计错误和编码错误。<br>\n桌前检查:由程序员检查自己编写的程序。程序员在程序通过编译之后,进行单元测试之前,对程序源代码进行分析、检验,并补充相关的文档,目的是发现程序中的错误。由于程序员熟悉自己的程序及其程序设计风格,可以节省很多的检查时间,但应避免主观片面性。<br>\n代码审查:代码审查是由若干程序员和测试员组成一个评审小组,通过阅读、讨论和争议,对程序进行静态分析的过程。在会上,首先由程序员逐句解释程序的逻辑。在此过程中,程序员或其他小组成员可以提出问题,展开讨论,审查错误是否存在。实践表明,程序员在审查的过程中能发现许多原来自己没有发现的错误,而讨论和争议则促进了问题的暴露。<br>\n代码走查:走查与代码审查基本相同,但开会的程序与代码审查不同,走查不是简单地读程序和对照错误检查表进行检查,而是让与会者“充当”计算机,即首先由测试组成员为所测试程序准备一批有代表性的测试用例,提交给走查小组。走查小组开会,集体扮演计算机角色,让测试用例按照程序的逻辑运行一遍,随时记录程序的踪迹,供分析和讨论用。<br>\n静态分析:静态分析是指在不运行代码的方式下,通过词法分析、语法分析、控制流、数据流分析等技术对程序代码进行扫描,验证代码是否满足规范性、安全性、可靠性、可维护性等指标的一种代码分析技术。目前静态分析技术向模拟执行的技术发展,以能够发现更多传统意义上动态测试才能发现的缺陷,例如符号执行、抽象解释、值依赖分析等,并采用数学约束求解工具进行路径约减或者可达性分析以减少误报,增加分析效率。<br>\n三、考生需结合自身参与项目的实际状况,指出其参与管理和开发的项目中所进行的静态测试工作,说明静态测试的具体实施过程、如何选择静态测试方法,并对实际应用效果进行分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235575173599233","title":"试题二、论Devops及其应用。Devops是—组过程、方法与系统的统称,用于促进开发、技术运营和质量保障部门之间的沟通,协协作与整合。它是—种重视软体开发人员和工厂运维技术人员之间沟通合作的模式。透过自动化“软件交付\"和“架构变更”\"的流程,使得构建、测试,发布软件能够更加快堤、频繁和可靠。<br>\n请围绕“Devops及其应用\"论题,依次从以下三个方面进行论述。<br>\n1.概要叙述你参与管理和开发的软件项目,以及你在其中担任的主要工作.<br>\n2.结合你具体参与管理和开发的的实际项目,伴细给述是哪些因素促使你决走引入Devops<br>\n3.结合你具体参与管理和开发的实际项目说明在引入DevOps后,对应用程序发布有哪些影响。","analyze":"暂无","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235603850055681","title":"试题四 论遗留系统演化策略及其应用<br> 遗留系统是指任何基本上不能进行修改和演化以满足新的变化了的业务需求的信息系统。在企业信息系统升级改造过程中,如何处理和利用遗留系统,成为新系统建设中的重要问题,而处理恰当与否,直接关系到新系统的成败和开发效率。遗留系统的演化方式有多种,究竟采用哪些策略来处理遗留系统,需要根据对遗留系统的评价结果来确定。\n请围绕“论遗留系统演化策略及其应用”论题,依次从以下三个方面进行论述: 1.概要叙述你参与管理和开发的软件项目,以及你在其中所枳任的主要工作。 2.详细论述遗留系统评价的主要活动,论述常见的演化策略。 3.结合你具体参与管理和开发的实际项问,说明如何进行遗留系统评价并选择合适的演化策略,请说明具体实施过程以及应用效果。","analyze":"写作要点<br> 一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br> 二、对遗留系统评价的目的是获得对遗留系统更好的理解,是遗留系统演化的基础。主要评价方法包括度量系统技术水准、商业价值和与之关联的企业特征,其结果作为选择处理策略的基础。评价方法由一系列活动组成:<br> 1.启动评价:评价准备,数据搜集过程。<br> 2.业务价值评价:主要是判断遗留系统对企业的重要程度。<br> 3.外部环境评价:包括硬件、支撑软件和企业IT基础设施的统一体。<br> 4.应用软件评价:遗留系统本身的特征评价。<br> 5.分析评价结果:按照业务评价分值和技术水平分值的高低组合,将评价结果分为四种。<br> 根据四种评价结果选择不同的遗留系统演化策略。<br> 1.淘汰策略:评价结果为业务价值低、技术水平低的遗留系统。<br> 2.继承策略:评价结果为业务价值高、技术水平低的遗留系统。<br> 3.改造策略:评价结果为业务价值高、技术水平高的遗留系统<br> 4.集成策略:评价结果为业务价值低、技术水平高的遗留系统。<br> 三、考生需结合自身参与项目的实际状况,指出其参与管理和开发的项目中所进行的遗留系统评价与演化,说明评价活动的具体实施过程、演化策略如何选择,并对实际应用效果进行分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235594047967233","title":"试题四<br>\n论DevSecOps技术及其应用<br>\n随着互联网技术不断发展,网络安全面临着更大的挑战,IT安全防护显得越来越重要。采用DevOps技术能够有效推进软件开发的效率,提高迭代速度。但是,在传统的DevOps技术实施过程中,安全防护在开发的最后阶段才介入,延后的安全措施可能会拖累整个流程,严重影响DevOps的实施速度和效果。在这一背景下,业界普遍认为安全防护是整个IT团队的共同责任,需要贯穿至整个生命周期的每一个环节,由此催生出了“DevSecOps”这一概念,它强调在项目计划启动初期,必须为DevOps计划打下扎实的安全基础。<br>\n请围绕“DevSecOps技术及其应用”论题,依次从以下三个方面进行论述。<br>\n1.概要叙述你参与管理和开发的软件项目以及你在其中所承担的主要工作。<br>\n2.详细描述DevSecOps包含的主要阶段和每个阶段需要完成的工作。<br>\n3.结合你具体参与管理和开发的实际软件项目,说明是如何应用 DevSecOps 技术进行开发、运维、安全一体化管理的,给出具体实施过程以及应用效果。","analyze":"写作要点<br>\n一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。<br>\n二、典型的 DevOps流程包括计划、编码、构建、测试、发布和部署等阶段。在DevSecOps中,每个阶段都会应用特定的安全检查。<br>\n(1)计划:执行安全性分析并创建测试计划,以确定在何处、如何以及何时进行测试的方案。<br>\n(2)编码:部署检查工具和代码仓库控件(如Git控件)以保护密码和API密钥。(3)构建:在构建执行代码时,结合使用静态应用程序安全测试(SAST)工具来跟踪代码中的缺陷,然后再部署到生产环境中。这些工具针对特定的编程语言。<br>\n(4)测试:在运行时使用动态应用程序安全测试(DAST)工具来测试应用程序。这些工具可以检测用户身份验证、授权、SQL注入以及与 API相关端点的错误。<br>\n(5)发布:在发布应用程序之前,使用安全分析工具来进行全面的渗透测试和漏洞扫描。(6)部署:在运行时完成上述测试后,将安全的版本发送到生产环境中以进行最终部署。三、考生需结合自身参与项目的实际状况,指出其参与管理和开发的项目中是如何应用DevSecOps 技术进行开发、运维、安全一体化管理的,说明具体实施过程、使用的方法,并对实际应用效果进行分析。","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null},{"id":"796235579082690561","title":"试题四、信息系统数据转换和迁移。当新系统开发完毕准备取代现有系统时,就要面临新l日系统转化,系统转化是指运用某种方式由现有系统的工作方式向新系统工作方式的转化过程,也是系统设备,数据,人员等的转化过程,数据转化和迁移是新旧系统转化交接的重要工作之一。其基本原则就是数据不丢失。为使数据能平滑迁移到新系统,在新系统设计阶段就需尽量保留现有系统中合格的数据结构。这样才能尽可能的降低数据迁移的工作量和转换难度,数据迁移的质量是新系统上线的前提,也是新系统转换运行的保障,对系统切换至新系统的运行有着重要作用。<br>\n请围绕\"”信息系统数据转换与迁移\"论题,依次从三个方面论述<br>\n1.概要叙述你参与转化和交换的信息系统以及所担任的主要任务和主要工作<br>\n2.信息系统的数据转换与迁徙过程中可大致分为数据抽取,数据转换和数据迁移后的校验等三项活动,请对这三项活动的内涵和要点进行阐述。<br>\n3.详细说明你所参与转换和交接信息系统是如何进行数据转换和迁移工作的在,这一过程中遇到了哪些实际问题,是如何解决的。","analyze":"暂无","multi":0,"questionType":3,"answer":"","chooseItem":null,"itemList":null,"userAnswer":null,"userChooseItem":null,"answerCorrect":null,"userCollect":null}]}}