Nicole Haenni, Mircea Lungu, Niko Schwarz, and Oscar Nierstrasz. A Quantitative Analysis of Developer Information Needs in Software Ecosystems. In Proceedings of the 2nd Workshop on Ecosystem Architectures (WEA’14), p. 1—6, 2014. Details.
We present the results of an investigation into the nature of information needs of software developers who work in projects that are part of larger ecosystems. This work is based on a quantitative survey of 75 professional software developers. We corroborate the results identified in the sur- vey with needs and motivations proposed in a previous sur- vey and discover that tool support for developers working in an ecosystem context is even more meager than we thought: mailing lists and internet search are the most popular tools developers use to satisfy their ecosystem-related information needs.
Boris Spasojević, Mircea Lungu and Oscar Nierstrasz. Towards faster method search through static ecosystem analysis. In Proceedings of the 6th Workshop on Software Ecosystems (IWSECO), ACM, August 2014. Details.
Software developers are often unsure of the exact name of the method they need to use to invoke the desired behavior in a given context. This results in a process of searching for the correct method name in documentation, which can be lengthy and distracting to the developer. We can decrease the method search time by enhancing the documentation of a class with the most frequently used methods. Usage frequency data for methods is gathered by analyzing other projects from the same ecosystem - written in the same language and sharing dependencies. We implemented a proof of concept of the approach for Pharo Smalltalk and Java. In Pharo Smalltalk, methods are commonly searched for using a code browser tool called "Nautilus", and in Java using a web browser displaying HTML based documentation - Javadoc. We developed plugins for both browsers and gathered method usage data from open source projects, in order to increase developer productivity by reducing method search time. A small initial evaluation has been conducted showing promising results in improving developer productivity.
Leonel Merino. Adaptable Visualisation Based On User Needs. In SATToSE’14: Pre-Proceedings of the 7th International Seminar Series on Advanced Techniques & Tools for Software Evolution, p. 71—74, July 2014. Details.
Software developers often ask questions about software systems and software ecosystems that entail exploration and navigation, such as who uses this component?, and where is this feature implemented?. Software visualisation can be a great aid to understanding and exploring the answers to such questions, but visualisations require expertise to implement effectively, and they do not always scale well to large systems. We propose to automatically generate software visualisations based on software models derived from open source software corpora and from an analysis of the properties of typical developers queries and commonly used visualisations. The key challenges we see are (1) understanding how to match queries to suitable visualisations, and (2) scaling visualisations effectively to very large software systems and corpora. In the paper we motivate the idea of automatic software visualisation, we enumerate the challenges and our proposals to address them, and we describe some very initial results in our attempts to develop scalable visualisations of open source software corpora.
Andrea Caracciolo, Mircea Filip Lungu, and Oscar Nierstrasz. How Do Software Architects Specify and Validate Quality Requirements?. In Software Architecture, Lecture Notes in Computer Science, Springer Berlin Heidelberg, August 2014. Details.
Andrea Caracciolo, Mircea Filip Lungu, and Oscar Nierstrasz. Dicto:A Unified DSL for Testing Architectural Rules. In Software Architecture, Lecture Notes in Computer Science, Springer Berlin Heidelberg, August 2014. Details.