Вы находитесь на странице: 1из 10

Toward a Cooperative Architecture, p.

64

JANUARY R FEBRUARY 2004

The Threat of Intelligent Collisions


http://computer.org/itpro

Preparing IT Graduates for Employment

Internet Computing
titles from Wiley & The IEEE Computer Society

A vailable from Wiley-IEEE Computer Society Press:

It Sounded Good When We Started


A Project Manager's Guide to Working with People on Projects

Dwayne Phillips, Roy O'Bryan


Written in a distinctly nontechnical style, this title is a general troubleshooting guide for people who work on projects with other individuals.Its content is useful in many different settings and applies to many different kinds of endeavors. Most of the stories center around problems and what was learned from them. After describing a given problem it analyzes the issues that led to it and work towards various ways to get it solved more easily. A Wiley-IEEE Computer Society Press Publication ISBN: 0-471-48586-1 Price: $55.00 Pages: 344 Date: Dec. 2003

Internet Technologies Handbook


Optimizing the IP Network

Mark A. Miller

ING COM N SOO

Addresses the need for a solid understanding of the operation of IP networks, plus optimization and management techniques to keep those networks running at peak performance. This comprehensive reference focuses on operation and management support, not just another treatise on protocol theory, and includes many practical case studies to illustrate concepts discussed. ISBN: 0-471-48050-9 Price: $79.95 Pages: 925 (Paper) Date: March 2004

The Software Project Manager's Handbook Principles that Work at Work


Dwayne Phillips
This book emphasizes software project management at work. The author's unique approach concentrates on the concept that success on software projects has more to do with how people think individually and in groups than with programming. A Wiley-IEEE Computer Society Press Publication ISBN: 0-471-67420-6 Price: $ 59.95 Pages: 450 (Paper) Date: COMING IN 2004

Foundations of Image Science


Harrison H. Barrett, Kyle J. Myers
Presents a comprehensive treatment of the principles, mathematics, and statistics needed to understand and evaluate imaging systems. The book is the first to provide a thorough treatment of the continuous-to-discrete, or CD, model of digital imaging. The book emphasizes the need for meaningful, objective assessment of image quality and presents the necessary tools for this purpose. ISBN: 0-471-15300-1 Price: $140.00 Pages: 1540 Date: Nov. 2003

A History of Computing Technology 2nd Edition


Michael R. Williams
ISBN: 0-8186-7739-2 Pages: 440 (Paper) Price: $59.95 Date: 1998

Next Generation SONET/SDH


Voice and Data

www.wiley.com/ieeecs
Ordering Information
1. CALL: 2.FAX: 3. MAIL: NORTH AMERICA: 1-877-762-2974 ALL OTHERS: +44 (0) 1243 779 777 U.S.: 1-800-597-3299 ALL OTHERS: +44 (0) 1243 843 296 John Wiley & Sons, Inc. Customer Care-Wiley 10475 Crosspoint Blvd. Indianapolis, IN 46256

Stamatios V. Kartalopoulos
An accessible presentation of optical communication technologies to SONET/SDH. This book introduces communications professionals and students to the new generation of SONET/SDH and to SONET over DWDM. The material is presented in a highly accessible manner with only essential mathematics and supported with illustrations that enhance understanding of complex topics and procedures. A Wiley-IEEE Press Publication ISBN: 0-471-61530-7 Price: $89.95 Pages: 216 Date: Jan. 2004

4. E-MAIL: U.S.: custserv@wiley.com ALL OTHERS: cs-books@wiley.co.uk

January R February 2004 Volume 6, Number 1 OUTSOURCING

12 Profiting from
Business Process Outsourcing
Siva Namasivayam

Labor cost arbitrage (proting from skilled-labor wage discrepancies) and process modules (automation of best practices) can make business process outsourcing protable.

OUTSOURCING

19 The Who, What, Why, Where, and


When of IT Outsourcing
Phillip A. Laplante, Tom Costello, Pawan Singh, Sudi Bindiganavile, and Mark Landon

