JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive...

24
44546.2 Collaborative Development for Java , Open Source and the Web Reviewer’s Guide Produced by CodeGear November, 2006

Transcript of JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive...

Page 1: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

44546.2

Collaborative Development for

Java ™, Open Source

and the Web

Reviewer’s Guide

Produced by CodeGear

November, 2006

Page 2: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder® 2007 Reviewers Guide

Table of Contents

Table of Contents ...................................................................................................................... 2

Introduction .............................................................................................................................. 3

Scope of this Guide .........................................................................................................................3

Current Trends in Software Development ................................................................................ 4

What’s New in JBuilder 2007? .................................................................................................. 5

Versions of JBuilder 2007.................................................................................................................5

New Features in Detail .............................................................................................................. 6

ProjectAssist™ ................................................................................................................................6

TeamInsight™.................................................................................................................................8

Graphical EJB Workbench ................................................................................................................8

RAD SOA Web Services Workbench ................................................................................................11

Optimizeit™ 2007 for Eclipse..........................................................................................................12

Performance and Usability..........................................................................................................14

Audits and Metrics .....................................................................................................................14

LiveSource® ..................................................................................................................................16

Conclusion............................................................................................................................... 19

Appendix A – JBuilder 2007 Feature List ................................................................................ 20

Page 3: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

JBuilder 2007

Reviewers Guide

Introduction

Thank you for your time and interest in JBuilder 2007, the enterprise-class integrated

development environment (IDE) built on Eclipse to make collaborative development fast and

reliable for Java, open source and the web. JBuilder 2007 accelerates developer velocity with

Visual EJB and web services GUIs, provides balance between the worlds of open source and

commercial software with TeamInsight, an integrated collaboration portal, and increases

developer confidence, through better control over open source plug-ins. Improving on its

acclaimed Rapid Application Development (RAD) and team collaboration capabilities, JBuilder

2007 (formerly codenamed “Peloton”) has been completely redesigned to leverage the Eclipse

platform and help organizations be more successful and productive with open source.

Scope of this Guide

The reviewers guide will give an overview of what JBuilder 2007 has to offer. This guide is not intended

as a best practices guide, nor does it cover all the new enhancements that JBuilder 2007 offers. Instead,

the focus is on the new capabilities that offer the clearest benefits to development efforts. A complete

list of features for JBuilder 2007 (across all editions) can be found in Appendix A.

Page 4: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Current Trends in Software Development

Two major trends are driving change in software development today: 1) open source is more pervasive

than ever, and 2) development teams are increasingly distributed around the world. Providing “free”

tools, components and unlimited flexibility, open source by its nature creates an uncontrolled

development environment that can make it difficult to manage an already complicated process, ultimately

increasing the cost of development, lowering productivity and reducing confidence in the software used

and developed. At the same time, macroeconomic changes have encouraged the increasing distribution

of software development, creating associated challenges and costs to managing teams in remote

locations.

JBuilder 2007 addresses these challenges with enterprise-class collaboration features that restore

confidence in the software development process while leveraging an ecosystem of commercial and open

source plug-ins, third party tools and frameworks.

Completely rebuilt and re-architected to take advantage of Eclipse, JBuilder 2007 combines the

advantages of an open platform with JBuilder’s trademark enterprise-class functionality, ease-of-use and

productivity, including collaborative capabilities that help developers and organizations more effectively

manage complex projects across teams and locations. Defined by the following themes, JBuilder 2007

key capabilities include:

• VELOCITY – JBuilder 2007 comes with a palette of proven JBuilder productivity tools, newly

enhanced to deliver more than ever. The complete graphical development workbench now

provides two-way visual SOA Web Services and EJB development, support for the latest Java

technologies and AppServer™ platforms, plus full Java UML 2.0 modeling with round-trip

LiveSource. There’s also JBuilder Optimizeit™ for performance tuning and advanced debugging.

• BALANCE – JBuilder 2007 helps organizations manage and balance complex development

projects across teams and locations, and across open source and proprietary software.

TeamInsight is an innovative collaboration foundation that lets organizations leverage best of

breed solutions for source code management, requirements, bug tracking and project

management. To manage the application lifecycle, JBuilder 2007 integrates with popular Borland

Application Lifecycle Management (ALM) products including Together® and StarTeam®, also

based on Eclipse.

