Where is San Francisco Today?
IBM’s San Francisco project is no longer news—it’s been given a high profile with business partners and customers for seven years now. But while the marriage between object technology and sharable application frameworks is a blessed event, there is now restlessness and a need to look outside for new ideas and partners. A technology “seven year itch” has occurred.
San Francisco, for the uninitiated, is a set of object-oriented business process components, which can be used for commercial applications. Essentially, rather than hand-coding every piece of every applications, or being stuck with functionality and design from a third-party software vendor, San Francisco promises the customer reuse of application software “components.” A car assembly plant uses prefabricated components from a variety of suppliers, many of which are used in different models of cars and trucks. It doesn’t use a pile of iron ore, a load of rubber and a container of polystyrene pellets as its input. Nor does every car assembly begin with a Toyota Corolla, which is then modified to become, say a Jeep Cherokee. So too, developing an integrated order entry and warehouse management and AP/AR application does not need to start with an army of RPG programmers or a force-fed ERP application.
Thus, San Francisco is a set of business tasks designed to work together and form a prefabricated structure/template of an application. It was designed to be extended by the customer or the Business Partners/ISVs. It lowers the entry barrier to OO for customers and allows for integration of best-of-breed applications from different vendors.
A first version of San Francisco (SF 1.1) was delivered in August 1997. The effort was driven largely by IBM executives and employees associated with the AS/400 Division. The San Francisco architecture is based on three layers. Underneath these layers is a platform-independent approach. That is, San Francisco is fully dependant on an underlying Java Virtual Machine, which ensures that its logic is executed correctly on a variety of platforms that includes AIX, Windows NT, OS/400, Solaris and HP/UX. The first release focused on providing a foundation layer, and made common business objects and a GL application framework visible to customers.
Its implementation, as a pioneering effort, was monumental. It was also very smart of IBM to target Java as the implementation language. Practically though, its performance was insufficient, and it was hampered by internal IBM rivalry between the AS/400 group and IBM’s Software division. Strategically, its technical Achilles’ heel was the object model. Because no industry standard object model existed, it was implemented in a proprietary fashion.
Release 1.2, delivered in March 1998, answered the performance bell, and also delivered a Graphical User Interface-based framework. Users then realized that the utilization of object components, and all its inherent layers and abstraction, places a recognizable “performance tax” on the application—even when the code is optimized. This is still true today, but it is made manageable by the colossal increases in computing power that are now available. SF 1.3 was delivered in November 1998, refining the layered architecture and support for different platforms. (Interestingly, despite being “born” in Rochester, home of AS/400, San Francisco was developed using Windows NT!)
What has changed since San Francisco was first designed and implemented, is that we have an evolution of industry object standards centered on Java. Students of Java recognize what Enterprise Java Beans (EJB) can accomplish both technically and practically. It’s being accepted as a standard in the marketplace. IBM has developed WebSphere to support the Java and EJB standards across all of their platforms.
Thus, San Francisco must undergo changes to be commercially successful. The pioneering, the learning, the hard stuff has all been done. Now IBM must rework the underlying foundation and utilities layer to be WebSphere-based. It must work on IBM and Non-IBM Enterprise Java Bean servers. IBM is planning to migrate the San Francisco Common Business Objects to an EJB infrastructure and will change the name to reflect this. Once this migration occurs they will be known as “WebSphere Solution Components” (WSSC).
Seven years of object design, object development, partner involvement, Java delivery and performance, have resulted in functional and usable business components. With one more twist, the object model will be based on the EJB standard and IBM will have a single application component solution. While the new WSSC’s technical details are not fully available, I’m predicting that the WebSphere implementation will scratch the seven-year itch.
Mark Buchner is president and founder of Astech Solutions Inc (Aurora, Ontario). mbuchner@astech.com
Related Information:
San Francisco Project Overview (new window)