Comments
Richard Davies wrote: The UK has a good crop of technology pioneers in cloud computing - for example ElasticHosts, FlexiScale, Flexiant, OnApp - and also some strong government initiatives such as G-Cloud. We will have to see whether this kind of technical leadership converts into swift mass-market adoption or not.
Cloud Computing
Conference & Expo
November 2-4, 2009 NYC
Register Today and SAVE !..

2008 West
DIAMOND SPONSOR:
Data Direct
SOA, WOA and Cloud Computing: The New Frontier for Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
GOLD SPONSORS:
Appsense
User Environment Management – The Third Layer of the Desktop
Cordys
Cloud Computing for Business Agility
EMC
CMIS: A Multi-Vendor Proposal for a Service-Based Content Management Interoperability Standard
Freedom OSS
Practical SOA” Max Yankelevich
Intel
Architecting an Enterprise Service Router (ESR) – A Cost-Effective Way to Scale SOA Across the Enterprise
Sensedia
Return on Assests: Bringing Visibility to your SOA Strategy
Symantec
Managing Hybrid Endpoint Environments
VMWare
Game-Changing Technology for Enterprise Clouds and Applications
Click For 2008 West
Event Webcasts

2008 West
PLATINUM SPONSORS:
Appcelerator
Get ‘Rich’ Quick: Rapid Prototyping for RIA with ZERO Server Code
Keynote Systems
Designing for and Managing Performance in the New Frontier of Rich Internet Applications
GOLD SPONSORS:
ICEsoft
How Can AJAX Improve Homeland Security?
Isomorphic
Beyond Widgets: What a RIA Platform Should Offer
Oracle
REAs: Rich Enterprise Applications
Click For 2008 Event Webcasts
In many cases, the end of the year gives you time to step back and take stock of the last 12 months. This is when many of us take a hard look at what worked and what did not, complete performance reviews, and formulate plans for the coming year. For me, it is all of those things plus a time when I u...
SYS-CON.TV
Where Are the High-Level Open Source Design Tools?
I believe that they're emerging from efforts at Eclipse.org

In answer to the question "Where are the high-level Open Source design tools for Java?" I believe that they're emerging from efforts at Eclipse.org. These efforts began with the Eclipse Modeling Framework (EMF) in 2002, and have been building momentum ever since, with the addition of the UML2 project, the Graphical Modeling Framework (GMF), the Generative Modeling Tools (GMT) Project, and Model Driven Data Integration (MDDl). More recently, with the creation of the new top-level Eclipse Modeling Project (www.eclipse.org/modeling) to act as a home and focal point for all of these modeling related technologies, there is clearly an ever-growing focus in this area. So what does it all mean and what's behind the acronyms?

The focus of the Modeling Project is on bridging the design-versus-development gap using a bottom-up approach. We're building practical development tools and frameworks, evolving them over time, and using them ourselves to build the subsequent layers of the onion.

For example, given just an XML Schema as input, EMF and GMF can generate a fully functional graphical application ready to be tailored and specialized. Furthermore, since the generator technology supports merging, a developer can switch between modeling and hand-coding. This is essential for the adoption of high-level tools by a community that likes to view them as a dimmer switch it can adjust to suit various skill levels, rather than "all dark" or "all light" tools that replace hand-coding. And since the model can be specified in the form of annotated Java (which the generator produces to support round-tripping) it's possible for a developer to work completely in Java without buying into the whole sales pitch of the model-driven approach.

We validate these ideas by eating our own dog food: EMF models are used extensively throughout the Modeling Project, and many of our tools are based on EMF-generated editors. Now, with GMF maturing, we're beginning to use it as the basis for more sophisticated, user-friendly tools.

The Eclipse modeling tools are trying to appeal to as broad a target audience as possible by supporting many different development styles, something that hasn't occurred in the past and that, hopefully, will dispel the myth that modeling and coding are mutually exclusive or just rigid one-way processes.

