Adam Trendowicz

Adam Trendowicz
Fraunhofer Institute for Experimental Software Engineering IESE | IESE · Department of Measurement, Prediction and Empiricism

PhD

About

105
Publications
37,041
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
1,374
Citations

Publications

Publications (105)
Article
Full-text available
AI-based systems are software systems with functionalities enabled by at least one AI component (e.g., for image-, speech-recognition, and autonomous driving). AI-based systems are becoming pervasive in society due to advances in AI. However, there is limited synthesized knowledge on Software Engineering (SE) approaches for building, operating, and...
Preprint
In the future, most companies will be confronted with the topic of Artificial Intelligence (AI) and will have to decide on their strategy in this regards. Currently, a lot of companies are thinking about whether and how AI and the usage of data will impact their business model and what potential use cases could look like. One of the biggest challen...
Preprint
In recent years, the role and the importance of software in the automotive domain have changed dramatically. Being able to systematically evaluate and manage software quality is becoming even more crucial. In practice, however, we still find a largely static approach for measuring software quality based on a predefined list of complexity metrics wi...
Article
Software technical debt (TD) is a relevant software engineering problem. Only if properly managed can TD provide benefits while avoiding risks. Current TD management (TDM) support is limited. Recent advances in software engineering (SE) and data science (DS) promote data-driven TDM. In this paper, we summarize experiences concerning data-driven TDM...
Article
Full-text available
Nowadays, systems containing components based on machine learning (ML) methods are becoming more widespread. In order to ensure the intended behavior of a software system, there are standards that define necessary qualities of the system and its components (such as ISO/IEC 25010). Due to the different nature of ML, we have to re-interpret existing...
Chapter
Companies dealing with Artificial Intelligence (AI) models in Autonomous Systems (AS) face several problems, such as users’ lack of trust in adverse or unknown conditions, gaps between software engineering and AI model development, and operation in a continuously changing operational environment. This work-in-progress paper aims to close the gap be...
Preprint
Full-text available
AI-based systems are software systems with functionalities enabled by at least one AI component (e.g., for image- and speech-recognition, and autonomous driving). AI-based systems are becoming pervasive in society due to advances in AI. However, there is limited synthesized knowledge on Software Engineering (SE) approaches for building, operating,...
Preprint
Context: Autonomous Systems (ASs) are becoming increasingly pervasive in today's society. One reason lies in the emergence of sophisticated Artificial Intelligence (AI) solutions that boost the ability of ASs to self-adapt in increasingly complex and dynamic environments. Companies dealing with AI models in ASs face several problems, such as users'...
Article
Data science is mandatory in today's business to capitalize on achievements and assets. This specifically holds for modern software development, where data science facilitates analyzing product, process, and usage and thus managing evolution and performance. With the convergence of embedded and IT domains, such as the Internet of Things (IoT) and a...
Chapter
Software quality poses continuously new challenges in software development, including aspects related to both software development and system usage, which significantly impact the success of software systems. The Q-Rapids H2020 project defines an evidence-based, data-driven quality-aware rapid software development methodology. Quality requirements...
Conference Paper
The use of software analytics in software development companies has grown in the last years. Still, there is little support for such companies to obtain integrated insightful and actionable information at the right time. This research aims at exploring the integration of runtime and development data to analyze to what extent external quality is rel...
Conference Paper
Full-text available
Existing definitions and metrics of technical debt (TD) tend to focus on static properties of software artifacts, in particular on code measurement. Our experience from software renovation projects is that dynamic aspects-runtime indicators of TD-often play a major role. In this position paper, we present insights and solution ideas gained from num...
Technical Report
Full-text available
Ziel des Abakus-Vorhabens war die Entwicklung einer werkzeuggestützten Schätzmethodik, die bereits in der Akquisephase eine möglichst präzise Ermittlung des Umfangs von Softwareprojekten ermöglicht. Anders als bei den bekannten algorithmischen oder hybriden Verfahren sollte bei dieser Methode keine präzise Quantifizierung des Projektumfangs auf Bas...
Conference Paper
Full-text available
Due to cost and time constraints, software quality is often neglected in the evolution and adaptation of software. Thus, maintainability suffers, maintenance costs rise, and the development takes longer. These effects are referred to as “technical debt”. The challenge for project managers is to find a balance when using the given budget and schedul...
Presentation
Big-Data(BD)-Projekte scheitern häufig am der technischen Umsetzbarkeit. Vielmehr scheitern sie, da sie weder am strategischen Unternehmenszielen ausgerichtet noch im Rahmen der geschäftlichen und operativen Rahmenbedingungen realisierbar sind. Dieses Problem ist noch ausgeprägter in Smart Ecosystems, in denen BD-Lösungen an organisationsspezifisch...
Article
Knowing about big data's potential for exploiting new business ideas is a key capability for staying successful in the market. Potential analysis provides a systematic way to identify and close the gap between big data's possible benefits and the ability to turn that data into business value.
Article
Software quality models provide either abstract quality characteristics or concrete quality measurements; there is no seamless integration of these two aspects. Reasons for this include the complexity of quality and the various quality profiles in different domains which make it difficult to build operationalised quality models. In the project Quam...
Article
Our great reliance on software-based systems and services nowadays requires software products of the highest quality. An essential prerequisite for developing software of guaranteed quality in a predictable way is the ability to model and objectively assess its quality throughout the project lifecycle. A potential approach must handle the abstract...
Chapter
It is a human thing to err. Yet, we should learn from mistakes in order not to repeat them. At best, when we learn from others’ mistakes, we do not have to bear their consequences; others already did it.
Chapter
One of the essential decisions during estimation is the abstraction level on which we estimate. At one extreme, we may predict effort for a complete project. At the other extreme, we may predict effort for individual work packages or activities. Dissonance between abstraction levels on which we are able to estimate and the level on which we need es...
Chapter
Effort and cost estimation are of paramount importance for the success of software development projects. Everyday practice shows that many software organizations still propose unrealistic software costs, work within tight schedules, and finish their projects behind schedule and budget, or do not complete them at all.
Chapter
The effort required for developing software depends on a number of factors. The major determinant of development effort is the “size” of software, typically approximated in terms of the amount of functionality delivered by the software or the structural size of artifacts delivered by software engineering processes. Still, developing software of com...
Chapter
Uncertainty and inaccuracy are inherent properties of estimation, in particular predictive estimation. Measuring and managing uncertainty and inaccuracy lies at the heart of good estimation. Flyvbjerg (2006) distinguished three categories of reasons for inaccuracies in project forecasts:
Chapter
One of the reasons for failed estimates is an insufficient background of estimators in the area of software estimation. Arbitrary selection and the blind usage of estimation methods and tools often lead to disappointing outcomes, while the underlying reasons remain unclear. In discussions with corporate management, it is not uncommon to hear the ph...
Chapter
The COCOMO method represents a data-driven, model-based, parametric estimation method that implements a fixed-model approach. In other words, COCOMO provides a fixed estimation model that has been built on multi organizational project data using statistical regression, which represents a data-driven, parametric method.
Chapter
Bayesian Belief Networks (BBN) is a hybrid estimation method. It represents a model-based, parametric estimation method that implements a define-your-own-model approach. Actually, for the purpose of software effort estimation, the method adapts the concept of Bayesian Networks, which has been evolving for many years in probability theory. The appro...
Chapter
A number of effort estimation methods have been developed over the recent decades. The key question software practitioners ask is “Which method is the best one for me?” The bad news is that there is no “best” estimation method. The good news is that there are many useful estimation methods; yet, in order to be useful, an estimation method must be s...
Chapter
Wideband Delphi represents expert-based estimation with a structured group consensus approach. Unlike most of the known effort estimation methods, it does not actually require a detailed description of the problem being estimated—that is, the scope of the project to be estimated. Determination of the exact project work items as well as their breakd...
Chapter
Mistaken is he who hopes that a new effort estimation will work right from the outset. Effort estimation, as with any other technology, needs to be introduced gradually into an organization and requires continuous improvement. A “Big Bang” approach to deploying new technology typically ends up with a big disappointment. Changing multiple internal p...
Book
Full-text available
In today’s competitive markets organizational survival and growth requires effective means of aligning the large variety of organizational goals and strategies to achieve business objectives. Effective alignment helps all parts of the organization move in the same direction. It promises numerous benefits such as the effective use of resources and r...
Article
Full-text available
Managing quality (such as service availability or process adherence) during the development, operation, and maintenance of software(-intensive) systems and services is a challenging task. Although many organizations need to define, control, measure, and improve various quality aspects of their devel- opment artifacts and processes, nearly no guidan...
Chapter
Full-text available
This chapter gives some insights into typical industrial challenges addressed by GQM+Strategies and highlights some industrial real-life applications of the approach. First, we will focus on typical usage scenarios and real-life challenges addressed by the different domains where the approach has actually been applied. After that, we will take a cl...
Chapter
Full-text available
Measurement provides many benefits to organizations of all types. However, measurement confined to the project level is limited in its ability to provide benefits throughout the organization. Measurement has always been used to help organizations assess and monitor various aspects of their operations and aid executives in strategic decision-making.
Chapter
Full-text available
In this phase, we modify the GQM+Strategies grid in order to close the gaps identified in the previous phase. This includes performing the necessary changes to the plans to modify the goals, for example, magnitude or time frame, revising the strategies and modifying any data collection or analysis procedures. If we were successful in achieving our...
Chapter
Full-text available
In this phase, the plans we prepared in the “Plan Grid Implementation” phase are executed, i.e., project strategies are implemented according to strategy plans and the measurement data are collected according to the measurement plans. Table 7.1 summarizes the objectives, inputs, basic activities, and outcomes of this phase.
Chapter
Full-text available
In this phase, we ensure the conditions for the successful application of GQM+Strategies by securing the commitment and resources for using the method. Furthermore, responsibilities are defined and training is provided for all people involved. Table 3.1 summarizes the objectives, inputs, basic activities, and outcomes of this phase. In the followin...
Chapter
Full-text available
In this phase, we derive the GQM+Strategies Grid. In particular, we specify and align organizational goals and strategies within the GQM+Strategies scope, and we quantify goals using GQM graphs. Table 5.1 summarizes the objectives, inputs, basic activities, and outcomes of this phase. In the following sections, we will describe the individual activ...
Chapter
Full-text available
In this phase, we operationalize the GQM+Strategies grid by preparing plans for implementing and deploying strategies (Strategy Plans for short) and for measuring the impact of the strategies on the attainment of organizational goals (Measurement Plans for short). Strategy plans refer to the setup of a couple of strategic projects in the organizati...
Chapter
Full-text available
In this phase, we characterize the context of the GQM+Strategies application by defining the organizational scope of the method’s application and specifying the characteristics of the application environment. The environmental characteristics encompass actual and uncertain attributes of the method application environment that determine the applicab...
Chapter
Full-text available
This chapter introduces the GQM+Strategies approach for aligning organizational goals and strategies through measurement. We first explain the basic idea of combining alignment and measurement within GQM+Strategies, which provides an integrated method for explicitly defining organizational goals and controls for the execution of those plans. Next,...
Chapter
Full-text available
During several applications of GQM+Strategies at different organizations, questions were often raised about the relationship between GQM+Strategies and other methods and frameworks. Therefore, in this section, we will discuss the most important methods and frameworks from different domains that are related to GQM+Strategies. We will address relatio...
Chapter
Full-text available
When we leave the “execute plans” phase, we proceed in one of the following states:
Chapter
Cost estimation, benchmarking, and risk assessment (CoBRA) method is a hybrid effort estimation method. It represents a model-based, parametric estimation method that implements a define-your-own-model approach. Briand et al. (1998) developed it specifically for the purpose of software effort estimation, and it considers the most relevant constrain...
Article
Classification and Regression Trees (CART) represents a data-driven, model-based, nonparametric estimation method that implements the define-your-own-model approach. In other words, CART is a method that provides mechanisms for building a custom-specific, nonparametric estimation model based solely on the analysis of measurement project data, calle...
Chapter
Case-based reasoning represents a memory-based, data-driven estimation method. In other words, it is an estimation method in which estimates are based solely on the analysis of quantitative project data and in which the data need to be available at the time of estimation.
Chapter
In this chapter, we provide a brief overview of the existing software effort estimation methods. First, we identify common characteristics of existing methods and propose a schema for their classification. In the following sections, we provide a brief characterization of each class of methods and provide examples of typical methods belonging to a p...
Chapter
Planning Poker represents expert-based estimation with a structured group consensus approach. The method originates from agile software development where it was created in order to provide a lightweight approach for estimating software development interactions and planning the scope of software releases. Unlike other alternative expert-based method...
Chapter
In this chapter, we briefly introduce effort estimation based on statistical regression analysis. Regression analysis represents a data-driven, model-based, parametric estimation method that implements the define-your-own-model approach. In other words, in this approach an effort estimation model is created “from scratch” using quantitative project...
Article
Full-text available
Explicitly linking software-related activities to an organisation's higher-level goals has been shown to be critical for organizational success. GQM+Strategies provides mechanisms for explicitly linking goals and strategies, based on goal-oriented strategic measurement systems. Deploying such strategic measurement systems in an organization is high...
Chapter
This chapter summarizes the CoBRA application in the context of Oki Electric Industry, Ltd., Japan (Oki). In this chapter, we will show how to adapt the baseline CoBRA model development process to the needs and constraints of a particular organization in the management and information systems domain. Moreover, we report on experience regarding the...
Chapter
This chapter summarizes the CoBRA application in the context of Japan Manned Space Systems Corporation, Japan (JAMSS). In this chapter, we will show how to adapt the baseline CoBRA model development process to the specific context of independent verification and validation (IV&V), which is different from the kind of software development to which Co...
Chapter
The Cost Estimation, Benchmarking, and Risk Assessment (CoBRA) method combines multiple prediction approaches in that it aggregates techniques representing expert-based and data-driven estimation paradigms, within one hybrid estimation method. This chapter introduces the basic idea and terminology of the CoBRA method. Moreover, this chapter specifi...
Chapter
This chapter summarizes the CoBRA application in the context of Allette Systems Pty. Ltd., Australia (Allette). In the context of Allette, we developed a very simple effort model. Based on the experiences from the previous applications and the small size of the Allette company, we aimed at building a simple effort model. In particular, we avoided m...
Chapter
Software is everywhere. Most of today’s goods and services are realized, at least in part, either by means of or with the help of software systems. Our dependency on software is increasing continuously. On the one hand, progress in the domains where software has traditionally been playing a key role entails increasing pressure upon software to prog...
Chapter
After developing a new or modifying an existing CoBRA effort model, we can directly use it for estimating the effort of individual software projects. Applying the CoBRA model for estimation involves several simple activities.
Chapter
The basic question of software effort estimation is “What is a good estimate?” Traditionally, effort estimation has been used for planning and tracking overall resources, such as manpower, required for completing a project. With this objective in mind, over the years, researchers have been pursuing an elusive target of getting a 100 % accurate esti...
Chapter
This chapter summarizes the application of the CoBRA method in the context of software design & management AG, Germany (sd&m). In the sd&m case, we considered multiple indirect influences on project effort, which resulted in a relatively complex effort overhead model. In the subsequent industrial applications, we walked away from modeling multiple...
Chapter
The CoBRA method has been designed to provide a project decision maker with comprehensive support regarding estimating, controlling, and managing project effort. The CoBRA model can be used for a number of software estimation purposes.
Chapter
The CoBRA method represents a model-based approach to software effort estimation. In this approach, before we can predict the effort for a new project, we need to first build an effort estimation model. In general, the effort model reflects past experiences regarding effort relationships in similar situations, that is, within projects of a similar...
Chapter
A number of effort estimation methods have been proposed in recent decades. Still, no “silver-bullet” method has been proposed so far. Each and every estimation method has its strengths and limitations, and its goodness largely depends on the context in which it is applied.
Chapter
This chapter summarizes the CoBRA application in the context of Siemens Information Systems, Ltd, India (SISL). In this chapter, we will present how to adapt the baseline CoBRA model development process to the needs and constraints of a particular organization in the embedded software systems domain. Moreover, we report on experience regarding the...
Article
Published software quality models either provide abstract quality attributes or concrete quality assessments. There are no models that seamlessly integrate both aspects. In the project Quamoco, we built a comprehensive approach with the aim to close this gap. For this, we developed in several iterations a meta quality model specifying general conce...
Conference Paper
Full-text available
Companies increasingly recognize that software and IT play a significant role for their current and future business strategies. Therefore, it is important to align IT/software-related strategies with the business goals across the organization. Currently, little experience exists regarding how to effectively create this missing business-IT link. For...
Conference Paper
Full-text available
Effort estimation is a key factor for software project success, defined as delivering software of agreed quality and functionality within schedule and budget. Traditionally, effort estimation has been used for planning and tracking project resources. Effort estimation methods founded on those goals typically focus on providing exact estimates and u...
Conference Paper
Full-text available
Reliable predictions are essential for managing software projects with respect to cost and quality. Several studies have shown that hybrid prediction models combining causal models with Monte Carlo simulation are especially successful in addressing the needs and constraints of today's software industry: They deal with limited measurement data and,...
Conference Paper
Full-text available
Explicitly linking software-related activities to an organization’s higher-level goals has been shown to be critical for organizational success. GQM+Strategies1 provides mechanisms for explicitly linking goals and strategies, based on goal-oriented strategic measurement systems. Deploying such strategic measurement systems in an organization is hig...
Article
Full-text available
Most of today’s products and services are software-based. Organizations that develop software want to maintain and improve their competitiveness by controlling software-related risks. To do this, they need to align their business goals with software development strategies and translate them into quantitative project management. There is also an inc...
Article
Full-text available
Objectively measuring and evaluating software quality has become a fundamental task. Many models support software product quality stakeholders in dealing with software quality. In this contribution, we present an approach for adapting software quality models and the challenges that emerge in this regard. We propose an adaptation process based on th...
Conference Paper
Full-text available
The ability to develop or evolve software or software-based systems/services with defined and guaranteed quality in a predictable way is becoming increasingly im-portant. Essential -though not exclusive -prerequisites for this are the ability to model the relevant quality properties appropriately and the capability to perform reliable quality evalu...
Article
Full-text available
Managing product quality during the development, operation, and maintenance of software-intensive systems is a challenging task. Although many organizations use quality models to define, control, measure, or improve different quality aspects of their development artifacts, only very little guidance is available on how to assess the maturity of an o...
Article
Full-text available
Managing software development productivity is a key issue in software organizations. Business demands for shorter time‐to‐market while maintaining high product quality force software organizations to look for new strategies to increase development productivity.Traditional, simple delivery rates employed to control hardware production processes have...
Article
Full-text available
Managing product quality during the development, operation, and maintenance of software-intensive systems is a challenging task. Although many organizations have already identified various quality aspects they need to measure, control, and improve, a standard process for quality evaluation is still missing. The quality models and quality evaluation...
Conference Paper
Full-text available
Explicitly linking software-related activities to an organization’ s higher-level goals has been shown to be critical for several purposes such as aligning activities to strategies or linking budgets to strategic objectives. GQM+Strategies® provides mechanisms for explicitly linking goals and strategies in an organization based on goal-oriented mea...
Conference Paper
Full-text available
Managing quality during the development, operation, and maintenance of software(-intensive) systems and services is a challenging task. Although many organizations need to define, control, measure, and improve various quality aspects of their development artifacts and processes, nearly no guidance is available on how to select, adapt, define, combi...
Article
Keywords: Well-designed quality models are the prerequisite for effective quality management in the software engineering domain. However, a unified approach to software quality modeling is still largely missing. Quality models employed in software engineering differ widely dependent on the context in which they have been created. A first step towar...
Conference Paper
Full-text available
Objectively measuring and evaluating software quality has become a fundamental task. Many models support software product quality stakeholders in dealing with software quality. In this contribution, we present an approach for adapting software quality models and the challenges that emerge in this re-gard. We propose an adaptation process based on t...