是否有一种正式的语言可以将UML序列图中的信息捕捉到文本格式中,以便人类易于理解?
在我们这里,经常会用复杂的序列图来指定软件需求,这些图很难进行审核、验证正确性和进行更改。同时,在我看来,程序员们更喜欢从明确的文本表示需求开始实现,而不是从庞大的多页图表中开始。
是否有一种正式的语言可以将UML序列图中的信息捕捉到文本格式中,以便人类易于理解?
在我们这里,经常会用复杂的序列图来指定软件需求,这些图很难进行审核、验证正确性和进行更改。同时,在我看来,程序员们更喜欢从明确的文本表示需求开始实现,而不是从庞大的多页图表中开始。
(1) 是的,有一种专有的几乎正式的文本格式语言,能够用UML序列图表达信息,程序员可以理解(也可能是其他人类)。
我所指的语言是由Steve Hanov设计和实现的,可在https://www.websequencediagrams.com/examples.html上找到全面的示例列表,下面我强调了其中一个示例,以便您了解可读性的想法:
(2) 但是,请注意,您(或其他人)可以使用任何语言(文本或图形)编写糟糕的、难以阅读的代码,并且更改语言不会自动改变您(或其他人)的习惯,也不会使代码自动变得更好、更易读、更易维护。
(2.1) 将"需求的明确文本表示"写下来,例如以客户批准的用例的形式,这不是一件容易做到或学习的事情,仅仅更改语言并不能很大程度上改善它(有关更多指针,请参见Stack Overflow:从用户故事到序列图)。
(2.2) UML序列图的预期受众(读者)不仅是程序员,还包括那些可能通过图片胜过千言万语的非技术利益相关者。在我看来,给程序员提供可以通过工具反向生成UML序列图的Java伪代码(参见Stack Overflow:如何从Java源代码生成序列图或Google:“java sequence diagram”获取更多指针)比尝试找到/发明一个序列图特定语言更好。我可以在这里询问哪些主题?
程序员堆栈交换是一个问答网站,为软件开发和相关领域的专业人士和学生提供服务,他们希望获得有关软件开发概念问题的专业答案。
如果您有以下问题...
- 软件需求
- 软件架构和设计
- ...
- 开发方法和流程
- 软件工程管理
- ...