The decision to outsource depends on several factors that need to be carefully addressed before taking the plunge.

INTELLIGENT TRANSPORTATION
About this issue: Once you carefully address various factors and decide to outsource one or more IT functions, business process outsourcing can be protable.

24 The Threat of
Intelligent Collisions
Jeremy Blum and Azim Eskandarian

A wireless network of intelligent vehicles can make highway travel faster and safer. But can hackers use the system to cause accidents?

WEB SERVICES

Page

19

30 An XML Alternative for


Performance and Security: ASN.1
Darren Mundy and David W. Chadwick

Performance tests of XML and ASN.1 found that signed complex XML messages can be up to 1,000 percent slower to decode than an equivalent ASN.1 message.
Cover design by Larry Bauer

IT IN EDUCATION

Published by the

38 Teaching the Importance of


Communication in IT
Jay Liebowitz

Page

30

A new course focuses on managing the IT enterprise in a modern organization, paying particular attention to effective communication.
COPYRIGHT 2004 BY THE INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS INC. ALL RIGHTS RESERVED. ABSTRACTING IS PERMITTED WITH CREDIT TO THE SOURCE. LIBRARIES ARE PERMITTED TO PHOTOCOPY BEYOND THE LIMITS OF US COPYRIGHT LAW FOR PRIVATE USE OF PATRONS: (1) THOSE POST-1977 ARTICLES THAT CARRY A CODE AT THE BOTTOM OF THE FIRST PAGE, PROVIDED THE PER-COPY FEE INDICATED IN THE CODE IS PAID THROUGH THE COPYRIGHT CLEARANCE CENTER, 222 ROSEWOOD DR., DANVERS, MA 01923; (2) PRE-1978 ARTICLES WITHOUT FEE. FOR OTHER COPYING, REPRINT, OR REPUBLICATION PERMISSION, WRITE TO COPYRIGHTS AND PERMISSIONS DEPARTMENT, IEEE PUBLICATIONS ADMINISTRATION, 445 HOES LANE, P.O. BOX 1331, PISCATAWAY, NJ 08855-1331.

IEEE Computer Society: http://www.computer.org IT Pro: http://www.computer.org/itpro E-mail: itpro@computer.org

DATA MANAGEMENT

44 Accomplishments and Challenges


in Bioinformatics
See-Kiong Ng and Limsoon Wong

Research in the postgenome era examines the genomic data produced by DNA sequencing efforts, seeking a greater understanding of biological life.

Page

38

Page

SYSTEM DEVELOPMENT

52 Web-based Services for


Real Estate: Model and Implementation
Zhangxi Lin, Gary D. Anderson, and T.J. Anderson

A Web-based service for real estate provides complex database access controls across multiple organizations.

FROM THE EIC

Page
IEEE CS Membership Application, p. 8 Advertiser/ Product Index, p. 29 IEEE CS Information, p. 51 Resources, p. 58

44

4 Fresh Perspectives, New Ideas


to Start 2004
Frank E. Ferrante

Welcome to a new year of IT Professional. Our editorial board enters this year optimistic that the technical recession of the last two years nally appears to be easing.

THE IVORY TOWER

6 Higher Educations Role


in Job Training
Sorel Reisman

NEXT ISSUE

For better or worse, commercial companies are goading colleges to become the training grounds of choice for their new hires.

Successful CIOs and IT Managers

PERSPECTIVES

64 Toward a Cooperative
Architecture for Delivering Government Services, Part 2
Ciro DUrso

An ambitious Italian project develops guidelines for reengineering legacy systems to work together via Web services.

On the Web
computer.org/itpro
Selected articles from this issue are also available on our home page, along with resource links, a contributors guide, and information for advertisers. Write to us at itpro@computer.org.

Toward a Cooperative Architecture for Delivering Government Services, Part 2


Ciro DUrso

