Rose Panther Link

Chapter 1 . Overview

Introducing Panther

Panther is a RAD (Rapid Application Development) tool for building transactional, distributed, component-based web applications that deploy to a robust application server infrastructure. Panther maximizes the productivity of UNIX and Windows developers when building new applications for the web, Windows, and a broad base of UNIX deployment platforms, while allowing them to evolve with the Java platform. Panther's abstraction of technology shields application developers from the low level programming necessary when addressing the underlying technology layers directly. This allows developers to focus on their business logic and create applications that are easily adaptable to changes in technology and changes in their business.

Introducing Rational Rose

Rational Rose is an object-oriented analysis, modeling, design, and construction tool. It provides UML support for teams of software developers and systems analysts. Rose includes support for modeling business processes, objects, and component based applications and allows a smooth transition from requirements analysis to design. It also enables visual comparing and merging between models in different stages of design to facilitate parallel development.

Rational Rose facilitates the creation of a high-level representation of this structure and is an integral part of the success of a project.

Introducing Rose Panther Link

Together, Rose and Panther are a powerful combination. Components modeled in Rose can then be used as a data source for generating Panther business components, which serve as a foundation for component-based, distributed applications. This combination maximizes the productivity of the business development team, saving substantial time in the development process.

Rose Panther Link generates components, their public interfaces, and comments for documentation. It also supports forward and reverse-engineering of classes, interfaces, operations, parameters, and attributes. During forward and reverse engineering, Rose Panther Link preserves business logic code added to components in the Panther editor.

Once the business components are generated, application developers extend these components using the tools and techniques provided by the Panther framework.

Panther uniquely provides the capability of creating an application deployed for one robust application server infrastructure, which can be moved later to a different one with minimal impact on the underlying application code. The same business component modeled in Rose and further developed in Panther can be deployed in a COM/MTS environment or in IBM's WebSphere EJB environment or in a BEA Tuxedo or JetNet middleware infrastructure.

Development Methodology

Assembling the Development Team

The powerful combination of Panther, Rational Rose, and Rose Panther Link facilitates team development and enables a development organization to leverage the individual skills of their team members. When building an application, the team can be organized into the following structure:

Design Team
The designers are responsible for defining project requirements and modeling business processes that will be reflected in an application. When using CBD (component-based development), an application's framework is defined by components that are modeled on an analysis of high-level business processes. Rational Rose facilitates this design process.

Server Developers
The application developers responsible for the server portion of an application focus on working with the database engine (using SQL and stored procedures), the application coordination with the middleware, and the business logic of the application.

Rational Rose enables developers to model the components that implement the server side of their application, and Rose Panther Link can create Panther service components from this model.

Panther provides benefits that jump start development and enable application developers to focus on the business logic of an application rather than writing the low level code to address the underlying architectural technologies. When writing an application's business logic, developers can select from a wide variety of programming languages, from Java to C/C++, to JPL (Prolifics' scripting language). Application developers can also use Panther reporting facilities to build reports.

Client Developers
The application developers responsible for the client-side of an application focus on presentation and user interfaces. Panther applications support a wide variety of interfaces including Windows, Motif, UNIX character-based terminals and web browsers. If building these client forms for the web, developers can choose to script using JavaScript or VBScript.

Web HTML and Graphics Page Design
When creating web applications, the presentation layer may be created by a distinct team that uses any web page creator/publisher (such as FrontPage) to create the HTML and graphics for display in a browser. Because Panther allows you to encapsulate Panther objects into pre-built HTML pages, the application development team can be separate from the HTML and graphics team.

Quality Assurance
QA is involved when entering the testing and debugging phase of a project cycle. To aid in this phase, Panther provides a built-in debugger and also provides integration with Segue SilkTest, an industry leading testing tool.

Designing the Application Architecture

At the foundation of Panther application development is the visual repository. The visual repository is the central storehouse of object hierarchies, relationships, properties, business rules, and business objects. Panther imports objects into its development environment from data sources. A typical data source is a database engine. Panther views the database, collects information about the database schema and relationships, and then imports that information into the Panther development framework.

Next, developers build service components that are central to the application. When defining business logic for the component developers can access the Prolifics database interface directly by writing their own SQL statements or calling stored procedures. Optionally, developers can also use the Panther transaction manager, which automatically generates the needed SQL statements.

When building component-based applications, Rose Panther Link enables the use of the object-oriented design and modeling tool, Rational Rose, to build UML (Unified Modeling Language) diagrams that model the business processes. The integration enables the modeling of server-side business components in Rose and automatic generation of Panther service components. The public interface of methods and attributes are generated along with templates for the method implementations. Developers can generate code in JPL (Panther's built-in language) and/or Java. If developers select Java for any of the business logic, a Java event handler for the component is generated.

Rose Panther Link Ties It All Together

Rose Panther Link Features