Navigation auf uzh.ch
Talk at WSL, Birmensdorf, CH
March 4th, 2010
Abstract:
Relational Databases (RDBs) are used
in most current enterprise environments to store and manage data. The
semantics of the data is not explicitly encoded in the relational model,
but implicitly on the application level. Ontologies and Semantic Web
technologies provide explicit semantics that allows data to be shared
and reused across application, enterprise, and community boundaries.
These technologies are applied to build a semantic layer on top of
existing databases to lift data processing from the syntax to the
semantic level. Existing applications that rely on the relational
representation of the data prohibit a conversion of all data in an RDB
to RDF. Therefore, a mediation approach that performs an on demand
translation of Semantic Web requests to SQL is the alternative that
preserves the compatibility with existing relational applications while
enabling access for ontology-based software to (co-)operate on the same
data. In addition, mediation allows to further exploit the advantages of
the well established database technology such as query performance,
scalability, transaction support, and security.
Saturday, May 18, 2009 - Full Day
Instructors:
Harald C. Gall, University of Zurich, Switzerland
Gerald Reif, University of Zurich, Switzerland
Over the years, the software engineering community developed various tool that help software developers to specify, develop, test, analyze, and maintain software. Many of these tools use proprietary data formats to store their artifacts which hamper the interoperation between tools. On the other hand, the Semantic Web provides a common framework that allows data to be shared and reused across application, enterprise, and community boundaries. In the Semantic Web, ontologies are used to define the concepts in the domain of discourse and the relationship between these concepts and as such provide the formal vocabulary applications use to exchange semantically rich data. Beside the Web, the technologies developed for the Semantic Web have proven to be useful also in other domains, especially when data has to be exchanged between applications from different parties. Software engineering is one of these domains where recent research shows that Semantic Web technologies are able to reduce the barriers of proprietary data formats and improve the interoperation of tools, even if they were originally not designed to work in cooperation. Design, architecture, code, tests, or models can be shared across application boundaries enabling a seamless integration of process results. In this tutorial, we will give an introduction to the Semantic Web, the related technologies and tools, and present research on applying these technologies in the domain of software engineering.
Saturday, May 12, 2008 - Full Day
Instructors:
Harald C. Gall, University of Zurich, Switzerland
Gerald Reif, University of Zurich, Switzerland
Over the years, the software engineering community developed various tool that help software developers to specify, develop, test, analyze, and maintain software. Many of these tools use proprietary data formats to store their artifacts which hamper the interoperation between tools. On the other hand, the Semantic Web provides a common framework that allows data to be shared and reused across application, enterprise, and community boundaries. In the Semantic Web, ontologies are used to define the concepts in the domain of discourse and the relationship between these concepts and as such provide the formal vocabulary applications use to exchange semantically rich data. Beside the Web, the technologies developed for the Semantic Web have proven to be useful also in other domains, especially when data has to be exchanged between applications from different parties. Software engineering is one of these domains where recent research shows that Semantic Web technologies are able to reduce the barriers of proprietary data formats and improve the interoperation of tools, even if they were originally not designed to work in cooperation. Design, architecture, code, tests, or models can be shared across application boundaries enabling a seamless integration of process results. In this tutorial, we will give an introduction to the Semantic Web, the related technologies and tools, and present research on applying these technologies in the domain of software engineering.
Talk at IBM Zurich Research Lab, Rueschlikon, CH
Feb 22, 2007
Abstract:
When copying and pasting data between
applications using the operating system clipboard, the semantics of the
transfered information is usually lost. Using Semantic Web technologies
these semantics can be explicitly defined in a machine process-able way
and therefore be preserved during the data transfer. In this paper we
introduce SemClip, our implementation of a Semantic Clipboard that
enables the exchange of semantically enriched data between desktop
applications and show how such a clipboard can be used to copy and paste
semantic annotations from Web pages to desktop applications.
Saturday, May 27, 2006 - Full Day
Instructors:
Harald C. Gall, University of Zurich, Switzerland
Michele Lanza , University of Lugano, Switzerland
In this tutorial, we describe the investigation of software evolution by taking a step towards reflecting the analysis results against software quality attributes. Different kinds of analyses (from architecture to code) and their interpretation will be presented and discussed in relation to quality attributes. This will show our vision of where such evolution investigations can lead and how they can support development.
The tutorial will touch issues such as meta-models for evolution data, data analysis and history mining, software quality attributes, as well as visualization of analysis results.
February 7, 2006
Surprising as it may seem, many of the early adopters of the object-oriented paradigm already face a number of problems typically encountered in large-scale legacy systems. Software engineers are now confronted with millions of lines of industrial source code, developed using object-oriented design methods and languages of the late 80s and early 90s. These systems exhibit a range of problems, effectively preventing them from satisfying the evolving requirements imposed by their customers.
This tutorial will share our knowledge concerning the reengineering of object-oriented legacy systems. We will draw upon our experiences with the FAMOOS project, to show you techniques and tools we have applied on real industrial OO systems to detect and repair problems. In particular, we will discuss issues like reverse engineering, design extraction, metrics, refactoring and program visualisation.
Serge Demeyer is a professor in the Department of Mathematics and Computer Science at the University of Antwerp in Belgium. There he leads a research group investigating the theme of "Software Reengineering" (LORE - Lab On REengineering). His main research interest concerns software engineering (more precisely, reengineering in an object-oriented context) but due to historical reasons he maintains a heavy interest in hypermedia systems as well. He is an active member of the corresponding international research communities, serving in various conference organization and program committees. He has written a book entitled "Object-Oriented reengineering Patterns"
Talk at IBM Zurich Research Lab, Rueschlikon, CH
Sept 02, 2005
Abstract:
[...] In this talk, we describe the
investigation of software evolution by taking a first step towards
reflecting the analysis results against software quality attributes.
Different kinds of analyses (from architecture to code) and their
interpretation will be presented and discussed in relation to quality
attributes. This will show our vision of where such evolution
investigations can lead and how they can support development. For that,
the talk will touch issues such as meta-models for evolution data, data
analysis and history mining, software quality attributes, as well as
visualization of analysis results. The goal is also to outline future
research in software quality analysis based on evolution data.
Talk at University College London, UK, Software Systems Engineering Group
July 21, 2005
Abstract:
[...] In this talk, we describe the
visualization of software evolution by taking advantage of this logical
coupling introduced by modifications and bug fixes over time. We show
different views on the evolution of a software system: (a) views based
on quantitative analysis of growth and change rates; (b) dependencies
introduced by logical couplings and their visualization; (c) feature
evolution views; and (d) integrated views that combine several evolution
metrics. As a result, our approach helps to uncover hidden dependencies
between software parts and presents them in easy-to-assess visual form.
Such visualizations can indicate locations of design erosion in the
architectural evolution of a software system. We have applied our
approach to several large software systems including Mozilla and its CVS
and Bugzilla data to show the effectiveness of our approach.
Talk at IBM Zurich Research Lab, Rueschlikon, CH
April 22, 2005
Abstract:
[...] We introduce the RelVis
visualization approach that concentrates on providing integrated
condensed graphical views on source code and release history data of up
to *n* releases. Measures of metrics of source code entities and
relationships are composed in Kiviat diagrams as annual rings. Diagrams
highlight the good and bad times of an entity and facilitate the
identification of entities and relationships with critical trends. They
are the potential refactoring candidates that should be addressed first
before further evolving the system. Concerning the demonstration of the
RelVis approach we report on our findings yielded from the case-study
with the open source project Mozilla. We present RelVis views on
Mozilla's content and layout modules that sketch the evolution of
various measures across 7 selected major releases and point out the
critical elements.