Gopalan Suresh Raj's Web Cornucopia
An Oasis for the parched Enterprise Services Engineer/Developer

    Viewpoints-The Battle for the Enterprise continues

    Viewpoints

    Microsoft is promoting its Distributed interNet Applications Architecture (DNA) as a platform for developing fully distributed enterprise applications. There are six core fundamental technologies which are part of Microsoft Component Services without which DNA would not be possible. They are,

    • COM - the ability to define components,
    • DCOM - the ability to take these components and move them onto another machine,
    • MTS - the component runtime environment in which components live, which watches requests coming into components and participates in processing them, providing security, automatic transaction management and a scaleable environment.
    • MS DTC - Distributed Transaction Coordinator which is very similar to CORBA’s Object Transaction Service which automatically handles distributed two-phase commits in enterprise applications.
    • MSMQ - code-named The Falcon, which is the asynchronous messaging capability and is somewhat similar to CORBA’s dynamic invocation interface.
    • MSCS - Microsoft’s Clustering Technology code-named The Wolf Pack - which allows bringing together very small little server machines in a bunch with Wolfpack as a good glue that holds them together for creating highly robust and very scaleable applications

    While Microsoft today is a one-stop shop for a viable set of distributed object application tools, Sun’s JavaSoft has created an environment where an industry of third-party distributed tools-and-platforms have started to flourish.

    Sun is promoting its Java Platform for the Enterprise (JPE) as a core technology for developing multi-tier distributed applications. There are six fundamental technologies that are part of this.

    • EJB - the ability to develop and deploy scalable, transactional, multi-user secure, distributed enterprise-level server application components.
    • Java/RMI - the ability to remotely invoke Java objects and their methods on different virtual machines
    • JNDI - which provides Java applications with a unified interface to multiple naming and directory services on the enterprise.
    • JDBC - the Java version of ODBC for database connectivity
    • JTS - the ability to provide the transaction system infrastructure required to support an application run time environment.
    • JMS - Java’s messaging capability.

    Update: Sun has since renamed Java Platform for the Enterprise (JPE) to Java 2, Enterprise Edition (J2EE) and has come out with a Reference Implementation for it.

    OMG SUN MICROSOFT Remarks
    CORBA      
    (Common Object Request Broker Architecture) JavaBeans COM (Component Object Model) the ability to define components,
      JavaBeans ActiveX controls Client side components,
    CORBA Java/RMI (Java/ Remote Method Invocation) DCOM(Distributed Component Object Model) the ability to take these components and move them onto another machine. It provides the ability to remotely invoke objects and their methods on different machines
    OTS (Object Transaction Service) JTS (Java Transaction Service) MSDTC (Microsoft Distributed Transaction Coordinator) the ability to provide the transaction system infrastructure required to support an application run time environment
    COS Transactions (CORBA Object Services Transactions) JTA (Java Transaction API) OLE Transactions the ability to programmatically code transactions in the application.
    COS Naming (CORBA Object Services Naming) JNDI (Java Naming and Directory Interface) ADSI (Active Directory Services Interface) provides applications with a unified interface to multiple naming and directory services on the enterprise.
    Dynamic Invocation Interface (DII) JMS (Java Message Service) MSMQ (Microsoft Message Queue) the asynchronous messaging capability
    CCM (CORBA Component Model) EJB (Enterprise JavaBeans) MTS (Microsoft Transaction Server) the ability to develop and deploy scalable, transactional, multi-user, secure, distributed enterprise-level server application components. It’s also the component runtime environment in which components live, which watches requests coming into components and participates in processing them, providing security, automatic transaction management and a scaleable environment.
      Servlets ISAPI (Internet Server API) Improvement over CGI/Perl scripts. Ability to programmatically (using Java or Visual C++ etc.) process Web Server requests.
      JSP (Java Server Pages) ASP (Active Server Pages) Ability to develop scripts layered on top of Servlets in the case of JSP and ISAPI in the case of ASP
      JDBC (Java Database Connectivity) ADO (Active Data Objects), OLE/DB, ODBC (Open Database Connectivity) For database connectivity

    Author Bibliography

    Gopalan Suresh Raj is a Senior Analyst, Software Architect, and Developer with expertise in multi-tiered systems development, enterprise service architectures, and distributed computing. He is also an active author, including contributions to Professional JMS Programming, Wrox Press, 2001, Enterprise Java Computing-Applications and Architecture, Cambridge University Press, 1999, and The Awesome Power of JavaBeans, Manning Publications Co., 1998. He has submitted papers at international fora, and his work has been published in numerous technical journals. Visit him at his Web Cornucopia© site (webcornucopia.com) or mail him at gopalan@webcornucopia.com.

    Back