Skip to main content
    Israel [change]    Terms of use
    Home    Products    Services & solutions    Support & downloads    My account    
IBM Research

IBM Programming Languages and Development Environments Seminar 2007

IBM Haifa Labs

Invitation Program Registration Abstracts Call for Contribution

Service Oriented Computing
May 29, 2007
Organized by IBM Research Lab in Haifa, Israel

Keynote: Service Oriented Computing: from Anarchy to Order

Naftaly Minsky, Rutgers University

The effectiveness and flexibility of service-oriented computing(SOC) is due largely to its use of autonomous components (services, or agents). But unlimited autonomy creates anarchy, with its dark sides: Anarchical systems tend to be unmanageable, particularly when they are large and heterogeneous. It is also hard for individual agents to operate safely within an anarchical system, and to coordinate harmoniously with other agents.

It is, therefore, my thesis that in order to establish a needed order over a given SOCbased system, one needs to curtail the autonomy of member agents, by regulating the interactions between them. I will propose a set of principles on which such regulation needs to be based, and then show how these principles are satisfied by the law-governed interaction (LGI) mechanism.

From CBM to BSPM - A Portfolio Management Approach for Business Services Lifecycle

Fabiana Fournier and Gil Nechushtai, IBM HRL

This paper presents an innovative idea and a research work in process for the management of business services in a service oriented environment. This approach aims to align two broadly used methodologies: Component Business Modeling (CBM) and Portfolio Management (PM). We will discuss the business need as well as the technologies involved and share our research direction and issues.

A Human Oriented Approach Towards Service Composition

Eran Toch, Dov Dori and Avigdor Gal, Technion, and Iris Reinhartz-Berger, Haifa University

Most research works in the field of Web service composition focus on automatic service composition. However, as this approach requires considerable efforts of manual annotation and provides a limited amount of approximation, it falls short with respect to its usability for human users. In contrast, we advocate the need for Service Retrieval, which is the human-oriented counterpart of Information Retrieval, designed for use by end-users to explore service collections and to compose new applications. In this short paper we describe the objectives and requirements for human-oriented service retrieval solutions, as well as presenting a framework that demonstrates our approach.

Model-Driven Development for Service-Oriented Applications

Vladimir Shcherbina, IBM HRL

This position paper describes the application of Model Driven Architecture (MDA) and Model Driven Development (MDD) techniques to service-oriented modeling and architecture (SOMA); the key activities that are needed for the analysis and design required to build applications based on Service-Oriented Architecture (SOA) principles.

GUI Development with Process Definitions

Mayer Goldberg and Guy Wiener, Ben-Gurion University

This paper outlines a method to specify and develop user interfaces by using process definitions. Process definitions are used widely by “Programming at the Large” tools, such as BPEL, to combine several processes. This work offers a way to use similar methods to specify the interactions with the user, aid the GUI designer to design a GUI based on the specification, and integrate it with other processes. In this way, the advantages of Service-Oriented Architecture are used to help building GUI applications.

Keynote: Web 2.0: Extending the Reach of the SOA Model

John Turek, China Emerging Technology Institute, IBM CDL

In this talk I will discuss the relationship between the Web 2.0 and SOA programming models, arguing that the foundation of the "Web 2.0 programming model" is a lightweight integration model. As such, the Web 2.0 community is providing a way to reduce the cost of building composite applications and bringing SOA concepts to a broader audience. I will then describe the three key steps required to build composite applications: service composition, exposing services as web components, and web component integration and give a demonstarion of a prototype system we have built in the China Development Lab. These simple concepts can be used to build rich applications that are easily extensible. Since the applications created by this methodology cannot cover all the needs of an enterprise enviornment, I will conclude the talk by discussing how the Web 2.0 model is a subset of a traditional composition model and, therefore, can easily be used as a starting point for developing traditional enterprise applications.

Simple and safe SQL queries with C++ templates

Yossi Gil and Keren Lenz, Technion

The ARARAT system presented here offers an elegant method for dealing with infamous predicaments of string based SQL queries, by coercing the host C++ compiler to do the necessary checks of the generated strings. A library of templates (and preprocessor directives) effectively extends C++ with a little language representing an augmented relational algebra formalism. Type checking of this language extension, as done by the template library, assures, at compile-time, the correctness of the generated SQL strings. All SQL statements constructed by the system are immune to injection attacks. The system provides also initial support for the task of defining C++ data structures required for interaction with the DB.

Service Identification using Combined Structured and Unstructured Legacy Code Analysis

Netta Aizenbud, Ksenya Kveler, and Inbal Ronen, IBM HRL

In order to be able to support a rapidly changing business environment and align business processes and underlying applications with business goals, many companies wish to move their legacy IT systems to a Service Oriented Architecture (SOA). While striving to build a new flexible infrastructure, companies need to retain the most of their previous investments and maximize the utilization of their existing legacy applications. Moving to a SOA enabled architecture often implies the definition of a “to-be” business model, which describes the business processes and services that the company intends to support. These then are to be mapped into existing systems and applications in order to evaluate reuse options.

In this talk we present a system and technology for semi-automatic service identification in legacy source code through combined structured and unstructured analysis techniques. The first part of the talk will describe the SUPA (Structured and Unstructured Program Analysis) project which constitutes the technical basis of our technology. The second part will describe the LTS (Legacy Transformation to SOA) project, which demonstrates how the SUPA technology can be used in the context of legacy transformation.

SUPA (Structured and Unstructured Program Analysis)
Identification of where some functionality is implemented in source code is crucial for many program understanding scenarios, like maintenance, reverse engineering, refactoring, transformation and reuse. Given a description of the functionality as a search term, a traditional text search engine will retrieve documents that include the term without considering structure and semantics of the code. On the other hand, existing code analysis tools are not using unstructured analysis techniques, like stemming and synonym expansion to locate a term. In this talk we present a system for automatic functionality identification in source code through combined structured and unstructured analysis techniques. In particular we combine Information Retrieval techniques with shallow and advanced Static Analysis. The combination enables gaining from both worlds and thus retrieves better search results. Our system annotates source code including its comments with semantic Meta data, indexes it and then enables context aware search over the code and annotations. Candidate locations are returned ranked by their semantic context and similarity to the original query.

LTS (Legacy Transformation to SOA)
We present a tool which assists the architect of a Legacy to SOA transformation project in mapping a service description of a newly defined service architecture (“to-be” model) into legacy code (“as-is” system). The tool aids in identifying where the functionality described in the service may have already been implemented and thus could be reused. LTS is using the SUPA technology as its basis for performing sophisticated functionality search and ranking of candidates.


Related Seminar Links
Visitors information  

    About IBMPrivacyContact