Enterprise Web 2.0 with EGL
This book shows a way forward in the development of secure enterprise software. The authors describe the business implications of Web 2.0---a set of techniques for user collaboration on the Web---and describe how the computer language EGL makes developers more productive, protects a company's investment in existing software, and facilitates use of Rich Internet Applications. In addition, the book provides an overview of Web security. Enterprise Web 2.0 with EGL: o Introduces a variety of concepts that are essential for understanding modern computing, including service-oriented architecture, cloud computing, and agile development o Demonstrates how EGL handles widespread requirements such as service creation, database access, and reporting o Outlines the runtime technologies supported by EGL, including Java Enterprise Edition, Windows, IBM i, UNIX, and the mainframe environments CICS, IMS, and z/OS batch Enterprise Web 2.0 with EGL is useful for: o Executives, managers, and architects who seek a creative, long-term response to the complexity of application development o Traditional developers who need to access the latest runtime technologies o Students of information technology
1014876859
Enterprise Web 2.0 with EGL
This book shows a way forward in the development of secure enterprise software. The authors describe the business implications of Web 2.0---a set of techniques for user collaboration on the Web---and describe how the computer language EGL makes developers more productive, protects a company's investment in existing software, and facilitates use of Rich Internet Applications. In addition, the book provides an overview of Web security. Enterprise Web 2.0 with EGL: o Introduces a variety of concepts that are essential for understanding modern computing, including service-oriented architecture, cloud computing, and agile development o Demonstrates how EGL handles widespread requirements such as service creation, database access, and reporting o Outlines the runtime technologies supported by EGL, including Java Enterprise Edition, Windows, IBM i, UNIX, and the mainframe environments CICS, IMS, and z/OS batch Enterprise Web 2.0 with EGL is useful for: o Executives, managers, and architects who seek a creative, long-term response to the complexity of application development o Traditional developers who need to access the latest runtime technologies o Students of information technology
47.99 In Stock
Enterprise Web 2.0 with EGL

Enterprise Web 2.0 with EGL

by Ben Margolis
Enterprise Web 2.0 with EGL

Enterprise Web 2.0 with EGL

by Ben Margolis

eBook

$47.99  $63.99 Save 25% Current price is $47.99, Original price is $63.99. You Save 25%.

Available on Compatible NOOK devices, the free NOOK App and in My Digital Library.
WANT A NOOK?  Explore Now

Related collections and offers

LEND ME® See Details

Overview

This book shows a way forward in the development of secure enterprise software. The authors describe the business implications of Web 2.0---a set of techniques for user collaboration on the Web---and describe how the computer language EGL makes developers more productive, protects a company's investment in existing software, and facilitates use of Rich Internet Applications. In addition, the book provides an overview of Web security. Enterprise Web 2.0 with EGL: o Introduces a variety of concepts that are essential for understanding modern computing, including service-oriented architecture, cloud computing, and agile development o Demonstrates how EGL handles widespread requirements such as service creation, database access, and reporting o Outlines the runtime technologies supported by EGL, including Java Enterprise Edition, Windows, IBM i, UNIX, and the mainframe environments CICS, IMS, and z/OS batch Enterprise Web 2.0 with EGL is useful for: o Executives, managers, and architects who seek a creative, long-term response to the complexity of application development o Traditional developers who need to access the latest runtime technologies o Students of information technology

Product Details

ISBN-13: 9781583476864
Publisher: MC Press, LLC
Publication date: 01/01/2013
Sold by: Barnes & Noble
Format: eBook
Pages: 450
File size: 8 MB

About the Author

Ben Margolis is an IBM advisory writer and has more than 20 years of experience who designed and codeveloped a financial system for IBM headquarters. He is the author of IBM Rational Business Developer with EGL and SOA for the Business Developer. He lives in Cary, North Carolina.

Read an Excerpt

Enterprise Web 2.0 with EGL


By Ben Margolis, Danny Allan

MC Press

Copyright © 2009 Ben Margolis
All rights reserved.
ISBN: 978-1-58347-686-4



CHAPTER 1

Introduction


If you are overseeing a budget for information technology (IT), you are probably being cautious, and for good reason. At this writing, the economic downturn is global and severe, the worst since the Great Depression. When you review your company's need for software in light of financial constraint, you'll likely ask, "How do we minimize change, and how do we better handle the change that is unavoidable?"

