Category Archives: Software Engineering

Call for Papers: 7th International Workshop on Foundations and Techniques for Open Source Software Certification (OpenCert 2013)

7th International Workshop on Foundations and Techniques for Open Source Software Certification (OpenCert 2013), Monday 23 September 2013, Madrid, Spain,
http://opencert.iist.unu.edu, at the 11th International Conference on Software Engineering and Formal Methods (SEFM 2013), September 25-27, 2013, Madrid, Spain, http://antares.sip.ucm.es/sefm2013

Context / Objectives

Over the past decade, the Open Source Software (OSS) phenomenon has had a global impact on the way software systems and software-based services are developed, distributed and deployed. Widely acknowledged benefits of OSS include reliability, low development and maintenance costs, as well as rapid code turnover. Linux distributions, Apache and MySQL server, and Moodle LMS are, among many other examples, a testimony to its success and resilience.

Continue reading

A Dual Model of Open Source License Growth

Abstract: Every open source project needs to decide on an open source license. This decision is of high economic relevance: Just which license is the best one to help the project grow and attract a community? The most common question is: Should the project choose a restrictive (reciprocal) license or a more permissive one? As an important step towards answering this question, this paper analyses actual license choice and correlated project growth from ten years of open source projects. It provides closed analytical models and finds that around 2001 a reversal in license choice occurred from restrictive towards permissive licenses.

Keywords: Open source; open source license; software license; open source project growth

Reference: Gottfried Hofmann, Dirk Riehle, Carsten Kolassa, Wolfgang Mauerer. “A Dual Model of Open Source License Growth.” In Proceedings of the 9th International Conference on Open Source Systems (OSS 2013). Springer Verlag, 2013, to appear.

The paper is available as a PDF file.

Best of Our Empirical Open Source Work (Abstract)

I’m at SOFSEM 2013, where I’ll present my current stock research talk: “Best of Our Empirical Open Source Work.” It is an invited talk. I’ve given it a few times now and expect to do many more during the course of 2013. Here is the abstract of this “best-of” talk:

Open source software is publicly developed software. Thus, for the first time, we can broadly analyse in data-driven detail how people program, how bugs come about, and how we could improve our tools. In this talk, I’ll review six years of our open source empirical (data) research and highlight the most interesting insights, including how different (or not) open source is from closed source programming.

Let me know if you are interested!

Announcing OpenSym 2013, the Open Symposium!

OpenSym is the conference for open collaboration researchers and practitioners, including free/libre/open source software, but also open access, open data, open government, and open innovation. OpenSym 2013 will be held for the first time in 2013, on Aug 5-7, in Hong Kong, China. OpenSym joins hands with WikiSym, an established conference that brings together wiki and Wikipedia researchers and practitioners. WikiSym + OpenSym 2013 will co-locate with Wikimania 2013, the Wikipedia (and related) user conference.

OpenSym is unique in bringing together all strands of “open researchers” and I can’t wait to see how it works out! It is truly an exciting time to experience how researchers and practitioners join hands across disciplines to make the world a better place!

Continue reading

Looking Back on One Year of Public Policy Consulting

2012 was the year when I first did some serious public policy consulting. I found it quite informative to see how politicians work and what the impact of lobbyists is.

I’m a professor of computer science at a German technical university. I also have an M.B.A. from Stanford. I consult on open source, software development, and the software industry. I’m also a civil servant of the state of Bavaria in Germany. Thus, I try to maintain a policy-neutral stance, consulting on mechanism more than on policy. The German people elect politicians, politicians choose policy, and I help politicians choose and define mechanisms that will turn those policies into reality.

Continue reading

Planned Inner Source: Code Reuse Across Profit-Center Boundaries (in German)

