5 research outputs found
Six reasons for rejecting an industrial survey paper
Context: Despite their importance in any empirically based research program, industrial surveys are not very common in the software engineering literature. In our experience, a possible reason is their difficulty of publication. Goal: We would like to understand what are the issues that may prevent the publication of papers reporting industrial surveys. Method: In this preliminary work, we analyzed the surveys we conducted and extracted the main lessons learned in terms of issues and problems. Results: Most common critics posed to industrial surveys are: lack of novelty, limitation of the geographic scope and sampling issues. Conclusions: Most objections that led to reject a survey paper actually are not easy to overcome and others are not so serious. These objections could restrain researchers from conducting this type of studies that represent an important methodological asset. For these reasons, we think that reviewers should be less severe to judge survey papers provided that all the limitations of the study are well explained and highlighte
Empirical Standards for Software Engineering Research
Empirical Standards are natural-language models of a scientific community's
expectations for a specific kind of study (e.g. a questionnaire survey). The
ACM SIGSOFT Paper and Peer Review Quality Initiative generated empirical
standards for research methods commonly used in software engineering. These
living documents, which should be continuously revised to reflect evolving
consensus around research best practices, will improve research quality and
make peer review more effective, reliable, transparent and fair.Comment: For the complete standards, supplements and other resources, see
https://github.com/acmsigsoft/EmpiricalStandard
Polyglot software development
The languages we choose to design solutions influence the way we think about the problem, the words we use in discussing it with colleagues, the processes we adopt in developing the software which should solve that problem. Therefore we should strive to use the best language possible for depicting each facet of the system. To do that we have to solve two challenges: i) first of all to understand merits and issues brought by the languages we could adopt and their long reaching effects on the organizations, ii) combine them wisely, trying to reduce the overhead due to their assembling.
In the first part of this dissertation we study the adoption of modeling and domain specific languages. On the basis of an industrial survey we individuate a list of benefits attainable through these languages, how frequently they can be reached and which techniques permit to improve the chances to obtain a particular benefit. In the same way we study also the common problems which either prevent or hinder the adoption of these languages. We then analyze the processes through which these languages are employed, studying the relative frequency of the usage of the different techniques and the factors influencing it. Finally we present two case-studies performed in a small and in a very large company, with the intent of presenting the peculiarities of the adoption in different contexts.
As consequence of adopting specialized languages, many of them have to be employed to represent the complete solution. Therefore in the second part of the thesis we focus on the integration of these languages. Being this topic really new we performed preliminary studies to first understand the phenomenon, studying the different ways through which languages interact and their effects on defectivity. Later we present some prototypal solutions for i) the automatic spotting of cross-language relations, ii) the design of language integration tool support in language workbenches through the exploitation of common meta-metamodeling.
This thesis wants to offer a contribution towards the productive adoption of multiple, specific languages in the same software development project, hence polyglot software development. From this approach we should be able to reduce the complexity due to misrepresentation of solutions, offer a better facilities to think about problems and, finally to be able to solve more difficult problems with our limited brain resources.
Our results consists in a better understanding of MDD and DSLs adoption in companies. From that we can derive guidelines for practitioners, lesson learned for deploying in companies, depending on the size of the company, and implications for other actors involved in the process: company management and universities.
Regarding cross-language relations our contribution is an initial definition of the problem, supported by some empirical evidence to sustain its importance. The solutions we propose are not yet mature but we believe that from them future work can stem
A influĂŞncia de fatores na produtividade do desenvolvimento de software de acordo com um modelo de estruturas teĂłricas
This work presents an evidence-based model describing the effects of a set of factors on software development productivity, obtained through an evidence synthesis method in Software Engineering. Thus, the relationships among this set and the software development productivity (observed phenomena) are described as results of combining theoretical structures capable of expressing and dealing with differences between different effects and uncertainties varying according to the types of studies found in the literature. Besides, to evaluate the model found, its findings are confronted with a survey capturing the practitioners’ perception (managers and leaders of software projects in Brazilian organizations). The degree of agreement between research (the model) and practice (the practitioners’ perception) shows that scientific knowledge does not differ considerably from the reality experienced by software projects when both of them refer to the influence of factors on software development productivity. The impression that research and practice on the theme go through different paths persists. According to this work, the reasons for this impression are more related to the use of non-standardized and, perhaps, inappropriate measures used to perceive and monitor the influence of factors as well as to measure the software development productivityEste trabalho apresenta um modelo baseado em evidĂŞncias que descreve efeitos de alguns fatores na produtividade do desenvolvimento de software, obtidos atravĂ©s de um mĂ©todo de sĂntese de evidĂŞncias em Engenharia de Software. Deste modo, as relações entre um conjunto de fatores e a produtividade do desenvolvimento de software (fenĂ´menos observados) sĂŁo descritas como resultados da combinação de estruturas teĂłricas capazes de expressar e tratar diferenças entre efeitos e incertezas variadas de acordo com os tipos de estudos primários encontrados na literatura. AlĂ©m disso, para avaliar o modelo encontrado, seus achados sĂŁo confrontados com uma pesquisa de opiniĂŁo realizada para capturar a percepção de profissionais da prática (gestores e lĂderes de projetos de software em organizações brasileiras). O grau de concordância entre a pesquisa (o modelo) e a prática (a percepção dos profissionais) demonstra que, aparentemente, o conhecimento cientĂfico nĂŁo diverge consideravelmente da realidade vivenciada pelos projetos de software no Brasil, quando ambos se referem Ă influĂŞncia de fatores na produtividade do desenvolvimento de software. Persiste a impressĂŁo, entretanto, de que a pesquisa e a prática no tema percorrem caminhos distintos. De acordo com este trabalho, a impressĂŁo do distanciamento parece estar relacionadas Ă questĂŁo do uso de medidas nĂŁo-padronizadas e, talvez, inapropriadas para mensurar os fatores e a produtividade do desenvolvimento de softwar