我想知道如何使用 UML 图呈现软件概览。代码将用 C 语言为微 Controller 编写。所以,我猜我不能使用类图/对象图/复合结构图。然后,
我应该使用哪个 UML 图?
事件图可以用于此吗?如果是这样,是否有任何方法可以将所有事件组合在一个图表中以查看整个软件?
如果 UML 图不合适,那么哪一个是适合此目的的?
提前致谢。
最佳答案
理想情况下,程序设计应该与您的需求规范联系在一起,这样对于每个需求都有一个代码模块,并且对于该代码模块有一个测试来证明它如何满足需求。这是一种很难在实践中坚持的乌托邦,但无论如何,这种设计是一个很好的抱负。
一般来说,如何记录程序设计并不重要,只要整体设计得到记录即可 - 即使在专业环境中,这种情况也很少见。但是 UML 的所有迂腐细节实际上都是可选的,在找到适合它们的情况下使用它们,不要仅仅为了它而使用它们。我经常使用 UML 类图来记录代码依赖关系,以及对记录应用程序行为很有用的状态图。等等 - 保持广泛而没有实现细节。
类的 C 等价物通常是具有相同名称的 .h/.c 对,它们一起形成“模块”或“ADT”或任何您喜欢的名称。
您需要记录所有A 类使用B 类 依赖项,以及所有B 类是A 类 依赖项(继承)。继承在嵌入式系统中不是很常见,但实现 HAL 是使用它的典型示例。您在特定于硬件的驱动程序之上有一个抽象 API。
显然,您需要尽早决定此类抽象是否合理 - 程序最终会移植到另一个 MCU 上,还是指望硅供应商的“长生命周期”保证 MCU 不会在预期产品中结束生命周期生命周期?看看今天完全崩溃的硅市场,我认为任何微 Controller 项目都需要在其生命周期内移植很多次。
关于c - 哪个 UML 图应该用于将用 C 语言为微 Controller 编写的软件概述?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70153599/