搜档网
当前位置:搜档网 › 系统架构设计师设计论文

系统架构设计师设计论文

系统架构设计师设计论文
系统架构设计师设计论文

[模拟] 系统架构设计师设计论文

案例分析

第1题:

论面向服务的体系结构在系统集成中的应用

面向服务的体系结构(Service Oriented Architecture,SOA)作为一种体系结构模型,将应用程序的不同功能单元通过一些良好定义的接口联系起来。接口是采用中立的方式进行定义的,它独立于实现服务的硬件平台、操作系统和编程语言。这使得构建服务可以以一种统一和通用的方式进行交互。

请围绕“SOA在系统集成中的应用”论题,依次从以下的3个方面进行论述:

①概要叙述你参与分析与开发的系统集成项目,以及你在其中所担任的主要工作。

②详细论述SOA中的关键技术,以及你熟悉的工具和环境对SOA的支持。

③通过你的切身实践详细论述SOA在系统集成中发挥的作用和优势。

参考答案:

面向服务的体系结构是一种新的体系结构风格,它具有松耦合和面向软件服务的特点,具有很高的重用性和灵活性。关于SOA的详细介绍请参看“8.1.6面向服务的架构(SOA)”。在撰写本文时,要注意以下几个方面:①简单介绍你参与分析与开发的系统集成项目情况和背景,以及你在其中所担任的主要工作,说明为什么要使用SOA。②详细论述SOA中的关键技术,以及你熟悉的工具和环境对SOA的支持。要注意的是不要逐个地对技术进行讨论,而只是根据你的项目实际情况,具体地讨论2~3个技术的应用就可以了。③根据你的项目应用情况,详细介绍SOA在系统集成中发挥的作用和优势。

详细解答:

第2题:

论软件的静态演化和动态演化及其应用

软件演化(Software Evolution)是指软件在其生命周期内的更新行为和过程。演化是一系列贯穿软件生命周期始终的活动,系统需求改变、功能实现增强、新功能加入、软件架构改变、软件缺陷修复、运行环境改变均要求软件系统能够快速适应变化,具有较强的演化能力。软件静态演化(Static Evolution)和动态演化(Dynamic Evolution)是目前软件演化的两种重要类型。

请围绕“软件的静态演化和动态演化及其应用’’论题,依次从以下3个方面进行论述:

①概要叙述你参与管理和开发的软件项目及你在其中所担任的主要工作。

②请分别对软件静态演化和动态演化的特点进行论述,说明两种软件演化类型各自的优缺点及其应用场合,并举例说明各自的常见演化技术手段。

③具体阐述你参与管理和开发的项目中所进行的软件演化活动的特点、演

化的类型,以及所采取的对应演化技术手段,说明具体实施过程及实际应用的效果。

参考答案:

本题考查的知识点是软件演化。一个软件系统开发完毕正式投入使用之后,如果需求发生变化,或者要将该系统移植到另一个环境运行,且新环境的需求也有相应的变化时,就要对软件进行修改,这就是软件演化。软件演化是一个程序不断调节以满足新的软件需求的过程,也就是对一个已有软件不断进行修改、补充、完善以适用新需求和环境变化的过程。由于软件演化一词并不多见,所以难倒了很多考生。其实换一种讲法,可能大家就倍感亲切了——“软件升级”,其实演化的本质就是在升级。既然是升级,静态演化与动态演化是怎么回事也就好理解了,即升级时是否停止系统的运行。所以如果有了上面的基础概念理解,写该论文的方向也就明晰了。文章共分3个部分组织内容。第一部分,简要叙述作者所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。第二部分,偏理论,需要介绍静态演化和动态演化的基本情况,写作时可参考以下材料。静态演化(Static Evolution),静态演化是指软件在停机状态下的演化。其优点是不用考虑运行状态的迁移,同时也没有活动的进程需要处理。然而停止一个应用程序就意味着中断它提供的服务,造成软件暂时失效。软件静态演化是指发生在应用程序停止时的软件修改和更新,即一般意义上的软件维护和升级。静态演化的优点是没有状态迁移或活动线程的问题要解决,缺陷是停止应用程序意味着停止它所提供的服务,也就是使软件系统暂时失效。在软件交付之后,静态演化(类似于一般意义上的软件维护)就成为软件变更的一个常规过程。变更可以是一种更正代码错误的简单变更,也可以是更正设计错误的较大范围的变更,还可以是对描述错误进行修正或提供新需求这样的重大改进。有3种不同的软件维护:改正性维护、适应性维护和完善性维护。维护过程一般包括变更分析、版本规划、系统实现和向客户交付系统等活动。在面向对象技术中,使用子类型方法来扩展程序,它适合于软件静态演化和代码重用。子类型化一个类意味着保留父类中的参数和方法,并尽可能地增加新的参数和方法。另外,使用重载和多态性作为主要的演化机制。实际上,建立类的新版本,最简单的机制是创建它的子类,然后重载需要变更的方法,最后,使用多态性调用新创建的方法。在基于构件的软件技术中,构件采取接口和实现相分离技术,构件之间只能通过接口进行通信,这使得具有兼容接口的不同构件实现可以相互取代,从而成为软件静态演化的一条途径。动态演化(Dynamic Evolution),动态演化是指软件在执行期间的软件演化。其优点是软件不会存在暂时的失效,有持续可用性的明显优点。但由于涉及状态迁移等问题,比静态演化从技术上更难处理。动态演化是最复杂也是最有实际意义的演化形式。动态演化使得软件在运行过程中,可以根据应用需求和环境变化,动态地进行软件的配置、维护和更新,其表现形式包括系统元素数目的可变性、结构关系的可调节性和结构形态的动态可配置性。软件的动态演化特性对于适应未来软件发展的开放性、动态性具有重要意义。动态演化是指软件在运行期间的演化。在许多重要的应用领域中,如金融、电力、电信及空中交通管制等,系统的持续可用性是一个关键性的要求,运行时刻的系统演化可减少因关机和重新启动而带来的损失和风险。此外,越来越多的其他类型的应用软件也提出了运行时刻演化的要

求,在不必对应用软件进行重新编译和加载的前提下,为最终用户提供系统定制和扩展的能力。动态演化可分为两种类型:预设的和非预设的。在Web环境中,软件应用常常需要处理多种类型的信息,因此它们常被设计为可以动态下载并安装插件以处理当前所面临的新类型的信息;而分布式Web应用也常常需要增减内部处理节点的数目以适应多变的负载。这些动态改变都是软件设计者能够预先设想到的,可实现为系统的固有功能。另有一些必须对系统配置进行修改和调整的情况是直到系统投入运行以后才发现的,这就要求系统能够处理在原始设计中没有完全预料到的新需求。这种情况下一般需要关闭整个系统,重新开发、重新装入并重新启动系统。然而,为了进行局部的修改而关闭整个系统在某些情况下是不允许的(如关键运行系统)或者代价太高。精心设计的动态演化技术可以在不关闭整个系统的前提下修改系统的结构配置,并尽量使未受影响的部分继续工作以提高系统的可用度。为支持软件的动态演化性,已在语言、机制和环境等方面做了大量工作。在程序语言的层次上,引进各种机制以支持软件动态演化,例如,动态装载技术允许增加代码到已运行的程序中,延迟绑定是在运行时而不是编译时决定类和对象的绑定。Javahotswap允许在运行时改变方法:当一个方法终止时这个方法的新版本可以有效地替换旧版本,在类层次上代码的二进制兼容被支持。Gilgul语言也允许更换运行时对象。但程序语言层次上的动态演化机制仅局限于函数、类方法和对象等小粒度的替换,只支持预设的有限变更,变更由事件触发。通过标准化运行级构件的规约,依靠构件运行平台(中间件平台)提供的基础设施,使软件在构件层次上的动态演化成为可能。中间件中具有的如命名服务、反射技术和动态适配等机制,为运行态构件的动态替换和升级提供支撑,从而推动了软件动态演化的发展。命名服务就是给构件实例提供一个名称,以便客户通过这些名称来获取构件实例。对工业标准构件EJB和CORBA构件的引用都可以通过中间件平台的命名服务进行。同一构件标识可以被映射到多个构件实例,从而根据具体情境对某一名字的构件引用导向到不同的构件实例。反射技术是系统的一种自描述(Self-Representation)和自推理的技术,它提供了关于自身行为的表示,这种表示可以被检查和调整,且与它所描述的系统行为是因果相联(Causally Connected)的。因果相联,意味着对自身表示的改动将立即反映在系统的实际状态和行为中,反之亦然。将反射性引入中间件能够以可控的方式开放平台内部的实现,从而提高中间件的定制能力和运行时的适应能力。动态适配机制中比较著名的是CORBA提供的动态接口服务:动态调用接口DⅡ和动态骨架接口DSI。前者支持动态客户请求调用,而后者支持将请求动态指派(Dispatch)给构件。因此,软件构件化技术使得软件具有良好的构造性,软件演化的粒度更大。中间件技术则为基于构件的软件动态演化提供了坚实的基础设施和方便的操作界面。第三部分需要结合作者自身的项目情况进行描述,这部分应是详细描述的部分。

详细解答:

第3题:

论大规模分布式系统缓存设计策略

大规模分布式系统通常需要利用缓存技术减轻服务器负载、降低网络拥塞、增强系统可扩展性。缓存技术的基本思想是将客户最近经常访问的内容在缓存服务器中存放一个副本,当该内容下次被访问时,不必建立新的数据请

求,而是直接由缓存提供。良好的缓存设计,是一个大规模分布式系统能够正常、高效运行的必要前提。在进行大规模分布式系统开发时,必须从一开始就针对应用需求和场景对系统的缓存机制进行全面考虑,设计一个可伸缩的系统缓存架构。

请围绕“大规模分布式系统缓存设计策略”论题,依次从以下3个方面进行论述:

①概要叙述你参与实施的大规模分布式系统开发项目及你所担任的主要工作。

②从不同的用途和应用场景考虑,请详细阐述至少两种常见的缓存工作模式,并说明每种工作模式的适应场景。

③阐述你在设计大规模分布式系统的缓存机制时遇到了哪些问题,如何解决。

参考答案:

①论文中要具体介绍项目的总体需求(特别是应用需求中对缓存机制的要求)、系统的逻辑与物理架构、采用的技术等内容和担任的实际工作。②从不同的用途和应用场景来考虑,大体上可以将缓存分为3种工作模式,即单实例缓存模式(Single Instance)、复制模式(Replication Cache)和分区模式(PartitionCache)。每种工作模式都有其适应的场景和优缺点。·单实例模式。单实例模式是一种较为简单的缓存模式,多个应用服务器共享一个中央的缓存服务器。通过共享缓存的数据,能够极大提高系统的性能。该模式的主要限制在于缓存服务器的内存大小和节点增加之后服务器的处理能力和网络带宽。该模式的适应场景是:对缓存的要求比较简单;系统的吞吐量和数据量不大;性能要求不高。·复制模式。复制模式将缓存的数据复制到多台机器上,对于单一缓存服务器性能出现问题的情况下,可以通过缓存复制的方式将压力分解到多个缓存服务器。该模式的工作原理是:缓存客户端可以访问自己的缓存服务器,多个缓存服务器之间的数据是彼此同步的,对于性能要求更高的场景,这样的部署架构能够获得更高的吞吐能力。该模式的适应场景是:数据量不是特别大;需要极高的性能;数据改动的频率不是特别大。·分区模式。当需要缓存的数据已经超过一台服务器的内存上限时,可以考虑采用分区模式对数据进行线性缩放,也就是通过增加缓存服务器来解决数据增长和压力增加的情况。在分区模式中,其架构是无分享架构(Shared NothingAchitecture,SNA),每个节点之间数据彼此独立,一个节点出现故障后不会影响到其他节点。在出现某个节点宕机或者其他故障的情况下,致使这部分的分区缓存无法使用,并不妨碍其他数据节点数据的正常工作。该模式的适应场景是:总体数据量较大,已经超出了单个缓存服务器的内存上限;系统缓存要求具有很大的可伸缩性;客户端数量庞大,单个客户端对缓存数据的数据量要求不大。③进行大规模分布式系统缓存机制设计时可能遇到的问题包括如何缓存服务器的工作模式选择;高可用性的设计考虑;缓存一致性与分布式算法;对象状态同步的考虑;缓存钝化/激活/过期和初始化,等等。

详细解答:

