rapid integration tools for rapid application development ... · rapid integration tools for rapid...
TRANSCRIPT
Rapid Integration Tools For Rapid Application Development A Case Study on Legacy
Integration Amit Midha Ravindra Singh Lakshmi Pratha Hari Patrick R. Place, Advisor
December 2004
TECHNICAL REPORT CMU/SEI-2004-TR-023 ESC-TR-2004-023
Pittsburgh, PA 15213-3890
Rapid Integration Tools for Rapid Application Development
A Case Study on Legacy Integration
CMU/SEI-2004-TR-023 ESC-TR-2004-023 Amit Midha Ravindra Singh Lakshmi Pratha Hari Patrick R. Place, Advisor
December 2004
Integration of Software-Intensive Systems Initiative
Unlimited distribution subject to the copyright.
This report was prepared for the
SEI Joint Program Office ESC/XPK 5 Eglin Street Hanscom AFB, MA 01731-2100
The ideas and findings in this report should not be construed as an official DoD position. It is published in the interest of scientific and technical information exchange.
FOR THE COMMANDER
Christos Scondras Chief of Programs, XPK
This work is sponsored by the U.S. Department of Defense. The Software Engineering Institute is a federally funded research and development center sponsored by the U.S. Department of Defense.
Copyright 2005 Carnegie Mellon University.
NO WARRANTY
THIS CARNEGIE MELLON UNIVERSITY AND SOFTWARE ENGINEERING INSTITUTE MATERIAL IS FURNISHED ON AN "AS-IS" BASIS. CARNEGIE MELLON UNIVERSITY MAKES NO WARRANTIES OF ANY KIND, EITHER EXPRESSED OR IMPLIED, AS TO ANY MATTER INCLUDING, BUT NOT LIMITED TO, WARRANTY OF FITNESS FOR PURPOSE OR MERCHANTABILITY, EXCLUSIVITY, OR RESULTS OBTAINED FROM USE OF THE MATERIAL. CARNEGIE MELLON UNIVERSITY DOES NOT MAKE ANY WARRANTY OF ANY KIND WITH RESPECT TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHT INFRINGEMENT.
Use of any trademarks in this report is not intended in any way to infringe on the rights of the trademark holder.
Internal use. Permission to reproduce this document and to prepare derivative works from this document for internal use is granted, provided the copyright and "No Warranty" statements are included with all reproductions and derivative works.
External use. Requests for permission to reproduce this document or prepare derivative works of this document for external and commercial use should be addressed to the SEI Licensing Agent.
This work was created in the performance of Federal Government Contract Number F19628-00-C-0003 with Carnegie Mellon University for the operation of the Software Engineering Institute, a federally funded research and development center. The Government of the United States has a royalty-free government-purpose license to use, duplicate, or disclose the work, in whole or in part and in any manner, and to have or permit others to do so, for government purposes pursuant to the copyright license under the clause at 252.227-7013.
For information about purchasing paper copies of SEI reports, please visit the publications portion of our Web site (http://www.sei.cmu.edu/publications/pubweb.html).
CMU/SEI-2004-TR-023 i
Table of Contents
Background and Acknowledgements...................................................................vii
Abstract .................................................................................................................. ix
1 Introduction..................................................................................................... 1 1.1 Purpose and Objective ............................................................................. 1 1.2 Project Requirements ............................................................................... 3 1.3 Project Plan and Tracked Report .............................................................. 4 1.4 Structure of the Document ........................................................................ 4
2 Identification and Classification of Tools...................................................... 7 2.1 List of Tools............................................................................................... 7 2.2 Tool Selection Criteria............................................................................... 7 2.3 Classification Parameters ......................................................................... 8 2.4 Tool Evaluation ........................................................................................15
3 Evaluation Using a Model Problem ..............................................................17 3.1 Purpose ...................................................................................................17 3.2 Model Problem Selection.........................................................................17
3.2.1 Model Problems ...........................................................................17 3.2.2 Problem Selection ........................................................................18
3.3 Model Problem Description......................................................................20 3.4 Tool Evaluation using Model Problem ......................................................22
4 Conclusions ...................................................................................................29 4.1 Lessons Learned .....................................................................................29 4.2 Future Directions of the Research ...........................................................30 4.3 Remarks ..................................................................................................30
Appendix A Tool Studies and Analysis..............................................................31
Appendix B Tool Evaluation Reports .................................................................45
Appendix C Model Problem and Analysis .........................................................59
ii CMU/SEI-2004-TR-023
Appendix D Commercial Off-the-Shelf Components ........................................69
Appendix E Trading Bond System COCOTS Estimation Details .....................75
Appendix F Project Details.................................................................................81
Glossary of Technical Terms.................................................................................85
References/Bibliography.......................................................................................91
CMU/SEI-2004-TR-023 iii
List of Figures
Figure 1: Evaluation Process for the Rapid Integration Tools................................. 2
Figure 2: Evaluation Framework............................................................................ 3
Figure 3: Graph Showing Characteristics of the Three Tools Selected .................16
Figure 4: High-Level Context Diagram of Trading Bond System...........................20
Figure 5: Structure of the Model Problem .............................................................22
Figure 6: Model Solution—High-Level Context Diagram.......................................24
Figure 7: Graph that Explains the Estimated vs. Actual Effort and Cost................27
Figure 8: Legacy Market Data Subsystem............................................................60
Figure 9: Legacy Contribution Subsystem ............................................................61
Figure 10: Logical View of the System....................................................................65
Figure 11: Feeder Component Specification...........................................................70
iv CMU/SEI-2004-TR-023
CMU/SEI-2004-TR-023 v
List of Tables
Table 1: Classification Parameters - Technical and Non-Technical ....................... 8
Table 2: Weights Assigned to Parameters Based on Rules of Thumb .................10
Table 3: Prioritized List of Quality Attributes ........................................................22
Table 4: Top Three Risk List................................................................................25
Table 5: Variance Calculator ..............................................................................26
Table 6: Posteriori Evaluation Criteria Satisfied by the Tools ...............................27
Table 7: Tools Observations Conforming to Non-Functional Requirements.........28
Table 8: Milestones and Schedule of the Project.................................................82
vi CMU/SEI-2004-TR-023
CMU/SEI-2004-TR-023 vii
Background and Acknowledgements
The project served as an educational elective that is a requirement for the PDC [Professional Devel-opment Center] Scholars at Carnegie Mellon University-West Coast Campus for their MSIT-SE Curriculum.
We would like to thank Patrick Place, Member of the Technical Staff at the Software Engineering In-stitute, Pittsburgh, for mentoring the research and providing guidance and direction.
We would also like to thank those listed below for their approval and support.
• Dr. Lynn Robert Carter, Principal Fellow, West Coast Campus, Carnegie Mellon University
• Patricia Oberndorf, Director, Dynamic Systems Program SEI
• Dennis Smith, Lead, Integration of Software Intensive Systems Initiative
• Dr. Scott Lewis, Senior Faculty, West Coast Campus
Industry Experts:
• Gerry Miller, Chief Technology Officer, Microsoft Corporation, U.S. Central Region
• Eric Newcomer, Chief Technology Officer, IONA Technologies
• Richard. W. Metz, Director, Process, Architecture and Tools, Boeing Computer Services
• Jim Farrell, Product Management, IBM Rational Software
viii CMU/SEI-2004-TR-023
CMU/SEI-2004-TR-023 ix
Abstract
This report investigates the rapid integration tools available in the current market. These tools aid in the rapid integration of software systems and components. The research centers on a model problem that requires such a tool to address legacy integration challenges. The report presents a generic evaluation framework for identifying and evaluating rapid integration tools and an evaluation of three identified tools. This evaluation engaged selected evaluation criteria based on the demands of the model problem. A process reference is also included; this forms the guidelines for identification and evaluation of the tools with respect to other model problems.
x CMU/SEI-2004-TR-023
CMU/SEI-2004-TR-023 1
1 Introduction
1.1 Purpose and Objective This project involves the analysis of rapid integration tools available in the market, which aid in rapid integration of software systems/components. The project is centered on a model problem that requires such a tool to address legacy integration challenges. The main outcome of this research includes
• a generic evaluation framework for identifying and evaluating rapid integration tools. The evaluation criteria are geared towards the model problem that belongs to a class of model prob-lems having integration/interoperability as the key concern.
• an evaluation of three identified tools with respect to the evaluation criteria and the model prob-lem which forms the framework for evaluation of tools.
• a process reference to the Integration of Components Certificate at Carnegie Mellon West, which forms the guidelines for the identification and evaluation of the tools with respect to other model problems.
2 CMU/SEI-2004-TR-023
Figure 1: Evaluation Process for the Rapid Integration Tools
The above diagram symbolizes the process followed for determining the evaluation framework. The team identified the model problem and the list of tools, quantified requirements from the model prob-lem description, came up with a tool evaluation report and finally came up with an evaluation frame-work. The figure below illustrates the evaluation framework defined for the tools that have been se-lected to satisfy the requirements specified as critical by the model problem. In both the preceding and following diagrams technical factors are those directly related to the model problem and are de-rived from both functional and non-functional parameters. The non-technical parameters are softer, but no less important, factors such as the quality of vendor support or market share of the tool.
Requirements Gathered
Identify List of Rapid
Integration Tools
Identify Critical Requirements
(Integration Perspective)
Tool Evaluation Based on Technical and Non-Technical
Parameters
Evaluation Framework
Model Solution
Selected Tools
Model Problem Requirements Vs Tool Features
Selected Requirements
Identify Model
Problem
Featured Gathered
CMU/SEI-2004-TR-023 3
Figure 2: Evaluation Framework
1.2 Project Requirements As demand for new functionality grows and new systems to fulfill it go into operation, the need to integrate new systems with existing systems has increased. The development of resulting extended systems is frequently based on the integration of existing components, leading to demand for new integration tools. Modern integration tools all promise the ability to integrate components more quickly and cheaply than traditional technologies.
The project described here is aimed at surveying the field of rapid integration tools with a view to informing the reader on how to select among the choices. The task was divided into the following steps.
Survey and classify the tools.
The first step was to identify the tools that claim to provide rapid integration. Since these tools were known to provide a wide range of services, the identification also required the development of a clas-sification scheme for characterizing the various types of tools.
Deliverables: 1) list of rapid integration tools 2) classification scheme 3) classified list of tools
Technical Pa-rameters
Rapid Integration Tools
Tool Evalua-tion Results
Non Technical Parameters
Identified critical requirements for Model Solution
Weights Assigned based on Risk/Misfit
Rules of thumb applied on se-lection of pa-rameters
Model Problem Requirements
4 CMU/SEI-2004-TR-023
Evaluate the tools using a model problem
We expected that one or more of the classifications would contain a number of interesting rapid inte-gration tools. We chose a problem typical of the type of integration the tools were designed for and applied a number of tools to that problem.
Deliverables: 1) preliminary evaluation scheme 2) model problem definition 3) reports detailing evaluation of tools’ applicability to the model problem
Develop and document general evaluation criteria
Following the evaluation, the final step was to refine the evaluation criteria and document the refined versions. The purpose was the creation of an instrument that would assist a developer in choosing the “right” rapid integration tool.
Deliverable: documented evaluation criteria for rapid integration tools. Depending on time, steps 2 and 3 may be repeated within another classification.
1.3 Project Plan and Tracked Report We followed a simple phased approach for executing the project with each phase divided into tasks and related deliverables. Each deliverable is considered as a milestone and is derived from the initial list provided by the SEI. Since the project is exploratory, it does not follow any standard software development life cycle, but we followed software engineering principles from the start. We used the work breakdown structure (WBS) and effort available from the elective to estimate a completion date based on a given start date. The project ran over schedule perhaps indicating the problem of using available effort as an artificial constraint on work to be performed.
1.4 Structure of the Document This report is organized into three major chapters.
Chapter 1: Introduction to the Technical Report presents the purpose and objective of the project, the project description, background, requirements, project plan and tracked report and the structure of the document.
Chapter 2: Identification and Classification of the Tools describes the list of tools identified as the rapid integration tools and the evaluation framework applied to them for selection to work with the model problem. The classification parameters that support the evaluation framework are the technical and non-technical parameters.
Chapter 3: Model Problem and Tool Implementation explains the model problem selection and identification of critical requirements as well as application of the tools and their assessments.
CMU/SEI-2004-TR-023 5
Chapter 4: Conclusions documents the lessons learned arising from the use of the specific tools. Additionally, questions for future research are listed as are some concluding comments on the devel-opment of the evaluation framework, including factors to consider before and after applying the evaluation framework.
Appendices feature detailed descriptions of the tools evaluation, model problem, and other estima-tions.
6 CMU/SEI-2004-TR-023
CMU/SEI-2004-TR-023 7
2 Identification and Classification of Tools
2.1 List of Tools The first step in our approach is to identify the tools used for rapid integration. We discovered little difference between integration tools and rapid integration tools.1 We identified 11 rapid integration tools designed for the rapid integration of applications from existing components.
1. Pervasive Data Junction
2. RoughWave's LEIF
3. IBM Rational Rapid Developer
4. Microsoft SQL Server
5. Host Integration Server
6. Microsoft BizTalk Server
7. IBM WebSphere Business Integration
8. Artix Relay, Encompass and Mainframe
9. PiiE Smart Client and Fusion Server
10. InterSystem Ensemble
11. Jboss
For the above-listed tools, we collected information about their vendors’ name and features. See Appendix A: Tools Studies and Analysis for more information.
2.2 Tool Selection Criteria The identified tools were filtered based on the model problem that will be described in Section 3. Since 11 tools seemed too many for starting the evaluation process, a short list was created based on the following criteria.
1. Tool should be capable of solving a wide range of Enterprise Application Integration problems, especially the Legacy Integration problem.
2. Tool is able to provide communication between Java and C++ Components.
3. Tool has solid success stories associated with it.
1 Rapid is a concept that depends on the user’s context. In some contexts, six months may be considered
rapid and in others, six hours could be too long. The tools themselves are, essentially, the same and a better question is whether the integration tools speed the integration sufficiently to both produce timely applica-tions and cost less than not using the tools.
8 CMU/SEI-2004-TR-023
4. Tool has been in market for at least two to three years.
5. An evaluation version of the tool is available and the evaluation period is sufficient to evaluate the tool.
Through application of these selection criteria the above list of 11 tools was short-listed to 3. The three tools were
1. IBM Websphere
2. IBM Rapid Developer
3. LEIF ( Light-weight Enterprise Integration Framework)
2.3 Classification Parameters The Classification Parameters used to evaluate tools can be technical or non-technical in nature. The functional and non-functional requirements of the model problem form the technical parameters. Powell and colleagues observed] that apart from these technical parameters, some non-technical pa-rameters arise from other business-oriented issues, such as cost and vendor, which play an important role in the selection of a tool for rapid application development [Powell 97].
We identified 16 parameters (5 non-technical parameters and 11 technical parameters) for classifying rapid integration tools. The table below gives a brief description of these parameters.
Table 1: Classification Parameters - Technical and Non-Technical
# Parameter Description Non-Technical Parameters
1 Business market price of the tool
return on investment (ROI) of the tool (based on cost of the tool compared to the estimated cost of manually integrating the components)
foreseen risk in using the tools (lifespan of the tool, ease of use, change frequency and so on)
2 Evaluation-Specific project life cycle in which the tool can be used (software con-figuration, project planning, oversight and tracking and so on)
comparative report of other tools in similar domain
3 External References visibility and popularity of the tool in the market
4 Vendor Support quality and cost of the vendor support
access to architecture and design aspects of the tool
CMU/SEI-2004-TR-023 9
5 Tool-Specific
integration with other tools and platform it can support
solution space the tool belongs to with respect to the problem
(domain specific)
reliability of the tool and the vendor maturity level based on
industry standards
skill set required to operate the tool
tailorability of the tool
extent to which data generated by the tool (performance logs
and so on) is configurable.
number of well-defined components that can be used
separately
performance of the tool
interactivity of the tool
sufficiency of documentation (user manual, installation guide
and so on) bundled with the tool
degree to which data generated by the tool can be used by
other tools
Technical Parameters
6 Security support offered by the tool for developing secure or safety
critical systems
7 Correctness capability of the tool for producing accurate results
8 Availability and
Robustness
capability of the tool for surviving system failure
9 Ease of Use - Usability degree of learning curve associated with the tool
10 Downward and portability of applications developed using one version of the
10 CMU/SEI-2004-TR-023
Upward Compatibility tool to higher and/or lower versions of the same tool
11 Flexibility capability of tool for operating in different operating system
environments
12 Product Performance response time of the tool
13 Tailorability customizability of tool for meeting user-specific requirements
(user interface, enabling/disabling of features, enhancing the
tool by adding plug-ins, and so on)
14 Service Implementa-
tion Coverage
technical support/licensing cost associated with the tool
15 Interoperability capability of tool to interoperate with other systems
16 Testability ability to test the functionality of the tool
Each rapid integration tool is analyzed based on the classification parameters above; it is rated on a scale of 0 to 10, depending on how well it satisfies the parameters. The detailed evaluation of the tools is found in Appendix A: Tool Studies and Analysis.
Assigning values to parameters while analyzing any tool may be tricky. Different individuals may come up with different analysis results. In order to avoid this, we defined some rules of thumb, shown in Table 2 below. These rules are so generic that they can be used to analyze any rapid integration tool.
Table 2: Weights Assigned to Parameters Based on Rules of Thumb
Weights
Parameters 0 1 to 3 4 to 7 8 to 10
CMU/SEI-2004-TR-023 11
Business Cost is very high and has special installation re-quirements (e.g., specific opera- ting system, run- time libraries).
Cost of the tool doesn't support the ROI; there are fre-quent changes to the tool and the cost of learning the tool is high.
Cost of the tool sup-ports the ROI; there are frequent changes to the tool and the cost of learning the tool is high.
Cost of the tool supports the ROI; there are two or three releases of the tool a year and the cost of learning the tool is low (e.g., because of exten-sive Graphical User Interface).
Evaluation- Specific
Tool is single-user and supports no integration with organization's software devel-opment life cycle and other tools.
Tool assists in the collaborative devel-opment but cannot be integrated with the organization's software develop-ment life cycle.
Tool supports collabo-rative development by team, has its own con-figuration manage-ment and project management utility but cannot be inte-grated with other tools.
Tool supports col-laborative develop-ment by team, sup-ports configuration and project man-agement and can be integrated with other tools to ex-pand its current ca-pabilities.
External References
Tool has recently launched in the market.
Tool has received average response from the user, has been in market for one to two years, and a similar tool by leading vendors (e.g., Microsoft, IBM) is available in the market.
Tool has been used by several large organiza-tions, has very few competitors, and has several success stories associated with its use.
Tool has been in market for four or more years, owned by software market leaders like IBM or Microsoft, used by large organizations, and has many suc-cess stories associ-ated its use.
Vendor Support
Tool has no cus-tomer support.
Tool has limited customer support through mail and telephone conversa-tions only.
Tool has good cus-tomer support through online discussion fo-rum, mail and tele-phone conversations. There is immediate response to queries posted to Customer
Tool has effective customer support through online dis-cussion forum, email, and on-site consultation. Re-sponse is immediate to queries posted to
12 CMU/SEI-2004-TR-023
Support Center. Customer Support Center.
Tool-Specific Tool doesn't sup-port integration with other tools.
Tool supports inte-gration with two or three other tools and has complex inte-gration process.
Tool supports integra-tion with software configuration man-agement tools, testing tools, application servers, and so on, and integration proc-ess is moderate and requires manual set-tings.
Tool supports inte-gration with soft-ware configuration management tools, testing tools, appli-cation servers and so on, and integra-tion process is eas-ily performed via wizards. Tool sup-ports custom devel-opment to enhance its features and us-ability.
Security Tool doesn't pro-vide any features to aid in the im-plementation of security mecha-nism (encryption, authentication, authorization etc.)
Tool supports few standard security mechanisms like encryption and au-thentication.
Tool supports most security mechanisms currently used in the market and but doesn't support any custom development of secu-rity mechanisms.
Tool supports most security mecha-nisms currently used in the market and also supports custom develop-ment of security mechanisms.
Correctness Tool has no utility for testing the ap-plication devel-oped by it.
Tool supports lim-ited testing for the application devel-oped.
Tool supports stan-dard testing of the application developed through testing utili-ties bundled with the tool.
Tool performs vali-dation at every step while developing the application. Also supports inte-gration of other test-ing tools (e.g., third party application servers) to verify the correctness of the application cre-ated.
CMU/SEI-2004-TR-023 13
Availability and Robustness
Tool doesn't save the data should system failure occur.
Tool backs-up the application data, which it uses to re-cover from system failure.
Tool backs up the ap-plication data and provides automatic recovery from any type of system failure (sudden shutdown of the desktop, sudden crashing of desktop etc.).
Tool takes backs up of the application data, provides automatic recovery from any kind of system failure (sud-den shutdown of the desktop, sudden crashing of desktop etc.) It also supports restoration points so that user can switch between restoration points.
Usability Tool has non-GUI interface and no feature to auto-mate the execu-tion of tasks or operations.
Tool has GUI Inter-face, but requires a lot of navigation across the screen to perform any opera-tion.
Tool has GUI Inter-face with minimum overhead of naviga-tion while performing any task. Also it pro-vides quick links to commonly used op-erations.
Tool has effective GUI Interface which not only eases in performing tasks but also re-duces the learning curve associated in performing any task. Also tool sup-ports has wizards to guide operations step by step and single-click execu-tion of any opera-tion.
Upward and Downward Compatibility
Application cre-ated by the tool is not supported by earlier or newer versions of the same tool.
Application created by the tool can only be exported to new version under a few circumstances.
Application created by the tool can be ex-ported to new version but requires manual changes in the con-figurations.
Application created by the tool can be exported to new versions. All the necessary changes are automatically handled by the tool itself.
14 CMU/SEI-2004-TR-023
Flexibility Tool has a specific Operating System requirement.
Tool is available for several Operating System environ-ments and does not support portability of applications be-tween platforms.
Tool is available for several Operating System environments and supports portabil-ity of applications between platforms.
Tool is available for several Operating System environ-ments, supports portability of appli-cation between plat-forms and has inter-faces for communication be-tween instances running on different platforms.
Product Performance
Time taken by tool to perform any operation is more than six minutes and the system hangs up while performing any operation.
Time taken by tool to perform any op-eration is four to six minutes and 80% of the time tool per-forms its operation successfully.
Time taken by tool to perform any operation is two to four minutes and 90% of the time tool performs its op-eration successfully.
Time taken by tool to perform any op-eration is between two to four minutes and 100% of the time tool performs its operation suc-cessfully.
Tailorability Tool doesn't allow user to configure / enhance its features.
Tool allows user to configure / enhance its features by in-stalling plug-ins or add-ons available from the tool ven-dor only.
Tool allows user to configure / enhance its features by install-ing suitable plug-ins or add-ons available from any vendor.
Tool allows user to configure / enhance its features by in-stalling suitable plug-ins or add-ons available from any vendor or by pro-gramming the tool itself.
CMU/SEI-2004-TR-023 15
Service Implementa-tion Coverage
Tool has stringent licensing policy and does not pro-mote evaluation copies to experi-ment with the tool. Also it has high licensing cost and purchasing a new license is almost equal to the cost of the tool itself.
Tool promotes evaluation copy but the period is not sufficient enough to evaluate the tool. Also the licensing cost is very high.
Tool promotes evalua-tion copy with ade-quate customer sup-port for any issues that arise during the evaluation period but the evaluation period is not sufficient enough to evaluate the tool. The licensing cost is nominal.
Tool promotes evaluation copy with adequate cus-tomer support for any issues that arise during the evalua-tion period and also the evaluation pe-riod is sufficient enough to evaluate the tool fully. The licensing cost is nominal.
Interopera-bility
Results produced by the tool cannot be exported to other formats (Word document, html, jpeg, etc.) and it doesn't have any interface to communicate with other tools.
Results produced by the tool can be ex-ported to other for-mats (Word docu-ment, html, jpeg, etc.) but it does not support inter-tool communication.
Results produced by the tools can be ex-ported to other for-mats (Word docu-ment, html, jpeg, etc.) and it supports inter-tool communication.
Results produced by the tools can be ex-ported to other for-mats (Word docu-ment, html, jpeg, etc.) and it supports inter-tool communi-cation. Also tool can produce results that can be ported to any platform.
Testability of Output
Tool doesn't vali-date the output produced.
Tool does minimal validation and the accuracy of the re-sult is about 70%.
Tool does validation of the results and the accuracy of the result is about 80%.
Tool does validation throughout and the accuracy of the re-sult is 100%.
2.4 Tool Evaluation The three short-listed tools were evaluated for these technical and non-technical parameters. See Appendix A: Tool Studies and Analysis for the Tool Evaluation Report.
The following graph shows the summary of the parameter values for each tool.
16 CMU/SEI-2004-TR-023
Tools v/s Parameter
0123456789
10
Busine
ss
Evaluation Spe
cific
Para
meter
s
Exter
nal R
efer
ence
s
Vendo
r Sup
port
Tools
Spe
cific
Secur
ity
Corre
ctnes
s
Availa
blity
& Rob
ustnes
s
Usability
Upwar
d &
Downw
ard
Compa
tibilit
y
Flex
ibilit
y
Produ
ct Pe
rform
ance
Under
stand
ibility
Tailo
ribilit
y
Servic
e Im
plemen
tatio
n Cov
erag
e
Inte
rope
rabil
ity
Testab
ility
Parameter
Wei
ghts IBM Websphere
LEIF
IBM Rational Rapid Developer
Figure 3: Graph Showing Characteristics of the Three Tools Selected
The above graph shows the comparative analysis of three rapid integration tools—IBM Websphere, IBM Rapid Developer, and LEIF—with respect to technical and non-technical parameters. The X-axis of the graph lists the parameters (technical and non-technical) and the Y-axis represents the value assigned to these parameters from 0 to 10. Such graphs can be used to prioritize the list of identified rapid integration tools. A similar graph including model problem requirements in terms of parameters can help us to identify which tool is the best fit for the model problem.
CMU/SEI-2004-TR-023 17
3 Evaluation Using a Model Problem
3.1 Purpose This section describes the evaluation of the tools using a selected model problem. The model problem selection criteria, the description of the model problem, and the evaluation of the tools are high-lighted. In describing the model problem selection criteria we also explain the sequence of steps we followed in making our selection. We briefly describe the model problem with respect to the non-functional requirements and the problem statement. Finally, we explain the tool evaluation using the model problem; here we’ve applied the structure of the selected model problem as described by Kurt Wallnau in Building Systems from Commercial Components [Wallnau 02]. The assessment results obtained from this evaluation show the extent to which the tools satisfied the post evaluation criteria and the problem’s non-functional requirements.
3.2 Model Problem Selection
3.2.1 Model Problems
We found three potential model problems (descriptions follow); each problem is appropriate to a par-ticular type of integration.
Web Service Enablement
A company uses the enterprise integration technology as well as XML technology to make customer account information accessible via a Simple Object Access Protocol (SOAP)-based Web services in-terface.
The implementation of this solution requires retrieving and combining information from two source applications. The first application is a custom CORBA system that provides historical customer sup-port information. The second application is Siebel, which provides customer purchase information.
Legacy Integration
Bond traders working online must send prices for a large number of bonds to several different trading venues, each with its own user interface; this disrupts the workflow of their bond trading desk.
The system solution should minimize the minutiae of pricing all traders’ bonds and provide an ad-vanced analytic functionality, specific to the bond market, in a single encapsulated user interface. This system would utilize legacy components on the server side.
18 CMU/SEI-2004-TR-023
Business Application Integration
Three companies use different business processes involving different sets of assumptions. Middle-ware must be utilized as the integration point for communicating among the business processes.
3.2.2 Problem Selection
The following five steps were followed
Step 1: Identify the problem that must be solved through integration.
In this case we identified the following types of integration based on our prior knowledge.
1. Middleware Integration
2. Service Oriented Integration
3. Web Service Integration
4. Legacy Integration
5. Enterprise Application Integration
Step 2: Based on research on the various application integration types we chose three that would pro-vide the best opportunity for using the tools that we have selected.
1. Legacy Integration
2. Business Application Integration
3. Web Service Enablement
Step 3: Analysis and study on the three model problems were made based on answering the following questions.
1. Which problem gives a way to integrate two different technologies?
Of the three problems presented, we found that the Trading Bond System required a solution that would integrate components built using two different technologies (in this case programming lan-guages), as evidenced by its case study report:
Traders needed a very responsive application on both Windows NT and Solaris workstations. Therefore, we decided to implement the client application as a Java thick client because of its platform independence and its ability to quickly respond to user input and market data. On the server side, we are inheriting legacy C++ components that our system will utilize [Simon 03].
The Trading Bond system meets the criterion of providing a way to integrate two technologies. The solution requires integration of a Java based component and C++ based components, which can be done by building a pair of Java gateways to communicate with the C++ server-side components [Simon 03]. Details of the Trading Bond System case are available at http://www.eaipatterns.com/BondTradingCaseStudy.html.
CMU/SEI-2004-TR-023 19
2. Which problem is faced in the real world often?
A demand exists in government and industry for existing systems to be updated or integrated with the current technology. Many applications require technology independence and interoperability with various applications that were developed using different technologies. Moreover, in the current indus-trial scene there is a drive toward production of tools for the integration of Java-based components and C++ based components. The Trading Bond System is therefore quite typical of real-world scenar-ios.
3. Which problem is very specific and solvable within the specified time constraint?
We found that legacy integration for the Trading Bond System best met these criteria. We were able to download two specific components provided by Dukascopy, an online trading application, which mapped with the Trading Bond System scenario. This bode well for solving the problem on time.
We did not find the same with the customer account information problem to be solved through Web Service enablement: Here the application was generic and we were not able to find the specific attrib-utes to be addressed or specific requirements to be fulfilled. We realized that it might take consider-able time to establish which tools were needed. This presented a problem, given time constraints and resource availability. We did not have enough time to create a simulation of the CORBA System and the Siebel system.
The problem that might have been solved through Business Integration did not meet this criterion. This involved three companies who required communication among their different business proc-esses. The business processes to be integrated were not well defined or specific. The time required for creating simulated processes and then integrating them did not meet our constraints.
4. Which of the other classes of integration does this model problem address?
The chosen problem could also be used to assess service-oriented integration insofar as it is reason-able to treat the problem components as services. Additionally, the middleware, application and Web-based integration classes could be addressed by the Trading Bond system.
Step 4: Identify the model problem that fit into the evaluation framework based on the above identi-fied questions.
Step 5: Having identified the model problem to be solved, we now present details regarding the Trad-ing Bond system relevant to further application development using the integration tools.
20 CMU/SEI-2004-TR-023
3.3 Model Problem Description The Trading Bond system best met the problem criteria and highlights the necessity of integration, for communication purposes, between various components with various user interfaces and communica-tion protocols. The following table shows an analysis of the original problem statement into a prob-lem description describing the various actors and also constraints on the solution.
The problem of bond traders to send prices for a large number of bonds to several different trading venues, each with its own user interface
affects bond traders
the impact of which is to disrupt the streamline of the workflow of their bond trading desk
a successful solution would be a bond pricing system to minimize the minutiae of pricing all of their bonds combined with advanced analytic functionality specific to the bond market in a single encapsulated user interface.
Figure 4: High-Level Context Diagram of Trading Bond System
First, market data comes into the system. Market data is data regarding the price and other properties of the bond representing what people are willing to buy and sell the bond for on the free market. The market data is immediately sent to the analytics engine that alters the data. Analytics refers to mathe-matical functions for financial applications that alter the prices and other attributes of bonds. These are generic functions that use input variables to tailor the results of the function to a particular bond. The client application that will run on each trader desktop will configure the analytics engine on a per trader basis, controlling the specifics of the analytics for each bond the trader is pricing. Once the
CMU/SEI-2004-TR-023 21
analytics are applied to the market data, the modified data is sent out to various trading venues where traders from other firms can buy or sell the bonds.
The following are some of the non-functional requirements that the system should address, in order of priority. The scope of this model problem extends to only the highest priority quality attributes se-lected by the team.
Integrability:
“On the server side, we are inheriting legacy C++ components that our system will utilize.”
The system should be integrable with the legacy C++ components which forms the Market data feed pricing subsystem and the thick client application which will be a Web-based thick Java client.
Performance:
“Traders need a very responsive application”
Two attributes of performance are essential to this responsiveness.
1. Scalability: Measured as the number of traders who will be accessing the system and the sys-tem’s capability for accommodating them.
2. Response Time: The system should be able to respond to the user without significant delay [here we say less than 5 sec, assuming that it is a Web-based application]
Portability:
“Traders need a very responsive application on both Windows NT and Solaris workstations.”
The application should be portable to any platform based on the demands of the trader’s needs.
The quality attribute that will be addressed in this execution of the model problem is highlighted in Table 3.
22 CMU/SEI-2004-TR-023
Table 3: Prioritized List of Quality Attributes
3.4 Tool Evaluation using Model Problem The following diagram shows the elements of the assessment. The trading bond problem is used as the model problem and the criteria coupled with the design question lead to the tool assessment, and COTS components forming the trading bond system.
Figure 5: Structure of the Model Problem
Design Question:
This is the initiating element of the model problem.
In this case study of the Trading Bond system, the design question is
Quality Attribute
Prioritization Rationale
Integrability 1 Use of the rapid integration tools to integrate legacy systems with Web-based application. In this case we are integrating the C++ legacy system with the Web-based Java Client.
Performance 2 We address the response time specific to this application as de-termined by the team for a responsive application.
Portability 3 Client application is developed in Java which automatically sup-ports platform independence.
Design Question [Hypothesis]
Priori Evaluation Criteria
Posteriori Evaluation Criteria
Minimum Relevant Constraints
Assessment Results
Trading Bond System
CMU/SEI-2004-TR-023 23
Is it possible to integrate the Java and legacy C++ components that are obtained off the shelf from the Dukascopy stock quote Web site, using the rapid integration Tools?
Hypothesis: A wrapper component [integration point] that provides the communication between the Java thick client and the legacy server side C++ component can be constructed using the rapid inte-gration Tools.
Priori Evaluation Criteria:
These are the criteria to be satisfied by the model solution. They were obtained by analyzing the ap-plication specifics given in the case study. They are centered on integration techniques and use of in-tegration tools. These evaluation criteria are formulated based on the hypothesis that we have ad-dressed related to the model problem. These criteria help in defining with the Standard’s compliance that the tools must meet in order to satisfy the requirements.
Criterion #1: A Java to C++ translator is required. Java thick Client talking with C++ Legacy Servers
Criterion #2: Messaging Bridge to support the communication between cross-language applications [C++ and Java]
Criterion #3: Single point of access is required to communicate with the gateways of the legacy serv-ers.
The criteria form the model problem requirements for the integration implementation using the tool. Thus according to Criteria #1, #2, and #3, the tool should be able to provide a communication mechanism, a messaging bridge and a single point access between the Java and C++ components. In this case the tools IBM WebSphere and the LEIF help in achieving these developments.
Minimum Relevant Constraints
The following constraints are based on what is feasible to provide in the model solution to address the above mentioned priori criteria:
1. This is a short-term project that involves rapid development; hence the use of rapid integration tools to create the Java to C++ translator, messaging bridge and single point access mechanism, which are the priori criteria of the model problem.
2. The business processes of the model problem are not a focal point, since they are addressed by the off-the-shelf components that are downloaded from the Dukascopy site.
3. The tool selection is restricted to the major functionalities provided by the tool with respect to the model problem’s priori criteria.
The development and deployment environment are the same; hence the performance of the model solution is constrained.
24 CMU/SEI-2004-TR-023
Model Solution: Trading Bond System
A simple solution that clarifies how the model solution was implemented is provided below:
Figure 6: Model Solution—High-Level Context Diagram
The Java Gateways are considered the Service Requestor and the Java Web Services are implemented using the IBM WebSphere. These Java Web Services are the Client side application required for communicating with the C++ Legacy servers, in this case the Market Data Feed Component obtained from the Customized Dukascopy Data Feed (CDDF) http://www.dukascopy.com/english /ddf_main/ . The C++ Legacy Servers are the service providers. The inner workings of the C++ Component and the Java Component were not considered; it was the integration between these com-ponents that was implemented using the Tools. The Discovery Agencies used were the UDDI Ser-vices, which were automatically set in the IBM WebSphere tool.
The System uses the simple publish-subscribe model for the implementation of the integration through discovery agencies and SOAP is the communication protocol that establishes the interaction between the two Web services.
Posteriori Evaluation Criteria
Criterion #1: Installation and development environment for the identified solution tools are in place.
Criterion #2: The off-the-shelf components architecture and design maps with the model problem requirements.
Criterion #3: The integration of the two COTS components is accomplished using the rapid integration tools
Service
Requestor 1
Service
Requestor n
Client
Service
Provider
Client Services
C++ Legacy Servers
Find
Java Gateways
Discovery
Agencies
Publish
Interact
CMU/SEI-2004-TR-023 25
The above criteria help in evaluating whether the tools are able to meet the requirements of the model problem and whether they are able to conceptualize the hypothesis that has been defined for this model problem.
Assessment Results
The assessment results are enumerated based on the following factors:
1. risks encountered and mitigated while using the contingency approach
2. the size, effort, and cost variance involved when using the rapid integration tools and when not using the rapid integration tools
3. product outcome explaining the steps that brought success and those that resulted in failure in the development using rapid integration tools
These assessments help in evaluating the tools as they apply to the model problem. In this case they are restricted with respect to the legacy integration of cross-language platforms.
Risks Encountered and Mitigated
The following table describes the major risks that we encountered and mitigated through contingency plans.
Table 4: Top Three Risk List
No. Risk Risk Management Strategy Status
Contingency
Impa
ct
Occ
urre
nce
Pro
babi
lity
Exp
osur
e
(Ran
k) Mitigation
Activities Trigger Activities
1 Tools iden-tified are not suitable for solving the model problem
90% .9 1 Collect the tools based on the model problem’s critical re-quirements
The tools are not able to produce a mechanism that solves the commu-nication be-tween Java Gateways and the C++ Legacy Server.
Determine which tools support the communication mechanism. In this case C++ Web Services are created using the Apache Axis C++. The integra-tion of the C++ Component with the Java Compo-nent is accom-plished via the LEIF.
Close
26 CMU/SEI-2004-TR-023
No. Risk Risk Management Strategy Status
Contingency
Impa
ct
Occ
urre
nce
Pro
babi
lity
Exp
osur
e
(Ran
k) Mitigation
Activities Trigger Activities
2 Learning curve
60% .8 2 Estimate the effort and exe-cute a short-term plan for learning only the required tools.
Understand-ing the proc-ess of using the tool for the specified model prob-lem.
Approach the technical support for the specific tool or the inter-active manual for the understanding of the tool.
Close
3 Installation and trou-bleshooting
80% .7 3 Test the devel-opment envi-ronment using Evaluation Software and samples.
Installation is problematic or the tool is unable to produce the required functionality.
Use separate test-ing machine for testing the instal-lation and run sample problems that are related to the model prob-lem requirements
Close
Size, Effort, Cost Variance
The following table explains the size, effort and cost variance. The size, effort and cost are estimated using the COCOTS calculator; this includes estimates of the glue code to be written and calculation of the respective effort and cost for writing the glue code. Using the actual size, effort, and cost re-corded while doing the development, the variance is calculated as shown below:
Table 5: Variance Calculator
Factor Estimated without using the rapid in-tegration Tools
Actual after using the rapid integration Tools
% Variance (Estimated-Actual)/Estimated *100)
Size (KLOC) 1.01 0 [Source Code auto generated]
100
Effort (Person Months) 17.63 8 54.6
Cost ( in $ excluding software costs)
123,403 55,996 54.6
CMU/SEI-2004-TR-023 27
Estimated Vs Actual
0
20
40
60
80
100
120
140
Size Person Month Cost
Factors
Estimated
Actual
Figure 7: Graph that Explains the Estimated vs. Actual Effort and Cost
Product outcome
The product developed using these tools should have adhered to the a posteriori evaluation criteria that we arrived at and also the non-functional requirements of the model problem.
Table 6: Posteriori Evaluation Criteria Satisfied by the Tools
Criterion #
Description Observation
1 Installation and development environments are in place for the identified solution tools.
Yes. All three tools satisfied this criterion.
2 The off-the-shelf components architecture and design satisfy the model problem re-quirements.
The components do not map exactly with respect to the implementation model as required by the model prob-lem. They satisfied the functional requirements.
3 The integration of the two COTS compo-nents is accomplished using the rapid inte-gration tools.
The tools, especially IBM Web-Sphere, LEIF, and Apache Axis C++, were used for creating and integrating the Web services of the COTS components.
The product outcome is also validated when the non-functional requirements are satisfied by the vari-ous tools.
28 CMU/SEI-2004-TR-023
Table 7: Tools Observations Conforming to Non-Functional Requirements
Requirement LEIF IBM Websphere IBM Rapid Devel-oper
Integrability Provides services for integration rather than integration itself and is limited re-garding C++ Tech-nology
Provides integration capability and is limited regarding Java Technology
Integration capabil-ity is lower and is limited regarding Java Technology
Performance (development time provided by the tool, not involving the prerequisites)
Simple interface with fewer inputs and quick response (2 minutes)
Requires knowledge about Web services and complex user interaction and is highly responsive (4 minutes)
Ease of use, and good user interface, and good response time (3 minutes)
Portability (based on the platform inde-pendence of the tool)
Portability is very possible (able to cre-ate services for vari-ous operating sys-tems).
Portability is not possible. Caters to only J2EE applica-tions / middleware applications
Portability is sup-ported to a limited extent.
CMU/SEI-2004-TR-023 29
4 Conclusions
In this section, the lessons learned from the highlights and lowlights of the whole research work have been documented. Additionally, we suggest some directions for potential future work based on this investigation.
4.1 Lessons Learned What Went Right 1. Being able to download evaluation copies helped in the installation and testing of the tools.
2. The required additional software necessary for the installation and configuration of the selected tools (for instance, LEIF requires VC++) was provided by our university.
3. The creation of services out of the COTS components took almost no time when the tools were used. (The user should be aware of the component and the business logic required to create a service from that component.)
4. IBM WebSphere proved to be a highly interactive tool which enhanced the usability and intelli-gibility of the feeder component (Java) and was able to generate the Web services from these components in just 4-5 minutes.
5. The Communication between the two components using the SOAP mechanism was successfully completed using the IBM WebSphere.
What Went Wrong 1. Expiration of the evaluation copies often forced us to change machine configurations and set-
tings in the development environment.
2. The COTS component was revised and is no longer freely available, thus this experiment isn’t freely repeatable.
3. No configuration management of source files is maintained due to the auto generation of the source code by the tools.
4. We could only run the application in the version of the evaluation copy that created it. Running it in a different version required extra effort and time for reconfiguration and caused data loss.
5. LEIF was unable to generate the WSDL file for the C++ Component, so it involved extra effort to find an alternative to do the same. [This was due to the incompatibility in the versioning of the source code of the Market Data Feed Component (C++).]
30 CMU/SEI-2004-TR-023
4.2 Future Directions of the Research In this section we want to highlight the Evaluation Framework’s applicability to the other model problems and tools by answering the following questions.
• Is the framework applicable to all tools and all model problems?
• How much time is needed to modify your framework when you must support multiple model problems?
• How much effort is needed in terms of searching for technologies and characterizing the model problem different ways?
4.3 Remarks While the development of the evaluation framework took more time than expected, we believe that the result is worthwhile. The framework, without change, can be used for a significant number of similar evaluations and, with minor change, could be used for a wider range of problems. Further, the evaluations contained herein demonstrate that it is possible to use the framework to distinguish be-tween tools.
The difficulties we had with the various tools suggest that, although rapid integration technologies are being widely hyped, in practice the tools still leave something to be desired. While it is possible to use the tools to integrate legacy components more efficiently than without the tools, the difficulties suggest that more work remains to be done on the tools themselves (as well, perhaps, as the target environment of Web services).
CM
U/S
EI-
2004
-TR
-023
31
Ap
pen
dix
A
Too
l Stu
die
s an
d A
nal
ysis
Lis
t of
Too
ls a
nd T
ool I
nfor
mat
ion
The
info
rmat
ion
prov
ided
her
e co
mes
dir
ectly
fro
m o
nlin
e lit
erat
ure
prov
ided
by
the
vend
ors.
# N
ame
D
escr
ipti
on
Ven
dor
Fea
ture
s P
rovi
ded
Ref
eren
ces
1.
IBM
Rat
iona
l R
apid
Dev
elop
er
IBM
Rat
iona
l Rap
id D
evel
-op
er is
a s
ingl
e, in
tegr
ated
ap
plic
atio
n de
velo
pmen
t en
viro
nmen
t tha
t com
bine
s m
odel
dri
ven
deve
lopm
ent,
arch
itect
ed R
apid
App
lica-
tion
Dev
elop
men
t (R
AD
) te
chni
ques
, and
aut
omat
ed
cons
truc
tion
to d
evel
op, i
n-te
grat
e, d
eplo
y, a
nd m
ain-
tain
hig
h-qu
alit
y, n
-tie
r bu
sine
ss a
ppli
catio
ns—
wit
hout
mos
t of
the
com
-pl
exiti
es o
f th
e un
derl
ying
te
chno
logy
pla
tfor
ms
IBM
Rat
iona
l 1.
pr
ovid
es s
ingl
e se
amle
ss e
nvir
onm
ent f
or r
apid
de
sign
, int
egra
tion,
con
stru
ctio
n, a
nd d
eplo
y-m
ent o
f bu
sine
ss a
pplic
atio
ns a
nd p
orta
ls
2.
leve
rage
s m
ains
trea
m d
evel
opm
ent s
kills
on
com
plex
n-t
ier
deve
lopm
ent p
roje
cts
3.
focu
ses
deve
lopm
ent e
ffor
ts o
n hi
gh-v
alue
bu
sine
ss r
equi
rem
ents
—no
t inf
rast
ruct
ure
co
ding
4.
acce
lera
tes
appl
icat
ion
and
port
al d
eliv
ery
thro
ugh
arch
itect
ed R
AD
tech
niqu
es s
uch
as
reve
rse-
engi
neer
ing,
rap
id u
ser
inte
rfac
e de
-si
gn, f
unct
iona
l pro
toty
ping
, aut
omat
ed n
-tie
r co
nstr
uctio
n, a
nd d
eplo
ymen
t fea
ture
s
5.
sim
plif
ies
lega
cy in
tegr
atio
n
6.
crea
tes
agil
e, s
tand
ards
-bas
ed a
pplic
atio
ns
7.
prov
ides
a v
isua
l mod
el-d
rive
n an
d po
int-
and-
clic
k en
viro
nmen
t
http
://w
ww
-30
6.ib
m.c
om/s
oftw
are/
awdt
ools
/r
apid
deve
lope
r/
http
://w
ww
-30
6.ib
m.c
om
/sof
twar
e/aw
dtoo
ls
/rap
idde
velo
per
/fea
ture
s/in
dex.
htm
l
32
CM
U/S
EI-
2004
-TR
-023
8.
prov
ides
aut
omat
ic c
onst
ruct
ion
and
hot d
e-pl
oym
ent o
f ap
plic
atio
ns a
nd p
ortl
ets
from
m
odel
s
9.
supp
orts
mai
nfra
me
and
rela
tiona
l dat
abas
e co
nnec
tivity
and
CIC
S vi
sual
and
non
-vis
ual
tran
sact
ion
inte
grat
ion
10.
XM
L m
essa
ge m
appi
ng
2.
Art
ix
Art
ix is
fam
ily
of s
ervi
ce-
orie
nted
inte
grat
ion
prod
ucts
th
at w
ill r
enov
ate
exis
ting
IT a
sset
s an
d co
nsol
idat
e le
gacy
mid
dlew
are
to r
educ
e th
e co
mpl
exit
y an
d co
st o
f IT
ope
ratio
ns. A
t the
sam
e ti
me,
it r
educ
es v
endo
r de
-pe
nden
cies
and
enh
anci
ng
futu
re I
T in
nova
tion.
Fol
-lo
win
g ar
e th
e 3
Art
ix p
rod-
ucts
.
Rel
ay
Enc
ompa
ss
Mai
nfra
me
ION
A
Tech
nolo
gies
A
rtix
Rel
ay
1.
supp
orts
a w
ide
arra
y of
mid
dlew
are
form
ats,
in
clud
ing
SOA
P an
d II
OP
2.
supp
orts
the
mos
t pop
ular
mid
dlew
are
tech
-no
logi
es, i
nclu
ding
Web
ser
vice
s,
CO
RB
A/I
IOP,
Web
Sphe
re m
q (m
qser
ies)
, bea
tu
xedo
, TIB
CO
Ren
dezv
ous
3.
exte
nds
secu
rity
, tra
nsac
tion,
and
rou
ting
fea-
ture
s of
ent
erpr
ise
mid
dlew
are
acro
ss m
iddl
e-w
are
boun
dari
es
Art
ix E
ncom
pass
1.
adds
ent
erpr
ise
feat
ures
to W
eb s
ervi
ces
inte
-gr
atio
n so
lutio
ns, i
nclu
ding
a.
secu
re W
eb s
ervi
ces
a.
st
atef
ul W
eb s
ervi
ces
b.
tr
ansa
ctio
nal W
eb s
ervi
ces
c.
m
ulti
-tra
nspo
rt W
eb s
ervi
ces
Art
ix M
ainf
ram
e
1.
high
-per
form
ance
—sh
atte
rs th
e m
isco
ncep
tion
http
://w
ww
.iona
.co
m/p
rodu
cts/
artix
/
http
://w
ww
.iona
.co
m/d
evce
nter
/art
ix/
http
://w
ww
.iona
.co
m/w
hite
pape
r.htm
#art
ix
CM
U/S
EI-
2004
-TR
-023
33
that
Web
ser
vice
s ca
nnot
be
fast
2.
auto
mat
ed—
crea
tes
new
Web
ser
vice
s in
a f
ew
min
utes
, sta
rt to
fin
ish
3.
secu
re—
inte
grat
ed w
ith S
AF
for
host
aut
hent
i-ca
tion
and
auth
oriz
atio
n
4.
stan
dard
—W
SDL
inte
rfac
e de
fini
tion
s ca
n be
us
ed b
y m
any
thir
d-pa
rty
clie
nt d
evel
opm
ent
tool
s
3.
Lig
htw
eigh
t En-
terp
rise
Int
egra
-ti
on F
ram
ewor
k (L
EIF
)
Rog
ue W
ave’
s L
EIF
is a
co
mpl
ete
best
-of-
bree
d so
lu-
tion
fra
mew
ork
for
deve
lop-
ers
need
ing
to e
nabl
e th
eir
appl
icat
ions
for
com
mun
ica-
tion
acr
oss
the
ente
rpri
se.
By
prov
idin
g m
oder
n so
lu-
tion
s ba
sed
on s
tand
ards
su
ch a
s H
TT
P (c
lient
and
se
rver
), S
impl
e O
bjec
t Ac-
cess
Pro
toco
l (SO
AP)
, Web
Se
rvic
es D
escr
iptio
n L
an-
guag
e (W
SDL
), a
nd E
xten
-si
ble
Mar
kup
Lan
guag
e (X
ML
), L
EIF
red
uces
de-
velo
pmen
t cos
ts a
nd o
ffer
s th
e ag
ility
to r
apid
ly e
volv
e ap
plic
atio
ns a
s bu
sine
ss
need
s ch
ange
. With
Rog
ue
Wav
e’s
LE
IF, i
t is
poss
ible
Rog
ue W
ave
Soft
war
e
1.
Rog
ue W
ave’
s L
EIF
incl
udes
thre
e tie
rs o
f fu
ncti
onal
ity
that
com
bine
to c
reat
e a
com
pre-
hens
ive,
pla
tfor
m-i
ndep
ende
nt f
ram
ewor
k fo
r w
orki
ng w
ith
Web
ser
vice
s an
d X
ML
in C
++:
a.
the
Dat
a T
ier—
a hi
gh-p
erfo
rman
ce C
++
de
velo
pmen
t pla
tfor
m f
or X
ML
b.
th
e N
etw
ork
Tie
r—a
com
plet
e ne
twor
king
an
d W
eb s
ervi
ces
clie
nt f
ram
ewor
k fo
r C
++
c.
th
e Se
rvic
e T
ier—
a ro
bust
C/C
++
Web
se
rvic
es h
ostin
g pl
atfo
rm
2.
The
LE
IF f
ram
ewor
k co
nsis
ts o
f a
broa
d ra
nge
of C
++
com
pone
nts
coup
led
wit
h co
de g
ener
a-to
rs f
or e
xtre
mel
y fa
st a
nd e
asy-
to-m
aint
ain
ap-
plic
atio
n de
velo
pmen
t. T
he L
EIF
cod
e ge
nera
-to
rs w
ork
toge
ther
to c
reat
e a
high
-lev
el A
PI
in
C+
+ th
at h
andl
es a
ll th
e ha
rd w
ork
of c
omm
u-ni
catio
n un
der
the
cove
rs.
3.
LE
IF a
lso
incl
udes
the
LE
IF P
roje
ct W
izar
d, a
n in
tuiti
ve g
raph
ical
use
r in
terf
ace
(GU
I) th
at
crea
tes
proj
ect f
iles
on a
ll s
uppo
rted
pla
tfor
ms
ww
w.r
ogue
wav
e.co
m/p
rodu
cts/
leif
34
CM
U/S
EI-
2004
-TR
-023
to q
uick
ly tr
ansf
orm
a
mon
olit
hic
appl
icat
ion
into
on
e th
at c
an n
ativ
ely
inte
ract
w
ith
all o
ther
par
ts o
f th
e te
chno
logy
infr
astr
uctu
re.
for
mos
t LE
IF ta
sks
and
mak
es it
eas
y to
inte
-gr
ate
LE
IF c
ode
gene
rati
on in
to a
n au
tom
ated
bu
ild p
roce
ss.
4.
PiiE
Pla
tfor
m
PiiE
is a
com
posi
te a
pplic
a-ti
on d
evel
opm
ent a
nd r
un-
tim
e en
viro
nmen
t tha
t del
iv-
ers
inte
grat
ion
to th
e de
sk-
top
by m
akin
g it
eas
y to
bu
ild a
pplic
atio
ns th
at a
re
com
pose
d fr
om m
any
back
-en
d sy
stem
s, a
nd e
xpos
ing
them
to e
nd-u
sers
in a
n ac
-ti
onab
le in
terf
ace.
The
PiiE
Pla
tfor
m c
onsi
sts
of p
rim
ary
com
pone
nts:
• Pi
iE S
mar
t Cli
ent
• Pi
iE F
usio
n Se
rver
Dig
ital
H
arbo
r P
iiE S
mar
t C
lient
1.
Dra
g an
d dr
op a
pplic
atio
n de
sign
: The
PiiE
C
onso
le B
uild
er m
akes
it e
asy
for
deve
lope
rs to
bu
ild n
ew a
pplic
atio
ns b
y us
ing
exte
nsiv
e dr
ag-
and-
drop
cap
abili
ties
to c
reat
e co
rrel
ated
be-
havi
ors.
Suc
h dr
ag-a
nd-d
rop
corr
elat
ion
is u
n-pr
eced
ente
d in
any
cli
ent/s
erve
r or
Web
dev
el-
opm
ent e
nvir
onm
ent t
oday
.
2.
Smar
t app
licat
ion
deli
very
and
man
agem
ent:
D
igit
al H
arbo
r Pi
iE p
rovi
des
over
20
Web
ser
-vi
ces
to m
anag
e ju
st-i
n-ti
me,
just
-eno
ugh
stre
amin
g of
app
licat
ions
, as
wel
l as
secu
rity
, ca
chin
g, v
ersi
onin
g, a
nd c
orre
lati
on o
f be
hav-
ior.
The
se s
ervi
ces
com
pris
e Ja
vaB
eans
and
X
ML
app
lied
at th
e in
terf
ace
leve
l.
3.
Stan
dard
s-ba
sed
appl
icat
ion
deve
lopm
ent e
nvi-
ronm
ent:
Pii
E S
mar
t Clie
nt is
des
igne
d fo
r in
-te
grat
ion
wit
h yo
ur e
xist
ing
infr
astr
uctu
re, i
n-cl
udin
g da
ta s
ourc
es a
nd a
pplic
atio
n se
rver
s.
By
prov
idin
g a
stan
dard
s-ba
sed
plat
form
for
m
anag
ing
the
appl
icat
ion
cons
umpt
ion
laye
r, Pi
iE d
ram
atic
ally
red
uces
the
tech
nica
l com
-pl
exit
y of
dev
elop
ing
appl
icat
ions
.
http
://w
ww
.dha
rbor
.com
CM
U/S
EI-
2004
-TR
-023
35
4.
Secu
rity
: Pii
E S
mar
t Clie
nt e
xten
ds r
eal-
tim
e in
tegr
atio
n w
ith e
xter
nal s
ecur
ity s
yste
ms
cru-
cial
to e
xtra
net o
pera
tions
wit
h su
ppor
t for
L
ight
wei
ght D
irec
tory
Acc
ess
Prot
ocol
(L
DA
P). P
iiE a
lso
prov
ides
aut
omat
ic s
uppo
rt
for
end-
to-e
nd e
ncry
ptio
n.
5.
Sam
ple
appl
icat
ions
: The
Pii
E S
mar
t Cli
ent
prod
uct s
uite
com
es e
quip
ped
with
out
-of-
the-
box
sam
ple
appl
icat
ions
that
pro
vide
app
lica-
tion
dev
elop
ers
and
busi
ness
ana
lyst
s w
ith e
x-is
ting
solu
tions
that
can
be
leve
rage
d fo
r cu
s-to
m b
uilt
app
lica
tions
.
6.
Col
labo
ratio
n vi
a e-
mai
l: U
sers
can
leve
rage
th
eir
exis
ting
emai
l app
lica
tions
to s
end
and
re-
ceiv
e sm
art a
pplic
atio
ns.
7. E
xten
sibl
e ID
E: P
iiE
pro
vide
s ap
plic
atio
n de
-ve
lope
rs w
ith a
n ex
tens
ible
inte
grat
ed d
evel
-op
men
t env
iron
men
t tha
t let
s de
velo
pers
plu
g in
re-
usab
le c
usto
m-b
uilt
com
pone
nts.
PiiE
Fus
ion
Serv
er
1.
One
-cli
ck d
isco
very
(A
sk):
Dig
ital
Har
bor's
Pi
iE a
llow
s us
ers
to a
sk q
uest
ions
abo
ut th
eir
info
rmat
ion
in r
eal t
ime
and
in c
onte
xt. Q
ues-
tion
s ca
n pe
rtai
n to
info
rmat
ion
abou
t rel
atio
n-sh
ips,
rol
es, r
ules
, pro
cess
es, p
eopl
e, a
nd
activ
itie
s.
2.
Con
text
ual c
olla
bora
tion
with
app
licat
ion
link-
ing
and
embe
ddin
g (A
LE
TM
): D
igit
al H
arbo
r's
36
CM
U/S
EI-
2004
-TR
-023
PiiE
lets
use
rs d
rag
and
drop
one
pie
ce o
f in
-fo
rmat
ion
onto
ano
ther
to p
rovi
de c
onte
xt f
or
colla
bora
tion.
Ent
erpr
ises
get
a “
com
mon
ope
r-at
ing
pict
ure.
”
3.
Dyn
amic
wor
kflo
w: M
ost w
orkf
low
tool
s ar
e st
and-
alon
e pa
ckag
es th
at f
ocus
on
rigi
d, p
re-
defi
ned
proc
esse
s. A
new
cla
ss o
f B
PM (
busi
-ne
ss p
roce
ss m
anag
emen
t) te
chno
logi
es is
em
ergi
ng to
inte
grat
e w
orkf
low
s ac
ross
bac
k-en
d sy
stem
s. W
hat i
s st
ill m
issi
ng, h
owev
er, i
s th
e ab
ility
to g
ive
end-
user
s co
ntro
l ove
r ho
w
flex
ibly
they
wor
k to
geth
er—
and
to d
o it
in th
e co
ntex
t of
the
appl
icat
ions
they
use
!
4.
Rat
her
than
des
ign-
tim
e w
orkf
low
, PiiE
Fus
ion
Serv
er p
rovi
des
run-
tim
e fl
exib
ility
to e
nd u
s-er
s: L
ike
a pr
ojec
t pla
nnin
g to
ol th
at is
alw
ays
live
, rat
her
than
pos
ted
on th
e w
all i
n th
e lu
nch-
room
, PiiE
's D
ynam
ic W
orkf
low
fea
ture
s al
low
en
d us
ers
to a
nnot
ate,
man
ipul
ate,
and
upd
ate
thei
r pr
oces
ses.
5.
Dra
g-an
d-D
rop
Inte
grat
ion
/ Gra
phic
al M
odel
-in
g: D
igit
al H
arbo
r’s
PiiE
mak
es in
tegr
atio
n ea
sier
by
defi
ning
a r
elat
ions
hip
mod
el o
f pe
o-pl
e, p
lace
s, a
nd th
ings
that
can
be
used
by
busi
-ne
ss a
naly
sts
to b
uild
app
licat
ions
.
6.
Cre
ate
rich
ent
ity
rela
tions
hips
acr
oss
syst
ems
by d
efin
ing
the
mea
ning
of
the
rela
tions
hip
(se-
man
tics
), n
ot ju
st th
e sy
ntax
.
a.
Map
act
ivit
ies
and
prop
ertie
s.
b.
Map
eve
nts
that
res
ult f
rom
cro
ss-s
yste
m
CM
U/S
EI-
2004
-TR
-023
37
func
tion
s.
c.
Cre
ate
or im
port
rul
es th
at c
onst
rain
the
effe
cts
of e
vent
s an
d ac
tivi
ties
on d
ata
and
peop
le.
d.
Map
to e
xter
nal a
pplic
atio
ns a
nd d
ata
sour
ces.
7.
Opt
imal
arc
hite
ctur
e: S
tand
ards
-Bas
ed D
igita
l H
arbo
r's P
iiE
is d
esig
ned
to f
it yo
ur e
xist
ing
in-
fras
truc
ture
, inc
ludi
ng d
ata
sour
ces
and
appl
ica-
tion
ser
vers
. Pii
E p
rovi
des
XM
L-b
ased
and
JD
BC
com
plia
nt d
ata
tran
sfer
and
tool
s fo
r ap
-pl
icat
ion
layo
ut a
nd d
evel
opm
ent.
8.
Ric
h us
e of
com
pone
nts
and
sem
anti
cs: E
ach
obje
ct is
“aw
are”
of
its r
elat
ions
hip
to o
ther
ob-
ject
s. E
ach
conc
ept i
n a
busi
ness
is d
escr
ibed
as
a pe
rson
, pla
ce, o
r th
ing
whi
ch h
as m
eani
ng to
ot
her
info
rmat
ion,
oth
er p
roce
sses
, and
oth
er
appl
icat
ions
.
9.
Smar
t app
licat
ion
deli
very
and
man
agem
ent:
D
igit
al H
arbo
r Pi
iE p
rovi
des
over
20
appl
ica-
tion
ser
vice
s to
man
age
just
-in-
tim
e, ju
st-
enou
gh s
trea
min
g of
app
licat
ions
and
con
tent
, se
curi
ty, c
achi
ng, v
ersi
onin
g, a
nd c
orre
latio
n of
be
havi
or.
38
CM
U/S
EI-
2004
-TR
-023
5.
SQL
Ser
ver
SQL
Ser
ver
2000
exc
eeds
de
pend
abili
ty r
equi
rem
ents
an
d pr
ovid
es in
nova
tive
ca-
pabi
litie
s th
at in
crea
se e
m-
ploy
ee e
ffec
tive
ness
, int
e-gr
ate
hete
roge
neou
s IT
ec
osys
tem
s, a
nd m
axim
ize
capi
tal a
nd o
pera
ting
budg
-et
s. S
QL
Ser
ver
2000
pro
-vi
des
the
ente
rpri
se d
ata
man
agem
ent p
latf
orm
you
r or
gani
zati
on n
eeds
to a
dapt
qu
ickl
y in
a f
ast-
chan
ging
en
viro
nmen
t.
Wit
h th
e lo
wes
t im
plem
en-
tatio
n an
d m
aint
enan
ce c
osts
in
the
indu
stry
, SQ
L S
erve
r 20
00 d
eliv
ers
rapi
d re
turn
on
you
r da
ta m
anag
emen
t in
vest
men
t. SQ
L S
erve
r 20
00 s
uppo
rts
the
rapi
d de
-ve
lopm
ent e
nter
pris
e-cl
ass
busi
ness
app
lica
tions
that
ca
n gi
ve y
our
com
pany
a
criti
cal c
ompe
titiv
e ad
van-
tage
.
Ben
chm
arke
d fo
r sc
alab
ility
, sp
eed,
and
per
form
ance
,
Mic
roso
ft
1.
easy
-to-
use
busi
ness
inte
llige
nce
tool
s
2.
self
-tun
ing
and
man
agem
ent c
apab
ilitie
s
3.
data
man
agem
ent a
pplic
atio
ns a
nd s
ervi
ces
4.
nativ
e X
ML
Sup
port
5.
upco
min
g ve
rsio
n of
SQ
L S
erve
r co
de-n
amed
“Y
ukon
” w
ill a
llow
inte
grat
ion
with
Mic
roso
ft
CL
R
6.
adva
ncem
ents
suc
h as
XQ
uery
and
a n
ativ
e X
ML
dat
a ty
pe w
ill h
elp
enab
le o
rgan
izat
ions
to
sea
mle
ssly
con
nect
inte
rnal
and
ext
erna
l sys
-te
ms
http
://w
ww
.mic
roso
ft.c
om/s
ql
CM
U/S
EI-
2004
-TR
-023
39
SQL
Ser
ver
2000
is a
ful
ly
ente
rpri
se-c
lass
dat
abas
e pr
oduc
t, pr
ovid
ing
core
sup
-po
rt f
or X
ML
and
Int
erne
t qu
erie
s.
6.
Hos
t Int
egra
tion
Serv
er 2
000
Hos
t Int
egra
tion
Serv
er
2000
ext
ends
Mic
roso
ft
Win
dow
s to
oth
er s
yste
ms
by p
rovi
ding
app
licat
ion,
da
ta, a
nd n
etw
ork
inte
gra-
tion
. Hos
t Int
egra
tion
Serv
er
lets
you
qui
ckly
ada
pt to
ne
w b
usin
ess
oppo
rtun
ities
w
hile
pre
serv
ing
exis
ting
infr
astr
uctu
re in
vest
men
ts.
Wit
h its
ent
erpr
ise-
clas
s sc
alab
ility
, per
form
ance
, and
re
liabi
lity,
Hos
t Int
egra
tion
Se
rver
can
sup
port
the
mos
t de
man
ding
bus
ines
s ne
eds.
Mic
roso
ft
1.
Ext
endi
ng c
once
pt o
f a
gate
way
: Get
com
pre-
hens
ive
Win
dow
s ap
plic
atio
n in
tegr
atio
n. H
ost
Inte
grat
ion
Serv
er 2
000
prov
ides
hos
t-to
-In
tern
et o
r ho
st-t
o-in
tran
et a
pplic
atio
n de
vel-
opm
ent c
apab
ilitie
s.
2.
Rap
id d
evel
opm
ent:
Hel
p de
velo
pers
qui
ckly
bu
ild d
istr
ibut
ed c
lient
/ser
ver
solu
tion
s th
at d
i-re
ctly
acc
ess
mai
nfra
me
or A
S/40
0 re
sour
ces
wit
hout
req
uiri
ng d
etai
led
know
ledg
e of
or
trai
ning
on
mai
nfra
me
or A
S/40
0 pr
ogra
mm
ing.
3.
Com
plet
e, s
ecur
e ac
cess
to d
ata:
Pro
vide
ob-
ject
-ori
ente
d an
d pr
ogra
mm
atic
acc
ess
to r
ela-
tion
al D
B2
data
and
fla
t file
dat
a on
mai
n-fr
ames
, AS/
400,
UN
IX, W
indo
ws
2000
, and
W
indo
ws
NT
Ser
ver
syst
ems.
Ena
ble
cli-
ent/s
erve
r-ba
sed
appl
icat
ions
to a
cces
s th
is d
ata
tran
spar
entl
y as
if d
ata
wer
e lo
cal t
o th
e se
rver
.
4.
Tra
nsac
tion
and
e-c
omm
erce
sup
port
: Int
egra
te
Mic
roso
ft T
rans
actio
n Se
rver
and
CO
M+
with
IB
M's
CIC
S or
IM
S tr
ansa
ctio
n en
viro
nmen
ts
for
drag
-and
-dro
p si
mpl
icity
to d
istr
ibut
ed,
http
://w
ww
.mic
roso
ft.c
om/h
iser
ver/
def
ault.
asp
40
CM
U/S
EI-
2004
-TR
-023
tran
sact
ion
appl
icat
ion
deve
lopm
ent,
incl
udin
g su
ppor
t for
two-
phas
ed c
omm
it b
etw
een
plat
-fo
rms.
5.
Mic
roso
ft C
omm
erce
Ser
ver
and
Biz
Talk
Se
rver
sup
port
: Int
egra
te w
ith
the
fast
est-
grow
ing
serv
er-b
ased
pla
tfor
ms
for
busi
ness
-to-
cons
umer
and
bus
ines
s-to
-bus
ines
s se
rvic
es
thro
ugh
the
Web
.
6.
Obj
ect-
orie
nted
pro
gram
min
g m
odel
: Rea
p th
e be
nefi
ts o
f ob
ject
-ori
ente
d, d
istr
ibut
ed a
pplic
a-ti
on w
ith
rapi
d de
velo
pmen
t, co
de r
euse
, sim
-pl
er m
aint
enan
ce—
pres
ervi
ng in
vest
men
t in
exis
ting
appl
icat
ions
and
dat
a.
7.
Pla
tfor
m f
or c
ompl
emen
tary
pro
duct
s: W
ork
wit
h a
soft
war
e de
velo
per
kit (
SDK
) to
pro
vide
cu
stom
ized
sol
utio
ns w
ith th
ird-
part
y
prov
ider
s.
7.
Perv
asiv
e D
ata
Junc
tion
Perv
asiv
e D
ata
Junc
tion
ad-
dres
ses
two
clos
ely
rela
ted
and
conv
ergi
ng p
robl
em
dom
ains
in tw
o im
port
ant
way
s. F
irst
, the
tech
nolo
gy
enab
les
the
rapi
d an
d re
li-ab
le c
onst
ruct
ion
of in
ter-
face
s be
twee
n tr
adin
g pa
rt-
ners
; and
, sec
ondl
y, th
e te
chno
logy
use
s th
e sa
me
inte
grat
ion
plat
form
to c
on-
nect
all
of th
e m
ajor
app
lica-
Per
vasi
ve
Solu
tion
s
Perv
asiv
e be
lieve
s th
at a
s th
e co
nver
genc
e be
twee
n B
2Bi a
nd E
AI
deve
lops
, it a
lso
seem
s th
at b
oth
inte
-gr
atio
n ch
alle
nges
can
be
serv
ed b
y a
com
mon
tool
-se
t. D
evel
opin
g, im
plem
entin
g, a
nd m
aint
aini
ng tw
o di
ffer
ent t
ools
ets
sim
ply
cost
s to
o m
uch
and
in-
volv
es r
edun
dant
sol
utio
n ar
chite
ctur
e. T
his
insi
ght
incl
udes
thre
e ba
sic
prec
epts
:
1.
Rap
id a
nd la
rge-
scal
e in
tegr
atio
n ca
n oc
cur
only
via
the
loos
ely
coup
led
exch
ange
of
busi
-ne
ss d
ocum
ents
.
2.
Dis
trib
uted
arc
hite
ctur
es w
ith in
tegr
atio
n en
-
http
://pe
rvas
ive.
co
m/e
ai/
CM
U/S
EI-
2004
-TR
-023
41
tion
s an
d da
ta s
yste
ms
wit
hin
your
ent
erpr
ise.
Thi
s tw
o-in
-one
app
roac
h to
in-
ter-
and
intr
a-en
terp
rise
in-
tegr
atio
n he
lps
keep
cos
ts
dow
n an
d gr
eatl
y si
mpl
ifie
s th
e co
mpl
exiti
es o
f bo
th
B2B
i and
EA
I.
gine
s ar
e re
quir
ed, w
hich
mea
ns th
at in
tegr
a-ti
on o
nly
real
ly o
ccur
s w
hen
all t
he “
edge
s” o
f yo
ur s
yste
ms/
appl
icat
ions
are
fin
ally
co
nnec
ted.
3.
Com
plex
bus
ines
s pr
oces
s au
tom
atio
n an
d in
-te
grat
ion
rely
on
hund
reds
and
thou
sand
s of
st
atel
ess,
ful
ly a
utom
ated
inte
grat
ion
mic
ro
flow
s.
Perv
asiv
e da
ta ju
ncti
on a
ddre
sses
the
abov
e is
sues
.
8.
Mic
roso
ft B
izTa
lk
Serv
er
Biz
Talk
Ser
ver
2002
pro
-vi
des
orga
niza
tions
wit
h th
e se
rver
, too
ls, a
dapt
ers,
and
ve
rtic
al a
ccel
erat
ors
need
ed
to in
tegr
ate
and
auto
mat
e th
eir
busi
ness
es.
Mic
roso
ft
1.
supp
ort f
or S
OA
P V
ersi
on 1
.1
2.
supp
ort f
or X
ML
, XSL
T, S
MT
P, H
TT
P, P
KI
Ver
sion
http
://w
ww
.mic
roso
ft.c
om/b
izta
lk/
9.
IBM
Web
Sphe
re
Bus
ines
s In
tegr
a-ti
on
IBM
Web
Sphe
re® is
the
lead
ing
soft
war
e pl
atfo
rm
for
e-bu
sine
ss o
n de
man
d,
deliv
erin
g a
prov
en, s
ecur
e,
and
relia
ble
soft
war
e
port
folio
.
IBM
1.
IB
M W
ebSp
here
Bus
ines
s In
tegr
atio
n C
onne
ct
V4.
2 al
low
s yo
u to
con
nect
to a
nd in
tegr
ate
wit
h co
mm
unit
ies
of tr
adin
g pa
rtne
rs.
2.
supp
ort f
or X
ML
, mul
tipl
e se
curi
ty s
tand
ards
3.
IBM
Web
Sphe
re B
usin
ess
Inte
grat
ion
Serv
er
allo
ws
you
to in
tegr
ate
busi
ness
pro
cess
es.
http
://w
ww
-30
6.ib
m.c
om
/sof
twar
e/in
fo1
/web
sphe
re
/ind
ex.js
p?ta
b=hi
ghli
ghts
http
://w
ww
-10
6.ib
m.c
om
/dev
elop
erw
orks
/w
ebsp
here
/zon
es
/bus
ines
sint
egra
tion
42
CM
U/S
EI-
2004
-TR
-023
10.
Ens
embl
e E
nsem
ble
is a
com
preh
en-
sive
app
lica
tion
inte
grat
ion
plat
form
that
ena
bles
exc
ep-
tion
ally
fas
t int
egra
tion
and
ex
trem
ely
rapi
d de
velo
p-m
ent o
f co
mpo
site
app
lica-
tion
s. E
nsem
ble
exce
ls a
t bu
ildin
g ne
w s
trat
egic
bus
i-ne
ss s
olut
ions
that
leve
rage
th
e fu
ncti
onal
ity
of e
xist
ing
appl
icat
ions
, orc
hest
rate
ne
w b
usin
ess
proc
esse
s, a
nd
inte
grat
e da
ta a
cros
s th
e
ente
rpri
se.
Inte
rSys
tem
1.
Fu
ll sp
ectr
um in
tegr
atio
n an
d de
velo
pmen
t: E
n-se
mbl
e pr
ovid
es a
uni
fied
gra
phic
al-,
XM
L-,
and
code
-bas
ed d
evel
opm
ent e
nvir
onm
ent f
or b
uild
-in
g cu
stom
ada
pter
s, o
rche
stra
ting
busi
ness
pro
c-es
ses,
and
cre
atin
g co
mpo
site
app
licat
ions
.
2.
Uni
vers
al s
ervi
ce a
rchi
tect
ure:
Ens
embl
e pr
o-vi
des
a co
nsis
tent
and
eff
icie
nt o
bjec
t rep
rese
n-ta
tion
of d
iffe
rent
pro
gram
min
g m
odel
s an
d da
ta f
orm
ats.
3.
Pers
iste
nt o
bjec
t eng
ine:
At i
ts c
ore,
Ens
embl
e us
es a
hig
h-pe
rfor
man
ce d
istr
ibut
ed o
bjec
t da-
taba
se f
or m
anag
ing
and
stor
ing
all m
etad
ata,
m
essa
ges,
and
pro
cess
sta
te in
form
atio
n.
4.
Cus
tom
izab
le e
nd-t
o-en
d m
anag
emen
t and
m
onit
orin
g: E
nsem
ble
prov
ides
hig
hly-
cust
omiz
able
and
ext
ensi
ble
mon
itor
ing
and
man
agem
ent f
acili
ties
that
are
tigh
tly in
tegr
ated
w
ith
the
mod
elin
g an
d de
velo
pmen
t too
ls.
http
://w
ww
.inte
rsys
tem
s.co
m
/ens
embl
e /t
echn
olog
y /i
ndex
.htm
l
11.
JBos
s A
pplic
atio
n Se
rver
JB
oss
is a
Jav
a-ba
sed
open
so
urce
app
licat
ion
serv
er
wit
h su
ppor
t for
J2E
E. T
his
enab
les
rapi
d po
rtin
g of
J2
EE
-bas
ed a
pplic
atio
ns to
th
e fr
ee J
Bos
s se
rver
.
JBos
s su
ppor
ts b
oth
the
con-
stru
ctio
n of
Jav
a-ba
sed
Web
Se
rvic
es a
s w
ell a
s th
e in
te-
grat
ion
of p
ossi
bly
non-
Java
JBos
s G
roup
1.
fu
ll m
icro
kern
el a
ppro
ach
base
d on
Jav
a M
an-
agem
ent e
Xte
nsio
ns (
JMX
)
2.
fully
hot
-dep
loya
ble
and
cycl
eabl
e se
rvic
e la
yer
wit
h Se
rvic
e A
rchi
ve (
SAR
) fo
rmat
3.
fully
aut
omat
ed a
nd n
et-b
ased
inst
alla
tion
wit
h ho
t-de
ploy
of
appl
icat
ions
4.
full
J2E
E 1
.3 s
uppo
rt (E
JB, J
CA
, JSP
, JM
X,
HT
TP,
etc
.)
5.
full
secu
rity
impl
emen
tatio
n an
d JA
AS
inte
gra-
tion
ww
w.jb
oss.
org
CM
U/S
EI-
2004
-TR
-023
43
base
d ex
tern
al W
eb S
ervi
ces
thro
ugh
the
JBos
s.N
et e
x-te
nsio
n. A
spe
cial
foc
us is
pl
aced
on
patte
rns
and
tool
s to
exp
ose
J2E
E™
-bas
ed
logi
c, s
uch
as s
essi
on b
eans
an
d en
tity
bean
s.
6.
full
clus
teri
ng o
f an
y Ja
va o
bjec
ts (
EJB
, HT
TP)
7.
grou
nd-b
reak
ing
Asp
ect-
Ori
ente
d Pr
ogra
mm
ing
(AO
P).
44
CM
U/S
EI-
2004
-TR
-023
CM
U/S
EI-
2004
-TR
-023
45
Ap
pen
dix
B
Too
l Eva
luat
ion
Rep
ort
s
IBM
Web
Sphe
re
Cat
egor
y N
on-T
echn
ical
P
aram
eter
s V
alue
(I
n Sc
ale
of 1
to 1
0)
Rat
iona
le
Bus
ines
s
Cos
ts
Ben
efit
s
Ris
k A
naly
sis
7 C
ost
Mar
ket P
rice
: $1,
000
and
$3,5
00
Ben
efit
s
RO
I
Goo
d R
OI
wit
h th
e to
ol w
hich
is c
lear
fro
m th
e su
cces
s st
orie
s po
sted
on
the
Web
site
.
Lif
espa
n of
the
tool
8.
Cre
ate,
bui
ld, t
est,
depl
oy a
nd p
ublis
h W
eb s
ervi
ces
with
sup
port
for
Uni
vers
al D
escr
iptio
n,
Dis
cove
ry a
nd I
nteg
ratio
n (U
DD
I), V
ersi
on 2
; Sim
ple
Obj
ect A
cces
s Pr
otoc
ol (
SOA
P); W
eb
Serv
ices
Des
crip
tion
Lan
guag
e (W
SDL
); a
nd W
eb S
ervi
ces
Insp
ectio
n L
angu
age
(WSI
L).
Cre
-at
e, v
alid
ate
and
dete
ct W
S-I
Bas
ic P
rofi
le, V
ersi
on 1
.0-
com
plia
nt W
eb s
ervi
ces
for
grea
ter
in-
tero
pera
bilit
y be
twee
n se
rvic
es.
9.
Cre
ate,
test
, and
dep
loy
J2E
E a
pplic
atio
ns to
BE
A W
ebL
ogic
Ser
ver V
6.1
and
V7.
0 us
ing
the
Dep
loym
ent T
oolk
it f
or W
ebSp
here
Stu
dio,
Web
Log
ic E
ditio
n.
10.
Qui
ckly
bui
ld r
ich,
inte
ract
ive
user
inte
rfac
es f
or W
eb a
pplic
atio
ns u
sing
reu
sabl
e Ja
vaSe
rver
Fa
ces
(JSF
)
Ris
k A
naly
sis
1.
Cha
nge
Freq
uenc
y
L
ess
wit
h tw
o re
leas
es in
a y
ear.
2.
Up-
grad
atio
n
46
CM
U/S
EI-
2004
-TR
-023
a.
Eas
y up
-gra
dati
on to
new
rel
ease
s. (
e.g.
, can
eas
ily u
pgra
de th
e W
ebSp
here
Stu
dio
from
5.
1 to
5.1
.1)
Eva
luat
ion
Spec
ific
Pr
ojec
t Spe
cifi
c an
d In
depe
nden
t Fa
ctor
s
Com
pari
son
with
O
ther
Too
ls
7 P
roje
ct S
peci
fic
and
Inde
pend
ent F
acto
rs
1.
prov
ides
com
plet
e de
velo
pmen
t env
iron
men
t for
J2E
E, J
ava,
Web
Ser
vice
s, X
ML
and
Web
2.
prov
ides
Tea
m D
evel
opm
ent e
nvir
onm
ent
3.
prov
ides
Ser
ver
tool
s fo
r te
stin
g
4.
supp
orts
alm
ost 1
0 la
ngua
ges
Com
pari
son
wit
h O
ther
Too
ls
Web
Sphe
re 4
.0 A
dvan
ced
Edi
tion
cost
s ov
er 1
0 tim
es m
ore
than
Mic
roso
ft .N
ET.
For
Web
Ser
vice
Dev
elop
men
t:
IBM
Web
Sphe
re 4
.0 r
equi
res
145%
mor
e m
anua
l cod
ing
than
Vis
ual S
tudi
o .N
ET.
The
fol
low
ing
link
giv
es m
ore
info
rmat
ion
on c
ompa
rati
ve a
naly
sis
of I
BM
Web
Sphe
re w
ith o
ther
to
ols:
http
://w
ww
.got
dotn
et.c
om/t
eam
/com
pare
/web
serv
icec
ompa
re.a
spx
Ext
erna
l R
efer
ence
M
arke
t Aw
aren
ess
8 M
arke
t A
war
enes
s
Tool
is p
opul
ar a
mon
g sm
all-
and
med
ium
-siz
ed o
rgan
izat
ions
and
ther
e ar
e al
mos
t 20
succ
ess
sto-
ries
for
this
tool
list
ed o
n th
e IB
M W
eb s
ite.
http
://w
ww
-30
6.ib
m.c
om/s
oftw
are/
succ
ess/
cssd
b.ns
f/la
test
stor
iesV
W?O
penV
iew
&C
ount
=10
&R
estr
ictT
oCat
egor
y=st
udio
appd
ev
CM
U/S
EI-
2004
-TR
-023
47
Ven
dor
Su
ppor
t
Qua
lity
and
Cos
t of
Ven
dor
Supp
ort
Acc
ess
to I
nter
nal
Tool
Inf
orm
atio
n
Ver
sion
Cho
ice
6 Q
ualit
y an
d C
ost
of V
endo
r Su
ppor
t
Tech
nica
l sup
port
fro
m th
e ve
ndor
is v
ery
good
. (O
ne u
ser
was
not
abl
e to
con
figu
re th
e J2
EE
Uni
t te
st s
erve
r. I
post
ed th
is p
robl
em to
the
tech
nica
l sup
port
and
got
rep
ly th
e ne
xt d
ay.)
Acc
ess
to I
nter
nal T
ool I
nfor
mat
ion
No
acce
ss to
arc
hite
ctur
e an
d de
sign
asp
ects
of
the
tool
Ver
sion
Cho
ice
Web
Sphe
re A
ppli
catio
n D
evel
opm
ent S
tudi
o 5.
1 be
st s
uit t
he r
equi
rem
ents
.
Too
l-Sp
ecif
ic
Inte
grab
ility
and
C
ompa
tibi
lity
Tailo
rabi
lity
Dom
ain
Tool
Int
egri
ty a
nd
Stan
dard
s
Skil
ls b
ase
and
Use
r C
apab
ility
Dat
a C
onfi
gura
-ti
on C
ontr
ol
Tool
Mod
ular
ity
Res
pons
e T
ime
Use
r In
terf
ace
8 In
tegr
abili
ty a
nd C
ompa
tibi
lity
1.
built
on
Ecl
ipse
and
can
be
cust
omiz
ed a
nd e
xten
ded
with
a w
ide
rang
e of
IB
M P
rodu
cts
and
part
ner
and
Ecl
ipse
bas
ed p
lug-
ins.
2.
inte
grat
ion
with
sof
twar
e co
nfig
urat
ion
man
agem
ent t
ools
3.
supp
orts
Win
dow
s an
d L
inux
pla
tfor
m
Tai
lora
bilit
y
Tool
can
be
tailo
red
to th
e us
er r
equi
rem
ents
usi
ng b
uilt
-in
wiz
ards
and
plu
g-in
s.
Dom
ain
Prov
ides
J2E
E, J
ava,
Web
Ser
vice
s, X
ML
, and
Web
Dev
elop
men
t Env
iron
men
t and
als
o pr
ovid
es
rela
tiona
l dat
abas
e to
ols.
Too
l Int
egri
ty a
nd S
tand
ards
1.
Su
ppor
t for
Uni
vers
al D
escr
ipti
on, D
isco
very
and
Int
egra
tion
(U
DD
I), V
ersi
on 2
; SO
AP;
W
SDL
; and
Web
Ser
vice
s In
spec
tion
Lan
guag
e (W
SIL
), J
2EE
2.0
and
3.0
, UM
L, S
QL
J, e
tc.
2.
Tool
is v
ery
relia
ble;
it p
rom
pts
the
erro
r m
essa
ges
as w
hen
user
inpu
ts a
ny v
alue
.
3.
Ven
dor
Mat
urit
y is
qui
te h
igh.
48
CM
U/S
EI-
2004
-TR
-023
Doc
umen
tatio
n
Dat
a Po
rtab
ility
Skill
s B
ase
and
Use
r C
apab
ility
Nor
mal
use
r w
ith
know
ledg
e of
J2E
E, W
eb S
ervi
ces
and
Web
Dev
elop
men
t can
ope
rate
this
tool
. T
he to
ol p
rovi
des
diff
eren
t dev
elop
men
t vie
ws
(UI)
kno
wn
as p
er p
ersp
ecti
ve a
nd p
er te
rmin
olog
y fo
r ea
ch d
evel
opm
ent e
nvir
onm
ent.
For
Exa
mpl
e in
J2E
E p
ersp
ecti
ve th
e to
ol d
ispl
ays
the
J2E
E A
r-ch
itect
ure
Com
pone
nts
on th
e le
ft n
avig
atio
nal b
ar. (
In o
ne c
ase
it to
ok a
wee
k to
get
acq
uain
ted
wit
h th
e ba
sic
feat
ures
pro
vide
d by
the
tool
and
to d
evel
op a
sam
ple
J2E
E a
pplic
atio
n w
hich
add
s M
P3 s
ong
info
rmat
ion
to th
e C
loud
scap
e da
taba
se u
sing
the
Web
inte
rfac
e in
thre
e ho
urs.
)
Con
figu
rati
on C
ontr
ol
App
lica
tion
Dev
elop
er p
rovi
des
mon
itor
ing
and
prof
iling
tool
s th
at f
eatu
res
cust
omiz
able
vie
ws
and
logs
ena
blin
g yo
u to
rec
ogni
ze, i
sola
te, a
nd f
ix p
erfo
rman
ce p
robl
ems
earl
y in
the
deve
lopm
ent c
y-cl
e, s
uppo
rt f
or o
bjec
t lev
el p
rofi
ling,
ana
lysi
s of
Web
Sphe
re A
pplic
atio
n Se
rver
act
ivit
y lo
gs, a
nd
inte
ract
ion
with
the
sym
ptom
dat
abas
e an
d L
og a
nd T
race
Ana
lyze
r.
Too
l Mod
ular
ity
1.
built
on
Ecl
ipse
2.
pr
ovid
es c
ompr
ehen
sive
dev
elop
men
t env
iron
men
t thr
ough
vis
ual t
ools
, tem
plat
es,
code
gen
erat
ion
utili
ties
Use
r In
terf
ace
GU
I ba
sed
deve
lopm
ent m
akes
the
tool
ver
y us
er f
rien
dly.
Hel
pful
err
or m
essa
ges
help
in lo
catin
g th
e ca
use
of e
rror
. R
espo
nse
Tim
e
Perf
orm
ance
of
the
tool
is g
ood.
Use
r In
terf
ace
Doc
umen
tati
on
Tool
is b
undl
ed w
ith s
uffi
cien
t doc
umen
tatio
n. T
he o
ffic
ial W
eb s
ite
prov
ides
tech
nica
l inf
orm
atio
n an
d ha
s lo
ts o
f di
scus
sion
for
ums
to e
lici
t any
kin
d of
info
rmat
ion.
CM
U/S
EI-
2004
-TR
-023
49
Dat
a P
orta
bilit
y
Dat
a ge
nera
ted
by th
e to
ol is
mos
tly
in te
xt f
orm
at w
hich
can
be
view
ed b
y an
y te
xt e
dito
r.
Em
plac
emen
t In
tegr
atio
n w
ith
Oth
er T
ools
7
Inte
grat
ion
wit
h O
ther
Too
ls
1.
Inte
grat
ion
with
sev
eral
Sof
twar
e C
onfi
gura
tion
Man
agem
ent s
olut
ions
; pro
vide
s fl
exib
ility
in
asse
t man
agem
ent a
nd te
am d
evel
opm
ent
2.
Tool
use
s V
ersi
on C
ontr
ol M
anag
emen
t int
erfa
ce p
rovi
ded
by E
clip
se V
2.1
and
an a
dapt
or f
or
IBM
Cle
arC
ase
LT a
nd f
or C
VS.
IBM
Rat
iona
l Rap
id D
evel
oper
Cat
egor
y N
on-T
echn
ical
P
aram
eter
s V
alue
(I
n Sc
ale
of 1
to 1
0)
Rat
iona
le
Bus
ines
s
Cos
ts
Ben
efit
s
Ris
k A
naly
sis
5 C
ost
Mar
ket P
rice
: $ 5
995
per
vers
ion
Ben
efit
s 1.
T
he to
ol h
as e
asy-
to-u
se m
odel
ing
capa
bilit
ies.
2.
Lif
espa
n of
the
tool
a.
The
tool
sup
port
s th
e de
sign
, int
egra
tion,
dep
loym
ent,
cons
truc
tion
of b
usin
ess
appl
ica-
tion
s. I
t aut
omat
es m
any
task
s so
that
dev
elop
ers
focu
s on
hig
hest
val
ue a
reas
. b.
T
he R
apid
Dev
elop
er R
untim
e A
PI
allo
ws
appl
icat
ion
deve
lope
rs to
cre
ate
this
bus
ines
s lo
gic
usin
g a
stan
dard
ized
inte
rfac
e th
at w
orks
und
er a
ll su
ppor
ted
tech
nolo
gies
. c.
R
apid
Dev
elop
er s
uppo
rts
the
desi
gn a
nd c
onst
ruct
ion
of p
ages
, mes
sage
s, c
ompo
nent
s,
and
Web
Ser
vice
s us
ing
eith
er J
2EE
or
MSD
NA
Tec
hnol
ogie
s.
50
CM
U/S
EI-
2004
-TR
-023
Ris
k A
naly
sis
1.
The
tool
is h
ighl
y de
pend
ent o
n R
atio
nal T
ools
, so
the
appl
icat
ion
mus
t be
mod
eled
by
“Ra-
tion
al”
met
hodo
logy
.
Eva
luat
ion
Spec
ific
Pr
ojec
t Spe
cifi
c an
d In
depe
nden
t Fa
ctor
s
Com
pari
son
with
O
ther
Too
ls
5 P
roje
ct S
peci
fic
and
Inde
pend
ent F
acto
rs
The
tool
pro
vide
s “a
rchi
tect
ure-
cent
ric”
dev
elop
men
t env
iron
men
t whi
ch o
nly
depi
cts
a “t
ier-
base
d” v
iew
of
the
entir
e ap
plic
atio
n th
us r
estr
ictin
g th
e us
er to
dev
elop
tier
-bas
ed a
pplic
atio
ns.
Com
pari
son
wit
h O
ther
Too
ls
Mos
t of
the
mod
elin
g fe
atur
es a
re s
ame
as th
ose
in R
atio
nal S
uite
of T
ools
.
Ext
erna
l R
efer
ence
Mar
ket A
war
enes
s
6
Mar
ket
Aw
aren
ess
The
tool
is p
opul
ar a
mon
g di
ffer
ent s
ized
ent
erpr
ises
and
ther
e ar
e su
cces
s st
orie
s w
hich
are
list
ed
on th
e IB
M W
eb s
ite.
Ven
dor
Su
ppor
t
Qua
lity
and
Cos
t of
Ven
dor
Supp
ort
Acc
ess
to I
nter
nal
Tool
Inf
orm
atio
n
Ver
sion
Cho
ice
6 Q
ualit
y an
d C
ost
of V
endo
r Su
ppor
t
Ven
dor
Supp
ort a
nd S
uppo
rtin
g D
ocum
enta
tion
are
reas
onab
le b
ut n
ot te
chni
cally
sou
nd.
Acc
ess
to I
nter
nal T
ool I
nfor
mat
ion
No
acce
ss to
Arc
hite
ctur
e an
d D
esig
n as
pect
s of
the
tool
is a
vaila
ble.
Ver
sion
Cho
ice
Rel
ease
200
3.06
.00.
105.
is s
uita
ble.
Too
l Sp
ecif
ic
Inte
grab
ility
and
C
ompa
tibi
lity
6 In
tegr
abili
ty a
nd C
ompa
tibi
lity
Can
be
inte
grat
ed w
ith R
atio
nal C
lear
Cas
e, R
ose
Dia
gram
s, it
is a
lso
com
pati
ble
wit
h IB
M W
eb-
CM
U/S
EI-
2004
-TR
-023
51
Tailo
r-ab
ility
Dom
ain
Tool
Int
egri
ty a
nd
Stan
dard
s
Skil
ls B
ase
and
Use
r C
apab
ility
Dat
a C
onfi
gura
tion
Con
trol
Tool
Mod
ular
ity
Res
pons
e T
ime
Use
r In
terf
ace
Doc
umen
tatio
n D
ata
Port
abili
ty
Sphe
re A
pplic
atio
n Se
rver
, Ora
cle
9.1
App
licat
ion
Serv
er. H
owev
er, t
here
is a
n ov
er-d
epen
denc
y on
IB
M T
ools
.
Tai
lor-
abili
ty
Tool
can
be
tailo
red
to th
e us
er r
equi
rem
ents
usi
ng te
mpl
ates
and
pat
tern
s.
Dom
ain
Prov
ides
J2E
E, J
ava,
Web
Ser
vice
s, X
ML
, Leg
acy
Serv
ices
, and
Web
Dev
elop
men
t Env
iron
men
t; al
so p
rovi
des
rela
tiona
l dat
abas
e to
ols.
Too
l Int
egri
ty a
nd S
tand
ards
1.
T
he to
ol s
uppo
rts
Uni
vers
al D
escr
iptio
n, D
isco
very
and
Int
egra
tion
(UD
DI)
, Ver
sion
2;
Sim
ple
Obj
ect A
cces
s Pr
otoc
ol (
SOA
P); W
eb S
ervi
ces
Des
crip
tion
Lan
guag
e (W
SDL
); a
nd
Web
Ser
vice
s In
spec
tion
Lan
guag
e (W
SIL
), J
2EE
2.0
and
3.0
, UM
L, S
QL
J, e
tc.
2.
Tool
is r
elia
ble
and
prov
ides
goo
d ex
cept
ion-
hand
ling
fac
ilitie
s.
Skill
s B
ase
and
Use
r C
apab
ility
Any
use
r w
ith k
now
ledg
e of
J2E
E, W
eb S
ervi
ces,
or W
eb D
evel
opm
ent c
an o
pera
te th
is to
ol. T
he
tool
pro
vide
s di
ffer
ent “
arch
itect
s” a
s on
e go
es a
bout
des
igni
ng th
e ap
plic
atio
n. H
owev
er, t
he
know
ledg
e of
lega
cy d
atab
ases
is a
goo
d ad
d-on
in c
ase
the
tool
is to
be
used
for
lega
cy in
tegr
a-ti
on p
urpo
ses.
Con
figu
rati
on C
ontr
ol
The
tool
pro
vide
s fu
nctio
nalit
y fo
r in
terf
acin
g to
a v
ersi
on-c
ontr
ol s
yste
m b
ut d
oes
not h
ave
one
built
in.
Too
l Mod
ular
ity
Prov
ides
com
preh
ensi
ve d
evel
opm
ent e
nvir
onm
ent t
hrou
gh te
mpl
ates
, cod
e ge
nera
tion
utili
ties
, pa
ttern
s, a
nd v
iew
s
Use
r In
terf
ace
52
CM
U/S
EI-
2004
-TR
-023
The
GU
I-ba
sed
func
tiona
lity
is e
asy
to u
se—
spec
ific
ally
the
“tab
s” to
des
ign
the
appl
icat
ion.
Res
pons
e T
ime
Perf
orm
ance
of
the
tool
is r
easo
nabl
y ok
.
Use
r In
terf
ace
Doc
umen
tati
on
The
tool
is b
undl
ed w
ith s
uffi
cien
t doc
umen
tatio
n. T
he I
BM
Web
site
pro
vide
s a
good
res
ourc
e fo
r w
hite
pap
ers,
dem
os, e
valu
atio
n gu
ides
.
Em
plac
emen
t In
tegr
atio
n w
ith
Oth
er T
ools
7
Inte
grat
ion
wit
h O
ther
Too
ls
Inte
grat
es w
ith o
ther
non
-Rat
iona
l-ba
sed
Sour
ce C
ontr
ol S
yste
ms,
but
doe
s no
t int
egra
te w
ith
a w
ide
vari
ety
of a
pplic
atio
ns
LE
IF
Cat
egor
y N
on-T
echn
ical
P
aram
eter
s V
alue
(I
n Sc
ale
of 1
to 1
0)
Rat
iona
le
Bus
ines
s
Cos
ts
Ben
efit
s
Ris
k A
naly
sis
5 C
ost
LE
IF D
evel
oper
Net
wor
k: L
icen
se +
Bas
ic S
uppo
rt
$1,4
95.0
0
LE
IF D
evel
oper
Net
wor
k: L
icen
se +
Pre
miu
m
Supp
ort
$1,7
90.0
0 B
enef
its
Bus
ines
s
CM
U/S
EI-
2004
-TR
-023
53
Eas
e of
use
and
com
para
tivel
y sh
orte
r le
arni
ng c
urve
for
a p
erso
n w
ith d
omai
n kn
owle
dge
RO
I is
muc
h hi
gher
in c
ases
of
appl
icat
ions
dev
elop
ed u
sing
C+
+.
Pro
duct
1.
a
rapi
d de
velo
pmen
t too
l for
cre
atin
g Se
rvic
e or
ient
ed a
pplic
atio
ns in
volv
ing
C+
+
2.
crea
tes
Web
ser
vice
s us
ing
the
exis
ting
lega
cy a
pplic
atio
ns w
itho
ut n
eed
for
mod
ific
atio
n to
th
e ex
istin
g bu
sine
ss lo
gic,
ther
eby
redu
cing
tim
e sp
ent i
n re
wri
ting
the
code
for
the
sam
e
3.
addr
esse
s sc
alab
ility
and
hig
h-pe
rfor
man
ce a
ttrib
utes
of
C+
+ a
pplic
atio
ns.
Ris
k A
naly
sis
App
licat
ion
App
lyin
g se
rvic
e-or
ient
ed d
evel
opm
ent a
nd W
eb s
ervi
ces
only
for
C++
App
lica
tions
Cha
nge
Fre
quen
cy
The
cha
nge
freq
uenc
y is
hig
h si
nce
it is
und
er th
e de
bugg
ing
and
fixi
ng s
tage
of
the
prod
uct.
Al-
thou
gh th
e L
EIF
Ver
sion
2.0
is a
sta
ble
one,
bas
ed o
n w
hich
up-
grad
atio
n ca
n be
don
e, th
e ch
ange
fr
eque
ncy
may
be
high
.
Eva
luat
ion
Spec
ific
Pr
ojec
t Spe
cifi
c an
d In
depe
nden
t Fa
ctor
s
Com
pari
son
with
O
ther
Too
ls
6 P
roje
ct S
peci
fic
and
Inde
pend
ent F
acto
rs
For
the
proj
ect t
hat w
e ha
ve s
elec
ted,
the
“Tra
ding
Bon
d Sy
stem
,” L
EIF
is u
sed
for
conv
ertin
g th
e st
and-
alon
e C
++
app
licat
ion
into
a c
lient
ser
ver
appl
icat
ion.
The
cor
e C
++
fun
ctio
nalit
y is
ex
pose
d th
roug
h a
Web
ser
vice
. It w
as s
peci
fica
lly
desi
gned
to b
ridg
e th
e C
++ a
nd J
ava
gap
and
repr
esen
ted
the
leas
t am
ount
of
wor
k.
Com
pari
son
wit
h O
ther
Too
ls
The
re is
not
muc
h co
mpe
titio
n or
com
pari
son
to b
e m
ade.
sin
ce L
EIF
is o
ne a
mon
g th
e ve
ry f
ew
serv
ice-
orie
nted
rap
id d
evel
opm
ent t
ools
for
C++
app
licat
ions
. The
oth
er to
ol th
at s
uppo
rts
the
sam
e is
IO
NA
Art
ix; b
ut th
e co
mpl
exity
and
the
lear
ning
cur
ve in
volv
ed in
IO
NA
Art
ix a
re
54
CM
U/S
EI-
2004
-TR
-023
grea
ter
than
that
req
uire
d fo
r L
EIF
.
Ext
erna
l R
efer
ence
M
arke
t Aw
aren
ess
6 M
arke
t A
war
enes
s
Rog
ue W
ave
Soft
war
e In
c. is
a le
adin
g pr
ovid
er o
f re
usab
le s
oftw
are
com
pone
nts
and
serv
ices
for
ap
plic
atio
n de
velo
pmen
t. Si
nce
Dec
embe
r 19
, 200
3, it
has
bee
n a
subs
idia
ry o
f Q
uova
dx I
nc.
The
fol
low
ing
hype
rlin
ks a
cces
s th
e va
riou
s pr
ess
rele
ases
, art
icle
s th
at h
ighl
ight
ed th
e pr
oduc
t se
rvic
es o
f R
ogue
Wav
e, a
nd th
e aw
ards
gra
nted
.
http
://w
ww
.rog
uew
ave.
com
/cor
p/pr
ess/
pres
srel
/
http
://w
ww
.rog
uew
ave.
com
/cor
p/pr
ess/
arti
cles
/
http
://w
ww
.rog
uew
ave.
com
/cor
p/pr
ess/
awar
ds/
Tho
ugh
the
com
pany
enj
oys
sign
ific
ant m
arke
t aw
aren
ess,
the
prod
uct i
s st
ill u
nder
exp
erim
ent.
It d
oes
prov
ide
good
cas
e st
udie
s th
at a
re p
rove
n su
cces
s st
orie
s fo
r L
EIF
.
http
://w
ww
.rog
uew
ave.
com
/pro
duct
s/le
if/P
utna
mcs
Ven
dor
Su
ppor
t
Qua
lity
and
Cos
t of
Ven
dor
Supp
ort
Acc
ess
to I
nter
nal
8 Q
ualit
y an
d C
ost
of V
endo
r Su
ppor
t
Use
rs c
an o
btai
n te
chni
cal s
uppo
rt b
y
1.
cont
actin
g te
chni
cal s
uppo
rt
2.
usin
g th
e kn
owle
dge
base
CM
U/S
EI-
2004
-TR
-023
55
Tool
Inf
orm
atio
n
Ver
sion
Cho
ice
3.
acce
ssin
g va
riou
s su
ppor
t pro
gram
s
4.
read
ing
prod
uct d
ocum
enta
tion
“The
res
pons
e ti
me
or th
e tu
rnar
ound
tim
e of
the
LE
IF to
ol v
endo
r su
ppor
t was
one
day
whe
n I
face
d th
e pr
oble
m w
ith
the
gene
ratio
n of
a p
roje
ct.”
http
://w
ww
.rog
uew
ave.
com
/sup
port
/
Acc
ess
to I
nter
nal T
ool I
nfor
mat
ion
The
use
r gu
ide
of th
e L
EIF
Fra
mew
ork
give
s de
taile
d in
form
atio
n ab
out L
EIF
arc
hite
ctur
e w
ith
its
thre
e tie
rs a
nd th
eir
bene
fits
. It a
lso
talk
s ab
out h
ow th
e to
ol is
act
uall
y pr
oces
sing
the
serv
ice-
orie
nted
app
licat
ions
Ver
sion
Cho
ice
Rog
ue W
ave
issu
es th
ree
type
s of
LE
IF p
rodu
ct r
elea
ses:
1.
Mai
nten
ance
(x.
y.z)
rel
ease
s pr
ovid
e bu
g fi
xes
and/
or p
latf
orm
upd
ates
.
2.
Min
or (x
.y.0
) re
leas
es p
rovi
de b
ug f
ixes
, pla
tfor
m u
pdat
es, a
nd m
inor
pro
duct
enh
ance
-m
ents
.
3.
Maj
or (x
.0.0
) re
leas
es p
rovi
de b
ugs
fixe
s, p
latf
orm
upd
ates
, and
maj
or p
rodu
ct e
nhan
ce-
men
ts o
r ne
w f
eatu
res.
The
cur
rent
maj
or v
ersi
on o
r re
leas
e of
LE
IF is
2.0
, whi
ch p
rovi
des
high
ben
efit
s in
term
s of
per
-fo
rman
ce, i
nteg
ratio
n an
d ex
tens
ibili
ty.
http
://w
ww
.rog
uew
ave.
com
/pro
duct
s/le
if/w
hats
new
.cfm
Too
l Sp
ecif
ic
Inte
grab
ility
and
C
ompa
tibi
lity
8 In
tegr
abili
ty a
nd C
ompa
tibi
lity
• B
road
mes
sagi
ng p
atte
rn s
uppo
rt: C
hoos
e th
e ap
prop
riat
e m
essa
ging
pat
tern
fro
m r
e-qu
est/r
espo
nse,
asy
nchr
onou
s (I
OU
), o
ne-w
ay, s
erve
r-si
de n
otif
icat
ion,
and
ser
ver-
side
sol
icit
56
CM
U/S
EI-
2004
-TR
-023
Tailo
r-ab
ility
Dom
ain
Tool
Int
egri
ty a
nd
Stan
dard
s
Skil
ls b
ase
and
Use
r C
apab
ility
Dat
a C
onfi
gura
tion
Con
trol
Tool
Mod
ular
ity
Res
pons
e T
ime
Use
r In
terf
ace
Doc
umen
tatio
n
Dat
a Po
rtab
ility
resp
onse
. Clie
nts
can
liste
n fo
r se
rver
-ini
tiate
d ev
ents
.
• IB
M W
ebSp
here
MQ
™ tr
ansp
ort:
Get
sup
erio
r re
liabi
lity
and
inte
grat
ion
by c
onne
ctin
g L
EIF
se
rvic
es d
irec
tly to
the
mes
sage
que
ue—
no n
eed
for
com
plic
ated
(an
d sl
ow)
brid
ges.
• E
xhau
stiv
e in
tero
pera
bilit
y te
stin
g: P
artic
ipat
ion
in g
roup
s lik
e SO
AP
Bui
lder
s en
sure
s th
at
LE
IF s
ervi
ces
can
be c
oupl
ed w
ith s
ervi
ces
expo
sed
usin
g ot
her
tech
nolo
gies
.
Tai
lora
bilit
y
Bel
ow a
re s
ome
of th
e ch
arac
teri
stic
s of
LE
IF th
at m
akes
the
prod
uct t
ailo
rabl
e.
• E
asily
wri
te c
usto
m tr
ansp
orts
and
ext
end
LE
IF to
wor
k w
ith
virt
ually
any
mid
dlew
are.
• A
dd e
mer
ging
Web
ser
vice
s st
anda
rds
wit
hout
aff
ectin
g th
e bu
sine
ss lo
gic
of th
e se
rvic
e.
• C
hang
e de
ploy
men
t beh
avio
r, in
sert
tran
spor
ts, o
r m
odif
y m
essa
ge h
andl
ers
wit
hout
cha
ngin
g th
e se
rvic
e co
de.
Dom
ain
LE
IF is
bas
ed o
n in
dust
ry-s
tand
ard
netw
orki
ng, X
ML
, and
Web
ser
vice
s te
chno
logi
es. I
n pa
rtic
u-la
r, L
EIF
pro
vide
s st
rong
sup
port
for
XM
L a
s a
med
ium
of
data
exc
hang
e, e
nabl
ing
inte
rpro
cess
co
mm
unic
atio
n th
at s
pans
pla
tfor
ms
and
lang
uage
s. L
EIF
fit
s w
ell i
nto
the
serv
ices
-ori
ente
d ar
-ch
itect
ure
(SO
A)
appr
oach
to a
pplic
atio
n de
velo
pmen
t.
Too
l Int
egri
ty a
nd S
tand
ards
(as
per
the
Use
r G
uide
Inf
orm
atio
n)
LE
IF p
rodu
cts
conf
orm
to th
e fo
llow
ing
stan
dard
s:
• T
he L
EIF
Web
ser
vice
cod
e ge
nera
tor
uses
WSD
L 1
.1 .
• L
EIF
pro
vide
s do
cum
ents
to c
reat
e co
mpo
nent
s. T
he c
ompo
nent
s pr
oduc
e SO
AP
that
com
-pl
ies
with
the
SOA
P 1.
1 sp
ecif
icat
ion.
• T
he L
EIF
XM
L d
ata
bind
ing
supp
orts
the
mos
t com
mon
and
use
ful f
eatu
res
of th
e M
ay 2
001
CM
U/S
EI-
2004
-TR
-023
57
XM
L S
chem
a re
com
men
dati
on.
• T
he L
EIF
Web
ser
vice
s co
ntai
ner
clos
ely
follo
ws
the
Java
Ser
vlet
spe
cifi
cati
on. H
owev
er, t
he
spec
ific
atio
n re
quir
es th
at a
n im
plem
enta
tion
be w
ritte
n in
the
Java
lang
uage
. The
refo
re, a
C
++
impl
emen
tatio
n ca
nnot
str
ictly
con
form
to a
ll fe
atur
es o
f th
e sp
ecif
icat
ion.
The
Bob
cat
Ref
eren
ce G
uide
con
tain
s in
form
atio
n on
dif
fere
nces
in in
divi
dual
cla
sses
.
• L
EIF
par
ticip
ates
in th
e SO
AP
Bui
lder
s in
itiat
ive
aim
ed a
t gua
rant
eein
g in
tero
pera
bilit
y am
ong
SOA
P im
plem
enta
tions
. To
view
the
Rog
ue W
ave
test
WSD
Ls,
vis
it w
ww
.whi
tem
esa.
com
/inte
rop.
htm
. In
addi
tion,
LE
IF is
ext
ensi
vely
test
ed a
gain
st th
e m
ost
freq
uent
ly u
sed
Java
and
Win
dow
s-ba
sed
(.N
ET
) im
plem
enta
tion
s of
Web
ser
vice
s.
Skill
s B
ase
and
Use
r C
apab
ility
The
use
r ca
pabi
lity
and
skill
s ba
se r
equi
res
the
user
to b
e aw
are
of th
e W
eb s
ervi
ce a
ppli
catio
ns
and
serv
ice-
orie
nted
arc
hite
ctur
e an
d al
so b
e ca
pabl
e of
cre
atin
g th
e W
SDL
for
the
appl
icat
ion
who
se s
ervi
ce h
as to
be
crea
ted.
Con
figu
rati
on C
ontr
ol
The
con
figu
ratio
n an
d th
e de
velo
pmen
t env
iron
men
t set
up
are
wel
l exp
lain
ed in
the
user
gui
de o
f th
e L
EIF
. It s
pans
acr
oss
thre
e st
eps:
• Se
t RW
_HO
ME
(U
NIX
/Lin
ux o
nly)
.
• R
un le
ifva
rs.
• E
nsur
e th
e pr
esen
ce o
f a
JRE
.
Too
l Mod
ular
ity
The
tool
is n
ot h
ighl
y m
odul
ariz
ed; i
t dep
icts
a th
ree-
tier i
nter
face
for t
he S
OA
to b
e de
velo
ped.
Use
r In
terf
ace
A s
impl
e an
d ch
aste
use
r in
terf
ace
of L
EIF
mak
es th
e w
ork
of th
e to
ol e
asily
und
erst
anda
ble
and
also
red
uces
the
com
plex
ity in
volv
ed in
the
user
inte
ract
ion.
58
CM
U/S
EI-
2004
-TR
-023
Res
pons
e T
ime
Fast
est a
vaila
ble
proc
essi
ng o
f W
eb s
ervi
ce m
essa
ges
- up
to 3
00%
net
per
form
ance
gai
n ov
er th
e pr
evio
us r
elea
se L
EIF
1.2
!
Use
r In
terf
ace
Doc
umen
tati
on
LE
IF o
ffer
s a
stan
dard
use
r in
terf
ace
docu
men
tatio
n.
http
://w
ww
.rog
uew
ave.
com
/pro
duct
s/le
if/g
ui.c
fm
Em
plac
emen
t In
tegr
atio
n w
ith
Oth
er T
ools
7
Inte
grat
ion
wit
h O
ther
Too
ls
LE
IF in
clud
es a
ver
sion
of
the
Apa
che
HT
TP
Serv
er o
r M
icro
soft
IIS
pre
conf
igur
ed f
or u
se w
ith
LE
IF in
a d
evel
opm
ent e
nvir
onm
ent.
LE
IF is
cer
tifie
d to
use
Xal
an J
ava
2.4.
1 an
d X
erce
s-J
2.3.
0 fo
r al
l sup
port
ed v
ersi
ons
of th
e JD
K.
Inst
allin
g L
EIF
req
uire
s su
ppor
t of
the
foll
owin
g so
ftw
are,
bas
ed o
n th
e op
erat
ing
syst
em:
• V
isua
l Stu
dio
.NE
T 2
003
• Su
n O
NE
Stu
dio
8
• gc
c 3.
2.3
CMU/SEI-2004-TR-023 59
Appendix C Model Problem and Analysis
The model problem chosen for this project was described as follows:
A major Wall Street investment bank sets out to build a bond pricing system in an effort to stream-line the workflow of its bond trading desk. Currently, bond traders have to send prices for a large number of bonds to several different trading venues, each with its own user interface.
The system that solves the above problem must also minimize the minutiae of pricing all the bonds and provide advanced analytic functionality specific to the bond markets. These capabilities must be provided through a single encapsulated interface.
Classification Scheme Approach
Step 1: Read the problem statement and identify functional and non-functional requirements.
The following requirements can be inferred from the above problem statement:
1. high user interaction
2. integration with the legacy system
3. communication and data exchange mechanism for component2 interaction
4. communication between the C++ and the JAVA applications
Step 2: Map the requirements identified to the integration mechanism, which forms the classifi-cation parameters to be identified in the rapid integration tools.
Analysis of the Functional Requirements
For each of the requirements a specific integration mechanism is suggested as a solution. The mecha-nism will be specific to the particular application. Therefore, the integration mechanisms specified below cannot be generalized for all applications.
2 Here we mean the three components specified by the application: Market Data, Analytics Configuration
and Contribution Server [legacy servers].
60 CMU/SEI-2004-TR-023
Requirements Solutions Integration Mechanism Required
High User Interac-tion
Traders need a very responsive application.
Client application as a Java thick client because of Java’s platform independence and its ability to quickly respond to user input and market data
None
Integration with the legacy system
On the server side, it will inherit leg-acy C++ compo-nents that the sys-tem will utilize. Also, the market data components communicate with the TIBCO3 In-formation Bus (TIB) messaging infrastructure
The following components are to be integrated:
• Market Data Price Feed Server: publishes incom-ing market data to the TIB
• Analytics Engine: performs analytics on incoming market data and broadcasts the modified market data to the TIB
• Contribution Server: performs all communication with trading venues. The trading venues are third- party components not controlled by the bank.
Figure 8: Legacy Market Data Subsystem
JAVA to C++ Translator (Java thick Client talking with C++ Legacy Servers)
3 TIBCO means standard industry-specific messaging infrastructure component.
CMU/SEI-2004-TR-023 61
Figure 9: Legacy Contribution Subsystem
62 CMU/SEI-2004-TR-023
Communication and data exchange mechanism for component4 inter-action
Communication and Data exchange mechanism between sub-components (Thick Client, Market Data and Contribution)
Two gateways to communicate with the legacy servers:
• Pricing Gateway for market data
• Contribution Gateway for sending prices to trading vendors
For instance: With Messaging, we can define separate channels for the different types of pricing data. Then, when a Gateway gets a new piece of data, it will add a message containing that data to the Publish-Subscribe Channel for that data type. Meanwhile, all clients inter-ested in a certain type of data will listen on the channel for that type. In this way, the Gateways can easily send out new data to whoever is interested, without needing to know how many listener applications there are or what they are.
Single point of access through Gateways Mes-saging, Publish and Sub-scribe Channel, JMS (as components are written in JAVA)
Communication between the C++ and the JAVA ap-plication
How to connect the JMS with the standalone C++
Cross language (C++ and JAVA) Messaging Bridge using a combination of Channel Adapters and CORBA.
Messaging Bridge, Chan-nel Adapters and Commu-nication Vehicle between Adapters
4 Here we mean the three components specified by the application, that is, Market Data, Analytics Configu-
ration and Contribution server [Legacy Servers].
CMU/SEI-2004-TR-023 63
Contribution server and the TIBCO based Market Data and Analytics Engine servers?
Analysis of the Non-Functional Requirements Non-functional Requirement
Description
Performance
Here it refers to the scalabil-ity, which can be measured as the number of users it can scale to without noticeable decrease in response time.
One Channel per trader per Bond: Create one Message Channel per-trader per-bond solely for the modified market data of that bond. For example, the market data for bond ABC would be published on channel “Bond ABC” while the modified market data for trader A would be pub-lished on Message Channel “Trader A, Bond ABC,” modified market data for trader B on “Trader B, Bond ABC,” and so on.
64 CMU/SEI-2004-TR-023
Cost
Custom development effort for integration
Effort: 47 person-months for developing the integration components (Refer to Appendix C: Trading Bond COCOTS Estimation Details.)
Hardware/Software Requirements
Below are the hardware and software requirements regarding compo-nents.
1. Analytic Engine and Contribution Server
a. a high-end server class machine with minimum of 512 Mb of RAM
b. Windows 2000 server
2. Traders Desktop Machine (Client):
a. Windows NT, Solaris b. 128 MB of RAM c. Java Virtual Machine
3. TIBCO Information BUS Messaging infrastructure
4. Market Data Price Feed Server
Impacts/Change Analysis on Architecture
The high-level architecture of the system is represented in Figure 10.
CMU/SEI-2004-TR-023 65
Figure 10: Logical View of the System
1. TIBCO Information Bus Messaging infrastructure has been selected to achieve three-way com-munications between Market Data Feed Server, Analytics Engine and Pricing Gateway as shown in Figure 10.
2. Two Java Gateways are used to provide communication between the Market Data Feed Server and the Trading Venues:
a. Pricing Gateway for Market Data Feed Server b. Contribution Server for sending prices to Trader Venues
3. Message Bridge is used to provide communication between JMS used to provide communication between Pricing and Contribution Gateways and TIB (TIBCO Information Bus). This message bridge has C++ and Java Adapters and these adapters communicate with each other through CORBA.
Constraints and Assumptions Made about the Components 1. The system inherits C++ legacy components namely: Market Data Feed Server and Contribution
Server.
2. The system also uses TIBCO Information Bus Messaging Infrastructure as a third-party component.
3. The traders’ venue desktop can run on Windows NT or Solaris Operating System.
66 CMU/SEI-2004-TR-023
Step 3: List the integration mechanisms which are the classification parameters and categorize them into primitive classification types. Categorization of Classification Parameters
Integration Patterns (Primitive Classification Type Parameters)
Primitive Classification Type
Legacy Translator (Java thick Client talking with C++ Legacy Servers)
Legacy Integration
Gateways Application Integration
Messaging (JMS) Middleware Integration
Publish and Subscribe Channel Middleware Integration
Messaging Bridge Application Integration
Channel Bridge Application Integration
Communication Vehicle between Adapters Application Integration
From this table we can infer that the current scenario is a composite of three primitive classification types, namely
• Legacy Integration
• Application Integration
• Middleware Integration
Step 4: Identify the rapid integration tools needed to quickly solve this problem.
In this step we try to represent the scenario as a set of classification parameters. Here we have the integration mechanisms that serve as the classification parameters.
Mathematically, scenario can be expressed as
Scenario1 = {Legacy Translator, Gateways, Messaging (JMS), Publish & Subscribe Channel, Mes-saging Bridge, Channel Bridge, Communication Vehicle between Adapters}
The parameters identified using this scenario form the elements of the primitive classification type.
1. Legacy Integration = {Legacy Translator}
2. Application Integration = {Gateways, Messaging Bridge, Channel Bridge, Communication Ve-hicle between Adapters}
3. Middleware Integration = {Messaging (JMS), Publish and Subscribe Channel}
CMU/SEI-2004-TR-023 67
For the current scenario the parameters assume following values:
1. Legacy Translator=“Java to C++ Translator”
2. Gateways = “Java Gateways”
3. Messaging Bridge=“Bridge C++ Messaging system to JAVA Messaging System”
4. Channel Bridge=“C++ TIB Adapter & JMS Adapter”
5. Communication Vehicle between Adapters =“CORBA”
6. Messaging (JMS) =“IBM MQ Series”
7. Publish and Subscribe Channel=“Channel for different types of pricing data with Gateways as Publisher and Clients as Subscriber”
From the analysis done to classify the rapid integration tool we determine it to be a set of the combi-nations of the primitive classification types:
RIT for Scenario = {Legacy, Application, Middleware}
Similarly when we generalize it
RIT for Scenarion = {Primitive Classification Type *}
Step 5: Select tools.
Through use of the Tool Classification Matrix the following tools are identified to support this inte-gration.
1. Microsoft BizTalk Server
2. IBM WebSphere
3. Pervasive Data Junction
68 CMU/SEI-2004-TR-023
Tools Classification Matrix
Name of the Tool Classification based on Primitive Integration Types
Leg
acy
Inte
grat
ion
Mid
dlew
are
Inte
grat
ion
Serv
ice-
Ori
ente
d In
tegr
a-ti
on
App
licat
ion
Inte
grat
ion
Web
-Bas
ed I
nteg
rati
on
Pervasive Data Junction
RogueWave's LEIF
IBM Rational Rapid Developer
Microsoft SQL Server
Host Integration Server
Microsoft BizTalk Server
IBM WebSphere Business Integration
Artix Relay
Artix Encompass
Artix Mainframe
PiiE Smart Client
PiiE Fusion Server
InterSystem Ensemble
Jboss
CMU/SEI-2004-TR-023 69
Appendix D Commercial Off-the-Shelf Components
This section describes the Customized Dukascopy Data Feed Components (CDDF). http://www.dukascopy.com/english/ddf_main/rdata/
Java Feeder Component: The Feeder components are commercial off-the-shelf (COTS) products provided by Dukascopy. These components connect themselves to Dukascopy Market Machine data source and supply data every 10 seconds to the software application connected to it. Dukascopy Market Machine data source supplies data on liquid trading instruments.
The data has the following format: stockId – integer Value – double tickVolume – integer (on every instrument) where stockID is the ID of trading instrument set by the user Value is an average 10 sec price value.
Besides providing real-time data, this component can also transfer historical data going back three days (nearly 22000 of 10 sec ticks) that can be used to fill in occasional gaps in the database.
Component Specification:
The Feeder component provides interfaces and methods listed below. These can be used by the appli-cation program to capture the data collected by this component from Dukascopy Market Machine data source:
1. DataListener Interface
onNewTick(int id, double value, int volume): This method provides the data that is fetched from the Dukascopy Market Machine data source.
2. TickerListener Interface
a. onNewTick(int id, double value, int volume): This method provides the data that is fetched from the Dukascopy Market Machine data source.
b. onNewConnection(Connector conn)
3. addQuote(int id, String code) method in FeederConnector Class: This method allows the applica-tion program to add a specific trading instrument for which the data has to be collected.
4. removeQuote(String code) method in FeederConnector Class: This method allows the applica-tion program to remove a specific trading instrument for which the data has to be collected.
70 CMU/SEI-2004-TR-023
5. setDataListener(DataListener dl)) method in FeederConnector Class: This method provides the data that is fetched from the Dukascopy Market Machine data source. It eventually uses the on-NewTick(int id, double value, int volume) method to get the data.
6. connect() method in FeederConnector: This method initiates the connection of this component to the Dukascopy Market Machine data source.
Figure 11 below shows the interfaces and methods within those interfaces which are accessible to external programs.
Figure 11: Feeder Component Specification
Component Realization:
The feeder component is implemented using the following Java classes and interfaces.
1. FeederConnector
2. ConnectorWorker
3. Connector: Protocol realization
4. DataListener: Client interface for working with data
5. TickerListener
6. TickerWorker
Connector
DataListener
onNewTick()
TickerWorker
setListener()onNewConnection()onNewData() onNewCommand()
TickerListener
onNewTick() onNewConnection()
FeederConnector
addQuote(int id, String code) removeQuote(String code) setDataListener(DataListener dl) connect()
CMU/SEI-2004-TR-023 71
VC++ MarketDataFeed Component:
The following are the VC++ files that define the responsibility of the VC++ Component:
1. CConn.vcproj
This is the main project file for VC++ projects generated using an Application Wizard. It con-tains information about the version of Visual C++ that generated the file and information about the platforms, configurations, and project features selected with the Application Wizard.
2. CConn.idl
This file contains the IDL definitions of the type library, the interfaces and co-classes defined in the project. This file will be processed by the MIDL compiler to generate
C++ interface definitions and GUID declarations (CConn.h)
3. CCoCConn.vcproj
This is the main project file for VC++ projects generated using an Application Wizard. It con-tains information about the version of Visual C++ that generated the file, and information about the platforms, configurations, and project features selected with the Application Wizard.
4. CConn.idl
This file contains the IDL definitions of the type library, the interfaces and co-classes defined in the project.
DataListener DataListener
Connector Connector
Worker
TickerWorker
TickerListener TickerListener
72 CMU/SEI-2004-TR-023
This file will be processed by the MIDL compiler to generate the following:
C++ interface definitions and GUID declarations
(CConn.h)
GUID definitions (CConn_i.c)
A type library (CConn.tlb)
Marshaling code (CConn_p.c and dlldata.c)
5. CConn.h
This file contains the C++ interface definitions and GUID declarations of the items defined in CConn.idl. It will be regenerated by MIDL during compilation.
6. CConn.cpp
This file contains the object map and the implementation of your DLL's exports.
7. CConn.rc
This is a listing of all of the Microsoft Windows resources that the program uses.
8. CConn.def
This module-definition file provides the linker with information about the exports required by the DLL. It contains exports for
DllGetClassObject DllCanUnloadNow GetProxyDllInfo DllRegisterServer DllUnregisterServer
Other standard files
9. StdAfx.h, StdAfx.cpp
These files are used to build a precompiled header (PCH) file named CConn.pch and a precom-piled types file named StdAfx.obj.
10. Resource.h
This is the standard header file that defines resource IDs: Proxy/stub DLL project and module definition file.
11. CConnps.vcproj
This file is the project file for building a proxy/stub DLL if necessary.
The IDL file in the main project must contain at least one interface and you must first compile the IDL file before building the proxy/stub DLL. This process generates dlldata.c, CConn_i.c and CConn_p.c , which are required to build the proxy/stub DLL.
CMU/SEI-2004-TR-023 73
12. CConnps.def
This module definition file provides the linker with information about the exports required by the proxy/stub.
Other notes:
The MFC Support option builds the Microsoft Foundation Class libraries into your skeleton applica-tion, making MFC classes, objects and functions available to you.
Issues 1. If the client process is not killed properly, the Java component will still deliver the data to the
client application. This state prevents the client application from re-establishing the lost connec-tion to properly terminate the data stream.
74 CMU/SEI-2004-TR-023
CMU/SEI-2004-TR-023 75
Appendix E Trading Bond System COCOTS Estimation Details
The approach followed is strictly based on the COCOTS estimation model proposed by Christopher M. Abts and Barry W. Boehm [Abst 00]. The standard COCOTS calibration tables are used for the calibrated parameter values for each cost driver in the model. The corresponding parameter value for each driver is fed into the spreadsheet tool—COCOTS calculator.
Assumptions 1. The values of very high, low, and so forth, have been determined based on a heuristic approach
rather than on previous data collection.
2. The KSLOC is assumed to be based on the programming experience of the team with the prior knowledge of the domain addressed here. The SLOC for developing a glue code for integrating the C++ and Java Components using JNI is found to be approximately 1000 SLOC [1 KSLOC].
The component that is the glue code for the integrating C++ and Java is assumed to be devel-oped using JNI. We realize that the excerpts taken from the article on Junc++ion (http://www.codemesh.com/en/CodemeshWhitepaper.pdf ) demonstrate that JNI requires a huge number of lines of code.
“If the programmer were trying to write an application to display a Java Swing dialog box from C++ and store the user’s input in C++ using JNI to communicate between C++ and Java, about 200 lines of JNI code would be required.”
3. Since there are no real-world customers, there is a very minimal requirement change for this in-tegration scenario and hence the BRAK % is assumed to be 1.
4. The Normal Labor Cost here refers to the Software Engineers in any company that will be in-volved in the development.
Constraints
Currently, we have one option for C++ and Java components. Also, the Trading Bond System here addressed is restricted to the legacy integration of components
Cost Drivers Selection
The following table presents the values selected and the reasons for their selection for the various cost drivers of the COCOTS estimation model.
76 CMU/SEI-2004-TR-023
Category Cost Drivers Value Why?
Integration Personal Drivers
1 COTS Integrator Ex-perience with Product
VL Two months of experience with the products
2 COTS Integrator Per-sonnel Capability
L Two months of experience with the domain
3 Integrator Experience with COTS Integration Processes
L Organizational level [Professional Development Cen-ter] process for COTS integration is not defined.
4 Integrator Personnel Continuity
N There will be a rotation of people every year in the Professional Development Center, as it is an educa-tional environment.
COTS Component Drivers
1 COTS Product Maturity H The product has high time on market.
2 COTS Supplier Product Extension Willingness
L The products we consider here are standard C++ and Java components available on the net; hence the num-ber and nature of changes are very minimal.
3 COTS Product Interface Complexity
N Since most of the APIs of the components are well de-fined, consistently applied, and clear, they can easily be used to interface with the glue code.
4 COTS Supplier Product Support
H The level of available support is high; a detailed ex-planation of the components to be integrated is available.
5 COTS Supplier Pro-vided Training and Documentation
N Nominal documentation is provided for the scenario considered here.
6 COTS Product Volatility L Only one release is expected.
CMU/SEI-2004-TR-023 77
Application/System Drivers
1 Constraints on System/Subsystem Reliability
N This is not a mission-critical system; there are backup servers to recover the lost data.
2 Application Interface Complexity.
L Use of standard communication mechanisms such as APIs reduces the application interface complexity.
3 Constraints on System/Subsystem Technical Performance
VH The analytic engine handles the real-time market data and feeds it to trader’s desktop.
4 System Portability VH The traders’ desktops might be running on different operating systems.
Nonlinear Scale Factor
1 Application Architec-tural Engineering
L Simple paper Analysis of the architecture of the system will be done for the currently selected scenario.
78
CM
U/S
EI-
2004
-TR
-023
CO
TS
Inte
grat
or C
alcu
lato
r
CM
U-W
est
C
OT
S In
tegr
atio
n C
ost
Cal
cula
tor
V2.
0
(C
OC
OT
S G
lue
Cod
e Su
b-m
odel
)
Cal
i-br
atio
n T
able
s:
Dri
ver
R
atin
g 1
2 3
4 5
6 7
8 9
10
11
12
13
14
AC
IEP
A
CIP
C
AX
ICP
A
PC
ON
A
CP
MT
A
CSE
W
AP
CP
X
AC
PP
S A
CP
TD
A
PV
OL
A
CR
EL
A
AC
PX
A
CP
ER
A
SPR
T
V
L
1.34
1.
60
1.
58
1.45
1.20
0.
71
L
1.
16
1.27
1.
12
1.26
1.
20
1.07
0.
82
1.14
1.
09
0.84
0.
88
0.84
N
1.
00
1.00
1.
00
1.00
1.
00
1.00
1.
00
1.00
1.
00
1.00
1.
00
1.00
1.
00
1.00
H
0.
86
0.79
0.
89
0.80
0.
83
0.94
1.
22
0.88
0.
91
1.19
1.
14
1.19
1.
11
1.07
V
H
0.75
0.
62
0.79
0.
63
0.69
0.
88
1.48
0.
77
0.84
1.
33
1.30
1.
42
1.22
1.
14
L
inea
r Sc
alin
g F
acto
r
Non
linea
r Sc
alin
g F
acto
r
A
AA
RE
N
12
.0
VL
L
N
H
V
H
CM
U/S
EI-
2004
-TR
-023
79
4.
00
3.00
2.
00
1.00
0.
00
Inpu
ts:
Dri
ver
1 2
3 4
5 6
7 8
9 10
11
12
13
14
AC
IEP
A
CIP
C
AX
IC P
AP
CO
N
AC
PM
T
AC
SEW
A
PC
PX
A
CP
PS
AC
PT
D
AP
VO
L
AC
RE
L
AA
CP
X
AC
PE
R
ASP
RT
V
alue
1.
34
1.27
1.
12
1.00
0.
83
1.07
1.
00
0.88
1.
00
0.84
1.
00
0.84
1.
22
1.14
Sc
alin
g F
acto
r
Si
zing
Lab
or C
ost
A
AR
EN
K
SLO
C
BR
AK
(%)
R
ate
($/P
r-m
t)
Val
ue
3.
00
1.
00
1
7000
.00
Out
puts
:
E
SIZ
E
B
EM
1-14
Est
imat
ed E
ffor
t (P
rs-m
ts)
Est
imat
ed C
ost
($)
1.
01
1.00
1.
46
17
.63
$1
23,4
07
80
CM
U/S
EI-
2004
-TR
-023
CMU/SEI-2004-TR-023 81
Appendix F Project Details
This appendix contains the detailed work breakdown structure (WBS) and project details.
Estimated Effort hours: 3x10x24 = 720 person hours
No. of Team members = three No. of hours per week per team member = 10 hours No. of months = six (equivalent to 24 weeks)
Project Planned Start Date: Fri 1/23/04 Project Planned Finish Date: Wed 6/23/04
The overall schedule of the planned project is given in detail in WBS. Here we illustrate with a sim-ple timeline the overall schedule of the project.
Planned Schedule Project Start Project End
▼ ▼Jan 04 Feb 04 Mar 04 Apr 04 May 04 Jun 04
▲ Milestone 1
▲ Milestone 2
Actual Schedule Project Start Project End
▼ ▼Jan 04 Feb 04 Mar 04 Apr 04 May 04 Jun 04 Jul 04
▲ Milestone 1
▲ Milestone 2
• Project Start denotes the actual project start date of the rapid integration tools project.
• Milestone 1 implies the completion of Task1 - This included identification of tools and coming up with a classification scheme for them.
• Milestone 2 denotes the completion of Task2 - This includes identifying the model problem and getting hands on experience in evaluating the tools which would help in solving the model problem.
82 CMU/SEI-2004-TR-023
• Project End denotes the submission of the evaluation results in the form of a technical report and expressing the process of evaluation as a framework that can be extended to any model problem.
The line in the actual schedule denotes where we were when we were writing this technical report.
Similarly, the estimated effort into the project also increased from 720 person hours to 840 person hours.
Estimation:
The above WBS is based on the rapid integration tools document provided by the SEI before the start of the project. The project is divided into three tasks which have deliverables associated with each of them. The milestones are based completely on the three tasks. Each Task was allocated two months out of the total six months for the project.
Actual Progress:
However, as shown in the actual progress timeline, Task 1 took almost three months for completion, Task 2 took another three months to complete, and Task 3 is currently underway at the time of writing this report.
The primary reasons for schedule slippage are multiple commitments of team members on other pro-jects, and the fewer number of hours allocated for the elective.
Table 8: Milestones and Schedule of the Project
Milestones Expected Date Revised Date of Submission
Actual Date of Submission
Task 1 - Survey and clas-sify the tools-
• List of Rapid Integra-tion Tools
2/5/2004 6/7/2004 5/18/2004
• Classification Scheme 2/17/2004 6/09/2004 6/5/2004
• Classified List of Tools
3/02/2004 6/10/2004 6/5/2004
Task 2 - Evaluate the tools using a model problem
• Preliminary Evalua-tion Scheme
3/19/2004 6/16/2004
• Model Problem Defi-nition
4/26/2004 6/16/2004 5/18/2004
CMU/SEI-2004-TR-023 83
• Reports detailing evaluation of tools’ applicability to the model problem
5/11/2004 6/24/2004 5/18/2004
Task 3 - Develop and document general evalua-tion criteria
• Documented evalua-tion criteria for rapid integration tools
6/1/2004 5/28/2004
84 CMU/SEI-2004-TR-023
CMU/SEI-2004-TR-023 85
Glossary of Technical Terms
Term Description
EAI “Acronym for enterprise application integration. EAI is the unrestricted sharing of data and business processes throughout the networked applications or data sources in an or-ganization. Early software programs in areas such as inventory control, human re-sources, sales automation and database management were designed to run independ-ently, with no interaction between the systems. They were custom built in the technology of the day for a specific need being addressed and were often proprietary systems. As enterprises grow and recognize the need for their information and applica-tions to have the ability to be transferred across and shared between systems, companies are investing in EAI in order to streamline processes and keep all the elements of the enterprise interconnected.
There are four major categories of EAI:
1. Database linking: databases share information and duplicate information as needed.
2. Application linking: the enterprise shares business processes and data between two or more applications.
3. Data warehousing: data is extracted from a variety of data sources and channeled into a specific database for analysis.
4. Common virtual system: the pinnacle of EAI; all aspects of enterprise computing are tied together so that they appear as a unified application.”
http://www.webopedia.com/TERM/E/EAI.html
B2Bi Business-to-Business Integration
Legacy Sys-tem
“A computer system or application program which continues to be used because of the cost of replacing or redesigning it and often despite its poor competitiveness and com-patibility with modern equivalents. The implication is that the system is large, mono-lithic and difficult to modify”
http://computing-dictionary.thefreedictionary.com/Legacy%20system
Adapters “Adapters and Connectors are pieces of software that are used in the integration of com-ponent-based applications and serve as a “wrapper“ that mediates access to an applica-tion that was not developed with integration in mind, including legacy applications”
86 CMU/SEI-2004-TR-023
http://eai.ittoolbox.com/nav/t.asp?t=346&p=347&h1=346&h2=347
Service-Oriented Inte-gration
“Service-Oriented Integration (SOI) leverages open standards, loose coupling, and dy-namic description and discovery capabilities of Web Services to reduce the complexity, cost, and risk of integration.”
http://www.zapthink.com/cluster.html?id=soi
Web Services “Web Services refers to the technologies that allow for making connections. Services are what you connect together using Web Services. A service is the endpoint of a connec-tion. Also, a service has some type of underlying computer system that supports the connection offered. The combination of services—internal and external to an organiza-tion—make up a service-oriented architecture.”
http://www.service-architecture.com/web-services/articles/web_services_definition.html
ALE Stands for Application Embedding and Linking. “ALE allows behaviors between com-ponents and applications to be linked on a single-screen. Users are able to drill within applications, as well as from one application to another, without changing focus.
ALE overcomes the limitations of HTML-based Web applications where any embedded link typically brings up a new page with no contextual link between the various Web pages.”
http://www.dharbor.com/products/psc_feat.html
JMX “Java Management Extensions (JMX) technology provides the tools for building dis-tributed, Web-based, modular and dynamic solutions for managing and monitoring de-vices, applications, and service-driven networks. By design, this standard is suitable for adapting legacy systems, implementing new management and monitoring solutions, and plugging into those of the future “
http://java.sun.com/products/JavaManagement/
CICS “Short for Customer Information Control System, a TP monitor from IBM that was originally developed to provide transaction processing for IBM mainframes. It controls the interaction between applications and users and lets programmers develop screen dis-plays without detailed knowledge of the terminals being used.”
http://www.webopedia.com/TERM/C/CICS.html
SOAP “Short for Simple Object Access Protocol, a lightweight XML-based messaging proto-col used to encode the information in Web service request and response messages before
CMU/SEI-2004-TR-023 87
sending them over a network.
SOAP messages are independent of any operating system or protocol and may be trans-ported using a variety of Internet protocols, including SMTP, MIME, and HTTP.”
http://www.webopedia.com/TERM/S/SOAP.html
IIOP “Short for Internet Inter-ORB Protocol, a protocol developed by the Object Management Group (OMG) to implement CORBA solutions over the World Wide Web. IIOP enables browsers and servers to exchange integers, arrays, and more complex objects, unlike HTTP, which only supports transmission of text.”
http://www.webopedia.com/TERM/I/IIOP.html
WSDL “Short for Web Services Description Language, an XML-formatted language used to describe a Web service's capabilities as collections of communication endpoints capable of exchanging messages. WSDL is an integral part of UDDI, an XML-based worldwide business registry. WSDL is the language that UDDI uses. WSDL was developed jointly by Microsoft and IBM.”
http://www.webopedia.com/TERM/W/WSDL.html
LDAP “Short for Lightweight Directory Access Protocol, a set of protocols for accessing in-formation directories. LDAP is based on the standards contained within the X.500 stan-dard, but is significantly simpler. And unlike X.500, LDAP supports TCP/IP, which is necessary for any type of Internet access. Because it's a simpler version of X.500, LDAP is sometimes called X.500-lite.”
http://www.webopedia.com/TERM/L/LDAP.html
End-to-end Encryption
“The encryption of information at its origin and decryption at its intended destination without any intermediate decryption.”
http://www.its.bldrdoc.gov/fs-1037/dir-014/_2016.htm
XML “Short for Extensible Markup Language, a specification developed by the W3C. XML is a pared-down version of SGML, designed especially for Web documents. It allows de-signers to create their own customized tags, enabling the definition, transmission, vali-dation, and interpretation of data between applications and between organizations.”
http://www.webopedia.com/TERM/X/XML.html
Microsoft CLR
“The Microsoft CLR Debugger is intended as an interim tool for debugging applications written and compiled for the common language runtime.”
88 CMU/SEI-2004-TR-023
http://msdn.microsoft.com/library/default.asp?url=/library /en-us/cptutorials/html/the_net_sdk_debugger.asp
XSLT “Short for Extensible Style Language Transformation, the language used in XSL style sheets to transform XML documents into other XML documents. An XSL processor reads the XML document and follows the instructions in the XSL style sheet, then it outputs a new XML document or XML-document fragment. This is extremely useful in e-commerce, where the same data need to be converted into different representations of XML. Not all companies use the exact same programs, applications and computer sys-tems.”
http://www.webopedia.com/TERM/X/XSLT.html
SMTP “Short for Simple Mail Transfer Protocol, a protocol for sending e-mail messages be-tween servers. Most e-mail systems that send mail over the Internet use SMTP to send messages from one server to another; the messages can then be retrieved with an e-mail client using either POP or IMAP. In addition, SMTP is generally used to send messages from a mail client to a mail server. This is why you need to specify both the POP or IMAP server and the SMTP server when you configure your e-mail application.”
http://www.webopedia.com/TERM/S/SMTP.html
HTTP “Short for HyperText Transfer Protocol, the underlying protocol used by the World Wide Web. HTTP defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. For example, when you enter a URL in your browser, this actually sends an HTTP command to the Web server directing it to fetch and transmit the requested Web page.”
http://www.webopedia.com/TERM/H/HTTP.html
PKI “Short for public key infrastructure, a system of digital certificates, Certificate Authori-ties, and other registration authorities that verify and authenticate the validity of each party involved in an Internet transaction. PKIs are currently evolving and there is no single PKI nor even a single agreed-upon standard for setting up a PKI. However, nearly everyone agrees that reliable PKIs are necessary before electronic commerce can be-come widespread.”
http://www.webopedia.com/TERM/P/PKI.html
J2EE “Short for Java 2 Platform Enterprise Edition. J2EE is a platform-independent, Java-centric environment from Sun for developing, building and deploying Web-based enter-prise applications online. The J2EE platform consists of a set of services, APIs, and pro-tocols that provide the functionality for developing multi-tiered, Web-based applica-
CMU/SEI-2004-TR-023 89
tions.”
http://www.webopedia.com/TERM/J/J2EE.html
JSP “Short for Java Server Page. A server-side technology, Java Server Pages are an exten-sion to the Java servlet technology that was developed by Sun. JSPs have dynamic scripting capability that works in tandem with HTML code, separating the page logic from the static elements -- the actual design and display of the page—to help make the HTML more functional (i.e., dynamic database queries).”
http://www.webopedia.com/TERM/J/JSP.html
JCA “The J2EE Connector architecture provides a Java technology solution to the problem of connectivity between the many application servers and today's enterprise information systems (EIS).”
http://java.sun.com/j2ee/connector/overview.html
EJB “Enterprise JavaBeans (EJB) is a Java API developed by Sun Microsystems that defines component architecture for multi-tier client/server systems. EJB systems allow develop-ers to focus on the actual business architecture of the model, rather than worry about endless amounts of programming and coding needed to connect all the working parts. This task is left to EJB server vendors. Developers just design (or purchase) the needed EJB components and arrange them on the server.”
http://www.webopedia.com/TERM/E/Enterprise_JavaBeans.html
JAAS “The Java Authentication and Authorization Service (JAAS) is a set of APIs that enable services to authenticate and enforce access controls upon users. It implements a Java technology version of the standard Pluggable Authentication Module (PAM) framework, and supports user-based authorization.”
http://java.sun.com/products/jaas/
Aspect Ori-ented Pro-gramming
“Aspect-oriented programming (AOP) is a new programming technique that allows pro-grammers to modularize crosscutting concerns (behavior that cuts across the typical di-visions of responsibility, such as logging). AOP introduces aspects, which encapsulate behaviors that affect multiple classes into reusable modules.”
http://www-106.ibm.com/developerworks/java/library/j-aspectj/
90 CMU/SEI-2004-TR-023
CMU/SEI-2004-TR-023 91
References/Bibliography
URLs are valid as of the publication date of this document.
[Abst 00] Abst, C.; Boehm, B.; & Clark, B. COCOTS: A Software Integration Cost Model. Los Angeles, CA: USC Center for Software Engineer-ing 2000. http://sunset.usc.edu/publications/TECHRPTS /2000 /usccse2000-501/usccse2000-501.pdf
[Brownsword 04] Brownsword, L.; Carney, D. J.; Fisher, D.; Lewis, G.; Meyers, C.; Morris, E. J.; Place, R. H.; Smith, J.; & Wrage, L. Current Perspec-tives on Interoperability (CMU/SEI-2004-TR-009, ADA421613). Pittsburgh, PA: Software Engineering Institute, Carnegie Mellon University, 2004. http://www.sei.cmu.edu/publications/documents /04.reports/04tr009.html
[IONA 02] ONA Technologies PLC. IONA’s Orbix E2A Enterprise Integration Technology. Waltham, MA: IONA Technologies PLC, 2002.
[Jaccheri 02] Jaccheri, L. & Torchiano, M. “Classifying COTS Products,” 246-255. Software Quality – ECSQ 2002. Quality Connection – 7th European Conference on Software Quality. Helsinki, Finland, June 9-13, 2002. Proceedings, Lecture Notes in Computer Science, 2349. Berlin, Germany: Springer-Verlag, 2002.
[Johnson 88] Johnson, A. M. & Malek, M. “Survey of Software Tools for Evaluat-ing Reliability, Availability, and Serviceability.” Computing Surveys, 20, 4, (Dec. 1988) 227-269.
[Kasunic 03] Kasunic, Mark. “Measuring Systems Interoperability.” Conference on the Acquisition of Software-Intensive-Systems. Arlington, VA, January 28-30, 2003. Pittsburgh, PA: Software Engineering Insti-tute, Carnegie Mellon University 2003.
[Ncube 02] Ncube, C. & Dean, J. “Limitations of Current Decision-Making Techniques in the Procurement of COTS Software Components,” 176-187. Proceedings of the First International Conference of COTS-Based Software Systems, ICCBSS 2002. Orlando, FL, Febru-ary 4-6, 2002. Berlin, Germany: Springer-Verlag, 2002.
92 CMU/SEI-2004-TR-023
[Powell 97] Powell, A., et al. “Evaluating Tools to Support Component Based Software Engineering, 80-89. Proceedings of the Fifth International Symposium on Assessment of Software Tools and Technologies. Pittsburgh, PA, June 2-5, 1997. Los Alamitos, CA: IEEE Computer Society Press, 1997.
[Sai 04] Vijay, S. COTS Acquisition Evaluation Process: Preacher’s Practice (CMU/SEI-2004-TN-001, ADA421675). Pittsburgh, PA: Software Engi-neering Institute, Carnegie Mellon University, 2004. http://www.sei.cmu.edu/publications/documents /04.reports/04tn001.html
[Schmidt 02] Schmidt, Marty. J. Business Case Essentials: A Guide to Structure and Content. West Sussex, UK: Matrix Solutions Ltd, 2002. http://www.eitoolkit.com/tools/initiation /Business_Case_Essentials.pdf
[Simon 03] Simon, Jonathan. “Case Study: Bond Trading System.” Chapter 13, Hohpe, Gregor & Woolf, Bobby. Enterprise Integration Patterns. Boston, MA: Addison-Wesley, 2004.
[Vu 02] Vu, John. “The eCommerce Capability Model (eCCM): A Framework To Implement eCommerce Successfully.”(tutorial). SEPG 2000: Software En-gineering Process Group Conference, Phoenix, AZ, February 18-21, 2002.
[Wallnau 91] Wallnau, K. & Feiler, P. Tool Integration and Environment Architectures (CMU/SEI-91-TR-011, ADA237810). Pittsburgh, PA: Software Engineer-ing Institute, Carnegie Mellon University, 1991. http://www.sei.cmu.edu/publications/documents /91.reports /91.tr.011.html
[Wallnau 02] Wallnau, K.; Hissam, S.; & Seacord, R. Building Systems from Commercial Components. Boston, MA: Addison Wesley, 2002.
REPORT DOCUMENTATION PAGE Form Approved OMB No. 0704-0188
Public reporting burden for this collection of information is estimated to average 1 hour per response, including the time for reviewing instructions, searching existing data sources, gathering and maintaining the data needed, and completing and reviewing the collection of information. Send comments regarding this burden estimate or any other aspect of this collection of information, including suggestions for reducing this burden, to Washington Headquarters Services, Directorate for information Operations and Reports, 1215 Jefferson Davis Highway, Suite 1204, Arlington, VA 22202-4302, and to the Office of Management and Budget, Paperwork Reduction Project (0704-0188), Washington, DC 20503.
1. AGENCY USE ONLY
(Leave Blank)
2. REPORT DATE
December 2004
3. REPORT TYPE AND DATES COVERED
Final 4. TITLE AND SUBTITLE
Rapid Integration for Rapid Application Development
5. FUNDING NUMBERS
F19628-00-C-0003 6. AUTHOR(S)
Amit Midha, Ravindra Singh, Lakshmi Pratha Hari 7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES)
Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213
8. PERFORMING ORGANIZATION REPORT NUMBER
CMU/SEI-2004-TR-023
9. SPONSORING/MONITORING AGENCY NAME(S) AND ADDRESS(ES)
HQ ESC/XPK 5 Eglin Street Hanscom AFB, MA 01731-2116
10. SPONSORING/MONITORING AGENCY REPORT NUMBER
ESC-TR-2004-023
11. SUPPLEMENTARY NOTES
12A DISTRIBUTION/AVAILABILITY STATEMENT
Unclassified/Unlimited, DTIC, NTIS
12B DISTRIBUTION CODE
13. ABSTRACT (MAXIMUM 200 WORDS)
This report investigates the rapid integration tools available in the current market. These tools aid in the rapid integration of software systems and components. The research centers on a model problem that requires such a tool to address legacy integration challenges. The report presents a generic evaluation framework for identifying and evaluating rapid integration tools and an evaluation of three identified tools. This evaluation engaged selected evaluation criteria based on the demands of the model problem. A process reference is also included; this forms the guidelines for identification and evaluation of the tools with respect to other model problems.
14. SUBJECT TERMS
rapid integration, integration tools, rapid application development
15. NUMBER OF PAGES
107 16. PRICE CODE
17. SECURITY CLASSIFICATION
OF REPORT
Unclassified
18. SECURITY CLASSIFICATION OF THIS PAGE
Unclassified
19. SECURITY CLASSIFICATION OF ABSTRACT
Unclassified
20. LIMITATION OF ABSTRACT
UL
NSN 7540-01-280-5500 Standard Form 298 (Rev. 2-89) Prescribed by ANSI Std. Z39-18 298-102