21 research outputs found

    Measuring Cognitive Activities in Software Engineering

    Get PDF
    This paper presents an approach to the study of cognitive activities in collaborative software development. This approach has been developed by a multidisciplinary team made up of software engineers and cognitive psychologists. The basis of this approach is to improve our understanding of software development by observing professionals at work. The goal is to derive lines of conduct or good practices based on observations and analyses of the processes that are naturally used by software engineers. The strategy involved is derived from a standard approach in cognitive science. It is based on the videotaping of the activities of software engineers, transcription of the videos, coding of the transcription, defining categories from the coded episodes and defining cognitive behaviors or dialogs from the categories. This project presents two original contributions that make this approach generic in software engineering. The first contribution is the introduction of a formal hierarchical coding scheme, which will enable comparison of various types of observations. The second is the merging of psychological and statistical analysis approaches to build a cognitive model. The details of this new approach are illustrated with the initial data obtained from the analysis of technical review meetings

    Towards a Model of Testers' Cognitive Processes: Software Testing as a Problem Solving Approach

    Get PDF
    Software testing is a complex, intellectual activity based (at least) on analysis, reasoning, decision making, abstraction and collaboration performed in a highly demanding environment. Naturally, it uses and allocates multiple cognitive resources in software testers. However, while a cognitive psychology perspective is increasingly used in the general software engineering literature, it has yet to find its place in software testing. To the best of our knowledge, no theory of software testers' cognitive processes exists. Here, we take the first step towards such a theory by presenting a cognitive model of software testing based on how problem solving is conceptualized in cognitive psychology. Our approach is to instantiate a general problem solving process for the specific problem of creating test cases. We then propose an experiment for testing our cognitive test design model. The experiment makes use of verbal protocol analysis to understand the mechanisms by which human testers choose, design, implement and evaluate test cases. An initial evaluation was then performed with five software engineering master students as subjects. The results support a problem solving-based model of test design for capturing testers' cognitive processes.Comment: (v3) minor issues fixed, Accepted and presented in the IEEE International Workshop on Human and Social Aspects of Software Quality (HASQ 2020

    Towards a Model of Testers\u27 Cognitive Processes: Software Testing as a Problem Solving Approach

    Get PDF
    Software testing is a complex, intellectual activity based (at least) on analysis, reasoning, decision making, abstraction and collaboration performed in a highly demanding environment. Naturally, it uses and allocates multiple cognitive resources in software testers. However, while a cognitive psychology perspective is increasingly used in the general software engineering literature, it has yet to find its place in software testing. To the best of our knowledge, no theory of software testers\u27 cognitive processes exists. Here, we take the first step towards such a theory by presenting a cognitive model of software testing based on how problem solving is conceptualized in cognitive psychology. Our approach is to instantiate a general problem solving process for the specific problem of creating test cases. We then propose an experiment for testing our cognitive test design model. The experiment makes use of verbal protocol analysis to understand the mechanisms by which human testers choose, design, implement and evaluate test cases. An initial evaluation was then performed with five software engineering master students as subjects. The results support a problem solving-based model of test design for capturing testers\u27 cognitive processes

    A Cognitive Model for Meetings in the Software Development Process

    Get PDF
    Meetings are at the heart of the software development process (SDP) and can be of different types. The present article first proposes an abstract cognitive model for meetings, which represents how different types of meetings are affected by cognitive activities at different stages within the SDP. Second, and based on the analysis of meetings at different stages of SDP, it proposes the removal of such meetings from some of the stages within the program by using a cognitive evaluation model for meetings and their replacement, instead, with information and communication technology tools and techniques by means of a cognitive evaluation model. The abstract cognitive model and the evaluation model are validated empirically through experimentation, carried out through a detailed analysis of a target group composed of information technology professionals. C � 2011Wiley Periodicals, Inc
    corecore