Your answer depends on the importance of new software in your company's operation. For example, a firm that uses only long-standing applications might place a moratorium on new software development. In the opposite case, a firm that differentiates itself by adding new function might upgrade systems immediately. The use of software for differentiation might involve any of several benefits such as improved internal processes, better exchange of data with suppliers, or a more compelling outreach to potential customers.

We'll review the extent to which different companies rely on software. We use a set of categories — modes of reliance — to suggest how your company might respond to the current situation.


Modes of Reliance on IT

To categorize the different ways that a company uses IT, analysts Nolan and McFarlan suggest a grid whose axes represent first, "how much [a] company relies on ... smoothly operating technology systems" and second, "how much [a] company relies on IT for its competitive edge." We illustrate the four modes of reliance and describe them in relation to software (Figure 1.1).


Support Mode

A company in support mode uses software defensively to help employees fulfill activities that are internal to the company. The company accepts relatively poor online performance and uses manual processes as needed to make up for deficiencies in automated systems. The systems are not for customers or suppliers.

A clothing manufacturer that handles its own design, production, and distribution might be in support mode. In this case, developers focus on maintenance, and the guiding principle for IT personnel is "Don't waste money."

If your company is in support mode, consider incremental changes that add value, along with pilot projects that give your company experience in software technologies that might be of interest in the future.


Factory Mode

A company in factory mode also uses software defensively, but in this case the software is fast and reliable and is central to operational success, much as a set of conveyor belts is central to a manufacturing plant. "If the ... belts fail, production stops."

For example, an airline that has a sophisticated reservation system is in factory mode. Customers and suppliers access the system, and the guiding principle for IT is "Don't cut corners."

If your company is in factory mode, consider adopting innovations that are proven and that respond to a specific need. "Typically, factory-mode organizations are not interested in being the first to implement a new technology, but their top management ... monitor[s] the competitive landscape for any change that would require a more aggressive use of IT."


Turnaround Mode

A company in turnaround mode is on offense, retaining old systems for a time, but upgrading to a considerably new level of software for "major process and service improvements, cost reductions, and a competitive edge."

An insurance firm might be in turnaround mode when implementing an online system to address customers directly. The new effort is an expensive gamble, and the guiding principle is "Don't fail."

Almost any company must consider how to protect its current investment in software. However, if your company is in turnaround mode, you need to be particularly concerned with limiting the company's vulnerability. Enterprise modernization implies both technological upgrades and the integration of pre-existing systems.

A firm in turnaround mode often makes changes so profound that even temporary reversion to manual systems is not possible. The firm moves either to factory mode or to a state of continual upgrade, as described next.


Strategic Mode

A company in strategic mode is nearly always on offense and requires that systems be highly reliable even during innovation.

An example company is a defense contractor that receives components for ever-changing equipment from multiple locations and then assembles the product within days. The component-integration software requires continual upgrade, and the project-management software requires attention, too.

The guiding principle is "Spend as needed, and monitor results intently." If your company is in strategic mode, you'll want to retain the option of using the full range of capabilities provided by a given technology, and you want to have the flexibility of using additional technologies in the future.


IT as a Commodity

Our educated guess is that the majority of large- and medium-size companies in the industrial world are — or soon will be — in factory mode. Our guess is educated by the likes of analyst Nicholas Carr, who writes as follows: "By now, the core functions of IT — data storage, data processing, and data transport — have become available and affordable. ... They are becoming costs of doing business that must be paid by all but provide distinctions to no one."

Carr argues that IT is following the lead of other infrastructure technologies such as railroad transport and electric generation, which provide economic value by virtue of being shared rather than being wholly proprietary. For example, little wealth would have been created by miles of one-company track laid only to transport material to specific suppliers and customers. The greater wealth came from miles of shared and standardized track.

The later equivalent of either transit on a rail or electricity on a grid is data on a network.

For Carr, IT is becoming a commodity like the older technologies. Even a short-term lack of electric power can weaken a company, yet the presence of electricity gives no one firm a competitive advantage. Similarly, even a short-term need for manual processes can weaken a company in factory or strategic mode, yet traditional types of automation do not offer a competitive advantage to any one firm.

Whether IT is best seen as a commodity, companies will continue to spend much on information technology. In relation to business logic, a prudent manager asks


• How do we gain access to inexpensive software that fulfills its role?

