8 results
Now showing1 - 8 of 8
- Some of the metrics are blocked by yourconsent settings
Item type:Publication, Access status: without files , Current and future bots in software developmentBots that support software development ('DevBots') are seen as a promising approach to deal with the ever-increasing complexity of modern software engineering and development. Existing DevBots are already able to relieve developers from routine tasks such as building project images or keeping dependencies up-to-date. However, advances in machine learning and artificial intelligence hold the promise of future, significantly more advanced, DevBots. In this paper, we introduce the terminology of contemporary and ideal DevBots. Contemporary DevBots represent the current state of practice, which we characterise using a facet-based taxonomy. We exemplify this taxonomy using 11 existing, industrial-strength bots. We further provide a vision and definition of future (ideal) DevBots, which are not only autonomous, but also adaptive, as well as technically and socially competent. These properties may allow ideal DevBots to act more akin to artificial team mates than simple development tools.Publicationtype: Conference Paper105 - Some of the metrics are blocked by yourconsent settings
Item type:Publication, Access status: without files , Optimized IoT service placement in the fog(2017-12-01); ; ; ; The Internet of Things (IoT) leads to an ever-growing presence of ubiquitous networked computing devices in public, business, and private spaces. These devices do not simply act as sensors, but feature computational, storage, and networking resources. Being located at the edge of the network, these resources can be exploited to execute IoT applications in a distributed manner. This concept is known as fog computing. While the theoretical foundations of fog computing are already established, there is a lack of resource provisioning approaches to enable the exploitation of fog-based computational resources. To resolve this shortcoming, we present a conceptual fog computing framework. Then, we model the service placement problem for IoT applications over fog resources as an optimization problem, which explicitly considers the heterogeneity of applications and resources in terms of Quality of Service attributes. Finally, we propose a genetic algorithm as a problem resolution heuristic and show, through experiments, that the service execution can achieve a reduction of network communication delays when the genetic algorithm is used, and a better utilization of fog resources when the exact optimization method is applied.Publicationtype: Journal Article33 - Some of the metrics are blocked by yourconsent settings
Item type:Publication, Access status: without files , An empirical analysis of build failures in the continuous integration workflows of Java-based open-source softwareContinuous Integration (CI) has become a common practice in both industrial and open-source software development. While CI has evidently improved aspects of the software development process, errors during CI builds pose a threat to development efficiency. As an increasing amount of time goes into fixing such errors, failing builds can significantly impair the development process and become very costly. We perform an indepth analysis of build failures in CI environments. Our approach links repository commits to data of corresponding CI builds. Using data from 14 open-source Java projects, we first identify 14 common error categories. Besides test failures, which are by far the most common error category (up to >80% per project), we also identify noisy build data, e.g., induced by transient Git interaction errors, or general infrastructure flakiness. Second, we analyze which factors impact the build results, taking into account general process and specific CI metrics. Our results indicate that process metrics have a significant impact on the build outcome in 8 of the 14 projects on average, but the strongest influencing factor across all projects is overall stability in the recent build history. For 10 projects, more than 50% (up to 80%) of all failed builds follow a previous build failure. Moreover, the fail ratio of the last k=10 builds has a significant impact on build results for all projects in our dataset.Publicationtype: Conference Paper71 - Some of the metrics are blocked by yourconsent settings
Item type:Publication, Access status: without files , Connecting Fog and Cloud Computing(2017-03); ; ; Fog computing provides a conceptual approach for virtualizing and orchestrating computing, networking, and storage resources to process data. This issue helps toprogress the fog computing research field and offer solutions. It is clear that we are still in the formative phase of fog computing, and only the future will reveal which parts of the (sometimes competing) visions, solution proposals, and application areas will prove to be of most value to society and industry. However, as the four papers in this special issue show, the opportunities, as well as the challenges, are manifold. Some of these challenges can be addressed by adapting solutions that have proven their value before, such as the contributions on load balancing, scheduling, and NFV in this special issue.Publicationtype: Journal Article25 - Some of the metrics are blocked by yourconsent settings
Item type:Publication, Access status: without files , Resource provisioning for IoT services in the fog(2016-12); ; ; The advent of the Internet of Things (IoT) leadsto the pervasion of business and private spaces with ubiquitous, networked computing devices. These devices do not simply actas sensors, but feature computational, storage, and networkingresources. These resources are close to the edge of the network, and it is a promising approach to exploit them in order to executeIoT services. This concept is known as fog computing.Despite existing theoretical foundations, the adoption of fogcomputing is still at its very beginning. Especially, there is alack of approaches for the leasing and releasing of resources. Toresolve this shortcoming, we present a conceptual framework forfog resource provisioning. We formalize an optimization problemwhich is able to take into account existing resources in fog/IoTlandscapes. The goal of this optimization problem is to providedelay-sensitive utilization of available fog-based computationalresources. We evaluate the resource provisioning model to showthe benefits of our contributions. Our results show a decrease indelays of up to 39% compared to a baseline approach, yieldingshorter round-trip times and makespans.Publicationtype: Conference Paper32 - Some of the metrics are blocked by yourconsent settings
Item type:Publication, Access status: without files , SPEEDL - A Declarative Event-Based Language to Define the Scaling Behavior of Cloud ApplicationsContemporary cloud providers offer out-of-the-box auto-scaling solutions. However, defining a non-trivial scaling behavior that goes beyond the feature set provided by existing solutions is still challenging. In this paper we present SPEEDL, a declarative and extensible domain-specific language that simplifies the creation of elastic scaling behavior on top of IaaS clouds. SPEEDL simplifies the creation of event-driven policies for resource management (How many resources, and what resource types, are needed?), as well as task mapping (Which tasks should be handled by which resources?). Based on a dataset of real-life scaling policies, we demonstrate that SPEEDL can cover most scaling behaviors real-life developers want to express, and that the resulting SPEEDL policies are at the same time substantially more compact, easier to read, and less error-prone than the same behavior expressed via a general-purpose programming language.Publicationtype: Conference Paper28 - Some of the metrics are blocked by yourconsent settings
Item type:Publication, Access status: without files , The dark side of SOA testing: Towards testing contemporary SOAs based on criticality metricsService-Oriented Architectures (SOAs) have widely been accepted as the standard way of building large-scale, heterogeneous enterprise IT systems. In this paper, we explore the current limitations of testing contemporary SOAs, which are typically assemblies of various components, including services, message buses, business processes, and support components. We argue that, currently, SOA testing is too much concerned with testing single services or business processes, while there is little scientific literature on holistic testing of contemporary SOAs that includes all critical components and their mutual dependencies and interactions. In this paper, we detail the architecture of contemporary SOA, thoroughly assess the current state of research in respect of their testing, and introduce the notion of SOA criticality metrics as indicators for an individual component's criticality for the SOA as a whole. We enumerate an initial metric set for various component types and interactions, as well as discuss how these metrics can be used for testing contemporary SOA.Publicationtype: Conference Paper25 - Some of the metrics are blocked by yourconsent settings
Item type:Publication, Access status: without files , Fifty shades of grey in SOA testingTesting is undisputedly a fundamental verification principle in the software landscape. Today's products require us to effectively handle and test huge, complex systems and in this context to tackle challenging traits like heterogeneity, distribution and controllability to name just a few. The advent of Service-Oriented Architectures with their inherent technological features like dynamics and heterogeneity exacerbated faced challenges, requiring us to evolve our technology. The traditional view of white or black box testing, for example, does not accommodate the multitude of shades of grey one should be able to exploit effectively for system-wide tests. Today, while there are a multitude of approaches for testing single services, there is still few work on methodological system tests for SOAs. In this paper we propose a corresponding workflow for tackling SOA testing and diagnosis, discuss SOA test case generation in more detail, and report preliminary research in that direction.Publicationtype: Conference Paper24