收藏 分享(赏)

软件开发技术考试题.doc

上传人:cjc2202537 文档编号:135775 上传时间:2018-03-22 格式:DOC 页数:10 大小:136.50KB
下载 相关 举报
软件开发技术考试题.doc_第1页
第1页 / 共10页
软件开发技术考试题.doc_第2页
第2页 / 共10页
软件开发技术考试题.doc_第3页
第3页 / 共10页
软件开发技术考试题.doc_第4页
第4页 / 共10页
软件开发技术考试题.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、软件开发技术考试题一、名词解释1、软件质量保证(SQA)答:软件质量保证(SQA)是一种应用于整个软件过程的保护性活动,它包括:一种质量管理方法,有效的软件工程技术(方法和工具) ,在整个软件过程中采用的正式技术复审,一种多层次的测试策略,对软件文档及其修改的控制,保证遵从软件开发标准的规程,度量和报告机制。2、CMMI 与过程优化答:CMMI:是一种集成的优化的 CMM 标准,通过提供统一的过程改进框架,消除了不同模型之间的不一致和重复性,可望成为今后软件过程改进领域比较稳定的一个实用模型。软件过程优化:软件机构为了突出关键过程以改善软件的质量形成一套完整而成熟的软件过程,它需要一个从无序到

2、有序,从特殊到一般,从定性到定量,最后再从静态到动态的历程,或者说软件机构在形成成熟的软件过程之前必须经历一系列的成熟阶段。因此有必要建立一个软件过程成熟度模型来对过程作出一个客观、公正的评价,以促进软件开发组织改进软件过程。这个软件过程的改进即为软件过程优化。3、软件配置管理(SCM)答:软件生存期各阶段的交付项管理问题,主要用于标记变化、控制变化、保证变化被适当地实现、向其他可能有兴趣的人员报告变化等活动。4、黑盒测试与白盒测试答:白盒测试: 分析程序的内部逻辑结构,注意选择适当的覆盖标准,设计测试用例,对主要路径进行尽可能多的测试。黑盒测试: 不考虑程序的内部结构与特性,只根据程序功能或

3、程序的外部特性设计测试用例。 5、RUP 与 XP 过程模型答:Rational 统一过程是由 Rational 软件公司开发和营销的一种软件工程过程,是开发组织用以分配与管理任务和职责的一种规范化方法。这个过程的目的是在预定的进度和预算范围内,开发出满足最终用户需要的高质量软件。XP(Extreme Programming) ,是由 Kent Beck 大师提出的一种优秀的软件开发方法,提出了改进软件开发方法的四个要素:沟通(communication) 、简单化(simplicity) 、反馈(feedback) 、勇气(courage) ,这形成了 XP 的核心价值观。6、UML 统一建

4、模答:UML 是 UML 是一个通用的可视化建模语言,是一种可以详细描述的语言,UML 是用于构造系统或理解系统的语言,UML 是文档化语言, 对软件进行描述、可视化处理,构造和建立软件系统制品的文档。它支持大部分现存的面向对象开发过程,给出系统模型,表达不同层次的细节,适用于软件生命周期的各个阶段,还能给出系统的多视角的构造模型图如:USE CASE 视图、逻辑视图、进程视图、实现视图、部署视图等。二、简答题1、优秀的需求的特征,如何获取有效的软件需求。答:软件需求分析是软件生存期的一个重要阶段,是软件开发项目得以成功的基础,其最根本的任务是确定为了满足用户需求的软件系统必须做什么。软件需求

5、分析是一个不断发现和决定的过程,在此过程中,软件开发者和软件申请者(用户)同样起着重要作用。若要获取有效的软件需求,应给出软件系统的数据流程图与数据结构,构造一个完全的系统逻辑模型,同时,还应提出详细的功能说明确定设计限定条件、规定性要求;再者,还应密切与用户联系,使用户确定自己的任务,以便实现上述两项目标。为了实现上述目标,可用结构化分析方法 SA、软件原型化方法、面向数据结构的 JACKSON 方法(JSD) 、面向数据结构化数据系统开发方法(DSSD) 、面向对象的分析方法(OOA)等来保护获取有效的软件需求。2、软件模块化特点与模块独立性分析。答:软件模块化是指:软件被划分成独立命名和

