niusouti.com

论软件系统架构评估 对于软件系统,尤其是大规模的复杂软件系统来说,软件的系统架构对于确保最终系统的质量具有十分重要的意义,不恰当的系统架构将给项目开发带来高昂的代价和难以避免的灾难。对一个系统架构进行评估,是为了:分析现有架构存在的潜在风险,检验设计中提出的质量需求,在系统被构建之前分析现有系统架构对于系统质量的影响,提出系统架构的改进方案。架构评估是软件开发过程中的重要环节。请围绕“论软件系统架构评估”论题,依次从以下三个方面进行论述。 1.概要叙述你所参与架构评估的软件系统,以

题目

论软件系统架构评估 对于软件系统,尤其是大规模的复杂软件系统来说,软件的系统架构对于确保最终系统的质量具有十分重要的意义,不恰当的系统架构将给项目开发带来高昂的代价和难以避免的灾难。对一个系统架构进行评估,是为了:分析现有架构存在的潜在风险,检验设计中提出的质量需求,在系统被构建之前分析现有系统架构对于系统质量的影响,提出系统架构的改进方案。架构评估是软件开发过程中的重要环节。

请围绕“论软件系统架构评估”论题,依次从以下三个方面进行论述。 1.概要叙述你所参与架构评估的软件系统,以及在评估过程中所担任的主要工作。 2.分析软件系统架构评估中所普遍关注的质量属性有哪些?详细阐述每种质量属性的具体含义。 3.详细说明你所参与的软件系统架构评估中,采用了哪种评估方法,具体实施过程和效果如何。