• CONFIDENCE – A trusted commercial solution, JBuilder 2007 establishes confidence in the

software development process. JBuilder 2007 embraces and integrates the most popular open

source plug-ins, tools and frameworks, all within a certified and managed turnkey development

solution that organizations of any size can rely on.

JBuilder 2007 extends the value of Java and open source resources for individual, small business, and

enterprise developers worldwide. Developers already familiar with Eclipse will benefit from the broad

support for various OSS and commercial application servers in JBuilder 2007, in addition to integrated

performance tuning and management capabilities. Other unique features include LiveSource Java visual

source code modeling, Optimizeit Java Code Profiling, source code audits and metrics, refactoring and the

complete TeamInsight agile open source development and deployment stack.

Page 5: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

What’s New in JBuilder 2007?

The latest release of the leading Java IDE, JBuilder 2007 is the first application server-independent

enterprise class IDE built on open source Eclipse. It provides all the economic benefits of an open source

platform, with the reliability of a trusted, turnkey solution provider. JBuilder 2007 is packed with new

features that dramatically accelerate the complete development process; with a new visual EJB™

designer, enhanced distributed development and collaboration tools, and powerful code quality assurance

features.

New in 2007, ProjectAssist dramatically reduces the time and complexity to create new team and project

definitions. Wizards facilitate new installations, and allow assimilation of existing installations for source

code management, defect tracking, requirements management, project planning and more.

New TeamInsight enhances collaborative development with its centralized portal that allows team

members to monitor project activity for the source code repository, track recent check-ins, view quality

metrics, even view live burn-down charts for project progress.

Enhanced for 2007 is Optimizeit 2007 for Eclipse for memory and CPU profiling and debugging which

helps to ensure error free code. Optimizeit Profiler provides high-level performance-related data displayed

in real time. Optimizeit Thread Debugger displays the progress of all threads running within the Virtual

Machine. Optimizeit Code Coverage provides a real-time class coverage data to quickly see the coverage

for each class.

Versions of JBuilder 2007

JBuilder 2007 is available in three versions to meet the varying needs of developers and organizations:

JBuilder 2007 Developer is for individuals that need accelerated development capabilities for Java and

open source programming.

JBuilder 2007 Professional is for departmental users who want a complete environment for

developing and deploying Java applications, with all the features of Developer plus the new visual Web

Services Designer, and integrated Optimizeit 2007 for Eclipse for memory and CPU Profiling and

debugging.

JBuilder 2007 Enterprise is for enterprise development organizations that need to manage distributed

teams and complex projects across multiple locations. Enterprise includes all the features of Professional

plus trademark RAD advantages like a new visual EJB Workbench, ProjectAssist that dramatically reduces

the time and complexity for startup of new projects, and collaborative development capabilities of

TeamInsight.

Page 6: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

New Features in Detail

ProjectAssist

ProjectAssist provides simple, single point installation and configuration of a complete developer tool

stack for bug tracking, source code management, project planning/tracking, requirements management

and continuous integration builds. ProjectAssist dramatically reduces the time and complexity for startup

of new projects by guiding the setup process for new team and project environment definitions. Wizards

help to create new deployment models – with options for deep and shallow scanning to discover pre-

existing services that can be reused. ProjectAssist can save days or even weeks of manual configuration

and integration.

The project Administrator defines projects and users for new projects. Users can then coordinate their

efforts through the use of the various TeamInsight tools.

Analogous to the common “File / New Project” wizard, ProjectAssist provides a “File / New Team Project”

that goes beyond creating a .project file, to creating a complete development environment with bug

tracking, source code management, project planning, requirements management and continuous

integration builds live and operational.

To provision ProjectAssist for team use, you never have to leave the JBuilder editor. The following steps

will start you down the process.

1. Launch JBuilder 2. Choose ‘file | new | others’ 3. Select the team folder in the tree 4. Choose ‘ProjectAssist File’ 5. Enter the project information and path requirements (see Figure 1 ProjectAssist Configuration)

Page 7: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Figure 1 ProjectAssist Configuration

It can take many hours or even days to set up project environments for new team members.

The TeamInsight tools that can enhance the development team experience are:

• Bugzilla – Used to record and track bugs in the source code.

• LifeRay - An open source web portlet server. LifeRay surfaces the current status of your project

by amalgamating information from other TeamAssist components, which provides you with a