6、可独立访问的被称作模块的构件,每个模块完成一个子功能,它们集成到一起满足问题需求。模块独立是指开发具有独立功能而且和其它模块之间没有过多的相互作用的模块。模块独立的意义:功能分割,简化接口,易于多人合作开发同一软件;独立的模块易于测试和维护。模块独立性, 是指软件系统中每个模块只涉及软件要求的具体的子功能, 而和软件系统中其它的模块的接口是简单的。一般采用两个准则度量模块独立性,即模块间耦合和模块内聚。耦合性是指对一个软件结构内不同模块间互连程度的度量;内聚性是指标志一个模块内各个处理元素彼此结合的紧密程度,理想的内聚模块只做一件事情。软件模块化的设计原则一般为:A 、力争尽可能弱的耦合性。尽

7、量使用数据耦合,少用控制耦合,限制公共环境耦合的范围,完全不用内容耦合;B、力争尽可能高的内聚性。力争尽可能高的内聚性,并能识别出低内聚性。3、说明软件建模语言 UML 进行软件系统分析设计过程。答:UML 是一种建模语言而不是方法,这是因为 UML 中没有过程的概念,而过程正是方法的一个重要组成部分。UML 本身独立于过程,这意味着用户在使用 UML 进行建模时,可以选用任何适合的过程。一般采用的建模过程有:瀑布开发模型、迭代递增开发模型。基于 UML 的系统开发采取增量迭代开发模型,步骤如下:A、需求:最初需求规格说明应当由代表系统最终用户的人员提供,内容包括系统基本功能需求和对计算机系统

8、的要求。B、分析:分析的任务是找出系统的所有需求并加以描述,同时建立模型,以定义系统中的关键领域类,应由系统用户和开发人员合作完成。分析的第一步是定义用例,以描述所开发系统的外部功能需求。用例分析包括阅读和分析需求说明,此时需要与系统的潜在用户进行讨论。C、设计:设计阶段的任务是通过综合考虑所有的技术限制,以扩展和细化分析阶段的模型。设计阶段可以分为两个部分:结构设计是高层设计,其任务是定义包(子系统) ,包括包间的依赖性和主要通信机制。我们希望得到尽可能简单和清晰的结构,各部分之间的依赖尽可能的少,并尽可能的减少双向的依赖关系。 第二部分是详细设计,细化包的内容,使编程人员得到所有类的一个足

9、够清晰的描述。D、实现:构造或实现阶段是对类进行编程的过程。可以选择某种面向对象的编程语言作为实现系统的软件环境。在实现阶段中,可以选取各种图的说明来辅助编程,比如:类图,状态图等。E、测试和配置:完成系统编码后,需要对系统进行测试,它通常包括:单元测试、集成测试、系统测试和验收测试。在单元测试中使用类图和类的规格说明,对单独的类或一组类进行测试;在集成测试中,使用组件图和合作图,对各组件的合作情况进行测试;在系统测试中,使用用例图,以检验所开发的系统是否满足例图所描述的需求。4、软件测试策略与用例设计方法。答:软件测试测试策略开始是单元测试:集中对用源代码实现的每一个程序单元进行测试,检查各

