
Leadership is a relevant aspect for the success of Software Process Improvement (SPI) initiatives. Leadership as Practice is an approach characterized by perspectives of practices and understands leadership as a social process contextually situated. A multi-case qualitative research was conducted, with three initiatives of SPI. Data was collected by means of fifteen semi-structured interviews, in depth, with involved subjects in the studied cases, besides the documentation available by companies that participated in the study. The analyses technique employed for the investigation of leadership practices was the thematic analyses. In each of the SPI initiatives researched, the same five distinct practices were found: Responsiveness, Empowering, Facilitation, Engagement and Structuring. These five practices are defined as the REFES Model. The present investigation demonstrated that the context of practices is not limited to their social context, but instead is increased for the own practice, by participating at the context of other practices. Therefore, it was concluded that leadership in SPI initiatives usually involve complex network of relationships, practices and structures and that it mostly occurs vertically, formally and collaboratively.
Agile methodologies are adapted by growing number of software organizations. Agile maturity (also called agility) assessment is a way to ascertain the degree of this adoption and determine a course of action to improve agile maturity. There are a number of agile maturity assessment surveys in order to assess team or organization agility and many of them require no guidance. However, the usability of these surveys are not widely studied. The purpose of this study is to determine available agile maturity self-assessment surveys and evaluate their strengths and weaknesses for agile maturity assessment. An extensive case study is conducted to measure the sufficiency of 22 available agile maturity self-assessment surveys according to the seven expected features: comprehensiveness, fitness for purpose, discriminativeness, objectivity, conciseness, generalizability, and suitability for multiple assessment. Our case study results show that they do not satisfy all of the expected features fully but are helpful in some degree based on the purpose of usage.
In the last two decades, automotive witnessed a continuous and unstoppable trend to innovation. Vehicles innovation is principally driven by electronics components and software that play today a predominant role for the vehicle’s functions. Because the quality of on-board automotive electronic systems is strongly dependent on the quality of their development practices, car-makers and suppliers proactively focused on improvement of technical and organizational processes. In this setting, Automotive SPICE became a reference standard for the assessment and improvement of automotive electronics processes and projects. The effects of the application of Automotive SPICE in automotive industry have been substantially positive in terms of process awareness, possibility of benchmarking, development discipline, and incitement to improvement. Nevertheless, getting compliant in the short period to Automotive SPICE requirements may represent, in some contexts, a target hardly achievable, or even a chimera. In this paper we present a novel automotive-specific scheme for process evaluation and improvement. This scheme has been conceived taking into account the authors experience in automotive as Automotive SPICE principal assessors and it aims at setting up basic objectives in terms of process performance in terms of discipline, technical soundness and completeness in project deployment. The scheme is going to be validated by performing trials with real projects.
Previous assessment of process quality have focused on process capability (i.e. the ability of a process to meet its stated goals). This paper proposes a taxonomy of alternative process quality characteristics based on intrinsic and extrinsic quality attributes. The ultimate goal of this taxonomy is to provide a framework to conduct process assessments using different process quality aspects. Such a framework would considerably broaden process quality perspectives beyond the primary measure of process capability. It would also allow practitioners to identify and evaluate relevant quality characteristics for processes based on specific contexts and implications. For the process assessment model developers, it offers a list of process quality characteristics that could be used to develop relevant process measurement frameworks.
Sports Science is a new and evolving industry. There is a great potential in this domain which will be realised by capturing and analysing the performance data of the elite athletes and displaying all relevant information to them for better decision making and performance improvement. Establishing reliable systems to achieve performance monitoring in the sports science domain require hardware sensors, firmware and software algorithms work coherently. Such complex systems having also cyber-physical characteristics would bring their own challenges. In this paper, first we present the challenges related with the domain and the development environment based on our experiences in the STATSports Company. Then, we discuss how we adopted agile software development practices to overcome these challenges in a phased approach.
Requirements Engineering (RE) is one of the critical phases of any software development life cycle. Business and technology evolution increasingly poses many challenges and becomes a source of continuous change in RE. Changes to software are inevitable in the development process and are a source of project risk. During the last decade many Requirements Change Management (RCM) models have been proposed, but this area appears to remain rudimentary in software process standards. Configuration management process has been introduced in ISO/IEC 12207:2017; however, it does not fully address RCM problems. This paper proposes an RCM Process (RCMP) to address this issue. The process is extended to a theoretical model based on seven core essentials that were identified in the literature. Furthermore, the process is modeled in a Composition Tree (CT), a semi-formal graphic notation, and then we have compared the new process with existing Configuration Management (CM) process to highlight the differences. Our proposed process significantly addresses the deficiencies of existing change management process.
TMMi, as a process reference model, introduces a collection of best practices that helps organizations improve their testing processes. Developing ontology of any process reference model help to clarify the structure of the knowledge, enable knowledge sharing, and enable interoperability. This study presents an ontology-based testing process assessment infrastructure to track conformance to TMMi as the process reference model. In this study, the TMMi model, SCAMPI-A method, and organizations are specified by the TMMi Assessment Ontology which is coded in a formal language and the ontology’s application for assessment is described.
Software process standards and models encapsulate best practices and guidelines for engineering and managing software. These are usually prescribed in natural language. However, natural language based process specifications can be inconsistent and ambiguous that makes it difficult to monitor and verify if they have been fully implemented and adhered too in a given software project. Besides the process of defining and documenting the necessary evidence to comply with process standard requirements is often manual, time consuming and laborious. In earlier studies, we developed a translation scheme and metamodel for consistent and uniform software process formalisation. In the current study, we leverage the formal process specification to develop a two-step formal process verification approach; first we extract process requirements from the standard documents and translate them into logical axioms. We then augment these axioms with additional information in a process verification ontology. This ontology is then utilised in conformance verification of a performed process. We demonstrate the feasibility of our approach with software requirements analysis process and a case study.
Software process education is an important field within software engineering that requires a more practical and realistic, learning and teaching approach. In the context of education, serious games is a field that is growing rapidly as a way to provide alternative approaches to the traditional pedagogical learning/teaching process. The main objective of this work is to analyze the state of the art in relation to serious games for software process education with the aim to identify the current studies and existing serious games that deal with this field. A systematic literature review was performed following a predefined procedure that involves automatically searching in scientific digital databases. 152 papers were found by the automatic searches in the digital databases and 24 papers were selected as primary studies. Results show that researchers are more interested in addressing the design and use of serious games for software process education than the design of simulation models to support the design of serious games for software process education. Consequently, 21 serious games for software process education were identified and categorized.
Researchers agree that ITIL is among the most valuable and popular frameworks currently being adopted and adapted by organizations. For ITIL, as a Process Reference Model (PRM), process management requires each process to be controlled to remain compliant with the objectives of both IT and business. PRMs are always related to a process assessment model (PAM) which holds all details to assess a specified process quality characteristic based on one or more PRM. In the literature, it is possible to find different ontology-based models for the ITIL PRM but, as far as the authors are aware, no ontology was proposed to represent an ITIL related PAM. This research intends to shed some light in this area by proposing an ontological approach using the METHONTOLOGY methodology for describing TIPA® for ITIL. This ontology provides a common vocabulary that solves some issues of consistency, conciseness, and completeness.
Many business processes present in modern enterprises are loosely defined, highly interactive, involve frequent human interventions. They are coupled with a multitude of abstract entities defined within an enterprise architecture. Further, they demand agility and responsiveness to address the frequently changing business requirements. Traditional process modelling and knowledge management technologies are not adequate to represent and support those processes. In this paper, we discuss how a process management system based on semantic models can be used to address the needs of non-traditional and knowledge intensive processes. The modelling capabilities of the framework are demonstrated via a case study and evaluated using set requirements that KIP supporting process management system should have. Finally, we discuss how this semantic model based solution can be improved further to cater for the management and execution of knowledge-intensive business processes in a broader context.
Software quality is an important topic for software practitioners in order to guarantee how the system is built and performed. In last years, techniques related to data science have been utilized in software engineering field as sup-port for building mainly prediction models. These approaches focused on trying to minimize software problems during the development and performance of software, helping to make right decisions. This systematic literature review (SLR) aims at investigating the significant techniques of data sciences used in software processes, identifying their major impacts and problems/challenges of use. This review will be of interest for software practitioners concerned on software quality.
This paper provides an Enterprise SPICE capability profile for an ISO 9001:2015 compliant organization. Assuming that an ISO 9001:2015 compliant organization would implement all requirements of ISO 9001, the author team assessed that assumed implemented process with respect to Enterprise SPICE processes and practices. The assessment results are presented in the paper. The results intend to indicate how Enterprise SPICE and ISO 9001 are complimentary to each other in improving performance across an enterprise.
Measurement is the foundation for successful software management. However, it is not easy for software organizations to evaluate their measurement practices and to determine what they should do to improve them. There are models to evaluate capability and maturity of measurement processes. However, they frequently focus on the measurement process in relation with a well-defined capability model like CMMI or SPICE. Organizations following recent agile methodologies do not desire to apply these holistic models. We have developed a model to assess measurement capability of software organizations by inspecting individual measures, independent from software development approach and process architecture. The model includes sample of core measures for aspects and defines generic practices for three capability levels. Organizations can use the model to determine and improve their measurement capability. In the paper, an exploratory case study conducted in a large telecommunication company is discussed and the results are evaluated.
At the 2015 Software Process Education, Training and Professionalism workshop, the focus was on bringing together a Manifesto to include values and principles. However, without a strategy driven by a commonly shared vision, it may be difficult to seek more tangible outcomes. This paper drafts a proposed strategy that might help us move forward.
The integration of usability practices in software development is not a straightforward process. In this context, the application of usability maturity models (UMM) in a software organization can provide insightful information to improve such integration. This paper discusses the design and application characteristics of the UMMs used over the last decade. The analysis of recent UMMs confirms that, even when the UMM field is a matter of interest and is getting adapted to new development contexts (for instance, agile or open source). UMMs lack detailed empirical evidence and supporting documentation for their objective application. In addition, our study also identifies other open issues related such as the level of prescriptiveness or mutability of UMMs. Consequently this paper identifies different opportunities for improving the maturity of UMMs. The application of mature UMMs would contribute to a better incorporation of usability and user experience practices in software organizations.
Open Source Software is a term used to identify software developed and released under an “open source” license, meaning that under certain conditions; it is openly available for use, inspection, modification, and for redistribution free of cost (or with cost based on the license agreement). Incorporation of OSS while developing software can reduce time and cost of development. The nature of the work force (volunteers and paid) in OSS projects is transient and results in high turnover leading to knowledge loss. In this work, we explore the phenomenon of knowledge loss in OSS projects. Maintenance of OSS projects requires knowledge, typically shared asynchronously using technology-mediated channels. Knowledge sought in this manner is reactive in the sense that a developer will consult these channels looking for possible solutions or supporting information. We follow the backward snowballing to study the relevant literature on knowledge loss in OSS. Our work suggests that proactive knowledge exchange mechanisms may bring some benefits to OSS projects. Further integration of knowledge management practices with the established OSS practices can minimise knowledge loss.
Agile software development methods have become popular in the software development field during the last decade. Majority of software organizations develop or claim to develop software based on agile methods. Process mining is a process management technique that allows for the analysis of business processes based on the event logs. The aim of process mining is to discover, monitor and improve real processes, but not assumed processes, by extracting knowledge from event logs readily available in information systems. Process mining can be used to discover agile processes followed in organizations/projects to determine the actual processes followed. Process mining can also establish the necessary evidences for assessing or measuring the agility of organizations. This study explores the usability of process mining methods in agile software development context. The results of an exploratory case study on using process mining techniques in a software project managed by Scrum are depicted. We also discuss the benefits of the process mining techniques used and compare different tools utilized.
Bringing professional practice into the learning/teaching process is an especially difficult task in the scope of software project management and can turn into a challenge in the context of software process standards education. The ISO 21500 standard is an international reference standard that provides generic guidance and good practices in project management. In this paper, we perform a literature review in order to analyze the current studies related to the use of serious games for understanding, teaching and supporting the education of the ISO 21500 standard. Moreover, we propose ProDec, a serious game for software project management training, and provide a mapping between the different stages of the game lifecycle and the ISO 21500 standard applying its management processes in the context of software projects. As a result, we observe that in this context, ProDec is able to cover seven of the ten subject groups and almost 75% of the project management processes of the ISO 21500 standard.
Software development usually follows well known process models and standards for development processes. However, these are usually diverse and described in natural language which complicates their automation, adaptivity and verification. The need for process formalisation has long been highlighted, and we have provided a formalisation and translation algorithm to that effect in earlier work. However, to systematically and faithfully formalise heterogeneous processes from different standards and process models, there is a need to utilise uniform concepts to underpin the formalisation process. Metamodels and ontologies have been explored recently to lay a foundation for structuring and expressing additional rigour to process formalisation. In this study, we develop an axiom based metamodel utilising powertype patterns as a conceptual framework to underpin homogeneous process formalisation. The advantage of an axiomatic and powertype based metamodel approach lies in its potential to determine the metamodel basic constituents and formalism as well as its extensibility and adaptability. We formalise the metamodel using ontologies while adopting use cases from ISO/IEC 29110 and ISO/IEC 24744 standards for metamodel illustrations. Ontology based process descriptions enable process automated verification and adaptivity capability through the use of ontology reasoning support engines.