I believe the main stumbling blocks to acceptance of design tools have been the rigidity and complexity of the methodology itself and the poor quality of the artifacts that they generate. To address the former issue, the Eclipse modeling tools have focused on building exemplary support around a very simple core model rather than around something much more complex. To address the latter issue, we've focused on producing code of handwritten quality. If a tool doesn't produce high-quality code, language-fluent developers will often reject it.

To understand the target audience for modeling tools, I often relate back to my own experiences and how my thinking has evolved over the years. When I was first exposed to MOF (Meta Object Facility), I didn't know how to read UML diagrams, so I was immediately convinced that they were a useless diversion. "What's wrong with plain old Javadoc?" Then, I looked at the generated code, and I was immediately convinced that it was too verbose and inefficient to be of any use at runtime. "I'd never write such garbage by hand!" And, when forced to learn the meta-model itself, I was immediately convinced that it was full of extraneous baggage. "Who needs all this stuff?"

Despite my "well considered" objections, I continued to use MOF in my day job and had much time to reconsider. Having learned to read a class diagram, it didn't take long to be convinced of the cliché "a picture is worth a thousand words." It also became clear that if it's silly to draw a picture of a labeled box containing a labeled feature, it's even sillier to write by hand, possibly thousands of times, an interface with a getter, a setter, an implementation class with the same things as well as a field to store the data, and last but not least, a factory method to create the instance. All of this is menial work that's beneath the skilled developer. Ironically, the very simplicity of the diagrams that made them seem silly is precisely where their value lies.

The code being generated was of poor machine-written quality, but it quickly became clear that this could easily be addressed by producing simple, clean code that looked exactly like I'd write by hand. For example, a getter need not do anything more than return the value of a variable. And, by using a template-based approach, we could provide flexibility and control to any developer, letting him tailor what's produced by the generator to fit his specific needs or tastes. Add to this a generator that can merge its output with existing code, and you reach my tipping point: a tool that struck the dual sweet spot of automating menial work while enabling me to remain creative. Ever since then, I've worked on EMF in my day job and never looked back.

Given my own evolving ideas, these days, even when I hear "well considered" objections that sound all too similar to my own, I am quite certain that the value of modeling will slowly but surely become clear. It's ultimately not the modeling tools that are of the greatest value, but rather the models themselves.

About Ed Merks
Ed Merks is a co-lead of the top-level Eclipse Modeling project as well as the lead of the Eclipse Modeling Framework project. He has many years of in-depth experience in the design and implementation of languages, frameworks, and application development environments. He holds a Ph.D. in computing science and is a co-author of the authoritative "Eclipse Modeling Framework, A Developer's Guide" (Addison-Wesley 2003). He works for IBM Rational at the Toronto Lab.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

SOA World Latest Stories
In a surprise move on Tuesday, January 10, Oracle wheeled out its Big Data Appliance. That’s the one it said in October would be ready sometime in the first half. Only nobody believed it meant early in the first half. Heck, it’s not even clear anybody thought Oracle could make the fi...
A Munich court Thursday found Motorola Mobility guilty of infringing an Apple patent and handed Apple a permanent injunction against two Android smartphones. Apple can enforce the injunction after posting a bond lest MMI succeed in invalidating the slide-to-unlock patent (EP1964022) ...
Quick Response (QR) codes are intended to help direct users quickly and easily to information about products and services, but they are also starting to be used for social engineering exploits. This article looks at the emergence of QR scan scams and the rising concern for users today....
The Chinese company that claims it owns the iPad trademark says it plans to seek a ban on iPad exports out of China, threatening global supplies. According to what a lawyer for Proview Technology (Shenzhen) Co Ltd told Reuters, the firm is petitioning Chinese customs to stop shipment...
Cisco Wednesday filed suit in the European Union’s second-highest court, the General Court in Luxembourg, challenging the European Commission’s rubber stamp last October of Microsoft’s $8.5 billion acquisition of Skype. Cisco says it isn’t opposed to the merger, but figures the EC sh...
2011 was a year of rapid adoption for public and private cloud services. Instant and on-demand server provisioning was the driving force behind the massive growth. On top, cloud server templates and script automation simplified application installation for simple and pre-defined applic...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON Featured Whitepapers
ADS BY GOOGLE