Print

UML 2.0: Exploiting Abstration and Automation



Email
March 15, 2004 —  (Page 1 of 4)
Object Management Group Inc. (OMG) standardized the initial version of the Unified Modeling Language (UML) in 1997. Since then, UML has been very widely adopted by both industry and academia as the language of choice for describing the architectures of software systems. This is reflected in the fact that it is currently supported by literally hundreds of commercial tools.

In June 2003, the Architecture Board of OMG approved the proposal for the first major revision of UML, version 2.0. This is the initial step in the standardization process slated for completion by this summer. If the ambitious goals behind it are realized, UML 2.0 will represent a major milestone in the evolution of software development technologies.

This is because the primary driving force behind UML 2.0 is model-driven development, an approach to developing software that shifts the focus of development from code to models, and to automatically maintaining the relationship between the two. The essence of software modeling (as in all modeling) is abstraction: the removal of fickle and distracting detail of implementation technologies as well as the use of concepts that allow more direct expression of phenomena in the problem domain.

ART OF ABSTRACTION
Given the increasing sophistication of today's software applications, the solution to the current software crisis must inevitably rely on increased levels of abstraction when specifying software. Abstraction is really the only effective means that we have of dealing with complexity that overwhelms our cognitive capacities.

However, there is more to model-driven development than just the concept of models, which, after all, is an idea that has been around almost as long as software. The second key ingredient of model-driven development is an increased level of automation-that is, the use of computers to automate many of the mechanistic tasks involved with software implementation. Once again, we are on safe ground here: Automation has been the traditional technological solution whenever it was necessary to significantly improve productivity and reliability.

Automation in model-driven development is much more than just automatic code generation directly from models. It includes automatic verification of software specifications to ensure that the system satisfies its requirements.




Pages 1 2 3 4 


Share this link: http://sdt.bz/27758
 
Most Read  Latest News  Resources

close
NEXT ARTICLE
Great expectations for development—with policy automation
Policy automation can reduce costs and time wasted from redundant code rework Read More...
 
 
 




News on Monday  more>>
Android Developer News  more>>
SharePoint Tech Report  more>>
Big Data TechReport  more>>

   
 
 

 


Download Current Issue
MAY 2013 PDF ISSUE

Need Back Issues?
DOWNLOAD HERE

Want to subscribe?