comprehensive understanding of how your project is performing

• Maven/Continuum - Establishes an automatic build environment linked to the repository and to

monitor build status.

• Subversion – Used to check source files in and out, and to synchronize them with the repository.

It provides management and revision control for concurrent development.

• Sventon - Browse the Subversion source repository through a web browser.

Page 8: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

• XPlanner - Monitors development progress by creating and tracking projects, iterations of

projects, user stories, and individual tasks.

Figure 2 ProjectAssist dramatically reduces the time and complexity for startup of new projects

by guiding the setup process for new team and project environment definitions

TeamInsight

Manage and view projects across development teams with TeamInsight collaboration features. Individual

developers have a unified real-time view of their project responsibilities for bugs, change requests, code

notes, tasks and requirements, and the entire team has a shared project web portal with live data and

statistics on team vector and velocity. JBuilder 2007 includes collaboration features that allow local and

remote developers to jointly design, edit and debug applications in real time. JBuilder 2007 automatically

discovers other clients on the network, allowing users to easily form ad-hoc collaboration sessions.

Graphical EJB Workbench

The new Graphical EJB Workbench in JBuilder 2007 provides a simplified RAD development experience

for both novice and experienced JEE developers alike. Legacy projects using EJB 2.x are easily converted

to the new annotation-based EJB 3 specification, full LiveSource capabilities let developers use either a

code-centric or RAD visual environment. Easily create EJBs and model relationships, security and OCL

constraints. Changes to the source code, annotations, properties view and graphical view are always in

sync through JBuilder's patented LiveSource technology. JBuilder allows targeting and re-targeting app

servers from all of the major commercial and OSS vendors including IBM, BEA, Sun, JBoss and Apache.

Page 9: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Using the Workbench to create an EJB is tremendously easy. The workbench allows the developer to

configure each and every option. In addition it has most every option available for each EJB Container.

The LiveSource feature has an immediate effect on the EJB code. In fact, through LiveSource the

graphical views are just another rendering of the source code and annotations. LiveSource permits

JBuilder to add multiple visualizations of the same source code. In Figure 3 EJB Workspace below, we

can see that JBuilder can create session EJBs as well as entity EJBs. CMP beans for both EJB2 and EJB3

style persistence (as well as JPA) can be visually modeled or created directly from existing database

tables.

The power of the EJB workbench becomes very apparent when it's used to create relationships, OCL

constraints and security roles between entities. This tool gives developers a clear vision of what they are

creating, as well as giving full access to the properties of the entities and the relationships between them.

A picture is worth literally thousands of lines of Java code and annotations.

Figure 3 EJB Workspace

Building a J2EE™/EJB solution in JBuilder is simply creating a project from an EJB Model. The process for

creating this project is as follows:

1. Choose ‘file | new | others’ 2. Select ‘EJB Modeling Project’ 3. The wizard will prompt you for project information, target J2EE server and available (see figure

below):

Page 10: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Figure 4 EJB Modeling Project

Use of the EJB Workbench is identical for both EJB2 and EJB3, the graphical view will abstract away

whether the source code is using XDoclet or Java Annotations. Of course the source code can be

changed and the diagram is always in sync. JBuilder also provides migration tools to make it trivial for

developers to migrate applications to EJB3 and annotation-based development.

You can now develop your J2EE/EJB application. Session Beans, Entity Beans, Message-Driven Beans

and all of the relationships and constraints may be created using the modeling surface. Double-clicking

on an element on the modeling surface will take you to its source code view. You can also use alt+enter

to access the properties view.

If you need to create CMP beans for an existing database table you can do this automatically by right

clicking on the project in the model navigator and selecting “Import Entity Beans from Database”

Users familiar with Eclipse WTP will find use of the JBuilder EJB Workbench a natural extension of their

processes. Owing to the use of LiveSource as an underlying technology, the workbench can be used with

any EJB project – the projects need not originate in JBuilder. Similarly, members of a development team

can individually choose to work graphically or using the source view – whichever is best for the job at

hand.

Page 11: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Figure 5 EJB Workspace

Sample projects for both EJB 2 and EJB 3 are available on http://jbuilder.borland.com under the

“samples” tab. These samples have step-by-step instructions for configuration.

RAD SOA Web Services Workbench

