哪种类型的图表用于表示客户端/服务器套接字编程?

时间:2015-06-25 11:46:33

标签: sockets socket.io documentation uml

我已经与我的团队开发了几个基于套接字的交互式Web应用程序,但我总是发现记录条件数据流很痛苦。

我使用过这样的序列图 Sequence Diagram Example

这是记录套接字编程的最佳方法吗?套接字编程是否有任何UML标准?

3 个答案:

答案 0 :(得分:5)

编辑:它不是UML图,而是一个简单的表示法。

要创建面向连接的套接字,必须为服务器程序和客户端程序使用单独的函数序列,因此您可以将套接字连接表示为:

Socket.io

答案 1 :(得分:2)

作为SD的替代方案,您可以使用交互图来尝试它,它将不同的注意力集中在通信上(更多面向状态)。单个消息根据呼叫顺序编号。

此外,您可以创建一个组件图,其中单个组件使用端口进行通信,端口实现某些接口。这也很适合socket /棒棒糖表示法。还可以使用数据流连接器显示数据流,您可以在其中分配显示传输数据的类。

Sample

上面的图片可能不是你在真实模型中创建的。但它显示了您可以做些什么来增强您的模型。有两个类ServerClient与接口Socket相关(它应该被称为MailSocket以更好地适应OP的模型),它们实现/依赖在界面上。在类下面显示了两个依赖于它们的组件。两者都显示带有提供(棒棒糖)或必需(套接字)接口的端口。这只是图片(并且需要用单独的图表详细说明),组件Server在其胃中具有类Server并暴露由它实现的界面(通常用复合图表来实现) 。类似于Client computer / Client。组件之间的数据流可视化Mail类从Client computer传输到Server

总而言之,这是一个示例,如何增强描述套接字通信的模型。在UML中描述套接字I / O(或任何其他东西)没有标准。 UML是一种交流思想的语言。这只是一个例子。还有其他无限的可能性。使用最好的服务。实验。讨论

答案 2 :(得分:0)

您是否考虑过使用UML协议状态机来显示数据的条件流?请参阅http://www.uml-diagrams.org/protocol-state-machine-diagrams.html#protocol-state-machine