Answer-set programming (ASP) is an approach for declarative problem solving with roots in the areas of logic programming and knowledge representation. Due to its expressive power and the availability of efficient solvers, it has been successfully applied in several different fields such as knowledge representation and reasoning, constraint satisfaction problems, planning, diagnosis and semantic-web reasoning. Furthermore, in the last years, it was also exploited in the development of industrial applications.
As a result of its growing popularity, besides the theoretical issues and the implementation and improvement of ASP solvers, methodologies and engineering tools to assist the programmer during the development process have also become the focus of ASP research. Although it is widely viewed that answer-set programs are specifications of themselves, producing answer-set programs is not always straightforward. Another problem of answer-set programs is the traditional visualisation of answer sets in a textual manner, which makes the extraction of relevant information a tedious task, particularly for large interpretations.
Graphical representations are easier to understand and well-established model-driven engineering techniques and technologies are especially helpful in guiding the ASP development process by graphical models, starting from modelling the problem domain and ending at the visualisation of problem solutions.
In this thesis, we address the issue of the usage of graphical models for the automation of ASP code generation and for the representation of answer sets. The proposed graphical modelling environment is a round-trip tool that provides the user with a graphical editor to represent the problem domain using a subset of the UML class diagram. From the model, a description of an ASP language signature (predicates, arities, types, and meaning of the argument terms) is automatically generated. The signature, together with the constraints of the domain, is expressed in Lana, a meta-language for annotating answer-set programs. Based on the signature in Lana, the programmer proceeds to develop ASP encodings.
After computing the answer sets of the answer-set program, the user is able to visualise the problem solutions by means of UML object diagrams. Violations of constraints in the solutions can be seen either by checking for certain error-indicating atoms in answer sets or can be visualised directly in the graphical representation of the solution.