第4题:

论基于REST服务的Web应用系统设计

REST(REpresentational State Transfer)是指从几种基于网络的架构风格衍生出来的一种混合架构风格,它是目前互联网的核心架构风格。基于REST服务(RESTfulService)的Web应用系统设计任务主要包括:识别并设计REST风格的服务,采用面向服务的思想进行REST J~务集成。采用这种方法设计的Web

应用系统能够结合REST风格和面向服务思想的优点,近年来受到了广泛的关注。

请围绕“基于REST服务的Web应用系统设计”论题,依次从以下3个方面进行论述:

①概要叙述你参与实施的Web应用系统开发项目及你所承担的主要工作。

②简要叙述与传统的Web服务相比,采用REST服务构建的Web应用具有哪些优势和不足。

③阐述你在设计基于REST服务的Web应用系统时遇到了哪些问题,如何解决。

参考答案:

①论文中要具体介绍项目的总体需求(特别是质量属性需求)、Web应用系统的逻辑与物理拓扑结构、采用的技术等内容和承担的实际工作。②REST(REpresentational State Transfer)是指从几种基于网络的架构风格衍生出来的一种混合架构风格,目前Web的体系结构正是基于REST风格的。REST风格中的特点是客户端/服务器、无状态、缓存、统一接口、分层系统和按需代码。REST组件通过以一种数据格式转移资源的表述进行通信,可以基于接收者的能力和期待的内容,以及资源的性质动态地选择不同的表述。与传统的Web服务相比,REST服务主要有以下优势:· RESL服务基于W3C/IETF的标准与规范(包括HTTP、XML、URI和MIME等),其实现技术简单、成熟。· REST 服务基于URT和超链接技术,不需要通过集中式的服务信息仓库即可发现服务资源。· REST服务支持缓存,具有无状态的特性,这些使得REST服务能够支持大量客户端,构建的应用系统具有较强的伸缩性。· REST服务基于轻量级的Web框架,仅仅需要基本的开发工具支持,构建过程简单且成本较低。·REST服务的测试相对简单,采用浏览器即可完成服务功能测试。与传统的Web服务相比,REST服务主要存在如下不足:· REST服务倡导的REST风格与实际实现尚存在一定差距。例如,高层REST服务倡导使用GET、PUT、POST和DELETE所有4个统一接口,在REST实现部分通常只能采用GET和POST 接口,因为大多数的代理和防火墙会屏蔽其他接口;并且XHTML表单中只能使用GET和POST接口。· REST服务要求所有的输入参数都必须在URI中传递,这样会产生对参数容量大小的限制(目前的大小是4KB)。如果超出该数量,会导致HTTP协议错误(错误代码414:Request-URI too long)。·在URI中表达复杂类型的参数比较困难,且目前对URI中的参数不存在一种公认的编组(marshalling)和解编(un-marshalling)方法。③进行基于REST服务的Web 应用系统的设计时可能遇到的问题包括:如何识别并设计REST风格服务;构建REST服务的运行环境,HTTP服务器与应用服务器选型等;富客户端表现方式及编程语言的选择;系统逻辑与物理拓扑结构的分析与设计等。

详细解答:

第5题:

论中间件技术在软件开发中的作用

随着软件应用越来越复杂,软件开发“一切从零开始”的开发模式也越来越不能满足应用的要求。一些著名的软件公司推出自己的中间件产品,如通信中间件、数据库中间件等为软件开发提供有力的支持。

请围绕“中间件技术在软件开发中的作用”这个论题,依次从以下3个方面进行论述:

①概要叙述你参与分析和开发的应用项目,以及你所担任的主要工作。

②具体讨论你在软件开发过程中选取中间件的原则和标准,结合实例详细叙述中间件技术在你的软件开发中的作用。

③假如你在一个软件公司中能够起到影响公司决策的作用,请你结合市场和技术因素,为你的公司设计一个有自主版权的中间件的方案,并评价你的方案。

参考答案:

中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户/服务器的操作系统之上,管理计算资源和网络通信。从定义中可以看出:①中间件是一类软件,而非一种软件。

②中间件不仅要实现互联,还要实现应用之间的互操作。③中间件是基于分布式处理的软件,最突出的特点是其网络通信功能。1、中间件的分类根据功能的不同,中间件可以细化为以下一些种类:①通信处理(消息)中间件。在不同平台之间通信,实现分布式系统中可靠的、高效的、实时的跨平台数据传输,称为消息中间件。这是中间件中唯一不可缺少的,是需求量最大的中间件产品,目前在大部分操作系统中已包含了其部分功能。⑦事务处理(交易)中间件。在分布式事务处理系统中要处理大量的事务,常常在系统中要同时进行上万笔事务。在联机事务处理系统(OLTP)中,每笔事务常常要多台服务器的程序顺序地协调完成,一旦中问发生某种故障时,不但要完成恢复工作,而且要自动切换系统,达到系统永不停机,实现高可靠性运行;同时要使大量事务在多台应用服务器实时并发运行,并进行负载平衡地调度,实现昂贵的小型机和大型计算机系统同等的功能,为了实现这个目标,要求系统具有监视和调度整个系统的功能。一个事务处理平台,根据X/OPEN的参数模型规定,应由事务处理中间件、通信处理中间件,以及数据存取管理中间件3部分组成。③数据存储管理中间件。在分布式系统中,重要的数据都集中存放在数据服务器中,它们可以是关系型、复合文档型、具有各种存放格式的多媒体型,或者是经过加密或压缩存放的,该中间件为在网络上虚拟缓存、格式转换、解压等带来了方便。④Web 服务中间件。浏览器图形用户界面已成为公认规范,然而它的会话能力差、不能做数据写入、受HTTP协议的限制等,必须进行修改和扩充,这形成了Web服务器中间件。⑤安全中间件。一些军事、政府和商务部门上网的最大障碍是安全保密问题,而且不能使用国外提供的安全措施(如防火墙、加密、认证等),必须用国产的产品。产生不安全因素是由操作系统引起的,但必须要用中间件去解

决,以适应灵活多变的要求。⑥跨平台和体系结构的中间件。当前,开发大型应用软件通常采用基于体系结构和构件的技术,在分布系统中,还需要集成各节点上的不同系统平台上的构件或新老版本的构件,由此产生了体系结构中间件,功能最强的是CORBA,可以跨任意平台,但是太庞大;Java Bean较灵活简单,很适合于做浏览器,但运行效率差;DCOM模型主要适合windows平台,已广泛使用。实际上国内新建系统主要是UNIX(包括Linux)和Windows,因此针对这两个平台建立相应的中间件要实用得多。⑦专用平台中间件。为特定应用领域设计参考模式,建立相应体系结构,配置相应的构件库和中间件,为应用服务器开发和运行特定领域的关键任务(如电子商务、网站等)。⑧其他中间件。现在出现了一些中间件,如数据流中间件、门户中间件,以及为某些专业领域如银行、电信等开发的专用中问件。另外还有一些更高层的中间件,多用于系统整合,包括企业应用集成中间件、工作流中间件、门户中间件等是多种中间件的组合。

2、中间件的优点及其应用中间件作为一大类系统软件,与操作系统、数据库管理系统并称“三套车”,其重要性是不言而喻的,中间件的优点应该说是有目共睹的。它的优越性体现在以下几个方面:缩短应用的开发周期;节约应用的开发成本;减少系统初期的建设成本;降低应用开发的失败率;保护已有的投资;简化应用集成;减少维护费用;提高应用的开发质量;保证技术进步的连续性;增强应用的生命力。具体地说,中间件屏蔽了底层操作系统的复杂性,使程序开发人员面对一个简单而统一的开发环境,减少了程序设计的复杂性,将注意力集中在自己的业务上,不必再为程序在不同系统软件上的移植而重复工作,从而大大减少了技术上的负担。中间件带给应用系统的不只是开发的简便、开发周期的缩短,还减少了系统的维护、运行和管理的工作量,同时减少了计算机总体费用的投入。Standish的调查报告显示,由于采用了中问件技术,应用系统的总建设费用可以减少50%左右。在网络经济、电子商务大发展的今天,从中间件获得利益的不只是IT厂商,IT用户同样是赢家,并且是更有把握的赢家。其次,中间件作为新层次的基础软件,其重要作用是将不同时期、在不同操作系统上开发的应用软件集成起来,彼此像一个天衣无缝的整体协调工作,这是操作系统、数据库管理系统本身做不了的。中间件的这一作用,使得在技术不断发展之后,我们以往在应用软件上的劳动成果仍然物有所用,节约了大量的人力、财力的投入。

3、中间件的发展趋势中间件作为构筑企业信息系统和电子商务系统的基石和核心技术,向着标准化和构件化方向发展。具体来看,有以下3种发展趋势:①规范化。在中间件的发展过程中,做得最好的一件事情就是规范的制定。对于不同类型的中间件,目前都有一些规范可以遵循,如消息类的JMS,对象类的CORBA和COM/DCOM,交易类的XA、OTS、JTA/JTS,应用服务器类的J2EE,数据访问类的ODBC和JDBC,Web服务有SOAP、WSDL、UDDI等。这些规范的建立极大地促进了中间件技术的发展,同时保证了系统的扩展性、开放性和互操作。②构件化和松耦合。除了已经得到较为普遍应用的CORBA、DCOM 等适应Intranet的构件技术外,随着企业业务流程整合和电子商务应用的发展,中间件技术朝着面向Web、松耦合的方式发展。基于XML和Web服务的中间件技术,使得不同系统之间、不同应用之间的交互建立在非常灵活的基础上。XML是一种可扩展的源标识语言,它提供了一种新的定义标识语言标准。XML技术非常适合于异构系统间的数据交换,因此在国际上已经被普遍采纳为电子商务的数据标准。而Web服务作为基于Web技术的构件,在流程中间件的控制和集成下可以灵活、动态地被组织成为跨企业的商务应用。③平台化。目前,一些大的中

间件厂商在已有的中间件产品基础上,都提出了完整的面向互联网的软件平台战略计划和应用解决方案。4、选用中间件的原则①技术成熟度。不同的中间件的发展历史都不同。由于中间件涉及的技术面广,与操作系统、网络、数据库和应用都有关系,因此中间件从诞生到成熟需要2~3年的时间。中间件的技术成熟度是一个很需要关注的问题。②先进性。中间件的技术先进性主要看它是不是符合国际的潮流,是否采用了各种标准化的做法。比如,它能不能支持HTlML、JavaScript、XML这样一些国际标准的语言环境。因为大量的应用软件都是在语言环境下发展起来,现在计算机上的这些语言环境已经很成熟,手机上也开始有了Java,机顶盒如果不支持这些标准的话,将来很难做到应用服务的通用。如果中间件技术上能达到国际开放标准水平的话,就很容易向上发展了。包括MHP和MHEG和美国的OPENCABEL在内的一系列的中间件标准,只要中间件支持JavaScript、HTML和XML等通用语言,这3种常用中间件的主流模块都可以移植到我们的应用服务里。③与遗留应用的结合度。如果选用中间件构造的应用与传统的遗留应用要建立联系的话,就必须考虑这个问题。④使用的难易程度。每类中间件使用的难度也不尽相同。有些中间件只是你的应用的一部分,而有些中间件将会给你的应用一个新的体系结构。应用的现状、应用开发队伍的水平、中间件本身的复杂程度等,都会影响中间件的使用效果。⑤成本。不同类的中间件的成本不同,如把消息中间件只是用在局域网上实现数据访问显然代价太大,把交易中间件用在非交易处理类系统中去传递消息同样不可取。另外也要考虑技术培训对开发成本带来的影响。⑥技术方向。有的中间件比较传统,而有的中间件是发展方向,中间件的选择与对软件技术发展趋势的把握紧密相关。如果企业已决定用构件技术或Web技术,就要选择相关的中间件。⑦适用性。好的中间件要带一个非常丰富的应用库。中间件的一个最大作用就是重复使用已经开发过的应用软件模块,通常这些模块都是以库单元的方法来实现的,中间件在实际应用中越成功,开发的应用程序越多,它带的库就越丰富,使用者就可以越简便地开发或修改自己需要的新服务,这就是知识的积累。通过以上分析,可以对中间件技术有一个全面的了解,除了基础技术的了解,写好本文,还要注意以下要点:①用400~600字简单介绍你参与分析和开发的应用项目,以及你所担任的主要工作。②简单介绍中间件的种类及作用。③具体讨论你在软件开发过程中选取中间件的原则和标准,结合实例详细叙述中间件技术在你的软件开发中的作用。④结合市场和技术因素,为你的公司设计一个有自主版权的中问件的方案,并评价你的方案。