n Part 1 of this article, I described Italys ambitious action plan to foster the widespread use of new information and communication technologies (C. DUrso, Toward a Cooperative Architecture for Delivering Government Services, Part 1, IT Professional, Nov.-Dec. 2003, pp. 64, 62-63). The project I

PAs that own a private companys certified data have agreed to connect legacy systems to a common infrastructure based on the publishsubscribe paradigm. While following this paradigm, the system also had to meet several other requirements: Federation of heterogeneous systems. Rather than imposing a centralized, monolithic system, the RAE projects objective is to provide technology to knit together the heterogeneous domains into a loose federation.These autonomous domains typically have their own information systems, created by the PAs before the RAE project and without any idea of eventually integrating with other systems. Support for disconnected systems. The RAE system supports event notification to temporarily disconnected systems. For example, a PA might disconnect its information systems to fix a technological problem. Security. The system must restrict use via access control. Filtering. To serve so many varied domains, it helps if the system can lter information to suit the user. Subscribers, for example, can request notication of events that pertain to only particular subjects. Scalability. The system must scale to accommodate increasing numbers of sub-

scribers and publishers, assuring a constant delivery rate independent of the number of domains. Domains cooperating through the publish-subscribe system have their own portfolio of applications and organizational rules. As Figure 1 shows, they interact through two general entities: the publication gate and the subscription gate.

An ambitious Italian project develops guidelines for reengineering legacy systems to work together via Web services.
worked on, the Repository for Agents in Economics (RAE), seeks to reduce a private companys burden in performing required bureaucratic functions with Italian public administrations (PAs). RAE focuses on systems to enable cooperation among various domainsthe organizational rules, resources, networks, applications, and data that belong to a specific PA, regardless of the technical nature of the underlying information systems.

PUBLISH-SUBSCRIBE SYSTEM
The publish-subscribe system consists of three components, as Figure 2 shows. One component, the core, acts as a central interface; it stands apart from the domains.Two other types of components, the gates and gateways, become part of a given domain.

Core
The core is the heart of the publish-subscribe system. It provides all the publish-subscribe models functionalities, including the key services of queue management, logging, and administration. The latter category of services defines which events are publishable, how to subscribe to particular events, and ways to modify subscription lists.

Gates
Publication and subscription gates decouple the domains Continued on page 61
1520-9202/04/$20.00 2004 IEEE

BASIC PREMISE
In the RAE project, the main
64 IT Pro January R February 2004

PERSPECTIVES

Continued from page 64

from the core system. These gates have a basic implementation that all domains can use at the application layer without personalization. Several versions of each gate exist, however, to accommodate the varying network and transport layers of each domain. These gates represent the standard interfaces via which domains interact with the core.

Figure 1. Overall view of cooperation among domains based on a publish-subscribe paradigm.

Publication gate Publishsubscribe core system Subscription gate

Subscription gate

Gateways
Publication and subscription gateways insulate the communication mechanism (the gates) from the characteristics of each legacy system. Gateways act as the translator between the legacy system and the gate, which in turn relays information to the core. Because the gates are domain-independent, these gateways provide a coupling layer between a particular legacy systems characteristics and the generalities of the gate. Experts from the domain develop these components, which are generally not reusable in other domains. Publication gates and gateways, along with subscription gates and gateways, are the adapter for each domain. In publication, the adapter is responsible for composing the message according to the established schema and delivering it to the core. In subscription, on the other hand, the adapter picks up the message and processes it based on its subject. The adapter is essential for integrating the publish-subscribe system into the domains enviroment; it takes information in the form of data objects that the core can use and converts it into data understood by the domains legacy system, and vice versa.

Publication gate

Domain A

Domain B

Figure 2. Layer view of event notication system and connection with domains.
Publisher Subscriber

Legacy Gateway Publication gate

Publishsubscribe core system

Subscription Gateway Legacy gate

Domain A Adapter

Domain B Adapter

Other considerations
Besides the communications model just outlined, any such federated system must also account for at least two other main issues: the volume of data and the definition of metadata. In terms of volume, the number of messages that the system distributes doesnt represent a problem because the system is expandable using off-the-