10、个程序模块是否正确地实现了规定的功能。然后是组装测试:把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。第三是确认测试:要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。最后是系统测试:把已经经过确认的软件纳入实际运行环境中,与其它系统成份组合在一起进行测试。测试用例设计策略一般先用黑盒法设计基本的测试数据,再用白盒法补充一些必要的测试数据。在任何情况下都应该使用边界值分析方法。通常情况下测试过程均按这 4 个步骤进行,即单元测试、组装测试、确认测试和系统测试。 5、SOA 体系架构特点与作用?答:SOA(service-orient

11、ed architecture)是面向服务的体系结构,是一类分布式系统的体系结构,是构件如何组成一个系统的模型,它将应用程序的不同功能单元(称为 服务 )通过这些服务之间定义良好的接口和规范按松耦合方式整合在一起,即将多个现有的应用软件通过网络将其整合成一个新系统。接口应该是独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。SOA 的作用是 A、利用现有的资产。方法是将这些现有的资产包装成提供企业功能的服务。组织可以继续从现有的资源中获取价值,而不必重新从头开始构建。B、更易于集成和管理复杂性。将基础设施和实现发生的改变所带来的

12、影响降到最低限度。因为复杂性是隔离的。当更多的企业一起协作提供价值链时,这会变得更加重要。C、更快地整合和现实。通过利用现有的组件和服务,可以减少完成软件开发生命周期所需的时间。这使得可以快速地开发新的业务服务,并允许组织迅速地对改变做出响应和缩短开发时间。D、减少成本和增加重用。通过以松散耦合的方式公开业务服务,企业可以根据业务要求更轻松地使用和组合服务。E、SOA 业务流程是由一系列业务服务组成的,可以更轻松地创建、修改和管理它来满足不同时期的需要。6、RUP 对软件开发管理的商业实践的价值与意义。答:软件过程(Software Process)是人们建立、维护和进化软件产品整个过程中所有

13、技术活动和管理活动的集合。Rational 统一过程( RUP),是一个指导软件开发的方法。RUP 可以增强团队的开发效率,它使团队中每个开发人员的见解和思想得到统一,使开发小组成员的沟通更为容易,而这正是任何项目要取得成功的关键因素;它可以增强开发人员对软件的预见性,最终的好处就是提高了软件质量,并有效缩短了软件从开发到投放市场的时间。基于 RUP 的软件过程,被分解为四个顺序的阶段,分别是初始阶段(Inception) 、细化阶段(Elaboration)、构建阶段( Construction)和交付阶段(Transition)。RUP 的软件过程是一个迭代过程。RUP 核心思想:( 1)

14、用例驱动 (2)以架构为中心 (3) RUP 是迭代和增量性的以网上支付结算平台系统为例,这是一个服务于金融行业的大型电子商务软件平台,提供企业或个人客户随时可以通过具有安全保密的网络付款机制。整个平台由生产系统、测试兼备援系统、数据库系统、系统管理员操作系统和分行柜员操作系统组成。整个开发过程按照 RUP 过程模式开发。在项目的初始阶段,主要建立项目的软件规模和边界条件,明确子系统的接口规范。通过与用户的交流,明确用户的需求,形成了 Use Case 文档、同时,估计了整个项目的总体成本和进度,评估了潜在的风险。在项目的细化阶段,根据初步的系统需求,开发了完整的网页形式的系统原型,并形成需求

15、规格说明书,作为验收标准。形成系统分析书和系统架构文档,构筑了三层结构的体系结构,完成了系统数据库的设计,形成了数据库规格说明书。并在此基础上,为构建阶段制订了详细的迭代计划。在项目的构建阶段,经过从需求、分析设计到编码的工作流迭代。对系统的需求、架构进行了修改和完善,形成了系统功能不断聚集在系统体系框架下的有利局面,用户不断提出的需求变更得到了很好的满足,系统功能不断完善。在项目的交付阶段,把经过集成测试的软件制作安装盘,安装在银行的服务器上,接受实际环境的测试。编写了详细的用户手册,然后对有关用户和维护人员进行培训和指导。在以上各阶段结束时,都要进行了严格的阶段技术评审。由于采用了基于 R

