OOPSLA '04

Program
Technical Program
  Invited Speakers
  Technical Papers
  Onward!
  Panels
  Practitioner Reports
  Tutorials
Workshops
DesignFest
Educators' Symposium
Demonstrations
Posters
Doctoral Symposium
Exhibits
Student Research Comp.
FlashBoF
 
Turing Lecture
 
Social Events
 
Week at a Glance
 
Final Program (1.5M .pdf)

Find in Program
 

Page
Printer-friendly

Basket
view, help

"Program Transformation Systems: Theory and Practice for Software Generation, Maintenance and Reengineering"
Object-Oriented Programming, Systems, Languages and Applications
Home    Program    Housing & Transportation    Registration    Submissions    Wiki    Maps
 
  > Technical Program > Tutorials > All Tutorials

 : Monday Full-Day Tutorials (8:30 - 17:00) : Generative Programming : Monday

Program Transformation Systems: Theory and Practice for Software Generation, Maintenance and Reengineering

Meeting Room 14
Monday, 8:30, full day
 


 
7·8·9·10·11·12·13·14·15·16·17·18·19·20·21

Ira Baxter, Semantic Designs, Inc.:  Ira Baxter has been building system software since 1969. He acquired his Ph.D. with emphasis on software engineering and reuse from the University of California at Irvine in 1990. He has worked with a number transformation systems starting with Draco in 1975, and is presently the architect of the DMS, and designer of the PARLANSE parallel programming language in which DMS is implemented. Dr. Baxter has been invited speaker at SSR?99, co-Chair of the 1997 International Conference on Software Reuse, Program co-Chair of the Working Conference on Reverse Engineering, and Program co-Chair of the 2002 International Conference on Software Maintenance, and has been a PC member of the International Conference on Software Maintenance for a number of years.
Hongjun Zheng, Semantic Designs, Inc.:  Hongjun Zheng, received Ph.D. on computer science at Peking University in 1997, M.S. on computer science at Jilin University in 1994. He is an active professional in R&D of software engineering. He played inseparable roles in diverse projects. Dr. Zheng, at Semantic Designs, is performing research on generalized compiler framework for programming languages used in large-scale software evolution and maintenance environment. He is member of ACM and senior member of IEEE. Dr. Zheng has served as committee member for computer-science conferences, especially those focused on software engineering and formal methods: International Conference on Formal Engineering Methods (2003, 2004), International Workshop on Source Code Analysis and Manipulation (2004), International Colloquium on Theoretical Aspects of Computing (2004).

Tutorial number: GP4

As software demands grow, so does the need for tools to aid software engineers in designing, building and maintaining software systems. Program transformation systems are semantically sound tools that modify programs (implement specifications, reverse engineer, change/modify/maintain code). These tools work by applying a knowledge base of software modification components called transformations that capture software system implementation knowledge. Program transformation systems can capture software system implementation knowledge, as well as mechanically reuse domain-engineering products to provide domain-specific program generation. The implementation knowledge available to a transformation system is key to carrying out reverse engineering, by explaining how code can implement proposed abstractions. Lastly, from the proper perspective, these systems can unify specification, design, and maintenance lifecycle phases. An understanding of transformation system theory and technology can provide a deep understanding of how code generation, modification, and reuse of code and other software engineering artifacts can work.

This tutorial provides a complete overview of transformation systems, from theory to implementation to application. The tutorial progresses from introductory to intermediate, all the necessary background will be provided, so attendees need only have basic software engineering knowledge and motivating experience modifying software.

Advanced