The Web Services Workbench for JBuilder Enterprise and Professional versions was developed to provide

productivity enhancements expected by JBuilder developers. JBuilder includes several wizards and

modelers that make JBuilder the most productive environment for building Web Services. With the

workbench, it’s possible to perform the following actions inside JBuilder:

• Import a WSDL document to build a test client for a Web Service that you’ve found through the

UDDI registry

• Build a SOAP server to act as the base for your Web Services

• Expose a simple Java class as a Web Service

• Expose an EJB Session Bean as a Web Service

• Debug a Web service and a Web Service client concurrently

Page 12: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Figure 6 Web Services Workbench

Optimizeit 2007 for Eclipse

The Java language removes several problem areas for developers, compared to C++ development, by its

elimination of memory allocation and pointer management. While this generally makes Java programs

more stable than their C++ brethren, it can often lead to the misconception that Java programs don't

need to be optimized or profiled. Nothing could be further from the truth, especially when you consider

that Java is being used to build enterprise-class applications, which require high performance. JBuilder

now includes Optimizeit for Eclipse. Using Optimizeit, a developer is able to get the profile configured in

a matter of minutes. They can then evaluate any number of different statistics about the profiled

application.

Optimizeit Profiler for memory and CPU profiling and debugging provides high-level performance-related

data displayed in real time that allows developers to understand whether a performance issue is related

to CPU, memory, or both. The Automatic Memory Leak Detector monitors the evolution of memory usage

over time for the immediate identification of potential memory leaks. It also allows real-time monitoring

of object allocations to understand how the profiled program uses the virtual machine memory. Allocation

Backtrace View allows developers to identify the code or part of the program responsible for instance

allocations. Optimizeit Thread Debugger gives real-time display of the progress of all threads running

within the Virtual Machine. Optimizeit Code Coverage provides a Real-time Class Coverage View to quickly

see the coverage for each class and identify classes not fully covered. Optimizeit is completely integrated

in-shell for Eclipse, and only available in JBuilder 2007.

Uncovering Performance Bottlenecks

Java as both a platform and a language offers a number of advantages in terms of portability and

Page 13: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

standardization. Programmers across the globe are migrating to Java from a variety of other languages

and platforms. For some, the move to Java may also be their first real, hard-core experience with object-

oriented programming.

As a result, the programs written may have hidden performance bottlenecks that slow down processing

and eat memory. Optimizeit is designed to uncover these hidden performance anomalies including such

common problems as excessive object creation, method calling and thread creation, and inefficient

memory usage. The Profiler collects timing information and memory data as Java programs are run, and

Optimizeit supports most of the leading Java development environments. As shown in the following figure

you will see that, once the “Profiler” had been compiled and started, you are able to search for possible

performance problems in the code by using the "Instance References".

Figure 7 Optimizeit 2007 for Eclipse Profiling

The “Memory” used by the program is generally the first place to start when using the Profiler. JBuilder

includes a number of sample program trace collections with Optimizeit. You may want to start by using

these examples with the Profiler's online help to get an overview of the Profiler's capabilities. You have a

choice of running a program through to conclusion as one long run, or you can divide the performance

data into specific chunks by using “snapshots.” Snapshots can be invaluable as a tool for comparing the

first pass of a program with subsequent executions through the same set of code. They are especially

helpful for tracking down problems with event-driven code. Use the memory monitor to drill down into

details of the code quickly and easily. The snapshots can then be used to track calling relationships. If

you want to identify leaks within the same run, the “Memory Leak Detector” creates heap “snapshots” to

compare memory heaps during the same execution.

Page 14: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

You can see in the diagram that the profiler can show a hierarchical display of method calls, which can

help you expose the most expensive methods. If you need to, you can click down to the source code

directly from the diagram, and the graphical interface uses colors to highlight the more expensive method

calls.

At any point in time you can choose to view the source within the tool, you can see how much resource is

used by each routine in a panel next to the source window. The tool makes it easy to shift between

multiple snapshots, and you can save the entire set of snapshots and program definitions for reuse at a

later time.

Performance and Usability The “Request Analyzer” is one of the most valuable tools for developers, it breaks every transaction down

to its individual components. You can run a simple J2EE application through the analyzer and break

down the transaction into the following components:

• JSP™ Page Performance – This includes the total time the transaction spent in the WebContainer

• JNDI Lookup – the total time spent looking up a remote component