16、UP 的软件过程,规范了管理和开发流程,有效地控制了资源,可保证该项目在预定的预算和时间期限内顺利完成.RUP 在迭代的开发过程、需求管理、基于构件的体系结构、可视化软件建模,验证软件质量及控制软件变更等方面,针对所有关键的开发活动为每个开发成员提供了必要的准则、模板和工具指导。它建立了简洁和清晰的过程结构,为开发过程提供较大的通用性。与传统的软件过程相比较,基于 RUP 的软件过程可以降低产品风险,规范管理和开发流程,有效地控制资源,提高开发效率。7、CMM 有何用途?描述其 5 个成熟度等级。答:软件能力成熟度模型( Capability Maturity Model,CMM)是美国大学C

17、arnegie Mellon University 软件工程研究所出的一套系统、规范的对软件生产过程进行管理的模型,其有效性已为大量实践所证实,并已成为对一个软件企业的生产能力和产品质量进行衡量的事实标准。CMM 的主要作用是:CMM 可以指导软件机构如何控制软件产品的开发和维护过程,以及如何向成熟的软件工程体系演化,并形成一套良性循环的管理文化。具体说来,一个企业要想改进其生产过程,应该采取如下策略和步骤:A 、确定软件企业当前所处的过程成熟级别;B、了解对改进软件生产质量和加强生产过程控制起关键作用的因素;C、将工作重点集中在有限几个关键目标上,有效达到改进机构软件生产过程的效果,进而可持

18、续地改进其软件生产能力。CMM 的 5 个成熟度等级分别为:初始级、可重复级、已确定级、已管理级、优化级。三、综述题1、新一代网络技术条件下软件开发技术平台的变化趋势。计算机软件技术在整个计算机科学技术领域中,占有极其重要的地位。国际上许多专家认为,软件技术有可能是未来科学技术最大的突破领域。同时,软件技术还渗透到计算机科学技术的其他领域,如人工智能 CAD/CAT 和计算机图形学、办公室自动化,MIS 与 DSS,计算机仿真等,计算机软件技术的水平对整个计算机科学技术的发展影响极大。软件技术发展的趋势可从以下几个方面进行阐述:一、 新一代网络核心技术软交换随着计算机和通信技术的不断发展,通过

19、在一个公共的分组网络中承载话音、数据、图像已经被越来越多的运营商和设备制造商所认同。在这样的业务驱动和网络融合的趋势下,诞生了 NGN 下一代网络模型,实现在分组网络中,采用分布式网络结构,有效承载话音、数据和多媒体业务。作为 NGN 网络的核心技术,软交换的发展因而受到越来越多的关注,软交换是网络演进以及下一代分组网络的核心设备之一,它独立于传送网络,主要完成呼叫控制、资源分配、协议处理、路由、认证 、计费等主要功能,同时可以向用户提供现有电路交换机所能提供的所有业务,并向第三方提供可编程能力。作为下一代网络的控制功能模块,软交换提供的呼叫控制功能是各种业务的基本呼叫控制,智能则尽可能地移至

20、外部的业务层,它为下一代网络提供具有实时性要求的业务的呼叫控制和连接控制功能,是下一代网络呼叫与控制的核心。 二、 第三代移动通信技术 3G在下一代互联网中,无线技术得到广泛应用,网络通信技术将成为发展的主题。3G 是英文 3rd Generation 的缩写,即第三代移动通信技术。相对第一代模拟制式手机(1G)和第二代 GSM, TDMA 等数字手机(2G)。第三代手机一般地讲,是指将无线通信与国际互联网等多媒体通信结合的新一代移动通信系统。它能够处理图像、音乐、视频流等多种媒体形式,提供包括网页浏览、电话会议、电子商务等多种信息服务。为了提供这种服务,无线网络必须能够支持不同的数据传输速度

