Auflistung nach Autor:in "Knoche, Holger"
1 - 10 von 12
Treffer pro Seite
Sortieroptionen
- ZeitschriftenartikelAutomated Source-Level Instrumentation for Dynamic Dependency Analysis of COBOL Systems(Softwaretechnik-Trends: Vol. 32, No. 2, 2012) Knoche, Holger; Hoorn, André; Goerigk, Wolfgang; Hasselbring, WilhelmHolger Knoche1 , Andr´ e van Hoorn2 , Wolfgang Goerigk1 , and Wilhelm Hasselbring2
- ZeitschriftenartikelCombining Application-Level and Database-Level Monitoring to Analyze the Performance Impact of Database Lock Contention(Softwaretechnik-Trends Band 36, Heft 4, 2016) Knoche, HolgerDatabase lock contention can severely impact application performance and limit scalability. This can be of particular importance when major modifications are made to transactional software, such as large refactorings or modernization projects. In order to assess the criticality of such modifications, it is necessary to measure the current degree of database lock contention, and attribute the effects to the appropriate sections of the application. However, current monitoring tools do not provide both application-level and database-level monitoring data with sufficient detail at the same time. In this paper, we present an approach to combine application-level and database-level monitoring to measure lock contention on a per-section basis, and present first experimental results from a prototypical implementation for PostgreSQL.
- KonferenzbeitragContinuous API Evolution in Heterogenous Enterprise Software Systems(Software Engineering 2022, 2022) Knoche, Holger; Hasselbring, WilhelmThe ability to independently deploy parts of a software system is one of the cornerstones of modern software development, and allows for these parts to evolve independently and at different speeds. A major challenge of such independent deployment, however, is to ensure that despite their individual evolution, the interfaces between interacting parts remain compatible. This is especially important for enterprise software systems, which are often highly integrated and based on heterogenous IT infrastructures.
- ZeitschriftenartikelDrivers and Barriers for Microservice Adoption – A Survey among Professionals in Germany(Enterprise Modelling and Information Systems Architectures (EMISAJ) – International Journal of Conceptual Modeling: Vol. 14, Nr. 1, 2019) Knoche, Holger; Hasselbring, WilhelmMicroservices are an architectural style for software which currently receives a lot of attention in both industry and academia. Several companies employ microservice architectures with great success, and there is a wealth of blog posts praising their advantages. Especially so-called Internet-scale systems use them to satisfy their enormous scalability requirements and to rapidly deliver new features to their users. But microservices are not only popular with large, Internet-scale systems. Many traditional companies are also considering whether microservices are a viable option for their applications. However, these companies may have other motivations to employ microservices, and see other barriers which could prevent them from adopting microservices. Furthermore, these drivers and barriers possibly differ among industry sectors. In this article, we present the results of a survey on drivers and barriers for microservice adoption among professionals in Germany. In addition to overall drivers and barriers, we particularly focus on the use of microservices to modernize existing software, with special emphasis on implications for runtime performance and transactionality. We observe interesting differences between early adopters who emphasize scalability of their Internet-scale systems, compared to traditional companies which emphasize maintainability of their IT systems.
- ZeitschriftenartikelDrivers and Barriers for Microservice Adoption(Extended Abstract)(EMISA Forum: Vol. 41, No. 1, 2021) Knoche, Holger; Hasselbring, Wilhelm
- KonferenzbeitragExperience with Microservices for Legacy Software Modernization(Software Engineering and Software Management 2019, 2019) Knoche, Holger; Hasselbring, WilhelmMicroservices are known as an architecture for building scalable applications running in the cloud. However, they also promise high maintainability due to smaller code bases and strong component separation, making them an interesting option for software modernization. We present a migration process to decompose an existing application into microservices, and report on experiences from applying this process in an ongoing legacy modernization project.
- ZeitschriftenartikelExtending the Palladio Component Model to Analyze Data Contention for Modernizing Transactional Software Towards Service-Orientation(Softwaretechnik-Trends Band 35, Heft 3, 2015) Merkle, Philipp; Knoche, HolgerThe performance of data-intensive software, such as most enterprise software, is determined by two types of contention: The contention for physical resources, and the contention for data accessed within transactions. When modernizing existing software towards service-orientation, especially the latter type of contention may increase significantly due to access restructuring. To ensure acceptable performance of the modernized application, an in-advance analysis of the expected performance is required. However, most designoriented performance models do not provide appropriate means for modeling data contention. In this paper, we propose an extension to the Palladio Component Model, called PCM.TX, which enables the analysis of performance effects due to data contention.
- KonferenzbeitragImproving Batch Performance when Migrating to Microservices with Chunking and Coroutines(Softwaretechnik-Trends Band 39, Heft 4, 2019) Knoche, HolgerWhen migrating enterprise software towards microservices, batch jobs are particularly sensitive to communication overhead introduced by the distributed nature of microservices. As it is not uncommon for a single batch job to process millions of data items, even an additional millisecond of overhead per item may lead to a significant increase in runtime. A common strategy for reducing the average overhead per item is called chunking, which means that individual requests for different data items are grouped into larger requests. However, chunking is difficult to integrate into existing batch jobs, which are traditionally executed sequentially. In this paper, we present a chunking approach based on coroutines, and investigate whether it can be used to mitigate the potential penalty to batch performance during migrations to microservices.
- ZeitschriftenartikelModel-Driven Instrumentation for Dynamic Analysis of Legacy Software Systems(Softwaretechnik-Trends Band 31, Heft 2, 2011) van Hoorn, André; Knoche, Holger; Goerigk, Wolfgang; Hasselbring, WilhelmDynamic analysis requires the instrumentation of application code with monitoring probes. This paper presents an approach to generate instrumentation artifacts from models augmented with analysis directives. Special emphasis is put on how to add monitoring instrumentation by means of aspect-oriented programming (AOP) to programs written in legacy languages.
- ZeitschriftenartikelModel-Driven Load and Performance Test Engineering in DynaMod(Softwaretechnik-Trends Band 34, Heft 2, 2014) Schulz, Eike; Goerigk, Wolfgang; Hasselbring, Wilhelm; van Hoorn, André; Knoche, HolgerDefining representative workloads, involving workload intensity and service calls within user sessions, is a core requirement for meaningful performance testing. This paper presents the approach for obtaining representative workload models from production systems that has been developed in the DynaMod project for model-driven software modernization.