• Session Bean – All time spent within the session bean component

• JDBC™ – total time spent communicating to the SQL datasource

As compared to having to read through log files, add System.out.println’s and crossing your fingers, you

can within a matter of minutes integrate request analyzer into most of the major commercial and open

source containers.

Audits and Metrics

Software development organizations face the daunting task of creating software that meets best practice

standards of code quality while still delivering the software product on time and within budget. Too often,

valuable developer and engineering time is spent in code reviews and trying to find errors in the software

code which often leads to both project and cost over-runs—while still producing software with errors.

According to the Washington D.C. National Institute of Standards and Testing (NIST), “Software errors

cost the U.S. economy $60 billion per year. There are many reasons that projects fail: poor management,

unrealistic expectations, complex customization, market changes, etc. But more often than not, poor-

quality software is to blame. Blame is directed at the software provider—whether it is a commercial

software vendor, an outside tech vendor or a company's IT department—because they are the ones

responsible for code quality.”

With the introduction of “Audits and Metrics”, JBuilder 2007 can be used to solve the code quality, code

review and code dependency issues typically faced in software development. JBuilder’s audits and

metrics are designed to aid developers in finding and fixing problems in their code earlier in the

development process. It embodies the principals of finding problems early that is a perfect complement

to the JBuilder IDE. The following figure for Audits and Metrics shows a sample solution that has been

audited for frequent and common problems.

Page 15: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

JBuilder’s Audits perform a static analysis of your source code, identifying coding problems like potential

race conditions, unchecked exceptions and more. JBuilder’s Metrics provide a like analysis for design

problems in your project.

Figure 8 Audits and Metrics

Historically, early error detection has required software developers to change their processes, think

harder, use better methodologies, create better architectures, and the like. The challenge of changing

human behavior, the complexity introduced by far-flung development teams, downsizing, outsourcing,

open source, feature-rich software systems and complex development environments all increase the

difficulty of building high-quality software systems on time and within budget.

Pushing the resolution of software quality issues into a Quality Assurance (QA) or Testing organization, or

worst case, onto customers, is at best expensive and can certainly be damaging to the software

producer’s reputation. It’s common knowledge that if problems can be found and fixed early in the

development process, it will result in better software, lower costs, faster time-to-market, and most

importantly, happier users. JBuilder’s Audits and Metrics software development technology has advanced

to the point where maximum quality can be automatically and efficiently built into software as it is being

developed.

With the direct integration of the Audits and Metrics within the IDE it is very easy for the developer to

correct their issues. The “Quick Fix” dialog provides options and a preview for the changes

recommended.

Page 16: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Figure 9 Quick Fix

LiveSource

LiveSource technology simultaneously replicates changes to models in the code, and vice versa. This

ensures system architects and developers are closely aligned in the development process, thereby

reducing costs associated with software rework. LiveSource replaces the traditional round-trip

engineering methods, which usually cause models and code to go out of synch. Failure to keep models

and code in synch often leads to disparity between business needs and the resulting software.

Page 17: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Figure 10 LiveSource technology simultaneously replicates changes to models in the code, and

vice versa.

If you have used Borland Together technology you are very familiar with LiveSource. However it plays a

new and critical roll into building effective and efficient Java applications. LiveSource allows you to build

solutions visually from UML diagrams and have those changes reflected in the code immediately.

Page 18: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Figure 11 LiveSource replaces the traditional round-trip engineering methods, which usually

cause models and code to become out of synch

LiveSource allows JBuilder to provide multiple visualizations of source code, enabling rapid

comprehension of unfamiliar projects. One of the features is the simultaneous roundtrip engineering,

which is the ability to immediately synchronize diagrams with their source code.

Traditional Roundtrip engineering is the combination of:

• Reverse engineering (drawing models from code)

• Forward engineering (generating code from visual models)

Simultaneous roundtrip engineering means that when you change a code-centric diagram, JBuilder

immediately updates the corresponding source code, and when you change the code, JBuilder updates

the visual model. This way diagrams are always synchronized with the source code that implements

them. You can customize forward and reverse engineering and/or source code formatting.

Page 19: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Conclusion

Open source provides a myriad of new tools, components, and value, but it also creates a chaotic

environment that makes it difficult to manage the development process and to guarantee the quality of

