Marcel wrote: > Does anyone agree? > > Marcel Marcel, I agree. Somehow, we should try to win people's interest in this technology. We are trying to do this all these years without success. We are doing something wrong! Fortunately, we are not commercial people otherwise we would have stopped using this technology many years ago. Hmmm, it seems that commercial and success go hand-in-hand and the superiority of technology is another story. I think there is a market! This is how I think about this. I have learned that if you go with the flow of success of other products you can profit from it, even if the technology is not superior. If your product contributes in *improving* this technology then people will choose to use your product. For example: Microsoft Windows has success and commercial backing whether we like it or not. Well, most people like it and buy Windows products, including me. Companies that build applications based on Windows profit from its success and commercial backing. Companies who build applications for Linux will have no success and no commercial backing. Even by making software free doesn't guarantee success. Those who are anti-Windows will eventually shoot in their own foot. This is similar with the UML. It looks like that the UML may become successful and has commercial backing. It is successful because many people follow the developments with much interest. Look in the bookstore how many books are available about the UML. Being anti-UML will not gain sympathy (watch out for your foot). Currently, I am doing research in developing an UML extension that is based on CSP. It is nice to see that CSP improves the concurrency model of the UML. Furthermore, I am developing a new UML diagram ... I call it the CSP diagram. It is a graphical language that is data-flow oriented, object-oriented, process-oriented, compositional-oriented and UMLable. It's metamodel is a set of (UML) classes known as CTJ/JCSP. The CSP diagram notations could be created as an add-on to exciting UML tools. The CSP diagram does not replace any other UML diagram, but should be seen as a companion to all other UML diagrams. The CSP diagram can only model a small part of the entire software - its concurrency and real-time aspects. In the UML, people are free to choose the type of diagrams that is best useful for their application. For example, for creating real-time software I would start with creating CSP diagrams. I would skip creating use case diagrams and the CSP diagram guides me to refine the design using activity diagrams and concurrent statecharts properly. Creating concurrent software with CSP diagrams in the UML has become much more fun than using its original model. It's like writing occam or CSP programs in a graphical language. We can even do deadlock checking or detecting priority inversion problems in our designs. For creating database applications I may start with class diagrams (entity-relation diagrams) and end up with a CSP diagram or no CSP diagram at all. I think, the UML opens a market and we should step in. This is one thread to go, but we need commercial backing :(. CSP as part of a Unified Modeling Language would be a great solution, or not? We all would speak a common language. Tony Hoare and He Jifeng wrote a book that is called "Unified Theories of Programming" (Prentice Hall, 1998, ISBN 0-13-458761-8). Why this title? Chapter 0 "The Challenge of Unification" explains why. One phrase (page 1): "The drive towards unification of theories that has been so successful in science has achieved equal success in revealing the clear structure of modern mathematics". Hmmm, interesting.... Gerald
<<attachment: winmail.dat>>