• Is it still possible to gain a competitive advantage even as we defend ourselves against disruption?


Software that Fulfills Its Role


A company seeks software that has three characteristics: high quality; sufficient longevity; and reasonable cost:

• Software is of high quality if it fulfills the business need well. Measurement of quality includes minimal errors, an appropriately quick response to a single invocation, and (as necessary) an appropriately quick response to simultaneous invocations.

Interactive software additionally requires ease of use; attractiveness; and increasingly, some of the user-centered function available in Web 2.0.

• Software is of sufficient longevity if it can remain in service despite external changes of at least three kinds: business-process change, as may result (for example) from a merger or from new government regulation; business-data change, as may result from a social development like the need to store email addresses; and technical change — for example, change in operating systems, databases, connectivity software, and interface devices.

• Software is of reasonable cost if it is inexpensive to purchase, to license, or to develop and maintain, in comparison to the cost of fulfilling the automated task in some other way.


If a company writes software, the development effort must contribute to the company's long-term success rather than draining resources. The test of economic viability is always present, perhaps now more than ever.


Software that Enables a Competitive Advantage


Strategists John Seely Brown and John Hagel respond to Carr's statement that IT offers less competitive advantage than in previous years: "Significant opportunities for innovation continue to occur because advances in IT create possibilities not previously economically available. ... Companies have tended to think too narrowly. In particular, many companies have become locked into the view that IT can reduce transaction costs but then think of transaction costs as encompassing only the transfer of ... data from one place to another. Viewed more broadly, transaction costs encompass such challenging business issues as the creation of meaning, the building of trust, and the development and dissemination of knowledge. These dimensions of transaction costs often represent significant bottlenecks to performance improvements and competitive advantage."

In the next sections, we introduce two areas (perhaps familiar ones) that enable competitive advantage: Web 2.0 and service-oriented architecture.


Web 2.0


The World Wide Web is an Internet subsystem that provides access to more than "a trillion unique" pages. The Web also provides access to software services that offer data and functionality for many purposes, as described later.

The public-domain Web dates from 1993, when pages were already viewable. From the mid-1990s, people have been responding to input forms, but early users didn't collaborate with one another online.

The essential Web technology is largely unchanged, but changes in practice and in related technologies now let users update pages, build and access services that provide enterprise data, and run browser-based software that has the look and feel of desktop applications.

The phrase Web 2.0 became popular in 2004. We use it to mean the sum of Web capabilities that are available to companies in 2009.

Web 2.0 has two aspects outside of services: interactive Web sites and Rich Internet Applications.

Interactive Web Sites. In general, a Web site is a collection of pages retrievable from an Internet domain — for example, www.ibm.com — or is a defined subset of those pages such as the IBM Rational Cafés (www.ibm.com/rational/cafe). The pages are served — that is, transmitted — from a Web server, which is specialized software that, in most cases, runs on a machine remote from the user.

Here is a list of Web site features that are new in Web 2.0:

Blog — a journal for expressing opinions or experiences and for displaying responses that are entered online. The word blog is derived from from the phrase Web log.

• Wiki — a page set where users can edit a large percentage of the content.

Social site — a multiperson journal with access rules that allow a given user to share text and possibly multimedia content with a subset of other users.

Virtual world — an imagined location (or simulation of a real one) that in most cases is shared in real time with other users. A given user controls the behavior of an avatar, which is a graphical representation of the user. A virtual world is used for social interaction and for multiperson games.

Web site facilities can include:

Instant messaging — a stream of text shared between two or more users.

Really Simple Syndication (RSS) feed — a mechanism for providing content updates on an ongoing basis so that users can retrieve those updates according to the users' schedules. Some users aggregate the input with feeds from other sources for re-display at another Web site.

Tagging — a means of assigning keywords to units of information such as articles, photos, and videos so as to categorize those units for later retrieval, including retrieval by other users and by software.

Social bookmarking — a means of saving a Web address for future use. Users can now tag Web addresses as they tag other units of information, for retrieval by other users and by software.

Profiles — biographies for Web site contributors, including people represented on social sites.

Cross-site integration — a relationship between Web sites such that an input at one can affect another. For example, a user at a blog may click an icon to indicate that a given article is worthy. The user's keystroke affects a ranking of articles at a second Web site, where units of information are organized by subject and relative popularity.

Here are benefits of interactive Web sites:

• Faster collaboration in pursuit of a business goal

• Improved brand image

• Increased revenue

We describe these benefits in Chapter 2.

Rich Internet Applications. A Rich Internet Application (RIA) is a Web-based application that runs in a browser. The RIA has greater function than a traditional Web site, providing the visual and interactive characteristics of a desktop application.

An RIA allows for a user experience that goes beyond simply receiving a page and submitting a form. For example, after a user clicks a radio button, the code might respond by changing the content of a textbox (Figure 1.2).


The change occurs quickly because the logic runs locally. This client-side processing is in contrast to server-side processing, which involves forming a page on the Web server and transmitting that page to the browser (Figure 1.3).


Server-side processing often involves the download of multiple pages. The client-side approach lessens the load on the server-side machine and reduces the need for hardware.

The RIA technology described in this book relies on Asynchronous JavaScript and XML (AJAX). AJAX permits the runtime invocation of remote code and the subsequent update of all of a Web page or a section of the page. For example, after the user selects a purchase order from a list box, the RIA might request transmission of order-item details from the remote Web server and then place those details in a table displayed to the user (Figure 1.4).


As shown, the user can continue working elsewhere on the page. However, a further aspect of data-transfer technology is that the user may not even notice that time elapsed between specifying one detail — in this case, an order number — and receiving a response.

Here are economic benefits of Rich Internet Applications:

• Increased user efficiency

• Faster application development from multiple sources on the Web

• Easier software distribution

• Reduced need for server-side hardware

• Increased responsiveness on an intranet

We further describe the benefits of RIAs in Chapter 2.


Service-Oriented Architecture


A second area that enables competitive advantage is service-oriented architecture (SOA). SOA is a way of organizing software and involves the deployment of more-or-less independent logical units called services, each of which

• Handles a business process such as calculating an insurance quote or distributing email, or handles a relatively technical task such as accessing a database, or provides business data and the technical details needed to construct a graphical interface.

• Can access another service and, with the appropriate runtime technology, can access a traditional program and respond to different kinds of requesters — for example, to a Web application.

• Is relatively independent of other software so that changes to a requester require few or no changes to the service, while changes to the internal logic of a service require few or no changes to the requester. This relative independence is called loose coupling.

A service can handle interactions within your company, as well as between your company and its suppliers and customers.

SOA implies a style of development, with concern for the business as a whole and with an increased focus on modularity and reuse. SOA isn't only for new code, though. Migration of existing applications is especially appropriate in the following cases:

• The applications are monolithic, combining the logic of user interface, business processing, and data access, with update of one kind of logic requiring your company to test multiple kinds of behavior.

• The applications are hard to understand — first, because the logic is monolithic, but second, because logic was repeatedly patched rather than rewritten as requirements changed. Updates take extra time as developers try to decipher the logic, and as the complexity grows, additional errors accompany updates.

• The application inventory has duplicate logic. Requests for change are unnecessarily disruptive, requiring changes in several places.

From the developer's point of view, a change to a service orientation is primarily a change in emphasis, and many aspects of the development task are unaffected.


(Continues...)

Excerpted from Enterprise Web 2.0 with EGL by Ben Margolis, Danny Allan. Copyright © 2009 Ben Margolis. Excerpted by permission of MC Press.
All rights reserved. No part of this excerpt may be reproduced or reprinted without permission in writing from the publisher.
Excerpts are provided by Dial-A-Book Inc. solely for the personal use of visitors to this web site.

Table of Contents

Contents

Preface,
Part I. Overview,
Chapter 1: Introduction,
Chapter 2: Web 2.0,
Chapter 3: Introduction to Web Security,
Chapter 4: Service-Oriented Architecture,
Part II. Web 2.0 Solutions with EGL,
Chapter 5: EGL Scope,
Chapter 6: EGL Rich UI in Context,
Chapter 7: Services and EGL Rich UI,
Part III. Programming with EGL,
Chapter 8: Overview of Generation,
Chapter 9: Language Organization,
Chapter 10: Runtime Values,
Chapter 11: EGL System Resources,
Chapter 12: Files and Relational Databases,
Chapter 13: Reporting,
Chapter 14: JavaServer Faces,
Appendix A: Sources of Information,
Appendix B: EGL Rich UI Widgets,
Endnotes,

From the B&N Reads Blog

Customer Reviews