基于模型的气象数据管理系统设计

2023-11-20 11:02熊培森王诗宇任浩豪廖志远李振才
火力与指挥控制 2023年10期
关键词:数据检索数据录入用例

熊培森,王诗宇,周 舒,任浩豪,廖志远,李振才

(四川航天系统工程研究所,成都 610100)

0 引言

气象数据对装备研制有着至关重要的作用,能够为装备弹道气动力设计、射表编制、火控系统弹道模型建立提供重要参考依据[1]。郭锡福对远程火炮系统射击精度进行了分析,认为气象条件是影响射击精度的首要因素[2]。李臣明等通过对大气风场的建模分析,发现高空风对远程火箭的射程差与侧偏有较大影响,为常规远程弹箭的弹道设计提供了支持[1]。高太长等建立了弹箭在风场中的三维运动学和动力学模型,分析了均匀定常风场和非均匀埃克曼风场对弹箭弹道的影响规律,为弹箭控制系统设计中风修正及气象信息的融合应用提供了技术和理论的支撑[3]。

为了更好地支撑装备研制和使用,各单位开展了气象数据相关软件的研究。马林等针对某型无线电经纬仪设计并开发了装备试验气象数据处理系统,实现了对探空数据、测风数据的采集和解码,有效提高了装备试验气象数据的保障能力和保障精度[4]。李钢等提出了一种基于本体的气象知识表示和管理系统,实现了对气象观测数据的知识发掘和管理,为新型试验任务提供了高效便利的综合气象知识支持[5]。

为了更好地支持装备的研制,提高气象数据保障能力,本文依托基于模型的系统工程(model based system engineering,MBSE)思想,提出了基于模型的气象数据管理系统设计方法,从用户需求分析出发,进行系统用例设计、功能分解,进而完成系统的详细设计和开发,最后通过需求回溯,验证了用户需求满足情况。该系统实现了气象数据录入、检索、格式化输出及分析等功能,有效提高了气象数据的管理和应用效率,为装备的研制提供了有力保障。

1 基于模型的气象数据管理系统设计方法

MBSE 方法将模型取代文档作为主要交付物,为设计人员提供了对系统的一致理解,并实现了用户需求的条目级、结构化的追踪,大大提升了系统开发的效率,保证了系统设计方案对用户需求的满足。目前MBSE 方法被广泛应用于航空航天等复杂系统领域[6-9],并形成了多套成熟的建模方法,例如IBM 公司的Harmony-SE 方法、达索公司的Magic-Grid 方法、Dori 提出的对象过程方法(object-process methodology,OPM)等[10-15]。但是以上方法主要针对复杂系统,直接应用于气象数据管理系统的设计和开发会有较多冗余部分,从而降低开发效率,因此,本文依托MBSE 思想,提出了基于模型的气象数据管理系统设计方法。

基于模型的气象数据管理系统设计方法流程如图1 所示。

图1 基于模型的气象数据管理系统设计方法流程Fig.1 The process of the design method of model-based meteorological data management system

首先通过对系统潜在用户的梳理,并通过对用户的咨询了解用户需求,建立需求表。然后结合用户需求完成系统用例梳理,绘制用例图,并设计相应的用例活动。然后结合用例活动完成系统功能模块的分解,并对各功能模块进行详细设计和开发。最后使用需求关联矩阵完成系统需求追溯,确认用户需求得到满足。

2 气象数据管理系统设计和开发

2.1 用户需求分析

通过对弹道设计、载荷计算、控制仿真等专业相关专家的咨询,本文梳理了如表1 所示的用户需求表,涵盖数据录入、输出、检索及分析的用户需求。

表1 用户需求表Table 1 User requirement table

通过对原始气象数据及用户需求的进一步分析,可进一步将需求细化为如下页表2 所示的系统功能需求。

表2 功能需求细化Table 2 Refinement of functional requirements

2.2 系统用例设计

针对用户需求,本文对系统用例分解为了数据录入用例、数据检索用例和数据分析用例。同时结合用户需求,各用例还进行进一步细化,设计结果如下页图2 所示。其中为保证后台数据安全,本系统还设置了管理员用户,增加了数据管理用例,用于实现对底层数据的管控。

图2 系统用例设计Fig.2 Design of system use cases

2.2.1 数据录入用例活动

数据录入用例活动图如图3 所示。

图3 数据录入用例活动图Fig.3 Activity diagram for data input use case

用户首先完成气象数据采集,然后通过对原始数据进行整理,将其转换为能够被气象数据管理系统识别的excel 文件格式。如果数据库中已经存在当前观测点的信息,则可以直接开始下一步工作,否则需要添加当前观测点的位置、海拔高度信息,用以管理当前观测点的气象数据。接下来在气象数据管理系统中选择原始数据的单位,并设置观测时间,选择原始数据文件后导入管理系统,如果当前观测点没有该观测时间的数据,则气象数据正常录入,并结束数据录入。如果当前观测点已有同一时刻的观测数据,则根据当前登录用户身份决定下一步行为。如果当前登录用户不是管理员,则系统报错后结束数据录入。如果当前登录用户是管理员,则可以删除已有数据后结束数据采集,然后重新导入数据。

