Software maintenance research that is empirically valid and useful in practice

Size: px
Start display at page:

Download "Software maintenance research that is empirically valid and useful in practice"

Transcription

1 DE GRUYTER OLDENBOURG it Information Technology 2016; 58(3): Self-Portrayals of GI Junior Fellows Elmar Juergens* Software maintenance research that is empirically valid and useful in practice DOI /itit Received February 29, 2016; accepted March 5, 2016 Abstract: For successful software system, maintenance efforts dominate initial development costs by far. However, research and practice still place most of the attention on the initial development phase. In consequence, companies suffer mission-critical systems that are extremely hard to maintain. To better support practitioners in writing maintainable software, we both need an empirically sound understanding of software properties that help or hinder maintenance and tools that are useful in practice. This requires work that includes both research and practitioner perspectives. In this article, I outline my work towards this goal. Keywords: Software maintenance, software evolution, static analysis, empirical software engineering. ACM CCS: Software and its engineering Software notations and tools Software maintenance tools 1 Introduction Successful software is used for decades. This especially holds for business critical software that is fundamental to the operation of companies. Since requirements and infrastructure change over time, decades of use really mean decades of continuous adaptation and extension of the underlying source code. To support this, software should be built in a way that makes long-term adaptation and extension easy. Unfortunately, most software systems in practice are not built this way. One pattern that emerged quickly in our research group s interactions with industry was that most teams push their software to or beyond their team s limits. At some point, we began to jokingly understand state- ments like our system is very complex as our software has become utterly unmaintainable. Ironically, this turned out to be true more often than not. The source code of these systems is disproportionally expensive and error-prone to maintain. The observation that software maintenance can cause code to decay is not new. For example, Parnas [1]observed this in 1994, Eick et al. [2] in To counteract code decay, properties that influence software maintenance must be measured and acted upon on a continuous basis. This requires a thorough understanding of the relevant properties and suitable tools for their inspection. Unfortunately, we lack both. While there is a substantial body of research on software maintenance, including code metrics, a lot of it commits the fallacy of focusing on what is easy rather than relevant to measure. The software maintainability index [3], forexample,iscomputedasdepictedinfigure1.theproblem with such measures is that they lack a strong relationship to maintenance activities. Changing software such that this index improves (at least in many cases) thus does not make maintenance activities easier. In consequence, many of the proposed metrics are useless in practice. Most teams thus do not have effective measures to spot maintenance issues early, when they are still cheap to repair. The goal of my research is to help practitioners build more maintainable software. Figure 1: Computation of the maintainability index. *Corresponding author: Elmar Juergens, CQSE GmbH, D Garching near Munich, Germany; and TU München, D Garching near Munich, Germany, juergens@cqse.eu

