[ Summary | Objectives & Results | Work Packages | Deliverables | Partners | EC Projects | Re-Engineering Links ]
This document describes the results of the technology selection activity in the RENAISSANCE project. In many projects, the selection of technologies is informal, implicit and embedded in other activities. Our key objective in making the activity separate and explicit was to establish, early in the project, a shared vision of the technologies which should be deployed to support the overall aims of the project.
More specifically, making technology selection an explicit activity has the following advantages:
The activity has achieved its objectives and we have selected a set of technologies and tools which are of direct relevance to the applications used in the RENAISSANCE project and which have significant market potential. We are confident that these are a firm technical foundation for the RENAISSANCE method.
The document is structured into 3 logical parts (5 chapters in all):
We recommend that all readers should read this chapter and the summary of technologies and application requirements in Chapter 2. The material in Chapters 3 and 4 may be read more selectively, depending on the technologies and tools which are of most relevance to your work. Chapter 5 is for consultation and reference only.
To summarise our conclusions and to help readers understand the rationale for the results presented in the rest of the document, we have identified a list of key questions which relate to the activity. We present these questions and our answers to these questions here.
Technologies
Middleware, Componentware, Internet technology, Distributed object technology, Object-oriented development, System modelling (architecture and data), RAD/4GLs, Evolution management (including document management), Process support
Tools
CORBA, JDK, JOE, NEO, Uniface, SQLWindows, Magic, SeerHPS, System Architect, ProMod, Bachman Analyst, OORAM, MS project, Perform, REFINE.
The application requirements have driven the selection of technologies. We have made an in-depth study of the specific application needs and used this to select particular technologies and, where appropriate, associated tools which should be incorporated in the RENAISSANCE method (see 1.1.5 which describes the process we used). The tables in Chapter 2 illustrate this by showing how specific requirements are linked to required technology support.
The principal motivation was practicality. Either:
The tool should already be in use by application providers. This meant that there would be no subsequent problems of tool purchase and that there already existed some expertise in the use of the tool. For example, Debis already use SQLWindows for rapid application development.
Application providers are considering the purchase and installation of the tool because of the capabilities that it provides. For example, Telesoft are considering the use of the SeerHPS system.
We have not included any tools in the list which fall outside these categories. All of the tools selected are currently available from established vendors and run on PC or Unix systems.
While we have identified specific tools, we see them as members of a class of tools and we anticipate that, in the RENAISSANCE method, these specific tools could be replaced by other similar tools (e.g. SQLWindows could be replaced by Visual Basic). We anticipate that we will choose a subset of the identified tools for demonstration in the RENAISSANCE method. We will also demonstrate how tools may be interchanged for other systems with comparable functionality.
Table 1 shows how the technologies selected are associated
with activities in workpackages 3 and 4. Note that there is an
overlap between tools and technologies and some tools/technologies
are relevant to more than one activity.
| WP3.1 Client-server migration | Middleware, Componentware, Internet technology, Distributed object technology | CORBA, JDK, JOE, NEO, SQLWindows, Magic, Uniface |
| WP3.2 Architectural modelling | Object-oriented development, System modelling, RAD/4GLs, Componentware | Uniface, SQLWindows, Magic, SeerHPS, System Architect, ProMod, Bachman Analyst, OORAM |
| WP3.3 Evolution planning | Evolution management (including document management), Componentware | MS project, Perform |
| WP4.1 Method framework | Object-oriented development, Process support, RAD/4GLs | REFINE, Uniface, SQLWindows, Magic, SeerHPS, System Architect, ProMod, Bachman Analyst, OORAM |
There are, of course, other tools which are used by application providers (e.g. WinCap for reverse engineering). Although reverse engineering is an essential activity for many evolution projects, we have focused on tools here which are specifically relevant to the technical areas of RENAISSANCE. However, we recognise that related tools may be incorporated into the RENAISSANCE method.
Obviously Web browsers such as Netscape are also significant but these are so well known that we did not feel it necessary to include a separate description of them.
We identified three key activities and set up a process to support these activities:
Technology awareness was supported by producing a set of technology briefing reports where we described a range of relevant technologies in a standard way which highlighted their relevance to RENAISSANCE. Each technology partner was responsible for producing some of these reports.
Application linking was supported by identifying 3 key partnerships between application and technology providers (Debis/SINTEF/Lancaster, CSH/CGInn, INTECS/ENG/TS). These teams worked together to identify the critical requirements and technologies for the trial applications.
Information integration was supported by identifying the presentation style based on cross-reference tables linking the applications and the technologies (presented in Chapter 2) and by planning this deliverable to present an overall picture of the work.
Tool vendor involvement is planned to start in the next phase of the project but, obviously, identifying tools and exploring their capabilities has meant that we have already had some preliminary contacts with tool vendors. We have discussed the RENAISSANCE project with the following vendors who have already expressed interest in possible participation:
We have also made initial contacts with more than 20 other tool vendors and have distributed information about RENAISSANCE to them. These include the vendors of most of the tools which we have described in this document where it seemed that these vendors were likely to be interested in reengineering. Further contacts with tool vendors are currently being planned.
The major difficulty which we have encountered is the heterogeneity of the technologies and the tools used by the application partners. When we started in the task, we hoped that there would be some overlap between the different tools and technologies used in different applications so these would be the obvious choices for inclusion in the RENAISSANCE method.
We discovered in our investigations with application providers was that there was a very significant overlap in terms of the technologies and tool types which were used. However, this was not true for specific tools where every application partner was interested in using different tool. We must respect their commercial judgements in this respect and we therefore decided that it was impractical to base the RENAISSANCE method on a limited and specific set of tools.
Of course, this places a critical requirement on the development of the RENAISSANCE method. The techniques used cannot depend on any specific tool or set of tools. While this is limiting in some respects as it means we cannot take advantage of particularly useful tool facilities, it means that the overall marketability of the method will be enhanced.
We believe that there are four related technologies whose use will develop significantly in future:
Because of their potential market significance and the possibilities of future commercial exploitation we will ensure that these technologies are taken into account in the development of the RENAISSANCE method.
There are a number of technical questions which remain unanswered but which we feel are important and which we will consider in the next phase of the project. These have not been considered because they are not of immediate relevance to the applications which will be the RENAISSANCE testbeds.
However, from the leverage that the RENAISSANCE project has already provided, we have had discussions with other organisations regarding re-engineering projects and the following issues have emerged:
The most clearly emerging market trend is the use of Intranets to support organisational information systems and the consequent reengineering of legacy system. We are convinced that we must consider and assess the impact of Intranet technologies for reengineering because of the market interest in these technologies and their potential for user interface reengineering. This implies that we must ensure that our portfolio of testbed applications is sufficiently diverse to provide coverage in this area.
However, it is not clear at the moment which specific tools and technologies in this area will emerge as market leaders. For example, Microsoft have recently introduced ActiveX as a competitor to Java and it is not clear if these technologies will co-exist or if one or the other will become dominant.