2.2.2 数据检索用例活动

数据检索用例活动图如图4 所示。

图4 数据检索用例活动图Fig.4 Activity diagram for data retrieval use case

用户首先选择待检索的观测点,然后确定检索模式。根据用户需求,本系统应提供日期范围检索和时段范围检索两种模式,以对应用户按时段检索和按季节检索数据的需求。在完成检索条件定制后,由用户定制数据输出项目,并选择输出文件格式,最后输出文件,结束数据检索。

2.2.3 数据分析用例活动

数据分析用例活动如下页图5 所示。

图5 数据分析用例活动图Fig.5 Activity diagram for data analysis use case

用户首先选择待分析观测点,由系统对数据进行统计分析并展示数据,然后用户选择下一观测点进行对比分析,输出分析结果,完成数据分析。

2.3 功能模块分解

根据用例活动分解可设计如图6 所示的气象数据管理系统架构。该系统架构可分为数据层、应用层和交互层。其中,气象数据通过索引+原始数据的模式储存。应用层由管理系统为用户提供数据录入、单位转换、数据查看、数据去重、数据检索、数据导出和对比分析等功能。交互层可分为登录页面、启动页面、数据录入页面、数据检索页面和数据分析页面。

图6 气象数据管理系统架构图Fig.6 Architecture diagram for meteorological data management system

2.4 系统详细设计及开发

2.4.1 气象数据库设计及开发

气象数据库基于excel 软件构建,包括索引数据和原始观测数据,数据关系如图7 所示。

图7 气象数据关系示意图Fig.7 Schematic diagram of meteorological data relationship

1)索引数据

索引数据存储于系统目录下“索引数据格式.xlsx”文件,具体包括“数据统计”、“数据库近义词”以及以各观测点名称命名的气象观测记录。

该文件展示了系统存储的观测点数据情况,包括观测点数量、气象数据总量、各观测点基本信息和气象观测记录信息。

其中“数据统计”工作表的格式如图8 所示,“观测点数量”显示了本系统存储数据所涉及的观测点数量,“数据总量”显示了本系统存储的数据总量,“索引起始行”用于辅助系统读取数据。在自第5行起,每一行存储了观测点的名称,该观测点的数据条目数量,观测点的经度、纬度以及海拔高度。这里的观测点名称是系统检索的关键信息,需要与后续的观测点气象数据表名称相同。

图8 “数据统计”工作表格式Fig.8 Format of“data statistics”data sheet

“气象观测记录”数据表格式如图9 所示。该表用于存储该观测点记录气象数据的时间信息,并将该时间信息作为观测点气象数据检索的依据。

图9 “气象观测记录”数据表格式Fig.9 Format of“meteorological observation record”data sheet

此外,为便于读取不同来源的输入数据,本系统建立了“数据库近义词表”,将气象信息的表头和常见的表述方式相对应,以降低用户的工作量。“数据库近义词表”格式如图10 所示。

图10 “数据库近义词表”格式Fig.10 Format of“database synonym”data sheet

2)原始观测数据

观测点原始气象观测数据存储于系统目录下相应的excel 文件中,文件命名格式为“Data- 观测点名称.xlsx”。部分文件格式如图11 所示,该文件以数据观测时间为工作表名,记录该次观测所采集的原始气象数据。文件默认记录相对高度(m)、气压(hPa)、虚温(K)、风向、风速(m/s)、时间(s)、温度(°C)、湿度(%)、经度、纬度、北向风(m/s)、东向风(m/s)、露点(°C)、温露差(°C)。如果原始数据没有记录相关信息,则该列数据为空。如果原始数据记录了默认项目以外的数据,则添加至工作表默认项目的右侧。

图11 “原始观测数据表”部分格式Fig.11 Partial format of“original observation data”data sheet

2.4.2 系统模块设计及开发

1)登录页面设计

系统登录页面设计示意图如图12 所示,登录页面用于确认用户身份,并根据用户身份开放相应系统操作权限。

图12 系统登录页面设计示意图Fig.12 Schematic diagram of login page

2)启动页面设计

系统启动页面设计示意图如图13 所示,用于辅助用户在系统数据录入、数据检索、数据分析3个功能模块之间切换。

图13 系统启动页面设计示意图Fig.13 Schematic diagram of system startup page design

3)数据录入模块设计

数据录入模块设计示意图如图14 所示,该模块为用户提供数据导入、数据库查看、增加观测点的功能。

图14 数据录入模块设计示意图Fig.14 Schematic diagram of data input module

其中,用户能够通过A 组件选择当前录入的气象数据对应的观测点,如果数据库中没有该观测点的信息,则用户可通过组件F 添加观测点信息。

B 组件为用户提供了查看索引文件和所选择观测点数据库的功能。

