Challenges to Making Software Engineering Research Relevant to Industry

I just attended FSE 2016, a leading academic conference on software engineering research. As is en vogue, it had a session on why so much software engineering research seems so removed from reality. One observation was that academics toil in areas of little interest to practice, publishing one incremental paper of little relevance after another. Another observation was that as empirical methods have taken hold, much research has become as rigorous as it has become irrelevant.

My answer to why so much software engineering research is irrelevant to practice is as straightforward as it is hard to change. The problem rests in the interlocking of three main forces that conspire to keep academics away from doing interesting and ultimately impactful research. These forces are:

  • Academic incentive system
  • Access to relevant data
  • Research methods competence

Continue reading “Challenges to Making Software Engineering Research Relevant to Industry”

Inner Source in Platform-based Product Engineering

Abstract: Inner source is an approach to collaboration across intra-organizational boundaries for the creation of shared reusable assets. Prior project reports on inner source suggest improved code reuse and better knowledge sharing. Using a multiple-case case study research approach, we analyze the problems that three major software development organizations were facing in their product line engineering efforts. We find that a root cause, the separation of product units as profit centers from a platform organization as a cost center, leads to delayed deliveries, increased defect rates, and redundant software components. All three organizations assume that inner source can help solve these problems. The article analyzes the expectations that these companies were having towards inner source and the problems they were experiencing in its adoption. Finally, the article presents our conclusions on how these organizations should adapt their existing engineering efforts.

Keywords: Inner source, inner source foundation, product-line engineering, software platforms, engineering productivity

Reference: Riehle, D., Capraro, M., Kips, D., & Horn, L. (2016). Inner Source in Platform-Based Product Engineering. IEEE Transactions on Software Engineering vol. 42, no. 12 (December 2016), 1162-1177.

The paper is available as a PDF file.

Using Students as a Distributed Coding Team for Validation through Intercoder Agreement

Abstract: In qualitative research, results often emerge through an analysis process called coding. A common measure of validity of theories built through qualitative research is the agreement between different people coding the same materials. High intercoder agreement indicates that the findings are derived from the data as opposed to being relative results based on the original researcher’s bias. However, measuring such intercoder agreement incurs the high cost of having additional researchers perform seemingly redundant work. In this paper we present first results on a novel method of using students for validating theories. We find that intercoder agreement between a large number of students is almost as good as the intercoder agreement between two professionals working on the same materials.

Keywords: Qualitative Data Analysis, Theory Triangulation, Intercoder Agreement, Distributed Coding, Collective Coding

Reference: Andreas Kaufmann, Ann Barcomb and Dirk Riehle. “Using Students as a Distributed Coding Team for Validation through Intercoder Agreement.” Friedrich-Alexander-Universität Erlangen-Nürnberg, Dept. of Computer Science, Technical Reports, CS-2016-01, April 2016.

The paper is available as a local PDF file and also on FAU’s OPUS server.

Lost Over Call for Open Access for all Scientific Papers

I’m at a loss over the recent reports on the requirement for all research publications to be open access by 2020. Open access means that the research papers are accessible openly without a fee. There are plenty of confusing if not outright wrong statements in the press, but I’m not so much concerned with poor journalism than with the actual proposed policies.

Sadly, I couldn’t find more than this one sentence on page 12 of the report linked to from the meetings website:

Delegations committed to open access to scientific publications as the option by default by 2020.

I’d like to understand what this means and then how this is supposed work. Specifically, I’d like to know how this is not going to either break free enterprise or make predatory publishers like Elsevier laugh all the way to the bank.

Continue reading “Lost Over Call for Open Access for all Scientific Papers”

Onward! 2008 Call for Papers

Is DNA recombination your inspiration for a new programming language? Or do you simply think it is time to improve generics in Java?

Do you think that we need new paradigms for bringing programming to the masses in Second Life and on Wikipedia? That we need new and significantly more robust systems than before that can function autonomously, perhaps inspired by biological metaphors?

Read more…

Towards End-User Programming With Wikis

Abstract: When business software fails to provide the desired functionality, users typically turn to spreadsheets to perform simple but general computational tasks. However, spreadsheets enforce a view of the world that consists mostly of tables and numbers rather than the domain concepts users have in mind. We are using wikis as a platform for empowering end-users to perform computational tasks of their choice. This paper discusses how core properties of wikis can support end-user programming. We illustrate our approach using wiki prototype software for working with business objects as made available by SAP’s business application suite.

Reference: Craig Anslow, Dirk Riehle. In Proceedings of the Fourth Workshop in End-User Software Engineering (WEUSE IV). IEEE Press, 2008. Page 61-65.

Available as a PDF file.

Wiki Creole Grammar, Schema, Transformations Made Available

For wiki research purposes as well as the Wiki Creole community‘s convenience, we are making our EBNF grammar, the XML schema definition, and the to/from XML transformations available. You can use these specifications to create your own wiki parsers (using parser generators) as well as use standard technology (DOM, XSLT) to work with wiki pages and display or save them.

For more, see the dedicated wiki-creole page.

An XML Interchange Format for Wiki Creole 1.0

Abstract: Wikis have become an important application on the web and in the enterprise, yet there are no interoperability standards between different wiki engines. We present the first complete XML representation format of Wiki Creole 1.0. Wiki Creole is a community standard for wiki markup, the language used to write wiki pages. This report presents the complete XML representation format using a validating XML schema. In addition we present XSLT definitions for transforming the XML representations to XHTML on the one hand and for transforming the XML representations to Wiki Creole markup on the other hand. Our work shows how using XML technologies we can make wiki interchange, wiki upgrading, and wiki conversion independent from a specific wiki engine implementation.

Reference: Martin Junghans, Dirk Riehle, Umit Yalcinalp. In ACM SIGWEB Newsletter, Volume 2007, Issue Winter (Winter 2007), Article No. 5. ACM Press, 2007.

Available as a PDF file.

An EBNF Grammar for Wiki Creole 1.0

Abstract: Today’s wiki engines are not interoperable. This is an unfortunate consequence of the lack of rigorously specified standards. This technical report presents a complete and validated EBNF-based grammar for Wiki Creole, a community standard for wiki markup. Wiki Creole is also the only standard currently available. Wiki Creole is being specified using prose, leading to inconsistencies and ambiguities. Our grammar uncovered those ambiguities which we fed back into the specification process. The Wiki Creole grammar presented in this report makes the creation of Wiki Creole parsers simple using parser generators, ANTLR in our case. Using a precise specification of wiki markup lets us decouple wiki editors from wiki storage from further wiki processing tools. Based on this decoupling layer we expect innovation on these different parts to proceed independently and at a faster pace than before.

Reference: Martin Junghans, Dirk Riehle, Rama Gurram, Matthias Kaiser, Mario Lopes, Umit Yalcinalp. In ACM SIGWEB Newsletter, Volume 2007, Issue Winter (Winter 2007), Article No. 4. ACM Press, 2007.

Available as a PDF file.