一、软件系统体系结构多维视图

对于同一个软件系统,不同人员的关注点不同,例如用户关心软件的功能,而系统工程师关心软件如何部署,因此软件系统的体系结构是一个多维的结构,在软件开发过程中会使用多个视图来描述软件体系结构。

二、统一过程模型(RUP)

软件统一过程模型(Rational Unified Process,RUP)是Rational软件公司创造的软件工程方法,描述如何利用商业、可靠的方法开发软件。

在RUP中采用4+1视图描述软件体系结构,分别为用例视图、逻辑视图、实现视图、进程视图和部署视图。
在这里插入图片描述

2.1用例视图

用例视图关注软件系统的行为,关系对象为系统分析人员和测试人员。

2.2逻辑视图

逻辑视图关注系统的功能,所以用户更为关注。

2.3实现视图

实现视图关注软件的功能如何实现,因此关注对象为程序员。

2.4进程视图

进程视图关注系统在运行过程中的性能、可伸缩性等问题,所以系统集成人员更为关心。

2.5部署视图

部署视图关注系统的发布、安装等问题,关注对象为系统工程师。

三、统一建模语言(UML)

在目前软件开发方法中,面向对象的软件开发方法占据着主导地位,UML(Unified Modeling Language,统一建模语言)是面向对象方法的标准建模语言,在1999年底,UML占据面向对象技术市场的90%,成为可视化建模语言事实上的工业标准
在这里插入图片描述
UML中也使用5种视图描述软件系统,分别为用例视图、逻辑视图、实现视图、进程视图和部署视图,名称与RUP中的4+1视图一致,只是各视图的描述细节和关注人员有所不同

3.1用例视图

用例视图描述系统的功能需求,关注对象为用户、分析人员、设计人员、开发人员和测试人员。

3.2逻辑视图

逻辑视图描述如何实现系统内部的功能,展现的是软件的静态结构

3.3实现视图

实现视图描述系统的构件和构件间的依赖关系,关注对象为设计人员、开发人员和测试人员。

3.4进程视图

进程视图描述系统的并发性,所以系统开发人员和集成人员更为关心。

3.5部署视图

部署视图描述系统软硬件的物理体系结构,关注对象为系统开发人员、集成人员和测试人员。

四、软件架构设计

软件架构设计中,也使用多视图描述软件系统的体系结构,典型的多视图是4+1模型,即:逻辑视图、开发视图、进程视图、物理视图,加上统一的场景。这里的4+1模型与RUP中的4+1视图本质上相同,只是名称有所差别。

4.1统一的场景

场景,作为系统重要活动的抽象,使4个视图有机地联系起来。

4.2逻辑视图

逻辑视图,也称设计视图,主要描述系统的功能需求。

4.3开发视图

开发视图,也称模块视图、实现视图,描述系统的模块组织和管理。

4.4进程视图

进程视图,也称过程视图,描述系统的性能和可用性等非功能需求。

4.5物理视图

物理视图,描述系统软件如何映射到硬件上,主要考虑系统安装等问题。

五、基于体系结构的软件设计(ABSD)

基于体系结构的软件设计(Architecture-Based Software Design,ABSD),是先定义软件系统的整体结构,再指导后续的详细设计与实现。

ABSD是一个自顶而下,递归细化的方法,它先将系统分解为若干个概念子系统和软件模板,逐层细化,直到产生构件和类。

ABSD中的视图有4类,分别为逻辑视图、实现视图、进程视图和配置视图。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