详细解答:

第6题:

论基于Web的数据库应用系统的开发技术

浏览器和HTTP协议在全球因特网的成功应用,促进了企业中的B/S结构的迅速推广。基于Web的数据库应用系统通常采用三层(或更多层)C/S结构,允

许用于各类不同的平台和选择相应的数据库应用环境。

请围绕“基于Web的数据库应用系统的开发技术”论题,依次从以下3个

方面进行论述:

①概要叙述你参与分析和开发的软件项目,以及你所担任的主要工作。

②具体讨论你在基于Web的数据库应用系统开发中所采用的主要技术,包

括开发过程中遇到的问题和所采取的措施。

③分析你所采用的开发技术的具体效果。现在你认为应当做哪些方面的改进,以及如何加以改进?

参考答案:

完成本题的写作,需要对Web开发的相关架构有充分的了解,相关知识可参看“8.1.5分层架构”。除了解技术知识,在写作方面还要注意以下几个方面的要点:①在文章中首先用400-600字的篇幅简要叙述自己参与分析和开发的系统概要和所担任的工作。②具体讨论在基于Web的数据库应用系统开发中所采用的主要技术,包括开发过程中遇到的问题和所采取的措施。特别要注意描述三层结构的逻辑和物理部署,讨论数据是如何在三层之间传送的。③最后要根据项目实际情况,分析所采用的开发技术的具体效果,你现在认为还有哪些可以改进的地方(例如,应用服务器性能的改进等),如何加以改进。

详细解答:

第7题:

论数据库的安全性设计

通常,信息系统的安全性指的是采取必要的安全保护方面的技术和管理措施,保护硬件、软件和数据不因偶然的或恶意的原因而受到破坏、更改和泄露。其中数据库的安全性设计有着十分重要的作用(包括物理安全与逻辑安全)。

根据你实际参与开发和设计的经验,论述下列3个问题:

①简述你开发与设计的软件概要和你所担任的工作。

②具体叙述你在数据库应用系统开发中是如何使用安全性设计技术的,包括采用过哪些主要技术,遇到过哪些实际问题,采取过哪些相应的措施。

③简述你所采用的数据库安全性设计技术的效果,以及你有哪些主要的使用体会和进一步的设想。

参考答案:

数据库的安全性是指保护数据不被破坏和不被非法窃取,包括物理安全性和逻辑安全性。1、物理安全性要保证数据库的物理安全性,除了健全机房管理制度,提高防火、防盗、防雷击等基础设施以外,最重要的就是要有一个好的数据库备份策略。数据库备份是指对重要的数据制作一份拷贝,并将其存储在安全的地方。备份系统为一个目的而存在:尽可能快地全盘恢复运行计算机系统所需的数据。根据系统安全需求可选择的备份机制有:场地内高速度、大容量自动的数据存储、备份与恢复;场地外的数据存储、备份与恢复;对系统设备的备份。备份不仅在网络系统硬件故障或人为失误时起到保护作用,还在入侵者非授权访问、攻击网络和破坏数据完整性时起到保护作用,同时也是系统灾难恢复的前提之一。一般的数据备份操作有3种:一是全盘备份,即将所有文件写入备份介质;二是增量备份,只备份那些上次备份之后更改过的文件,这是最有效的备份方法;三是差分备份,备份上次全盘备份之后更改过的所有文件,

其优点是只需两组磁带就可以恢复最后一次全盘备份的磁带和最后一次差分备份的磁带。在确定备份的指导思想和备份方案之后,需要选择安全的存储媒介和技术进行数据备份。一般来说,备份的硬件设备包括磁盘、磁带和光盘塔。而利用磁盘备份的方法常用的是磁盘镜像、磁盘双工和磁盘阵列,其中磁盘镜像是指系统中使用两块一样大小的磁盘,在写入数据时,先将数据写入源盘,然后再写入镜像盘,这样镜像盘中的数据与源盘的数据一模一样,从而起到了备份的作用。而磁盘双工是两个互为备份的盘同时写入。磁盘阵列是指将多个类型、容量、接口甚至品牌一致的专用磁盘或普通磁盘连成一个阵列,使其能以某种快速、准确和安全的方式来读写磁盘数据。其主要功能是可以提高网络数据的可用性及存储容量,并能够免除单块硬盘故障所带来的灾难性后果。因此,磁盘阵列是一种高效、快速、易用的网络存储备份设备。备份的技术有“冷备份”和“热备份”两种。热备份是指“在线”的备份,即下载备份的数据还在整个计算机系统和网络中,只不过传到另一个非工作的分区或另一个非实时处理的业务系统中存放,如前面提到的磁盘镜像、磁盘双工和磁盘阵列都属于热备份。“冷备份”则是指“不在线”的备份,下载的备份存放到安全的存储媒介中,而这种存储媒介与正在运行的整个计算机系统和网络没有直接联系,在系统恢复时重新安装,有一部分原始的数据长期保存并作为查询使用。磁带就是一种冷备份的设备。热备份的优点是调用快,使用方便,在系统恢复中需要反复调试时更显优势,但投资比较昂贵。冷备份则弥补了热备份的一些不足,二者优势互补,相辅相成,冷备份在回避风险中还具有便于保管的特殊优点。在进行备份的过程中常使用备份软件,它一般应具有以下功能:保证备份数据的完整性,并具有对备份介质的管理能力;支持多种备份方式,可以定时自动备份,还可以设置备份自动启动和停止日期;支持多种校验手段(如字节校验、CRC循环冗余校验、快速磁带扫描),以保证备份的正确性;提供联机数据备份功能;支持RAID容错技术和图像备份功能。与备份同样重要的是在备份完成之后对它们进行存储。备份的目的是为了在发生事故时能够及时进行恢复,而事故的类型可能从用户误删数据到站点的灾难性毁坏。前者需要备份处于附近位置以便于快速恢复,而后者却要求将备份存储在其他地方。实践证明,最好的方法是将备份存储在其他地方,最大程度地保护数据。当需要还原时,再将备份及时取回。日常备份制度描述了每天的备份以什么方式、使用什么备份介质进行,是系统备份方案的具体实施细则。在制定完毕后,应严格按照制度进行日常备份,否则将无法达到备份方案的目标。数据备份有多种方式:全备份、增量备份、差分备份、按需备份等。·全备份:备份系统中所有的数据。·增量备份:只备份上次备份以后有变化的数据。·差分备份:只备份上次完全备份以后有变化的数据。·按需备份:根据临时需要有选择地进行数据备份。全备份所需时间最长,但恢复时间最短,操作最方便,当系统中数据量不大时,采用全备份最可靠。但是随着数据量不断增大,我们将无法每天做全备份,而只能在周末进行全备份,其他时间我们采用所用时间更少的增量备份,或采用介于两者之间的差分备份。各种备份的数据量不同:全备份>差分备份>增量备份。在备份时要根据它们的特点灵活使用。(1)数据存储基本策略的设定·数据库全备份:选择在周五(或周六)自动进行。·数据库增量备份:每晚做批处理前和批处理后,由UNIX或其他主机系统执行,批处理人员触发或由系统自动执行。·文件全备份:将主机系统和其他服务器的数据做全备份,选择在周日自动进行。·文件增量备份:在周一到周四(或周五)之间备份文件的增

量。·系统全量:在每月初的周日备份系统及数据库的全量。·系统增量:在其余的时间仅备份系统和数据库配置的增量。·跟踪备份:实时备份系统增量(事务日志备份)。结合以上备份策略,从便于管理和恢复的角度考虑,制订数据分组和存储介质池对应策略,将数据分门别类放在不同编号的磁带组上,并建立不同的存取权限。建议建立:·数据库介质。专门放置数据库信息。·文件介质。放置除数据库以外的文件。·数据库日志和系统曰志介质。安全稽核和系统恢复的重要数据记录需较长时间保存,建议由安全管理员在服务器端建立管理,形成与主机系统管理人员分离的运行数据记录。·系统介质。备份系统和系统配置等的变化,做到快速恢复系统。(2)数据备份工作过程·自动备份进程由备份服务器发动。每天晚上,自动按照事先制订的时间表所要求的内容,进行增量或全量的备份。由于每天的备份被适当地均衡,峰值备份数据量在周五(或周六)和周日发生。·批前及批后备份在UNIX或其他主机端发起。批处理人员输入触发备份命令,自动按要求备份数据库有关内容。·其他文件的自由备份。进入软件交互菜单,选择要求备份的文件后备份。·在线跟踪备份。配合数据存储管理软件的数据库在线备份功能,可定义实时或定时备份日志。·灾难备份异地存放介质的克隆。自动复制每日完成后的数据,以存放在异地做灾难恢复。(3)灾难恢复灾难恢复措施在整个备份制度中占有相当重要的地位。因为它关系到系统在经历灾难后能否迅速恢复。灾难恢复操作通常可以分为两类:第一类是全盘恢复,第二类是个别文件恢复。此外还有一种值得一提的是重定向恢复。·全盘恢复。全盘恢复一般应用于服务器发生意外灾难导致数据全部丢失、系统崩溃或有计划的系统升级、系统重组等情况,也称为系统恢复。·个别文件恢复。由于操作人员的水平不高,个别文件恢复可能要比全盘恢复常见得多,利用网络备份系统的恢复功能,我们很容易恢复受损的个别文件。只需浏览备份数据库或目录,找到该文件,触动恢复功能,软件将自动驱动存储设备,加载相应的存储媒体,然后恢复指定文件。·重定向恢复。重定向恢复是将备份的文件恢复到另一个不同的位置或系统上去,而不是进行备份操作时它们当时所在的位置。重定向恢复可以是整个系统恢复也可以是个别文件恢复。重定向恢复时需要慎重考虑,要确保系统或文件恢复后的可用性。为了防止数据丢失,我们需要做好详细的灾难恢复计划,同时还要定期进行灾难演练。每过一段时间,应进行一次灾难演习。可以利用淘汰的机器或多余的硬盘进行灾难模拟,以熟练灾难恢复的操作过程,并检验所生成的灾难恢复软盘和灾难恢复备份是否可靠。

2、逻辑安全性数据库的逻辑安全模型如图13-1所示。与数据库使用直接有关的安全措施有:用户标识和鉴定、存取控制、审计、密码存储、视图的保护和日志监视等方式。

1983年,美国政府发布了“可信计算机系统评价标准(TCSEC)”,1994年4月,美国国家计算机安全中心(NCSC)颁布了TDI,即“可信计算机系统评估标准在数据库管理系统中的解释”,它将TcSEC扩展到数据库领域。在TCSEC中,系统安全从4个方面被划分为7个不同的安全级别,即D,C1,C2,B1,B2,B3,A1,其中A1级别最高,D级别最低。TDI沿用TCSEC的做法,从安全策略、

责任、保证和文档4个方面来描述每级的安全性。一般认为,数据库及其他处理敏感商业信息的系统应达到C2级,在C2安全级上,能使用登录过程、审计跟踪并对与安全性有关的事件进行资源隔离;而处理保密的和要求更高敏感度的信息系统,安全级应达到B1级,这样能使用标记机制对特定的客体进行强制访问控制。(1)用户标识与鉴定用户标识与鉴定是系统提供的最外层的安全保护措施。用户的标识和鉴定是两个不同的过程,标识过程负责将用户ID在系统中注册登记,而鉴别过程旨在将用户ID与真正的合法用户关联起来。目前有3种标识与鉴别方法。①利用用户的物理特征(声波、指纹、相貌、签名等)作为ID,这在理论上是可靠的,但由于物理特征可能随时间变化且记录技术尚欠成熟等原因,使得该方法未能广泛用于数据库系统。②利用用户持有的证件,如身份证、机器可读卡片等,其缺点是证件可能被别人复制或冒用。③利用用户知道某个能证明其身份的约定(如口令),这是当前数据库系统用来识别用户的主要方法。·用户名或用户标识号。在定义外模式时为每个用户提供一个用户代号存放在数据字典中。用户使用系统时,系统鉴别此用户是否是合法用户,若是,则可进入下一步的核实,否则不能使用系统。·口令。为了进一步核实用户,系统常常要求用户输入口令。为保密起见,用户在终端上输入的口令不显示在屏幕上,系统核对口令以鉴别用户身份。以上的方法简单易行,但用户名、口令容易被人窃取,因此还可以用更可靠的方法。·随机数检验。用户根据预先约定好的计算公式求出一个数值作为动态口令送入计算机,当这个值与系统算出的结果一致时,才允许进入系统。此外,还可要求用户向鉴别机构交验机器可读身份卡片,或提供声波、指纹、签名等生物唯一性标志证明用户身份,鉴别机构对用户提供的信息进行鉴别,证明其有效性,或进行译码后给系统提供一个位串作为用户标识。用户标识和鉴定可以重复多次。