Abstract: Wiederverwendung von Softwarekomponenten verspricht, Softwareentwicklung schneller und günstiger zu machen und die Ergebnisqualität zu steigern. Trotz diverser methodischer Ansätze ist es für viele Softwareentwicklungsorganisationen schwierig geblieben, diese Ziele auch nur ansatzweise zu erreichen. Vor diesem Hintergrund bietet „Inner Source“, die Verwendung von Open-Source-Praktiken in der firmeninternen Softwareentwicklung, neue Chancen. Inner-Source-Software ist Software, die innerhalb eines Unternehmens über Profit-Center-Grenzen hinweg in Gemeinschaftsarbeit entwickelt wird und von allen Abteilungen genutzt werden kann. In diesem Artikel stellen wir die bisher gewonnenen Erfahrungen mit Inner-Source-Entwicklung dar, definieren organisatorische Gestaltungsmöglichkeiten und prognostizieren die Entstehung von Inner-Source-Organisationen, einer neuen Form der Organisation für die Wiederverwendung.

Keywords: Open source; inner source; software code reuse; knowledge sharing; firm-internal open source; open collaboration

Reference: Dirk Riehle, Detlef Kips. Geplanter Inner Source: Ein Weg zur Profit-Center-übergreifenden Wiederverwendung. Friedrich-Alexander University Erlangen-Nürnberg Technical Report CS-2012-05. Erlangen, Germany: 2012.

The paper is available as a PDF file.

The Commit Size Distribution of Open Source Software (Summary)

We finished our work on modeling the commit sizes of open source, called the commit size distribution of open source. This is relevant work for anyone who’d like to know how much code developers are writing for a single commit (code contribution) to a project. For example, if you are developing software development tools, you might want to know about this. The work pairs nicely with an upcoming publication on the commit frequency of open source, that is, the ETA (estimated time of arrival) of the next commit to a project.

There are three papers, in descending order of importance:

  1. A Model of the Commit Size Distribution of Open Source (2013)
  2. Developer Belief vs. Reality on Commit Size Distribution (2012)
  3. The Original Data behind the Commit Size Distribution (2009)

Continue reading

A Model of the Commit Size Distribution of Open Source

Abstract: A fundamental unit of work in programming is the code contribution (“commit”) that a developer makes to the code base of the project in work. We use statistical methods to derive a model of the probabilistic distribution of commit sizes in open source projects and we show that the model is applicable to different project sizes. We use both graphical as well as statistical methods to validate the goodness of fit of our model. By measuring and modeling a fundamental dimension of programming we help improve software development tools and our understanding of software development.

Keywords: Open source; commit sizes; commit size distribution; configuration management; code contributions.

Reference: Carsten Kolassa, Dirk Riehle, Michel A. Salim. “A Model of the Commit Size Distribution of Open Source.” In Proceedings of the 39th International Conference on Current Trends in Theory and Practice of Computer Science (SOFSEM 2013), LNCS 7741. Springer Verlag, 2013. Page 52-66.

The paper is available as a PDF file.

Software Architecture is a (Poor) Metaphor

At FAU, we are now holding our so-named “software architecture” seminar for the second time. It is important to realize (for students as well as the general public) that “software architecture” is a metaphor (or, maybe more precisely, an analogy). Architecture is a discipline several thousand years old, while software architecture is only as old as software engineering, probably younger, if you make Shaw and Garlan’s book the official birth date of software architecture, at least in academia.

Continue reading

A Model of Open Source Developer Foundations

Abstract: Many community open source projects are of high economic relevance. As these projects mature, their leaders face a choice of continuing the project as is, making the project join an existing foundation, or creating their own foundation for the project. This article presents a model of open source developer foundations that project leaders can use to compare existing foundations with their needs or to design their own. The model is based on a three-iteration qualitative study involving interviews and supplementary materials review. To demonstrate its usefulness, we apply the model to nine foundations and present their organizational choices in a comparative table format.

Keywords: Open source; open source developer foundation; developer consortium; user foundation; user consortium; software industry

Reference: Dirk Riehle, Sebastian Berschneider. “A Model of Open Source Developer Foundations.” In Proceedings of the 8th International Conference on Open Source Systems (OSS 2012). Springer Verlag, 2012. Page 15-28.

The paper is available as a PDF file.