Seminars & Colloquia

Tien Nguyen

University of Wisconsin, Milwaukee

"An Infrastructure for Development of Object-Oriented, Multi-level Configuraiton Management Services"

Tuesday March 15, 2005 09:30 AM
Location: 402-A, Withers NCSU Historical Campus
(Visitor parking instructions)


Abstract: Following a software development method, software engineers usually think and reason in terms of logical abstractions, their compositions and interrelations. However, many file-oriented versioning and software configuration management (SCM) systems treat a software system as a “set of files” in a file system. This creates an impedance mismatch between the design and implementation domain (logical level) and the configuration management domain (file level). Those SCM systems, whose concepts are heavily based on storage structure, can become burdensome for ordinary developers partly because design/implementation methods and configuration management infrastructures require different mental models.

This talk presents Molhado, a novel framework and reusable SCM infrastructure that helps developers to quickly create the core of an object-oriented SCM system for any development or editing environment in any paradigm without concerning about the concrete level of actual file versioning. The resulting SCM systems have the ability to manage the evolution of logical objects, compositions, and interrelations in a software system. Consistent configurations are maintained among logical objects (rather than among physical files), relating together the versions of complex software objects produced during all phases of a software process. In addition to version control supports for source code, Molhado is able to provide SCM supports for software artifacts that have very different nature than source code and live in contexts that are traditionally not suitable for existing SCM systems. In contrast to the line-oriented approach in those systems, Molhado is structure-oriented. Configurations and versions of objects are managed at various levels of abstraction and granularity. For example, logical units at any structural levels in a program or a structured object can be versioned in a fine-grained manner. In this presentation, I will explain key components of Molhado including a generic data model, a product versioning model, an extensible, logical, and object-oriented system model, and a reusable SCM infrastructure. I will also demonstrate Molhado approach in creating prototypes of SCM-centered development environments for different paradigms such as an architectural SCM system, an SCM-centered Web engineering environment, a fine-grained version control system for hypertexts and structured documents, an UML-based object-oriented development environment, and an SCM-centered relational database application development environment. These prototypes have shown clear advantages in SCM supports over existing systems in the same domains thanks to Molhado. They have also illustrated an important benefit of Molhado: the reduction in developers' effort in building SCM systems.

Short Bio: Tien Nguyen received his BS. degree in Computer Science from Hochiminih City University of Technology, Vietnam. He is a PhD candidate at the University of Wisconsin. His research interests focus on the area of software engineering and in particular, software configuration management (SCM), version control and hypertext versioning.

Host: Anna Anton, Associate Professor, Computer Science Dept., NCSU

Back to Seminar Listings
Back to Colloquia Home Page