56,045 research outputs found

    Software development processes for games: a systematic literature review

    Get PDF
    This paper describes the methodology and results from a Systematic Literature Review (SLR) of the software processes used in game development. A total of 404 papers were analyzed as part of the review and the various process models that are used in industry and academia/research are presented. Software Process Improvement (SPI) initiatives for game development are dis-cussed. The factors that promote or deter the adoption of process models, and implementing SPI in practice are highlighted. Our findings indicate that there is no single model that serves as a best practice process model for game development and it is a matter of deciding which model is best suited for a particular game. Agile models such as Scrum and XP are suited to the knowledge intensive domain of game development where innovation and speed to market are vital. Hybrid approaches such as reuse can also be suitable for game development where the risk of the upfront investment in terms of time and cost is mitigated with a game that has stable requirements and a longer lifespan

    A Systematic Review of Tracing Solutions in Software Product Lines

    Get PDF
    Software Product Lines are large-scale, multi-unit systems that enable massive, customized production. They consist of a base of reusable artifacts and points of variation that provide the system with flexibility, allowing generating customized products. However, maintaining a system with such complexity and flexibility could be error prone and time consuming. Indeed, any modification (addition, deletion or update) at the level of a product or an artifact would impact other elements. It would therefore be interesting to adopt an efficient and organized traceability solution to maintain the Software Product Line. Still, traceability is not systematically implemented. It is usually set up for specific constraints (e.g. certification requirements), but abandoned in other situations. In order to draw a picture of the actual conditions of traceability solutions in Software Product Lines context, we decided to address a literature review. This review as well as its findings is detailed in the present article.Comment: 22 pages, 9 figures, 7 table

    Requirements engineering: a review and research agenda

    Get PDF
    This paper reviews the area of requirements engineering. It outlines the key concerns to which attention should be devoted by both practitioners, who wish to "reengineer" their development processes, and academics, seeking intellectual challenges. It presents an assessment of the state-of-the-art and draws conclusions in the form of a research agenda

    Software Reuse in Agile Development Organizations - A Conceptual Management Tool

    Get PDF
    The reuse of knowledge is considered a major factor for increasing productivity and quality. In the software industry knowledge is embodied in software assets such as code components, functional designs and test cases. This kind of knowledge reuse is also referred to as software reuse. Although the benefits can be substantial, software reuse has never reached its full potential. Organizations are not aware of the different levels of reuse or do not know how to address reuse issues. This paper proposes a conceptual management tool for supporting software reuse. Furthermore the paper presents the findings of the application of the management tool in an agile development organization

    Safety-Critical Systems and Agile Development: A Mapping Study

    Full text link
    In the last decades, agile methods had a huge impact on how software is developed. In many cases, this has led to significant benefits, such as quality and speed of software deliveries to customers. However, safety-critical systems have widely been dismissed from benefiting from agile methods. Products that include safety critical aspects are therefore faced with a situation in which the development of safety-critical parts can significantly limit the potential speed-up through agile methods, for the full product, but also in the non-safety critical parts. For such products, the ability to develop safety-critical software in an agile way will generate a competitive advantage. In order to enable future research in this important area, we present in this paper a mapping of the current state of practice based on {a mixed method approach}. Starting from a workshop with experts from six large Swedish product development companies we develop a lens for our analysis. We then present a systematic mapping study on safety-critical systems and agile development through this lens in order to map potential benefits, challenges, and solution candidates for guiding future research.Comment: Accepted at Euromicro Conf. on Software Engineering and Advanced Applications 2018, Prague, Czech Republi

    Alignment of requirements and services with user feedback

    Full text link
    University of Technology Sydney. Faculty of Engineering and Information Technology.It is widely acknowledged that software reuse reduces the cost and effort of software development. Over the years many solutions have emerged that propose methodologies to support software reusability. Service oriented software engineering (SOSE) advocates software reuse while aiming to achieve better alignment of software solutions to business requirements. Service orientation has evolved from Object Oriented Analysis and Design (OOAD) and Component Based Software Development (CBSD), the major difference being that reusable artefacts are in the form of services rather than objects or packaged components. Although SOSE is considered a new architectural style of software development that addresses some of the shortcomings of previous approaches, it has also inherited some of the challenges of CBSD, and OOAD, in particular in the requirements engineering process. In Service Oriented Requirements Engineering (SORE) an analyst has an additional challenging task of aligning requirements and services to select the optimally matched service from an increasingly large set of available online services. Much of the existing empirical research in SORE has focused mainly on the technical aspects while the human related issues are yet to be fully explored and addressed. The lack of empirical evidence to investigate the human related issues in SORE provides the overall motivation for the research covered in this thesis. User involvement in software development has been the focus of significant research and has been intuitively and axiomatically accepted to play a positive role in users’ satisfaction thus leading to system success. More recently, past users’ feedback, reviews and comments from online sources are considered a form of user involvement. These offer valuable information to assist analysts in increasing their knowledge for making more informed decision for service selection. In service oriented paradigm the full extent of the benefits of this form of user involvement has not been empirically investigated. This thesis addresses three important high level research goals: (1) to investigate and identify the most important challenges of SORE, (2) to design an innovative and flexible method to address the top challenge of SORE, focusing specifically on the important relationship between user involvement and system success, and (3) to evaluate the applicability and effectiveness of the proposed method in an empirical study. This thesis presents research conducted in three parts for achieving each of the stated goals respectively: problem analysis, solution analysis and implementation analysis. For problem analysis a mixed method approach is used, i.e. literature review, quantitative online survey, and qualitative industrial interview study. For solution analysis a Systematic Literature Review (SLR) is conducted to analyse the existing empirical studies about the relationship between user involvement and system success. Inspired by the results of this SLR, I designed the ARISE (Alignment of RequIrement and SErvices) method, following Situational Method Engineering to make it flexible for adoption in various project contexts. The ARISE method aims to exploit the benefits of experiences of past users for service selection. For implementation analysis, the ARISE method was instantiated in a case study with real life data with two objectives in mind: (1) validation of the effectiveness of ARISE in overcoming the challenges of alignment, and (2) improvement and refinement of the ARISE method. Analysis of the results of this validation revealed the need for automated tool support for the ARISE method. This automation is achieved through the design and implementation of software tools created for supporting the analysts in service selection. The systematic and mixed method research approach of the problem analysis phase identified that alignment of requirements and services was the top challenge for practitioners in SORE. It also increased our understanding of why this alignment is considered the most challenging task. The findings of the SLR confirmed that the effective user involvement in software development in general, and in requirements engineering in particular could lead to system success. In SORE, the past users of services can be involved through their feedback and sentiments about the services from online sources. These concepts were the basis for the design of the ARISE method. The results of the case study complemented by the experimentation with the automated tools revealed that past users’ feedback and sentiments are indeed valuable sources of information that can assist analysts in overcoming the challenges of alignment between requirements and services thus making a more informed decision in service selection

    A literature review of expert problem solving using analogy

    Get PDF
    We consider software project cost estimation from a problem solving perspective. Taking a cognitive psychological approach, we argue that the algorithmic basis for CBR tools is not representative of human problem solving and this mismatch could account for inconsistent results. We describe the fundamentals of problem solving, focusing on experts solving ill-defined problems. This is supplemented by a systematic literature review of empirical studies of expert problem solving of non-trivial problems. We identified twelve studies. These studies suggest that analogical reasoning plays an important role in problem solving, but that CBR tools do not model this in a biologically plausible way. For example, the ability to induce structure and therefore find deeper analogies is widely seen as the hallmark of an expert. However, CBR tools fail to provide support for this type of reasoning for prediction. We conclude this mismatch between experts’ cognitive processes and software tools contributes to the erratic performance of analogy-based prediction

    Designing as Construction of Representations: A Dynamic Viewpoint in Cognitive Design Research

    Get PDF
    This article presents a cognitively oriented viewpoint on design. It focuses on cognitive, dynamic aspects of real design, i.e., the actual cognitive activity implemented by designers during their work on professional design projects. Rather than conceiving de-signing as problem solving - Simon's symbolic information processing (SIP) approach - or as a reflective practice or some other form of situated activity - the situativity (SIT) approach - we consider that, from a cognitive viewpoint, designing is most appropriately characterised as a construction of representations. After a critical discussion of the SIP and SIT approaches to design, we present our view-point. This presentation concerns the evolving nature of representations regarding levels of abstraction and degrees of precision, the function of external representations, and specific qualities of representation in collective design. Designing is described at three levels: the organisation of the activity, its strategies, and its design-representation construction activities (different ways to generate, trans-form, and evaluate representations). Even if we adopt a "generic design" stance, we claim that design can take different forms depending on the nature of the artefact, and we propose some candidates for dimensions that allow a distinction to be made between these forms of design. We discuss the potential specificity of HCI design, and the lack of cognitive design research occupied with the quality of design. We close our discussion of representational structures and activities by an outline of some directions regarding their functional linkages
    corecore