2 146 E. Juergens, Improving real-world software maintenance DE GRUYTER OLDENBOURG 2 Approach I am convinced that work towards this goal must combine perspectives from both research and practice. My work thus spans both fields. On the research side, I am interested in empirical analyses that further our understanding about which properties of software are meaningful to measure and worthwhile to improve to make software more maintainable. Meaningful measures are necessary, but not sufficient to create impact. On the side of industrial practice, my goal is thus to understand the further requirements to facilitate impact. Finally, I want to further exchange between research and practice in this area. 2.1 Meaningful analyses My research goal is to further our empirical knowledge about which properties of software are really harmful for software maintenance and thus deserve special attention during development. I want to illustrate this using code duplication as an example. Programming languages allow the creation of reusable abstractions. This allows functionality that is required multiple times to be implemented in a single place only. Advances in programming language development (e.g. generics, closures, mixins) often aim to make it easier to create such reusable abstractions. Surprisingly, however, copy & paste is still the most widely used reuse mechanism in practice. Even in systems written in modern programming languages. Figure 2 displays a duplicated code fragment from a Java open-source system. Code duplication can have negative consequences for software maintenance, since changes must be performed in multiple instead of one location, thus increasing effort. In large systems, individual instances of code duplication can easily be overlooked. The inconsistencies resulting from incomplete changes can cause bugs. But how relevant is this problem in practice? Copy & paste is often conceptually simpler than creating a reusable abstraction. If maintenance problems rarely arise, could copy & paste not be a viable development style? To quantify the impact of code cloning on software evolution, I performed an empirical study [4]. For this, I searched industrial software projects for code duplication with slight differences between the individual copies, such as in Figure 2. I then sat down with the developers of the system and inspected the clones to determine if the differences were intentional and, if not, if they represented abug. In the five systems we analyzed, we found more than 100 bugs, including critical ones that could crash the program or lead to loss of data. This surprised us, since all of thesystemwereinproductionatthetimeofanalysis. More importantly, we learned that roughly every second time a difference was unintentional, it represented a bug. This observation held independently of programming language (we studied systems in Java, C# and COBOL), size and age (between 2 and 17 years). In this study, I personally learned how important the involvement of industrial software and developer experience is for the field of software maintenance research, probably more important than in computer science areas that are easier to formalize. I have thus hence made it the foundation of my research. We have since extended our work on clone detection from source code to models [5, 6] and requirements [7]. Furthermore, we studied other aspects such as software architecture evolution [8] and source code comments [9]. Figure 2: Duplicated code in a Java open-source system.

3 DE GRUYTER OLDENBOURG E. Juergens, Improving real-world software maintenance Impact in practice The goal of my work in practice is to help research results achieve impact on how practitioners maintain software. Meaningful analyses are necessary, but not sufficient to achieve this. I would like to illustrate this again using code duplication as an example. To give a better impression on how it feels to maintain a system that contains a substantial amount of duplication, I use a so called SeeSoft visualization [10]. SeeSoft visualizations simply zoom out to fit more source code into a figure, as depicted in Figure 3. Each character is represented using a single pixel. Layout and syntax highlighting are preserved. This allows us to cram about 5000 lines of code into a single diagram. Figure 4 depicts code from a business information system written in C# that was 3yearsold at the time of analysis. I use the dimension of color to depict code duplication. All code fragments that are copies of each other (modulo small differences in whitespace, comments or names) are depicted in the same color. (The colors themselves are chosen randomly). The result is displayed in Figure 5. In this system, clones abound. This is no exception. It is common for a clone detection tool to discover tens of thousands of individual copies in a typical industrial system. Much to our surprise, the typical initial reaction of a developer to this list of findings was to uninstall our clone detection tool. Why? Because while meaningful in principle, the first generation of clone detection tools was perceived as mostly useless in practice, since it did not fit Figure 3: Seesoft-visualization with one pixel per character of code. Figure 4: Seesoft-visualization of a part of a code base. Figure 5: Seesoft-visualization of a part of a code base, depicting all code duplication in it.

4 148 E. Juergens, Improving real-world software maintenance DE GRUYTER OLDENBOURG well enough into existing development processes. Developers expected immediate relevant feedback to their own work. Instead, they received false-positive-ridden overnight feedback to the whole system. These insights from practitioners caused us to rethink our clone detection research. For example, we changed our detection algorithms to work incrementally [11, 12] to provide quicker feedback, we analyzed clone evolution and tracking to create robust filter and blacklisting capabilities, we developed classifiers to differentiate between classes of clones based on how easily they can be removed [13] and so on. It also showed me how important the practitioner perspective is to have impact in this field and motivated me to co-found a company, the CQSE GmbH, dedicated to helping development teams build better software. At the time of writing, CQSE employs 20 computer scientists, 11 with a PhD in computer science. 2.3 Exchange between research and practice My goal as a Junior Fellow is to increase the dialog between research and practice. To transfer research insights, I frequently speak on industry conferences, such as OOP, W-JAX, JAX, Clean Code Days, SEACON, Software Quality Days, Teamconf, BASTA and others. My central motivation here is to convey both positive and negative results to make practitioners aware of the fact that a substantial body of research exists, from which they could draw. To transfer industry reality, I hold guest lectures for students or give talks at universities, such as TU Munich, TU Braunschweig or University of Passau. Please feel free to contact me, if you think that my perspective on research and practice could be useful in your context. Finally, our company has implemented a industrialstrength analysis tool suite, called Teamscale, that is used by many companies. We provide it for free for research and teaching. 3Conclusion Software permeates our lives. The more successful a software system, the longer it has to be maintained. For this, software must be written in a way that allows easy maintenance. This is often not the case. To alleviate this, we need both a sound empirical understanding of the properties of software that really matter for maintenance and tools that fulfill practitioner s requirements to be actually useful in practice. I am convinced that we must close the gap between research and practice in this area to succeed. References 1. D. L. Parnas. Software aging. In Proceedings of the 16th international conference on Software engineering (pp ). IEEE Computer Society Press, May S. G. Eick T. L. Graves, A. F. Karr, J. S. Marron, A. Mockus. Does code decay? assessing the evidence from change management data. IEEE Transactions on Software Engineering, 27(1), 1 12, P. Oman, J. Hagemeister. Metrics for assessing a software system s maintainability. In Proceedings of IEEE Conference on Software Maintenance (pp ). November E. Juergens, F. Deissenboeck, B. Hummel, S. Wagner. Do code clones matter?. In Proceedings of the 31st International Conference on Software Engineering (pp ). IEEE Computer Society, May F. Deissenboeck, B. Hummel, E. Juergens, B. Schaetz, S. Wagner, J. F. Girard, S. Teuchert. Clone detection in automotive model-based development. In Proceedings of the 30th international conference on Software engineering (pp ), May B. Hummel, E. Juergens, D. Steidl. Index-based model clone detection. In Proceedings of the 5th International Workshop on Software Clones (pp ), May E. Juergens, F. Deissenboeck, M. Feilkas, B. Hummel, B. Schaetz, S. Wagner, C. Dohmann, J. Streit. Can clone detection support quality assessments of requirements specifications?. In Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering, Volume 2 (pp ), May M. Feilkas, D. Ratiu, E. Juergens. The loss of architectural knowledge during system evolution: An industrial case study. In Proceedings of the 17th IEEE International conference on Program Comprehension (pp ), May D. Steidl, B. Hummel, E. Juergens. Using network analysis for recommendation of central software classes. In Proceedings of the 19th IEEE Working Conference on Reverse Engineering (pp ), October S. G. Eick, J. L. Steffen, E. E. Sumner Jr. Seesoft-A tool for visualizing line oriented software statistics. IEEE Transactions on Software Engineering, 18(11), , B. Hummel, E. Juergens, L. Heinemann, M. Conradt. Indexbased code clone detection: incremental, distributed, scalable. In Proceedings of the IEEE International Conference on Software Maintenance (pp. 1 9), September V. Bauer, L. Heinemann, B. Hummel, E. Juergens, M. Conradt. A framework for incremental quality analysis of large software systems. In Proceedings of the IEEE International Conference on Software Maintenance (pp ), September D. Steidl, S. Eder. Prioritizing maintainability defects based on refactoring recommendations. In Proceedings of the 22nd International Conference on Program Comprehension (pp ), June 2014.

5 DE GRUYTER OLDENBOURG E. Juergens, Improving real-world software maintenance 149 Bionotes Dr. Elmar Juergens CQSE GmbH and TU München, D Garching near Munich, Germany Dr. Elmar Juergens is co-founder of CQSE GmbH and post-doctoral researcher at the Institute for Informatics at the Technical University of Munich. His PhD thesis on clone detection received the Software Engineering Award of the Ernst-Denert-Stiftung. In 2015 he received a juniorfellowship of the Gesellschaft für Informatik.

Reverse Engineering A Roadmap

Reverse Engineering A Roadmap Reverse Engineering A Roadmap Hausi A. MŸller Jens Jahnke Dennis Smith Peggy Storey Scott Tilley Kenny Wong ICSE 2000 FoSE Track Limerick, Ireland, June 7, 2000 1 Outline n Brief history n Code reverse

More information

with permission from World Scientific Publishing Co. Pte. Ltd.

with permission from World Scientific Publishing Co. Pte. Ltd. The CoCoME Platform: A Research Note on Empirical Studies in Information System Evolution, Robert Heinrich, Stefan Gärtner, Tom-Michael Hesse, Thomas Ruhroth, Ralf Reussner, Kurt Schneider, Barbara Paech

More information

Course Introduction and Overview of Software Engineering. Richard N. Taylor Informatics 211 Fall 2007

Course Introduction and Overview of Software Engineering. Richard N. Taylor Informatics 211 Fall 2007 Course Introduction and Overview of Software Engineering Richard N. Taylor Informatics 211 Fall 2007 Software Engineering A discipline that deals with the building of software systems which are so large

More information

Telehealth and Digital Technology. Libbe Englander, PhD

Telehealth and Digital Technology. Libbe Englander, PhD Page 1 of 5 Telehealth and Digital Technology Libbe Englander, PhD Editor s note: This is the first in a series of articles by Dr. Englander that will discuss different elements of the value chain where

More information

Introduction to adoption of lean canvas in software test architecture design

Introduction to adoption of lean canvas in software test architecture design Introduction to adoption of lean canvas in software test architecture design Padmaraj Nidagundi 1, Margarita Lukjanska 2 1 Riga Technical University, Kaļķu iela 1, Riga, Latvia. 2 Politecnico di Milano,

More information

HELPING THE DESIGN OF MIXED SYSTEMS

HELPING THE DESIGN OF MIXED SYSTEMS HELPING THE DESIGN OF MIXED SYSTEMS Céline Coutrix Grenoble Informatics Laboratory (LIG) University of Grenoble 1, France Abstract Several interaction paradigms are considered in pervasive computing environments.

More information

THE CONSTRUCTION- AND FACILITIES MANAGEMENT PROCESS FROM AN END USERS PERSPECTIVE - ProFacil

THE CONSTRUCTION- AND FACILITIES MANAGEMENT PROCESS FROM AN END USERS PERSPECTIVE - ProFacil CEC 99 Björk, Bo-Christer, Nilsson, Anders, Lundgren, Berndt Page of 9 THE CONSTRUCTION- AND FACILITIES MANAGEMENT PROCESS FROM AN END USERS PERSPECTIVE - ProFacil Björk, Bo-Christer, Nilsson, Anders,

More information

A FORMAL METHOD FOR MAPPING SOFTWARE ENGINEERING PRACTICES TO ESSENCE

A FORMAL METHOD FOR MAPPING SOFTWARE ENGINEERING PRACTICES TO ESSENCE A FORMAL METHOD FOR MAPPING SOFTWARE ENGINEERING PRACTICES TO ESSENCE Murat Pasa Uysal Department of Management Information Systems, Başkent University, Ankara, Turkey ABSTRACT Essence Framework (EF) aims

More information

Challenges in Software Evolution

Challenges in Software Evolution Challenges in Software Evolution Tom Mens http://w3.umh.ac.be/genlog Software Engineering Lab University of Mons-Hainaut Belgium Challenges in Software Evolution The presented results are the outcome of

More information

Science and mathematics

Science and mathematics Accreditation of HE Programmes (AHEP): Collated learning outcomes for six areas of learning Programmes accredited for IEng Engineering is underpinned by science and mathematics, and other associated disciplines,

More information

Towards an MDA-based development methodology 1

Towards an MDA-based development methodology 1 Towards an MDA-based development methodology 1 Anastasius Gavras 1, Mariano Belaunde 2, Luís Ferreira Pires 3, João Paulo A. Almeida 3 1 Eurescom GmbH, 2 France Télécom R&D, 3 University of Twente 1 gavras@eurescom.de,

More information

Where does architecture end and technology begin? Rami Razouk The Aerospace Corporation

Where does architecture end and technology begin? Rami Razouk The Aerospace Corporation Introduction Where does architecture end and technology begin? Rami Razouk The Aerospace Corporation Over the last several years, the software architecture community has reached significant consensus about

More information

Requirements Quality Defect Detection with the Qualicen Requirements Scout

Requirements Quality Defect Detection with the Qualicen Requirements Scout Requirements Quality Defect Detection with the Qualicen Requirements Scout Henning Femmer Technical University Munich and Qualicen GmbH Munich, Germany henning.femmer@qualicen.de 1 A Brief Team History

More information

Software Testing for Developer Introduction. Duvan Luong, Ph.D. Operational Excellence Networks

Software Testing for Developer Introduction. Duvan Luong, Ph.D. Operational Excellence Networks Software for Developer Introduction Duvan Luong, Ph.D. Operational Excellence Networks Contents Expectations for the class The software development model The reality of software defects The purpose of

More information

Evidence Engineering. Audris Mockus University of Tennessee and Avaya Labs Research [ ]

Evidence Engineering. Audris Mockus University of Tennessee and Avaya Labs Research [ ] Evidence Engineering Audris Mockus University of Tennessee and Avaya Labs Research audris@{utk.edu,avaya.com} [2015-02-20] How we got here: selected memories 70 s giant systems Thousands of people, single

More information

The Tool Box of the System Architect

The Tool Box of the System Architect - number of details 10 9 10 6 10 3 10 0 10 3 10 6 10 9 enterprise context enterprise stakeholders systems multi-disciplinary design parts, connections, lines of code human overview tools to manage large

More information

Evolution in Free and Open Source Software: A Study of Multiple Repositories

Evolution in Free and Open Source Software: A Study of Multiple Repositories Evolution in Free and Open Source Software: A Study of Multiple Repositories Karl Beecher, University of Lincoln, UK Freie Universität Berlin Germany 25 September 2009 Outline Brief Introduction to FOSS

More information

Detection and Analysis of Near-Miss Clone Genealogies

Detection and Analysis of Near-Miss Clone Genealogies Detection and Analysis of Near-Miss Clone Genealogies A Thesis Submitted to the College of Graduate Studies and Research in Partial Fulfillment of the Requirements for the degree of Master of Science in

More information

Grundlagen des Software Engineering Fundamentals of Software Engineering

Grundlagen des Software Engineering Fundamentals of Software Engineering Software Engineering Research Group: Processes and Measurement Fachbereich Informatik TU Kaiserslautern Grundlagen des Software Engineering Fundamentals of Software Engineering Winter Term 2011/12 Prof.

More information

AN AUTONOMOUS SIMULATION BASED SYSTEM FOR ROBOTIC SERVICES IN PARTIALLY KNOWN ENVIRONMENTS

AN AUTONOMOUS SIMULATION BASED SYSTEM FOR ROBOTIC SERVICES IN PARTIALLY KNOWN ENVIRONMENTS AN AUTONOMOUS SIMULATION BASED SYSTEM FOR ROBOTIC SERVICES IN PARTIALLY KNOWN ENVIRONMENTS Eva Cipi, PhD in Computer Engineering University of Vlora, Albania Abstract This paper is focused on presenting

More information

About Software Engineering.

About Software Engineering. About Software Engineering pierre-alain.muller@uha.fr What is Software Engineering? Software Engineering Software development Engineering Let s s have a look at ICSE International Conference on Software

More information

Code Complete 2: A Decade of Advances in Software Construction Construx Software Builders, Inc. All Rights Reserved.

Code Complete 2: A Decade of Advances in Software Construction Construx Software Builders, Inc. All Rights Reserved. Code Complete 2: A Decade of Advances in Software Construction www.construx.com 2004 Construx Software Builders, Inc. All Rights Reserved. Construx Delivering Software Project Success Introduction History

More information

Designing Semantic Virtual Reality Applications

Designing Semantic Virtual Reality Applications Designing Semantic Virtual Reality Applications F. Kleinermann, O. De Troyer, H. Mansouri, R. Romero, B. Pellens, W. Bille WISE Research group, Vrije Universiteit Brussel, Pleinlaan 2, 1050 Brussels, Belgium

More information

STUDY ON FIREWALL APPROACH FOR THE REGRESSION TESTING OF OBJECT-ORIENTED SOFTWARE

STUDY ON FIREWALL APPROACH FOR THE REGRESSION TESTING OF OBJECT-ORIENTED SOFTWARE STUDY ON FIREWALL APPROACH FOR THE REGRESSION TESTING OF OBJECT-ORIENTED SOFTWARE TAWDE SANTOSH SAHEBRAO DEPT. OF COMPUTER SCIENCE CMJ UNIVERSITY, SHILLONG, MEGHALAYA ABSTRACT Adherence to a defined process

More information

Understanding the Evolution of Code Clones in Software Systems

Understanding the Evolution of Code Clones in Software Systems Understanding the Evolution of Code Clones in Software Systems A Thesis Submitted to the College of Graduate Studies and Research in Partial Fulfillment of the Requirements for the degree of Master of

More information

R3ST for Requirements Recovery of Legacy Runtime Code

R3ST for Requirements Recovery of Legacy Runtime Code R3ST for Requirements Recovery of Legacy Runtime Code Eko K. Budiardjo, Elviawaty M. Zamzami, and Wahyudianto, Member, IACSIT Abstract In reality, we often find that proven and workable software, exist

More information

Towards a Software Engineering Research Framework: Extending Design Science Research

Towards a Software Engineering Research Framework: Extending Design Science Research Towards a Software Engineering Research Framework: Extending Design Science Research Murat Pasa Uysal 1 1Department of Management Information Systems, Ufuk University, Ankara, Turkey ---------------------------------------------------------------------***---------------------------------------------------------------------

More information

HOUSING WELL- BEING. An introduction. By Moritz Fedkenheuer & Bernd Wegener

HOUSING WELL- BEING. An introduction. By Moritz Fedkenheuer & Bernd Wegener HOUSING WELL- BEING An introduction Over the decades, architects, scientists and engineers have developed ever more refined criteria on how to achieve optimum conditions for well-being in buildings. Hardly

More information

The role of cooperative cyclic knowledge gain in IS anti-aging

The role of cooperative cyclic knowledge gain in IS anti-aging Alfred Holl The role of cooperative cyclic knowledge gain in IS anti-aging 1. IS modification as process of cooperative cyclic knowledge gain 1.1 Cooperative knowledge gain: multi-perspectivity of IS experts

More information

GLAMURS Green Lifestyles, Alternative Models and Upscaling Regional Sustainability. Case Study Exchange

GLAMURS Green Lifestyles, Alternative Models and Upscaling Regional Sustainability. Case Study Exchange Acta Univ. Sapientiae, Social Analysis, 5, 1 (2015) 113 118 GLAMURS Green Lifestyles, Alternative Models and Upscaling Regional Sustainability. Case Study Exchange Adela FOFIU Babeş Bolyai University,

More information

Towards Understanding Software Evolution: One-Line Changes

Towards Understanding Software Evolution: One-Line Changes Towards Understanding Software Evolution: One-Line Changes Ranjith Purushothaman Server Operating Systems Group Dell Computer Corporation Round Rock, Texas 78682 ranjith_purush@dell.com Dewayne E. Perry

More information

GOALS TO ASPECTS: DISCOVERING ASPECTS ORIENTED REQUIREMENTS

GOALS TO ASPECTS: DISCOVERING ASPECTS ORIENTED REQUIREMENTS GOALS TO ASPECTS: DISCOVERING ASPECTS ORIENTED REQUIREMENTS 1 A. SOUJANYA, 2 SIDDHARTHA GHOSH 1 M.Tech Student, Department of CSE, Keshav Memorial Institute of Technology(KMIT), Narayanaguda, Himayathnagar,

More information

An Un-awarely Collected Real World Face Database: The ISL-Door Face Database

An Un-awarely Collected Real World Face Database: The ISL-Door Face Database An Un-awarely Collected Real World Face Database: The ISL-Door Face Database Hazım Kemal Ekenel, Rainer Stiefelhagen Interactive Systems Labs (ISL), Universität Karlsruhe (TH), Am Fasanengarten 5, 76131

More information

A SERVICE-ORIENTED SYSTEM ARCHITECTURE FOR THE HUMAN CENTERED DESIGN OF INTELLIGENT TRANSPORTATION SYSTEMS

A SERVICE-ORIENTED SYSTEM ARCHITECTURE FOR THE HUMAN CENTERED DESIGN OF INTELLIGENT TRANSPORTATION SYSTEMS Tools and methodologies for ITS design and drivers awareness A SERVICE-ORIENTED SYSTEM ARCHITECTURE FOR THE HUMAN CENTERED DESIGN OF INTELLIGENT TRANSPORTATION SYSTEMS Jan Gačnik, Oliver Häger, Marco Hannibal

More information

Separation of Concerns in Software Engineering Education

Separation of Concerns in Software Engineering Education Separation of Concerns in Software Engineering Education Naji Habra Institut d Informatique University of Namur Rue Grandgagnage, 21 B-5000 Namur +32 81 72 4995 nha@info.fundp.ac.be ABSTRACT Separation

More information

Defining Process Performance Indicators by Using Templates and Patterns

Defining Process Performance Indicators by Using Templates and Patterns Defining Process Performance Indicators by Using Templates and Patterns Adela del Río Ortega, Manuel Resinas, Amador Durán, and Antonio Ruiz Cortés Universidad de Sevilla, Spain {adeladelrio,resinas,amador,aruiz}@us.es

More information

A three-component representation to capture and exchange architects design processes

A three-component representation to capture and exchange architects design processes CHUNKS, LINES AND STRATEGIES A three-component representation to capture and exchange architects design processes JONAS LINDEKENS Vrije Universiteit Brussel, Belgium and ANN HEYLIGHEN Katholieke Universiteit

More information

Industrial Applications and Challenges for Verifying Reactive Embedded Software. Tom Bienmüller, SC 2 Summer School, MPI Saarbrücken, August 2017

Industrial Applications and Challenges for Verifying Reactive Embedded Software. Tom Bienmüller, SC 2 Summer School, MPI Saarbrücken, August 2017 Industrial Applications and Challenges for Verifying Reactive Embedded Software Tom Bienmüller, SC 2 Summer School, MPI Saarbrücken, August 2017 Agenda 2 Who am I? Who is BTC Embedded Systems? Formal Methods

More information

Strategic Considerations when Introducing Model Based Systems Engineering

Strategic Considerations when Introducing Model Based Systems Engineering Copyright 2015 by Christoph Bräuchle, Manfred Broy, Dominik Rüchardt. Permission granted to INCOSE to publish and use Strategic Considerations when Introducing Model Based Systems Engineering Christoph

More information

Support of Design Reuse by Software Product Lines: Leveraging Commonality and Managing Variability

Support of Design Reuse by Software Product Lines: Leveraging Commonality and Managing Variability PI: Dr. Ravi Shankar Dr. Support of Design Reuse by Software Product Lines: Leveraging Commonality and Managing Variability Dr. Shihong Huang Computer Science & Engineering Florida Atlantic University

More information

Design and Implementation Options for Digital Library Systems

Design and Implementation Options for Digital Library Systems International Journal of Systems Science and Applied Mathematics 2017; 2(3): 70-74 http://www.sciencepublishinggroup.com/j/ijssam doi: 10.11648/j.ijssam.20170203.12 Design and Implementation Options for

More information

LEARNING FROM THE AVIATION INDUSTRY

LEARNING FROM THE AVIATION INDUSTRY DEVELOPMENT Power Electronics 26 AUTHORS Dipl.-Ing. (FH) Martin Heininger is Owner of Heicon, a Consultant Company in Schwendi near Ulm (Germany). Dipl.-Ing. (FH) Horst Hammerer is Managing Director of

More information

HUMAN COMPUTER INTERFACE

HUMAN COMPUTER INTERFACE HUMAN COMPUTER INTERFACE TARUNIM SHARMA Department of Computer Science Maharaja Surajmal Institute C-4, Janakpuri, New Delhi, India ABSTRACT-- The intention of this paper is to provide an overview on the

More information

acatech Industrie 4.0 Maturity Index Development of company-specific Industrie 4.0 roadmaps FIR e. V. an der RWTH Aachen

acatech Industrie 4.0 Maturity Index Development of company-specific Industrie 4.0 roadmaps FIR e. V. an der RWTH Aachen acatech Industrie 4.0 Maturity Index Development of company-specific Industrie 4.0 roadmaps The Maturity Index is developed by renowned partners from industry and research Project partners Industrie 4.0

More information

Human Interface/ Human Error

Human Interface/ Human Error Human Interface/ Human Error 18-849b Dependable Embedded Systems Charles P. Shelton February 25, 1999 Required Reading: Murphy, Niall; Safe Systems Through Better User Interfaces Supplemental Reading:

More information

From Observational Data to Information IG (OD2I IG) The OD2I Team

From Observational Data to Information IG (OD2I IG) The OD2I Team From Observational Data to Information IG (OD2I IG) The OD2I Team tinyurl.com/y74p56tb Tour de Table (time permitted) OD2I IG Primary data are interpreted for their meaning in determinate contexts Contexts

More information

Model-Based Development of Embedded Systems

Model-Based Development of Embedded Systems Bern, 2013-07-09 Model-Based Development of Embedded Systems Challenges in System Evolution 6th Seminar Series on Advanced Techniques & Tools for Software Evolution Bern, Switzerland Bernhard Schätz with

More information

Why Feature Dependencies Challenge the Requirements Engineering of Automotive Systems: An Empirical Study

Why Feature Dependencies Challenge the Requirements Engineering of Automotive Systems: An Empirical Study Why Feature Dependencies Challenge the Requirements Engineering of Automotive Systems: An Empirical Study arxiv:1708.08660v1 [cs.se] 29 Aug 2017 Andreas Vogelsang Institut für Informatik Technische Universität

More information

Kauffman Dissertation Executive Summary

Kauffman Dissertation Executive Summary Kauffman Dissertation Executive Summary Part of the Ewing Marion Kauffman Foundation s Emerging Scholars initiative, the Program recognizes exceptional doctoral students and their universities. The annual

More information

An empirical study on the influence of context in computing thresholds for Chidamber and Kemerer metrics

An empirical study on the influence of context in computing thresholds for Chidamber and Kemerer metrics An empirical study on the influence of context in computing thresholds for Chidamber and Kemerer metrics Leonardo C. Santos, Renata Saraiva, Mirko Perkusich, Hyggo O. Almeida and Angelo Perkusich Federal

More information

Current Challenges for Measuring Innovation, their Implications for Evidence-based Innovation Policy and the Opportunities of Big Data

Current Challenges for Measuring Innovation, their Implications for Evidence-based Innovation Policy and the Opportunities of Big Data Current Challenges for Measuring Innovation, their Implications for Evidence-based Innovation Policy and the Opportunities of Big Data Professor Dr. Knut Blind, Fraunhofer FOKUS & TU Berlin Impact of Research

More information

NCRIS Capability 5.7: Population Health and Clinical Data Linkage

NCRIS Capability 5.7: Population Health and Clinical Data Linkage NCRIS Capability 5.7: Population Health and Clinical Data Linkage National Collaborative Research Infrastructure Strategy Issues Paper July 2007 Issues Paper Version 1: Population Health and Clinical Data

More information

5 Daunting. Problems. Facing Ediscovery. Insights on ediscovery challenges in the legal technologies market

5 Daunting. Problems. Facing Ediscovery. Insights on ediscovery challenges in the legal technologies market 5 Daunting Problems Facing Ediscovery Insights on ediscovery challenges in the legal technologies market Introduction In the late 1990s, ediscovery was in its infancy as legal and IT professionals began

More information

An Empirical Study on the Fault-Proneness of Clone Migration in Clone Genealogies

An Empirical Study on the Fault-Proneness of Clone Migration in Clone Genealogies An Empirical Study on the Fault-Proneness of Clone Migration in Clone Genealogies Shuai Xie 1, Foutse Khomh 2, Ying Zou 1, Iman Keivanloo 1 1 Department of Electrical and Computer Engineering, Queen s

More information

NEES CYBERINFRASTRUCTURE: A FOUNDATION FOR INNOVATIVE RESEARCH AND EDUCATION

NEES CYBERINFRASTRUCTURE: A FOUNDATION FOR INNOVATIVE RESEARCH AND EDUCATION NEES CYBERINFRASTRUCTURE: A FOUNDATION FOR INNOVATIVE RESEARCH AND EDUCATION R. Eigenmann 1, T. Hacker 2 and E. Rathje 3 ABSTRACT This paper provides an overview of the vision and ongoing developments

More information

DOCTORAL THESIS (Summary)

DOCTORAL THESIS (Summary) LUCIAN BLAGA UNIVERSITY OF SIBIU Syed Usama Khalid Bukhari DOCTORAL THESIS (Summary) COMPUTER VISION APPLICATIONS IN INDUSTRIAL ENGINEERING PhD. Advisor: Rector Prof. Dr. Ing. Ioan BONDREA 1 Abstract Europe

More information

A Reconfigurable Citizen Observatory Platform for the Brussels Capital Region. by Jesse Zaman

A Reconfigurable Citizen Observatory Platform for the Brussels Capital Region. by Jesse Zaman 1 A Reconfigurable Citizen Observatory Platform for the Brussels Capital Region by Jesse Zaman 2 Key messages Today s citizen observatories are beyond the reach of most societal stakeholder groups. A generic

More information

Evaluation of Guidance Systems in Public Infrastructures Using Eye Tracking in an Immersive Virtual Environment

Evaluation of Guidance Systems in Public Infrastructures Using Eye Tracking in an Immersive Virtual Environment Evaluation of Guidance Systems in Public Infrastructures Using Eye Tracking in an Immersive Virtual Environment Helmut Schrom-Feiertag 1, Christoph Schinko 2, Volker Settgast 3, and Stefan Seer 1 1 Austrian

More information

Argumentative Interactions in Online Asynchronous Communication

Argumentative Interactions in Online Asynchronous Communication Argumentative Interactions in Online Asynchronous Communication Evelina De Nardis, University of Roma Tre, Doctoral School in Pedagogy and Social Service, Department of Educational Science evedenardis@yahoo.it

More information

Transferring knowledge from operations to the design and optimization of work systems: bridging the offshore/onshore gap

Transferring knowledge from operations to the design and optimization of work systems: bridging the offshore/onshore gap Transferring knowledge from operations to the design and optimization of work systems: bridging the offshore/onshore gap Carolina Conceição, Anna Rose Jensen, Ole Broberg DTU Management Engineering, Technical

More information

Globalizing Modeling Languages

Globalizing Modeling Languages Globalizing Modeling Languages Benoit Combemale, Julien Deantoni, Benoit Baudry, Robert B. France, Jean-Marc Jézéquel, Jeff Gray To cite this version: Benoit Combemale, Julien Deantoni, Benoit Baudry,

More information

Technische Universität München. TUM Computer Games Laboratory SS Prototyping. R. Westermann, N. Thuerey. Fakultät für Informatik

Technische Universität München. TUM Computer Games Laboratory SS Prototyping. R. Westermann, N. Thuerey. Fakultät für Informatik Technische Universität München TUM SS 2017 R. Westermann, N. Thuerey Fakultät für Informatik Recommended Reading: Chapter on 2 Why a prototype? Creating a game without a prototype is like shooting a movie

More information

openaal 1 - the open source middleware for ambient-assisted living (AAL)

openaal 1 - the open source middleware for ambient-assisted living (AAL) AALIANCE conference - Malaga, Spain - 11 and 12 March 2010 1 openaal 1 - the open source middleware for ambient-assisted living (AAL) Peter Wolf 1, *, Andreas Schmidt 1, *, Javier Parada Otte 1, Michael

More information

PREFACE. Introduction

PREFACE. Introduction PREFACE Introduction Preparation for, early detection of, and timely response to emerging infectious diseases and epidemic outbreaks are a key public health priority and are driving an emerging field of

More information

Software Maintenance Cycles with the RUP

Software Maintenance Cycles with the RUP Software Maintenance Cycles with the RUP by Philippe Kruchten Rational Fellow Rational Software Canada The Rational Unified Process (RUP ) has no concept of a "maintenance phase." Some people claim that

More information

Code Complete 2: Realities of Modern Software Construction

Code Complete 2: Realities of Modern Software Construction Code Complete 2: Realities of Modern Software Construction www.construx.com 2004-2005 2005 Construx Software Builders, Inc. All Rights Reserved. Construx Delivering Software Project Success R Really,Really

More information

Computer Science: Disciplines. What is Software Engineering and why does it matter? Software Disasters

Computer Science: Disciplines. What is Software Engineering and why does it matter? Software Disasters Computer Science: Disciplines What is Software Engineering and why does it matter? Computer Graphics Computer Networking and Security Parallel Computing Database Systems Artificial Intelligence Software

More information

Technology Transfer: An Integrated Culture-Friendly Approach

Technology Transfer: An Integrated Culture-Friendly Approach Technology Transfer: An Integrated Culture-Friendly Approach I.J. Bate, A. Burns, T.O. Jackson, T.P. Kelly, W. Lam, P. Tongue, J.A. McDermid, A.L. Powell, J.E. Smith, A.J. Vickers, A.J. Wellings, B.R.

More information

Industrial Use of Mixed Reality in VRVis Projects

Industrial Use of Mixed Reality in VRVis Projects Industrial Use of Mixed Reality in VRVis Projects Werner Purgathofer, Clemens Arth, Dieter Schmalstieg VRVis Zentrum für Virtual Reality und Visualisierung Forschungs-GmbH and TU Wien and TU Graz Some

More information

Issue Article Vol.30 No.2, April 1998 Article Issue

Issue Article Vol.30 No.2, April 1998 Article Issue Issue Article Vol.30 No.2, April 1998 Article Issue Tailorable Groupware Issues, Methods, and Architectures Report of a Workshop held at GROUP'97, Phoenix, AZ, 16th November 1997 Anders Mørch, Oliver Stiemerlieng,

More information

Software Evolution & Technical Debt

Software Evolution & Technical Debt Software Analysis And Transformation Software Evolution & Technical Debt December 12th 2012 Jurgen Vinju Software Evolution Lehman: software goes bad eventually Standish: maintenance is the cost of software

More information

Aarhat Multidisciplinary International Education Research Journal (AMIERJ) (Bi-Monthly) Peer-Reviewed Journal Impact factor:

Aarhat Multidisciplinary International Education Research Journal (AMIERJ) (Bi-Monthly) Peer-Reviewed Journal Impact factor: 2014 Page26 Aarhat Multidisciplinary International Education (Bi-Monthly) Peer-Reviewed Journal Impact factor: 0.948 Chief-Editor: Ubale Amol Baban 30/11/2014 Page27 A SURVEY OF TECHNIQUES IN MINING SOFTWARE

More information

The Collaborative Digital Process Methodology achieved the half lead-time of new car development

The Collaborative Digital Process Methodology achieved the half lead-time of new car development The Collaborative Digital Process Methodology achieved the half lead-time of new car development Hiroshi Katoh (Digital Process Ltd.) Abstract A Japanese automotive manufacturer finally achieved the less

More information

Using Variability Modeling Principles to Capture Architectural Knowledge

Using Variability Modeling Principles to Capture Architectural Knowledge Using Variability Modeling Principles to Capture Architectural Knowledge Marco Sinnema University of Groningen PO Box 800 9700 AV Groningen The Netherlands +31503637125 m.sinnema@rug.nl Jan Salvador van

More information

Empirical Research Plan: Effects of Sketching on Program Comprehension

Empirical Research Plan: Effects of Sketching on Program Comprehension Empirical Research Plan: Effects of Sketching on Program Comprehension Sebastian Baltes 1 and Stefan Wagner 2(B) 1 University of Trier, Trier, Germany research@sbaltes.com 2 University of Stuttgart, Stuttgart,

More information

Terms and Conditions

Terms and Conditions 1 Terms and Conditions LEGAL NOTICE The Publisher has strived to be as accurate and complete as possible in the creation of this report, notwithstanding the fact that he does not warrant or represent at

More information

DSM-Based Methods to Represent Specialization Relationships in a Concept Framework

DSM-Based Methods to Represent Specialization Relationships in a Concept Framework 20 th INTERNATIONAL DEPENDENCY AND STRUCTURE MODELING CONFERENCE, TRIESTE, ITALY, OCTOBER 15-17, 2018 DSM-Based Methods to Represent Specialization Relationships in a Concept Framework Yaroslav Menshenin

More information

Computational Reproducibility in Medical Research:

Computational Reproducibility in Medical Research: Computational Reproducibility in Medical Research: Toward Open Code and Data Victoria Stodden School of Information Sciences University of Illinois at Urbana-Champaign R / Medicine Yale University September

More information

Computational Sciences and Engineering (CSE): A New Paradigm in Scientific Research & Education. Abul K. M. Fahimuddin

Computational Sciences and Engineering (CSE): A New Paradigm in Scientific Research & Education. Abul K. M. Fahimuddin Computational Sciences and Engineering (CSE): A New Paradigm in Scientific Research & Education Abul K. M. Fahimuddin Scientific Research Staff Germany Motivation: Chemical Dispersion in Urban Areas Motivation:

More information

Digital Engineering Support to Mission Engineering

Digital Engineering Support to Mission Engineering 21 st Annual National Defense Industrial Association Systems and Mission Engineering Conference Digital Engineering Support to Mission Engineering Philomena Zimmerman Dr. Judith Dahmann Office of the Under

More information

A Journal for Human and Machine

A Journal for Human and Machine EDITORIAL James Hendler 1, Ying Ding 2 & Barend Mons 3 1 Rensselaer Institute for Data Exploration and Applications, Rensselaer Polytechnic Institute, Troy, NY12180, USA 2 School of Informatics, Computing,

More information

Levels of Description: A Role for Robots in Cognitive Science Education

Levels of Description: A Role for Robots in Cognitive Science Education Levels of Description: A Role for Robots in Cognitive Science Education Terry Stewart 1 and Robert West 2 1 Department of Cognitive Science 2 Department of Psychology Carleton University In this paper,

More information

A Product Derivation Framework for Software Product Families

A Product Derivation Framework for Software Product Families A Product Derivation Framework for Software Product Families Sybren Deelstra, Marco Sinnema, Jan Bosch Department of Mathematics and Computer Science, University of Groningen, PO Box 800, 9700 AV Groningen,

More information

SEPTEMBER, 2018 PREDICTIVE MAINTENANCE SOLUTIONS

SEPTEMBER, 2018 PREDICTIVE MAINTENANCE SOLUTIONS SEPTEMBER, 2018 PES: Welcome back to PES Wind magazine. It s great to talk with you again. For the benefit of our new readerswould you like to begin by explaining a little about the background of SkySpecs

More information

towerswatson.com Transforming Life Medtronic aligns global total rewards with EVP

towerswatson.com Transforming Life Medtronic aligns global total rewards with EVP towerswatson.com Transforming Life Medtronic aligns global total rewards with EVP Transforming Life Medtronic aligns global total rewards with EVP By Lucie P. Lawrence In 1949, in a 600-square-foot garage

More information

A Test Bed for Verifying and Comparing BIM-based Energy Analysis Tools

A Test Bed for Verifying and Comparing BIM-based Energy Analysis Tools 211 A Test Bed for Verifying and Comparing BIM-based Energy Analysis Tools Yu-Hsiang Wen 1, Han-Jung Kuo 2 and Shang-Hsien Hsieh 3 1 Computer-Aided Engineering Group, Department of Civil Engineering, National

More information

Confidently Assess Risk Using Public Records Data with Scalable Automated Linking Technology (SALT)

Confidently Assess Risk Using Public Records Data with Scalable Automated Linking Technology (SALT) WHITE PAPER Linking Liens and Civil Judgments Data Confidently Assess Risk Using Public Records Data with Scalable Automated Linking Technology (SALT) Table of Contents Executive Summary... 3 Collecting

More information

No Silver Bullet. CSCI 5828: Foundations of Software Engineering Lecture 02 08/27/2015

No Silver Bullet. CSCI 5828: Foundations of Software Engineering Lecture 02 08/27/2015 No Silver Bullet CSCI 5828: Foundations of Software Engineering Lecture 02 08/27/2015 1 Getting my Act Together Two Announcements First: in Lecture 1, I had a slide that announced my office hours as Fridays

More information

2IMP25 Software Evolution. Software Evolution. Alexander Serebrenik

2IMP25 Software Evolution. Software Evolution. Alexander Serebrenik 2IMP25 Software Evolution Software Evolution Alexander Serebrenik Organisation Quartile 3: Lectures: Wednesday: 15:45-17:30 PAV L10 Friday: 10:45-12:30 PAV J17 http://www.win.tue.nl/~aserebre/2imp25/2015-2016/

More information

Improving Software Sustainability Through Data-Driven Technical Debt Management

Improving Software Sustainability Through Data-Driven Technical Debt Management Improving Software Sustainability Through Data-Driven Technical Debt Management Ipek Ozkaya October 7, 2015 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Copyright 2015

More information

Bachelor Thesis Kick Off State of the Art in linking privacy requirements to technical solutions

Bachelor Thesis Kick Off State of the Art in linking privacy requirements to technical solutions Bachelor Thesis Kick Off State of the Art in linking privacy requirements to technical solutions Nora Miftah El Kheir, 16.11.18, Garching Chair of Software Engineering for Business Information Systems

More information

Robots in the Loop: Supporting an Incremental Simulation-based Design Process

Robots in the Loop: Supporting an Incremental Simulation-based Design Process s in the Loop: Supporting an Incremental -based Design Process Xiaolin Hu Computer Science Department Georgia State University Atlanta, GA, USA xhu@cs.gsu.edu Abstract This paper presents the results of

More information

Integrated Transformational and Open City Governance Rome May

Integrated Transformational and Open City Governance Rome May Integrated Transformational and Open City Governance Rome May 9-11 2016 David Ludlow University of the West of England, Bristol Workshop Aims Key question addressed - how do we advance towards a smart

More information

Category Code Description. Science and mathematics

Category Code Description. Science and mathematics SM1i SM1p SM1m SM1fl SM2i SM2p SM2m SM2fl SM3p SM3m SM3fl SM4m SM5m SM6m EA1i EA1p EA1m EA1fl Knowledge and understanding of the scientific principles underpinning relevant current technologies, and their

More information

An Industrial Application of an Integrated UML and SDL Modeling Technique

An Industrial Application of an Integrated UML and SDL Modeling Technique An Industrial Application of an Integrated UML and SDL Modeling Technique Robert B. France 1, Maha Boughdadi 2, Robert Busser 2 1 Computer Science Department, Colorado State University, Fort Collins, Colorodo,

More information

Information Sociology

Information Sociology Information Sociology Educational Objectives: 1. To nurture qualified experts in the information society; 2. To widen a sociological global perspective;. To foster community leaders based on Christianity.

More information

EAB Engineering Accreditation Board

EAB Engineering Accreditation Board EAB Engineering Accreditation Board Appendix B: Specified Learning Outcomes Summary of Engineering Council Output Statements Specific Learning Outcomes Knowledge is information that can be recalled. Understanding

More information

Introduction to Software Engineering

Introduction to Software Engineering Introduction to Software Engineering Somnuk Keretho, Assistant Professor Department of Computer Engineering Faculty of Engineering, Kasetsart University Email: sk@nontri.ku.ac.th URL: http://www.cpe.ku.ac.th/~sk

More information

Visualization of metrics and areas of interest on software architecture diagrams Byelas, Heorhiy

Visualization of metrics and areas of interest on software architecture diagrams Byelas, Heorhiy University of Groningen Visualization of metrics and areas of interest on software architecture diagrams Byelas, Heorhiy IMPORTANT NOTE: You are advised to consult the publisher's version (publisher's

More information

Applying the SPES Modeling Framework

Applying the SPES Modeling Framework Applying the SPES Modeling Framework A Case Study from the Automotive Domain Jennifer Brings, Julian Bellendorf, Kevin Keller, Markus Kempe, Noyan Kurt, Alexander Palm, Marian Daun paluno - The Ruhr Institute

More information