Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Werner Janjic is active.

Publication


Featured researches published by Werner Janjic.


IEEE Software | 2008

Code Conjurer: Pulling Reusable Software out of Thin Air

Oliver Hummel; Werner Janjic; Colin Atkinson

For many years, the IT industry has sought to accelerate the software development process by assembling new applications from existing software assets. However, true component-based reuse of the form Douglas Mcllroy envisaged in the 1960s is still the exception rather than the rule, and most of the systematic software reuse practiced today uses heavyweight approaches such as product-line engineering or domain-specific frameworks. By component, we mean any cohesive and compact unit of software functionality with a well-defined interface - from simple programming language classes to more complex artifacts such as Web services and Enterprise JavaBeans.


Archive | 2013

Test-Driven Reuse: Key to Improving Precision of Search Engines for Software Reuse

Oliver Hummel; Werner Janjic

The applicability of software reuse approaches in practice has long suffered from a lack of reusable material, but this situation has changed virtually over night: the rise of the open source movement has made millions of software artifacts available on the Internet. Suddenly, the existing (largely text-based) software search solutions did not suffer from a lack of reusable material anymore, but rather from a lack of precision as a query now might return thousands of potential results. In a reuse context, however, precisely matching results are the key for integrating reusable material into a given environment with as little effort as possible. Therefore a better way for formulating and executing queries is a core requirement for a broad application of software search and reuse. Inspired by the recent trend towards test-first software development approaches, we found test cases being a practical vehicle for reuse-driven software retrieval and developed a test-driven code search system utilizing simple unit tests as semantic descriptions of desired artifacts. In this chapter we describe our approach and present an evaluation that underlines its superior precision when it comes to retrieving reusable artifacts.


Proceedings of 2010 ICSE Workshop on Search-driven Development: Users, Infrastructure, Tools and Evaluation | 2010

More archetypal usage scenarios for software search engines

Werner Janjic; Oliver Hummel; Colin Atkinson

The increasing availability of software in all kinds of repositories has renewed interest in software retrieval and software reuse. Not only has there been significant progress in developing various types of tools for searching for reusable artifacts, but also the integration of these tools into development environments has matured considerably. Yet, relatively little is known on why and how developers use these features and whether there are applications of the technology that go beyond classic reuse. Since we believe it is important for our fledgling community to understand how developers can benefit from software search systems, we present an initial collection of archetypal usage scenarios for them. These are derived from a survey of existing literature along with novel ideas from ongoing experiments with a state of the art software search engine.


2012 4th International Workshop on Search-Driven Development: Users, Infrastructure, Tools, and Evaluation (SUITE) | 2012

Leveraging software search and reuse with automated software adaptation

Werner Janjic; Colin Atkinson

Research on software reuse over the last decade has removed a lot of obstacles to its practical adoption. However, despite the claims in the software reuse literature of 1990s there are still some fundamental research challenges to be addressed, especially the problem of delivering “good” (i.e. high quality) search results with high precision and semantic recall. In terms of precision, one of the most promising approach to have emerged in recent years is test-driven search which only includes components in the result set that actually match a developers behavioral requirements as defined by a test case. However, the test-driven search prototypes available today currently have a low semantic recall because they are unable to find semantically matching components which have the wrong syntactic interface. In this paper we describe an automatic adaptation engine that alleviates this problem by automatically creating adapters to allow semantically mismatching components to be tested by test-driven search engines, thus significantly enhancing their semantic recall.


mining software repositories | 2013

An unabridged source code dataset for research in software reuse

Werner Janjic; Oliver Hummel; Marcus Schumacher; Colin Atkinson

This paper describes a large, unabridged data-set of Java source code gathered and shared as part of the Merobase Component Finder project of the Software-Engineering Group at the University of Mannheim. It consists of the complete index used to drive the search engine, www.merobase.com, the vast majority1 of the source code modules accessible through it, and a tool that enables researchers to efficiently browse the collected data. We describe the techniques used to collect, format and store the data set, as well as the core capabilities of the Merobase search engine such as classic keyword-based, interface-based and test-driven search. This data-set, which represents one of the largest searchable collections of source and binary modules available online, has been recently made available for download and use in further research projects. All files are available at http://merobase.informatik.uni-mannheim.de/sources/.


automation of software test | 2013

Utilizing software reuse experience for automated test recommendation

Werner Janjic; Colin Atkinson

The development of defect tests is still a very labour intensive process that demands a high-level of domain knowledge, concentration and problem awareness from software engineers. Any technology that can reduce the manual effort involved in this process therefore has the potential to significantly reduce software development costs and time consumption. An idea for achieving this is to reuse the knowledge bound up in already existing test cases, either directly or indirectly, to assist in the development of tests for new software components and systems. Although general software reuse has received a lot of attention in the past - both in academia and industry - previous research has focussed on the reuse and recommendation of existing software artifacts in the creation of new product code rather than on the recommendation of tests. In this paper we focus on the latter, and present a novel automated test recommendation approach that leverages lessons learned from traditional software reuse to proactively make test case suggestions while an engineer is developing tests. In contrast, most existing testing-assistance tools provide ex post assistance to test developers in the form of coverage assessments and test quality evaluations. Our goal is to create an automated, non-intrusive recommendation system for efficient software test development. In this paper we set out the basic strategy by which this can be achieved and present a prototypical implementation of our test recommender system for Eclipse.


Recommendation Systems in Software Engineering | 2014

Reuse-Oriented Code Recommendation Systems

Werner Janjic; Oliver Hummel; Colin Atkinson

Effective software reuse has long been regarded as an important foundation for a more engineering-like approach to software development. Proactive recommendation systems that have the ability to unobtrusively suggest immediately applicable reuse opportunities can become a crucial step toward realizing this goal and making reuse more practical. This chapter focuses on tools that support reuse through the recommendation of source code—reuse-oriented code recommendation systems (ROCR). These support a large variety of common code reuse approaches from the copy-and-paste metaphor to other techniques such as automatically generating code using the knowledge gained by mining source code repositories. In this chapter, we discuss the foundations of software search and reuse, provide an overview of the main characteristics of ROCR systems, and describe how they can be built.


international conference on software reuse | 2011

1st international ICSR workshop on comparing software retrieval approaches (CORA)

Oliver Hummel; Werner Janjic

For the first time in more than four decades, the recent advent of the open source movement and the availability of service-oriented architectures has enabled researchers in software reuse to collect a larger amount of potentially reusable software artifacts. Hence, various communities have recently developed a new wave of interesting software and service search, retrieval and matching approaches. However, to date most of these approaches have been created independently from each other and are evaluated on proprietary data only. Thus, their performance is not easily comparable with each other (if at all). The goal of this workshop is to bring together researcher from the above communities and practitioners interested in applying the mentioned technologies in order to establish a common understanding of the challenges involved in evaluating software retrieval systems and a community working on solutions to overcome them. An important long-term goal is the creation of a reference collection with reusable material that can be used as a common baseline for the comparison of all kinds of software search, retrieval and matching tools.


software engineering and knowledge engineering | 2007

Evaluating the Efficiency of Retrieval Methods for Component Repositories

Oliver Hummel; Werner Janjic; Colin Atkinson


international conference on software engineering advances | 2012

Structuring Software Reusability Metrics for Component-Based Software Development

Danail Hristov; Oliver Hummel; Mahmudul Huq; Werner Janjic

Collaboration


Dive into the Werner Janjic's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Mahmudul Huq

Karlsruhe Institute of Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge