• No results found

UNIT 3: INTERNET – BASED SYSTEMS 1.0 Introduction

2.0 OBJECTIVE

At the end of this unit, you should be able to • Explain Application Servers

• Describe Java Development Platform • Discuss Application Service Provide

3.1 APPLICATION SERVER

Originally conceived as a piece of middleware to link a Web sever to applications on other company systems, the application server has grown into a framework for developing Internet-based applications. Figures 9-5 illustrates the basic application server architecture. A set of application servers is connected to create a single virtual application server. This virtual server takes requests from clients and Web servers, runs the necessary business logic, and provides connectivity to the entire range of back-end systems.

In addition to the middleware and integration functions, application servers have become application development platforms, with wide range of development and automatic code generation tools. Their functions can be divided into five categories, says Radding: business logic processing, automation of low level core processes, middleware, application development, and prebuilt components.

Business Logic Processing. The application server stores and runs business logic components for applications. These components are basic,

DAM 382: INFORMATION SYSTEM MANAGEMENT

reusable building blocks for applications and might, for example take the form of applets or Java-Beans. More recently, vendors are standardizing on Java 2 Enterprise Edition (see the following Standards section) to provide components.

Automation of Low-level Processes. The application server can generate networking and communication code, and code for a wide range of low- level functions. These functions can include security, session pooling, and database connectivity. This capability can drastically reduce the time needed to code an application, increasing programmer by as much as 75 percent.

Middleware. As already mentioned, the application server becomes the backend link to legacy systems. In addition, it becomes the link to systems of customers and business partners. Thus, the application is the central point of integration for all Internet-based systems.

Application Development. The application server is delivering many of the capabilities provided by integrated development environments (IDE).

DAM 382: INFORMATION SYSTEM MANAGEMENT

With the IDE an integral part of the application server, companies can build many of their client-server application server.

Prebuilt Components. Recently, vendors of application servers have begun including prebuilt components, such as tag libraries, servlets, JavaBeans, or, in the Microsoft world, components based on the component object model. Again, the goal is to increase programmer productivity.

In addition to providing application development tools, the application server framework provides scalability. As demands on applications grow, a company can increase the power of its virtual application server by either installing more servers or replacing smaller servers with larger ones. In either case, the application server framework provides easy migration. The application server also provides automatic load balancing among the multiple servers and coordinates session information across multiple instances of an application.

In summary, the goal of the application server is to automate and manage many of the technical tasks in the development and running of Internet-based applications. In doing so, developers can focus more on the business issues, rather than the technical details.

3.2 JAVA DEVELOPMENT PLATFORM

If companies are to develop Internet-based systems quickly, as the e-business environment demands, they need component-based development tools. If, in addition, the systems being developed are to be portable and scalable, the companies need to employ open system architecture. For both component-based tools and open systems, industry standards are necessary. Currently, some of the most widely used standards for Internet-based systems development have evolved from Java.

Java was originally developed to provide applets that run on We clients: however, it quickly evolved into a full-programming language with the goal of

DAM 382: INFORMATION SYSTEM MANAGEMENT

providing a platform-independent language that could run on any system through a “Java virtual machine.” This promised application portability was dubbed “write-once, run-anywhere” that promise has not been met, however. As a language for client applications, Java performed poorly relative to other languages, such as C++. So companies have not converted their client-based applications to Java. However, Java has evolved into a standard platform for developing server- side applications.

The two major components in the Java server-side platform are Enterprise Java Beans (EJB) and the Java 2 Enterprise Edition (J2EE) software specification. EJBs emerged on the developer scene in 1998 when Sun Microsystems unveiled a specification for creating server-based applications using software components using software components. These components, the EJBs, act as preconfigured pieces of code that IT staff no longer have to build from scratch. A component can be as simple as an order-entry form or as complicated as a virtual shopping cart that keeps track of where users have been and maintain their privacy. The use of these reusable components can greatly enhance programmer productivity.

