您好,欢迎来到年旅网。
搜索
您的当前位置:首页XXX软件架构设计文档

XXX软件架构设计文档

来源:年旅网


.

.

XXX

软件概要设计拟制: 审核: 标准化: 批准: 发布日期:

.

本文中的所有信息均为武汉正维电子技术有限公司信息,务请妥善保管,未经公司明确作出的书面许可,不得为任何目的、以任何形式或手段(包括电子、机械、复印、录音或其它形式)对本文档的任何部分进行复制、储存、引入检索系统或者传播。

历史记录

版本号 主要更改内容 (写要点即可) 更改理由 拟制人/修改人 拟制/修改日期 注1:每次更改归档文件(指归档到射频部研发办公室标准化)时,需填写此表 注2:文件第一次归档时,“更改理由”、“主要更改内容”栏写“无”。

.

.

目 录

1. 简介..................................................................... 5

1.1. 目的 ............................................................... 5 1.2. 范围 ............................................................... 5 1.3. 定义、缩略语 ....................................................... 5 1.4. 参考资料 ........................................................... 5 1.5. 概述 ............................................................... 6 2. 软件架构 ................................................................. 7

2.1. 需求规定 ........................................................... 7 2.2. 开发、运行环境 ..................................................... 7 2.3. 基本设计概念和处理流程 ............................................. 7 2.4. 总体结构 ........................................................... 7 2.5. 架构目标和约束 ..................................................... 7 2.6. 功能需求与程序的关系 ............................................... 8 3. 用例视图 ................................................................. 9

3.1. 核心用例 ........................................................... 9 3.2. 用例实现 ........................................................... 9 4. 逻辑视图 ................................................................ 10

4.1. 层次结构 .......................................................... 10 4.2. 模块1 ............................................................ 10

4.2.1. 子模块1 .................................................... 10 4.2.2. 子模块2 .................................................... 10 4.2.3. 外部接口 .................................................... 10 4.3. 模块2 ............................................................ 11 5. 进程视图 ................................................................ 12

5.1. 进程、线程划分 .................................................... 12 5.2. 进程、线程优先级、亲和定义 ........................................ 12 5.3. 进程、线程启动顺序 ................................................ 12 5.4. 进程间通讯 ........................................................ 12 6. 数据视图 ................................................................ 13 7. 软件性能指标 ............................................................ 14 8. 属性设计 ................................................................ 15

8.1. 可调试性 .......................................................... 15 8.2. 可测试性 .......................................................... 15 8.3. 可扩展性 .......................................................... 15 8.4. 可靠性 ............................................................ 15

.

.

图表目录

未找到图形项目表。

表 2.6-1 功能模块映射表 .................................................. 8

.

.

1. 简介

【本文档将从构架方面对系统进行综合概述,其中会使用多种不同的构架视图来描述软件系统的各个方面,记录并表述已对系统的构架方面作出的重要决策。】

【软件构架文档的简介应提供整个软件构架文档的概述。它应包括此软件构架文档的目的、范围、定义、首字母缩写词、缩略语、参考资料和概述。】

1.1. 目的

【本节确定此软件构架文档在整个项目文档中的作用或目的,并对此文档的结构进行简要说明。应确定此文档的特定读者,并指出他们应该如何使用此文档】

1.2. 范围

【简要说明此软件构架文档适用的范围和影响的范围,以及阅读对象】

1.3. 定义、缩略语

【本小节应提供正确理解此软件构架文档所需的全部术语的定义、首字母缩写词和缩略语。这些信息可以通过引用项目词汇表来提供。】

1.4. 参考资料

【本小节应完整地列出此软件构架文档中其他部分所引用的所有文档。每个文档应标有标题、报告号(如果适用)、日期和出版单位。列出可从中获取这些参考资料的来源。这些信息可以通过引用附录或其他文档来提供】

.

.

1.5. 概述

【本小节应说明此软件构架文档中其他部分所包含的内容,并解释此软件构架文档的组织方式】

.

.

2. 软件架构

2.1. 需求规定

【描述xxx项目对软件的需求,作为后续设计目标和基础】

2.2. 开发、运行环境

【简要介绍软件开发所使用的工具、软硬件环境,以及目标代码运行的软硬件环境。如Guest、Host主机的操作系统,CPU架构;编译器名称及版本,开发语言,及各种开发、调试工具的名称和版本】

2.3. 基本设计概念和处理流程

【说明本系统的基本设计概念和处理流程,尽量使用图表的形式】

2.4. 总体结构

【在此简单介绍软件架构的整体情况,包括用例视图、逻辑视图、进程视图、实施视图和部署视图的简单介绍。另外,简要介绍各种视图的作用和针对的阅读对象。】