C 组件用于选择源数据的单位,并通过后台单位转化,自动将源数据转化为数据库要求的单位和格式。该系统提供高度由英尺向米,气压由帕向百帕,虚温由摄氏度向开尔文,风向由密位向角度,气温由开尔文向摄氏度的转换功能。

D 组件用于选择源数据的观测时间,并根据观测时间自动生成格式为“年-月-日-时-分”的工作表名,存储于数据库中。

E 组件用于选择源数据的路径,并将源数据导入数据库中。同时该组件还为用户提供预览源数据文件的功能,用户在点击预览文件按钮后,系统将自动打开源数据文件,并打开源数据文件相同目录下的“txt”文件,以便用户校对数据文件。

G 为返回按钮,本系统中除登录页面、启动页面外,其余页面均设有此按钮,用于返回启动页面。

4)数据检索模块设计

数据检索模块设计示意图如图15 所示,该页面为用户提供根据不同检索条件检索观测点数据并按不同格式输出数据的功能。

图15 数据检索模块设计示意图Fig.15 Schematic diagram of data retrieval module design

其中,A 组件用于选择要检索的观测点数据,在选择观测点后,系统将读取该观测点数据涵盖的年份,并将其展示于B 组件中。

B 组件用于定制检索条件,本系统提供日期范围检索方式(默认)以及时段范围检索方式。选择检索方式后,该区域会显示相应设置窗口。日期范围检索方式需要提供检索数据的起始和终止时间,该时间需精确到具体的年月日。时段范围检索方式允许用于设置多个检索的时段,并可移除已添加的检索时段。在确定检索时段后,系统将检索该观测点中各年满足检索时段要求的数据并输出。

C 组件用于定制输出内容的表头以及输出文件格式,系统目前提供“excel”文件格式和“txt utf-8 编码”格式的输出。同时,如果数据库中的数据不包括虚温数据,系统将自动根据气压、温度和湿度数据计算虚温。

5)数据分析模块设计

数据分析模块设计示意图如图16 所示,该页面为用户提供定制数据分析条件,展示数据分析结果,输出数据分析结果的功能。

图16 数据分析模块设计示意图Fig.16 Schematic diagram of data analysis module design

其中,组件A 用于选择数据分析对象,并选择相应的展示颜色。

组件B 用于定制分析条件和范围,本系统提供分析观测点所有记录数据的平均虚温、平均气压和最大风力功能。

组件C 用于对比展示不同观测点的分析结果。

组件D 用于选择相应观测点的数据分析结果。

组件E 用于控制观测点数据分析进程,用户在选定数据分析对象,并确定分析条件和范围后,点击“开始分析”按钮,系统将在右侧图标区域中展示数据分析结果。点击“清空分析”按钮,系统将清除所有数据分析结果。点击“输出结果”按钮,将以“txt utf-8 编码”文件格式输出组件D 中选择观测点分析结果,如果没有选择,默认输出所有观测点结果。

2.5 系统需求追溯

系统功能模块对用户需求的追溯关系如图17所示,通过需求关联矩阵,建立系统功能与用户需求的追溯关系,能帮助设计开发人员分析系统对需求的满足情况。

图17 系统需求关联矩阵Fig.17 Association matrix of system requirements

通过需求关联矩阵分析可知,用户需求已在本系统中得到满足,本系统能够为用户气象数据管理和分析提供支持。

3 结论

本文提出了基于模型的气象数据管理系统设计方法,通过建立需求表,捕获了气象数据管理系统的用户需求。然后结合用户需求,设计了系统用例,并通过用例活动图对数据录入、数据检索、数据分析等用例活动进行了清晰准确的描述,支撑了系统功能模块的设计和开发。最后通过需求关联矩阵分析了功能模块和用户需求的关联关系,验证了用户需求的满足情况。通过采用基于模型的设计思想,有效梳理了用户需求,明确了系统业务流程,验证了需求满足情况,提高了系统设计和开发效率。

本文设计的气象数据管理系统实现了气象数据录入,气象数据检索以及气象数据分析的三大功能,能够对不同来源的气象数据进行标准化的格式管理,能够按起止时间、时间段等条件筛选各观测点的气象数据,并能够对不同高度层的平均气压、平均虚温和最大风力进行统计分析,极大方便了设计师获取装备设计和试验所需气象数据,并能够根据气象数据变化规律和极限情况合理调整装备设计工况,有力支撑了装备的研制研究。

猜你喜欢
数据检索数据录入用例
高速公路省级清分结算平台高效数据检索应用探究
UML用例间包含关系与泛化关系的比较与分析
UML用例模型中依赖关系的比较与分析
基于SPSS软件在市场调研中的数据录入方法
面向海外数据库的一种通用数据录入方法的研究
联锁软件详细设计的测试需求分析和用例编写
從出土文獻用例看王氏父子校讀古書的得失
基于SPSS软件在市场调研中的数据录入方法
本刊进入的国内外数据检索/文献服务机构
本刊进入的国内外数据检索/文献服务机构