Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware...

22
Compuware Uniface 9.4 A InDetail Paper by Bloor Research Author : David Norfolk Publish date : April 2010 InDetail

Transcript of Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware...

Page 1: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

Compuware Uniface 9.4

A InDetail Paper by Bloor ResearchAuthor : David NorfolkPublish date : April 2010

InDetail

Page 2: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

Compuware continues to gain significant numbers of new customers for Uniface: not only does the product warrant such an investment, it merits even more widespread consideration. David Norfolk

Page 3: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

1 © 2010 Bloor ResearchA Bloor InDetail Paper

Compuware Uniface 9.4

Executive summary

Whether you call Uniface a “unified develop-ment environment” or an “integrated appli-cation platform suite” (the latter seems to be preferred), you should see Uniface v9.4 as a first step to Uniface v10, which could revital-ise Uniface as the “Rich Internet Application” development tool of choice for organisations that want to get up to speed quickly with ef-ficient web- and cloud-based applications. The 9.4 release also marks the reorganisation of Compuware, with Uniface now appearing as a separate business unit (Aad van Schetsen, Vice President & General Manager Uniface, reports directly to the Compuware COO). Ton Blankers, Product Manager Uniface, says that the product has now gone back to its roots in abstraction and application development.

This latest version of Uniface supports the vari-ous 2.0 initiatives (Web 2.0, Process 2.0 and so on) that are proliferating around the IT world. Specifically, this means support for multi-channel deployment (including a wide range of mobile devices), support for mash-ups, support for SOA, support for business process orches-tration, and so on. In fact, the addition of such functionality has been a trend within the devel-opment of Uniface over the last few releases: it has, if you like, been “walking the walk” and only now that it has proved that it can do it is it start-ing to “talk the talk”, which is a pleasant change from the marketing in some other companies.

With v9.4, the fashionable RIA (Rich Internet Application) approach is fully integrated with Uniface. It uses the Dojo toolkit under the cov-ers, to deliver efficient AJAX (Asynchronous JavaScript and XML) out of the box.

Uniface has always supported the renewal of applications but now there is a new focus on legacy modernisation, especially around the addition of localisation and encryption—and not only for legacy Uniface applications either. This is an area the product is well suited to, since it abstracts what is often complex technology from the much simpler business imperatives.

Uniface has always had loyal customers; with v9.4 (and version 10 to come) it now seems to be aggressively pursuing new customers and younger developers entering the field. It will also be striving to increase general aware-ness of Uniface and enhancing its online “user community” experience. We will follow its progress with interest, especially its adoption in developing countries, which are often jump-ing straight to web application development.

Fast facts

Uniface provides a model-driven, component-based, development environment with sup-port for mobile computing, service-oriented and Web 2.0 developments. It also offers sig-nificant capabilities for leveraging legacy re-sources and bringing these to either Web 1.0 or Web 2.0 environments, as required.

In terms of new functionality in this release the emphasis is on easier deployment, extended support for RIA, and in meeting user requests for additional features.

Key findings

In the opinion of Bloor Research the following represent the key facts of which prospective users should be aware:

• Compuware Uniface has always provided excellent scalability, interoperability and portability, and continues to do so.

• The company has an outstanding record for supporting its existing client base over a sig-nificant period. A significant number of the enhancements to Uniface (such as the intro-duction of error logging, an Excel-like grid widget, and email authentication to name just three) are as the result of customer requests.

• There is full support for a Services Oriented Architecture (SOA) with Uniface applications and components being able to act as both consumer and provider of web services.

• We especially like the way that the inter-faces to legacy, as well as green-field, ap-plications can be defined and utilised within a Uniface environment. Together with other features of the product this will allow users to build composite applications (optionally within Uniface View) that combine both ap-plication functionality and information from different original sources.

• Uniface supports all sorts of environments, for both development and deployment, rang-ing from mainframe environments to mobile devices of various sorts.

• Uniface makes a distinction between busi-ness logic and application logic. This is a sensible differentiation that has a number of advantages. Business process model-ling, integration and management are

Page 4: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

2© 2010 Bloor Research A Bloor InDetail Paper

Compuware Uniface 9.4

Executive summary

implemented through Uniface Flow. It now extends this to separate the logic and presentation layers in RIA apps (although a full JavaS-cript API won’t appear until, probably, Release 9.5).

The bottom line

Uniface faces a difficult balancing act. On the one hand it must of-fer a productive, reliable and secure environment for developing and deploying applications that leverage all of the most up-to-date and recent developments in technology. On the other, it has thousands of companies and millions of people around the world depending on Uni-face applications that may have been written at any time in the last two decades. Those users have to be supported both in their existing envi-ronments and as they upgrade or migrate to new ones. Compuware is one of only a very few vendors that has demonstrated the willingness and ability to do this, over a prolonged period. Putting that together with support for today’s latest trends is not easy but Uniface continues to meet that challenge.

Page 5: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

3 © 2010 Bloor ResearchA Bloor InDetail Paper

Compuware Uniface 9.4

The product

Product availability

Compuware releases new versions of Uniface at approximately yearly intervals with the current version, 9.4, being released in Q1 2010. Release 9.4 is very much setting the scene for release 10, expected around 2011/2012. Brief details of this release are included in the Product Futures section towards the end of this paper.

Uniface is generally available on a very large number of platforms and databases. Releases tend to be on the most common platforms, such as Sun Solaris, AIX, HP-UX, Compaq Tru64, Windows, Linux, zSeries and iSeries.

Supported data sources follow a similar pat-tern and include: Adabas, DB2 UDB, IMS, VSAM, Informix, Advantage Ingres, Oracle, Rdb, RMS, MS SQL Server, Sybase, C-ISAM, SOLID (now owned by IBM) and ODBC. It should be noted that all of these, with the obvi-ous exception of ODBC, are native drivers and provide better performance than more generic approaches. There are also integration capa-bilities supporting a wide range of other tech-nologies ranging from TP monitors through message queues to COM.

Supported standards include WS-I compliance, XML Schema 1.1, SOAP 1.0 and WSDL 1.1.

Product introduction

