comp.lang.ada
 help / color / mirror / Atom feed
* Ada Only for Government Agencies?
@ 1995-03-18 21:23 Michael Feldman
  0 siblings, 0 replies; 2+ messages in thread
From: Michael Feldman @ 1995-03-18 21:23 UTC (permalink / raw)


Fred McCall's note that Ada seems to be mostly for government agencies
started me thinking. As I said in my earlier response to Fred, if you
count the number of projects in that list of mine, you probably get more
government-related stuff than purely private. I don't know how indicative
this is, because it is far more difficult to get useful data from the
purely private sector; they are just much more secretive.

I thought I'd keep stirring things up by posting a project abstract taken
from the "Ada usage" articles maintained on the web page and in the AdaIC
server. If you have not seen this collection, you probably should surf
the net and find it - it makes good reading.

As you'll see, this note does not refute Fred; indeed, it discusses a
government project, namely the Swiss PTT Electronic Funds Transfer
system. Given that it is still fairly common in Europe for governments
to be involved in banking (as the U.S. Post Office was until a couple
of decades ago - anyone remember Postal Savings Accounts?), it is not
surprising that the Swiss PTT is into EFTS. 

What is surprising to me is that the company that built this system is 
authorized to discuss it... does anyone think that Chase Manhattan,
or Barings Bank (:-)) would be this open?

There are about 25 of these abstracts on the net, with more to come.

Mike Feldman

--- cut here ---

Form U126-O394
BANKING.TXT

Ada Information Clearinghouse, 1-800-AdaIC-11 (232-4211),
703/685-1477


      KUKOBEZA:  Ada Used to Automate Swiss Banking System
                  by Alan Paterson, Paranor AG


Background
The Swiss post/telegraph/telephone company includes a department
that runs a financial payments system. Customers hold
interest-bearing accounts, and transactions on these accounts are
made in a similar fashion to 'normal' banks. In practice, these
accounts form the major means of non-cash payments (also to and
from banking accounts) in Switzerland.

Implementation
The project is being realized in two phases.  First all customer
information is collected in a central database. This information
comprises:
*Details of the customer, e.g., address(es)  
*Details of all accounts held by each customer    
*Details of all Postcards (check guarantee, cash dispenser &
EFTPOS) held on each account
*Details of checks issued for each account   


This system is therefore the central store of knowledge of all
customers using the financial services of the PTT. A few
figures:  
*350 graphical workstations throughout Switzerland     
*Between 1.2 and 1.4  million customer records and approximately
the same number of account records      
*ca. 10,000 modifications per day (eight hours)   
*ca. 20,000 enquiries per day.     
*ca. 7,000 orders for checks per day.

This system has been realized and Version 2 is now in operation. 
As this article is being written, approximately 1/2 of the data
records have been brought on-line and more are coming every
weekend.  Work is proceeding on Versions 3 and 4 (added
functionality).

A few technical details.  
*The system consists to-date purely of VAX computers (although it
is planned to use Alpha-AXP machines in a future version.  There is
a central cluster of database servers, connected (by X25) to remote
clusters of VAX workstations.
*The operating system is OpenVMS.  
*The database system is DEC RdB.  
*With the exception of the database interface modules, three macro
assembler files and one C source file, all software is written in
(DEC) Ada. There exist to-date about 2,200 Ada source files.  
*There is extensive use of an in-house CASE tool supporting OOA/OOD
and finite-state automata.  
*The GUI is implemented with OSF/Motif and is highly structured to
use finite-state automata with the previously mentioned tool.  
*The GUI is multi-lingual (German, French, Italian), adjusts to the
mother-tongue of the user and produces output in the language of
the customer.  
*Communication between workstations and the central server cluster
is via an in-house Remote Procedure Call mechanism which supports
load distribution, exception passing over the network and automatic
recovery on errors.


Why Ada
 
Ada has been in use in Paranor since 1985 and there has never been
a suggestion that we use anything else. All active programmers are
agreed that a switch to another language would mean a marked
reduction in programming comfort and ultimately an inferior
product.  Ada was automatically used in this project. The principal
features of Ada which make it superior include:  
*Data abstraction/Information hiding. There is extensive use of
private and derived types.  
*Tasking. Especially for communication between computers.  
*Generics. Extensively used in the GUI.  
*The ease of calling non-Ada software (although this is less a
feature of Ada than of DEC-Ada/VMS)  
*The Ada Support system provided by DEC-Ada which makes the
administration of the 2,200 source files very much easier (no MAKE
files!)  
*Highly readable source code.

On Ada9X 

Since Paranor produces one-off projects and rarely products, the
object-oriented complaint that Ada has only primitive means of
inheritance is not a major issue. It is, however, to be expected
that the Ada9X features will allow even more elegant programs to be
produced.

Phase 2:  The actual financial transactions and the accounts.
This part is still in the design phase and is planned to be
completed by Jan. 1995 and operational in Jan 1996. Much can still
be said of this phase (e.g., 2,000,000 financial  transactions per
day) and this will be done in a following article.



(*) KUKOBEZA is a German acronym for something like - Customers,
accounts, payment-slips and payments.

**********************

The views, opinions, and findings contained in this report are
those of the author(s) and should not be construed as an official
Agency position, policy, or decision, unless so designated by other
official documentation.


Ada Information Clearinghouse (AdaIC)
P.O. Box 46593
Washington, DC  20050-6593
1-800-AdaIC-11 (232-4211), 703/685-1477, FAX 703/685-7019
adainfo@ajpo.sei.cmu.edu; CompuServe 70312,3303

The AdaIC is sponsored by the Ada Joint Program Office and operated
by IIT Research Institute.




^ permalink raw reply	[flat|nested] 2+ messages in thread

* Ada Only for Government Agencies?
@ 1995-03-19 20:41 tmoran
  0 siblings, 0 replies; 2+ messages in thread
From: tmoran @ 1995-03-19 20:41 UTC (permalink / raw)


In <3kfivl$8i8@felix.seas.gwu.edu> Michael Feldman wrote:
>or Barings Bank (:-)) would be this open?

Last year I did a project for a futures trading firm (not Barings)
using Ada.  It basically was merging multiple sources of stock
market histories, cleaning out the junk, filling in the gaps,
detecting the splits, company name changes, etc.  Ada tasking was
useful for displaying time series graphs with blinking highlighting
differences etc while asynchronously scanning through the database.
Fixed point allowed convenient handling of scaling factors (eg, 1/8s
etc).  And of course readability, modularity, etc all helped.  The
*big* benefit though, was in the many times a Constraint Error
caught some value that had gone off scale (due to junk data or
multiple splits, for instance), and the debugging convenience of an
unhandled exception message giving the line number so I could find
and defend against each source of bizarreness in future runs.

This msg is probably the total publicity that non-government
project will ever receive.



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~1995-03-19 20:41 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1995-03-19 20:41 Ada Only for Government Agencies? tmoran
  -- strict thread matches above, loose matches on Subject: below --
1995-03-18 21:23 Michael Feldman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox