Toolmakers discuss easing EJB development
Various J2EE toolmakers have worked in recent years to ease the task of developing to the J2EE platform. Perhaps only a few of their advances have had much effect to date on EJB design, which is for some shops a key part of J2EE.
Like others, IBM's Eric Naiburg suggests EJB development cannot be oversimplified, at least not successfully. 'Software development in general is hard. You have to be smart about how you 'architect' your system,' said Naiburg, group marketing manager, desktop products, IBM Rational. 'That includes creating of business logic, or EJBs.' He does note that EJB development is somewhat simplified through wizards in, for example, the WebSphere Studio Application Developer edition.
'The part that is hard is not the beans but the overall system - how you integrate the beans,' he said. 'That does take knowledge, and architectural understanding.'
The software architect's role is to define how the system works, and how different components interact, he said. Thereafter in the chain of development, programmers can take that architecture, perhaps using easier-to-use tools, and make that architecture a reality.
Mike Burba, product manager for Compuware OptimalJ, agrees that working with EJBs is fundamentally hard and that while tool vendors may be able to ease some of the tasks, there are limitations to what can be done with the current spec.
'The specification is just difficult to use,' Burba told ADT. 'The specification was built with the idea that tools would make it simple and tools haven't really delivered from that perspective. So we still see that EJBs are difficult and people struggle to implement them.'
Burba is hopeful that the EJB 3.0 spec, working its way
to final approval in the Java Community Process (JCP), will ease the developer's
burden. On the JCP Website http://www.jcp.org/
where voting is taking place on approving EJB 3.0, the organization states: 'The purpose of Enterprise JavaBeans (EJB) 3.0 is to improve the EJB architecture by reducing its complexity from the developer's point of view.'
That is the hope. In the meantime, Compuware is focusing on modeling as a solution for some of the difficulties developers run into with EJBs.
'One of the innovations, we believe, is Model Driven Development,' Burba said. 'That is where we play a major role with OptimalJ. What we do for EJB development is we abstract out of the technological detail. We capture everything at the business level in a business model. So rather than having an account EJB, you're just going to have an account. That account's going to have a account number, it's going to have a customer name, and so on, a number of different attributes. That's the business entity. We transform that business entity into the technical implementation of EJB. We generate all the artifacts from the high-level model.'
BEA Systems is also working to abstract EJB complexity for developers working on its WebLogic platform, according to Cedric Beust, senior software engineer at BEA.
'BEA has been shipping a tool called EJBGen since BEA WebLogic 7.0 that greatly simplifies the development of EJBs,' Beust told ADT in response to e-mail questions. 'This tool uses annotations saving developers from ever having to write a single line of XML. EJBGen also takes care of generating the various files required by the EJB 2.1 specification.'
Jack Vaughan is former Editor-at-Large at Application Development Trends magazine.
Rich Seeley is Web Editor for Campus Technology.