In the Windows environment, and in direct competition with EJBs, Microsoft wants developers to build application using the Components Object Model (COM) and Distributed Component Object Model (DCOM). Although COM components of the same benefits of EJBs, they have some significant differences. COM server components can realistically be deployed only on windows servers, and COM-based services components can realistically be deployed only on Windows servers and COM-based services are generally unavailable to non-Windows machine. On the other hand, EJBs supply data to Java-enabled Web browsers running on a wide variety of platforms. As a result, EJBs have emerged as the early preferences for companies building Internet- related services.

The J2EE software specification defines a standard for developing Internet-based enterprise applications. It simplifies enterprise applications by

DAM 382: INFORMATION SYSTEM MANAGEMENT

basing them on standardized, modular component, by providing a set of services to those components, and server-side delivery of data and for thin-client software that interacts with users throughout the enterprise. Components of J2EE include an API for database access, security modules that protect data in the Internet environment, and modules supporting CORBA for interactions with existing enterprise applications. J2EE also provides full support of EJB components and Java servlets, as well as support for XML technology.

J2EE provide a standard, which vendors of application server products are quickly adopting. From the user perspective, J2EE and EJB provide an alternative to building e-business systems from scratch or buying packaged e-business systems. Having a multivendor platform with prebuilt, reusable components allows companies to reduce the development cost and the time-to –market for new enterprise applications or upgrades to existing enterprise applications.

3.3 APPLICATION SERVICE PROVIDERS

A new alternative to system development exists that essentially outsources the entire process. As noted, application service provider (ASPs) are companies that rent software applications over the Internet. Costumers subscribing to an ASP use applications residing on the ASPs servers. Subscribing to an ASP allows companies to avoid purchasing, installing, supporting and upgrading expensive software applications.

ASPs offer a wide range of applications and services, from Web hosting to ERP use, from database management systems to industry B2B e-commerce portals. If fully responsible for all application maintenance and upgrades, the ASP also manages the relationships with the vendors. The target markets for ASPs have been small companies that want minimally customized applications, large organisations in need of complex “niche” applications they cannot afford to develop themselves, and vertical industries that need B2B electronic commerce

DAM 382: INFORMATION SYSTEM MANAGEMENT

services or industry-specific software. Figure 9-6 shows one categorisation of ASPs.

The key benefit of using an ASP is that a company can get an application up and running in a short time with little initial investment. The company can use the resources it saved on its core business activities. The downside, however, is that companies have reported problems with negotiating service level agreements and support during downtime. In addition, a company needs to consider the strategic implications of having applications running outside the direct control of the company.

The preceding sections have discussed the foundations of system development and the newer kinds of system development options. But, in the end, system development is about projects. So a main tenet of good system development is good project management.

FIGURE 9-6 Types of ASPs

Type Capabilities

Enterprise Delivers a variety of high-end applications and offers some degree of customization and availability guarantees.

General Business Provides a variety of non- or minimally customizable applications to small and medium- sized business.

Specialist Delivers only a particular types of application (i.e ERP, customer resource management (CRM), human resources (HR), personal productivity, etc). Vertical Provides packaged and/or specialized applications

targeted at a particular vertical market segment.

DAM 382: INFORMATION SYSTEM MANAGEMENT

In developing Internet-based systems, companies have learned they must negotiate language differences. For example, a system may have to port old COBOL application to java, reconcile interface discrepancies, and interface with back-end legacy applications, often without documentation or past experience with these systems.

5.0 SUMMARY

Many languages tools frame works are available for developing internet-based systems. Currently, the application server frame work appears to be the preferred method of users and vendors, also following the spirit of the Internet, customers are demanding open system, they do not want to be tied to a single vendors priefang technology. One open system language standard, java has evolved from a proposed client-side programming standard to a server-side application development standard.

6.0 TUTOR MARKED ASSIGNMENT

Development five categories of functions for an application server

7.0 REFERENCE/FURTHER READING

Naumann, T.D and A.M. Jenkins Prototyping: The New Paradigm for Systems Development

UNIT 4: PROJECT MANAGEMENT