To understand us, both users and programmers, we should speak the same language to manipulate of information.

To manipulate the databases we use the Structured Query Language - SQL, although we are not aware of it because the sentences are embedded within the application that interacts with databases but, to define the structure of a program or application, we have not defined a common language with the users.

The problem is that UML lacks a precise semantics, so it is not objective and can result in different interpretations for different users. Another factor is the lack of components to define persistence of a remote application or a distributed system. But the worst thing is the freedom to use any of the 13 types of diagrams, while we are not superstitious. Always we are going to use the least appropriate following our common sense...

As you can see, in this Use Case Diagram coexist different types of users, from commercial or secretary to controller or practical people, from customers to workers and unemployed people. Everyone wants to know how they will be his coming days, months or years (some nostalgic look past years) and some will try to keep the present in their own diaries.

If you don't mind my asking, what type of user you are and what language you communicate with?