(2)存取控制在数据库系统中,为了保证用户只能存取有权存取的数据,系统要求对每个用户定义存取权限。存取权限包括两方面的内容:一方面是要存取的数据对象;另一方面是对此数据对象进行操作的类型。对一个用户定义存取权限就是要定义这个用户可以在哪些数据对象上进行哪些类型的操作。在数据库系统中对存取权限的定义称为“授权”,这些授权定义经过编译后存放在数据库中。对于获得使用权又进一步发出存取数据库操作的用户,系统就根据事先定义好的存取权限进行合法权检查,若用户的操作超出了定义的权限,系统就拒绝执行此操作,这就是存取控制。授权编译程序和合法权检查机制一起组成了安全性子系统。在非关系系统中,用户只能对数据进行操作,存取控制的数据对象也仅限于数据本身。而在关系数据库系统中,DBA可以把建立和修改基本表的权限授予用户,用户可利用这种权限来建立和修改基本表、索引、视图,因此,关系系统中存取控制的数据对象不仅有数据本身,还有模式、外模式、内模式等内容。(3)审计审计是现代计算机系统中必不可少的功能之一,其主要任务是对用户(包括应用程序)使用系统资源(包括软硬件和数据)的情况进行记录和审查,一旦发现问题,审计人员通过审计跟踪,可望找出原因,追查责任,防止类似问题再度发生。因此,审计往往作为保证数据库安全的一种补救措施。数据库系统中的审计工作包括如下几种:·设备安全审计。它主要审查关于系统资源的安全策略、各种安全保护措施及故障恢复计划等。·操作审计。对系统的各种操作(特别是一些敏感操作)进行记录、分析。记录内容包括:操作的种类、所属事务、所属进程、用户、终端(或客户机)、操作时间、审计日期等。·应用审计。审计建立于数据库之上的整个应用系统的功能、控制

逻辑、数据流是否正确。·攻击审计。对已发生的攻击性操作及危害系统安全的事件(或企图)进行检测和审计。上述各种审计所用技术大致可分为以下3类:·静态分析系统技术。审计者通过查阅各种系统资源(软硬件、数据)的说明性文件,例如,软件的设计说明书、流程图等来了解整个系统,甚至定位出一些易被攻击的薄弱环节。·运行验证技术。运行验证的目的是保证系统控制逻辑正确,各类事务能有效执行。该技术一般又细分为实际运行测试和性能测试两种。实现时,审计者既可以根据审计需要,选择系统中一个实际事务作为样板进行审计跟踪,也可以生成专门的测试用例,通过将测试用事务在系统运行的实际结果与期望结果进行比较来评价系统;还可以设计一个专门仿真系统的程序,让仿真系统与实际系统并行工作,通过比较它们的结果来评测系统。·运行结果验证技术。这种技术将注意力放在运行结果——数据上。它主要涉及审计数据选择和收集、数据分析两类问题。常用的审计数据选择和收集的办法有:在应用程序中插入一个审计数据收集模块;设置专门的审计跟踪事务;兼用系统的日志库;使用由随机抽取记录组成的专用审计库,等等。一旦获得审计数据后,审计者可以检查各类控制信息、完整性约束等内容,以达到各种审计目的。(4)数据加密对于那些保密程度极高的数据(如用户标识、绝密信息等)和在网络传输过程中可能被盗窃的数据,除采用上述种种安全保护措施外,一般还需采用数据加密技术,以密文形式保存和传输,保证只有那些知道密钥的用户可以访问。数据加密是防止数据库中的数据在存储和传输中失密的有效手段。有关加密技术的详细内容请参考相关章节,在此不再详细叙述。

(5)视图保护视图机制可以将要保密的数据对无权存取这些数据的用户隐藏起来,这样就自动地提供了对数据的安全保护。(6)日志监视使用日志监视数据库的活动,在日志中记载日期、时间、程序名、地点、存取的数据和存取的类型等。这个日志由DBA监督,对于可疑的存取或高度机密数据的存取实施调查。安全保护的策略还有很多,但要注意,任何安全的措施都是相对的,要根据具体的用户对象、系统对安全的要求和花费的代价来选择恰当的安全措施。除了解相关技术知识,在写作方面还要注意以下几个方面的要点:①在文章中首先用400-600字的篇幅简要叙述自己参与开发与设计的软件概要和所担任的工作。②具体叙述在开发过程中,是如何使用安全性设计技术的,遇到过哪些实际问题,采取过哪些相应的措施。可就物理安全性或逻辑安全性进行阐述,不要面面俱到。③最后要根据项目实际情况,说明采用的数据库安全性设计技术的效果,有哪些主要的使用体会和进一步的设想。

详细解答:

第8题:

论数据挖掘技术的应用

随着信息技术的高速发展,各组织机构积累的数据量急剧增长。如何从海

量的数据中提取有用的知识成为当务之急。数据挖掘(Data Mining)就是为顺应这种需要应运而生发展起来的数据处理技术,是知识发现的关键步骤。数据挖

掘就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提

取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。

请围绕“论数据挖掘技术的应用”论题,依次从以下3个方面进行论述:

①概要叙述你参与分析和开发的软件项目及你所担任的主要工作。

②数据挖掘的主要任务是什么?具体论述你在项目中使用数据挖掘技术所解

决的问题。

③数据挖掘的方法主要有哪些?分析并讨论你所选择的数据挖掘方法,简述其具体实现过程和实际应用效果。

参考答案:

本题考查数据挖掘技术的应用。其实从应用的角度,或者从商业的角度来看,数据挖掘这一词在业内出现的频度已不如以前那么高了。因为数据挖掘通常是不独立进行的,它涉及数据源的获取问题,即先要建立一个数据仓库,再从中“挖”数据。这其实就是我们经常看到的是“BI”——商业智能。商业智能我们可以理解为是:数据仓库+数据挖掘。这也就确定了本文的项目背景。文章最好是把这一层关系讲清楚,写商业智能的项目,如果没有项目经验,直接杜撰出数据挖掘项目来写文章,风险会很高,很容易让人看出文章的“做假”行为。除此以外,文章可按传统的写法组织内容。即按问答方式组织文章的主体脉络,并加入项目信息,同时做好承上启下的句子进行段落衔接。具体的写作规范如下:①结合自己所参与的软件项目,概要介绍该项目的背景及主要内容,并明确指出在其中所承担的主要任务和开展的主要工作。②数据挖掘的任务主要是关联分析、聚类分析、分类、预测、时序模式和偏差分析等。·关联分析。两个或两个以上变量的取值之间存在某种规律性,就称为关联。数据关联是数据库中存在的一类重要的、可被发现的知识。关联分析的目的是找出数据库中隐藏的关联网。一般用支持度和可信度两个阈值来度量关联规则的相关性。·聚类分析。聚类是把数据按照相似性归纳成若干类别,同一类中的数据彼此相似,不同类中的数据相异。聚类分析可以建立宏观的概念,发现数据的分布模式,以及可能的数据属性之间的相互关系。·分类。分类就是找出一个类别的概念描述,它代表了这类数据的整体信息,即该类的内涵描述,并用这种描述来构造模型,一般用规则或决策树模式表示。分类是利用训练数据集通过一定的算法而求得分类规则。分类可被用于规则描述和预测。·预测。预测是利用历史数据找出变化规律,建立模型,并由此模型对未来数据的种类及特征进行预测。预测的精度和不确定性被重点关注,通常用预测方差来度量。·时序模式。时序模式是指通过时间序列搜索出的重复发生概率较高的模式。与回归一样,它也是用已知的数据预测未来的值,但这些数据的区别是变量所处时间的不同。·偏差分析。在偏差中包括很多有用的知识,数据库中的数据存在很多异常情况,发现数据库中数据存在的异常情况是非常重要的。偏差检验的基本方法就是寻找观察结果与参照之间的差别。论文中须明确指出自己在该项目应用数据挖掘技术所要解决的具体问题是什么。③主要的数据挖掘方法:·神经网络方法:神经网络由于本身良好的鲁棒性、自组织自适应性、并行处理、分布存储和高度容错等特性非常适合解决数据挖掘的问题,因此近年来越来越受到人们的关注。典型的神经网络模型主要分三大类:以感知机、BP反向传播模型、函数型网络为代表的,用于分类、预测和模式识别的前馈式神经网络模型;以hopfield的离散模型和连续模型为代表的,分别用于联想记忆和优化计算的反馈式神经网络模型;以an模型、koholon模型为代表的,用于聚类的自组织映射方法。神经网络方法的缺点是“黑箱”性,人们难以理解网络的学习和决策过程。·遗传算法:遗传算法是一种基于生物自然选择与遗传机理的随机搜索算法,是一种仿生全局优化方法。遗传算法具有的隐含并行性、易

于和其他模型结合等性质使得它在数据挖掘中被加以应用。·决策树方法:决策树是一种常用于预测模型的算法,它通过将大量数据有目的地分类,从中找到一些有价值的、潜在的信息。它的主要优点是描述简单,分类速度快,特别适合大规模的数据处理。最有影响和最早的决策树方法是由quinlan提出的著名的基于信息熵的id3算法。它的主要问题是:id3是非递增学习算法;id3决策树是单变量决策树,复杂概念的表达困难;同性间的相互关系强调不够;抗噪性差。针对上述问题,出现了许多较好的改进算法,如schlimmer和fisher。设计了id4递增式学习算法等。·粗集方法:粗集理论是一种研究不精确、不确定知识的数学工具。粗集方法有几个优点:不需要给出额外信息;简化输入信息的表达空间;算法简单,易于操作。粗集处理的对象是类似二维关系表的信息表。目前成熟的关系数据库管理系统和新发展起来的数据仓库管理系统,为粗集的数据挖掘奠定了坚实的基础。·覆盖正例排斥反例方法:它是利用覆盖所有正例、排斥所有反例的思想来寻找规则。首先在正例集合中任选一个种子,到反例集合中逐个比较。与字段取值构成的选择子相容则舍去,相反则保留。按此思想循环所有正例种子,将得到正例的规则。比较典型的算法有michalski的aq11方法等。·统计分析方法:在数据库字段项之间存在两种关系:函数关系(能用函数公式表示的确定性关系)和相关关系(不能用函数公式表示,但仍是相关确定性关系),对它们的分析可采用统计学方法,即利用统计学原理对数据库中的信息进行分析。可进行常用统计(求大量数据中的最大值、最小值、总和、平均值等)、回归分析(用回归方程来表示变量间的数量关系)、相关分析(用相关系数来度量变量间的相关程度)、差异分析(从样本统计量的值得出差异来确定总体参数之间是否存在差异)等。·模糊集方法:利用模糊集合理论对实际问题进行模糊评判、模糊决策、模糊模式识别和模糊聚类分析。系统的复杂性越高,模糊性越强,一般模糊集合理论是用隶属度来刻画模糊事物的此亦彼性的。论文中必须明确指出使用了上述7种方法中的哪种或哪几种数据挖掘方法,并给出该方法的具体实现过程;分析所选择的数据挖掘方法的实现效果。

详细解答:

第9题:

论企业信息系统的安全

企业信息化能够实现高效率、低成本的运行,越来越受到人们的重视。目前,它已经渗透到企业活动的各个阶段。在传统的企业活动中,所涉及的不同企业或企业内部不同人员在相互交往中往往需要直接见面。但在企业信息化中,更多的是通过计算机网络这一媒介,而不需要直接见面。这就要求在设计和实现企业信息系统时除了针对具体业务需求进行详细的分析,保证满足具体的业务需求之外,还要加强信息系统安全方面的考虑。

请围绕“企业信息系统的安全”论题,依次从以下3个方面进行论述:

①概要叙述你参与分析设计的企业信息系统及你所担任的主要工作。

