1、2014年下半年软件水平考试(高级)系统架构师下午(论文)真题试卷及答案与解析 1 论软件需求管理 软件需求管理是一个对系统需求变更了解和控制的过程。需求管理过程与需求开发过程相互关联,初始需求导出的同时就要形成需求管理规划,一旦启动了软件开发过程,需求管理活动就紧密相伴。 需求管理过程中主要包含变更控制、版本控制、需求跟踪和需求状态跟踪等 4项活动,其目标是为项目管理人员建立一个软件需求基线,并保持软件计划、产品和活动与软件需求的一致性。 请围绕 “软件需求管理 ”论题,依次从以下三 个方面进行论述。 1概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。 2详细描述需求管理过程
2、中各个活动中的主要工作。 3详细说明你所参与的软件开发项目中,是如何进行软件需求管理的,实施的具体效果如何。 2 论非功能性需求对企业应用架构设计的影响 企业应用架构 (Enterprise Apphcation Architecture)描述了企业 IT系统的功能和技术实现内容,它在企业信息化建设中起到了统一规划、承上启下的作用,向上承接了企业战略发展方向和业务 模式,向下规划和指导企业各 IT系统的定位和功能。企业应用架构包括了企业的应用架构蓝图、架构标准、系统的边界和定义、系统间的关联关系等。其中非功能性需求是进行企业应用架构设计时需要重点考虑的因素,不同类型的非功能性需求从不同侧面影响
3、应用系统的架构设计。 请围绕 “非功能性需求对企业应用架构设计的影响 ”论题,依次从以下三个方面进行论述。 1概要叙述你参与分析和开发的企业应用系统项目以及你所担任的主要工作。 2分析在企业应用架构设计中应该考虑哪些非功能性需求,详细阐述这些非功能性需求是如 何影响架构设计的。 3详细说明你所参与的企业应用系统项目中,在进行系统架构设计时,考虑了哪些非功能性需求,如何通过架构设计满足了系统的这些非功能性需求。 3 论软件的可靠性设计 现代军事和商用系统中,随着系统中软件成分的不断增加,系统对软件的依赖性越来越强。软件可靠性已成为软件设计过程中不可或缺的重要组成部分。实践证明,保障软件可靠性最有
4、效、最经济、最重要的手段是在软件设计阶段采取措施进行可靠性控制,由此提出了可靠性设计的概念。可靠性设计就是在常规的软件设计中,应用各种方法和技术,使程 序设计在兼顾用户的功能和性能需求的同时,全面满足软件的可靠性要求。 请围绕 “软件的可靠性设计 ”论题,依次从以下三个方面进行论述。 1概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。 2简要说明目前比较主流的软件可靠性设计技术,结合项目实际情况,阐述所选择的可靠性设计技术及其原因。 3结合你具体参与管理和开发的实际项目,举例说明所选取的软件可靠性技术的具体实施过程,并详细分析实施效果。 4 论网络安全体系设计 随着社会信息化的
5、普及,计算机网络已 经在各行各业得到了广泛的应用。目前,绝大多数业务处理几乎完全依赖计算机和网络执行,各种重要数据如政府文件、工资档案、财务账目和人事档案等均依赖计算机和网络进行存储与传输。另一方面,针对计算机和网络的攻击活动日益猖獗,网络安全已经成为当前社会的主要安全问题之一。 在上述背景下,国家标准信息处理系统工程开放系统互联基本参考模型 第二部分:安全体系结构 (GB T 9387.21995)定义了基于 OSI参考模型 7层协议之上的信息安全体系,其核心内容是:为了保证异构计算机进程与进程之间远距离交换信息的 安全,定义了认证服务、访问控制服务、数据机密性服务、数据完整性服务和抗抵赖性
6、服务等 5大类安全服务,以及提供这些服务的 8类安全机制及相应的 OSI安全管理,并根据具体系统适当配置于 OSI模型的 7层协议之中。 请围绕 “网络安全体系设计 ”论题,依次从以下三个方面进行论述。 1概要叙述你参与管理和开发的软件项目以及你在其中承担的主要工作,并详细阐述该软件系统在网络安全方面的要求。 2请对 GB T 9387 21995中定义的 5大类安全服务进行描述,阐述每类安全服务的定义和主要实现手段。 3请结合项目实际,具体阐述你在项目中实现了上述 5大类安全服务中的哪些服务,具体运用了哪些实现手段。 2014年下半年软件水平考试(高级)系统架构师下午(论文)真题试卷答案与解
7、析 1 【正确答案】 一、简要描述所参与分析和开发的企业应用系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。 二、需求管理过程中主要包含变更控制、版本控制、需求跟踪和需求状态跟踪四项活动。 1变更控制活动的主要工作包括以下三项: (1)问题分析和变更描述。需要识别和分析需求问题,产 生一个明确的需求变更提议。 (2)变更分析和成本计算。使用可追溯性信息和系统需求的一般知识,对需求变更提议进行影响分析和评估。 (3)变更实现。这个过程要求需求文档和系统设计以及实现都要同时修改。 2版本控制活动主要包括定义需求文档的版本格式、制订需求文档的修改模式和确定需求文档版本等三项工作。 3需
8、求跟踪活动主要包括定义对其他需求的跟踪能力 (联系 )链和定义和编制每个需求同系统元素之间的联系文档等两项工作。 4需求状态跟踪活动主要包括定义需求状态和跟踪需求每一个 状态等两项工作。 三、以考生实际参与的软件系统开发项目为基础,描述该项目是如何进行软件需求管理的。考生回答时必须以项目实际的需求管理工作为基础,详细描述如何进行变更控制、版本控制、需求跟踪和需求状态跟踪等四项活动。 2 【正确答案】 一、简要描述所参与分析和开发的企业应用系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。 二、分析在企业应用架构设计中应该考虑哪些非功能性需求,详细阐述这些非功能性需求是如何影响架构设
9、计的。 在企业应用架构设计中应考虑的非功能需求主要包 括四类: (1)操作性需求。操作性需求指定了系统完成任务所需的操作环境及其可能的改变。它通常指操作系统、系统软件及需要交互的系统中所使用的信息系统,有时也包括比较重要的物理环境因素。操作性需求包括技术环境需求、系统集成需求、可移植性需求、可维护性需求。 (2)性能需求。性能需求的核心是性能问题,如响应时间、容量和可靠性。每一个需求必须是可测量的,才能进行基准比较,进而检验性能需求的成果。性能需求包括速度需求、容量需求、可用性与可靠性需求。 (3)安全需求。安全性是防止信息系统崩溃和数 据丢失的能力。新系统的开发人员必须保证系统的安全需求,提
10、供合理的预防措施以防止问题发生。安全性需求包括访问控制需求、加密与验证需求、病毒控制需求。 (4)文化与政治需求。文化与政治需求是指针对使用系统的不同国家所特有的需求。商业全球化背景下,企业扩展它们的系统以便供全世界的用户使用,从而创造巨大的商业价值。系统设计的一个重要方面是理解系统的世界文化和政治需求。文化与政治需求包括多语种需求、用户定制需求、未申明的术语、法律需求。 三、针对作者实际参与的企业应用系统开发项目,分别按照操作性需求、性能需求、安全需求和文化与政治需求中的一个或多个需求,说明如何选择和设计企业应用架构,并描述该架构设计所产生的实际应用效果是如何满足对应需求的。 3 【正确答案
11、】 一、简要叙述你参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。 二、一般来说,被认可的且具有应用前景的软件可靠性设计技术主要有容错设计、检错设计和降低复杂度设计等技术。 1容错设计技术 对于软件失效后果特别严重的场合,如 飞机的飞行控制系统、空中交通管制系统及核反应堆安全控制系统等,可采用容错设计方法。常用的软件容错技术主要有恢复块设计、 N版本程序设计和冗余设计三种方法。 (1)恢复块设计 恢复块设计就是选择一组操作作为容错设计单元,从而把普通的程序块变成恢复块。一个恢复块包含若干个功能相同、设计差异的程序块文本,每一时刻有一个文本处于运行状态。一旦该文本出现故
12、障,则用备份文本加以替换,从而构成 “动态冗余 “。 (2)N版本程序设计 N版本程序的核心是通过设计出多个模块或不同版本,对于相同初始条件和相同输入的操作结果,实行多数表决,防止其中某一模块版本的故障提供错误的服务,以实现软件容错。 (3)冗余设计 软件冗余设计技术实现的原理是在一套完整的软件系统之外,设计一种不同路径、不同算法或不同实现方法的模块或系统作为备份,在出现故障时可以使用冗余的部分进行替换,从而维持软件系统的正常运行。 2检错设计 在软件系统中,对无需在线容错的地方或不能采用冗余设计技术的部分,如果对可靠性要求较高,故障有可能导致严重的后果。这时一般采用检错技术,在软件出现故障后
13、能及时发现并报警,提醒 维护人员进行处理。 采用检错设计技术需要着重考虑几个要素:检测对象、检测延时、实现方式和处理方式。 (1)检测对象,即检测点和检测内容。在设计时应考虑把检测点放在容易出错的地方和出错对软件系统影响较大的地方,检测内容选取那些有代表性的、易于判断的指标。 (2)检测延时,在软件检错设计时要充分考虑到检测延时,如果延时长到影响故障的及时报警,则需要更换检测对象或检测方式。 (3)实现方式,最直接的一种实现方式是判断返回结果,如果返回结果超出正常范围,则进行异常处理。计算运行时间也 是一种常用的技术,如果某个模块或函数运行超过预期的时间,可以判断出现故障。另外,还有置状态标志
14、位等多种方法,自检的实现方式要根据实际情况来选用。 (4)处理方式。大多数检测采用 “查出故障一停止软件系统运行 报警 ”的处理方式,但也有采用不停止或部分停止软件系统运行的情况,这一般由故障是否需要实时处理来决定。 3降低复杂度设计 降低复杂度设计的思想就是在保证实现软件功能的基础上,简化软件结构,缩短程序代码长度,优化软件数据流向,降低软件复杂度,从而提高软件可靠性。 除了容错设计、检错设 计和降低复杂度设计技术外,人们尝试着把硬件可靠性设计中比较成熟的技术,如故障树分析 (FTA)、失效模式与效应分析 (FMEA)等运用到软件可靠性设计领域,这些技术大多数运用一些分析、预测技术,在软件设
15、计时就充分考虑影响软件可靠性的因素,并采取一些措施进行优化。 三、考生需结合自身参与项目的实际状况,指出其参与管理和开发的项目中是如何应用所选择的软件可靠性设计技术的,说明具体的实施过程、使用的方法和工具,并对实际实施效果进行分析。 4 【正确答案】 一、简要叙述所参与管理和开发的软件项目,明确指出在 其中承担的主要任务和开展的主要工作,详细说明该软件系统在网络安全方面的要求。 二、 GB T 9387 21995中定义了 5大类安全服务,分别是认证服务、访问控制服务、数据机密性服务、数据完整性服务和抗抵赖性服务。 1认证服务。认证服务的基本目的,是为了防止其他实体占用和独立操作被认证实体的身
16、份。认证服务提供了实体声称其身份的保证,只有在主题和验证者的关系背景下,认证才有意义。认证服务的主要实现方式包括以下 5种: (1)已有的信息,如认证口令。 (2)拥有的信息,如 IC卡、 令牌等。 (3)不可改变的特性,如指纹、虹膜等生物特征。 (4)相信可靠的第三方建立的认证。 (5)环境,如主机地址等。 2访问控制服务。访问控制服务决定开放环境中允许使用哪些资源、在什么地方适合组织为授权访问的过程。在访问控制实例中,访问可以是对一个系统或对系统内部进行。常见的访问控制服务的实现方式包括以下三种方式: (1)自主访问控制 (DAC)。自主访问控制是一种接入控制服务,通过执行基于系统实体身份
17、及其到系统资源的接入授权。包括在文件、文件夹和共享资源中设置许可。用户有权对自身所创建的文件、数据表等访问对象进行访问,并可将其访问权授予其他用户或收回其访问权限。允许访问对象制定针对该对象访问的控制策略,通常可通过访问控制列表来限定针对客体可执行的操作。 (2)强制访问控制 (MAC)。强制访问控制是系统强制主体服从访问控制策略,是由系统对用户所创建的对象,按照规定的规则控制用户权限及操作对象的访问。其主要特征是对所有主体及其所控制的进程、文件、段、设备等客体实施强制访问控制。 (3)基于角色访问控制 (RBAC)。基于角色访问控制主要通过对角色的访问进行控制, 使权限与角色相关联,用户通过
18、成为适当角色的成员而得到其角色的权限。用户可依其责任和资格分派相应的角色,角色可依新需求和系统合并赋予新权限,而权限也可根据需要从某角色中收回。 3数据机密性服务。数据机密性服务的目的是确保信息仅仅是对被授权者可用,信息的保护可以通过确保数据被限制于授权者获得,或通过特定方式表示数据来获得。信息的机密性主要通过以下两种方式实现: (1)通过禁止访问提供机密性,即可以通过访问控制,以及通过物理媒体保护和路由选择控制保证机密性。 (2)通过加密提供机密性,即 防止数据泄漏在传输或存储中。加密机制包括基于对称的加密机制和基于非对称的加密机制。 除此以外,还可以通过数据填充、通过虚假事件 (例如隐藏在
19、不可信链路上交换的信息流总量 )、通过保护 PDU头和通过时间可变域提供机密性。 4数据完整性服务。数据完整性服务的目的是通过阻止威胁或探测威胁,保护可能遭到不同方式危害的数据完整性和数据相关属性完整性,即保证数据不以未经授权方式进行改变或损毁。数据完整性的常见实现方式包括: (1)阻止对数据传输媒介访问的机制。包括物理隔离、不受干扰的信道,路由控制 ,访问控制等。 (2)探测对数据非授权修改的机制。包括密封、数字签名、数据重复、与密码变换相结合的数字指纹和消息序列号等。 5抗抵赖服务。抗抵赖服务是提供有关特定事件或行为的证据,包括证据的生成、验证和记录,以及在解决纠纷时随即进行的证据恢复和再次验证。抗抵赖性服务的实现方式主要包括数字签名、用户认证、操作日志等技术。 三、考生必须以问题 l回答中给出的实际网络安全需求为基础和依据,针对实际需求具体阐述在项目中实现了上述 5大类安全服务中的哪些服务,并针对每种安全服务,具体描述在项目中采用了何 种实现手段。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1