我的软件开发团队最近发现自己为我们的产品实现了几种不同的通信协议,以实现与各种外部产品的集成。
尽管每个协议都不同,但实施过程非常相似。以下是我见过的一些常见事情:
- 特定通信协议总是在某些标准协议(UDP,TCP / IP,串行,CAN)之上定义,并包括从一侧传递到另一侧的一组消息。这些消息的结构是由协议预定义和描述的。
- 在我们的产品中实现此协议总是从根据协议提供的信息编写C ++头文件开始。
- 为了允许早期的集成周期并正确测试我们的代码,我们总是发现自己正在开发实现我们/他们协议的模拟器。
醇>
问题在于:您是否知道任何可以帮助我们自动化/简化上述流程的工具?
理想情况下,我希望有一个允许我执行以下操作的框架:
- 以某种编辑器/形式语言定义协议
- 以人类可读的格式将协议定义导出到Doc / PDF
- 将协议定义导出到C ++头文件(可能还有其他语言)
- 基于协议定义自动(或半自动)在通信中生成双方的模拟器
醇>
我会感谢任何帮助和/或建议。