Since software development is in constant evolution, it presents new facets and emerging topics. For example, the integration of qualitative data analysis through Grounded Theory establishes a new approach to categorizing this discipline, allowing it to align with these new contributions. The present work applies an original Glaserian Systematic Mapping Study (GSMS) to explore new ways of categorizing software development using Grounded Theory (GT) and GT elements. The study provides insights from the perspective of human beings, including their trust and doubts, and their attitudes towards work teams. The categorization covers many aspects of software development. One of these relates to Agile development, which has been defined in two pairs: Agile/Non-Agile and Agile/Plan-driven. Although this may seem obvious, this categorization had not been defined in this way before. Data, in all its diversity, accompanies the software development process throughout its entire lifecycle. Another finding of the present work is the concept of bridges, which correspond to the diverse interrelationships within software development. Grounded Theory in the context of software development has enabled the creation of various types of bridges. These bridges could be established between individuals within the same development team, between different areas of software development, or between developers and their tools and artifacts, among others. These findings can be highly diverse and can help software engineers unlock their potential and explore various options in software development.
Grounded theory (GT) has been extensively used in social studies through surveys and interviews. However, its application in software development has not been appropriately categorized, limiting its in-depth study in this field. Additionally, the qualitative analysis provided by GT is in increasing demand in software engineering, presenting a significant opportunity to further investigate this topic. This article discusses the identification and analysis of key GT elements beyond traditional data sources, such as research results, engineering artifacts, and written documents, and introduces the role of basic coding, master core category, and the theory emerging, thus showing a way to present the results of GT studies in software development. The study provides valuable insights for researchers and practitioners interested in applying GT in software development. The article also explores the crucial role of constant comparison until saturation and the challenges it presents. Additionally, the integration of Glaserian grounded theory (GGT) with systematic mapping study (SMS) is examined, resulting in a novel approach called Glaserian systematic mapping study (GSMS), which defines saturation through three equations, providing a set of components that satisfactorily categorize GT in software development. This article discusses the identification and analysis of key grounded theory (GT) elements beyond traditional data sources in the context of software development.
DevOps is becoming a main competency required by the software industry. However, academic institutions have been slow to provide DevOps training in software engineering (SE) curricula. One reason for this is the fact that the problems addressed by DevOps may be hard to understand to students who have not previously worked in the industry or on projects of meaningful size and complexity. This paper shows an experience that integrates DevOps in SE curricula through research-based teaching (RBT). We aim to expose students to the problems that have led companies to adopt DevOps by researching and analyzing real cases of companies, thereby placing students at the center of learning. The contribution of this work is to innovate the application of RBT in software engineering by showing that the RBT approach is, at least, as good as the traditional approach and that it also leads to some extra benefits. This innovative solution has been implemented by using (i) qualitative analysis, specifically coding techniques, to discover knowledge and (ii) inter-coder agreement (ICA), specifically Krippendorff's $\alpha$ coefficients, to measure the extent of students' learning. These techniques allow teachers to determine whether students' learning in the subject is homogeneous and to analyze disagreements among students during their analysis. This approach provides teachers with new tools (Krippendorff's $\alpha$ coefficients) to identify those concepts that are less understood by students and to evaluate whether improvements in the research instruments (e.g., the codebook used in the qualitative analysis) also generate improvements in the students' agreement. This RBT experience shows evidence that can be used to assess whether a similar experience and the use of ICA could be applied in similar learning contexts with similar research contexts.
In recent years the growing number of mobile devices [10] and their hardware potential with all the sensors that compose them and wireless intercommunication networks in our environments have evolved significantly giving greater service to users, also taking advantage of the information that these devices can produce, but generating some problems such as incompatibility in communication, processing, data analytics or an architecture that covers the different elements involved.The following article investigates the elements involved in a Corwdsensing Mobile architecture through a literature review to propose an architecture that ensures the proper functioning of the entire process.
This research arises as an answer to the limited classification capability that reaches the vast majority of selected articles within a Systematic Mapping Study (SMS) when studying the Grounded Theory (GT) in Software Development. The result of our research is Glaserian Systematic Mapping Study (GSMS). It is a methodology that combines SMS and Glaserian Grounded Theory (GGT), which is one of the two variants of the GT. Combining the robustness and sequential process of SMS with GGT and its iterative features, GSMS provides a more robust, flexible, iterative, and scalable methodology. SMS and GGT share two main activities, data collection and data analysis. However, they are conducted differently. The resulted integration takes advantage of this fact and maps both related activities and outcomes to produce a more robust and systematic methodology. In addition, our research formalizes equations to represent the typical data saturation of qualitative methods such as GGT. With GSMS, we were able to classify more articles than with SMS alone.
This is a summary of the First International Workshop on Agile Sustainability. The workshop analysed sustainability from the agile perspective through research presentations and collaborative activity. The keynote was focused on considering the world as a customer and the two papers address really interesting and varied ideas about collective intelligence and sustainability and how to increase the sustainability awareness in the Agile community. The collaborative activity analysed the established agile practices from the sustainability point of view.
Nowadays, it is mandatory to complement the traditional learning methods with active ones that enhance the student's motivation and facilitate the development of technical and soft competences. LEGO®Serious Play is an experiential methodology designed to enhance innovation and performance in the business world and it is fully aligned with these needs. Previous researches show that this methodology has great potential in engineering education, and specifically in software engineering education. This paper presents an original LEGO®Serious Play activity to teach in a playful and active way software engineering concepts such as life cycle models and software development activities, which can be extrapolated to other engineering fields. This activity was validated through a case study involving 242 computer science students and it was supported by quantitative and qualitative data gathered from a survey and a post-test. The results indicate that the students found this activity highly fun and motivating as well as very useful to learn about the addressed topics and develop soft skills.
DevOps is a cultural movement that aims the collaboration of all the stakeholders involved in the development, deployment and operation of software to deliver a quality product or service in the shortest possible time. DevOps is relatively recent, and companies have developed their DevOps practices largely from scratch. Our research aims to conduct an analysis on practicing DevOps in +20 software-intensive companies to provide patterns of DevOps practices and identify their benefits and barriers. This paper presents the preliminary analysis of an exploratory case study based on the interviews to relevant stakeholders of two (multinational) companies. The results show the benefits (software delivery performance) and barriers that these companies are dealing with, as well as DevOps team topology they approached during their DevOps transformation. This study aims to help practitioners and researchers to better understand DevOps transformations and the contexts where the practices worked. This, hopefully, will contribute to strengthening the evidence regarding DevOps and supporting practitioners in making better informed decisions about the return of investment when adopting DevOps.
Current IoT systems are highly distributed systems that integrate cloud, edge, and fog computing approaches depending on where intelligence and processing capabilities are allocated. This distribution and heterogeneity make development and deployment pipelines very complex and fragmented with multiple delivery endpoints above hardware. This fact prevents rapid development and makes the operation and monitoring of production systems a difficult and tedious task, including cybersecurity event monitoring. The DevSecOps can be defined as a cultural approach to improve and accelerate the delivery of business value by making dev/sec/ops teams' collaboration effective. This paper focuses on self-service cybersecurity monitoring as an enabler to introduce security practices in a DevOps environment. To that end, we have defined and formalized an activity that supports `Fast and Continuous Feedback from Ops to Dev' by providing a flexible monitoring infrastructure so that teams can configure their monitoring and alerting services according to their criteria (you build, you run, and now you monitor) to obtain fast and continuous feedback from the operation and thus, better anticipate problems when a production deployment is performed. This activity has been formalized using the Software & Systems Process Engineering Metamodel by OMG and its instantiation is described through a case study that shows the versioned and repeatable configuration of a cybersecurity monitoring infrastructure (Monitoring as Code) through virtualization and containerization technology. This self-service monitoring/alerting allows breaking silos between dev, ops, and sec teams by opening access to key security metrics, which enables a sharing culture and continuous improvement.
Technical debt, a metaphor for the long-term consequences of weak software development, must be managed to keep it under control. The main goal of this article is to identify and analyze the elements required to manage technical debt. The research method used to identify the elements is a systematic mapping, including a synthesis step to synthesize the elements definitions. Our perspective differs from previous literature reviews because it focused on the elements required to manage technical debt and not on the phenomenon of technical debt or the activities used in performing technical debt management. Additionally, the rigor and relevance for industry of the current techniques used to manage technical debt are studied. The elements were classified into three groups (basic decision-making factors, cost estimation techniques, practices and techniques for decision-making) and mapped according three stakeholders' points of view (engineering, engineering management, and business-organizational management). The definitions, classification, and analysis of the elements provide a framework that can be deployed to help in the development of models that are adapted to the specific stakeholders' interests to assist the decision-making required in technical debt management and to assess existing models and methods. The analysis indicated that technical debt management is context dependent. (C) 2016 Elsevier Inc. All rights reserved.
El presente texto, revisado y actualizado, fue presentado como desarrollo de la conferencia inaugural del IV Congreso Internacional del Español: Innovación, tecnología y comunicación en español (Salamanca, julio de 2016) para ser publicado en las Actas de dicho encuentro. Transcurrido casi un año sin que tales actas hayan sido publicadas, se comparten aquí aquellos contenidos, que reflexionan, de forma muy genérica, sobre el papel de las nuevas tecnologías en el aula de español lengua extranjera.
Software startup companies develop innovative, software-intensive products within limited time frames and with few resources, searching for sustainable and scalable business models. Software startups are quite distinct from traditional mature software companies, but also from micro-, small-, and medium-sized enterprises, introducing new challenges relevant for software engineering research. This paper's research agenda focuses on software engineering in startups, identifying, in particular, 70+ research questions in the areas of supporting startup engineering activities, startup evolution models and patterns, ecosystems and innovation hubs, human aspects in software startups, applying startup concepts in non-startup environments, and methodologies and theories for startup research. We connect and motivate this research agenda with past studies in software startup research, while pointing out possible future directions. While all authors of this research agenda have their main background in Software Engineering or Computer Science, their interest in software startups broadens the perspective to the challenges, but also to the opportunities that emerge from multi-disciplinary research. Our audience is therefore primarily software engineering researchers, even though we aim at stimulating collaborations and research that crosses disciplinary boundaries. We believe that with this research agenda we cover a wide spectrum of the software startup industry current needs.
Current technical debt management approaches mainly address specific types of technical debt. This paper introduces a framework to aid in decision making for technical debt management, and it includes those elements considered in technical debt management in the available literature, which are classified in three groups and mapped into three stakeholders' points of view. The research method was systematic mapping. In contrast to current approaches, the framework is not constrained by a concrete type of technical debt. Using this framework it will be possible to build specific models to assist in decision making for technical debt management.
Technical debt is a metaphor referring to the consequences of weak software development. Managing technical debt is necessary in order to keep it under control, and several techniques have been developed with the goal of accomplishing this. However, available techniques have grown disperse and managers lack guidance. This paper covers this gap by providing a systematic mapping of available techniques and methods for technical debt management, covering architectural debt, and identifying existing gaps that prevent to manage technical debt efficiently.
Large-Scale Smart Grids are advanced power networks that introduce intelligent management, control, and operation systems to service electricity to millions of customers and to combine traditional and renewal energies. Large-Scale Smart Grids are presented as an exemplar of System of System (SoS), since they are composed of large heterogeneous and independent systems that leverage emergent behavior from their interaction. The architectural framework of a Large-Scale Smart Grid SoS is composed of two main dimensions: the systems dimension, which is composed by the systems of the Large-Scale Smart Grid SoS, and the functional dimension, which is composed by the common functionality that these systems have to provide. In this paper, we present an architecture for Large-Scale Smart Grid SoS based on our previous experience in several industrial projects. This architecture decomposes these two dimensions into software components that support the behavior management of each system and the emergent behavior that leverage their interactions.
Innovation is a driver of global economy growth. Software intensive systems (SiSs) are embedded in the systems of various leading sectors, such as the automotive, robotics, and mobile phone industries and they are creating new opportunities for innovation. However, SiSs are affected by a rapidly changing market and a reduced time to market. Software product innovation assessment is becoming important because firms need to know as soon as possible if their products are aligned with the market and customer demands. However, this is not a simple process. To identify the existing assessment schemas applicable to software product innovation, we have undertaken a systematic literature review. We found no studies specific to the development of software, but several approaches for products in general are applicable to software even when no one finding is conclusive. Therefore, this is just the first stage for assessing software product innovation. Our findings are related to three areas of focus: (i) general, (ii) product innovation assessment preparation, (iii) the assessment process.
The evolution of a new information society and new technologies has led to the involvement of organizations in a highly competitive business market where innovation plays a key role. Improving the understanding of the innovation process will help organizations bring more competitive solutions to society more promptly. Currently, there are still too few mechanisms that help organizations to model innovation knowledge and measure their innovation capability. To deal with this gap, this paper presents the Innovation Capability Framework that models innovation knowledge and assesses the innovation capability of organizations for guiding future innovation processes. This framework comprises a conceptual model, a graphical modeling language, and an Innovation Positioning System (IPS), which are supported by an Inno Modeling Tool (InnoTool). Modeling capabilities and the IPS mechanism have been empirically validated through various case studies. In this paper, we present the InnoTool analysis of an exemplar innovative product such as Skype.