问题
There are so many types of diagrams in UML. I am little confused about which one to use for what. I designed a 3-tier architecture for my web application software using UML Component Diagram. Please see the attached image and tell me if I'm doing this right or wrong. Is this a good idea to use Component Diagram for this architecture?
回答1:
Basically I agree with @KeizerHarm's answer. However, there's a flaw in your diagram. Rather than packages you should use components since you put ports on their boundary. A port is not allowed for packages, but for components it is. Alternatively place the ports on the components inside the packages. The wiring can just cross the border of the packages:
回答2:
I have made component diagrams like that many times before. Usually I draw another box around the whole thing to make it clear that it's part of the same system, but there's nothing wrong with this in the proper context.
I would perhaps suggest naming your interfaces, or at least making it clear what they do from an accompanying description. And Backend Application Server (Apache)
seems to require the same interface from an internal and an external component, the former unfilled, which I wouldn't do myself as it seems to imply you can substitute or complement the Database
with something inside the Business layer that is left unspecified?
来源:https://stackoverflow.com/questions/50679196/is-this-okay-to-use-uml-component-diagram-for-a-3-tier-architecture