formal foundations of software evolution workshop 1 understanding software evolution using a...

5
Formal Foundations of Sof tware Evolution Workshop 1 Understanding Software Evolution using a Flexible Query Engine Michele Lanza Software Composition Group University Of Bern

Upload: felix-mcbride

Post on 05-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Formal Foundations of Software Evolution Workshop 1 Understanding Software Evolution using a Flexible Query Engine Michele Lanza Software Composition Group

Formal Foundations of Software Evolution Workshop

1

Understanding Software Evolution

using a Flexible Query Engine

Michele LanzaSoftware Composition Group

University Of Bern

Page 2: Formal Foundations of Software Evolution Workshop 1 Understanding Software Evolution using a Flexible Query Engine Michele Lanza Software Composition Group

Formal Foundations of Software Evolution Workshop

2

Environment

The Query Engine• A query returns “hits” from a large

data collection• A composite query can be

composed of several (sub)queries by using logical operators

• The “basic” queries are based on type, name, properties and metrics

• A query can have an environment, i.e. subcondition(s) which must be fulfilled as well

Moose,our Repository of Software Entities

Query

QueryQueryAND

OR

QueryNOT

Query

Page 3: Formal Foundations of Software Evolution Workshop 1 Understanding Software Evolution using a Flexible Query Engine Michele Lanza Software Composition Group

Formal Foundations of Software Evolution Workshop

3

Queries for Software Evolution• Our repository can contain several versions of

the same software in parallel• In the context of Software Evolution, the queries

aim at the differences and similarities between different versions of the same software entity

• The Queries must be fine-tuned and adapted to its context, i.e. the analyzed software

Page 4: Formal Foundations of Software Evolution Workshop 1 Understanding Software Evolution using a Flexible Query Engine Michele Lanza Software Composition Group

Formal Foundations of Software Evolution Workshop

4

The Problems of the Approach

• Renamed entities– different versions of the same entity do not have an

explicit connection, WE must establish it. This may result in a possible loss of information

• The Queries still need:– a good formalism– a good naming scheme

Page 5: Formal Foundations of Software Evolution Workshop 1 Understanding Software Evolution using a Flexible Query Engine Michele Lanza Software Composition Group

Formal Foundations of Software Evolution Workshop

5

Conclusion & Future Work

• Conclusion: the approach works well, but...– needs more refinement– we need more experiences– we need a (standard) repository of Queries

• Future Work: further refine the Query Engine– internally: increase flexibility & adaptability– externally: Graphical User Interface