4th International Conference on Mining Software Repositories (MSR2007), Edited by: Harald Gall, Michele Lanza, ACM, Minneapolis, USA, 2007. (Proceedings)
|
|
1st Workshop on Architecture, Design, and Implementation of the Semantic Desktop, Edited by: Siegfried Handschuh, Gerald Reif, Innsbruck, Austria, 2007. (Proceedings)
|
|
DMC - Distributed and Mobile Collaboration - Workshop Report 2007, Edited by: Marco Aiello, Schahram Dustdar, Harald Gall, 2007. (Proceedings)
The latest trends in distributed and mobile collabora- tion technologies allow people to move across team forms and organizational boundaries as well as to collaborate among/in organizations and communities. The ability to query the company's distributed knowledge base and to cooperate with co-workers is still a requirement, but new paradigms such as service-oriented computing increased pervasiveness, and mobility enable new scenarios and lead to higher complexity of systems. Independently of the busi- ness domain, private ""collaboration"" has become a hot is- sue. Virtual communities, may these be social networks or virtual enterprises, have enjoyed a tremendous popularity recently and are starting to require functionalities for col- laboration in the broadest sense similar to those in business environments. The wide-spread availability of mobile de- vices makes support for mobility an arising topic in this do- main as well. |
|
Julio Gonnet, Data Mining within Eclipse Building a Data Mining Framework with Weka and Eclipse, University of Zurich, Faculty of Economics, Business Administration and Information Technology, 2007. (Master's Thesis)
In the past years, there has been a great interest in the field of data mining. All around the world, larger companies have been investing vast sums of money in enormous data-warehouses and powerful data mining facilities, in the hope of extracting new information and so attain an economic advantage over other companies. With today’s fast-growing technology, interoperability and tendencies for just-in-time systems, it is becoming more likely that one will use or depend on data that does not yet exist or belong to one’s self. Furthermore, from a software engineering point of view, direct access to an application’s database is not recommended, due to the entailing dependencies and coupling to the application. Ultimately, we will want to do a lot more than just mine a set of data from our local database. Be it a more powerful pre-processing of data, the integration with other business applications or the automatic creation of a report for management, we will not get around having to integrate data mining solutions in order to solve more complex problems. In our specific case, we are especially interested in the analysis of software evolution and require a data mining framework that will seamlessly integrate with an IDE, an integrated development environment such as eclipse, already offering a large variety of components that produce softwarerelated data. In this thesis, we present the design and development of a data mining framework, integrating arbitrary data sources, existing data mining facilities and potential data consumers. In the first two chapters, we provide a brief introduction to the world of data mining, explain the need for integration and outline the framework’s requirements. The tool’s functionality is presented as a guided tour of the framework, followed by an in-depth technical look at the framework’s main components. We then discuss the various highlights and problems encountered, present a simple proof of concept and round it off with our conclusions and an outlook to the framework’s future development. |
|
Jacek Ratzinger, sPACE – Software Process Assessment in the Course of Evolution, TU Vienna, 2007. (Dissertation)
|
|
Sandro Boccuzzo, Harald Gall, CocoViz: Towards Cognitive Software Visualizations, In: Proceedings of IEEE International Workshop on Visualizing Software for Understanding and Analysis (VisSoft 2007), IEEE Computer Society, 2007. (Conference or Workshop Paper)
Understanding software projects is a complex task. There is an increasing need for visualizations that improve com- prehensiveness of the evolution of a software system. This paper discusses our recent work in software visualization with respect to metaphors. Our goal is to use simple and well-known graphical elements known from daily life such as houses, spears, or tables to allow a user a quick and intuitive understanding of a given visualization via their proportions. We present a software metrics configurator that handle different metaphors and allows optimizations to their graphical representation. The results so far show that large systems can be visualized effectively with metaphor glyphs, yet more case studies and more metaphor glyphs are required for a better understanding for offering a simple and cognitive visual understanding of a software system. |
|
Sandro Boccuzzo, Harald Gall, CocoViz: Supported Cognitive Software Visualization, In: Proceedings of 14th Working Conference on Reverse Engineering (WCRE 2007), IEEE Computer Society, 2007. (Conference or Workshop Paper)
As software evolves and becomes more and more complex, program comprehension arises as a major concern in soft- ware projects. The amount of data and the complexity of relationships between the entities are unmanageable for en- gineers without effective tool support. In this paper, we demonstrate how CocoViz can help understanding software in a quick and intuitive manner. Some of the implemented approaches have been presented inde- pendently before. However, in CocoViz we combine them in an intuitive and easy to use manner. |
|
Marco D'Ambros, Michele Lanza, Martin Pinzger, ""A Bug's Life"" Visualizing a Bug Database, In: Proceedings of IEEE International Workshop on Visualizing Software for Understanding and Analysis (VisSoft 2007), IEEE Computer Society, Banff, Alberta, Canada, 2007. (Conference or Workshop Paper)
|
|
Jacek Ratzinger, Martin Pinzger, Harald Gall, Quality Assessment based on Attribute Series of Software Evolution, In: Proceedings of the 14th Working Conference on Reverse Engineering (WCRE), IEEE Computer Society, Vancouver, Canada, January 2007. (Conference or Workshop Paper)
|
|
Knud Möller, Gerald Reif, Siegfried Handschuh, Moving Stuff - Linking Desktops with semiBlog, the Semantic Clipboard and RDFa, In: 16th International World Wide Web Conference (WWW2007), Developers Track, January 2007. (Conference or Workshop Paper)
In this short paper we will demonstrate how embedded RDFa in Weblogs can be used as a medium for data-transfer between desktops. A combination of two existing Semantic Web tools - the desktop-based Semantic Blog authoring tool semiBlog and the Semantic Clipboard application - allows one user to export and blog data from various desktop applications such as electronic addressbooks, calendars or bibliographic databases, and another user to import the same data back into their own applications. http://sw.deri.org/~knud/papers/MetadataRoundtripWWW2007/ |
|
Tudor Groza, Siegfried Handschuh, Knud Möller, Gunnar Grimnes, Leo Sauermann, Enrico Minack, Gerald Reif, Rosa Gudjonsdottir, The NEPOMUK Project - On the Way to the Social Semantic Desktop, In: Proceedings of the Third International Conference on Semantic Technologies (I-SEMANTICS 2007), Graz, Austria, 2007. (Conference or Workshop Paper)
This paper introduces the NEPOMUK pro ject which aims to create a
standard and reference implementation for the Social Semantic Desktop. We outline the requirements and functionalities that were identi?ed for a useful Semantic Desktop system and present an architecture that ful?lls these requirements which was acquired by incremental re?nement of the architecture of existing Semantic Desktop prototypes. The NEPOMUK pro ject is primarily motivated by three real-life industrial use-cases, we brie?y outline these and the processes used to extract required functionalities from the people working in these areas today, and we present a selection of typical tasks where the Semantic Desktop could be of bene?t. |
|
Gian Marco Laube, Gerald Reif, Harald Gall, Architectural Issues of the Semantic Clipboard as Ontology Mediation Service, In: 1st Workshop on Architecture, Design, and Implementation of the Semantic Desktop (SemDeskDesign2007) at the Eurpean Semantic Web Conference ESWC2007, Innsbruck, Austria, January 2007. (Conference or Workshop Paper)
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 de?ned in a machine process-able way. In previous research we developed a prototype to show the feasibility and bene?ts from
a semantic enriched clipboard, that was limited to the number of ontologies it could handle or application that could access it. In this paper
we introduce an advanced architecture for the Semantic Clipboard that
incorporates the standard communication paradigm of operating system
clipboards and is able to handle RDF graphs of arbitrary domains of interest. This architecture includes a data mediation service that overcomes
vocabulary heterogeneities between source and target applications. |
|
Gerald Reif, Tudor Groza, Siegfried Handschuh, Cedric Mesnage, Mehdi Jazayeri, Rosa Gudjonsdottir, Collaboration on the Social Semantic Desktop, In: Workshop on Ubiquitous Mobile Information and Collaboration Systems (UMICS 2007) at CAiSE 2007, Springer, Trondheim, Norway, January 2007. (Conference or Workshop Paper)
To accomplish the daily work people use several desktop applications to collaborate with co-workers. Each application is specialized
on a speci?c domain, such as document management, email, or time planning. Although the data is distributed over several applications the data
is highly interlinked from the user’s point of view. The Social Semantic
Desktop aims to take advantage of Semantic Web technologies on the
computer’s desktop to better support the user’s mental working model
and to enable collaboration over enterprise boundaries. In this paper we
present our ongoing work on the Social Semantic Desktop as collaboration environment. We present the intended usage scenarios, discuss the
required services and give an outlook on the architecture we envision for
the Social Semantic Desktop. |
|
Gerald Reif, Gian Marco Laube, Knud Möller, Harald Gall, SemClip - Overcoming the Semantic Gap Between Desktop Applications, In: 5th Semantic Web Challenge at the 6th International Semantic Web Conference (ISWC 2007), Busan, South Korea, January 2007. (Conference or Workshop Paper)
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 de?ned 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. |
|
Jacek Ratzinger, Martin Pinzger, Harald Gall, EQ-Mine:Predicting Short-Term Defects for Software Evolution, In: Proceedings of the 10th International Conference of Funtamental Approaches to Software Engineering (FASE), Springer, Braga, Portugal, January 2007. (Conference or Workshop Paper)
|
|
Beat Fluri, Assessing Changeability by Investigating the Propagation of Change Types, In: Proceedings of the 29th International Conference on Software Engineering, IEEE Computer Society, January 2007. (Conference or Workshop Paper)
We propose an approach to build a changeability assessment model for source code entities. Based on this model, we will assess the changeability of evolving software systems.
The changeability assessment is based on a taxonomy of more than 30 change types and a classification of these in terms of change significance levels for consecutive versions of software entities. We consider change type propagation on different levels of granularity ranging from method changes to interface and class changes.
We claim that this kind of assessment is effective in pointing to potential causes of maintainability problems in evolving software systems. |
|
Michael Würsch, Improving Abstract Syntax Tree based Source Code Change Detection, University of Zurich, Faculty of Economics, Business Administration and Information Technology, 2006. (Master's Thesis)
Changes are a crucial part of the life-cycle of modern software systems. Common versioning systems such as CVS store version histories of source code. Usually, they are not capable of tracking changes on a more sophisticated level. They provide lexical but not syntactical change analysis.
The existing Eclipse-plug-in ChangeDistiller bridges this gap by providing a sophisticated analysis of structural source code changes. It uses an abstract syntax tree (AST) representation of subsequent revisions of source code files and compares the trees by using a change detection algorithm for hierarchically structured information. The outcome is an edit script describing the operations that are necessary to transform the original version of the tree into the modified one.
We aim at improving the sub-algorithm responsible for matching trees. It yields insufficiencies in terms of matching leaves in general, it often produces sub-optimal results for small subtrees, and it is not able to handle large number of changes adequately. To overcome this issues, we propose customized similarity measures and a similarity ranking algorithm for leaves, as well as dynamic modulation of the tree similarity thresholds whenever small tree structures are encountered.
To prove our claims, we establish an extensive benchmark for investigating runtime performance and accuracy. The benchmark is based on the JUnit regression testing framework and relies on artificial source code examples, as well as on examples taken from a medium-sized real project. |
|
Matthias Taugwalder, A Quality-of-Service Model for Loosely-Coupled Peer-to-Peer Workflows, University of Zurich, Faculty of Economics, Business Administration and Information Technology, 2006. (Master's Thesis)
The Internet and the development of new technologies such as Peer-to-Peer networks have chan-ged the way how companies do business together. Today anyone can provide all sorts of services to the global community. This entails that service consumers can choose from a mass of different service providers. But each service provider offers the service to different conditions. Also the service requester may have specific requirements of the service. That is where the quality of a service becomes important.
Quality of Service (QoS) is a framework for specifying service attributes which helps the service requester to choose between different service providers. In the traditional sense this QoS was limited to technical aspects such as network speed and failure rate. The usage of QoS in other domains such as Web services and Workflow systems introduced additional QoS criteria. Furthermore, different users may have different needs: While for system administrators the technical aspects of a service are important, the end-user may have additional requests and also a totally different perception of the service and its quality.
This diploma thesis describes an open and extensible framework for specifying QoS criteria and service attributes in the domain of Peer-to-Peer systems. The thesis introduces the terminology in the domain and discusses existing QoS approaches. It further addresses necessary considerations of the specification process, which help to produce meaningful and useful QoS measures and results. Finally this thesis presents a proof-of-concept implementation of the proposed extensible QoS model that is based on Java and RDF (Resource Description Framework) language. |
|
Lukas Schweizer, WEESA Meta-Data Repository for Web Applications, University of Zurich, Faculty of Economics, Business Administration and Information Technology, 2006. (Master's Thesis)
Web Applications hold different types of data: some are needed for the applications logic; some for visualization; and some contain the actual information that should be displayed to the end user. In most cases it is this last data element in which the user is really interested in. It is always up to the user to read and interpret these data. The exponential increase in the number of Web applications caused a need to process these data, not only by humans but also by machines. However, that also meant that machines would have to interpret the meaning of these given data, which in the current Internet is imprecise and dissatisfying. Therefore, the idea of the Semantic Web was born, where the meaning of data elements is stored together with the data itself and hence could be processed by computer systems. Unfortunately, the process of manually annotating data elements with semantic information to express their meaning is time intensive and the maintenance of the semantics becomes difficult. A new framework called WEESA (Web Engineering for Semantic Web Applications) could be used to solve this problem. WEESA can extend existing Web engineering methodologies to support the automated semantical annotation of Web pages. For querying and reasoning purpose it would be better not only to query single pages but also the aggregated semantical information of the whole Web application. In this thesis, we will consider how a knowledge base can be built that aggregates and maintains up to date semantical information. First, we will take a look at the question of how semantic information could be stored in a machine processable way. Then, we will see what the Semantic Web is about; how engineering of semantic Web applications work; and what has to be considered when building this knowledge base. After the implementation of the knowledge base, an evaluation of the used technology and business scenarios will follow. |
|
Dominik Schaffhauser, Detecting Design Violations and Code Smells by Bug-Impact Analysis, University of Zurich, Faculty of Economics, Business Administration and Information Technology, 2006. (Master's Thesis)
By analyzing software architectures it is possible to detect risky weakness. There are many different waysto analyze software. One such methode is to combine the collected data of a Bugzilla repository with the history information from the changed files of a CVS repository. This allows to detect bugs which affect unexpected source code entities. Furthermore it is possible to find bugs that lead to new bugs after being fixed. Integrated into an Eclipse plugin, the Class Evolution plugin provides the developers and designers with specific information on code that is good, or on code that needs a major refactoring. The goal of this thesis was to develop an Eclipse plugin capable of telling the software engineer about weaknesses in classes and methods. |
|