21、,也就是说在室内、室外和行车的环境中能够分别支持至少2Mbps(兆字节/每秒)、384kbps(千字节/每秒)以及 144kbps 的传输速度。 三、 下一代互联网的主导协议 IPV6 IPV6 是“Internet Protocol Version 6”的缩写,也被称作下一代互联网协议,其最显著的特征是通过采用 128 位的地址空间替代 IPv4 的 32 位地址空间来提高下一代互联网的地址容量。基于 IPv4 协议的第一代互联网发端于美国。依靠这一技术独断,美国随之垄断了从光纤、元器件、路由器,到操作系统等一系列产品领域,甚至全世界的网络都要为美国带宽费用 “埋单”。但是,随着互联网应用范

22、围的扩大,IPv4 面临着越来越不容忽视的危机,如地址匮乏等。1996 年,美国政府出台下一代互联网 NGI 计划;1998 年,我国专家就开始了 IPv6 研究工作。四、 新一代网络信息化的极限应用网格时代 网格(Grid ),又称为虚拟计算环境 ,是近年来兴起的一种重要的网络信息技术。网格利用计算机网络把地理上广泛分享的计算资源、存储资源、网络资源、软件资源、信息资源、知识资源等连成一个逻辑整体,然后象一台超级计算机一样为用户提供一体化的信息应用服务,实现互联网上所有资源的全面连通、全面共享、消除信息孤岛和资源孤岛,被称为是继传统因特网、Web 之后的第三个大浪潮,可称为第三代因特网应用,

23、它将带来因特网的新生。 网格计算的核心构件是网格中间件,通过聚合计算设备,高性能存储器、数据库,甚至包括科学仪器,来为用户提供对计算力随时随地的、透明的、远程的、安全的、可靠的访问。 五、 网络安全技术显得格外重要 21 世纪,随着 Internet 的发展,网络丰富的信息资源给用户带来了极大的方便,但同时也给上网用户带来了安全问题。国际标准化组织 (ISO)对计算机系统安全的定义是:为数据处理系统建立和采用的技术和管理的安全保护,保护计算机硬件、软件和数据不因偶然和恶意的原因遭到破坏、更改和泄露。由此可以将计算机网络的安全理解为 :通过采用各种技术和管理措施 ,使网络系统正常运行,从而确保网

24、络数据的可用性、完整性和保密性。一个安全的计算机网络应该具有可靠性、可用性、完整性、保密性和真实性等特点。随着网络经济的发展和电子商务的展开,严防黑客入侵、切实保障网络交易的安全,不仅关系到个人的资金安全、商家的货物安全,还关系到国家的经济安全、国家经济秩序的稳定问题,因此各级组织和部门必须给予高度重视。针对日益严重的网络安全问题和越来越突出的安全需求, “可适用网络安全模型”和 动态安全模型”应运而生。目前,PPDR 安全管理模型已被业内人士广泛认同,并将其嵌入到安全管理的过程中,PPDR 值得我们参考、借鉴 。纵观中国互联网的发展,互联网的精髓在于一个 变”字,而网络技术的创新,也改变了互

25、联网的未来。下一代互联网将是一个大量采用创新技术,以 IP 为中心,可以支持语音、数据和多媒体业务的融合。网络 NGI、 NGN、 GRID 不是现有网的简单延伸和迭加,而是一个不断发展的概念和过程,我们希望它具有传统电话网的普遍性和可靠性,因特网的灵活性,以太网的运作简单性,ATM 的低延时,光网络的带宽,蜂窝网的移动性,有线电视网的丰富内容。在 21 世纪,我们将看到一个 IP 世界、一个全光的世界、一个无线世界,让人们尽情享用丰足的带宽、智能化的个性服务、数不胜数的应用无缝覆盖的移动性! 2、分析企业级软件系统架构技术与开发方法?从个人辅助办公软件到管理信息系统(managemen t

26、infor-mation system, MIS)再到大规模的企业级应用,软件对企业业务的支持方式在不断地进步,这种进步总体上呈现出从局部到整体、从静态到动态、从执行到决策、从数据管理到智能分析的态势。为了适应这种进步,企业应用软件的功能越来越丰富、规模越来越庞大、结构越来越复杂,这些都对构造和应用企业应用软件的工程方法也提出了越来越高的要求。企业应用软件在发展的过程中,在不同阶段所解决的主要问题是不同的,对其进行构造的关键问题也是不同的。在个人辅助办公软件阶段,其主要解决的是业务功能实现的问题,构造的关键在于软件的设计;在部门级应用的 MIS 系统阶段,其主要解决的是工作流的实现问题,构造的