Uniface’s genesis was in 1984 (though it was first released in 1987) and it is therefore over 25 years old. It is almost unique amongst ap-plication development products in having con-sistently offered a migration path for its users. That is, the company has remained true to its customer and partner base by migrating from character-based interfaces, into GUIs and now to the web and Web 2.0 without forcing these clients to change their development tool. With the advent of the client/server revolution, vir-tually every other vendor (we know of only a handful of exceptions) built a brand new tool to serve the new marketplace and, effectively, abandoned its user base. Many of these com-panies have suffered as a consequence and we must commend Compuware for its attitude in this respect.

While you can still build monolithic and client/server applications with Uniface if you want to, the emphasis nowadays is, of course, on using the web, and Uniface offers a variety of ways in which you can exploit this environment. In particular, the product supports both tactical and strategic solutions so that you can move at your own pace. Whether you are an innova-tor and already moving towards a Service Ori-ented Approach and Web 2.0, or you still have green screen applications that have yet to be migrated to the web, or anywhere in between, Compuware can provide a solution. Given the pressures involved in making these sorts of decisions and the dangers of making the wrong strategic choices if these have to be rushed, multi-approach solutions like Compuware’s will be the obvious solution for many companies.

It is also worth commenting that Compuware reports a significant upturn in business from what one might call Java refugees. That is, companies that have tried developing applica-tions in Java and have failed. This number in-cludes previous users of Uniface that have now returned to the Uniface fold.

Product architecture

It is most useful to think of Uniface as hav-ing two separate architectures, one being for application development and the other being for deployment. The former includes Uniface Developer and Uniface Web Developer and, optionally, either or both of Uniface View and Uniface Flow. A discussion of the features of the development environment will form the main body of this report but, before consider-ing these, we will focus on deployment.

Page 6: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

4© 2010 Bloor Research A Bloor InDetail Paper

Compuware Uniface 9.4

Deployment

Before considering the specifics of Uniface deployment we should comment that this has been a major area of focus for Compuware in this release. In particular, the company has concentrated on adding additional functionality to make life easier for VARs and other partners delivering Uniface-based applications, remov-ing the need for any platform-specific skills, for example. Another nice new feature is that now all Uniface objects are stored using single standard format, thereby making it easier to lo-cate objects as well as simplifying deployment.

The deployment architecture itself is made up from a number of elements, not all of which may be used in any particular environment. In particular, there is a distinction between client-side and server-side functionality. The relevant options consist of the following:

Client-side functionality

• Support for mobile and hand-held devices running Windows Mobile 2005 and 2006 via WiFi, GPRS and Bluetooth. Embedded data-base support (optionally with synchronisa-tion) is provided for DB2 Everyplace, Oracle Lite and Embedded Database EDB.

• These days, Uniface is placing great empha-sis on its RIA capabilities. RIA moves some of the presentation interface into the browser using AJAX and provides a user experience in the browser similar to that provided by traditional desktop rich clients. However, as the demands of the business increase, issues have sometimes arisen, both with developer productivity and the efficiency/performance of RIA. Compuware is well-placed to alleviate any such issues, by putting AJAX and JavaS-cript under the covers (developers deploy Uni-face components rather than having to write JavaScript), although its strong segregation of the presentation layer from the business logic layer allows JavaScript gurus to hand-code JavaScript safely, if this is appropriate.

• Client/server: rich clients can be deployed on Microsoft Windows platforms, having a Windows look and feel that includes Win-dows XP (and Vista since 9.1) theme support. Rich clients have a wide variety of widget controls available (extended in this release along with enhanced colour handling) for the development of rich, functional user inter-faces, plus the ability to integrate controls from other technologies as COM objects, ul-timately providing client-tier integration.

• Uniface JTi is a deployment solution for bringing existing Uniface client/server ap-plications to the web, whilst maintaining a rich client/server user interface. Uniface JTi also provides the added benefit of a zero ad-ministration deployment. This is achieved by means of an ActiveX plug-in, a Java applet or a native client. Further, this enables Uniface clients to be deployed on non-Microsoft cli-ent platforms such as the Apple Macintosh, Motif or Linux KDE clients.

• Character mode: Uniface was originally de-livered as a character-based tool, and this functionality has been maintained within the product, both for compatibility rea-sons for the existing customer base, and also because there is still demand for this functionality, with Electronic Point of Sale (EPOS) and manufacturing applications be-ing examples.

• Non-Uniface clients: clients from other technologies can be used either with, or independently of, the Uniface GUI. This ‘cli-ent side’ integration is known as call-in, and technologies such as Visual Basic, C++ or Java clients can be used. The web serv-ices consumption functionality enables any remote client that is W3C compliant to inte-grate into the Uniface server architecture.

Server-side functionality

This comprises two major elements: the Uniface Router and the Uniface Server. The former is a multi-threaded deployment engine that routes all client requests to the Uniface Servers. These requests include database, application component, operating system commands, and peer-to-peer messaging re-quests. The requests are channelled to a serv-er or pool of servers residing either locally or on remote server machines. The Router fea-tures dynamic load balancing and the Uniface Router Monitor, an application management dashboard that provides both monitoring and real-time tuning functionality. One recent en-hancement is that there is no need to restart the Router (or the Server for that matter) when deploying a new or updated service, which was formerly the case.

As far as the Uniface Server is concerned, this combines several server functions with processing being executed synchronously or asynchronously, depending on the applica-tion’s functional requirements:

Page 7: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

5 © 2010 Bloor ResearchA Bloor InDetail Paper

Compuware Uniface 9.4

Deployment

• Uniface Remote Data Access is a high-end solution for business critical-applications that transparently perform full read, write, update, and delete transactions across het-erogeneous data sources that are spread over multiple platforms. It has been de-signed to deliver flexibility, scalability, high performance and data integrity. Uniface Remote Data Access can access application data using a variety of Uniface client op-tions or via intermediate servers if a distrib-uted deployment architecture is required. A number of advanced distributed facilities, such as stepped hit lists and server-side query resolution (which are available with-out additional programming), mean that this option should outperform proprietary so-lutions from database vendors in terms of both network messaging and database over-head on the server.