shelf software modules.Whats important is choosing the size of a single message, a task requiring a detailed analysis based on performance targets and capacity requirements. In terms of metadata, the cooperating domains must dene standards for the format of all possible messages and for the denition of each item in them. These standards can include an agreement about DTDs (document type definitions) or XML schemas, and the denition of each possible item in a message and each possible message type, such as an agreement

defining all possible message subjects in a subject-based implementation (D. Powell, Group Communications, Comm.ACM,Apr. 1996, pp. 50-97).

SYNCHRONOUS COMMUNICATION AMONG DOMAINS


Domains connect with each other through the Unitary Network.To identify the most suitable technology, my colleagues and I on the RAE development team performed a preliminary analysis, in which we attempted to answer the following questions:
January R February 2004 IT Pro 61

PERSPECTIVES

Which communication standard must the publish-subscribe system use to exchange information over the layers (until transport) that the Unitary Network supplies? How could we make the applications of various PAs cooperate, while minimally affecting their autonomy and the characteristics such as technology platforms and adopted standardsof their independent information systems? Our federated architecture leaves the implementation of services to the responsible PA. Given that premise, the main issue becomes how to realize the runtime binding between the users (a private companys) systems and the suppliers (the PAs) systems. In the 1990s, solutions for this task included Component Object Model and the common object request broker architecture, Corba (R. Vetter, Web-Based Enterprise Computing, Computer, May 1999). COM and Corba, however, require a homogeneous platform; for example, the computing platform must be all Microsoft using COM or all Unix using Corba. Cross-universe systems of that