27、关键在于系统的分析;而在大型企业级应用阶段,其主要解决的是针对企业整个业务体系的静态执行支持和动态演变支持问题,构造的关键在于企业级架构的实现和扩展。在进一步探讨企业应用软件架构的结构规律和构造方法之前,应先对其所需要支撑的企业业务体系具有的特点进行简单的分析和研究。1 企业业务体系的特点企业业务体系属于庞大而复杂的工程对象,它的复杂性通常超出了的一个人员或部门的能力所能控制的范围。因而在实际运行中它通常会被按照一定的工程方法进行划分,形成诸如研发、制造、采购、计划、市场、财务、人事、档案等业务子系统。业务体系的复杂性还表现在另一个重要的方面,那就是它始终处于或快或慢的变化之中,促成这种变化的

28、因素同时来源于企业内部和外部。应用软件在企业中的作用主要可分为两个方面,一方面是作为企业级信息系统的基础和载体,固化和积淀企业中业已成熟的经营策略和业务逻辑;另一方面是及时地将企业中产生的创新思想和经营智慧纳入业务体系中,同时为新的创新和发展提供应用反馈和决策依据。2 企业应用软件的发展历史及其存在的问题在应用软件服务于企业业务的早期,它只是被用来辅助个人业务的执行,因而不至于形成一个企业级架构,而在 MIS 系统阶段,企业开始参照传统的业务划分方式去构造一个个业务信息系统。如制造 MIS、计划 MIS、财务 MIS、采购 MIS 等,这样的软件系统通常产生于特定的软件开发项目或商品化的软件产

29、品,在整理需求时通常关注于企业中特定业务链的构造而较容易忽略业务链间的固有关联,因而会造成企业中大量基础性的业务对象被重复管理且一致性得不到保证,使业务数据的有效性也大打折扣,实际表现为企业的业务数据被建设成一个个短缺和冗余并存且缺乏规范性和一致性的数据孤岛。除了数据孤岛问题以外,由于各个项目所采用的技术方案的差异且缺乏完善而统一的规范和标准,企业的业务逻辑也经常遭到不合理的分割,造成重叠和不完整并存的状况,且彼此间难以沟通和联络。这样的应用效果显然是企业无法接受的。3 企业应用软件架构的应用原理构造企业应用软件的挑战不仅来自于其必须满足企业业务体系严格的整体性需求,也同样来自于满足其持续的适

30、应性需求。这种挑战带来的困难使企业应用软件无法作为一个整体被直接构造,而必须借助于层级理论的帮助对其进行划分以降低基础构造单元的复杂性,直至使其达到当今软件技术可以直接构造的程度。针对企业应用软件的整体性和适应性需求,企业软件架构分别采用不同的划分方法和原则来加以应对,分别表现在其空间和时间两个构造维度上。3.1 企业应用软件架构的空间构造维度在空间构造维度中,企业应用软件架构主要描述软件的构成方式。在企业中业务执行人员和软件开发人员对应用软件的关注点不同,业务人员较为关注的是软件的使用特性,即软件是否能满足业务执行的功能性需求;而开发人员较为关注的是软件的构造特性,即软件的体系结构是否合理,