【对于无阅读对象的视图,或者非重点对象,可以酌情删减视图。如,对于嵌入式系统,一般都是单板结构,或者说,从软件角度是单板结构,那么,可以将实施视图和部署视图省略。】

2.5. 架构目标和约束

【本节说明对构架具有某种重要影响的软件需求和目标,例如:安全性、保密性、市售产品的使用、可移植性、分销和重复使用。还应记录可能适用的特殊约束:设计与实施策略、开发工具、团队结构、时间表、遗留代码等】

.

.

2.6. 功能需求与程序的关系

【说明各项功能需求的实现同各块程序的分配关系】 如,可以采用下表所示例内容: 功能需求1 功能需求2 …… 功能需求n 南向AP 南向AP 南向AP 南向AP

AU √ EU √ √ RU √ 模块1 √ 模块2 √ √ 表 2.6-1 功能模块映射表

…… 模块m √

.

.

3. 用例视图

【本节列出用例模型中的一些用例或场景,这些用例或场景应体现最终系统中重要的、核心的功能;或是在构架方面涉及范围很广(使用了许多构架元素);或强调或阐明了构架的某一具体的细微之处。】

【在此可以直接引用需求中的相关文档,比如ROSE模型;用例描述等】

【根据项目的实际情况,此节可以省略不写】

3.1. 核心用例

【在此引用ROSE模型中的用例图即可】

3.2. 用例实现

【本节通过几个精选的用例(场景)实现来阐述软件的实际工作方式,并解释不同的设计模型元素如何促成其功能的实现】

.

.

4. 逻辑视图

【在此用图形的方式显示此软件架构的分层、子系统、模块之间的关系,并且加入必要的文字说明,特别是架构的分层、机制和模式的说明。】 【在此,还需要将和本系统有接口关系的其它系统都表示出来,这样可以清楚的看到本系统和其它系统的接口<外部接口>逻辑视图,并且还需要将在本系统中负责接口<内部接口>的子系统表示出来。】

4.1. 层次结构

【在此说明逻辑分层的每一层和每一层中的模块、子系统。对于每个重要的模块,都用一个小节来加以说明,其中应包括该模块的名称、功能简要说明、模块外部接口、模块的属性等。】

4.2. 模块1

【当前模块的名称、功能简要说明、模块外部接口、模块的属性等。】

【如果包含子模块,需要进一步给出子模块的划分及层次结构;对于每一个子模块,也应该用小节,给出其子模块名称、功能说明,重要接口及重要属性等等】

4.2.1. 子模块1

4.2.2. 子模块2

4.2.3. 外部接口

【给出模块的外部接口原型,包括形参列表、范围,返回值,及其他使用说明】

.

.

4.3. 模块2

.

.

5. 进程视图

【本节说明将系统分解为轻量级进程(单个控制线程)和重量级进程(成组的轻量级进程)的情况。本节的内容按照各个通信或交互的进程组来进行组织。说明进程之间的主要通信模式,例如消息传递、中断亲和/优先级、任务亲和/优先级】

5.1. 进程、线程划分

【关键逻辑、业务执行进程、线程划分,逻辑视图中各个模块/子模块同进程、线程的映射】

5.2. 进程、线程优先级、亲和定义

5.3. 进程、线程启动顺序

5.4. 进程间通讯

.

.

6. 数据视图

【从永久性、全局性数据存储方面来对系统进行说明。如系统、模块的配置文件,EEPROM/FLASH中存储的划分方案,全局变量等】

.

.

7. 软件性能指标

【说明软件中会对构架产生影响的主要尺寸特征,以及目标性能约束。 如某个消息/事件的响应时间,系统能够支持的最多同时登录用户数量等】

.

.

8. 属性设计

【说明各个模块、指标的调试、测试方法。如debug开关的设置,极限指标的测试步骤和要求;以及为测试版本设置的各种编译宏】

8.1. 可调试性

【给出各个模块的调试方法。如Log,console打印输出等信息,以及控制方法;并给出软件设计中添加的统计量值(如果有)】

8.2. 可测试性

【给出各项指标的测试方法和步骤,特别是一些系统极限值,在一般的测试用例中,如果不采用特殊的手段,比较难达到。】

8.3. 可扩展性

【对可能预见的同类系统,做不大的修改,便可以满足新系统的需求。这里描述对预见需求的支持方式】

8.4. 可靠性

【从设计的角度,预估系统可能出现的异常,及采取的措施。如内存耗尽的处理】

.

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- oldu.cn 版权所有 浙ICP备2024123271号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务