②深入讨论在企业信息系统中,通常需要着重解决的安全问题。

③结合你所参与分析设计的企业信息系统及其特点,详细论述你所采用的企业信息系统安全解决方案,并客观地分析、评价你的解决方案。

参考答案:

关于“企业信息系统的安全”的论文,在写作方面大致包括以下几个方面:·围绕安全方面,根据你所参与分析设计的企业信息系统的具体特点,介绍系统的需求;介绍自己在其中所承担的工作和需要处理的主要问题。·在企业信息化建设方面,有许多需要解决的安全问题,它们并非对于每个企业都是必需的。不同企业由于其自身的特点,所关心的安全问题会各有侧重点。由于各个企业信息系统受投资的限制,在保障信息安全方面也不得不有所侧重,或在不同的工程建设阶段,有不同的建设目标。因此这部分的说明重点在于针对不同企业的特点、应用领域和投资,给出相应的合理论述。·在论述自己的安全解决方案之后,要根据系统的具体情况和采用的措施,客观地评价自己所采用的安全措施,并给出评价依据。这里需要注意,不可脱离实际,评价要适当。

详细解答:

第10题:

论软件可靠性评价

软件可靠性评价是指选用和建立合适的可靠性数学模型,运用统计技术和其他手段,对软件可靠性测试和系统运行期间的软件失效数据(也可能包含软件生命周期内其他可靠性数据)进行处理,并评估和预测软件可靠性的过程。

软件可靠性评价是软件可靠性活动的重要组成部分,既可在软件开发过程实施,也可针对最终软件系统实施。软件可靠性评价的难点在于软件可靠性模型的选择和软件可靠性数据的收集与处理。

请围绕“软件可靠性评价”论题,依次从以下3个方面进行论述:

①简要概述你参与实施的软件开发项目及你承担的主要工作。

②说明你在项目实施过程中所选择的软件可靠性模型,并论述在软件可靠性模型选择时应该考虑的主要因素。

③收集软件可靠性数据时经常遇到的问题有哪些?简述你收集软件可靠性数据时所遇到的具体问题及解决的方法。

参考答案:

①说明软件开发项目的基本情况及自己承担的主要工作。②当前的软件可靠性模型众多,但并没有一个最好的或者可以适用所用软件系统的软件可靠性模型,因此对于不同的软件系统,出于不同的可靠性分析目的,需要选择合适的软件可靠性模型。常见的10类软件可靠性模型有种子法模型、失效率类模型、曲线拟合类模型、可靠性增长模型、程序结构分析模型、输入域分类模型、执行路径分析方法模型、非齐次泊松过程模型、马尔可夫过程模型和贝叶斯分析模型。软件可靠性模型的选择主要需要考虑以下4个方面:·模型假设的适用性:模型假设是可靠性模型的基础,模型假设需要符合软件系统的现有状况,在软件系统中与假设冲突的因素达到几乎不存在的程度。往往一个模型的假设有很多,需要在选择模型时对每一条假设进行分析,评估现有软件系统中不符合假设的因素对可靠性评价有多大影响,以确定模型是否符合软件系统的可靠性评价工作。·模型预测的能力与质量:预测的能力和质量是指模型根据

现在和历史的可靠性数据,预测将来的可靠性和失效概率的能力,以及预测结果的准确程度。因此,应尽可能选择比较成熟的、应用较广的模型。·模型输出值能否满足可靠性评价需求:根据可靠性测试目的来确定哪些模型的输出值满足可靠性评价需求。重要的可靠性定量指标包括当前可靠度、平均无失效时间、故障密度、期望达到规定可靠性目标的日期、达到规定可靠性目标的成本要求等。·模型使用的简便性:模型使用的数据在软件系统中易于收集;模型应该简单、易懂;模型应该便于使用,最好有工具支持。软件可靠性数据的收集是一项艰巨而又烦琐的工作,受到许多潜在因素的影响和制约。常见的问题如下:·可靠性数据规范不一致,对软件进行度量的定义混乱。·数据收集过程存在于整个软件生命周期,但由于成本等因素,其连续性往往不能保证。·缺乏有效的技术和工具支持,难以进行自动分析。·数据完整性不能保证,收集到的数据大多数是不完全的。·数据质量和准确性不能保证。·缺乏可靠性数据的交流与共享。考生应叙述在项目中遇到了上述中的哪些问题。可供采用的解决方法主要有:·尽早确定可靠性模型,明确需要搜集的可靠性数据,确定涉及的术语、记录方法等。·制订可实施的可靠性数据搜集计划,并指定专人负责。保证数据的收集和验证与软件开发过程同步进行。·重视软件测试特别是可靠性测试产生的测试结果的整理和分析。·尽可能地利用工具进行收集工作,如利用数据库进行存储和分析等。

详细解答:

系统架构设计师论文(模板)

摘要: 2012年1月,我作为项目经理,主持XX保险公司全国再保险大集中管理系统的建设项目,该项目为期2年半,总投资为1800万人民币,通过该项目,实现XX保险公司整体信息化转型升级的战略中再保险板块的落地,完成全国海量再保险业务数据的集中部署运行,迁移整合历史数据,全面替代上一代系统。该项目时间紧任务重、涉及人员组织多,直接相关XX保险公司内部60个部门400余人,外部配合协作30多个厂商团队300余人。该项目2014年5月完成系统上线,2014年6月通过最终验收,得到了用户的一致肯定,顺利达成了项目既定目标。本文作者结合实际经验,以该项目为例,讨论一下项目建设的【软件分析、软件设计、、】这几个过程来进行论述。 正文: 2012年1月,我作为项目经理,主持XX保险公司全国再保险大集中管理系统的建设项目,该平台为期2年半,总投资为1800万人民币。该项目时间紧任务重,具有相当的挑战性,一是业务模式升级,需按照最新的再保险业务流程,完成系统功能的分析开发,进而具体落地公司再保险业务流程的再造;二是技术要求高,要实现全国海量再保险业务数据的集中部署运行,每日处理数据量达到3000万笔以上,同时要满足性能要求。三是数据整合难,需要将上一代系统的中历时十年的数据,按其有效性进行分类、转化、整合,实现历史存续业务数据在新系统环境下,按照新新模式正常运行。四是涉及人员组织多,直接研发团队成员36人,XX保险公司总部再保险部、财务部、风险部、八大业务部、 40个省公司等400余人,同时涉及外部配合协作承保系统、核保系统、理赔系统、收付费系统、财务系统等30多个厂商团队300余人。我担任项目第一负责人,负责项目整体技术方案评估、立项论证以及项目管理工作。在项目启动前,负责分析项目的预期经济效益、可选技术方案,分析关联项目影响,并向公司提交立项报告。项目启动后,作为主要负责人,牵头与公司内部技术专家、外部架构师一同建立项目技术架构组,设计项目整体技术架构,同时挑选项目内部成员,建立需求分析组、系统开发组、系统测试组、运维支持组,开展业务需求分析、系统设计、数据迁移方案、上线切换方案工作。一方面,我个人接受各组工作汇报,指导团队研发工作,监控整体工作进度。同时,我及时向公司领导、项目客户方、相关项目团队汇报沟通工作进展、阐明关键技术要点。

2014年系统架构设计师真题及答案

2014年下半年系统架构设计师考试上午真题(标准 参考答案) 卷面总分:75.0 分 答题时间:150 分钟 测试次数:1475 次 平均得分:54.8 分 是否需要批改:否 单项选择题 每题的四个选项中只有一个答案是正确的,请将正确的选项选择出来。 1 某计算机系统中有一个CPU、一台输入设备和一台输出设备,假设系统中有四个作业T1、T2、T3和T4,系统采用优先级调度,且T1的优先级>T2的优先级>T3 的优先级>T4的优先级。每个作业具有三个程序段:输入I i 、计算C i 和输出 P i (i=1,2,3,4),其执行顺序为I i →C i →P i 。这四个作业各程序段并发执行的前驱 图如下所示。图中①、②、③分别为(),④、⑤、⑥分别为()。 A.I 2、C 2 、C 4 B.I 2、I 3 、C 2 C.C 2、P 3 、C 4 D.C 2、P 3 、P 4 A.C 2、C 4 、P 4 B.I 2、I 3 、C 4 C.I 3、P 3 、P 4 D.C 4、P 3 、P 4 [选择问题 1 的答案] ?A ?B ?C ?D [选择问题 2 的答案] ?A ?B

?C ?D ? ? 2 某文件系统文件存储采用文件索引节点法。假设磁盘索引块和磁盘数据块大小均为1KB,每个文件的索引节点中有8个地址项iaddr[0]~iaddr[7],每个地址项大小为4字节,其中iaddr[0]~iaddr[5]为直接地址索引,iaddr[6]是一级间接地址索引,iaddr[7]是二级间接地址索引。如果要访问icwutil.dll文件的逻辑块号分别为0、260和518,则系统应分别采用()。该文件系统可表示的单个文件最大长度是()KB。 A.直接地址索引、一级间接地址索引和二级间接地址索引 B.直接地址索引、二级间接地址索引和二级间接地址索引 C.一级间接地址索引、一级间接地址索引和二级间接地址索引 D.一级间接地址索引、二级间接地址索引和二级间接地址索引 A.518 B.1030 C.16514 D.65798 [选择问题 1 的答案] ?A ?B ?C ?D [选择问题 2 的答案] ?A ?B ?C ?D ? ? 3 设关系模式R(U,F),其中u为属性集,F是U上的一组函数依赖,那么函数依赖的公理系统(Armstrong公理系统)中的合并规则是指()为F所蕴涵。 A.若A→B,B→C,则A→C B.若,则X→Y

(完整版)系统架构师个人简历

系统架构师个人简历 求职意向 希望岗位:技术总监、项目经理、系统架构设计师工作年限:10年 职称:高级 求职类型:全职 可到职日期:随时

月薪要求:面议 工作经历 xx年3月至今xx有限公司,担任技术总监。 主要工作是: 负责公司的项目产品规划、产品开发方向、项目研发管理及控制: 1、组织并制定相关技术体系的技术标准和技术规范; 2、负责组织公司开发项目的总体方案设计,指导并审核公司产

品项目的总体技术方案; 3、协调技术部与销售部之间的工作,包括任务复杂度、任务处理时间等方面的协调; 4、对客户提出的开发需求进行可行性评估和风险评估,并制定相关开发计划; 5、对项目开发进度进行监督,并对各项目进行最后的质量评估。 xx年3月xx年7月xx有限公司,担任系统架构设计师。 主要工作是: 1、负责公司软件项目的架构、总体设计、需求分析设计;

2、编写技术标准、设计文档; 3、负责新技术研发,软件技术指导和监控; 4、负责公司员工培训; 5、参与软件项目管理、测试管理和风险管理等。 xx年3月xx年7月xx有限公司,担任开发经理。主要工作是:负责公司ERP软件管理与开发;负责与速达软件的合作开发,项目顾问;与客户交流、谈判;软件实施顾问。 xx年3月xx年7月xx有限公司,担任开发组长。主要工作是:

1、负责项目的架构、开发和管理; 2、负责数据库、Internet电子商务的技术支持及其开发; 3、负责监督团队的开发,以及开发人员的培训,为公司培养优秀的技术人才; 4、带领团队成功开发了至少3个以上的大中型软件项目。 教育背景 毕业院校:重庆大学 最高学历:本科

2018年下半年系统架构设计师考试论文真题(完整版)

2018年下半年系统架构设计师考试论文真题(专业 解析) 1、 论软件开发过程RUP及其应用 RUP (Rational Unified Process)是IBM公司一款软件开发过程产品, 它提出了一整套以UML为基础的开发准则,用以指导软件开发人员以UML为基 础进行软件开发。RUP汲取了各种面向对象分析与设计方法的精华,提供了一 个普遍的软件过程框架,可以适应不同的软件系统、应用领域、组织类型和项目规模。 问题内容: 请围绕“论软件开发过程RUP及其应用”论题,依次从以下三个方面进行论述。 1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。 2.详细论述软件开发过程产品RUP所包含的4个阶段以及RUP的基本特征。 3.结合你所参与管理和开发的软件项目,详细阐述RUP在该项目中的具体实施 内容,包括核心工作流的选择、制品的确定、各个阶段之间的演进及迭代计划 以及工作流内部结构的规划等。 2、 论软件体系结构的演化 软件体系结构的演化是在构件开发过程中或软件开发完毕投入运行后, 由于用户需求发生变化,就必须相应地修改原有软件体系结构,以满足新的变 化了的软件需求的过程。体系结构的演化是一个复杂的、难以管理的问题。 问题内容: 请围绕“论软件体系结构的演化”论题,依次从以下三个方面进行论述。 1. 概要叙述你参与管理和开发的软件项目以及你在其中所承担的主要工作。 2. 软件体系结构的演化是使用系统演化步骤去修改系统,以满足新的需求。简要论述系统演化的6个步骤。 3. 具体阐述你参与管理和开发的项目是如何基于系统演化的6个步骤完成软件体系结构演化的。 3、 论面向服务架构设计及其应用

