ICS 35.020
L70/84
中国指挥与控制学会团体标准
T/CICC 02004-2019
船用软件系统可重构设计指南
Guide to the design of Shipborne Software System refactoring
2020-1-19发布 2020-1-30 实施
中国指挥与控制学会 发布
全国团体标准信息平台
T/CICC 02004-2019
I 目 次
前言 ................................................................................ II
1 范围 ............................................................................. 1
2 术语和定义 ....................................................................... 1
3 一般要求 ......................................................................... 2
4 船用可重构组件详细设计 ........................................................... 6
全国团体标准信息平台
T/CICC 02004-2019
II 前 言
本标准按照 GB/T 1.1 -2009《标准化工作导则第 1部分:标准的结构和编写》的规则起草。
本标准由中国指挥与控制学会提出并归口。
本标准起草单位: 中国船舶重工集团公司第七一六研究所、南京航空航天大学、中国船舶重工集团
公司第七〇一研究所。
本标准主要起草人: 王阳、孔祥营、张振华、姚洁、王进宁、陈杰、胡洋、庄毅、胡镡文。
全国团体标准信息平台
T/CICC 02004-2019
1 船用软件系统可重构设计指南
1 范围
本标准规定了船用软件系统可重构组件开发、外部接口封装以及通信协议的结构、内容和描述方
法,指导船用软件系统运行时可重构设计。
本标准适用于基于公共计算环境架构的船用软件系统运行时可重构设计。其他有相似特点的软件
系统如有可重构需求也可参照本标准执行。
2 术语和定义
下列术语和定义适用于本标准 。
2.1
船用软件系统 shipbornesoftware system
用于船舶领域由多个独立功能组件集成或耦合而成的软件系统。 (注: 各组件间功能相对独立且关系复杂,
整个系统的行为难以通过各组件特征的简单叠加加以刻画,能够完成复杂、多任务关联的大型任务系统。 )
2.2
可重构 refactoring
在运行时态,依据一定的规则和策略执行功能软件的部署、迁移、关闭、冗余切换等功能,实现船
用软件系统的高可用性的过程。
2.3
船舶环境 shipborneenvironment
船所处的外在物理环境与内部软硬件环境的集合。一般包含船外环境、舱室环境、硬件环境、软件
环境、任务环境等。
2.4
组件component
软件系统内功能相对独立的柔性组成单元,可按需求被其他功能组件替换,对软件系统提供输入输
出,可被独立部署、迁移、调用和第三方组装使用。 (注:组件也称构件。 )
2.5
模块module
能够独立命名并且独立完成特点功能的程序的集合。是软件系统中逻辑上的最小单元。
2.6
公共计算环境 public computing environment
基于公共计算环境的软件系统任务逻辑、网络拓扑相对固定,各个软件系统与功能软件功能明确清
晰,对实时性要求较高。
2.7
可重构软件模型 refactorablesoftware model
约束可重构软件系统设计的核心模型, 定义了编写具有可重构特性的可重构组件的基本要求,包括
全国团体标准信息平台
T/CICC 02004-2019
2 属性、封装、接口、通信。
3 一般要求
3.1 软件系统可重构结构组成
可重构软件系统应遵循以下一般设计要求:
a) 软件系统可重构一般包含四个组成部分:可重构软件、环境信息收集模块、监控组件与重构执
行模块;
b) 可重构软件一般应包含一个或多个功能组件;功能组件至少包含一个功能模块;
c) 一个可重构软件,对应一个或多个适配组件,以适配不同的底层软硬件环境;
d) 所有环境信息收集模块连接到数据分析模块,形成传感器网络;
e) 决策调度组件与每一个可重构软件中的监控组件、重构执行模块通信,以完成决策调度工作。
依据可重构软件系统一般设计要求,可重构软件系统组成示意图如图 1所示。
决策调度组件决策调度组件
感
知
评
估
模
块感
知
评
估
模
块重
构
决
策
模
块重
构
决策
模
块功能模块1功能模块1
…………
功能模块N功能模块N可重构组件可重构组件
功能组件1功能组件1
…………环
境
信
息收
集
模
块环
境
信
息收
集
模
块可重构软件
可重构软件
数据分析模块数据分析模块
监控组件监控组件 重构执行模块重构执行模块多
源信
息
融
合多
源
信
息
融
合环
境
态势感
知环
境
态势
感
知功能组件M功能组件M可重构软件系统可重构软件系统
图1可重构软件系统组成
3.2 软件系统可重构设计流程
软件系统可重构一般采用以下设计流程,如图 2所示:
a) 在组件开发过程中对功能组件进行约束和封装,形成可重构组件;
b) 一个或多个可重构组件、功能组件与基本框架形成可重构软件;
c) 一个或多个可重构软件与重构功能的组件或模块 (注:包含监控组件、可重构执行模块以及环境信息
收集模块) 组成可重构软件系统。
功能组件功能组件 可重构组件可重构组件
可重构软件可重构软件 功能软件功能软件封装
构
成
可重构软件系统可重构软件系统构成构成
组成重构功能组件
或模块
重构功能组件
或模块
图2软件系统可重构设计流程
全国团体标准信息平台
T/CICC 02004-2019
3 3.3 功能组件设计
功能组件是软件系统中具有相对独立功能的模块,一般具有以下特性:
a) 一个独立的功能单元,具有明确的对外接口,具有详细的功能说明,能够独自实现或通过组件
间的组合实现具体功能;
b) 允许依赖于组装环境,可使用平台提供的服务,或使用其它组件的功能;
c) 仅允许通过接口进行访问和调用;
d) 与其他组件或软件松耦合,替换组件时对其他组件的功能性不产生影响。
3.4 可重构组件设计流程
可重构组件设计宜采用以下几个步骤,如图 3所示:
a) 获取可变性需求:根据应用需求,对功能结构、业务逻辑流程、进行建模;
b) 健壮性分析:标明新组件中可变部分,根据功能 与接口查找统一模型数据库,是否有可参考的
实例组件与接口;
c) 根据模型映射为实际的界面设计、业务逻辑与数据库、表,设计内部结构,定义接口,将需求
分解实现功能组合;
d) 依据c)的逻辑结构、内部结构与接口定义,采用编码方法完成可重构组件开发;
e) 可重构组件完成之后,应进行封装打包、测试工作。
获取重构需求获取重构需求 健壮性分析健壮性分析设计内部结构
划分功能模块设计内部结构
划分功能模块可重构组件
编码实现可重构组件
编码实现编码
封装功能性测试封装功能性测试
图3可重构组件设计流程
3.5 可重构软件实现
可重构软件一般由可重构组件、功能组件以及基本框架组成。在组件开发过程中对功能组件进行必
要的约束,形成可重构组件,一般包含:
a) 可重构组件分类的要求;
b) 可重构组件封装的要求;
c) 可重构组件接口的要求;
d) 可重构组件通信的要求。
3.6 数据分析模块
数据分析模块根据接口协议对检测录取的应用数据进行在线、实时分析,提取出船外环境信息,然
后向外分发。一般应包含:
a) 多源信息融合
主要将多个通道获得的环境信息融合为软件系统的综合环境信息, 实现以单个功能应用软件为基本
粒度的环境信息整合,提供面向服务器、舱室、以及任务系统的综合环境信息, 并传递给态势感知模块。
全国团体标准信息平台
T/CICC 02004-2019
4 b) 环境态势感知
对综合环境信息进行评估分析,形成环境态势,为下一步调度决策组件提供必要信息。
3.7 决策调度组件
决策调度组件依据执行步骤分为感知评估模块、重构决策模块和重构执行模块。
a) 感知评估模块
感知评估一般包含以下步骤:
——确定评估对象;
——确定评估属性与目标;
——确定评估标准;
——确定评估算法;
——确定评估结果。
b) 重构决策模块
主要完成: 给出影响重构方案决策的约束因素; 综合考虑各类约束因素给出最佳重构方案的规则方
法。
c) 重构执行模块
——对需要重构的软件进行资源需求分析,明确重构的资源需求;
——在资源分配规则的约束条件下,根据资源可用状态评估的结果对资源进行重构分配;
——设定需求阈值, 当环境变化对软件可用度的影响数值大于实时任务需求时,可以暂不进行
自适应;
T-CICC 02004—2019 船用软件系统可重构设计指南
文档预览
中文文档
15 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共15页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 思安 于 2022-12-20 17:30:46上传分享