• Uniface Remote Application Invocation ena-bles Uniface applications to leverage existing code into new distributed component-based systems. Developers do not need to re-im-plement existing functionality in a new tech-nology, they can simply re-use it, and hence productivity, quality and time to market are greatly enhanced. Uniface applications can activate components written in a variety of technologies including C, C++, COBOL, RPG, Visual Basic, and Java. It is also possible to execute operating system commands or database stored procedures from a Uniface client. Developers can componentise exist-ing applications and integrate them directly with new Uniface-built components. Non-Uniface applications can call remote serv-ices via standard middleware.

• The Uniface virtual machine enables Uni-face applications to transparently distribute and execute Uniface service components on one or many servers, fully utilising all avail-able performance and processing power and thereby providing the ‘distributed partition-ing’ of Uniface applications.

• The Uniface Web Application Server is an enterprise-capable B2B platform, provid-ing a web browser interface to the Uniface Server, enabling Uniface web applications to execute both Uniface and non-Uniface com-ponents and access application data with the flexibility of browser thin client access. Dynamic Server Pages are now supported.

Before going on to discuss the other deploy-ment options it is pertinent to point out that these have a significant role to play with re-spect to development as well as deployment, in particular because they enable the reuse of existing resources. A particular strength of the Uniface product has always been its portabil-ity, scalability and interoperability. This has been enabled by the product’s strict separa-tion between logical and physical layers.

So it is not surprising that Uniface provides integration capabilities across all application tiers.

At the database level, access to supported da-tabases is via SQL with vendor-specific exten-sions. Uniface database connectors generate DDL as well as DML and, moreover, its support is intelligent. For example, if a particular data-base does not support variable length fields, then Uniface will automatically segment the data into overflow fields that the data source can handle without any problems. In addition, the database connector will automatically per-form I/O (with locking/concurrency control), transaction management (with commit and rollback), scrolling and cursor manipulation, and error handling.

Another feature of Uniface’s database integra-tion is its support for stored procedures. These can be executed as a component by a Uniface Server, or could be used to provide delete constraints (and all CRUD—create, read, up-date and delete—functionality) for referential integrity. These can either be implemented in the database, in the normal way, or within the Uniface application. Using the latter approach has advantages both in terms of portability and in heterogeneous environments.

Apart from the individual facilities provided by the different elements in this architecture, it is important to understand its overall signifi-cance. Traditionally, the company was a strong adherent of the three-tier software model that separates business logic from data and pres-entation but Uniface now goes a step further by espousing a multi-tier model, in which busi-ness logic is split down further into business processes and task logic. As may be imagined, the former is implemented by Uniface Flow while the latter remains the domain of the Uni-face Server.

Page 8: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

6© 2010 Bloor Research A Bloor InDetail Paper

Compuware Uniface 9.4

Deployment

This split between business processes and task-level logic has some profound implications. Of course, Compuware has done this in order to simplify the process of application integration both within an organisa-tion and in B2B environments, but there are also obvious implications for quality, maintenance, testing, performance, and so on. Some of the subsidiary benefits of this approach include the monitoring of Service Level Agreements (because these correlate to business processing tasks) and improved bottleneck detection.

Page 9: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

7 © 2010 Bloor ResearchA Bloor InDetail Paper

Compuware Uniface 9.4

Development

Uniface uses a team development, model-driven, component-based development (CBD) approach that actually takes place in three phases: modelling, construction and assem-bly. This process is illustrated in Figure 1.

As is shown here, the process normally starts with modelling. You can start with the third-party tool of your choice and Uniface can import its definitions, using either UML or traditional CASE tools, although you can also build the models directly in Uniface.

The basis of the development environment is the application model, which exists within a broader context. The Application Model is, in effect, a combination of a data model to-gether with business events and their trig-gers. It is built using the Component Editor and embodies elements such as entities, indexes, relationships, referential integ-rity, business rules, event processing, date validation and formatting, calculations and so forth. Compuware concedes that it takes a little longer up-front during the develop-ment process to build this model (mostly be-cause you have to think about what you are doing before actually doing it). In our view this is a good idea in its own right, regard-less of the fact that it should reduce subse-quent maintenance and because you inherit business rules between components.

Note that it is possible to create and edit mul-tiple diagrams for each application model and these will allow you to display super-type and subtype entities and both one-to-many and in-heritance relationships.

Finally, note the Graphical Model Viewer (see Figure 2), which provides navigation capabilities around the model. This should help to speed up knowledge transfer to new Uniface developers and will also be of value for end users employ-ing the environment to build mash-ups.

Component types

To meet requirements for multi-tier application development, Uniface provides various compo-nent types for each tier. The traditional three-tier architecture is a strict and formal split of an application into distinct parts, each part per-forming a specific function. The tiers described in a three-tier architecture are as follows:

1. Presentation tier: this tier holds all the components responsible for the user in-terface. These components are typically Uniface Server Pages, Uniface Dynamic Server Pages, Uniface Forms, Uniface Re-ports and non-Uniface components such as JavaServer pages or Microsoft’s Active Server Pages. These could be deployed with or without the Uniface JTi or Uniface View products. Multichannel deployment on mo-bile and hand-held devices (which has been significantly enhanced in the latest release, with features such as automatic screen scrolling and the ability to deploy portals, amongst others), is supported.

2. Business logic tier: this tier holds all the components and services that handle busi-ness rules and task-specific behaviour. In Uniface the business logic tier is composed of session service components for the cen-tralisation of complex business rules af-fecting multiple entities. Optionally, this tier contains entity service components for the centralisation of simple business rules for single entities.

3. Data access tier: this tier contains physical database structures captured in the relation-al business object model. Uniface ensures physical data access by encapsulating SQL in its DBMS connectors. Both the business

Figure 1: Uniface development paradigm

Third partymodelling

UML-basedrepository API

Class/DataModel

UnifaceConstruction

CIF APIComponent

ModelAssembly

Workbench

Active Objects Repository

Figure 2: The Graphical Model Viewer

Page 10: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

8© 2010 Bloor Research A Bloor InDetail Paper

Compuware Uniface 9.4

Development

logic and the data access tiers can be sepa-rated into more tiers, and the physical ele-ments providing the application functionality can be deployed across many servers, pro-viding a multi-tier, distributed deployment.