software being developed. JBuilder 2007 extends the value of Java and open source resources for

individual, small business, and enterprise developers worldwide. A trusted commercial solution, JBuilder

2007 provides Velocity, Balance, and Confidence to open source development, all within a certified and

managed turnkey solution that organizations of any size can rely on.

Page 20: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Appendix A – JBuilder 2007 Feature List

JEE DEV PRO ENT

LiveSource graphical view or EJB 2.1 projects �

LiveSource graphical view or EJB 3.0 projects �

LiveSource graphical view or JPA (Hibernate/Kodo) projects �

Visual point-and-click two-way designer of entity, session, and message beans.

Two-way generation of classes and annotations

Visually design CMP 2.x relationships and configure database mapping �

Visually design CMP 3.x relationships and configure database mapping �

Configure XDoclet task properties for server runtimes supported in JBuilder �

Visually configure persistence properties for EJB 3.0/JPA �

Full build/deploy/redeploy capabilities �

Visually create session beans �

Automatically arrange beans �

Create multiple design panes to logically group beans in an EJB group �

Adjust filtering to hide or show generated classes �

Import J2EE projects from previous versions of JBuilder �

Import EJB source code without deployment descriptors �

Import EJB descriptors, including vendor-specific descriptors, for all supported

servers

Visually create message-driven beans �

Visually create session beans �

Convert descriptor-based source to XDoclet or Java EE 5.0 annotations � �

Import multi-module Java EE projects from earlier versions of JBuilder, converting

them to native Eclipse projects � �

Generate EJB 2.x entity beans from existing database schema �

Generate EJB 3.x entity beans from existing database schema �

Visually create relationships �

Visually create OCL constraints �

Fully integrated with Eclipse WTP �

VisiBroker® builder - integration to VisiBroker tools �

Visual representation of Java/EJB with methods and operations �

WEB SERVICES DEV PRO ENT

WEB SERVICES DESIGNER

Visual two-way Designer for creating Axis based Web Service-enabled applications � �

Streamlined user interface and wizards � �

Visual representation of WSDL with methods and operations � �

Activate or deactivate services without removing components from the designer � �

Instant navigation between visual Web Services components in designer and

source �

Import web services projects from earlier versions of JBuilder, converting them to

native Eclipse projects � �

Deploy an EJB as a Web Service �

BUILD, DEBUG, AND RUN WEB SERVICES

Page 21: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Create an Axis deployment environment � �

Dynamic generation and deployment of Web Services components during project

Builds � �

Deploy Axis runtime to Tomcat, JBoss, WebLogic, WebSphere®, Geronimo,

GlassfishSM, Oracle® � �

PROJECT ASSIST DEV PRO ENT

CREATE NEW TEAM PROJECT ENVIRONMENT DEFINITION

Wizard to create a new deployment model �

Options for deep and shallow scanning for pre-existing services �

Create new installation or assimilate existing installation for source code

management �

Create new installation or assimilate existing installation for defect tracking �

Create new installation or assimilate existing installation for requirements

management and project planning �

Create new installation or assimilate existing installation for continuous integration

builds �

Create new projects to a new or existing server deployment, across all services �

Create new users, add users to new or existing projects �

INSTALL NEW TEAMINSIGHT STACK �

Deep or shallow scan of target server for potential conflicts �

Full deployment and automated configuration of all services �

Automated test of deployment to verify the system is operational �

SUPPORTED TOOLS FOR TEAMINSIGHT �

Subversion �

Bugzilla �

Continuum �

XPlanner �

TEAM INSIGHT DEV PRO ENT

PROJECT PORTAL

Monitor activity in source code repository for project, track recent check-ins �

Monitor quality metrics including tables of bugs by severity, by product area, by

owner, newest bugs, and bug find/fix rates

Monitor team velocity via live burn-down charts �

Monitor team progress against committed features, feature-by-feature �

Monitor continuous integration builds, track failed builds to identify root-cause �

IDE INTEGRATION

Automatic configuration of IDE to pull project from Subversion �

Single-pane view of individual’s project responsibilities: Assigned Tasks,

Requirements owned, Requirements tracked, Assigned Bugs, Reported Bugs, and

Code To-Dos

Project portal and all services available via integrated, tabbed browser in IDE �

Integrated creation and editing of bug reports �

Integrated creation and editing of requirements and tasks �

