Case studies and examples
In this chapter, as in previous ones, we will continue our study of the mobile payments application. We will keep exploring this context to see some examples of the diagrams we have discussed so far.
UML class diagrams for mobile payments
As a first example, we will look at UML class modeling. This is a very common diagram in Java projects. It is debated whether it's useful to build and maintain documentation that is so close to code (see also the considerations we discussed in the section on C4), since it may be seen as not adding that much value and being hard to maintain. Moreover, in modern development models (such as cloud-native and microservices), you are supposed to communicate between parts of the application by using established interfaces (such as REpresentational State Transfer (REST) or Google Remote Procedure Call (gRPC) and avoid exposing the internal model of your applications for others to tap into.
My personal view is that the...