Technical Program
  Invited Speakers
  Technical Papers
  Practitioner Reports
Educators' Symposium
Doctoral Symposium
Student Research Comp.
Turing Lecture
Social Events
Week at a Glance
Final Program (1.5M .pdf)

Find in Program


view, help

"Molhado: Object-Oriented Structural Software Configuration Management"
Object-Oriented Programming, Systems, Languages and Applications
Home    Program    Housing & Transportation    Registration    Submissions    Wiki    Maps

 : All Demonstrations : Wednesday : Wednesday Demonstrations

Molhado: Object-Oriented Structural Software Configuration Management

Courtyard, Demo room 4
Wednesday, 11:30, 45 minutes


This event is also being given Tuesday at 11:30.

Tien Nguyen, University of Wisconsin - Milwaukee

Demonstration number: 20

Many software configuration management (SCM) systems treat a software system as a set of files on a file system. However, software engineers usually think and reason in terms of high-level abstractions, compositions, and the interrelations among them. Therefore, SCM systems whose concepts are closely tied to physical structure can become burdensome for developers because software development methods and SCM infrastructures require different mental models.

To bridge that gap, this demonstration presents an object-oriented approach to managing the evolution of software systems at the logical level. Keys to Molhado approach are its object-oriented structural system model and structure versioning framework in which logical objects and structures in a system are extended from a small set of system model concepts, allowing them to be uniformly versioned in a fine-grained manner and independent of the physical file structure. Changes to all objects and structures are captured and related to each other in a cohesive manner via the Molhado product versioning SCM system.

This research demonstration also presents applications of our object-oriented versioning approach for logical objects in different development frameworks such as UML-based object-oriented software development, architecture-based software development, and Web application development. A set of comparison tools was developed to show differences between two arbitrary versions of a system's hierarchical structure, of any logical object, and of any logical unit of an object in both structural and line-oriented fashions. Logical relationships among software objects are maintained and versioned separately from their contents.