Enterprise Solutions

Enterprise Solutions

Enterprise Solutions provide for a scalable, easy to manage programming solution to providing business management and information accessability for internal and external clients. Enterprise solutions deal with the problem of providing information to clients both externally and internally. It deals with programming and databases. The main problem being how to most efficiently get our data accessable to those we want to access it. The solution have the following characteristics and more:

  • Security - Should be able to be sure information is not being stolen by those we don't want to have access to it.


  • Scalability - Should be able to accomodate an increase in clients.


  • Cost - Should be easy to program.


  • Management - Should provide ability to manage the implementation including version control software and software that helps manage team effort with reguard to providing the solution.


  • Portable - Should be able to accomodate changes in technology.


Therefore, in order for a business to properly choose an enterprise solutions, a proper requirements definition must be completed. All desired features along with priorities for each feature must be assigned in order to make a suitable decision.
Application Servers

Enterprise solutions for implementing distributed systems generally revolve around an application server which provides several but not necessarily all of the following services:

  • Directory and naming services


  • Security


  • Distributed transactions


  • Fault tolerance management


  • Load balancing and clustering


  • Database services


  • State Tracking


These services are generally called technical infastructure services. There are many types of application servers that may supply some or all of these functions.
The applications that run on these application servers will receive requests from clients such as web browsers and using API program hooks will request or send information to/from other applications or through the interfaces to the specific service such as a database service. When a reply is received, the client request is responded to by the application.
There are also other areas of functionality that are offered by application servers that make their use easier such as:

  • Managing and writing applications


  • Integration with other systems.


To justify an application server the distributed system should require transaction processing across multiple databases.
For more information on application servers read the section about application servers in the independant platform area of this website.
Software Solutions

The two main current business solutions are:

  • J2EE - These are a suite of Java technologies including:


    • EJB - Enterprise Java Beans standardizes the program calls to the application server and standardizes the return calls.
    • JDBC - Java Database Connectivity
    • JNDI - Java Naming and Directory Interface
    • JMS - Java Message Service is a remote asynchronous communicastion to send messages to other objects. It is different from RMI (Remote Method Invocation) since the message is sent and forgotten.
    • RMI - Remote Method Invocation
    • JTA - Java Transaction API.
    • Java Mail
    • Servlets - Provides interfaces or (API calls) to the CGI (Common Gateway Interface) which interfaces between the web client browser and the web server.
  • Microsoft's .NET (Previously known as Microsoft's Web Solution Platform and Distributed interNet applications Architecture (DNA)). Based on these technologies:


    • COM - Component Object Modules
    • DCOM - Distributed Component Object Modules
    • MTS - Microsoft Transaction Server
    • MS-DTC - Microsoft Distributed Transaction Coordinator
    • MSMQ - Microsoft Message Queue server
    • MSCS - Microsoft Clustering Technology

According to Microsoft, current Microsoft .NET Servers include (These are Microsoft trademarks):

    • Microsoft Application Center 2000
    • Microsoft BizTalk Server 2000
    • Microsoft Commerce Server 2000
    • Microsoft Exchange Server 2000
    • Microsoft Internet Security and Acceleration Server 2000
    • Microsoft Host Integration Server 2000
    • Microsoft Mobile Information Server 2001
    • Microsoft SQL Server 2000