The integration with Adobe Dreamweaver in Uniface 8 is no longer in place for Uniface 9 (although the complete separation between the logic and presentation layers means that it can still be used as an external HTML edi-tor). In Uniface 9.4 there are two HTML editors which can be used as Dynamic Server Page (DSP) layout editors: one is a wysiwyg-type editor based on the open source Nvu editor (modified and actively developed and main-tained by the Uniface Lab); the other is a pure text-based HTML editor that is built in Uniface itself and is for use by developers with HTML coding expertise. The wysiwig layout editor re-places Paint Tableau used in previous Uniface versions and is used to define layouts, includ-ing the embedded data structure, by inserting text, images, links, tables, and so on; as well as for implementing more advanced features such as Java scripting and style sheets.

Uniface Dynamic Server Pages (DSP) are new in Uniface v9.4. These let the browser run asynchronous processes on the server (for da-tabase lookups etc.) and give developers a lot of flexibility in the way they handle the traffic between browser and server. Usefully, Uni-face also provides a mechanism for managing “race conditions” using declarative scoping; so that after the asynchronous DSP process is fired up, the user can be prevented from en-tering information locally which will be over-written when the DSP returns.

XML and web services

Uniface supports XML import and export, while Dynamic Server Pages can send an XML stream to a browser. There is also generic read/write functionality for XML data.

The product also includes a DTD wizard for loading, creating or saving XML formats, as well as facilities for creating new session services (that is, task logic) from DTDs (to which XML formats may be assigned by the aforementioned wizard) and vice versa. Other features include support for complex XML da-tatypes so that you can incorporate nesting, for example, and support for disconnected record sets, which are needed for mobile and other similar environments.

Another important part of the product is the XSLT Workbench, which is a tool for creat-ing and testing XSLT style sheets. Users can also perform XML transformations within the application, which is achieved by APIs, into XSLT functionality.

Support for SOA includes both provision and consumption capabilities, with the latter be-ing achieved by the Uniface component em-ploying a SOAP call-out connector that makes a SOAP request to the web service via HTTP. WS-I (Web Services Interoperability) compli-ance is provided.

Business logic

As far as business logic is concerned, this is defined through use of Uniface PROC (PROCe-dural language), which is a language designed for developer usability and productivity. PROC is one area where developers are shielded from the application deployment architecture. For example, the PROC command ‘retrieve’ is automatically translated into an SQL or DML select statement, in the correct syntax for the deployment database or file system.

PROC code modules are generated and stored in the repository to be triggered into action by relevant component-based events. PROC is essentially procedural, with conditional branching and assignment syntax.

A number of enhancements have been added to PROC over time including the ability to dynami-cally build menus, import and export enhance-ments including support for .zip files (and you can access zip archives using regular file I/O instructions), new statements and functions for enhancing file management, component APIs that can be used to read and write XML and support for dynamic form layout (which means that this is no longer restricted to the frames-in-frames approach that was mandated by pre-vious versions of the software).

The Component Integration Editor works at a higher level of abstraction than component building per se, and is somewhat akin to a browser. It provides visualisation of com-ponents and how they work together. It can therefore be useful in impact analysis, as il-lustrated in Figure 3 on page 9.

Page 11: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

9 © 2010 Bloor ResearchA Bloor InDetail Paper

Compuware Uniface 9.4

Development

Figure 3: Using the Uniface Component Integration Editor for impact analysis

A further feature of the Component Integra-tion Editor is that it allows the definition of data flow characteristics even before compo-nents are defined. This will be a useful facility for those who do not wish to use a UML tool as a front-end to Uniface. Another nice feature is the way that it colour codes components so that you can see at a glance where a compo-nent comes from, distinguishing Uniface com-ponents from those from other sources, such as wrappered 3GL code, Java or ActiveX.

Finally, it is worth making some comments about the nature of Uniface. A purist would ar-gue that it is not truly object oriented. This is because the product does not support a class hierarchy. However, there is little or nothing that you can do with a class hierarchy that you cannot do in Uniface. It also does not support multiple inheritance. However, this is notori-ously difficult to implement because of prob-lems with precedence and we do not see this as a major drawback. Indeed, many of Compu-ware’s competitors are in the same position. In fact, to quote one of Compuware’s custom-ers: “we wasted one and a half years trying to develop with an object orientated language before we moved to Uniface”. One other signif-icant omission is that Uniface does not support dynamic binding, where properties are inher-ited at run-time. Compuware contends that this has a negative impact on performance and on deployment complexity (which, of course, it does) and has instead implemented what the company calls object inheritance, whereby properties are inherited at compile time.

While presentation logic (Forms, Dynamic Server Pages, and Reports components) is compiled, the remainder of a Uniface applica-tion runs in tokenised code, though it can be examined in interpreted mode for JAD ses-sions. A powerful debugger is included.

Managing development

The Uniface repository is a genuine repository rather than just a library with a management system or a collection of knowledge bases.

It supports four different types of metadata, based on data modelling, process metadata, templates and global objects. In the first case this includes information about entities, fields, tables, relationships, declarative referential integrity constraints, object properties, trigger procedures and so on. Templates are held for objects such as components, entities, fields, visual properties, validation criteria and so forth and are typed. This means that a strict relationship is maintained between templates and the components that use them, whereas previously you could have several component types relating to a specific template. For those upgrading to Uniface 9.4 (and all users with support contracts will receive it automatically) there are automatic migration capabilities built in to the new release. Finally, global objects re-fer to specific components such as menus, icon panels, system messages and the like.

Although the Uniface development environ-ment is supplied with the Solid relational da-tabase, the repository can be implemented in any supported database, and this does not have to be the same database as the target de-ployment database.

Compuware has included a number of features that help to offset any potential problems with the management and performance of read-only reference objects at deployment time. For example, it has implemented a procedure whereby objects can be transferred from the repository to a memory-resident dynamic ob-ject library (in affect, an object cache), which is deployed at run-time.

