| By Jason Bell | Article Rating: |
|
| December 1, 2002 12:00 AM EST | Reads: |
26,251 |
Over the past few years the integrated development environment has raged on. For years I've used a text editor and a build tool to create my Java software; I used no set processes or design methods. The integration of UML modeling and Java coding makes obvious sense to a software designer, but a programmer like me has to ask, can XDE mentor me and make me think differently about the way I design software?
XDE stands for extended development environment; installation is a straightforward matter, as is installation of software on most Windows systems, but it only runs on Windows 2000/NT/ XP and you'll also need Service Pack 2 installed. The entire suite is based on IBM's Eclipse Platform but with added functionality in the UML modeling department. The distribution comes with two CDs - one that installs XDE in IBM's WebSphere Application Developer (WSAD) and one that installs XDE "standalone" with its own copy of WebSphere Workbench (WSW), which is based on Eclipse. For this review I just installed the stand-alone workbench.
Getting Started
Before I could get any coding done I had to create a project; the Java Modeling Project has the full features of UML modeling and round-trip engineering support. There are other project types you can use, including a Java Project (no modeling support) and a Web Modeling Project (for JSP or HTML Web applications).
Using XDE
The bulk of the modeling and coding goes on within the modeling perspectives. Rational has provided a lot of information for the help perspective covering Java and UML basics, deploying applications, and using patterns. One of the joys of XDE is that you can let it do as little or as much as you like. The level of code assistance is controlled from the preferences, and there are various options that can be generated such as constructors, finalizers, and bean properties. With synchronization enabled you can alter the source code and the UML diagram will update; if you make changes to the diagram the code will update accordingly (see Figure 1).
A very handy feature is the task list where you can add items for anything that you need to complete. This is also the place where any compilation errors are listed; clicking on an error will take you to the corresponding line of code where the error is. Once corrected, XDE will automatically update the task list and delete the corrected errors from it.
You can create and place new classes on the main model diagram either by using the right-click menus or by dragging and dropping from the Toolbox. The Toolbox is home to the different UML types (class, component, deployment, use case, collaboration, and sequence diagrams) plus Java elements (class, methods, interfaces, etc.), EJB elements (session, entity, and message-driven beans), and JSP elements (servlet, jsp server page, html forms, etc.). Features on the modeling side include Gang-of-Four patterns, J2EE patterns, and the ability to create your own patterns and code templates so you can reuse your core code over a number of projects.
Developing for the Server Side
As I mentioned previously, you can develop JSP/servlet applications with XDE. With a mixture of drag-and-drop elements you can quickly create a basic Web application and deploy it to your application server. Deployment is achieved with the help of a wizard that guides you through the process (see Figure 2). XDE has a number of server brands that you can deploy to, including WebSphere and WebLogic. If your server is not listed you can deploy to a .war file and change the descriptors within XDE. This is a handy route if you want to deploy to servers such as Tomcat or Orion.
Handy Features
Where do I start? I'm a big fan of code formatting, and XDE has the ability to do this with its menu within the edit window. All you have to do is right click, click on "Format", and it's done. There are various styles of code layout that you can configure within the preferences. Another handy feature is assisted coding, in which XDE inspects the signature of a class that you're working on and lists its different types. I found this handy, mainly because while I was working I didn't have to stop, open up Java in a Nutshell, and then continue where I left off (see Figure 3).
In the main preferences you can specify which JDK version you want to work with. I found this very helpful, as I was writing and testing between JDK 1.3 and 1.4. I could switch mid coding and see if there were going to be any issues or conflicts between different Java versions.
Code Refactoring
Have you ever developed code and then changed the name of something and then systematically had to revisit every file to make the changes? There are numerous ways of making the change (mine was always using Perl on the command line). With XDE you can refactor code and it will make the changes across the project. XDE will let you preview the code results it is going to refactor, which gives you a fighting chance if you disagree.
One thing about Rational tools is that they are designed to work with other Rational tools. XDE links into ClearCase so you can have proper version control, but it gives no ability to use any other version-control software, such as SourceSafe or CVS.
Debugging
There are extensive debugging options, with the usual breakpoints, that keep an eye on variables. XDE will scan the packages open and give you the option of executing any class that it can. In addition to debugging on your local machine you can debug a class remotely on another machine or server - as long as it has the relevant profile set up so it can be debugged by XDE.
Summary
I've only scratched the surface of what XDE is capable of, but I have definitely increased my knowledge of software development through using this product. It's now part of my main development arsenal, and I'm finding myself actually thinking differently about software design and logically modeling objects before I do any coding. I know it sounds like a cliché, but I really don't know how I got on without it.
SIDEBAR
Rational Software Corporation
18880 Homestead Rd.
Cupertino, CA 95014
Phone: 800 728-1212
E-mail: info@rational.com
Web: www.rational.com\tryit\xde\javaed.jsp#dl#dlwsw
Specs
Price: $3,595
Platforms:
Windows NT (Service Pack 6a)
Windows 2000 (Service Pack 2)
Windows XP Professional
Test Platform
Computer: Dell Optiplex GX240,
Processor: P4 1.8GHz
Hard Drive: 40GH
Memory: 256MB RAM
OS: Windows 2000 (Service Pack 3)
SIDEBAR
JDJ Product Snapshot
Target Audience: Java programmers, software designers, and analysts
Level: Intermediate to professional
Pros: Code/model synchronization
Ability to select different JDK during development for testing. Extensive coverage of patterns and software design practices.
Cons: Help system can be confusing at times; price may put some users off
Published December 1, 2002 Reads 26,251
Copyright © 2002 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Jason Bell
Jason Bell is founder of Aerleasing, a B2B auction site for the airline industry. He has been involved in numerous business intelligence companies and start ups and is based in Northern Ireland. Jason can be contacted at jasonbell@sys-con.com.
![]() |
KASHIF ALI SOOMRO 02/11/03 02:10:00 AM EST | |||
HONOURABLE SIR, MAILING ADDRESS |
||||
![]() |
Anu Gupta 02/05/03 01:19:00 PM EST | |||
![]() |
Edmundo Christian Villavicencio Velasquez 02/03/03 03:39:00 PM EST | |||
i am student of the university national of engineer learning the java so I request you to plz send some material of basic java concept if plz possible send me any CD of java Beginner |
||||
![]() |
Patel kets 01/18/03 03:33:00 AM EST | |||
i am student of MCA and i currently learning the java so i request u to plz send some material of basic java concept if plz possible send me any CD of java Beginner |
||||
![]() |
Patel kets 01/18/03 03:28:00 AM EST | |||
i am student of MCA and i currently learning the java so i request u to plz send some material of basic java concept if plz possible send me any CD of java Beginner |
||||
![]() |
BERK 01/14/03 06:53:00 AM EST | |||
The good article, how much to you has paid Rational, for "unbiassed" judgement? ;-) |
||||
![]() |
HARIHAR MISHRA 01/10/03 11:40:00 AM EST | |||
i am soft .engg in wipro .i am intrested to know abt some java frequently ask questions |
||||
![]() |
Minkyu Lee 12/31/02 10:50:00 AM EST | |||
XDE is focusing on Round-Trip Engineering such as syncronization between Java sources and UML diagrams. However, people are missing the real objectives of UML. The first is communication purpose. In that case, UML is used as just a graphical notation. The second is formal modeling language to model software strictly. If you want to use as the first purpose, I recommend to use papers and pencils. If you want to use as second purpose, I recommend to use formal UML modeling tools that compliants UML standard metamodel. The OMG is now discussing and realizing the second purpose that is known as MDA(Model Driven Architecture). Remember!, UML is to model human concepts not to assist just coding. |
||||
![]() |
Tharaka Deshapriya 12/27/02 12:59:00 PM EST | |||
I am a student and i want your help for my studey |
||||
![]() |
killer net 12/26/02 09:58:00 PM EST | |||
hi; i want evry thing relate in the rational database and how i can use it for engneering applecation thnx |
||||
![]() |
manoj 12/17/02 04:18:00 AM EST | |||
![]() |
Hugues 12/15/02 04:33:00 PM EST | |||
This XDE preview focuses on Java programming. All the features mentioned by Jason (formatting, assisted coding, refactoring, ...) are available in Eclipse (on which XDE is based)... but Eclipse is for free (www.eclipse.org)! |
||||
- Kindle 2 vs Nook
- Why IBM’s Server Chief Got Busted
- Is Cloud Computing Like Teenage Sex?
- Industry Experts Discuss the State of Cloud Computing
- Performance Tuning Essentials for Java
- Confessions of a Ulitzer Addict
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- It's the Java vs. C++ Shootout Revisited!
- Cloud Computing Can Revitalize Your Career as Software Developer
- IBM Could "Reinvent" Java: Mills
- Oracle & Cloud Computing: Exclusive Q&A with SVP Richard Sarwal
- A Brief History of Cloud Computing
- Kindle 2 vs Nook
- Cloud CEOs, CTOs & SVPs to Speak at 4th International Cloud Computing Expo
- Why IBM’s Server Chief Got Busted
- Is Cloud Computing Like Teenage Sex?
- Industry Experts Discuss the State of Cloud Computing
- Performance Tuning Essentials for Java
- The Difference Between Web Hosting and Cloud Computing
- Cloud Computing Expo: Exclusive Q&A with Yahoo! SVP Cloud Computing
- Ajax in RichFaces 3.3, JSF 2 and RichFaces 4
- Confessions of a Ulitzer Addict
- My Thoughts on Ulitzer
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- A Cup of AJAX? Nay, Just Regular Java Please
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- The i-Technology Right Stuff
- JavaServer Faces (JSF) vs Struts
- Rich Internet Applications with Adobe Flex 2 and Java
- Java vs C++ "Shootout" Revisited
- Bean-Managed Persistence Using a Proxy List
- Reporting Made Easy with JasperReports and Hibernate
- Creating a Pet Store Application with JavaServer Faces, Spring, and Hibernate
- What's New in Eclipse?
- Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
- i-Technology Predictions for 2007: Where's It All Headed?








