31、以及由此而决定的软件扩展性、维护性、可靠性等非功能性指标。企业中业务人员所直接使用的业务功能通常以构件的形式进行开发,这些构件通过软件界而直接为业务人员提供业务执行所需要的各项操作功能,它们是服务于企业中某项具体业务的,通常会随着具体业务执行方式或相关业务链的调整而经常变化,可以称之为业务相关构件。为了保持企业中各项业务内容的关联性和一致性,业务相关构件的开发和部署必须基于稳定而通用的业务无关构件所提供的各项功能,如果这些功能是以软件服务的方式提供的,那这样的企业应用软件架构通常被称为基于服务的架构(service oriented archi-tecture, SOA)。3.2 企业应用软件

32、架构的时间构造维度在时间构造维度上企业应用软件架构主要描述软件的形成方式,即企业应用软件如何围绕着架构从无到有、从小到大在企业中不断生长、不断扩展的开发和应用方式。依据面向对象软件工程方法构造的软件系统在长期的发展过程中形成了具有鲜明特色的构造方式,在以项目为组织单位的软件开发活动中,主流的软件工程方法大多尊崇 3 个重要开发原则:以架构为中心、以用例为驱动及循环迭代式开发。3.2.1 以架构为中心企业软件架构自身的形成过程就是一个在企业中不断生长的过程,它可以由一些最典型、最基本的软件功能开始,在持续不断的应用过程中渐渐地生长壮大,其最基础的形态可能包括企业级组织与人员管理、企业级数据字典管

33、理,软件构件管理,访问控制管理等功能,这些功能在实现后就已可支持一些典型的企业业务支持构件的开发和运行。其中在当前最受业务推崇并发展极为迅速的架构方法当数面向服务的架构 SOA 的研究和应用。3.2.2 以用例为驱动用例方法是面向对象软件开发方法所普遍采用的另一个重要的工程方法,用例作为一种描述手段即可以描述一个实际的业务过程也可以描述一个具体的软件过程,因而其可以作为业务人员与软件开发人员相互沟通和协作的一个共同的基础,架起业务领域与软件领域之间的桥梁。用例在企业应用软件开发和应用中尤其具有重要的实际意义,它使企业中的各类人员有一个通用而规范的方式进行交流,因而为业务抽象、业务优化等业务范畴

34、中的活动与各类软件活动之间提供了一个流畅而无缝的连接,使软件架构的持续性扩展和改进成为可能,也使业务支持构件伴随着业务执行过程的优化而不断得到维护和改良成为可能。3 .2.3 循环迭代式开发众多软件开发项目的结果表明,企业为采用循环迭代式开发所付出的耐心而得到的回报是丰厚而易见的,这主要表现在以下几个方面:迭代方法使软件开发的风险得到显著降低,也使应用的风险得到有效控制;迭代方法使软件开发较容易按计划安排的时间进行,而不至于引起过大的延误; 业界经验证明迭代方法以小步快跑的方法进行开发比起漫长而不断变化的开发方式明显提高开发效率;迭代方法清楚地认识到一个经常被忽略的事实,那就是用户需求和软件需

35、求是不确定的、难以准确描述的以及持续变化着的。4 企业应用软件架构的实施方法4.1 建立企业业务与其支持软件之间良性互动的机制企业业务的执行需求和改进需求是业务支持软件得以生存和发展的原始动力,而当前的时代技术条件下软件技工程技术和方法是支持企业业务执行和业务改进的最重要的技术手段。正常情况下企业业务与企业应用软件这两者的发展过程必然是相互协调和同步的,其中任何一个方面的停顿或倒退都会对另一个方面起到制约和迟滞作用,同样某个方面的突破也会拉动另一个方面的发展。基于架构的企业应用软件提倡以小步、精确、持续的方式适应或拉动企业业务的发展,这种互动方式显然是后者最适合的发展和改进方式。业务和软件都是