Of course, the other major function of the re-pository is to support team development and integration to configuration management and version control tools. The repository supports object-level check-in and check-out with ver-sioning at object, component and application levels. Object cross-reference reporting and other facilities provide impact analysis capa-bilities. For environments where non-Uniface components are used in conjunction with Uniface, it may be more suitable to use an external configuration management tool, and there is support for SCCI (Source Code Control

Page 12: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

10© 2010 Bloor Research A Bloor InDetail Paper

Compuware Uniface 9.4

Development

Interface) for this purpose. There is also support for Micro Focus’ Op-timalTrace, which used to be Compuware’s requirements management and tracking product until it was sold.

The usual permission and access controls are provided in Uniface al-though there is one nice wrinkle. The repository controls access to the developer workbenches, which can be implemented on either an indi-vidual or a workgroup basis. Alternatively, permission control can be at the application model trigger level, which ensures that globally defined events (for instance, triggers) are consistently enforced throughout an application that uses them.

One feature that the repository does not support is the ability to have mul-tiple versions of an application live concurrently. This is hardly surprising bearing in mind that the repository is dynamic. There are application dis-tribution packaging capabilities and an application update utility, which will help with software distribution.

Page 13: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

11 © 2010 Bloor ResearchA Bloor InDetail Paper

Compuware Uniface 9.4

The Uniface Application Platform Suite (APS)

Uniface is the application development and de-ployment tool that is part of the overall Uniface application platform suite that also contains Uniface Flow and Uniface View (and all three products are now presented in an integrated workspace). While these two tools arguably merit reviews in their own right, it is pertinent to discuss them briefly here because of their synergies with Uniface.

Uniface Flow

Uniface Flow enables business process man-agement (BPM). It can be used either as a stand-alone product or in conjunction with Uniface and/or Uniface View. It is actually a Uniface application (though that need not be apparent to the user), so it has the same ca-pabilities in regards to deployment flexibility, integration and scalability that Uniface offers.

Uniface Flow provides the ability to graphically model tasks into automated business proc-esses by providing an environment (see Figure 4) that uses actors and roles in conjunction with both organisation and process models, each of which has its own editor for develop-ment purposes.

In the case of the organisational model this also includes role-based security definition capabilities.

The process model is task-based. Tasks may be either manual, batch, B2B (for example, messages) or interactive; the interactive and batch tasks interface with application com-ponents. It should be noted that Uniface Flow is specifically designed for application inte-gration, whether that is internal or external, and offers integration possibilities with a range of technologies via the Uniface, Java and COM APIs.

As we have already explained, Uniface sepa-rates application logic from business process logic. This has a significant advantage when tasks are automated into business proc-esses using Uniface Flow, as it means that a business manager, or the designated owner of that business process, can dynamically change processes without amending the ap-plication logic. For example, if a credit check is required for all orders over a certain value, and the credit controller is off sick, then the relevant manager can dynamically re-allocate credit checking to someone else. This person will be notified automatically that this task is now theirs and it will be added to their task list, which is displayed in a window on the end-user’s desktop (either via client/server or web-enabled, as appropriate). Custom consoles can also be built to suit specific customer needs. For example, in an order shipment process a credit check can be required for all orders above the amount of $10,000. Orders below this amount will proceed directly to shipping. Due to a change in company policy, it might be decided that credit checks will be required for all orders above $5,000. The relevant business manager is now able to dynamically change this business rule in the process model with immediate effect (without having to change [or impact] the underlying application logic).

Uniface Flow delivers a complete set of tools and servers for deploying the automated busi-ness processes that you have defined. Em-ployees can select from the following set of deployment consoles depending on their level of authorisation:

• Process Management Dashboard, which a manager can use to fine-tune run-time busi-ness processes and to allocate different us-ers to tasks on a real-time basis.

• End-user’s Dashboard that delivers all the relevant details on tasks to the employee (actor) for execution.

• Task List Manager Dashboard that pro-vides managers with an overview of running process instances, so that they can monitor progress and determine if workloads are sufficiently balanced.

Process owners also have the option to tune the flow of a process in real-time, whilst still maintaining process versioning of the original processes, even if they are still executing.

Figure 4: Uniface Flow Task List manager Dashboard

Page 14: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

12© 2010 Bloor Research A Bloor InDetail Paper

Compuware Uniface 9.4

The Uniface Application Platform Suite (APS)

Uniface Flow’s set of deployment servers helps to manage automated business tasks at run-time once the tasks are deployed. Here, options include:

• Business Process Server: the workflow en-gine and the centre for deploying tasks. The Business Process Server (of which you may have several for scalability reasons) reads the process model definition for each process instance as it starts, and calculates the next task. Scheduled tasks are stored in the serv-er’s process instance database with assigned actor (or role) and other process instance data. Task Consoles for each affected actor in the schedule scheme are notified by the server each time a process instance occurs.

• Task Server: a dedicated server that finds scheduled batch tasks in the process in-stance database. This server retrieves all scheduled batch tasks and executes them in the order retrieved. The server also up-dates the process instance database with the task’s state and, when finished, the up-dated parameters.

• Remote Message Server (RMS): sends and receives XML messages between remote office locations, customers and business partners using standard transportation and message formats. The RMS is responsible for encoding and decoding the messages into XML-RPC and sending and receiving messages via HTTP. The Remote Message Server Connector can be used for customis-ing the Remote Message Server. It makes it possible to use transport mechanisms other than HTTP, assemble and store message content from other sources, and use other XML formats (for example, BizTalk). This flexibility increases the effective use of the RMS in any organisation that needs to com-municate with external customers or busi-ness partners through a message standard of their choice.

• Archive Server: manages the process in-stance database in which all instances of the executing process are stored. Once com-pleted, the Archive Server writes the proc-ess instances at regular intervals into an XML stream for clean-up from the process instance database.

Other notable features of Uniface Flow include the ability to produce KPI (key performance

indicator) data for external analysis or display in dashboards; and messaging-level facilities such as the ability to start a component when an alert becomes due and provision for SMTP authenticated communications.

Uniface View

Uniface View is a web-based application de-ployment framework that provides a pre-personalised and ‘personalisable’ web-based workspace to end-users. Uniface View has been designed to help users to more efficient-ly do their work and collaborate in and across communities in an environment that is tailored to the needs of each individual and each group. Content comes from a variety of sources, in-cluding web-based applications, which can be deployed using this framework.