(完整版)2017年下半年系统架构设计师案例分析

全国计算机技术与软件专业技术资格(水平)考试2017年下半年系统架构设计师下午试卷I (考试时间14:00~16:30 共150 分钟) 1.在答题纸的指定位置填写你所在的省、自治区、直辖市、计划单列市的名称。 2.在答题纸的指定位置填写准考证号、出生年月日和姓名。 3.答题纸上除填写上述内容外只能写解答。 4.本试卷共5道题,试题一是必答题,试题二至试题五选答1 道。每题25 分,满分75 分。 5.解答时字迹务必清楚,字迹不清时,将不评分。 6.仿照下面例题,将解答写在答题纸的对应栏内。 例题 2017 年下半年全国计算机技术与软件专业技术资格(水平)考试日期是(1)月(2)日。 因为正确的解答是“11 月 4 日”,故在答题纸的对应栏内写上“11”和“4”(参看下表)。

试题一 阅读以下关于软件架构评估的叙述,在答题纸上回答问题1和问题2. 【说明】 某单位为了建设健全的公路桥梁养护管理档案,拟开发一套公路桥梁在线管理系统。在系统的需求分析与架构设计阶段,用户提出的需求、质量属性描述和架构特性如下: (a) 系统用户分为高级管理员、数据管理员和数据维护员等三类; (b) 系统应该具备完善的安全防护措施,能够对黑客的攻击行为进行检测与防御; (c) 正常负载情况下,系统必须在0.5 秒内对用户的查询请求进行响应; (d) 对查询请求处理时间的要求将影响系统的数据传输协议和处理过程的设计; (e) 系统的用户名不能为中文,要求必须以字母开头,长度不少于5个字符; (f) 更改系统加密的级别将对安全性和性能产生影响; (g) 网络失效后,系统需要在10 秒内发现错误并启用备用系统; (h) 查询过程中涉及到的桥梁与公路的实时状态视频传输必须保证画面具有1024*768的分辨率,40帧/秒的速率; (i) 在系统升级时,必须保证在10 人月内可添加一个新的消息处理中间件; (j) 系统主站点断电后,必须在3 秒内将请求重定向到备用站点; (k) 如果每秒钟用户查询请求的数量是10 个,处理单个请求的时间为30 毫秒,则系统应保证在1秒内完成用户的查询请求; (l) 对桥梁信息数据库的所有操作都必须进行完整记录; (m) 更改系统的Web 界面接口必须在4 人周内完成; (n) 如果"养护报告生成"业务逻辑的描述尚未达成共识,可能导致部分业务功能模块规则的矛盾,影响系统的可修改性 (O) 系统必须提供远程调试接口,并支持系统的远程调试。 在对系统需求,质量属性描述和架构特性进行分析的基础上,系统的架构师给出了三个候选的架构设计方案,公司目前正在组织系统开发的相关人员对系统架构进行评估。 【问题1】(12 分) 在架构评估过程中,质量属性效用树(utility tree) 是对系统质量属性进行识别和优先级

2010年下半年系统架构设计师_下午II论文解析

2010年下半年系统架构设计师_下午试题Ⅱ论文解析 试题一、论软件的静态演化和动态演化及其应用 写作要点 1、简要叙述所参与管理和开发的软件项目,并明确指出自己在其中承担的主要任务和开展的主要工作。 2、软件演化可分为静态演化和动态演化两种情形。 (1)静态演化(Static Evolution)。静态演化是指软件在停机状态下的演化。其优点是不用考虑运行状态的迁移,同时也没有活动的进程需要处理。然而停止一个一个用程序就意味着中断它提供的服务,造成软件暂时失效。 软件静态演化是指发生在应用程序停止时的软件修改和更新,即一般意义上的软件维护和升级。静态演化的优点是没有状态迁移或活动线程的问题要解决,缺陷是停止应用程序意味着停止它所提供的服务,也就是使软件系统暂时失效。在软件交付之后,静态演化(类似于一般意义上的软件维护)就成为软件变更的一个常规过程。变更可以是一种更正代码错误的简单变更,也可以是更正设计错误的较大范围的变更,还可以是对描述错误进行修正或提供新需求这样的重大改进。有三种不同的软件维护:改正性维护、适应性维护和完善性维护。维护过程一般包括变更分析、版本规划、系统实现和向客户交付系统等活动。 在面向对象技术中,使用子类型方法来扩展程序,它适合于软件静态演化和代码重用。子类型化一个类意味着保留父类中的参数和方法,并尽可能地增加新的参数和方法。另外,使用重载和多态性作为主要的演化机制。实际上,建立类的新版本,最简单的机制是创建它的子类,然后重载需要变更的方法,最后,使用多态性调用新创建的方法。在基于构件的软件技术中,构件采取接口和实现相分离的技术,构件之间只能通过接口进行通信,这使得具有兼容接口的不同构件实现可以相互取代,从而成为软件静态演化的一条途径。 (2)动态演化(Dynamic Evolution)。动态演化是指软件在执行期间的软件演化。其优点是软件不会存在暂时的失效,有持续可用性的明显优点。但由于涉及状态迁移等问题,比静态演化从技术上更难处理。 动态演化是最复杂也是最有实际意义的演化形式。动态演化使得软件在运行过程中,可以根据应用需求和环境变化,动态地进行软件的配置、维护和更新,其表现形式包括系统元素数目的可变性、结构关系的可调节性和结构形态的动态可配置性。软件的动态演化特性对于适应未来软件发展的开放性、动态性具有重要意义。 动态演化是指软件在运行期间的演化。在许多重要的应用领域中,例如金融、电力、电信及空中交通管制等,系统的持续可用性是一个关键性的要求,运行时刻的系统演化可减少因关机和重新启动而带来的损失和风险。此外,越来越多的其他类型的应用软件也提出了运行时刻演化的要求,在不必对应用软件进行重新编译和加载的前提下,为最终用户提供系统定制和扩展的能力。 动态演化可分为两种类型:预设的和非预设的。在Web环境中,软件应用常常需要处理多种类型的信息,因此它们常被设计为可以动态下载并安装插件以处理当前所面临的新类型的信息;而分布式Web应用也常常需要增减内部处理节点的数目以适应多变的负载。这些动态改变都是软件设计者能够预先设想到的,可实现为系统的固有功能。另有一些必须对系统配置进行修改和调整的情况是直到系统投入运行以后才发现的,这就要求系统能够处理在原始设计中没有完全预料到的新需求。这种情况下一般需要关闭整个系统,重新开发、重新装入并重新启动系统。然而,为了进行局部的修改而关闭整个系统在某些情况下是不允许的(例如,关键运行系统)或者代价太高。精心设计的动态演化技术可以在不关闭整个系统的前提下修改系统的结构配置,并尽量使未受影响的部分继续工作已提高系统的可用度。 为支持软件的动态演化性,已在语言、机制和环境等方面做了大量工作。在程序语言的

高级系统架构设计师下午试题模拟 含详细答案

系统架构设计师考试下午I模拟2 案例分析题 阅读以下软件架构设计的问题,在答题纸上回答问题。 某软件开发公司欲为某电子商务企业开发一个在线交易平台,支持客户完成网上购物活动中的在线交易。在系统开发之初,企业对该平台提出了如下要求。 1在线交易平台必须在1秒内完成客户的交易请求。 2该平台必须保证客户个人信息和交易信息的安全。 3当发生故障时,该平台的平均故障恢复时间必须小于10秒。 4由于企业业务发展较快,需要经常为该平台添加新功能或进行硬件升级。添加新功能或进行硬件升级必须在6小时内完成。 针对这些要求,该软件开发公司决定采用基于架构的软件开发方法,以架构为核心进行在线交易平台的设计与实现。 1、软件质量属性是影响软件架构设计的重要因素。请用200字以内的文字列举6种不同的软件质量属性名称,并解释其含义。 2、请对该在线交易平台的4个要求进行分析,用300字以内的文字指出每个要求对应何种软件质量属性;并针对每种软件质量属性,各给出2种实现该质量属性的架构设计策略。 阅读以下关于结构化软件系统建模的叙述,在答题纸上回答问题。 希赛公司拟开发一个商业情报处理系统,使公司能够针对市场环境的变化及时调整发展战略,以获取最大的商业利益。项目组经过讨论,决定采用结构化分析和设计方法。在系统分析阶段,为了更好地对情报数据处理流程及其与外部角色的关联进行建模,项目组成员分别给出了自己的没计思路。 3小张提出先构建系统流程图(System Flowcharts),以便更精确地反映系统的业务处理过程及数据的输入和输出。 4小李提出先构建系统数据流图(Data Flow Diagrams),来展现系统的处理过程和定义业务功能边界,并给出了情报分类子系统的0层和1层数据流图,后者如图所示。 项目组经讨沦确定以数据流图作为本阶段的建模手段。工程师老王详细说明了流程图和数据流图之间的区别与联系,并指出了图的数据流图中存在的错误。 3、流程图和数据流图是软件系统分析设计中常用的两种手段,请用300字以内文字简要说明流程图与数据流图的含义及其区别,并说明项目组为何确定采用数据流图作为建模手段。 4、请分析指出图所示的数据流图中存在的错误及其原因,并针对图的1层数据流图绘制出情报分类

2009下半年系统架构设计师上午试题及参考答案

2009下半年系统架构设计师上午试题及参考答案 ● 计算机系统中硬件层之上的软件通常按照三层来划分,如下图所示,图中 ①②③分别表示(1)。 (1)A.操作系统、应用软件和其他系统软件 B.操作系统、其他系统软件和应用软件 C.其他系统软件、操作系统和应用软件 D.应用软件、其他系统软件和操作系统 题目出处:《系统架构设计师教程(第2版)》第1页。 参考答案: B ●某计算机系统中有一个CPU、一台扫描仪和一台打印机。现有三个图像任务,每个任务有三个程序段:扫描Si,图像处理Ci和打印Pi (i=1,2,3)。下图为三个任务各程序段并发执行的前驱图,其中,(2)可并行执行,(3)的直接制约,(4)的间接制约。 (2)A.“C1S2”,“P1C2S3”,“P2C3” B.“C1S1”,“S2C2P2”,“C3P3” C.“S1C1P1”,“S2C2P2”,“S3C3P3” D.“S1S2S3”,“C1C2C3”,“P1P2P3” (3)A. S1受到S2和S3、C1受到C2和C3、P1受到P2和P3 B. S2和S3受到S1、C2和C3受到C1、P2和P3受到P1 C. C1和P1受到S1、C2和P2受到S2、C3和 P3受到S3 D. C1和S1受到P1、C2和S2受到P2、C3和S3受到P3 (4)A. S1受到S2和S3、C1受到C2和C3、P1受到P2和P3 B. S2和S3受到S1、C2和C3受到C1、P2和P3受到P1 C. C1和P1受到S1、C2和P2受到S2、C3和P3受到S3 D. C1和S,受到P1、C2和S2受到P2、C3和S3受到P3

