M Cody Woods and Dr. Conan Albrecht, School of Accountancy and Information Systems
Corporations in today’s high-tech business world must be fully networked internally and externally to be competitive. Quick development and employment of connection applications is vital to a corporation’s success. Only by effectively connecting internally to all divisions and externally to customers, suppliers and partners, can companies gain advantage over their competitors. Two major software companies, Sun Microsystems and Microsoft, have each developed new technologies that promise to change the way corporations connect to each other and do business today by providing a common development standard.
Currently, many corporations face the difficulty of connecting and integrating applications within the corporation or with applications of other corporations. Many applications are written in different types of code, access different types of information in different ways and thus are not able to be integrated without a great amount of effort and resources being expended.
A simple analogy illustrates this point. Imagine 10 authors, each writing portions of a book that will be integrated together. All write their portion, but when they try to combine the work into a whole, they find that each wrote their portion in a separate language. They must then expend resources to translate the book into a common language with transitions that flow seamlessly.
For this reason Sun Microsystems and Microsoft have developed common development languages. These two companies offer a common base, or common development language, for corporations to build and port applications to be used internally and externally.
Sun Microsystems released J2EE approximately two years ago and many major corporations have already adopted J2EE. Microsoft countered by developing .NET as a common language for companies to use for building applications. Both appear to be a promising step towards greater integration for corporations.
My goal for this research was to make an analysis of both technologies and then compare and contrast them to determine the superior technology. This meant that I would have to seek information from a great number of sources to be able to understand both technologies, look at the different features that they both have and then make a comparison. Since this research dealt with technology, most of my information was found through the internet from reports and reviews from technology professionals. I decided to approach the research as unbiased as possible and not form any type of opinion previous to analyzing both technologies.
First I researched Sun Microsystems’ J2EE. J2EE is based on a programming language called Java. Java was developed in the early 1990’s amidst the outstanding growth of the Internet and the World Wide Web. One thing that should be understood is that J2EE is not a program but rather a set of standards used to build an application. J2EE is backwards compatible with many previous technologies that had been adopted by many corporations. This is important for corporations that have spent a lot of resources developing applications. J2EE provides many built-in, automated services. These services include communication between containers, transactional features, security and scalability. Without the J2EE architecture programmers would spend extra time adding these features.
.NET is Microsoft’s answer to the development and integration problem faced by corporations. It is a strong competitor for J2EE. .NET is based on a programming language called C#. It also provides many useful and powerful features for developers, including memory management, version management, code security, and backwards compatibility with an older Microsoft technology.
Both J2EE and .NET serve to address the same problems but do so in different ways. The greatest difference between them is the programming languages used. J2EE requires programmers to use Java. This is not a problem unless your programmers do not know Java. .NET on the other hand allows developers to use Visual Basic, C++, or C#. This offers greater flexibility for developers.
J2EE can be run on various types of servers: Linux, Unix, IBM iSeries, mainframes, Windows and others. .NET can only be ported to Microsoft operating system servers. Both use an advanced web technology called XML, but .NET has XML fully integrated into its technology.
My conclusion after researching and analyzing both technologies was simple. Each corporation must choose its technology. Each corporation has different needs and goals that are addressed differently by J2EE and .NET. The victor of this battle is the architecture that best suits the corporation. The complete version of my research and analysis can be downloaded from www.geocities.com/mcodyw/techontrial.doc.
In researching this topic I had a few obstacles to overcome. I had to first come to understand the technologies to a certain extent. That required quite a bit of learning on my part to be able to understand what the different technologies are and how they are used. I also had difficulty finding unbiased articles and research. Many of the articles I found were written by Microsoft or Sun Microsystems, or by technology professionals who held biases for one company or the other. Finally, I had difficulty explaining in simple terms what I had just come to understand. Although I had some difficulties the experience I gained was well worth the effort.
I was able to learn about two technologies that I will most likely be using in the future as part of my career. I have a better understanding of what many corporations must do to integrate with other corporations and the difficulties that arise from such efforts. The information I learned from this research will aid me not only in my college career but in my career as an Information Systems Professional.