Research Mission and Areas

 

 

Our mission is to advance the theory of and contribute useful methods for engineering dependable,
easy-to-evolve and reusable software

  We develop and apply formal methods (TCOZ, ZML) to achieve reliability, and a generative technique of XVCL to handle variability in software for effective evolution and reuse. We work in the following areas:

Formal methods (leader Dong Jin Song)

The aim of the formal methods research is to develop and integrate sound theories, techniques and modern tools for software and system engineering. Recent research focus is on real-time system specification, model verification and design synthesis.

Semantic Web (leader Dong Jin Song)

In the Semantic Web research area, we aim to develop new reasoning systems for web ontology and rule languages. Recent research focus is on applying formal verification systems and constraint logic programming for checking ontology and rules inconsistency. 

Software reuse and evolution (leader Stan Jarzabek)

We believe the design of adaptable, high-variability software, and the problem of software change in general, is inherently difficult to tackle in the world of conventional OO and component technologies. We address the problem with XVCL (XML-based Variant Configuration Language),  a generative technique developed in our lab, based on frame concepts developed in industrial practice. We apply XVCL to manage software variability and change, on top of conventional OO, component-based and architecture-centric approaches to reuse.

Industry Collaborations: We have a long-term and fruitful research partnership with ST Electronics (Info-Software Systems) Pte. Ltd. Recently, we started working on XVCL technology transfer with Retive Solutions Pte Ltd .

Analysis of design-level software similarity patterns (leader Stan Jarzabek)

Research on software similarity patterns so far has been mainly focused on detection of similar code fragments, so-called simple clones. We attempt to raise analysis of software similarity to the level of large-granularity recurring software structures, such as patterns of collaborating components. We call them structural clones. We aim at formulating an ontology for structural clones, developing techniques for structural clone detection  CM/CA, and exploiting the benefits of structural clone detection for software maintenance, reuse and re-engineering.

 

      Lab Coordinator: Stan Jarzabek