F2F-technology           Library  "JINRLIB"                      
                                       
    Authors: A.P.Sapozhnikov, T.F.Sapozhnikova                       You are
    Language: Fortran, Pascal (C++)                                  
    Environment: Delphi or C++ Builder                               visitor here.

            REENGINEERING TECHNOLOGY FOR AUTOMATION BUILDING
                  OF DISTRIBUTED COMPUTATIONAL SYSTEMS
             FROM STANDALONE-MADE FORTRAN-WRITTEN PROGRAMS

    Distributing computational jobs among the Local Area Network is a way of
    increasing efficiency of large scientific and technical problem solving.
    The existing standard technologies for programs parallelization, such as
    MPI or Open MP, are oriented on decomposition onto a number of more small
    processes. As usual this decomposition is performed manually while software
    developing or modernization.

    On the other hand there are no technologies for integration ready-made
    computational procedures onto more large distributed systems. Our project's
    main idea is an automation of building computational server from ready-made
    standalone programs. It permits to integrate well-tested old programs made
    by previous generation of developers, into modern data-processing systems,
    including advanced visualization facilities, databases and other ways of
    human-computer communication. Except that, this approach permits to involve
    into computational servers developing a lot of experienced experts in
    numeric methods, not wishing to master new modern tools. That's way the
    main difference between our approach and traditional point of view on
    distributed system development is in following: we're proposing a
    technology of joining instead of technology of decomposition.

    This is a re-engineering technology, because the main developer's tool
    became a program for converting of standalone-developed programs onto
    integrated parts of large distributed computer systems. The general
    architecture of proposed distributed computational system also seems to be
    rather non-traditional. User's workstation contains a client-process one of
    whose aims is to distribute jobs among a number of independent computational
    servers. Each of them is a separate process, which executes a corresponding
    program. Requests on input-output operations, needed for server, are
    interpreted by client.
   
    The number of servers and their location on network may be arbitrary,
    depending of client's requirement. Particularly server can be executed on
    the same user's workstation. User interaction is performed by client
    exclusively.

    Sources and detailed description (in Russian, format .pdf) are submitted.

    The investigation has been performed at the Laboratory of Information 
    Technologies JINR and supported by the RFBR grant 03-07-90347.