UML WAS: Re: Banned Erlang

Peter-Henry Mander erlang@REDACTED
Wed Feb 26 08:38:42 CET 2003


Rant alert!

UML is similar in nature to an idiot translator, who has no knowledge 
nor understanding of the subject in discussion, and *really* screws up 
by misunderstanding a subtle meaning and provokes an argument over 
nothing! At least a compiled language can check syntax, and test suites 
can check semantics.

And as mentioned earlier, the UML tools ought to be faultless if the 
method is sooooo good! Do Rational eat their own dog food?

Besides, aren't programming languages supposed to be a clear, legible 
and unambiguous description of algorithms in themselves? If they aren't, 
they're a _failure_! Diagrams ought to be no more that large scale road 
maps, back of napkin sketches and such, not a replacement for code.

Happily, Erlang does go further in the right direction and (I believe) 
would not benefit from "software though pictures" that seems to be 
prevalent in less concise languages.

Phew, I feel better now. :-)

Pete.

Per Bergqvist wrote:
> I don't really have a problem with UML as a modelling language.       
> I find it useful for high level descriptions even if I think          
> some of the predecessors where more intuitive.                        
>                                                                       
> What I have a problem with is using UML, Rose and code generation for 
> programming.                                                          
>                                                                       
> 1) It is too time consuming to describe all the details of any worthy 
> system.                                                               
>                                                                       
> 2) At least I completely loose the overview my own work.              
>                                                                       
> 3) If the producer of the (very buggy) tools can't get it right why   
> should I use it to build mission critical systems ?                   
>                                                                       
> 4) The only meaningful result i.e. the generated code is almost always
> far from optimal.                                                     
>                                                                       
> 5) The "natural" choice is to generate C++. The number of failures of 
> large C++ projects is very very long.                                 
>                                                                       
> 6) It is almost impossible to do emergency corrections.               
>                                                                       
> (For many years I have often been called in for "digital firefighting"
> when something is way wrong with a system.                            
> Many times I have not even been involved in the development.          
> Without a simple structure it is extremely hard to fix the problems.  
> As a result you completely rely on the people who did the design.     
> This is what the believers claim you avoid using the tools.           
> When you finally find the designer it shows that the "tool" was soo   
> productive and he doesn't fully understand the design either.)        
>                                                                       
> To summarize, I am a true believer in simple structure.               
>                                                                       
> Writing this I don't really understand I always complain about it.    
> Maybe I should advocate it since others using UML would in the end    
> only mean less competition.                                           
>                                                                       
> All of you people with employeers forcing you to play the UML "Telma &
> Louise" game have my sympathy.                                        
>                                                                       
> /Per                                                                  
>                                                                       
> 
>>I thought UML was the winner of an RFC from the OMG for a modelling 
>>language.  It kinda makes sense why it's object-centric and why you 
> 
> see it                                                                
> 
>>for Java and C++ projects.  Still, I wouldn't necessarily call it   
> 
> the                                                                   
> 
>>end-all-be-all                                                      
>>of modelling languages.                                             
>>                                                                    
>>With my past experience with UML, I tend to feel object developers  
>>spend most of their time with the Class Diagrams, which don't really
>>transfer well to languages like Erlang.                             
>>                                                                    
>>Perhaps 10% of the time I'd see a good Sequence Diagram or          
> 
> Collaboration                                                         
> 
>>Diagram.  Less than that a good Statechart Diagram.  IMHO these     
> 
> might have                                                            
> 
>>some value in an Erlang setting.                                    
>>                                                                    
>>--erikp--                                                           
>>                                                                    
>>                                                                    
>>                                                                    
> 
> =========================================================             
> Per Bergqvist                                                         
> Synapse Systems AB                                                    
> Phone: +46 709 686 685                                                
> Email: per@REDACTED                                                   
> 
> 






More information about the erlang-questions mailing list