参考答案: (2)A (3)C (4)B ● 在数据库设计的需求分析阶段应完成包括(5)在内的文档。 (5)A.E-R图 B.关系模式 C.数据字典和数据流图 D.任务书和设计方案 题目出处:《系统架构设计师教程(第2版)》第48~54页。 参考答案: C ● 设有职务工资关系P(职务,最低工资,最高工资),员工关系EMP(员工号,职务,工资),要求任何一名员工,其工资值必须在其职务对应的工资范围之内,实现该需求的方法是(6)。 (6)A.建立“EMP.职务”向“P.职务”的参照完整性约束 B.建立“P.职务”向“EMP.职务”的参照完整性约束 C.建立EMP上的触发器程序审定该需求 D.建立P上的触发器程序审定该需求 题目出处:《系统架构设计师考试全程指导》第48页。 参考答案: C ● 设关系模式R(U, F),其中R上的属性集U={A, B, C, D, E},R上的函数依赖集F={A→B,DE→B,CB→E,E→A,B→D}。(7)为关系R的候选关键字。分解(8)是无损连接,并保持函数依赖的。 (7)A. AB B. DE C. CE D. CB (8)A. p={R1(AC),R2(ED),R3(B)} B. p={R1(AC),R2(E),R3(DB)} C. p={R1(AC),R2(ED),R3(AB)} D. p={R1,(ABC),R2(ED),R3(ACE)} 题目出处:《系统架构设计师考试全程指导》第2.3.3节。《系统架构设计师教程(第2版)》第2.2.3节。 参考答案: (7)C (8)D

系统架构设计师论文范文

架构风格数字图书馆类的应用 摘要:随着Intranet信息技术的发展,图书馆为了更好地发挥其图书流通、资料检索和学术交流的职能,图书馆的数字信息化工程也势在必行。本人有幸作为系统架构设计师参与了某大学图书馆数字化信息系统建设过程。由于在数字化图书馆信息系统中后台馆藏信息管理系统负责实时管理图书和读者信息,和数据库交互频繁,所以对数据库处理功能、安全性、数据处理响应速度等方面要求较高。而客户端主要查询信息,要求简单、使用方便、易于安装维护。结合各种体系结构的优缺点,我们决定采用客户/服务器(C/S)和浏览器/服务器(B/S)混合的体系结构来开发。 本文详细介绍三层结构的功能分配和物理分布,描述三层结构设计的过程,讨论在设计实施过程中碰到的一些问题以及解决的方法,最后说明采用三层结构带来的效果,以及可以改进的地方。 正文:随着Intranet信息技术的发展,图书馆为了更好地发挥其图书流通、资料检索和学术交流的职能,图书馆的数字信息化工程也势在必行。某大学图书馆为了更好的服务读者,提高图书馆的管理水平和服务水平,已经启动了数字图书馆工程。本人有幸作为系统架构设计师参与了该项目。 该数字图书馆工程主要包括:后台馆藏信息管理系统、对外信息Web发布系统,交互式检索网、非纸质资源下载、新书通报、订购征询、以及读者信息管理系统等。 后台馆藏信息管理系统负责实时管理图书和读者信息,和数据库交互频繁,所以对数据库处理功能、安全性、数据处理响应速度等方面要求较高。而客户端主要查询信息,要求简单、使用方便、易于安装维护。

根据我们做出的需求分析以及各种体系结构的优缺点,我决定采用客户/服务器(C/S)和浏览器/服务器(B/S)混合的体系结构来开发。对于后台馆藏信息管理系统的需求,需要对数据进行更新处理,采用C/S 结构可以更快更好的开发且数据处理速度更快,而且安全性在一定程度上也容易控制,可以更好的满足要求。对于读者的查询需求,我们采用B/S模式。采取这样的结构可以很好的满足用户需求,且容易开发和维护,节约开发成本。由于都是在windows 平台上使用,因此在开发工具的选择上,我们使用Delphi来开发后台馆藏信息管理部门的客户端和中间件,使用FrontPage来开发网页,连接在其内部网上提供查询服务。中间件我们采用COM+进行逻辑处理,数据层使用SQL Server。 以下详细介绍三层结构的功能分配和物理分布,描述三层结构设计的过程,讨论在设计实施过程中碰到的一些问题以及解决的方法,文章最后说明采用三层结构带来的效果,以及可以改进的地方。 对于客户端,B/S 结构仅提供查询功能,使用浏览器(例如Internet Explorer),学校各系部读者都可以通过内部网使用,读者也可以利用Internet 通过外网访问。C/S 结构提供日常操作和管理界面,承担着整个系统的数据录入及数据维护工作,使用Delphi 开发,它是系统数据的入口,使用频繁,安装在图书馆出口、和图书馆后台馆藏信息管理中心;中间件和数据库以及Web 服务器都放在该大学的计算机中心,便于维护管理。中间件负责根据客户端要求从数据库中取得数据,并在进行处理后提交到客户端显示;后台使用SQLServer 数据库,数据集中在数据库服务器进行管理,方便数据管理和分析,保证数据安全。 对于C/S 和B/S 结构,我们分别使用不同的工具来开发客户端。C/S 结

系统架构设计师的岗位职责

系统架构设计师的岗位职责 系统架构设计师需要负责系统及相关产品需求分析及架构设计。以下是小编整理的系统架构设计师的岗位职责。 系统架构设计师的岗位职责1 职责: 1. 负责公司系统的架构设计、研发工作 2. 配合产品经理对公司产品以及公司基础研究项目进行技术需求分析,承担从业务向技术转换的桥梁作用,根据产品业务需求提出技术方案和系统设计 3. 负责制定系统的整体框架,编写软件架构设计文档。对系统框架相关技术和业务进行培训,指导开发人员开发并解决系统开发、运行中出现的各种问题 4. 主持和参与系统逻辑模型和物理模型设计,负责开发和维护统一的软件开发架构,保证软件模块的复用性 5. 参与各项目、各阶段的技术评审;特别是技术架构方面和软件复用方面

6. 参与部门研发技术方向规划,负责提供软件产品框架和技术路线;负责关键技术的预研与攻关, 解决项目开发或产品研发中的技术难题 7. 协助部门经理合理分配软件研发任务使项目团队高效率运作,确保技术架构得以推进和实施 岗位要求: 1. 本科及以上学历,计算机或相关专业毕业, 8年以上软件产品开发及架构设计经验 2. 具有丰富的大中型开发项目的总体规划、方案设计及技术队伍管理经验 3. 熟悉C/C++或JAVA等开发语言,并且实际开发工作不少于5年;熟悉常见的数据库系统,如MySQL、Oracle和MongoDB 等 4. 精通设计模式和开源的框架,有面向对象分析、设计、开发能力(OOA、OOD、OOP),精通UML,熟练使用Rational Rose 等工具进行设计开发 5. 对计算机系统、网络和安全、应用系统架构等有全面的认识,熟悉项目管理理论,并有实践基础

系统架构设计师考试论文评分标准

系统架构设计师考试论文评分标准 系统架构设计师考试属于全国计算机技术与软件专业技术资格考试(简称计算机软件资格考试)中的一个高级考试。考试一共考三个科目,分别是上午的综合知识、下午的案例分析及论文,而论文一直都是令许多考生望而生畏的一个坎,它的评分标准到底是怎样的呢?考生在写作时,又有哪些要注意的点呢? 论文满分是75分,论文评分可分为优良、及格与不及格分3个档次。 评分的分数可分为: (1)60分至75分优良(相当于百分制80分至100分)。 (2)45分至59分及格(相当于百分制60分至79分)。 (3)0分至44分不及格(相当于百分制0分至59分)。 评分时可先用百分制进行评分,然后转化为以75分为满分(乘7.5)。 建议具体评分时,参照每一试题相应的“解答要点”中提出的要求方法,对照下述5个要点评分: 1、符合题意,切勿跑题 无论是技术论文、理论论文还是实践论文,都要切合解答要点中的一个主要方面或者多个方面进行论述。可分为非常切合、较好地切合与基本上切合3档。 2、应用尝试与水平(20%) 可分为很强的、较强的、一般的、较差的独立工作能力4档。

3、实践性(20%) 可分为如下4档: 有大量实践和深入的专业级水平与体会。 有良好的实践与切身体会和经历。 有一般的实践与基本合适的体会。 有初步实践与比较肤浅的体会。 4、表达能力(15%) 可从是否逻辑清晰、表达严谨、文字流畅和条理分明等区分为3档。 5、综合能力与分析能力(15%) 可分为很强、比较强和一般3档。 对于下面情况的论文,需要适当扣分(5~10分) (1)摘要就控制在300至400字的范围内,凡是没有写论文摘要、摘要过于简略或者摘要中没有实质性内容的论文。 (2)字迹比较潦草,其中有不少字难以边辨认的论文。 (3)正文基本上只是按照条目方式逐条罗列叙述的论文。 (4)确实属于过分自我吹嘘和自我标榜、夸大其词的论文。 (5)内容有明显错误和漏洞的,按同一类错误每一类扣一次分。 (6)内容仅属于大学生或研究生实习性质的项目并且其实际应用背景的水平相对较低的论文。 对于下述情况之一的论文,不能给予及格分数: (1)虚构情节,文章中有较严重的不真实或者不可信的内容出

系统架构设计师考试试题分类精解2016(案例分析与论文篇)

系统架构设计师考试试题分类精解2016(案例分析与论文篇)准备参加2016年下半年系统架构设计师考试的你,是不是在为考试的难点案例分析和论文写作发愁?不知道看什么书好?下面希赛软考学院小编为你推荐一本书——《系统架构设计师考试试题分类精解2016(案例分析与论文篇)》,此书对历年案例分析和论文真题进行了分析、总结和讲解,为你提供案例分析解题及论文写作的思路和技巧。 内容介绍 《系统架构设计师考试试题分类精解2016(案例分析与论文篇)》内容紧扣考试大纲,通过对历年试题进行科学分析、研究、总结、提炼而成。 对于案例分析试题,书中给出了解答方法,并总结了案例分析回答的思路,考生可通过阅读本书掌握考试大纲规定的知识点、考试的重、难点,熟悉案例分析试题形式、试题的深度和广度、考试内容的分布,以及答题方法和技巧。对于论文试题,书中给出了试题的解答方法,并提供了论文的写作知识、常见问题,以及解决办法。考生通过阅读本书,可了解论文出题方向,及论文写作方法与技巧。 章节信息介绍 第1章案例分析 1.1试题1(2015年下半年试题1) 1.2试题2(2015年下半年试题2) 1.3试题3(2015年下半年试题3) 1.4试题4(2015年下半年试题4) 1.5试题5(2015年下半年试题5) 1.6试题6(2014年下半年试题1) 1.7试题7(2014年下半年试题2)

1.8试题8(2014年下半年试题3) 1.9试题9(2014年下半年试题4) 1.10试题10(2014年下半年试题5) 1.11试题11(2013年下半年试题1-5) 1.12试题12(2013年下半年试题2-6) 1.13试题13(2013年下半年试题3-7) 1.14试题14(2013年下半年试题4-8) 1.15试题15(2013年下半年试题5-9) 1.16试题16(2012年下半年试题1) 1.17试题17(2012年下半年试题2) 1.18试题18(2012年下半年试题3) 1.19试题19(2012年下半年试题4) 1.20试题20(2012年下半年试题5) 1.21试题21(2011年下半年试题1) 1.22试题22(2011年下半年试题2) 1.23试题23(2011年下半年试题3) 1.24试题24(2011年下半年试题4) 1.25试题25(2011年下半年试题5) 1.26试题26(2010年下半年试题1) 1.27试题27(2010年下半年试题2) 1.28试题28(2010年下半年试题3) 1.29试题29(2010年下半年试题4)

年系统架构设计师论文范文

论文目录 一、论基于DSSA的软件架构设计与应用 二、论基于Rest服务的web应用系统设计 三、论软件可靠性设计与应用 一论基于DSSA的软件架构设计与应用精品文档,超值下载 【摘要】 去年三月份,我所在的公司启动国网电力用户用电信息采集系统项目,我被任命为项目负责人。国网电力用户用电信息采集系统是国家电网公司坚强智能电网建设的一部分。由于公司之前为南网(主要是广东省)开发过类似用电信息采集系统,且公司准备在电力行业做强做大,我提出了采用DSSA技术来研发国网用电信息采集系统,得到公司领导层的一致赞同。 由于项目功能实现上具有明显的阶段性,我决定采用演化方式来实现DSSA及完成应用产品开发。一是对原有系统、文档及国网用电信息系统功能规范进行分析,完成DSSA;二是对原有系统进行部件提取,做为核心资源的公共部件;三是加强对核心资源的管理,方便研发工程师查找部件及扩展部件。 经过近一年的努力,终于完成了公司用电信息采集系统核心资源的建立,也完成了国网电力用户用电信息采集系统项目。 【正文】 去年三月份,我所在的公司启动国网电力用户用电信息采集系统项目,我被任命为项目负责人。国网电力用户用电信息采集系统是国家电网公司坚强智能电网建设的一部分。公司

