《软件平台化研发策略》由会员分享,可在线阅读,更多相关《软件平台化研发策略(15页珍藏版)》请在金锄头文库上搜索。
1、软件平台化研发的策略1 概述软件是公司创新产品之源,基于平台化架构研发的软件可以显著提升产品的可靠 性,缩短新产品的研发时间。所谓“平台”是指实现信息处理功能的计算环境,是一套基础设施,用来支撑公司 产品各种测量与分析及管理应用,并为这些应用提供一个标准的运行环境。软件平台可 以裁减和组合,并通过标准化应用编程接口(API)为各种不同应用提供服务。平台一般具有以下特性:(1) 开放性:“平台”的实现应严格遵循统一的标准、规范和信息格式,通过最大限度的软件重用和数据共享,提供标准的服务和统一的编程接口,以实现各系统(各部分) 之间的互操作,实现软件和用户在不同档次的软硬件环境之间的移植。注:“平
2、台”一般由高级技术人员研制;而用户一般为工程实施人员。(2) 可移植能力:“平台”的构成应能使软件和用户,方便地从一个硬件或软件环境转向另一个硬件或软件环境中使用。(3) 安全保密能力:“平台”应根据共性的安全需求,制定相应的安全策略,确定“平 台”的安全框架,实现基本的安全机制和基本的安全服务,建立公共的安全基础设施, 使得基于“平台”的产品能按各自的安全需求,实现相应的安全功能,保障安全可信。(4) 系统管理能力:“平台”应有能力管理平台操作、资源和用户,实现系统配置、 故障和性能管理。(5) 互操作能力:“平台”的构成应能使两个或多个系统(部分)之间有效地互相提供服务、交换和使用数据。(
3、6) 可伸缩能力:为适应不同规模和不同处理负荷的需要,“平台”应具有适应工作负荷变化的灵活配置能力,使应用软件对系统规模的变化有较强的适应能力。(7) 分布处理能力:“平台”应提供远端过程计算和分布式对象处理的能力,使各业务、操作以及信息传送能够在指定的多个物理或逻辑分散的平台上实现。(8) 网络化的处理能力:“平台”应通过一组标准的通信接口,实现信息处理和细心你传送一体化,使网络中合理部署硬件,都有能力实现所要求的处理和操作。2 平台的技术参考模型图 1 平台的技术参考模型图2.1 应用支撑软件平台”所属各应用支撑软件,一般是外购进入,它们除遵循相应的标准外,还提供有对外接口规范。2.2 应
4、用平台2.2.1 软件工程服务应提供从应用软件的需求分析、设计、编码、测试到维护的整个生命周期的全过程的支持环境和计算机辅助软件工具,以及程序设计语言服务等。2.2.1.1 支持环境2.2.1.2 程序设计语言2.2.2 用户接口服务用户接口服务通过人机交互服务 API 提供外观表示和运作方式的支持;通过人机交 互服务外部环境接口向用户提供人机交互支持。2.2.3据管理服务对多个应用共享的数据进行独立管理的能力。2.2.4据交换服务为各种应用之间和应用与外部环境之间进行数据交换(包括数据的描述、存储、访 问和传送等)提供服务,通过定义数据格式以支持互操作。包括文档、图形、地理 /空 间、图像、
5、视频、音频、大气/海洋等数据交换服务。2.2.5 图形服务图形服务应支持图形的产生和处理,包括二、三维图形对象的定义、显示、输入、 输出、存储等,使图形处理独立于图形显示、硬拷贝和输入设备。2.2.6 通信服务(1) 应能屏蔽异种通信的差异、向应用提供可靠、安全、实时的端到端点对点的信 息传输;(2) 机外设备间应采用以TCP/IP为主、CP/IP和OSI协议集相结合的网络体系结构, 机内单元之间采用串口直连;(3) 能实现实时传输服务软件和网络安全服务的功能,并向上提供统一的编程接口。2.2.7 操作系统服务操作系统是操作和管理应用平台的核心服务,它提供应用软件和应用平台之间的接 口,支持应
6、用软件的操作。操作系统服务包括核心操作、外壳和实用程序。2.2.8 中文化服务应在系统中提供一组服务和接口,支持基本汉字处理、中文风格人机界面等。2.2.9 安全服务平台必须为特定的信息系统提供公共的安全基础设施,为各种不同的应用提供统一 的安全应用编程接口,使特定系统可以根据该系统安全需求选择所需强度的安全机制和 所需的安全服务。安全服务应用提供以下功能:(1) 操作系统的安全服务应在 C2 级或 C2 级以上的基础上提供信息安全标记、用户 安全标记和鉴别、强制访问控制等安全功能;(2) 网络安全服务应提供鉴别服务(包括数据源和身份鉴别)、访问控制服务、数据 机密性服务、数据完整性服务、抗抵
7、赖服务(包括源发方抵赖和目的方抵赖)和可用性 等六类基本安全服务。(3) 数据库安全服务应提供在商用数据库系统基础上的库内加密及库外加密功能, 对国产化数据库系统应提供多级访问控制功能。(4) 安全管理应提供包括安全事件审计跟踪工具和安全评测工具再内的各种实用程 序。其中,安全事件审计跟踪工具一般包括异常安全事件的监测、记录、报警和触发相 关安全处理程序以及安全记录分析工具等。(5) 安全服务可通过多种安全机制来实现,比如,加密机制、数字签名机制、访问 控制机制、数据完整性机制、鉴别交换机制、信息量填充机制、路由控制和公证机制等, 这些机制可单独使用,也可以组合使用。2.2.10 系统管理服务
8、包括故障管理、配置管理、性能管理、记帐管理和安全管理等功能。2.2.11 分布式计算服务支持分布异构环境下应用的协同工作,实现资源透明。23应用编程接口 (API)应用编程接口是“平台”上的特定应用与“平台”服务软件之间、“平台”内各层 服务软件之间以及同层内不同服务软件之间的接口。采用标准化的、统一发布的公共API,对应用的可移植性、人机界面的一致性以及系统的互操作性提供有力的保证。 这些公共API应用包括在“平台”的程序员手册、编程参考手册或相应文档中。 2.4外部环境接口(EEI)外部环境应包括与应用平台交换信息的三类外部实体,即:用户(人)、信息交换 实体(例如可移动盘等)及通信实体(
9、例如电话线、网线、交换设备等)。主要有以下 三类接口,这些应包含在“平台”的程序员手册、编程参考手册或相应文档中。(1) 人/机交互服务:定义了人与应用平台之间的物理交互接口。比如:显示器、键 盘、鼠标、音频设备等。(2) 信息服务:它定义了应用平台与外部驻留存储服务之间的接口。它规定了标准 格式和语法将保证数据可移植性和应用互操作性。(3) 通信服务:它为应用软件及应用应用支撑软件与外部实体之间的交互服务提供 接口。必须将协议的状态、格式和语法标准化。3 产品的组成原理3.1 硬件的接口公司产品硬件的接口主要有以下五类,具体见下图 2 所示。(1) 人机交互接口:应提供键盘、鼠标与显示器等人
10、机交互接口,键盘与鼠标接口 一般为PS2或USB接口,显示器接口 一般为VGA或DVI接口。(2) 设备控制接口:应提供主控电脑与仪器设备控制器之间的通信接口,主要包括PCI、cPCI、LAN 与 USB 等接口。(3) 程控总线接口:提供主控电脑或仪器设备控制器与仪器设备之间的通信接口,一般包括 LAN、USB、GPIB、IEEE1394、PXI、VXI/MXI、LXI 与 RS-232 等接口。(4) 开关部件接口:作为仪器设备与通用测试接口中的接收器之间的接口,一般应符合 GJB5936-2007 第 5 章的要求。(5) 接收器夹具接口:作为通用测试接口中的接收器与测试接口适配器中的夹
11、具之间的接口,一般应符合IEEE1505的规定。、k*设备控制 接口人机交互 接口开关部件 接口接收器夹具 接口测试接口适配器图 2 产品的硬件接口示意图开关部件主控电脑测试控制器丿程控总线 接口通用测试接口3.2 软件的组成软件组成见下图 3。应用开发环境办公处理软件数据库系统测试诊断支持软件 浏览器软件f J- -hi 1测试资源管理信息综合处理测试任务执行测试程序维护 测试管理平台软件操作系统图 3 软件的组成示意图软件的功能结构模型见下图 4。用户接口层用户接口测试管理核心层测试管理平台软件raJ测试驱动程序t仪器设备层厂:、输入/输出控制fVXI设备 PXI设备 GPIB设备 LAN
12、设备 USB设备 串口设备 其他设备图 4 软件的功能结构模型图(1) 用户接口层:该层作为人机界面应完成与用户间的交互,应至少提供对话框 快捷键、菜单与命令按纽等人机交互方式。(2) 测试管理核心层:该层应提供软件的核心构件,维护与管理核心构件之间的通 信中枢,将底层的功能服务进行无缝融合并根据上层需求展现给用户接口。(3) 外围服务层:该层主要完成具体应用的功能服务,包括测量控制、诊断推理、 维护与信息管理等,这些功能服务应该是动态的、可扩充的,做到应用与具体硬件无关。(4) 测试驱动层:该层作为测试程序与仪器设备、开关部件与被测件等相关资源进 行特性的纽带,测试驱动程序应实现同功能仪器设
13、备间的互换。(5) 仪器设备层:该层应直接面向各类测试资源、仪器设备层的输入/输出控制一般 应基于 VISA 函数库,做到仪器驱动器与程控总线无关。3.3 软件的接口软件的接口示意见下图 5 所示,一般有以下接口:(1) 软件架构接口:该接口应为二次软件开发者提供通用方法,可约束影响自动测 试软件操作的系统需求、软件协议和交互规则,并能提高软件的可移植性。(2) 软件人机接口:该接口应遵循友好、一致的原则,一般应在人机交互界面的颜 色、文字、控件、快捷键、菜单与帮助方面保持协调一致。(3) 应用开发环境接口:视自动测试系统需求规定测试程序的开发与调试接口,所 选用的应用开发环境必须得到所选用软
14、件架构的支持。(4) 测试程序文档接口:测试程序文档接口应有助于用户来理解测试程序的设计原 理与测试操作过程。(5) 诊断服务接口:应用于提供诊断推理所提供的基本服务。(6) 运行时间服务接口:运行时间服务接口应规定测试程序执行期间调用测试程序 的方法。(7) 资源管理接口:提供测试程序与仪器设备资源分开的基本方法,应便于开发虚 拟仪器,提高测试程序的可移植性。(8) 仪器设备类接口:服务于测试过程或运行时服务与仪器驱动器之间,应有助于 提高测试程序的可移植性。(9) 开关部件类接口:服务于测试过程或运行时服务与仪器驱动器之间,应有助于 提高测试程序的可移植性。(10) 接口适配器类接口:服务于测试过程或运行时服务与仪器驱动器之间,应有助 于提高测试程序的可移植性。(11)仪器驱动类接口:一般应符合 VISA 规范。(12)仪器通信管理器接口:(13)多媒体格式接口:视功能需求用于规定与多媒体编辑工具和用户之间传递的超联结文本、音频、视频和三维物体模型信息的格式。(14)第三方软件接口:一般以文件形式与其他软件进行数据通信用户接口软件架构 接口主软件人机接口多媒体格式 接口运行时间口仪器设备驱动器测试管理平台软件*