Uniface View is targeted by Compuware as a low cost, easy to implement and easy to use web-based application deployment framework that will be appealing to customers that want to take a low risk approach to portals. Uniface View makes this possible because it has a built-in infrastructure and does not require any addi-tional application servers or database systems.

The major functions of Uniface View are as follows:

• Content creation: it should not be supposed that Compuware is intending to challenge vendors who specialise in the area of con-tent management. The facilities provided in Uniface View are intended to provide basic content creation. This functionality supports user-configurable, wizard-driven content and content management screens that may be controlled by local authors. For more sophisticated capabilities, Uniface View integrates with a number of specialist third-party vendors.

• With a few minor exceptions, such as inte-gration with Microsoft Outlook, everything in Uniface View is web-based. Because Mi-crosoft Word is not web-based, this has meant that Compuware has included its own web-based text authoring tool. As it happens this looks remarkably like, and functions re-markably like, Microsoft Word, even though it does not have the same range of facilities. Of course, you can still use Word if you need to, but the Uniface View option will be suf-ficient for most purposes.

Page 15: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

13 © 2010 Bloor ResearchA Bloor InDetail Paper

Compuware Uniface 9.4

The Uniface Application Platform Suite (APS)

• Development: there are essentially two op-tions. If you are an existing Uniface user then that product can be used to develop the components that will make up the content of your portlets or composite applications. The openness of Uniface View also supports the development of portlet components using technologies such as (X)HTML, XML/XSLT, JavaScript, Active Server Pages, EJBs, web services, and so on. You can use any rel-evant third party tool to develop for these environments. However, for the develop-ment of Uniface portlets, there is a wizard to assist in this process. Various pre-built components, APIs and so forth are available. It is also possible to assign user security at-tributes to portlets at development time.

• Collaboration: like content, Compuware is intent only upon providing basic collabora-tive capabilities and it expects users that re-quire more comprehensive facilities to use a specialist vendor in connection with the Uniface View API facilities.

• Email communication: Uniface View in-cludes its own web-based email system, and it is also integrated with Microsoft Outlook, and supports the usual Outlook functionality such as schedules, tasks lists and so forth.

• Search: the search capabilities of Uniface View are relatively basic in that its search features include both internal and exter-nal search capabilities but it does not trawl through web content. For more advanced search capabilities, customers are encour-aged to use 3rd party search engines like Google box, which can be seamlessly inte-grated into the product.

• Administration: this uses a group/role-based security model with inheritance and single sign-on. Existing Windows security IDs and passwords can be reused automati-cally and similar reuse of LDAP security is available. Cookies are also supported.

• There is one particular point to note about the product’s administration. This is that this is accomplished directly through the portal and no separate console is required. The fact that administration is purely via the browser-based interface means that remote administration is possible (as, indeed, is re-mote content authoring).

• Personalisation: at the administrative level, this is based on user profiles that are man-aged through two-way synchronisation with an LDAP directory. Customers have a choice where look and feel is concerned: it is possible to implement portals with a Win-dows look and feel (that is, drag-and-drop, overlapping windows and so forth) or you can adopt a traditional columnar approach. There is no practical limit to the number of pages that a user may define in addition to his home page (a simple process that is also based on drag-and-drop), although the ad-ministrator may impose a limit based on the user’s group/role. As with most comparable systems it is possible to pre-define colour schemes and other details based on corpo-rate standards. The administrator can limit the amount of customisation that is avail-able to end users.

Enterprise Mashups

A mashup is a composite web application that typically includes links to external applica-tion such as Google Maps. They are frequently developed by end users, employing no formal development methodology. What Uniface sup-ports is ‘Enterprise Mashups’. The danger with conventional laissez faire approaches to mashups is that there are potential issues with configuration and version management, busi-ness continuity and security.

While these concerns cannot be completely reconciled without removing the flexibility and ease of use that is the essence of mashups, Uniface’s centralised architecture allows you to provide a library of quality-assured shared components for mashups and lets end users safely build new services from them, in the mashup layer. Automatic state management across web pages from different web sources is provided and mashups automatically have “AA” (mass audience) level W3C Accessibility compliance. XHTML is also supported.

Page 16: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

14© 2010 Bloor Research A Bloor InDetail Paper

Compuware Uniface 9.4

Legacy modernisation

Legacy modernisation process Legacy modernisation is particularly attractive as demands from businesses to “do more with less” proliferate. Done well, it reuses valuable intellectual property but delivers all the func-tionality and user experience of a newly-writ-ten application. Done badly, it condemns users to an out-of-date and clumsy user experience. In Uniface terms, modernisation falls into two areas: modernising older Uniface applications (of which there are a lot around, even if their users aren’t always aware that they’re written in Uniface) and modernising non-Uniface ap-plications, particularly on the mainframe, in an incremental way. It is generally disruptive, and often unproductive, to adopt a “big bang” (or “rip and replace”) approach to modernisa-tion and the componentised nature of Uniface, its technology abstraction, and its wide range of supported platforms and data sources, makes it well suited to modernising just the user interface to data and services on another platform, or to modernising particular compo-nents of a non-Uniface application.

However, the best approach to modernisa-tion is to work at the abstracted level, to make sure that emerging business needs aren’t compromised by the physical baggage in old code. Depending on the degree of modernisa-tion required, the “U-curve” from physical to logical abstraction and back to physical im-plementation can be deeper or shallower and need only impact discrete parts of the applica-tion being modernised. With its inherent sup-port for abstraction and focus on developing business-level logic rather than technology detail, Uniface is well placed to facilitate this approach to application modernisation.

Uniface 9.4’s out-of-the-box RIA support should make the modernisation of legacy GUIs and the componentisation of legacy systems with web services straightforward and it provides partic-ularly good support for two key areas of mod-ernisation: localisation and encryption.

Addition of localisation The environment of many legacy applica-tions has changed, even if the business logic is largely still appropriate—modern business is inherently independent of geographical boundaries but the end-user experience is now business-critical. The competition is only a click away from unhappy users.

What this means is that there is a need to “localise” user interfaces to the appropriate