之前开发过广东电网公司计量营销一体化系统,类似于用电信息采集系统。 我对广东电网公司计量营销一体化系统的功能规范和国网电力用户用电信息采集系统的功能规范进行分析,发现除了系统内各自的通信协议不同外,其它的功能需求大体上相同。整个采集系统都是分三层实现,主站层,采集终端层和电能表层。由于电能表已经规范化了,有专门的表计生产厂家,这一层不需要投入资源进行研发。从公司目前现状来看,主站层投入研发工作量较少,一是主站的开发中模块化做得比较好;二是用户的需求基本一致。国网用电信息采集系统仅需要在广东电网公司计量营销一体化系统主站进行界面调整和支持国网用电信息采集系统通信协议即可达到要求。 根据之前开发的经验,用电信息采集系统开发的重点是采集终端的开发。因为采集终端需要安装到现场,而现场的用电环境各异,能够到达的远程信道也不同。采集终端可维护性低或可靠性低,则会产生大量的维护工作,影响公司品牌及利润。根据用电信息采集系统的要求,采集终端分为集中抄表终端、专变采集终端和公变采集终端。广东电网公司计量营销一体化系统的采集终端大体上也分为上述三类:低压集抄终端、负荷管理终端、配变监测终端。通过对采集终端的功能要求进行分析,可以看出它们归属于一个产品家族。我在项目组启动会议上提议采用DSSA技术进行采集终端产品的研发,建立公司用电信息采集系统核心资源,同时将计量营销一体化系统的采集终端也归结到产品家族中。 众所周知,DSSA(特定领域软件架构)就是在一个特定的问题领域中支持一组应用的开发,这些应用形成产品家族。DSSA是软件重用的一种手段,它由领域模型、参考需求、参考架构组成重用元素。 用电信息采集系统各终端基本需求都是对外接的电能表或测量点的读数进行采集,稍做处理后通过GPRS/CDMA信道远程传输给采集系统主站端。采集终端的功能模块一般包括测量点采集模块,表计规约模块,现场总线模块,PPP拨号模块,主站命令模块,本地维

软考系统架构设计师考试试题举例

软考系统架构设计师考试试题举例 系统架构设计师是软考中的一门高级资格考试,其考试题型有哪些,下面小编就三种不同类型的选题分别举例,希望考生们对考试题型的了解能有一定的帮助。 一选择题 1.在TCP/IP协议分层结构中,SNMP是在(1)协议之上的(2)请求/响应协议。在ISO/OSI/RM基础上的公共管理信息服务/公共管理信息协议CMIS/CMIP是一个完整的网络管理协议族,网络管理应用进程使用OSI参考模型的(3)。 (1) (2)A.异步 B.同步 C.主从 D.面向连接 (3)A.网络层B.传输层C.表示层D.应用层 2.软件产品线主要由(4)和产品集合两部分组成。 (4)A.构件库 B.核心资源 C.体系结构 D.开发组织 二案例分析问答题 阅读以下关于软件体系结构方面的叙述,回答问题1和问题2。 某集团公司要开发一个网络财务程序,使各地员工能在互联网络上进行财务处理和报销。在设计该财务程序的体系结构时,项目组产生了分歧: (1)张工程师认为应该采用客户机/服务器(C/S)结构。各分公司财务部要安装一个软件客户端,通过这个客户端连接到总公司财务部主机。如果员工在外地出差,需要报销帐务的,也需要安装这个客户端才能进行。 (2)李工程师认为应该采用浏览器/服务器(BS)结构,各分公司及出差员工直接通过Windows操作系统自带的IE浏览器就可以连接到总公司的财务部主机。 经过项目组的激烈讨论,最终选用了C/S和B/S混合结构。 [问题1] 请用200字以内的文字简要讨论C/S结构与B/S结构的区别及各自的优点和缺点。 [问题2] 请用200字以内的文字说明如何设计C/S和B/S混合结构,这样设计有什么好处

系统架构设计师考试大纲(2009年发布)

系统架构设计师考试大纲| 1.考试目标 考试合格人员应能够根据系统需求规格说明书,结合应用领域和技术发展的实际情况,考虑有关约束条件,设计正确、合理的软件架构,确保系统架构具有良好的特性;能够对项目睥系统架构进行描述、分析、设计与评估;能够按照相关标准编写相应的设计文档;能够与系统分析师、项目管理师相互协作、配合工作;具有高级工程师的实际工作能力和业务水平。 2.考试要求 (1)掌握计算机硬软件与网络的基础知识; (2)熟悉信息系统开发过程; (3)理解信息系统开发标准、常用信息技术标准; (4)熟悉主流的中间件和应用服务器平台; (5)掌握软件系统建模、系统架构设计基本技术; (6)熟练掌握信息安全技术、安全策略、安全管理知识; (7)了解信息化、信息技术有关法律、法规的基础知识; (8)了解用户的行业特点,并根据行业特点架构合适的系统设计;

(9)掌握应用的数学基础知识 (10)熟练阅读和正确理解相关领域的英文文献; 3.考试科目设计设置 (1)信息系统综合知识,考试时间为150分钟,笔试,选择题;(2)系统架构设计案例分析,考试时间为90分钟,笔试,问答题;(3)系统架构设计论文,考试时间为120分钟,笔试,论文题。二、考试范围 考试科目1:信息系统综合知识 1.计算机软件与网络基础知识 1.1操作系统 操作系统的类型和结构 操作系统基本原理 网络操作系统及网络管理 嵌入式操作系统与实时操作系统 1.2数据库系统

数据库管理系统的类型、结构和性能评价常用的关系型数据库管理系统 数据库模式 数据库规范化 分布式数据库系统,并行数据库系统 数据仓库与数据挖掘技术 数据库工程 备份恢复 1.3嵌入式系统 嵌入式系统的特点 嵌入式系统的硬件组成与设计 嵌入式系统应用软件及开发平台 嵌入式系统网络 嵌入式系统数据库 1.4数据通信与计算机网络

2019年系统架构设计师考试知识点辅导

2019年系统架构设计师考试知识点辅导 考虑用户的观点 当您为智能客户端应用程序确定合适的性能目标时,您应该仔细考虑用户的观点。对于智能客户端应用程序来说,性能与可用性和用户感受相关。例如,只要用户能够继续工作并且获得相关操作进度的充足反馈,用户就能够接受漫长的操作。在确定要求时,将应用程序的功能分解为多个使用情景或使用案例通常是有用的。您应该识别对于实现特定性能目标来说关键且必需的使用案例和情景。应该将很多使用案例所共有且经常执行的任务设计得具有较高性能。同样,如果任务要求用户全神贯注并且不允许用户从其切换以执行其他任务,则需要提供优化的且有效的用户体验。如果任务不太经常使用且不会阻止用户执行其他任务,则可能无须实行大量调整。对于您识别的每个性能敏感型任务,您都应该精确地定义用户的操作以及应用程序的响应方式。您还应该确定每个任务使用的网络和客户端资源或组件。该信息将影响性能目标,并且将驱动对性能实行度量的测试。可用性研究提供了非常有价值的信息源,并且可能大大影响性能目标的定义。正式的可用性研究在确定用户如何执行他们的工作、哪些使用情景是共有的以及哪些不是共有的、用户经常执行哪些任务以及从性能观点看来应用程序的哪些特征是重要的等方面可能非常有用。如果您要生成新的应用程序,您应该考虑提供应用程序的原型或模型,以便能够执行基本的可用性测试。 考虑应用程序操作环境 对应用程序的操作环境实行评估是很重要的,因为这可能对应用程序施加必须在您制定的性能目标中予以反映的约束。位于网络上的服务可能对您的应用程序施加性能约束。例如,您可能需要与您无法控制的 Web 服务实行交互。在这种情况下,需要确定该服务的性能,并且确定这是否将对客户端应用程序的性能产生影响。您还应该确定任何相关服务和组件的性能如何随着时间的变化而变化。某些系统会经受

2017年系统架构设计师案例分析试题加答案(1)

2017年系统架构设计师案例分析试题加答案(1) 系统架构设计师考试属于软考中的一项高级资格考试,考试分综合知识、案例分析和论文3个科目。下午的案例分析是考试的一大难点,希赛小编为大家整理了几道系统架构设计师案例分析试题,希望对大家有所帮助。 阅读以下关于软件系统架构选择的说明,回答问题。 希赛公司欲针对Linux操作系统开发一个KWIC(KevWordinContext)检索系统。该系统接收用户输入的查洵关键字,依据字母顺序给出相关帮助文档并根据帮助文档内容进行循环滚动阅读。在对KWIC系统进行需求分析时,公司的业务专家发现用户后续还有可能采用其他方式展示帮助内容。根据目前需求,公司的技术人员决定通过重复剪切帮助文档中的第一个单词并将其插入到行尾的方式实现帮助文档内容的循环滚动,后续还将采用其他的方法实现这一功能。 在对KWIC系统的架构进行设计时,公司的架构师王工提出采用共享数据的主程序-子程序的架构风格,而李工则主张采用管道-过滤器的架构风格。在架构评估会议上,大家从系统的算法变更、功能变更、数据表示变更和性能等方面对这两种方案进行评价,最终采用了李工的方案。 1、在实际的软件项目开发中,采用恰当的架构风格是项目成功的保证。请用200字以内的文字说明什么是软件架构风格,并对主程序-子程序和管道-过滤器这两种架构风格的特点进行描述。

2、请完成表中的空白部分(用+表示优、-表示差),对王工和李工提出的架构风格进行评价,并指出采用李工方案的原因。 3、规划图是李工给出的架构设计示意图,请将恰当的功能描述填入图中的(1)~(4)。 参考答案 1、软件架构风格是拙述特定软件系统组织方式的惯用模式。组织方式描述了系统的组成构件和这些构件的组织方式,惯用模式则反映众多系统共有的结构和语义。主程序-子程序架构风格中,所有的计算构件作为子程序协作工作,并由一个主程序顺序地调用这些子程序,构件通过共享存储区交换数据。管道-过滤器架构风格中,每个构件都有一组输入和输出,构件接受数据输入,经过内部处理,然后产生数据输出。这里的构件称为过滤器,构件之间的连接件称为数据流传输的管道。

系统架构设计师考试模拟试题加答案解析(四)

系统架构设计师考试模拟试题加答案解析(四)2016年下半年系统架构设计师考试将于11月12日举行。大家都准备好了吗?下面由希赛小编为大家整理了一些系统架构设计师考试模拟试题,希望对大家有所帮助。 试题 41、某自治系统采用RIP协议,若该自治系统内的路由器R1收到其邻居路由器R2的距离矢量中包含信息,则可能得出的结论是______。 A.R2可以经过R1到达net1,跳数为17 B.R2可以到达net1,跳数为16 C.R1可以经过R2到达net1,跳数为17 D.R1不能经过R2到达net1 42、在极限编程(XP)开发方法中,______策略有助于避免兼容性和接口问题,建立能及早发现错误的“冒烟测试”环境。 A.持续集成 B.简化设计 C.重构 D.系统隐喻 43、为实现图像信息的压缩,建立了若干种国际标准。其中,既是DVD的标准,也是高清晰度电视(HDTV)的标准是______。 A.MPEG-1 B.MPEG-2 C.MPEG-4

D.MPEG-7 44、ISO/IEC9126软件质量模型中第一层定义了6个质量特性,并为各质量特性定义了相应的质量子特性。子特性______不属于易用性质量特性。 A.易理解性 B.易操作性 C.易安装性 D.易学性 45、软件架构文档是对软件架构的正式描述,能够帮助与系统有关的开发人员更好地理解软件架构。以下关于软件架构文档化的描述中,错误的是______。 A.主要输出结果是架构规格说明书和测试架构需求的质量设计说明书 B.架构文档要保持即时更新,并记录每次进行修改的原则 C.文档只需分发给系统分析师和系统架构设计师,以增强文档的保密性D.文档的完整性和质量是软件架构成功的关键因素之一 46、模块的耦合度表现了模块之间相互关联的程度。以下耦合类型中,耦合程度最低的是______。 A.内容耦合 B.控制耦合 C.标记耦合 D.公共耦合 47、《中华人民共和国政府信息公开条例》自2008年5月1日起施行。某教授于2009年6月1日自行将该条例译成英文,投递给某国家的核心期刊,并于2009年11月1日发表。国家相关部门认为该教授的译文质量很高,经与

相关主题