itgle.com

论软件架构建模技术与应用软件架构用来处理软件高层次结构的设计和实施,它以精心选择的形式将若干结构元素进行装配,从而满足系统的主要功能和性能需求。软件架构设计的首要问题是如何表示软件架构,即如何对软件架构建模。根据建模的侧重点不同,可以将软件架构模型分为结构模型、框架模型、动态模型、过程模型和功能模型。Kruchten在1995年提出了“4+1”视图模型,将5种模型有机地统一在了一起。请围绕“软件架构建模技术与应用”论题,依次从以下三个方面进行论述。1.概要叙述你参与管理和开发的软件项目以及你在其中所承担的

题目

论软件架构建模技术与应用

软件架构用来处理软件高层次结构的设计和实施,它以精心选择的形式将若干结构元素进行装配,从而满足系统的主要功能和性能需求。软件架构设计的首要问题是如何表示软件架构,即如何对软件架构建模。根据建模的侧重点不同,可以将软件架构模型分为结构模型、框架模型、动态模型、过程模型和功能模型。Kruchten在1995年提出了“4+1”视图模型,将5种模型有机地统一在了一起。

请围绕“软件架构建模技术与应用”论题,依次从以下三个方面进行论述。

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

2.简要叙述“4+1”视图模型的主要内容。结合你参与项目的实际情况,详细说明该项目需求及所涉及的软件架构(包括使用到的视图模型、创建的架构模型及使用的建模工具等)。

3.说明该项目软件架构的实施效果,分析其是否满足了项目的需求并说明原因。


相似考题
参考答案和解析
正确答案:

写作要点

一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。

二、简要叙述“4+1”视图模型的主要内容。

1、“4+1”视图模型从5个不同的视角来描述软件架构,每个视图只关心系统的1个侧面,5个视图结合在一起才能反映系统的软件结构的全部内容。这5个不同的视角包括逻辑视图、开发视图、进程视图、物理视图和场景。

逻辑视图。逻辑视图主要支持系统的功能需求,即系统提供给最终用户的服务。在逻辑视图中,系统分解成一系列的功能抽象,这些抽象主要来自问题领域。在OO技术中,通过抽象、封装和继承,可以用对象模型来代表逻辑视图,用类图来描述逻辑视图。

开发视图。开发视图也称为模块视图,在UML中被称为实现视图,它主要侧重于软件模块的组织和管理。开发视图要考虑软件内部的需求。

进程视图。进程视图侧重于系统的运行特性,主要关注一些非功能性需求。进程视图强调并发性、分布性、系统集成性和容错能力,以及逻辑视图中的功能抽象如何适应进程结构等,它也定义了逻辑视图中的各个类的操作具体是在哪一个线程中被执行。进程视图可以描述成多层抽象,每个级别分别关注不同的方面。

物理视图。物理视图在UML中被称为部署视图,主要考虑如何把软件映射到硬件上,它通常要考虑到解决系统拓扑结构、系统安装和通信等问题。

场景。场景可以看作是那些重要系统活动的抽象,它使4个视图有机联系起来。场景对应UML中的用例视图。

2、结合实际项目,详细说明项目软件架构的内容。这部分内容应包括:在设计软件架构时,分别使用了4+1”视图中的哪些视图,每个视图中包含的模型有哪些等。

三、说明该项目软件架构的实施效果,分析其是否满足了项目的需求并说明原因。

1)加解密API:数据库管理系统提供可在SQL语句中调用的加解密API,应用可以利用这些API构建自己的基础架构,对数据进行加密保护。


2)透明加密:安全管理员为数据库敏感字段选择加密方式及密钥强度,应用访问受保护数据时只需使用口令打开或关闭密钥表,对数据的加密和解密由数据库管理系统自动完成。

加解密API方式的灵活性强,但构建和管理复杂;而透明加密方式管理简单,应用程序负担轻,但灵活性较差。用户要求尽可能减少安全管理与应用程序的负担,因此应选择透明加密方式。


更多“论软件架构建模技术与应用 软件架构用来处理软件高层次结构的设计和实施,它以精心选择的形式将若 ”相关问题
  • 第1题:

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

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

    答案:C
    解析:
    软件架构设计是降低成本、改进质量、按时和按需交付产品的关键因素。软件架构设计能够满足系统的性能、安全性、可维护性等品质;软件架构设计能够帮助项目干系人(Stakeholder)更好地理解软件结构;软件架构设计能够有效地管理系统的复杂性,并降低系统维护费用;软件架构设计对系统开发具有指导性;软件架构设计为系统复用奠定的基础;软件架构设计能够支持冲突分析。需要注意的是,软件架构设计与系统需求是直交的,两者并无必然联系。

  • 第2题:

    某软件开发公司负责开发一个Web服务器服务端处理软件,其核心部分是对客户端请求消息的解析与处理,包括HTTP报头分离、SOAP报文解析等功能。该公司的架构师决定采用成熟的架构风格指导整个软件的设计,以下( )架构风格,最适合该服务端处理软件。

    A. 虚拟机
    B. 管道-过滤器
    C. 黑板结构
    D. 分层结构

    答案:B
    解析:
    根据题干描述,Web服务器服务端的核心功能是数据处理,由于Web服务在数据传输方面具有协议分层的特征,即底层协议会包装上层协议(HTTP协议体中包含整个SOAP消息内容),因此需要数据内容的逐步分解与分阶段处理。比较选项中的架构风格,由于管道-过滤器的架构风格支持分阶段数据处理,因此特别适合该服务端处理软件的要求。

  • 第3题:

    以下哪个不是软件架构的特性:

    A.软件架构模式是可复用的

    B.软件架构含有软件系统具体的物理代码模块

    C.架构包含了系统结构要素及其关系的描述

    D.架构是系统最高层次的分解


    软件架构含有软件系统具体的物理代码模块

  • 第4题:

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

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

    答案:C
    解析:
    软件架构设计包括提出架构模型、产生架构设计和进行设计评审等活动,是一个迭代的过程,在建立软件架构的初期,一般需要选择一个合适的架构风格,并将架构分析阶段已标识的构件映射到架构中,并分析这些构件之间的关系,一旦得到了详细的软件架构设计,需要邀请独立于系统开发的外部人员对系统进行评审。—般来说,软件架构设计活动将已标识构件集成到软件架构中,设计这些构件,但不予以实现。

  • 第5题:

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

    A软件复用

    B模式设计

    C需求获取

    D需求分配


    B
    在软件管理中对软件进行配置,各阶段文档的管理属于版本管理。
    组织管理:在软件开发中建立必要的组织机构,选择合适的业务人员和开发人员,建立起相互配合分工明确的责任制度,根据软件开发的不同类型组织合理的开发队伍等。
    人员管理:对参与软件开发的各方面和各层次人员的组织和管理。
    资源管理:对软件开发中需要的各种系统环境资源的管理。系统环境资源主要包括硬件、支持软件、通信和辅助资源。
    计划管理:对整个软件生命周期的计划安排和执行。
    版本管理:在软件开发生命周期各个阶段中产生的一系列文件,包括报告、数据和程序,总称为软件配置。版本管理也称为软件配置管理。
    该题的选项是B。