美国陆军护栏通用传感器(GRCS)系统的核心是其发射器地理定位功能。此功能已被证明是国防部信号情报(SIGINT)社区中最可靠和最准确的功能之一。我们的案例研究主题 - GRCS - 采用多种发射器定位算法和功能,以优化情报收集和发射器利用。
因此,在迁移 GRCS 算法时,第一个任务是了解将部署生成的基于 SOA 的服务的环境。SOA 系统设计范例使软件服务可用于以网络为中心的应用程序。SOA的作用是允许生产者和消费者之间的信息互操作性和交换。迁移的相关注意事项包括:
将使用哪种类型的集成使新算法在目标部署环境中可用?
迁移的算法将如何与目标环境的安全和元数据模型集成?
GRCS 算法的部署环境是分布式公共地面系统-军队 (DCGS-A)。由于GRCS包含多个候选发射器位置算法,因此关键步骤是确定要收集的算法。GRCS超宽定位算法是一个明确的选择,因为它与GRCS系统的其余部分的耦合度很低。
下一个挑战是收集高斯-牛顿发射器位置算法。虽然比GRCS超宽定位算法更准确,但由于高斯-牛顿算法分布在多个软件模块上,因此要复杂得多。我们遇到的第一个挑战是高斯-牛顿算法不容易与系统解耦。为了增加复杂性,该算法同时具有C和Fortran分量。这至少将算法标识为 Type 3 迁移(部分应用程序重构)工作。由于高斯-牛顿算法有充分的记录,因此有可能进行类型4(完全应用程序重构)集成。在与利益相关者讨论选项后,得出的结论是,使用现代工具进行4型集成的清洁港口将是首选的行动方案。
算法采集过程
在GRCS算法收集工作开始时,进行了一项行业调查,以找到有关该主题的相关研究。最成熟的工作是由软件工程研究所(SEI)支持的面向服务的迁移和重用技术(SMART)。SMART 是一个四步流程,描述了分析遗留系统并确定它们是否可以作为 SOA 服务公开所需的活动。第一步是与利益干系人合作,以捕获项目目标。第二步确定遗留系统中符合既定目标的候选算法。第三步根据收获算法的 ROI 评估迁移成本。第四步是根据成本和利益相关者目标确定每个算法的迁移优先级。
SMART 流程中的这四个步骤仅代表部分解决方案。SOA 服务仍必须进行设计、构造、测试和部署。我们在 GRCS 上的流程增加了第五步,以支持构建、测试和部署需求。对每种算法重复第五步,包括评估迁移选项、测试用例和测试数据开发、实际迁移工作以及利益干系人进度审查。
GRCS 迁移工作使用现代螺旋开发方法来对遗留代码进行逆向工程,对算法文档进行全面审查,并采访领域专家。利用许多利用现代计算技术的机会,例如用于计算密集型计算的数学库和用于独立于平台的构建和部署的Web服务/ Java。
经验 教训
以下经验教训对于负责将旧系统迁移到以网络为中心的环境的任何组织都很有价值:
在可管理的螺旋中打破任务。将工作分成两到三个月的实施,为实现短期目标提供了一个很好的机会。
为重新设计/现代化工作定义具体目标。通过选择特定目标,设计人员可以狭隘地关注迁移所需的功能。这非常适合 Web 服务迁移的独特机会,因为从本质上讲,每个服务功能都应该是自动的,并且与系统的其余部分分离(独立)。
不要将重新实现计算在内。当一项功能得到很好的记录时,使用现代工程工具可以非常容易地重新实现。
构建良好的图形 UI/测试工具。带有 UI 的测试工具提供了一种简单的机制来审查与项目利益干系人的工作,并提供了一个如何从使用者应用程序访问 SOA 服务的具体示例。
审核编辑:郭婷
全部0条评论
快来发表一下你的评论吧 !