|
Guest Speaker
Speaker: Dr. Ira Baxter |
|
Component-based software engineering enables applications to be assembled from component parts, provided they adhere to a component-style specific interface specification and protocol. Obviously, components available for one style are not available for another. Component styles evolve, too, which can obsolete components using a legacy style. This creates a demand for migrating components from one style to another, which can require complex changes to the component source code. For a large component library, doing this manually is likely prohibitive. An alternative is to apply automated program transformations to carry out the changes.
Using source-to-source transformations on real code requires a scalable, robust program transformation technology. Such technologies are difficult to justify for single applications. DMS is a commercial program transformation system which has been used to transform many programming languages, including C++, C#, Java and ObjectPascal. It is parameterized by language and desired task, enabling its infrastructure costs to be amortized across many different software analysis or change applications.
This talk will provide background on DMS, but focuses on a concrete example of DMS program transformations being used to migrate legacy C++ components from a Boeing distributed avionics software system, using a Boeing proprietary component format, to a CORBA component style. The conversion requires nontrivial understanding and manipulation of the C++ source code. It will explain the component migration problem to be solved, show some of the transformations, and describe the transformation process.
Dr. Baxter has been involved with computing since 1966, and implemented one of the first commercial minicomputer timesharing systems on a Data General Nova in 1970, well before receiving his B.S. in Computer Science (1973). He worked for a number of years in industry both as a consultant and as owner of Software Dynamics, a systems software house, where he designed compilers, time-sharing and network operating systems. In 1990, he received a Ph.D. in Computer Science from the University of California at Irvine, where he studied Software Engineering, focusing on design reuse using transformational methods. Dr. Baxter spent several years with Schlumberger, working on a PDE-solver generator for CM-5 supercomputers (Sinapse). He consulted for Rockwell International on industrial automation software engineering tools for several years.
In 1995, he founded Semantic Designs, to build commercial tools that will radically improve the methods and economics of software enhancement and maintenance. Through Semantic Designs, he provides consulting to Fortune 100 companies on automated software analysis, transformation and domain-specific synthesis methods. Dr. Baxter is the principal architect of Semantic Designs' Design Maintenance System (DMS), and also the principal designer and compiler implementer of PARLANSE, Semantic Designs' parallel programming language.
Dr. Baxter has been a member of the Association for Computing Machinery since 1970, is a Life Member of the American Association for Artificial Intelligence, and is a Senior Member of the IEEE Computer Society