Full off-line mode for persistent access to requirements, tasks, defects with

automated synchronization

Serverless LAN peer discovery and chat � � �

Peer code reviews �

Page 22: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Live links to all processes services for active project within IDE �

ADDITIONAL PRODUCTIVITY FEATURES DEV PRO ENT

RMI builder � � �

JNI builder � � �

Import standard JBuilder projects � � �

Quality Assurance: Code audits and metrics � �

Design Patterns support, including GoF patterns with code template design and re-

use

� � �

COMPLETE PERFORMANCE TUNING WITH BORLAND OPTIMIZEIT 2007 FOR ECLIPSE

DEV PRO ENT

Seamless integration with JBuilder enables developers to run Optimizeit right from

within the JBuilder UI � �

Borland Optimizeit delivers complete performance management capabilities for

identifying and solving code-level performance issues; this integrated solution

comprises Borland Optimizeit Profiler, Borland Optimizeit Thread Debugger, and

Code Coverage

� � �

Improve performance and reliability of any Java code: Java applications, J2EE

applications, servlets, applets, EJBs, JavaBeans™, JSP applications, and Java tag

Libraries

� � �

Requires no code modifications. Runs with Sun™ JDK™’s for Java 5 and Java 6 � � �

Easily connects to a remote Java process to test a program running on a different

machine

Optimizeit Progress Tracker analyzes the performance impact of code changes by

comparing two or more snapshots

Graph view in Optimizeit Progress Tracker plots performance variations over time �

OPTIMIZEIT PROFILER FOR MEMORY AND CPU PROFILING

High-level performance-related data displayed in real time allows developers to

understand whether a performance issue is related to CPU, memory, or both � � �

Automatic Memory Leak Detector monitors the evolution of memory usage over

time for the immediate identification of potential memory leaks � � �

Real-time monitoring of object allocations to understand how the profiled program

uses the virtual machine memory; Allocation Backtrace View allows developers to

identify the code or part of the program responsible for instance allocations

� � �

Object Size Display automatically computes and displays, in real time, the amount

of memory being consumed by all instances of a class; view and sort by object

size to prioritize objects consuming the most memory

� � �

Reduced reference graph provides a transitive closure of the full reference graph

to display only references that should be removed in order to free the object for

garbage collection

� � �

CPU Profiler: Measure pure CPU usage or time usage during a profiling session,

with option to use sampling-based or instrumentation-based profiler � � �

Displays profiling information per thread and thread groups, with color highlighting

of threads that were busy during profiling session � � �

HotSpot Display lists methods where most time was spent, to help identify

bottlenecks due to single methods � � �

New scalable call graph visually isolates critical code -- Select a string allocation

and highlight the flow of a method call to see where memory and time are being

spent

� � �

Automatic Application Quality Analyzer supports performance-error prevention and � � �

Page 23: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

coding standards by automatically detecting VM-level performance bugs

PDF Reporting: Generate reports in PDF to capture performance data � � �

OPTIMIZEIT THREAD DEBUGGER

Real-time display of the progress of all threads running within the Virtual Machine � �

Understand thread contentions for a monitor with the detailed panels of the

Contention View � �

Wait state monitoring: understand why a thread is not making progress with the

Waiting View and I/O Waiting View � �

Track excessive locking: Monitor Enter View reports where a thread enters and

holds monitors, allowing developers to understand and correct excessive locking � �

Analyze Deadlocks: graphical view of the relationships between threads and

monitors to quickly understand deadlock situations � �

Predict deadlocks: Monitor Usage Analyzer generates full list of warnings and

errors that might lead to deadlocks and performance bottlenecks, such as lock

order warnings, lock and wait warnings, and lock and I/O wait warnings

� �

OPTIMIZEIT CODE COVERAGE

Real-time Class Coverage View to quickly see the coverage for each class and

identify classes not fully covered � �

Real-time display of all classes and interfaces used by the tested program and

real-time percentage of lines covered per class � �

Method Coverage View displays the methods and lines of code for a selected class

that have not been used, allowing developers to modify test plans to cover all

areas of the code

� �

Source Code Viewer shows lines of code that have never been executed, making it

easier to spot dead code � �

Option to display the interfaces that have been loaded by the virtual machine and

those that have not been loaded � �

Batch-mode support to easily include code coverage in any batch-mode testing

process � �

