What Is An Intranet?
If Intranets were made into a movie it would probably be called, "Honey, I Shrunk the Internet!" A simple definition of an Intranet is: bringing proven Internet technologies, such as Web servers, an ubiquitous networking protocol (namely TCP/IP), and other Internet protocols such as HTTP (Hyper Text Transfer Protocol), MIME (Multipurpose Internet Mail Extensions), SMTP (Simple Mail Transfer Protocol), etc., inside the walls of your company. Intranets can be used for:
It's important to remember that an Intranet is more than any one of these applications; it's the sum of these applications working together to help an organization to communicate more effectively and efficiently. In today's fast paced business world, it's very important to have a way to share information just as quickly. A corporate Intranet provides a cost effective way to do that, using technologies and applications that have already been tested and used on the Internet.
- Publishing corporate information, such as the latest product information, human resource handbooks, reports, marketing information and even corporate telephone directories
- Conducting virtual meetings - running advanced video conferencing applications on your Intranet
- Providing access to electronic mail
- Broadcasting the latest corporate news and information to all corporate computers at the same time
- Providing an easy way to access centralized databases
But what's the big deal, companies have implemented local area networks for years, how are Intranets any different? Intranets are more than just local area networks; in fact, they are transforming the deployment of corporate client/server-based information systems. Java can play a large role in the deployment of these new-age distributed information systems. To understand where you're going, it's always good to have an even better understanding of where you have been. Let's begin with a quick review of the evolution of the client/server paradigm.
The Evolution of Client/Server Paradigms
Client/server technologies have gone through a number of distinct phases in their evolution. To fully understand the impact of Intranets on client/server computing, it's important to review these evolutionary steps. The first step in client/server evolution came with shared file server access to a centralized database, as illustrated in Figure 1. While this isn't really client/server technology, this is where its roots were born. This is the most elemental form of client/server computing, but simple doesn't come without a cost. It's not a very scalable paradigm, which means that as you add more and more users to the mix, it works less and less effectively.
In an effort to fix the scalability problem of the file-based paradigm, the more traditional client/server approach was taken by developers. Instead of just simply sharing files, the server side processes data requests and the client side manipulates the requested data, as shown in Figure 2. This provides more of a processing balance, with the client and server sharing the processing. This paradigm was responsible for the overwhelming success of the client/server architecture.
While the traditional client/server model answered the need for many small to medium size applications, it just doesn't have the power to scale up to enterprise-wide applications. To provide this level of scalability, another server, usually called an application server, is added to the mix, as shown in Figure 3. The processing load is more concentrated on the middle tier. This client/server paradigm is usually called three-tier, or sometimes n-tier. More than one middle tier server can be deployed to help balance the processing load. While this n-tier paradigm provides the highest level of processing power, it doesn't come cheap. N-tier client/server architectures have the highest hardware and development costs.
How Intranets Are Changing the Face of Enterprise Computing
Intranets are the new kid on the client/server block. Intranets pull together the best of the client/server paradigms - file-oriented application deployment and multi-tier data access, as shown in Figure 4. The biggest innovation of Intranet technology is that it brings together corporate information in a familiar cross platform interface - a Web browser.
Users can access the Web server from their Web browser to display standard HTML files, just like traditional file-based client/server paradigms. Using Web server side applications using CGI or other server side application interfaces, it's possible to develop applications which access a server side database, return the requested data to the Web server for processing (the middle tier) and display the results in a user's Web browser. This is analogous to the traditional and multi-tier client/server models. Using the latest Java server (http://jserv.javasoft.com) and servlet technologies, it is also possible to develop server side Java-based applications which interact with a centralized database.
Using client side Java applets, the Intranet becomes more of a traditional client/server architecture. Java applets are requested from the Web server and are fully executed in the client Web browser. From there, they can link back to a Web server or other database server to retrieve the required information. Just like traditional client/server application development, client side applications place the appropriate calls to server side resources to request data.
What You Need to Deploy Your Intranet
You may be wondering by now what it will take to set up and deploy your Intranet. Well, you may be pleased to discover that you may already have many of the pieces of your corporate Intranet in place. The foundation of a successful Intranet is built upon:
The Keys to Building Your Intranet
- A local area network (usually using a TCP/IP-based protocol)
- A Web server
- Client systems with Web browser technology installed
Many times, corporate Intranets begin their lives as departmental efforts that grow to encompass more and more corporate information. The problem with this ad hoc approach is that there is often very little consideration for overall design and, instead of providing unified access to corporate information resources, the Intranet becomes a haphazard collection of information resources. I believe that there are four key characteristics in developing a successful Intranet:
A clear mission is the cornerstone of any successful project, but even more so when it comes to Intranets. The most important mission-related questions include: Who is the Intranet being developed for and what is its primary purpose? Having a clear idea of the mission of your Intranet will direct your development efforts.
Selecting Intranet standards can be like wading through a mine field: ActiveX or Java; CORBA (Common Object Request Broker Architecture), Netscape IIOP (Internet Inter-ORB Protocol) or Microsoft DCOM (Distributed Component Object Model); JDBC (Java Database Connectivity), Microsoft DAO (Data Access Objects), or Microsoft RDO (Remote Data Objects). Each of these standards has its individual strengths and weaknesses. The advantage of an Intranet, though, is the ability to exercise control over every user's desktop. Obviously, it is important to carefully select the standards your Intranet will be built upon. My best advice is to choose conservatively and stick to the choice that you make.
You can't rule the world in a single day, and it's not possible to completely develop your Intranet into everything that you want in a single day either. Intranets are well suited to incremental development. Even though your initial development efforts may start small, don't forget to keep your bigger mission in mind.
While Internet security always seems to be a high profile issue, Intranet security is just as important - if not more important. Intranet security is probably the most overlooked aspect during design and development. Make sure that your Web server and databases are secure. Make sure that each user has access only to the information that they need. While this can be a tedious task, don't underestimate its importance.
The Role of Java On Your Intranet
Java can play a significant role in the deployment of your Intranet. Of course, Java has its traditional role of enlivening Web pages and bringing higher levels of interactiveness to your Intranet. Its greater role, though, will be in turning your Intranet into a new client/server paradigm. Because Java can work so closely with your Intranet - from applets to applications - it will increasingly become the choice for enterprise application development. Intranet-based Java applications don't suffer from many of the problems associated with traditional application deployment. Once an application is completed and placed on your Web server, it instantly becomes accessible to your entire corporation. Java applications provide the ease of centralized control and deployment on your Intranet, with the flexibility and scalability of client/server-based access.
Java On The Client
Client-based Java applications can provide a better way for corporate developers to create new, easier to deploy and maintain applications. An excellent example of what can be accomplished with client side Java-based applications is Corel Wordperfect Suite (http://www.corel.com). Corel has implemented their entire word processing, spread sheet and presentation suite in Java. Deployed on your Intranet, this can provide complete access to the applications most enterprise users use every day without the need for complex installation procedures. Many corporations may not develop Java applications to the scale of WordPerfect Suite for their Intranet, but Java will still have a firm foothold in enterprise applications development.
Java On The Server
With the final release of the Java Server and the Java Servlet (http://jserv.javasoft.com) Development Kit from JavaSoft, Java will now have an expanded role on the server. The Java Server provides extensions to all of the major Web browsers, paving the way for Java servlets to take over from the more traditional CGI based applications. Since Java servlets are Web server and platform independent, they make an ideal low risk choice for server side development. Java servlets provide the ability to create multi-tiered applications that are ready for enterprise deployment.
If thin clients will ever flourish, their best chance will come on the Intranet. Since Intranets are localized, they provide the fastest access to the network, which is critical to the success of thin clients. While my bets are still on full-featured clients, if thin clients have a chance to take over the enterprise, it will be Intranet-based Java applications that will pave the way for their success.
Are Intranets Worth The Cost?
Intranets certainly do sound exciting - and they can certainly increase corporate communications - but how can you convince your boss that they are a good idea? There's an old saying that goes, "To get to the root of something, follow the money." With Intranets, the money comes in the form of ROI (Return on Investment). If you can prove to the powers that be that Intranets can and will save money, you're more than halfway home. Recent studies by International Data Corporation have concluded that average ROI for Intranets has been above 1000 percent, and that these returns are being seen in weeks, not the typical months or years of typical investments in technologies. There are a few keys to this high rate of return:
The Future of Intranets
- Leveraging existing technologies in new ways
- Lower end user training costs - users are already familiar with how to use Web browsers
- Increased gains in productivity, since information becomes more accessible
With the latest round of Web browser releases - Netscape Communicator (http://www.netscape.com) and Microsoft Internet Explorer (http://www.microsoft.com) - client side Intranet access is becoming more solidified. Intranets will increasingly become the paradigm for corporate information system access. Intranets provide a unique ability to bring together corporate information resources in a readily accessible and easy to use format. Developers can get the most out of Intranets by looking at it as a new platform in the client/server paradigm. While Intranets won't replace all traditionally developed systems overnight, they can bring a new and easier way to access these legacy information systems. As client/server applications took an increasing role in the enterprise, the role of information systems departments changed from manager to service providers. As Intranets gain an increasing role in companies, they are also causing a new transformation in the role of information systems departments from service provider to teacher. It's important for information systems departments to understand and embrace this new role; this will allow the corporate Intranet to become even more successful.
If Intranets are not currently playing a role in your organization, it is clear that they will in the near future. Java will play a large role in the transformation of traditional client/server applications to the Intranet paradigm. Java already has a firmly seated role on the client side of the client/server equation. With the recent final release of the Java Server and the Java Servlet Development Kit, Java will now also have an increasing role on the server side as well. Finally, the key steps in developing your Intranet include:
Intranet Resources On The Internet
- Develop a mission - Make sure you understand where your Intranet is going before you begin.
- Make sure that you have a networking infrastructure in place (TCP/IP-based networking will provide the highest level of flexibility).
- Select a Web server.
- Collect and organize the information for your Intranet.
- Learn the tools necessary to deploy your Intranet -HTML and Java will take you a long way.
- Develop your Intranet Web pages and applications. Remember that it's OK to roll your Intranet out in an incremental fashion.
- Have fun!
Interested in finding out more about Intranets? There are a number of Intranet-specific Web sites on the Internet, including:
About the Author
John W. Fronckowiak is the author of "Building Intranets for Dummies" and "Teach Yourself Database Programming With Visual J++ In 21 Days," and "Teach Yourself OLE DB and ADO In 21 Days,". John is also the author of JDJ's Visual J++ Corner column.
He can be contacted at [email protected]