36、活跃的、自驱动、自发展的系统,它们各自都具有不断向前发展的内在需要和外部动力,只要协调起两者的发展步伐,就一定可以实现相互借力、相互促动的良性互动机制。4.2 实施企业软件开发过程成热的软件开发组织必须具有一个适合其自身实际情况软件开发过程,这个过程用来保证其所承担的各个不同的开发任务中所包含的各项活动被按照统一的经过验证的合理方法进行组织,这个过程同时也是保证其所开发的软件产品能够在预期的期限内满足预期的需求和达到预期的质量的最基本的条件。通过应用软件开发过程还是借鉴业界同类产品开发经验和有效使用各类开发工具的前提条件。与软件工业界所使用的项目软件过程不同的是,企业中围绕架构进行的软件活动通

37、常并不一定按项目进行组织,它们与业务规划和业务执行的关系显得更加密切,也更具有日常性和持续性。因此企业软件开发过程除了需要借鉴开发成功的项目、软件开发过程的经验和方法以外,还必须建立起软件开发话动与企业业务规划和业务执行支持之间更密切的关联,这就使企业软件活动的内涵相对于项目软件话动来说显得更为丰富。4.3 基于构件级的软件开发框架进行开发无论是企业应用软件架构本身还是部署于其上的特定业务支持软件,它们中的绝大部分功能单元都是以构件的形式开发和部署的,这些构件大都具有相似的结构形式、开发方法,并基于一个通用的企业级的开发平台,而且这些构件间的通讯和协作方式也应该足够的标准和规范。应用软件开发框

38、架包含了一系列具体的软件开发技术和公共代码,通过这些技术的配合应用,在基于公共代码的基础上进行特定业务功能的开发不仅使开发的软件更加符合相关标准,也降低了软件开发的技术难度及减少了大量低水平的重复开发工作,使软件的生产效率和质量都能得到显著提高,从而也使软件构件的扩展性和应用效果得到切实的保障。用于企业应用软件开发的软件开发框架通常是构件级的,而且应该严格依照依赖反转原则(dependency inversion principle DIP)进行设计。4.4 重视架构及其基础构件的开发和维护从表面来看,为企业中某项具体业务提供直接支持的是特定的业务构件,但是在业务构件可以被高效、低耗、快节奏地

39、开发之前,一个功能强大而稳定可靠的应用软件架构是必不可少的基础,企业应用软件架构是集中了各类软件技术人员和业务分析人员的经验智慧的创造性劳动的产物,也是企业应用软件的应用核心和扩展基础。企业应该对应用软件架构投入足够的关注和重视,而不应只重视具体的业务支持软件的开发和应用。5 结束语市场环境下的企业必然要求自己的体系能供提供强大的业务执行力并不断增强业务执行水平,企业也意识到信息技术和软件技术是达到这个目的重要的技术手段,这些都为企业应用软件的发展提供了迫切的需求牵引。软件工程人员的不断努力和这个领域下程智慧的积累为企业应用软件的发展提供了强大的技术支持。架构的应用是企业应用软件发展的必然趋势

40、,也是应用软件与企业业务形成相互促动、共同发展的良性互动关系的必要保证,通过对先进软件工程理论和软件开发技术的合理运用,企业信息化建设的长期、综合性应用效果是完全可以得到保证的。四、论文A、如何构建应用整合的大规模企业级信息化软件系统?提示:信息孤岛、信息融合、应用集成 EAI、面向服务 SOA 体系架构、模型驱动、BEA Weblogic、IBM WebsphereB、新一代网络条件下软件开发平台的变化趋势?提示:NGI、NGN 、3G、P2P、IPv6、技术融合、网格技术、增值服务、DCOM/COM+、JAVA、 J2EE、.NET 、开源软件、CORBAR要求:两题必作,以学术论文的形式提交两篇综合报告,每篇字数 5000 字,两篇共一万字内容(约 A4 纸 10 页) 。中英文摘要、关键词、参考文献(不少于10 篇)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教育教学 > 专升本考试

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报