SnapshotMerger merges different runs of the same application from the command

line to see coverage of the combined runs � �

Generate customized, detailed coverage reports directly from the command line � �

OPTIMIZEIT REQUEST ANALYZER

Profile the performance behavior of your J2EE application code across the

following J2EE components: JDBC, JSP, JNDI, Enterprise JavaBeans™, and JMS

containers

Improve performance and reliability of J2EE-related application code earlier in

development with drill-down performance information for J2EE components �

Visual interface simplifies the complexity of J2EE application interactions using

graphical representation �

System Dashboard view provides a graphical display of the application time spent

in J2EE components and total number of requests. Shows the percentage of use

for each server module to quickly detect any major component-level performance

issues

System Composite view displays all of the J2EE events that have occurred in an

application, in real time, in their proper hierarchy. Hierarchy shows the

relationship of events in terms of which events spawn others

UML MODELING DEV PRO ENT

UML modeling with Borland Together LiveSource for Java � � �

Generate HTML portal documentation � � �

Generate documentation using template � � �

Page 24: JBuilder 2007 Reviwers Guide · platform and help organizations be more successful and productive with open source. Scope of this Guide The reviewers guide will give an overview of

JBuilder 2007 Reviewers Guide

44546.2

Generate image files from UML diagrams � � �

Automatic generation of sequence diagrams �

Use Case diagrams � �

Activity diagrams � �

Sequence diagrams � �

Class diagrams � � �

Component diagrams �

Deployment diagrams �

State Machine diagrams � �

Composite Structure diagrams �

Communication diagrams �

Web services diagrams � �

About Borland Founded in 1983, Borland Software Corporation (NASDAQ: BORL) is the global leader in platform independent solutions for Software Delivery Optimization. The company provides the software and services that align the people, process, and technology required to maximize the business value of software. To learn more about delivering quality software, on time and within budget, visit http://www.borland.com. About CodeGear CodeGear, formerly Borland’s Developer Tools Group, delivers innovative, high-productivity development tools for a wide spectrum of software developers ranging from individuals to enterprise teams. CodeGear’s products enable developers to freely develop on their platform of choice while focusing on simplifying complex technologies and tasks so they can concentrate on application design, not infrastructure, to ensure on-time project delivery. Borland, CodeGear, JBuilder, ProjectAssist, TeamInsight, Optimizeit, LiveSource, AppServer, Together, StarTeam, VisiBroker and all other Borland brand and product names are service marks, trademarks or registered trademarks of Borland Software Corporation or its subsidiaries in the United States and other countries. Sun, EJB, Java, JDK, J2EE, JSP, JDBC, Glassfish, JavaBeans, Enterprise JavaBeans and all other Sun brand and product names are service marks, trademarks or registered trademarks of Sun Microsystems, Inc. or its subsidiaries in the United States and other countries. WebSphere and all other IBM brand and product names are service marks, trademarks or registered trademarks of IBM Corporation or its subsidiaries in the United States and other countries. Oracle and all other Oracle brand and product names are service marks, trademarks or registered trademarks of Oracle Corporation or its subsidiaries in the United States and other countries. All other marks are the property of their respective owners. Safe Harbor Statement This document contains “forward-looking statements” as defined under the U.S. Federal Securities Laws, including the Private Securities Litigation Reform Act of 1995 and is subject to the safe harbors created by such laws. Forward-looking statements may relate to, but are not limited to, the expected release dates, pricing, benefits and features available in Borland products, including, but not limited to, Borland JBuilder 2007. Such forward-looking statements are based on current expectations that involve a number of uncertainties and risks that may cause actual events or results to differ materially. Factors that could cause actual events or results to differ materially include, among others, the following: rapid technological change that can adversely affect the demand for Borland products, shifts in customer demand, shifts in strategic relationships, delays in Borland’s ability to deliver its products and services, software errors or announcements by competitors. These and other risks may be detailed from time to time in Borland periodic reports filed with the Securities and Exchange Commission, including, but not limited to, its latest Annual Report on Form 10-K and its latest Quarterly Report on Form 10-Q, copies of which may be obtained from www.sec.gov. Borland is under no obligation to (and expressly disclaims any such obligation to) update or alter its forward-looking statements whether as a result of new information, future events or otherwise. Information contained in our website is not incorporated by reference in, or made part of this press release.