period were fairly expensive and required the use of proprietary connectors. In contrast, todays Web services combine XML messaging plus an open-standard communication infrastructure (D.A. Chappel, Asynchronous Web Services and the Enterprise Service Bus, http://www. webservices.org/index.php/article/ articleview/352/4/24/). Web services are modular software components wrapped inside the standard platformindependent Internet communication protocols.The components are encapsulated, because users never see the implementation from the outside; loosely coupled, because a change in the one functions implementation does not require a change to the invoking function; contracted functions, because descriptions of their functions behavior and how to bind to them are available,with a description typically available via WSDL (Web Services Description Language) in the UDDI (universal description,discovery,and integration) directory; and

offered via open-standard protocols. To offer a Web service, a publisher must create a Web service, describe the Web service in a WSDL le, and publish the Web service in a directory, such as a UDDI. To use a Web service, a subscriber must discover the Web service in the directory, invoke the service (typically using a protocol like SOAP to transfer data encoded in XML, and receive a response. The architecture we analyze in our scenario includes two types of Web services: programmatic and interactive. Programmatic Web services perform some sort of business logic computation, such as those functions typically performed in the logic and control layers of a business application. Interactive Web services, on the other hand, also impart functionality to the user interface; that is, they extend up to the applications presentation layer.

Circulation: IT Professional (ISSN 1520-9202) is published bimonthly by the IEEE Computer Society. IEEE Headquarters, Three Park Avenue, 17th Floor, New York, NY 10016-5997; IEEE Computer Society Publications Ofce, 10662 Los Vaqueros Circle, PO Box 3014, Los Alamitos, CA 90720-1314; voice +714 821 8380; fax +714 821 4010; IEEE Computer Society Headquarters, 1730 Massachusetts Ave. NW, Washington, DC 20036-1903. Annual subscription: $40 in addition to any IEEE Computer Society dues. Nonmember rates are available on request. Back issues: $20 for members, $93 for nonmembers. Postmaster: Send address changes and undelivered copies to IT Professional, IEEE Service Center, 445 Hoes Lane, Piscataway, NJ 08855. Periodicals Postage Paid at New York, N.Y., and at additional mailing ofces. Canadian GST #125634188. Canada Post Publications Mail (Canadian Distribution) Agreement Number 1445669. Printed in USA. Editorial: Unless otherwise stated, bylined articles, as well as product and service descriptions, reect the authors or rms opinion. Inclusion in IT Professional does not necessarily constitute endorsement by the IEEE or the Computer Society. All submissions are subject to editing for style, clarity, and space.

RETHINKING A DOMAINS INFORMATION SYSTEM ARCHITECTURE


This use of programmatic and interactive Web services applies to only a part of a domains application portfolio: those applications that deal with private companies data. So we chose one representative application as a test case, attempting to rethink the information systems architecture. The goal was to rearchitect the system to make it easier for it to cooperate with other systems and, in the process, preserve the databases and leave as much of the application intact as possible. In our minds, the reengineering effort had to lead to guidelines that we could use later to reengineer all of

62

IT Pro January R February 2004

the domains legacy applications. Our reengineering strategy called for documenting software components based on architectural layers (F. Bachman and colleagues, Software Architecture Documentation in Practice: Documenting Architectural Layers, tech. report CMU/SEI-2000-SR004, Software Eng. Institute, 2000), to identify modules for modication.The logical view of our software architecture consists of four layers (G. Freeman and J. York, Client/Server Architecture Promises Radical Change, Cause/Effect, Spring 1991; http://www.educause.edu/ir/library/ text/CEM9114.txt): The data layer hides the physical implementation of databases, assuring access to data with create, read, update, and delete functions. For instance, this layer consists of COM components on a Microsoft platform, Enterprise JavaBeans in a Java 2 Enterprise Edition environment, and stored procedure or transaction in a host enviroment. The logic layer implements all the domains business processes and the common services. The control layer implements the logic ow of the applications, combining the business processes and services of the logic layer. Representing the interface to the user, the presentation layer typically takes the form of a thin client, even if other congurations are also possible. To make data and services available in some common, cooperative patterns, we chose to think of software components based on just two main layers related to the four in the former architecture. In compressing the four layers into two layers, we emphasized the atomicity and reusability of the components, consistency in terms of the information offered and application functionality, and

shareability, to make it possible to develop new applications by joining existing components and writing code for just the missing functionality. Based on these considerations, our reengineering divided a legacy applications architecture into two areas: the core system and the service bus.

Core system design


The design of application components that form the core system follows the guidelines listed earlier. Our main focus in reengineering was to redesign components that supply business processes in the logic layer by developing general software patterns. With this approach, it is possible to have two or more applications share any component. In the old platforms, on the contrary, it was only possible to share a few basic services, such as user login or database connection management.

mented those phases of business logic startable by other applications. This included processes and transactions for bookkeeping and payment management; we wrote code that wrapped them with an interface enabling their use as a Web service. In some cases, we decomposed them into more components; in other cases, we combined several into one component. These modications enable the use of standardized interfaces and protocols by Web services that can cooperate with other systems, such as applications at other PAs and portals. The components we developed might also be reusable in other applications. I Ciro DUrso is an IT consultant at the Advisory Department for Innovation and Technologies at INAIL and a contract professor at the University of LAquila. Contact him at c.durso@ inail.it. For further information on this or any other computing topic, visit our Digital Library at http://www.computer. org/publications/dlib.

Service bus design


The service bus design views all components as service endpoints, regardless of their physical location or the protocol used to reach them. The service bus also has various logic layers (J.M. Myerson, Web Services Architectures: How They Stack Up, http://www.webservicesarchitect.com/ content/articles/myerson01.asp). In particular, we considered the following layers: service ow, discovery, publication, and description, XML-based messaging, and networking. e have used this approach to redesign an application that is representative of those for a given PA. Thus far, we have not needed to modify the logical and physical models of the databases or the technological platform that hosts the database. We also have not modied the batch programs developed to manage events tightly related to this application. What we did modify were the processes and transactions that imple-

IEEE Computer Society members


Not a member? Join online today!

save

25
on all sponsored by the IEEE

conferences

Computer Society www.computer. org/join


January R February 2004 IT Pro 63

Вам также может понравиться