NIST Advanced Technology Program
Return to ATP Home Page
ATP Historical Award Statistics Business Reporting System Surveys EAO Economic Studies and Survey Results ATP Factsheets ATP Completed Projects Status Reports EAO Home Page
Performance of Second 50 Completed ATP Projects — Status Report Number 3
NIST Special Publication 950-3 (January 2006)

INFORMATION TECHNOLOGY

TopicalNet, Inc. (formerly Continuum Software, Inc.)
Design of Scalable, Parallel-Computing Software Development Tool

Since the mid-1990s, U.S. businesses have sought parallel processing, a computing technique used mainly for scientific computing, for its potential to increase computational performance. Parallel processing speeds the execution of a program by dividing the program into multiple segments that can be executed simultaneously, each on a separate processor. As businesses anticipated database growth into tens and even hundreds of terabytes (one trillion bytes), they seriously considered adopting parallel processing to reduce the time needed to analyze these exponentially large amounts of data. Although many businesses had computers with multiple central processing units (CPUs), use of parallel computing had been limited because it required that programmers learn parallel-processing techniques for writing software. Companies that had invested large amounts of resources in business applications and systems were wary of having to rewrite their existing serial code into parallel code, because this meant finding and hiring programmers from the limited pool of those skilled in parallel programming.

In 1995, Continuum Software, Inc., received a $2 million award from the Advanced Technology Program (A TP) for a three-year project to design tools for easy development of scalable, parallel software systems for business applications. By the project's end in 1997, Continuum had successfully developed Multiply™, a software development tool to create scalable business applications from existing serial code for a wide range of parallel architectures. Using Multiply™, the average business programmer could develop scalable software applications without having to learn parallel programming. However, when companies began focusing their software investments on the Y2K problems instead of on parallel computing, Continuum (which was later renamed TopicalNet) refocused its efforts on Internet applications and stopped marketing Multiply™.

COMPOSITE PERFORMANCE SCORE

