IBM Sharable Code
An online platform for developing, reusing, managing, and deploying Web 2.0 applications and Web API mashups.
Date Posted: December 11, 2007
|
|
 |
 |
|
Platform requirements
Operating systems: any system that can run the software listed below (developed and tested using Ubuntu Linux® 6.06 and Mac OS X 10.5)
Software: One or multiple (for distributed deployments) systems that can run the following:
- Ruby 1.8 or above
- Rake 0.7.3 or above
- Ruby on Rails 1.4.5 or above
- Associated gems (to install, use $rake swashup::install_gems)
- MySQL database or DB2® with Rails binding.
Client: any modern browser (tested with Firefox 2.0 and Safari 3.0).
What is IBM Sharable Code?
IBM® Sharable Code is a platform for building, sharing, and managing Web 2.0 API mashups. The platform allows creation of a common structure (or design) for Web 2.0 mashups. Users can create mashups of heterogeneous APIs (such as RSS, Atom, and REST) by having a common representation for the different parts of the APIs and the data consumed and provided by these APIs.
The mashup's interactions with end users and the interactions among the services can be directly represented in the mashup design. Views are associated with these interactions using an HTML template language. The platform also includes Web application tools for facilitating the overall design activities of mashups as well as for sharing the resulting deployed mashups and the different parts.
How does it work? IBM Sharable Code uses a high-level, mostly declarative, domain-specific language (DSL) to represent the entire mashup and its design. The DSL is then converted into a full Ruby on Rails (RoR) application that users can install into their own servers and further modify and improve. The platform includes three main parts:
- The core platform converts a DSL instance into a RoR application; the core is exposed as a REST service as well as command line Rake tasks.
- A builder Web application allows quick creation of the DSL instances. The builder includes various templates and wizards that make creating the DSL parts easy. The builder allow different parts of the design to be shared and reused.
- A community Web application enables easy sharing, rating, and discussion of already-deployed IBM Sharable Code mashups.
|
|
 |

|  | About the technology author(s):
E. Michael "Max" Maximilien, Ph.D., is a research staff member at IBM®'s Almaden Services Research group in San Jose, California. Prior to joining ASR, he spent ten years at IBM's Research Triangle Park, N.C., in software development and architecture. Dr. Maximilien led various small- to medium-sized teams, designing and developing enterprise and embedded Java™ software; he is a founding member and contributor to three worldwide Java and UML industry standards. Dr. Maximilien's primary research interests lie in distributed systems and software engineering, especially Web APIs and services, mash-ups, Web 2.0, SOA (service-oriented architecture), and Agile methods and practices. He can be reached through his Web site. | | Ajith Ranabahu is a Ph.D. student at Wright State University's Kno.e.sis Center in Dayton, Ohio. Previously, he worked for three years as a software engineer. Mr. Ranabahu is a member of the Project Management Committee (PMC) for the Apache Web Services project and is one of the key committers in the Apache Axis2 Java project. He has also made many contributions to related open-source projects, such as XmlSchema and AXIOM. |
Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.
Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.
IBM is a trademark of IBM Corporation in the United States, other countries, or both.
Other company, product, or service names may be trademarks or service marks of others.
| |
|
| |