country defaults and the local language. Uni-face has always supported different character sets but now, with release 9.4, full Unicode support allows characters from different lan-guages (including Japanese, Chinese, Russian etc.) to be handled at the same time (that is, treated as just one huge character set). This is an advantage for the design of universal end-user data entry modules, even if only one lan-guage at a time will be displayed.

Addition of encryption Another consequence of the changing Inter-net-enabled business environment is that information is now, potentially, accessible world-wide. Organisational firewalls are fre-quently irrelevant, as business transactions must pass through them. There are many im-plications from this, ranging from the impor-tance of security policy to the need for good identity management, but a fundamental need is for the strong encryption of important data.

With Uniface 9.4, standard encryption routines are included in the box and support crypto-graphic hash functions (used for digital sig-natures and message authentication codes), hash message authentication codes (HMAC), block ciphers (such as AES and Blowfish), and encoding schemes (such as Base64).

Nevertheless, adding encryption to a legacy application is often non-trivial, as many of the issues are non-intuitive and the use of encryp-tion, where it is not needed, can have serious performance implications. If security is impor-tant you should use strong encryption with an appropriate key length (such that brute-force decryption is impossible in a feasible time-frame; which means that keys must get longer as computer technology gets more powerful), but some countries place restrictions on what algorithms can be used. And, paradoxically, open source algorithms are usually more ef-fective than proprietary ones (largely, be-cause defects will be put in the public domain so they can be addressed); but sometime the use of proprietary algorithms is mandated. Then, key management is an issue, as is key recovery (loss of the key to strongly encrypted data is equivalent to destroying it physically; and unencrypted backups are a security expo-sure). Uniface 9.4 not only provides encryption, which can be used as-is, but its abstraction of the business logic around encryption from the underlying encryption technology will make it easier for non-specialists to deal with these more sophisticated requirements

Page 17: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

15 © 2010 Bloor ResearchA Bloor InDetail Paper

Compuware Uniface 9.4

The vendor

Vendor background

Compuware was founded in 1973 as a profes-sional services company, and it was not until the late ‘70s that it introduced its first product, Compuware Abend-AID. The company also started its international expansion at about the same time, in 1978. Today, it has 84 offices world-wide in 30 countries, and employs ap-proximately 4,100 people. It became a public company in 1992.

Abend-AID, as its name suggests, was, and still is, a mainframe-level fault management tool. Nowadays its emphasis is with DB2 and CICS, though that obviously was not so when it was first introduced. In any case, the product proved overwhelmingly successful, to the ex-tent that it holds some 90% of its market.

Subsequently, Abend-AID was joined by File-AID, XPEDITER and DBAXPERT during the course of the ‘80s but these remained focused at the mainframe level.

This did not change until the early ‘90s, when Compuware started to move into the client/server and, subsequently, distributed mar-kets. It has done this not just by converting its existing products, but also by strategically ac-quiring a number of companies in complemen-tary market sectors. For example, it acquired Uniface and its eponymous product in 1994. These acquisitions and internal developments meant that Compuware solutions addressed the complete application lifecycle at that time.

In 2009, however, Compuware recognised that application development was becoming commoditised and changed its focus again. It acquired Gomez, a leading web application experience management tool, delivered as a service (that is, it uses the SaaS, Software as a Service, model), completing its end-to-end ap-plication performance management capabili-ties, operating across the Enterprise including the mainframe and the Internet. It also sold its Quality Solutions and DevPartner product lines (including OptimalTrace business re-quirements management) to Micro Focus.

Compuware now offers solutions for port-folio management, based upon Compuware ChangePoint; end to end application service management focused around the Vantage and Gomez product lines; mainframe data, quality and performance management, with tools like Abend-AID, File-AID and so on;

collaboration, with Covisint; and enterprise application delivery, which is now focused on the Uniface Application Platform Suite. Com-puware has also undergone an internal reor-ganisation, resulting in Uniface becoming a separate business unit, so Aad van Schetsen, Vice President & General Manager Uniface, now reports directly to Compuware’s Chief Operating Officer. We think that this could be a healthy sign for Uniface.

The Uniface Application Platform Suite in fact consists of three products: Uniface itself, Uni-face View and Uniface Flow. View and Flow provide enterprise information portal and business process modelling, integration and management (workflow) capability respective-ly. Both of these products, which may be used in conjunction with Uniface (they are included with it as a part of the Application Platform, now in an integrated workspace) or independ-ently, were developed by Compuware using Uniface, though users will not necessarily be aware of that fact.

Traditionally, the company has always been strongly oriented towards direct sales. How-ever, while this remains the case, Uniface (which continues to be developed in the Neth-erlands, whence it originated) has a significant VAR community of more than 420 Business Al-liance partners, who tend to be solutions led. Indeed, a number of the enhancements (for example, increased 24 x 7 support and easier deployment options) in previous releases have been made at the behest of this community and there is now a new focus going forwards on the Channel and the place of VARs as in-termediaries in the supply of Uniface-powered business services to end users.

Interestingly, Compuware is still reporting increased interest in the use of Uniface: a number of its older partners have previously experimented with the use of .NET and J2EE environments but have found these to have too high a learning curve and have therefore come back to Uniface. At the same time we under-stand that Uniface has proved of particular interest in emerging markets such as Brazil, Mexico and China and the company is gaining new users for Uniface in such countries. We have heard similar stories from other vendors reporting the same interest in the use of es-tablished 4GLs in these emerging markets, so we suspect that this is a trend that Compuware should be able to continue to capitalise upon.

Page 18: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

16© 2010 Bloor Research A Bloor InDetail Paper

Compuware Uniface 9.4

The vendor

Compuware web addresses:

• http://www.compuware.com

• http://www.compuware.co.uk

• http://www.uniface.info

• http://MyUniface.com

• http://frontline.compuware.com/

• http://www.youtube.com/unifacesme

• http://twitter.com/uniface

The global Uniface community site, a cen-tral point for the various Uniface user groups around the globe is at www.uniface.info. The last three of the web sites listed include pro-vision of on-line video and conventional sup-port for Uniface, as well as on-line web-based training. While MyUniface has been around for some years, the YouTube and Twitter sites are more recent.

Product futures

