Graphically Yours

Many people look toward graphic arts, line drawings, boxes, circles and arrows to find the future of software.
But I can’t really see it.
Software has been language based since the beginning. Proposing that in the future, software will be written using UML and MDA is, to me, like saying books will be written entirely with pictures.
Ok, so some books are entirely pictoral, and icons are important if not critical to human life as we know it. But I can’t really see how it’s possible to impart real knowledge without using language. Or create precise enough computer instructions.
I can’t see that the drawing approach will really work. I don’t know of any graphical software development tool that has yet to address the entire lifecycle; or that generates code of sufficient quality.
I think it’s just a problem that isn’t meant to be solved.
Software is how humans tell computers what to do. During the past forty years or so one measure of the advancement in software is the level of abstraction at which humans are able to tell computers what to do. Assembler is higher level than machine language; COBOL is higher level than assembler, and so on.
The industry got kind of stuck on the “fourth generation” language problem during the late 80s, and I don’t think you could say anything really succeeded (unless you count Visual Basic, which I don’t, since it has so many purely language based extensions to the original form-based 4GL idea).
Now what we have is XML, which is certainly operating at a higher level of abstraction since it has to be parsed and interpreted, and executed by some other (arbitrary) language. Thus XML (and Web services, of course 😉 is truly language independent, and a major step forward.
In my view of the world, XML (and Web services) has a much better chance of solving the next level abstraction problem than UML or MDA.
(And no, I don’t think either UML or MDA is very well suited to using for Web services, either. Class diagrams are just not the right metaphor, since Web services are not object-oriented, and the interaction diagrams aren’t rich enough. Never mind the fact it doesn’t make sense to use diagrams to create software in the first place 😉

Advertisements

7 responses to “Graphically Yours

  1. After having stuggled with the WS-CAF UML I have to agree 100% But then I find it less than useful for CORBA as well 😉

  2. More MDA Critique

    IONA’s Eric Newcomer has some thoughts about MDA as well. Sigh. I wonder when people will start to understand that MDA is not about pictures, but about meta-information, and that an MDA approach does not mean that programming languages are obsolete. Th…

  3. UML to model Web Services?

    Eric Newcomer answers some of my criticisms of his recent posting on MDA. Great to see that we’re not that far apart, and kudos to Eric for openly acknowledging a slight change of mind — something you don’t find very often. Interestingly, many op…

  4. Mick Hittesdorf

    I couldn’t disagree more. UML and MDA are the future of software but that doesn’t mean that they will replace coding. That is not the point of UML and MDA anyway. Only an idealistic fringe really believes that ‘executable’ UML is possible and desirable. The real power of UML and MDA is that it allows complex software systems to be modeled independent of technology. The kind of ‘code’ that UML/MDA models can usefully generate tends to be structural or declarative in nature not procedural- IDL, WSDL, XML Schema, Java interfaces, classes, etc. Though a sequence diagram does have the expressiveness to represent software logic it is a painful way of doing so.

  5. My original comment was based on what I guess you’d call hype about MDA that was going around a couple of years ago. I’m glad to see that people are being more realistic now, and not thinking that systems can or will be coded using drawings. But I’m not sure from your comment what you disagree with. My point was that diagrams are not going to replace code, and I think you are in agreement with that, aren’t you?

  6. Eric Newcomer on UML and MDA

    Eric posted some comments on the use of UML and MDA. This is the last paragraph of his post…(And no, I don’t think either UML or MDA is very well suited to using for Web services, either. Class diagrams are just not the right metaphor, since Web ser…

  7. Eric Newcomer on UML and MDA

    Eric posted some comments on the use of UML and MDA. This is the last paragraph of his post…(And no, I don’t think either UML or MDA is very well suited to using for Web services, either. Class diagrams are just not the right metaphor, since Web ser…