我应该使用哪种类型的UML图来模拟Web应用程序的各个部分?
例如,假设我的部分如下:
网络应用以某种方式与所有其他部分互动。从我的研究来看,最好的选择似乎是组件,部署或顺序。
以下是我用图表进行操作的一般概念,但我不知道哪种UML图表最适合表示。
如果您知道我应该使用的图表,我想知道图中每个部分的表示方式。例如,在部署图中,我知道服务器/数据库将是节点。而且,API可能是工件?
答案 0 :(得分:2)
要设计Web应用程序(或任何其他类型的软件应用程序),遵循最佳实践模型 - 视图 - 控制器(MVC)代码库架构,首先需要制作信息设计模型,通常以UML类图的形式,定义应用程序的 模型类 或"模型"。 "视图"您应用的(或用户界面)基于模型。
您的图表尝试为您的应用的部署架构建模。但是在选择代码库架构和信息架构之后会出现这个问题。
您可以在我的书Web Applications with JavaScript or Java中找到有关架构流程和几个示例Web应用程序代码的更多说明,该书也可作为开放式访问在线书籍提供。
答案 1 :(得分:0)
您可以从组件图开始。一般来说,你的问题太宽泛了,无法在这里得到解答,但无论如何都会有一些面包屑:
在下一步中,您可以描述在单个节点内托管的单个组件。您可以使节点可导航(意味着您有一个显示其内部的复合图),因此您可以放置显示其接口的组件实例。后者可以用棒棒糖或单个组件实现的定型类来显示。接下来,您可以以类似的方式分解组件,显示如何使用各种类实现组件以及这些组件如何实现单个接口。可以在组件外部显示接口,并在特定类中显示<<delegate>>
。
故事还在继续,但它太大了,不能在这里被告知。
答案 2 :(得分:0)
这很大程度上取决于您想要建模和沟通的内容。您提到的所有图表类型都是描述Web应用程序的有用方法。每个都侧重于Web应用程序的不同方面 - 组件模型是关于软件组件结构(数据库,Web应用程序,apis),部署模型显示如何将这些组件的实例部署到部署节点(服务器,设备等)中。就像托马斯所说的那样,这是一个非常广泛的问题 - 实质上你要问你应该如何描述你的网络应用程序的解决方案架构,这不是一个微不足道的练习。是否有一些我可以帮助的更具体的内容 - 你能缩小你想要展示的关于你的应用程序的内容吗?