The focus in version 9.4 is on enhanced Web 2.0 capabilities: support for Rich Internet Ap-plications (RIA) out of the box, with RIA widgets connected to Uniface triggers; and with sup-port for separation between the logic and the layout of RIA solutions.

Future releases will build on this, with a full JavaScript API; and Version 10 (expected late 2011 or early 2012) will concentrate on the de-veloper user experience. While Compuware will want to preserve what makes Uniface special for its loyal developers, it will probably also want to provide a more Eclipse-like expe-rience for the younger developers it is hoping to attract to the Uniface environment. In addi-tion, later releases will probably address cloud computing environments and even deliver “Uniface as a Service” in the form of some kind of development environment rental option.

Page 19: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

17 © 2010 Bloor ResearchA Bloor InDetail Paper

Summary

Arguably the biggest difficulty that Compuware faces with respect to Uniface is that development environments with a 4GL/RAD ancestry have fallen out of fashion. We believe that this is a mistake. The sort of productivity gains to be attained from a product such as Uniface, both in initial development and on-going maintenance, are significantly more substantial than those deriving from code-based development environ-ments such as Visual Studio .NET, Eclipse and other IDEs.

In addition, by implementing efficient AJAX under the covers, Uniface should help to address some of the efficiency and performance issues with much hand crafted AJAX.

Moreover, most code-based IDEs do not offer the same guarantee of future proofing (as proved by example in the case of Compuware) and, indeed, the history of some of the suppliers in this market suggests exactly the reverse. In our opinion, far more attention should be paid to development products like Uniface, which deserve a resurgence of interest within the marketplace, not just in emerging markets but also more generally. That said, Compuware continues to gain significant numbers of new customers for Uniface: not only does the product war-rant such an investment, it merits even more widespread consideration.

Further Information

Further information about this subject is available from http://www.BloorResearch.com/update/2002

Compuware Uniface 9.4

Page 20: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

Bloor Research overview

Bloor Research is one of Europe’s leading IT re-search, analysis and consultancy organisations. We explain how to bring greater Agility to corporate IT systems through the effective governance, manage-ment and leverage of Information. We have built a reputation for ‘telling the right story’ with independ-ent, intelligent, well-articulated communications content and publications on all aspects of the ICT industry. We believe the objective of telling the right story is to:

• Describe the technology in context to its busi-ness value and the other systems and processes it interacts with.

• Understand how new and innovative technolo-gies fit in with existing ICT investments.

• Look at the whole market and explain all the so-lutions available and how they can be more ef-fectively evaluated.

• Filter “noise” and make it easier to find the ad-ditional information or news that supports both investment and implementation.

• Ensure all our content is available through the most appropriate channel.

Founded in 1989, we have spent over two decades distributing research and analysis to IT user and vendor organisations throughout the world via online subscriptions, tailored research services, events and consultancy projects. We are committed to turning our knowledge into business value for you.

About the author

David NorfolkPractice Leader Focus Area: Development/Governance

David Norfolk first became interested in computers and programming quality in the 1970s, working in the Research School of Chemistry at the Australian Na-tional University. Here he discovered that computers could deliver misleading answers, even when pro-grammed by very clever people, and was taught to pro-gram in FORTRAN. His ongoing interest in all things related to development has culminated in his joining Bloor in 2007 and taking on the development brief.

Development here refers especially to automated systems development. This covers technology including acronym-driven tools such as: Application Lifecycle Management (ALM), Integrated Development Environments (IDE), Model Driven Architecture (MDA), automated data analysis tools and metadata repositories, requirements modelling tools and so on. It also covers the processes behind them and the people issues associated with implementing them. Of particular interest is organisational maturity as a prerequisite for implementing effective (measured) process and ITIL (v3) as a framework for automated service delivery.

David is a past co-editor (and co-owner) of Application Development Advisor and associate editor for the launch of Register Developer, and is currently executive editor for GEE’s “IT Policies and Procedures” product. He has an honours degree in Chemistry and is a Chartered IT Professional, has a somewhat rusty NetWare 5 CNE certification and is a full Member of the British Computer Society (where he is on the committee of the Configuration Management Specialist Group).

His early career involved working in database administration (DBA) and opera-tions research for the Australian Public Service in Canberra. David then returned to his UK birthplace (1982) where he worked for Bank of America and Swiss Bank Corporation, at various times holding positions in DBA, systems development method and standards, internal control, network management, technology risk and even PC support. He was instrumental in introducing a formal systems de-velopment process for the Bank of America Global Banking product in Croydon.

In 1992 he started a new career as a professional writer and analyst. Since then he has written for many major computer magazines and various specialist titles around the world. He helped plan, document and photograph the CMMI Made Practical conference at the IoD, London in 2005 and has written many industry white papers and research reports including: IT Governance (for Thorogood), On-line Banking (for FT Business Reports), Developing a Network Computing Strat-egy and Corporate Desktop Services (for Business Intelligence), the Business Implications of Adopting Object Technology (for Elan Publishing).

He has his own company, David Rhys Enterprises Ltd, which he runs from his home in Chippenham, where his spare moments (if any) are spent on photogra-phy, sailing and listening to music.

Page 21: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

Copyright & disclaimer

This document is copyright © 2010 Bloor Research. No part of this publication may be reproduced by any method whatsoever without the prior consent of Bloor Research.

Due to the nature of this material, numerous hardware and software products have been mentioned by name. In the majority, if not all, of the cases, these product names are claimed as trademarks by the companies that manufacture the products. It is not Bloor Research’s intent to claim these names or trademarks as our own. Likewise, company logos, graphics or screen shots have been repro-duced with the consent of the owner and are subject to that owner’s copyright.

Whilst every care has been taken in the preparation of this document to ensure that the information is correct, the publishers cannot accept responsibility for any errors or omissions.

Page 22: Compuware Uniface 9 - Elosoft · Compuware Uniface 9.4 The product Product availability Compuware releases new versions of Uniface at approximately yearly intervals with the current

2nd Floor, 145–157 St John Street

LONDON, EC1V 4PY, United Kingdom

Tel: +44 (0)20 7043 9750 Fax: +44 (0)20 7043 9748

Web: www.BloorResearch.com email: [email protected]