201205系分论文真题
第 1 题
请围绕“软件需求管理及其应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。
2.详细论述软件需求管理的主要活动及其所包含的主要内容。
3.结合你具体参与管理和开发的实际项目,说明是如何采用软件需求管理方法进行需求管理的,说明具体实施过程以及应用效果。
一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。
二、需求管理的主要活动有变更控制、版本控制、需求跟踪和需求状态跟踪。
1.需求变更管理过程包括:
(1)问题分析和变更描述。需要识别和分析需求问题,形成明确的变更协议,以检查它的有效性,从而产生一个更明确的需求变更提议。
(2)变更分析和成本计算。使用可追溯性信息和系统需求的一般知识,对需求变更提议进行影响分析和评估。变更成本计算应该包括对需求文档的修改、系统修改的设计和实现的成本。一旦分析完成并且被确认,应该进行是否执行这一变更的决策。
(3)变更实现。这要求需求文档和系统设计以及实现都要同时修改。
2.版本控制:主要包括确定需求文档版本。
3.需求跟踪:包括定义对其他需求的链接;定义对其他系统元素的链接;使用的工具即需求跟踪矩阵。
4.需求状态跟踪:定义需求状态;跟踪需求的每一个状态。
三、考生需结合自身参与项目的实际状况,指出其参与管理和开发的项目中所进行的需求管理活动,说明该活动的具体实施过程、使用的方法和工具,并对实际应用效果进行分析。
第 2 题
论敏捷开发在企业软件开发中的应用
敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。尽管目前敏捷开发的具体名称、理念、过程、术语尚不尽相同,但业界普遍认为:相对于“非敏捷”,敏捷开发更强调程序员团队与业务专家之间的紧密协作、面对面的沟通、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重软件开发中人的作用。
请围绕“敏捷开发在企业软件开发中的应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与实施的应用敏捷开发的软件项目以及你所担任的主要工作。
2.叙述你在软件项目实践过程中采用了怎样的敏捷开发基本原则并说明理由。
3.具体阐述该项目采用的敏捷开发方法,以及实施过程中存在问题和解决方法。
一、概要叙述你参与实施的应用敏捷开发的企业项目以及你所担任的主要工作。
二、叙述你在该企业项目实践过程中采用的敏捷开发基本原则并说明理由
2001年2月的“敏捷宣言”(Agile Manifesto)是由多位当时称之为“轻量级方法学家”所编写签署的,他们的价值观是:个人与交互重于开发过程与工具;可用的软件重于复杂的文档;寻求客户的合作重于对合同的谈判;对变化的响应重于始终遵循固定的计划。
1)个人与交互重于开发过程与工具:一个由优秀的人员组成但使用普通的工具,要比使用优秀的工具但由普通人组成、紊乱的小组做得更好。多年来人们花了很多时间试图建立一种过程,以便把人当作机器上的一个可以替代的齿轮,但结果却并不成功。敏捷过程是承认每个人都有特定的能力(以及缺点)对之加以利用,而不是把所有的人当成一样来看待。更重要的是,在这样的理念下,几个项目做下来,每个人的能力都从中得以提高。这种人的能力的提高,对公司是无价之宝。而不至于把人当成齿轮,随着时间的推移,人的能力慢慢被消耗掉,最后变成留之无用、弃之可惜的尴尬人物。
2)可用的软件重于复杂的文档:可用的软件可以帮助开发人员在每次迭代结束的时候,获得一个稳定的、逐渐增强的版本。从而允许项目尽早开始,并且更为频繁的收集对产品和开发过程的反馈。随着每次迭代完成软件的增长,以保证开发小组始终是处理最有价值的功能,而且这些功能可以满足用户的期待。
3)寻求客户的合作重于对合同的谈判的原因:敏捷开发小组希望与项目有关的所有团体都在朝共同方向努力,合同谈判有时会在一开始就使小组和客户处于争执中。敏捷开发追求的是要么大家一起赢,要么大家一起输。换句话说,就是希望开发小组和客户在面对项目的时候,以一种合作的态度共同向目标前进。当然,合同是必需的,但是如何起草条款,往往影响到不同的团体是进行合作式的还是对抗式的努力。
4)对变化的响应重于始终遵循固定的计划:敏捷开发认为对变化进行响应的价值重于始终遵循固定的计划。他们最终的焦点是向用户交付尽可能多的价值。除了最简单的项目以外,用户不可能知道他们所需要的所有功能的每个细节。不可避免地在过程中会产生新的想法,也许今天看起来是必需的功能,明天就会觉得不那么重要了。随着小组获得更多的知识和经验,他们的进展速度会比开始的时候期望值慢或者快。对敏捷开发来说,一个计划是从某个角度对未来的看法,而具有多个不同的角度看问题是有可能的。
(针对所承担项目的具体问题和特点,围绕敏捷开发基本原则的1项或多项进行论述均可)
三、具体阐述该企业采用的具体敏捷开发方法,以及实施的效果。
常见的敏捷开发方法有极限编程,Scrum,水晶方法等。
极限编程是敏捷软件开发中最富有成效的几种方法学之一,是敏捷过程的一种具体形式,提供敏捷方法最一般原则的指导方针,包括5项价值标准和12个实践操作。极限编程的主要目标在于降低因需求变更而带来的成本,极限编程透过引入基本价值、原则、方法等概念来达到降低变更成本的目的。
Scrum是一种迭代式增量软件开发过程,通常用于敏捷软件开发。包括了一系列实践和预定义角色的过程骨架。Scrum中的主要角色包括Scrum主管,产品负责人和开发团队。它使用迭代的方法,把每个30天一次的迭代称为一个“冲刺(sprint)”,按照需求优先级别来实现产品。多个自组织和自治小组并行递增地实现产品。通过简短的日常情况会议(称为“Scrum”)进行。
水晶敏捷方法发展和提倡了一种机动性的软件开发方法,定义了一系列方法,包含核心元素,角色、过程模式、工作产品和实践。水晶敏捷方法实际是一组经过证明对不同类型项目都非常有效的敏捷过程,其目的是使得敏捷团队可以根据其项目和环境选择最合适的水晶系列成员。
(论述只需说明一种具体的敏捷开发方法)
第 3 题
论信息化建设中的企业知识管理
企业知识管理(Enterprise Knowledge Management, EKM)是指利用现代信息技术,开发企业知识资源,调动人力资源学习潜能,并建立与之相适应的组织模式,推进企业现代化进程,提高企业核心竞争力和经济效益的过程。信息化建设是企业实施知识管理的基本工具,它为企业知识管理提供技术和资源支持;企业知识管理为解决信息化建设出现的问题提供理论指导。构建企业知识管理系统是信息化建设中企业知识管理的重要组成部分,利用知识管理系统对有价值的信息即知识进行强化管理,采用信息技术与人相结合的方式建立并管理联接于客户、企业及供应商之间的知识链,以整合组织知识学习过程,提高组织竞争力。
请围绕“信息化建设中的企业知识管理”论题,依次从以下三个方面进行论述。
1.概要叙述你参与的企业知识管理系统的开发项目以及你所担任的主要工作。
2.分析在信息化建设中实施企业知识管理的主要阶段,并详细阐述每个阶段的内容和主要工作。
3.企业知识管理系统的构成是与知识管理过程密切相关的,简要介绍你所参与构建的企业知识管理系统的主要模块及其功能。
答案与解析
- 试题难度:较难
- 知识点:论文写作>项目管理
- 试题答案:
- 试题解析:一、简要描述所参与的企业知识管理系统的开发项目,并明确指出在其中承担的主要任务和开展的主要工作。二、分析在信息化建设中实施企业知识管理的主要阶段,并详细阐述每个阶段的内容和主要工作。
信息化建设中实施企业知识管理包括五个主要阶段:
(1)认知阶段。统一企业对知识管理的认知,梳理知识管理对企业的作用与意义,评估企业的知识管理现状。帮助企业认识是否需要知识管理,并确定知识管理实施的正确方向。主要工作包括:全面完整的认识知识管理,对企业中高层进行知识管理认知,特别是让企业高层认识知识管理;利用知识管理成熟度模型等评价工具多方位评估企业知识管理现状及通过调研分析企业管理的主要问题;评估知识管理为企业带来的长、短期效果;从而为是否推进知识管理实践提供决策支持;制定知识管理战略和推进方向等。
(2)规划阶段。通过对知识管理现状、知识类型的详细分析,并结合业务流程等多角度,进行知识管理规划。主要工作包括:从战略、业务流程及岗位来进行知识管理规划;企业管理现状与知识管理发展的真实性分析;制订知识管理相关战略目标和实施策略,并对流程进行合理化改造;知识管理落地的需求分析及规划;在企业全面建立知识管理的理论基础。
(3)试点阶段。按照规划选取适当的部门和流程依照规划基础进行知识管理实践。并从短期效果来评估知识管理规划,同时结合试点中出现的问题进行修正。主要工作包括:每个企业都有不同的业务体系,包括:生产、研发、销售等,各不同业务体系的任务特性均不相同,其完成任务所需要的知识亦有不同,因此需要根据不同业务体系的任务特性和知识应用特点,拟订最合适、成本最低的知识管理方法。另外,考虑到一种业务体系下有多方面的知识,如何识别关键知识,并判断关键知识的现状,进而在知识管理模式的指导下采取有针对性的提升行为。
(4)推广和支持阶段。在试点阶段不断修正知识管理规划的基础上,知识管理将大规模在企业推广,以全面实现其价值。主要工作包括:知识管理试点部门的实践,在企业中其他部门的复制;知识管理全面的融入企业业务流程和价值链;知识管理制度初步建立;知识管理系统的全面运用;学习型组织、头脑风暴等知识管理提升计划的全面运行,并将其制度化。
(5)制度化阶段。企业重新定义战略,并进行组织构架及业务流程的重组,准确评估知识管理在企业中实现的价值。主要工作包括:企业开始意识到知识管理是企业运作的一种战略,而且有必要成为综合企业运作机制的一部分,从而把知识管理全面融入企业战略、流程、组织、绩效等管理体系。在此基础上,知识管理将逐渐演变为企业核心竞争力的一部分,有力促进企业每一位员工的发展。
三、企业知识管理系统的构成是与知识管理过程密切相关的。知识管理过程是知识生成、知识挖掘、知识重组和知识应用多个步骤相互连接、反复进行的交互过程,因此,知识管理系统可按下面的四个模块进行设计和开发。
(1)知识生成模块。本模块的目标是从海量的信息中抽取出针对某个应用领域的知识,它包括:确定某个应用领域,建立一个目标数据集,进行信息整理和预处理,对知识进行标记。
(2)知识挖掘模块。本模块的目标是按照一定的知识提取算法,从知识库中发现隐含的、有意义的知识,获取能改变对事物认识的知识。这些方法主要有关联分析、聚类、概念描述和偏差检测四类。
(3)知识重组模块。本模块是结合具体的用户需求,形成特定用户系统化的知识。具体方法就是运用情报研究领域的方法,如:层次分析法,将零散的知识转换为针对用户需求且让用户易于理解的知识。
(4)知识应用模块。本模块结合决策分析方法,如:SWOT方法、SPACE方法等,将知识重组得到的系统化的知识运用到实际生产运行过程中,从而形成新的知识,即决策备选方案或新的科技成果。
第 4 题
论大数据处理技术及其应用
近年来,互联网、云计算、移动计算和物联网技术迅速发展,数以亿计的网络用户、无所不在的移动设备、RFID和无线传感器时时刻刻都在产生海量的数据,并且需要处理的数据呈几何级数增长。另一方面,企业业务需求和竞争压力对海量数据处理的实时性、有效性提出了更高的要求,传统的数据处理方法往往无法适应这种变化。在这种背景下,企业需要针对“大数据”的应用特征,选取更加合适的数据处理方法与技术。
请围绕“大数据处理技术及其应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与实施的、与大数据处理相关的开发项目及你所担任的主要工作。
2.请从数据量、数据分析需求和硬件平台三个方面阐述大数据处理系统与传统数据处理系统的差异;列举并解释大数据处理系统应该具有的重要特征(至少列举四个)。
3.阐述你参与实施的项目在进行大数据处理时遇到了哪些问题,是如何解决的。
答案与解析
- 试题难度:较难
- 知识点:论文写作>数据库工程
- 试题答案:
- 试题解析:
一、论文中要介绍企业的业务背景、组织结构、数据分析需求、大数据处理系统的架构、采用的技术等内容和担任的实际工作。
二、从数据量、数据分析需求和硬件平台3个方面来看,大数据处理系统与传统数据处理系统之间的差异是:
1.从数据量角度看,传统数据处理系统可以处理的数据量一般在GB或TB级,而大数据处理系统需要处理的数据量一般都在PB级。
2.从数据分析需求角度看,传统数据处理系统主要关注常规的数据分析,包括对现有数据的分析和检测。大数据处理系统主要关注数据的深度分析(Deep Analytics),期望能够对未来趋势有更多的分析和预测,以增强企业竞争力。深度分析包括移动平均线分析、数据关联关系分析、回归分析等多种复杂统计分析方法。
3.从硬件平台角度看,传统数据处理系统主要由高端服务器构成。由于数据量迅速增加,数据库规模不断增加,从而导致系统成本急剧上升。出于成本考虑,越来越多的企业将大数据处理系统的硬件平台由高端服务器转向了由中低端硬件构成的大规模集群平台。
大数据处理系统应该具有的重要特征包括:
1.高度可扩展性。数据库不能依靠一台或少数几台机器的升级(scale-up,纵向扩展)满足数据量的爆炸式增长,而是希望能方便地做到横向可扩展(scale-out)来实现此目标。因此,大数据处理系统应该支持横向大规模可扩展,并支持大规模并行处理。
2.高性能。数据量的增长并没有降低对数据库性能的要求,反而有所提高。软件系统性能的提升可以降低企业对硬件的投入成本、节省计算资源,提高系统吞吐量。大数据处理系统应该能够快速响应复杂查询与分析。
3.高度容错。一方面,大数据系统所采用硬件集群平台,随着节点数的增加会带来节点失效概率的增加。另一方面,大数据的容错性要求在查询执行过程中,一个参与节点失效时,不需要重做整个查询。在这种情况下,系统不能依赖于硬件来保证容错性,要更多地考虑软件级容错。
4.支持异构环境。由于计算机硬件更新较快,一次性购置大量同构的计算机设备是不可取的,而且也会在未来添置异构计算资源。在这种情况下,大数据处理系统需要支持异构环境,并需要通过负载均衡、任务调度等方面的设计调整并提高系统的整体处理性能。
5.较短的分析延迟。分析延迟指的是分析前的数据准备时间。在大数据时代,分析所处的业务环境是变化的,因此也要求系统能动态地适应业务分析需求。在分析需求发生变化时,减少数据准备时间,系统能尽可能快地做出反应,快速地进行数据分析。
6.易用且开放的接口。传统的关系型数据库通常采用SQL进行数据查询。SQL的优点是简单易用,但其主要用于数据的检索查询,对大数据上的深度分析来说,是不够的。原因在于:(1)其提供的服务方式依赖于数据移动来实现:将数据从数据库中取出,然后传递给应用程序,该实现方式在大数据时代代价过高;(2)复杂的分析功能SQL难以胜任。因此,除对SQL的支持外,系统还应能提供开放易用的接口,让用户自己开发需要的功能。
7.较低成本。在满足需求的前提下,需要尽量降低硬件、软件、日常维护和管理人员等综合成本的指标。
8.向下兼容性。数据仓库技术发展了30多年,产生了大量面向客户业务的数据处理工具、分析软件和前端展现工具等。这些软件已被分析人员所熟悉,是大数据时代中小规模数据分析的必要补充。因此大数据分析系统需要考虑与传统数据分析工具的兼容性。
(以上特征,只要任意给出4个即可)
三、在进行大数据处理系统开发时可能遇到的问题包括:如何对数据需求进行梳理;如何选择底层数据存储系统(包括关系型数据库、NoSQL数据库等),如何选择合适的数据处理算法与处理流程;如何对处理算法进行调整,使其适应大数据处理平台的要求;等等。