相似考题
更多“论软件系统架构评估 对于软件系统,尤其是大规模的复杂软件系统来说,软件的系统架构对于确保最 ”相关问题
  • 第1题:

    简述从软件的架构层次来看嵌入式软件系统模型的分类。


    答案:从软件的架构层次来看嵌入式系统模型共有3类:
    没用OS和BSP 的模型;有OS没用BSP的模型,有OS和BSP的模型。

  • 第2题:

    以下关于软件架构设计重要性的描述,( )是错误的。

    A.软件架构设计能够满足系统的性能、安全性、可维护性等品质 B.软件架构设计能够帮助项目干系入(Stakeholder)更好地理解软件结构 C.软件架构设计能够帮助架构师更好地捕获和细化系统需求 D.软件架构设计能够有效地管理系统的复杂性,并降低系统维护费用


    正确答案:C

  • 第3题:

    研究软件架构的根本目的是解决软件的复用、质量和维护问题,软件架构设计是软件开发过程中关键一步,因此需要对其进行评估,在这一活动中,评估人员关注的是系统的 ( ) 属性。

    A.功能
    B.性能
    C.质量
    D.安全

    答案:C
    解析:
    在架构评估过程中,评估人员关注的是系统的质量属性。主要包括:性能、可靠性、可用性、安全性、可修改性、功能性、可变性、互操作性。

  • 第4题:

    研究软件架构的根本目的是解决软件的复用、质量和维护问题,软件架构设计是软件开发过程中关键的一步,因此需要对其进行评估,在这一活动中,评估人员关注的是系统的( )属性。

    A.功能
    B.性能
    C.质量
    D.安全

    答案:C
    解析:
    本题考查的是软件架构评估相关内容,正确选项是C质量。
    软件架构评估可以只针对一个架构,也可以针对一组架构。在架构评估过程中,评估人员所关注的是系统的质量属性。课本原文查考需记忆。

  • 第5题:

    论软件系统架构风格系统架构风格(System Architecture Style)是描述某一特定应用领域中系统组织方式的惯用模式。架构风格定义了一个词汇表和一组约束,词汇表中包含一些构件和连接件类型,而这组约束指出系统是如何将这些构件和连接件组合起来的。软件系统架构风格反映了领域中众多软件系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。软件系统架构风格的共有部分可以使得不同系统共享同一个实现代码,系统能够按照常用的、规范化的方式来组织,便于不同设计者很容易地理解系统架构。 (请围绕“论软件系统架构风格”论题,依次从以下三个方面进行论述。) 1.概要叙述你参与分析和开发的软件系统开发项目以及你所担任的主要工作。 2.分析软件系统开发中常用的软件系统架构风格有哪些?详细阐述每种风格的具体含义。 3.详细说明你所参与的软件系统开发项目中,采用了哪种软件系统架构风格,具体实施效果如何。


    答案:
    解析:
    [写作要点] 一、简要描述所参与分析和开发的软件系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。 二、分析在软件系统开发中常用的软件系统架构风格,详细阐述每种风格的具体含义。 软件系统开发中常用的软件系统架构风格主要包括: 1.管道和过滤器风格 在管道/过滤器风格的软件体系结构中,每个构件都有一组输入和输出,构件读输入的数据流,经过内部处理,然后产生输出数据流。这个过程通常通过对输入流的变换及增量计算来完成,所以在输入被完全消费之前,输出便产生了。因此,这里的构件被称为过滤器,这种风格的连接件就像是数据流传输的管道,将一个过滤器的输出传到另一过滤器的输入。此风格特别重要的过滤器必须是独立的实体,它不能与其他的过滤器共享数据,而且一个过滤器不知道它上游和下游的标识。一个管道/过滤器网络输出的正确性并不依赖于过滤器进行增量计算过程的顺序。 2.数据抽象和面向对象风格 抽象数据类型概念对软件系统有着重要作用,目前软件界已普遍转向使用面向对象系统。这种风格建立在数据抽象和面向对象的基础上,数据的表示方法和它们的相应操作封装在一个抽象数据类型或对象中。这种风格的构件是对象,或者说是抽象数据类型的实例。对象是一种被称作管理者的构件,因为它负责保持资源的完整性。对象是通过函数和过程的调用来交互的。 3.基于事件的隐式调用风格 基于事件的隐式调用风格的思想是构件不直接调用一个过程,而是触发或广播一个或多个事件。系统中的其他构件中的过程在一个或多个事件中注册,当一个事件被触发,系统自动调用在这个事件中注册的所有过程,这样,一个事件的触发就导致了另一模块中的过程的调用。基于事件的隐式调用风格的主要特点是事件的触发者并不知道哪些构件会被这些事件影响。这样不能假定构件的处理顺序,甚至不知道哪些过程会被调用,因此,许多隐式调用的系统也包含显式调用作为构件交互的补充形式。 4.层次系统风格 层次系统组织成一个层次结构,每一层为上层服务,并作为下层客户。在一些层次系统中,除了一些精心挑选的输出函数外,内部的层只对相邻的层可见。这样的系统中构件在一些层实现了虚拟机(在另一些层次系统中层是部分不透明的)。连接件通过决定层间如何交互的协议来定义,拓扑约束包括对相邻层间交互的约束。这种风格支持基于可增加抽象层的设计。这样,允许将一个复杂问题分解成一个增量步骤序列的实现。由于每一层最多只影响两层,同时只要给相邻层提供相同的接口,允许每层用不同的方法实现,同样为软件重用提供了强大的支持。 5.仓库风格 在仓库风格中,有两种不同的构件:中央数据结构说明当前状态,独立构件在中央数据存储上执行,仓库与构件间的相互作用在系统中会有大的变化。控制原则的选取产生两个主要的子类。若输入流中某类时间触发进程执行的选择,则仓库是一传统型数据库;另一方面,若中央数据结构的当前状态触发进程执行的选择,则仓库是一黑板系统。 6.C2风格 C2体系结构风格可以概括为:通过连接件绑定在一起的按照一组规则运作的并行构件网络。C2风格中的系统组织规则如下:系统中的构件和连接件都有一个顶部和一个底部;构件的顶部应连接到某连接件的底部,构件的底部则应连接到某连接件的顶部,而构件与构件之间的直接连接是不允许的;一个连接件可以和任意数目的其他构件和连接件连接;当两个连接件进行直接连接时,必须由其中一个的底部到另一个的顶部。 三、针对作者实际参与的软件系统开发项目,说明所采用的软件架构风格,并描述该架构风格所产生的实际应用效果。

  • 第6题:

    软件架构风格描述某一特定领域中的系统组织方式和惯用模式,反映了领域中众多系统所共有的( )特征。对于语音识别、知识推理等问题复杂、解空间很大、求解过程不确定的这一类软件系统,通常会采用()架构风格。对于因数据输入某个构件,经过内部处理,产生数据输出的系统,通常会采用(请作答此空 )架构风格。

    A. 事件驱动系统
    B. 黑板
    C. 管道-过滤器
    D. 分层系统

    答案:C
    解析:
    体系结构风格反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。对软件体系结构风格的研究和实践促进对设计的重用,一些经过实践证实的解决方案也可以可靠地用于解决新的问题。例如,如果某人把系统描述为客户/服务器模式,则不必给出设计细节,我们立刻就会明白系统是如何组织和工作的。语音识别是黑板风格的经典应用场景。输入某个构件,经过内部处理,产生数据输出的系统,正是管道-过滤器中过滤器的职能,把多个过滤器使用管道相联的风格为管道-过滤器风格。

  • 第7题:

    部署图反映了系统软件和硬件的物理架构。


    正确答案:正确

  • 第8题:

    软件设计包括软件架构设计和软件详细设计。架构设计属于高层设计,主要描述软件的结构和组织,标识各种不同的组件。由此可知,在信息系统开发中,()属于软件架构设计师要完成的主要任务之一。

    • A、软件复用
    • B、模式设计
    • C、需求获取
    • D、需求分配

    正确答案:B

  • 第9题:

    ZXA10 C220的软件系统架构包含哪些子系统?


    正确答案: 主要分为系统平台和业务两部分:其中系统平台部分主要包括操作管理子系统,系统控制子系统,应用协议子系统,路由协议子系统,二三层协议子系统,操作系统封装子系统,vxworks及承载子系统。业务部分主要包括EPON业务子系统和CES业务子系统。

  • 第10题:

    系统架构师和软件架构师的联系和差别有哪些?


    正确答案: 系统架构师的职责包括,一是理解系统的业务需求,制定系统的整体框架;二是对系统该框架相关技术和业务进行培训。
    软件架构师的角色是主导系统全局的分析、设计和实施,负责软件架构和关键技术的决策。
    系统架构师与软件架构师所必需的知识体系不尽相同,系统分析师的主要职责是在需求分析、开发管理、运行维护等方面,二软件架构师的重点工作在架构和设计这两个关键环节上。因此,系统分析师必需具备的知识体系中对系统的构架和设计等方面知识体系的要求就相对低些;而软件架构师在需求分析、项目管理、运行维护等方面知识的要求就相对低些。

  • 第11题:

    单选题
    会计核算软件按照( )划分,可以分为单机集成系统、C/S结构系统、B/S结构系统三种。
    A

    软件架构

    B

    软件功能的通用性

    C

    ERP的关系

    D

    系统软件结构


    正确答案: B
    解析: 会计核算软件从其软件架构上划分,可以分为单机集成系统、C/S结构系统、B/S结构系统三种。

  • 第12题:

    问答题
    ZXA10 C220的软件系统架构包含哪些子系统?

    正确答案: 主要分为系统平台和业务两部分:其中系统平台部分主要包括操作管理子系统,系统控制子系统,应用协议子系统,路由协议子系统,二三层协议子系统,操作系统封装子系统,vxworks及承载子系统。业务部分主要包括EPON业务子系统和CES业务子系统。
    解析: 暂无解析

  • 第13题:

    论软件系统架构风格 系统架构风格(System Architecture Style)是描述某一特定应用领域中系统组织方式的惯用模式.架构风格定义了一个词汇表和一组约束,词汇表中包含一些构件和连接件类型,而这组约束指出系统是如何将这些构件和连接件组合起来的口软件系统架构风格反映了领域中众多软件系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。软件系统架构风格的共有部分可以使得不同系统共享同一个实现代码,系统能够按照常用的、规范化的方式来组织,便于不同设计者很容易地理解系统架构。

    请以“软件系统架构风格”论题,依次从以下三个方面进行论述: 1.概要叙述你参与分析和开发的软件系统开发项目以及你所担任的主要工作。 2.分析软件系统开发中常用的软件系统架构风格有哪些?详细阐述每种风格的具体含义。 3.详细说明在你所参与的软件系统开发项目中,采用了哪种软件系统架构风格,具体实施效果如何。


    正确答案:写作要点:
    一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。
    二、常见的架构风格5大类,至少选2-3个类进行说明。
    Garlan和Shaw将软件架构风格分为五大类,数据流风格、调用/返回风格、独立构件风格、虚拟机风格和仓库风格。其中:
    (1)数据流风格包括批处理序列架构风格和管道/过滤器架构风格;
    (2)调用/返回风格包括主程序/子程序架构风格、数据抽象和面向对象架构风格和层次结构架构风格;
    (3)独立构件风格包括进程通信架构风格和事件驱动的架构风格;
    (4)虚拟机风格包括解释器架构风格和基于规则的系统;
    (5)仓库风格包括数据库架构风格和黑板架构风格。
    其他的还有特定领域软件架构、状态转移等以及分布式处理等。其中分布式架构风格中有客户机/服务器风格、浏览器/服务器风格、CORBA、DCOM、EJB。
    每一种具体的软件结构风格的模型如下:
    1.数据流风格包括批处理序列和管道/过滤器架构风格。
    (1)批处理序列架构风格。组件为一系列固定顺序的计算单元,组件间只通过数据传递交互。每个处理步骤是一个独立的程序,每一步必须在前一步结束后才能开始,数据必须是完整的,以整体的方式传递。
    (2)管道/过滤器架构风格。每个构件都有一组输入和输出,构件读输入的数据流,经过内部处理,然后产生输出数据流,经过处理,产生输出数据流。这个过程通常通过对输入流的变换及增量计算来完成,包括通过计算和增加信息丰富数据,通过浓缩和删除精炼数据,通过改变记录方式转化数据,递增地转化数据等。在输入被完全消费之前,输出便产生了。这里构件被称为过滤器,连接件就是数据流传输的管道,将一个过滤器的输出传到另一过滤器的输入。
    2.调用/返回风格包括主程序/子程序架构风格、数据抽象和面向对象架构风格以及层次结构架构风格
    (1)主程序/子程序架构风格。单线程控制,把问题划分为若干处理步骤,构件即为主程序和子程序。子程序通常可合成为模块。过程调用作为交互机制,即充当连接件。调用关系具有层次性,其语义逻辑表现为子程序的正确性取决于它调用的子程序的正确性。
    (2)数据抽象和面向对象架构风格。这种风格的构件是对象。对象是抽象数据类型的实例。在抽象数据类型中,数据的表示和它们的相应操作被封装起来。对象的行为体现在其接受和请求的动作。连接件即是对象间交互的方式,对象是通过函数和过程的调用来交互的。对象具有封装性,一个对象的改变不会影响其他对象。对象拥有状态和操作,也有责任维护状态。这种结构风格中包含有封装、交互、多态、集成、重用等特征。
    (3)层次结构架构风格。层次系统组织成一个层次结构。构件在一些层实现了虚拟机。连接件通过决定层间如何交互的协议来定义,拓扑约束包括对相邻层间交互的约束。这个风格的特点是每层为上一层提供服务,使用下一层的服务,只能见到与自己邻接的层。大的问题分解为若干个渐进的小问题,逐步解决,隐藏了很多复杂度。修改一层,最多影响两层,而通常只能影响上层。上层必须知道下层的身份,不能调整层次之间的顺序。
    3.独立构件风格包括进程通信架构风格和事件驱动的架构风格
    (1)进程通信架构风格。构件是独立的过程,连接件是消息传递。这种风格的特点是构件通常是命名过程,消息传递的方式可以是点对点、异步和同步方式、以及远过程调用等
    (2)事件驱动的架构风格。构件不直接调用一个过程,而是触发或广播一个或多个事件。系统中的其他构件中的过程在一个或多个事件中注册,当一个事件被触发,系统自动调用在这个事件中注册的所有过程。一个事件的触发就导致了另一个模块中的过程的调用。这种风格中的构件是非命名的过程,它们之间交互的连接件往往是以过程之间的隐式调用(Implicit Invocation)来实现的。基于事件的隐式调用风格的主要优点是为软件重用提供了强大的支持,为构件的维护和演化带来了方便,其缺点是构件放弃了对系统计算的控制。
    4.虚拟机风格包括解释器架构风格和基于规则的系统
    (1)解释器架构风格。一个解释器通常包括完成解释工作的解释引擎,一个包含将被解释的代码的存储区,一个记录解释引擎当前工作状态的数据结构,以及一个记录源代码被解释执行的进度的数据结构。具有解释器风格的软件中含有一个虚拟机,可以仿真硬件的执行过程和一些关键应用。其缺点是执行效率较低。
    (2)基于规则的系统。基于规则的系统包括规则集、规则解释器、规则/数据选择器以及工作内存。
    5.仓库风格包括数据库架构风格和黑板架构风格
    (1)数据库架构风格。数据库架构是库风格最常见的形式。构件主要有两大类,一个是中央共享数据源,保存当前系统的数据状态,另一个是多个独立处理元素,处理元素对数据元素进行操作。
    (2)黑板架构风格。黑板架构包括知识源、黑板、控制三部分。知识源包括若干独立计算的不同单元,提供解决问题的知识,知识源响应黑板上的变化,也只修改黑板。黑板是一个全局数据库,包含解域的全部状态,是知识源互相作用的唯一媒介。知识源响应是通过黑板状态的变化来控制。黑板通常应用在对于解决问题没有确定性算法的系统中,例如信号处理、问题规划、编译器优化等软件系统的设计中。
    三、结合项目的实际状况,指出在架构设计时选择使用软件架构风格的情况,包括选择的依据、如何做的,要给出实际的效果及分析。

  • 第14题:

    老于是某银行的系统架构师,他为银行投资管理系统设计的软件架构包括进程通信和事件驱动的系统,该软件架构风格属于( )。

    A:数据流风格
    B:独立构件风格
    C:仓库风格
    D:虚拟机风格

    答案:B
    解析:
    软件架构五大风格:
    (1)数据流风格:包括批处理序列架构风格(Batch Sequential)和管理/过滤器架构风格(Pipes/Filters)。
    (2)调用/返回风格:包括主程序/子程序架构风格(Main Program and Subroutine)、数据抽象和面向对象架构风格(DataAbstraction and Object-Oriented)及层次结构架构风格(Hierarchical Layers).
    (3)独立构件风格:包括进程通信架构风格(Communicating Processes)和事件驱动架构风格(EventSystems)。
    (4)虚拟机风格:包括解释器架构风格(Interpreters)和基于规则的系统(Rule-based Systems)架构风格。
    (5)仓库风格:包括数据库架构风格(Database)和黑板架构风格(BlackBoards)

  • 第15题:

    老于是某银行的系统架构师,他为银行投资管理系统设计的软件架构包括进程通信和事件驱动的系统,该软件架构风格属于( )。

    A. 数据流风格
    B. 独立构件风格
    C. 仓库风格
    D. 虚拟机风格

    答案:B
    解析:
    软件架构五大风格:
    (1)数据流风格:包括批处理序列架构风格(Batch Sequential)和管理/过滤器架构风格(Pipes/Filters)。
    (2)调用/返回风格:包括主程序/子程序架构风格(Main Program and Subroutine)、数据抽象和面向对象架构风格(DataAbstraction and Object-Oriented)及层次结构架构风格(Hierarchical Layers).
    (3)独立构件风格:包括进程通信架构风格(Communicating Processes)和事件驱动架构风格(EventSystems)。
    (4)虚拟机风格:包括解释器架构风格(Interpreters)和基于规则的系统(Rule-based Systems)架构风格。
    (5)仓库风格:包括数据库架构风格(Database)和黑板架构风格(BlackBoards)

  • 第16题:

    软件设计过程是定义一个系统或组件架构和接口的过程,其中描述软件的结构和组织,标识各种不同组件的设计是( )

    A.软件详细设计
    B.软件对象设计
    C.软件环境设计
    D.软件架构设计

    答案:D
    解析:
    软件设计是描述出软件架构及相关组件之间的接口,然后进一步详细地描述组件,以便能构造这些组件的过程。其中描述软件的结构和组织,标识各种不同组件的设计是软件架构设计。

  • 第17题:

    软件架构风格描述某一特定领域中的系统组织方式和惯用模式,反映了领域中众多系统所共有的(请作答此空)特征。对于语音识别、知识推理等问题复杂、解空间很大、求解过程不确定的这一类软件系统,通常会采用()架构风格。对于因数据输入某个构件,经过内部处理,产生数据输出的系统,通常会采用()架构风格。

    A. 语法和语义
    B. 结构和语义
    C. 静态和动态
    D. 行为和约束

    答案:B
    解析:

  • 第18题:

    用电信息采集系统软件架构分为几个层次?


    正确答案: 主要分为资源层,支撑层,应用层,表现层。

  • 第19题:

    软件开发模型着重研究的是()。

    • A、软件系统的基本架构和常见的软件系统模型
    • B、软件开发全部过程、活动和任务的结构框架
    • C、软件系统的模型和对应不同模型的开发方法
    • D、程序设计的方法和编程技巧

    正确答案:B

  • 第20题:

    关于软件架构的说法错误的是()

    • A、软件架构是系统的功能结构
    • B、软件架构是关于软件系统功能描述
    • C、软件架构是软件系统实现的逻辑结构
    • D、软件架构是一系列相关的抽象模式,用于指导大型软件系统各个方面设计

    正确答案:A,B

  • 第21题:

    软件架构设计包括提出架构模型、产生架构设计和进行设计评审等活动,是一个迭代的过程。以下关于软件架构设计活动的描述,错误的是()

    • A、在建立软件架构的初期,一般需要选择一个合适的架构风格
    • B、将架构分析阶段已标识的构件映射到架构中,并分析这些构件之间的关系
    • C、软件架构设计活动将已标识构件集成到软件架构中,设计并实现这些构件
    • D、一旦得到了详细的软件架构设计,需要邀请独立于系统开发的外部人员对系统进行评审

    正确答案:C

  • 第22题:

    问答题
    系统架构师和软件架构师的联系和差别有哪些?

    正确答案: 系统架构师的职责包括,一是理解系统的业务需求,制定系统的整体框架;二是对系统该框架相关技术和业务进行培训。
    软件架构师的角色是主导系统全局的分析、设计和实施,负责软件架构和关键技术的决策。
    系统架构师与软件架构师所必需的知识体系不尽相同,系统分析师的主要职责是在需求分析、开发管理、运行维护等方面,二软件架构师的重点工作在架构和设计这两个关键环节上。因此,系统分析师必需具备的知识体系中对系统的构架和设计等方面知识体系的要求就相对低些;而软件架构师在需求分析、项目管理、运行维护等方面知识的要求就相对低些。
    解析: 暂无解析

  • 第23题:

    多选题
    关于软件架构的说法错误的是()
    A

    软件架构是系统的功能结构

    B

    软件架构是关于软件系统功能描述

    C

    软件架构是软件系统实现的逻辑结构

    D

    软件架构是一系列相关的抽象模式,用于指导大型软件系统各个方面设计


    正确答案: B,C
    解析: 暂无解析