starstar((based on a four star rating).

Research and data for Status Report 94-06-0034 were collected during April - June 2002.

Existing Support Systems Are Slow and Costly

Decision-support systems are used by businesses in their planning, design, marketing, and distribution operations. Depending on the quantity and complexity of the data used in the analysis, however, these systems can take several days to produce responses, resulting in delays in the business's ability to optimize prices, calculate forecasts, and respond to customer needs. Because parallel computing can increase computer performance, it could potentially solve this problem. By the early 1990s, many businesses had tried, with limited success, to build software that would execute efficiently on parallel machines. Lack of success resulted from the limited use of parallel computing in business applications and, more important, unfamiliarity among software developers in programming scalable, parallel systems.

Continuum's founders, a three-member team that had previously worked for a parallel computing company, understood the complexities and difficulties of parallel programming. They understood that rewriting a company's existing business applications into parallel code would be an enormous task. At the same time, Continuum recognized parallel computing's potential power to execute time-critical business applications. John Mucci, co-founder of Continuum, stated, "Our team knew if we were able to create software that could effectively harness the power of multiple CPUs present in most company computers, businesses would be able to run critical enterprise planning applications such as payroll, inventory, and customer transaction history programs in a matter of hours, not days.

Continuum Proposes Object-Oriented Technology

Continuum aimed to create a tool to shorten the development time of efficient, reusable software that could be used on a wide variety of scalable, parallel computer servers. To overcome the peculiarities of parallel programming, the company proposed to utilize object-oriented (OO) technology, a special type of programming that combines data structures with functions to create reusable objects.

Continuum recognized parallel computing's potential power to execute time-critical business applications.

The company believed that OO software and development methods had the potential to greatly improve the productivity of application developers. Continuum also recognized the potential of OO development tools and languages to provide reusable software, thus simplifying the software development process. The company believed that OO technology would ensure easier modeling, shorter development time, higher quality, increased functionality, portability, and lower cost. These capabilities would allow Continuum to encapsulate key business functions, making them scalable and portable across parallel-computing platforms.

Integration of Three Technologies Poses High Risk

The proposed project was risky because Continuum planned to successfully integrate three innovative technology subjects into one tool: OO software, client-server application development tools, and scalable systems and software. Although venture capitalists might have funded a project involving one or two of these technologies, there were significant technical risks in attempting to successfully integrate all three technologies. Therefore, in response to these challenges, Continuum sought alternate venues for funding and submitted a proposal to ATP.

The proposed project was risky becauseContinuum planned to successfully integrate
three innovative technology subjects into one tool.

Continuum's proposed project responded to concerns regarding the lack of software development tools. Common concerns included the need for more systematic reuse, interoperation, automation, and semantic approaches in software development to be made available to all programmers.

If Continuum's project proved successful, the technology would offer important advances in data analysis to many industries, including manufacturing, finance, and healthcare. Additionally, the tool promised to provide end users with quick and timely responses to time-sensitive tasks and calculations that were needed for resource optimization.

Continuum's Development Approach Addresses Parallel Applications

One technical goal of the project was the creation of a software development tool using OO technology to provide efficient, scalable, parallel-computing software that could be readily used with existing business applications, thus reducing the need for specialized knowledge of parallel programming. The company planned to solve the problem of the programmer's unfamiliarity with parallel programming by using well-known programming languages.

In creating its scalable software development tool, Continuum:

  • Developed effective user interfaces for connecting new parallel systems to legacy systems so that investment would not be lost and users could access new systems through familiar interfaces.
  • Formulated adaptive algorithms that could be used across multiple parallel platforms to perform business functions. These algorithms could be automatically configured for a particular platform to meet the needs of a specific business.
  • Developed a method to encapsulate parallel platform characteristics using OO technology in order to conceal from the programmer the complexity of writing code for each specific parallel system. The programmer, therefore, did not need to know the details of the system, only the business logic required for supporting specific business functions.
  • Created a technique to support a graphical, scalable server application development tool. This tool provided the developer with a simple front end for powerful, complex functionalities.

The initial infrastructure that Continuum developed during the ATP project was called Scaleworks. It was to house the generic parallel algorithms required to respond to various queries. Scaleworks was designed to automatically route queries to specific algorithms on the basis of which ones could most effectively process the end user's request given the specifics of the data.

However, Scaleworks was complex. Understanding that the complexity of Scaleworks might frustrate potential users, Continuum developed mechanisms for reducing the complexity of the interface without sacrificing the power and flexibility of the system.

Continuum Develops Multiply™

Continuum successfully developed an interface that was capable of integrating with the Scaleworks infrastructure. The company then created a demonstrable prototype of a scalable and portable component-based software development environment. The final tool was a software environment that used a computer's hardware to process information from its existing applications without having to reprogram the data for parallel processing. This tool allowed end users to continue to use existing legacy systems without recoding the systems. As a result, the software development environment (that Continuum ultimately named Multiply™) provides end users with access to the power of parallel processing, without having to learn parallel programming and, more important, without the need to replace legacy systems.

In early 1997, Continuum demonstrated the time saved by running certain business applications via Multiply™. For example, one company could run its inventory application in a record 15 minutes using Multiply™, a task that previously took one hour to complete. Thus, the company's response time to customers and suppliers was improved by 75 percent.

Y2K Concerns Overshadow Multiply™ Prospects

By the end of 1997, commercial prospects for Multiply™ looked promising. Continuum demonstrated its functionalities to several potential customers. The company successfully obtained $3.1 million in additional funding from venture capitalists and angel investors and hired marketing and business and sales development experts. Continuum also sold and implemented Multiply™ to several companies and a U.S. government agency to enhance the agency's existing supply chain application. Once the Y2K problem became an issue for companies, however, Continuum noticed a shift in information technology spending. Several potential customers decided to allocate their information technology resources to Y2K preparedness, and they ceased negotiations for Multiply™.

Continuum knew that achieving long-term success was rare for a start-up software tool company. Although it was able to capture additional funding after the ATP project ended, the company's resources were inadequate to sustain its operating costs for an extended period. Because of the lack of sales and the waning interest displayed by potential Multiply™ customers, the company shifted its strategy and decided to discontinue further spending on commercializing Multiply™. The exponential growth of the Internet in the late 1990s afforded new opportunities, and Continuum refocused its efforts and began research and development of Internet applications. The company found that it could apply the knowledge it gained during its ATP-funded project to the processing required to evaluate large volumes of data from Internet web pages.

Multiply™ provides end users with access to thepower of parallel processing, without having to
learn parallel programming and, more important, without the need to replace legacy systems.

During 2001, Continuum (which by then had changed its name to TopicalNet) acquired several companies, and now it is focusing on providing its customers with traffic verification, analysis, and research solutions for the World Wide Web.

Conclusion

With ATP's assistance, Continuum created a software development tool that allows companies to utilize the power of parallel computation without having to replace existing legacy systems or having to learn the complexities of parallel programming. Because the company was small, however, Y2K overshadowed its technology at the time. The company identified a better market opportunity, and TopicalNet is no longer pursuing the original technology.

PROJECT HIGHLIGHTS
TopicalNet, Inc. (formerly Continuum Software)

Project Title:   Design of Scalable, Parallel-Computing Software Development Tool (Scalable Business Application Development Components and Tools)

Project: To apply object-oriented technology to provide efficient, scalable parallel-computing software and algorithms that can be incorporated easily into business applications that are hardware-systems independent.

Duration: 1/1/1995-12/31/1997
ATP Number:
 94-06-0034

Funding (in thousands):
ATP Final Cost $2,000 60%
Participant Final Cost   1,359 40%
Total

$3,359

 

Accomplishments: ATP funding enabled Continuum to develop Multiply™. Using this technology, average programmers could productively develop scalable business applications without having to learn parallel programming. Furthermore, companies using Multiply™ would not have to replace legacy systems.

The accomplishments of this ATP-funded project led to one patent:

  • "System and method for developing computer programs for execution on parallel processing systems" (No. 5,999,729: filed March 6, 1997; granted December 7, 1999)

Commercialization Status: Continuum did not successfully market the Multiply™ tool for several reasons. When the project was completed, information technology venture capital was not available because the computer industry was focused on Y2K compliance, thus making it difficult for the small start-up company to market its innovative software application. In the late 1990s, focus in the computer technology market turned to Internet applications. Continuum decided to refocus on developing web-based applications, and the company discontinued its efforts to commercialize Multiply™. Although Continuum discontinued market development of the product, the company continues to use the knowledge gained from the project.

Outlook: Other firms are finding that the market for parallel computing continues to develop. Companies are successfully using parallel computing in commercial environments, and its use continues to grow in the areas of database applications, finance applications, image processing, and World Wide Web servers. TopicalNet, however, has no plans to further commercialize the Multiply™ technology

Composite Performance Score:  * *

Number of Employees: Three employees at project start; 70 as of June 2002.

Company: Topical Net, Inc., 800 West Cummings Park, Suite 2900, Woburn, MA 01801.

Contact: Dr. John F. Mucci
Phone: (781) 932-8400

Research and data for Status Report 94-06-0034 were collected during April - June 2002.

Return to Table of Contents or go to next section of Status Report No. 3.

Date created: April 4, 2006
Last updated: July 10, 2006

Return to ATP Home Page

ATP website comments: webmaster-atp@nist.gov  / Technical ATP inquiries: InfoCoord.ATP@nist.gov.

NIST is an agency of the U.S. Commerce Department
Privacy policy / Security Notice / Accessibility Statement / Disclaimer / Freedom of Information Act (FOIA) /
No Fear Act Policy / NIST Information Quallity Standards / ExpectMore.gov (performance of federal programs)

Return to NIST Home Page
Return to ATP Home Page Return to NIST Home Page Go to the NIST Home Page