From: Richard Maher Newsgroups: comp.os.vms Subject: Help sought from software developers Date: Thu, 27 Feb 1997 11:23:42 +0100 Organization: TIER3 Software Lines: 100 Message-ID: <331560AE.3BCC@rto.dec.com> NNTP-Posting-Host: edsc01.rto.dec.com Article 166476 of comp.os.vms: Hi, I need advice from some of the successful (preferably "one man shop" to small) software developers out there. I have recently developed a client/server middleware package called TIER3 and am having trouble getting it to market. The people that I have talked to in various companies, although very interested, always seem to balk at the prospect of support. (ie: How long will you be around? Hit by a bus scenario etc) How have you people overcome these concerns? I will shortly be commencing work on TIER3 V2.0 as (all modesty aside :-) I know it is what VMS developers want/need, but I also need to pay the rent. So if any of you have had experience (good/bad) with partnerships, leaving the source code with lawyers, or just plain selling something out-right, and would like to share those experiences please let me know. Regards Richard Maher. PS. Below is a brief description of TIER3. TIER3 Functional Overview ------------------- Tier3 is the client/server system that enables remote client access to your server system resources. As the middleware residing between the client and server components of your application, Tier3 regulates and schedules client requests, allocates the resources necessary to satisfy those requests, and channels the resulting output back to the requesting client. Similar to a Remote Procedure Call, Tier3 allows a remote client (eg: a Powerbuilder program on a Windows PC) to access your 3GL routine running on a VMS server. But unlike other RPC implementations, TIER3 offers the following benefits: . Transparent Multi-Threading. Tier3 provides an independent multi-threaded communication server for each application. This relieves your server code from the need to perform its own threading and mutexing. . Application Based Tuning & Configuration. Because every Tier3 application has its own communication server, inter-application resource contention is reduced, and each application on a given node can be tuned/configured independently. . Persistent Network Connection. Once accepted, the network connection between client and communication server is maintained until either your client or your server code asks specifically for it to be dropped. This removes the overhead of having to obtain a channel, request a connection, and pass authorization, each time a client needs to access your server application. . Secure Client/Server Applications. In addition to ensuring that only authorized clients can access your application, Tier3 also identifies the username that the client is entitled to assume on the server node. This allows your server application to perform additional security checks, perform charge-back accounting, or maintain an audit trail of who has been modifying a database. . Re-usable Execution Servers. Tier3 execution servers are re-usable on a transactional basis, with your development team controlling how long a transaction, or server affinity, will be maintained. This is achieved by effectively supplying your 3GL RECEIVE routine with a full-duplex, or conversational, pipe as its only parameter. . Dynamic Execution Server Creation. As client demand dictates, each application's communication server will grow/shrink the execution server processing pool, in accordance with the parameters specified by your system manager in the Tier3 Configuration File. . Preservation of Existing Investment. Tier3 server development is as simple as creating a shareable image containing the six subroutines or User Action Routines that Tier3 will activate on your behalf during the life of an execution server. Your UARs can be written in any 3GL, and have the complete VMS execution environment at their disposal. You are free to spawn a sub-process, perform inter-process communication, or your server application can become a client of another Tier3 application on a different node. This ability to re-use/incorporate existing 3GL code into your new Tier3 applications, coupled with the fact that your development staff will find very little difference between developing Tier3 server applications and developing any other VMS application, means that your existing IT investment is preserved. Contd. . . -2- . No Tier3 Specific Client Software Required. By not layering another API on top of the standard Socket or System Service interface, Tier3 allows your client developers unrestricted access to the underlying network protocol. Performance features such as asynchronous SENDs and Interrupt/ Out-of-Band functionality are all available to you. In summary, once your organization has decided that it needs the security, performance, scalability and functionality of a three-tiered client/server architecture, then your organization will need TIER3.