Janice Singer

Janice Singer
National Research Council Canada | NRC · Information and Communications Technologies

About

84
Publications
67,003
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
5,990
Citations

Publications

Publications (84)
Conference Paper
We know surprisingly little about how professional developers define debugging and the challenges they face in industrial environments. To begin exploring professional debugging challenges and needs, we conducted and analyzed interviews with 15 professional software engineers at Microsoft. The goals of this study are: 1) to understand how professio...
Article
Software is created by people -- software engineers in cooperation with domain experts, users and other stakeholders--in varied environments, under various conditions. Thus understanding cooperative and human aspects of software development is crucial to comprehend how and which methods and tools are required, to improve the creation and maintenanc...
Article
Full-text available
Thanks to the emergence of digital video, producing and distributing video is now possible in ways that were previously limited to video production companies. Yet the functions of current digital media players differ little from the VCRs play, rewind, fast-forward, and pause functions, which may not support learning tasks appropriately. Therefore,...
Article
In this chapter we describe various techniques for studying and representing the work of software engineers1 (SEs) and using the results to develop requirements for software engineering tools.
Article
Full-text available
Software is developed by people, used by people, and supports interaction among people. As such, human characteristics and cooperation are central to modern practical software construction. While human aspects were recognized as important over 30 years ago, recent changes in the software domain have made cooperative and human aspects of software en...
Article
Full-text available
Software engineering research (SE) as research on computer supported cooperative work (CSCW) is discussed. CSCW, as is well-known, is firmly based on a worldview that stresses the role of human actors in the production of technical artifacts, and in particular how best to understand the cooperative engagements that inevitably underpin human activit...
Article
Tools help end users develop software, but they're effective only when combined with a basic understanding of software engineering. Given this proliferation of new and old capabilities, how will end users exploit the programming possibilities available to them? Will tools to support end users be enough - or should everyone be taught some form of so...
Article
Developers frequently add annotations to source code to help them remember pertinent information and mark locations of interest for future investigation. Finding and refinding these notes is a form of navigation that is integral to software maintenance. Although there is some tool support in modern development environments for authoring and navigat...
Article
Full-text available
New knowledge in science and engineering relies increasingly on results produced by scientific software. Therefore, knowing how scientists develop and use software in their research is critical to assessing the necessity for improving current development practices and to making decisions about the future allocation of resources. To that end, this p...
Conference Paper
The CHASE 2009 workshop is concerned with exploring the cooperative and human aspects of software engineering, and providing a forum for discussing high-quality research. Accepted papers reflect the diversity of the field of software engineering - ranging from requirements to testing, and from ethnographic research to experiments. Moreover, the bac...
Article
An action research project involving scientists from the National Research Council Canada and the Institute for Ocean Technology analyzed difficulties in using software to collect data and manage processes. The project identified three requirements for increasing research productivity: ease of use for end users, managing scientific workflows, and f...
Article
Full-text available
This study analyzes short vlogs posted to YouTube in order to investigate how women and men communicate using vlogs and react as viewers to vlogs. Vlogs are visual texts that are user-generated. Analyzing online videos presents a new challenge for researchers: traditionally, analysis of visual media and communication focused on either the productio...
Conference Paper
Full-text available
The CHASE 2008 workshop is concerned with exploring the cooperative and human aspects of software engineering, and providing a forum for discussing high-quality research. Accepted papers reflect diversity of the field of software engineering – ranging from requirements to testing, and from ethnographic research to experiments. Moreover, the backgro...
Conference Paper
Full-text available
Software development is a highly collaborative activity that requires teams of developers to continually manage and coordinate their programming tasks. In this paper, we describe an empirical study that explored how task annotations embedded within the source code play a role in how software developers manage personal and team tasks. We present fin...
Chapter
Full-text available
The popularity of empirical methods in software engineering research is on the rise. Surveys, experiments, metrics, case studies, and field studies are examples of empirical methods used to investigate both software engineering processes and products. The increased application of such methods has also brought about an increase in discussions about...
Chapter
Full-text available
Selecting a research method for empirical software engineering research is problematic because the benefits and challenges to using each method are not yet well catalogued. Therefore, this chapter describes a number of empirical methods available. It examines the goals of each and analyzes the types of questions each best addresses. Theoretical sta...
Chapter
Software engineering is an intensely people-oriented activity, yet little is known about how software engineers perform their work. In order to improve software engineering tools and practice, it is therefore essential to conduct field studies, i.e., to study real practitioners as they solve real problems. To aid this goal, we describe a series of...
Book
Empirical studies have become an integral element of software engineering research and practice. This unique text/reference includes chapters from some of the top international empirical software engineering researchers and focuses on the practical knowledge necessary for conducting, reporting and using empirical methods in software engineering. Pa...
Article
Full-text available
This paper describes an action research project that we undertook with National Research Council Canada (NRC) scientists. Based on discussions about their difficulties in using software to collect data and manage processes, we identified three requirements for increasing research productivity: ease of use for end- users; managing scientific workflo...
Article
Full-text available
User-generated online video (UGOV) is a dynamic information and communication technology (ICT) that may be a useful tool for enhancing interactive expression and democratic discourse. Our study examines the potential for UGOV to contribute to the virtual public sphere by analyzing both the content of YouTube videos and responses to them by YouTube...
Conference Paper
Full-text available
We have developed a new approach for software navigation called TagSEA (Tagging of Software Engineering Activities). TagSEA combines the notion of "waypointing" with "social tagging" to support programmers in defining navigational structures over a software system. In this paper we present the results from a case study series, conducted with profes...
Conference Paper
Full-text available
Global software teams face challenges when collaborating over long distances, such as communicating changes in the project. During a four-month case study at IBM Ottawa Software Lab we observed the collaboration patterns of a multi-site development project team. In this period, we inspected project documentation, interviewed team leaders, attended...
Article
Over the past decade we have performed a sustained series of qualitative studies of software development practice, focusing on social factors. Using an ethnographically-informed approach, we have addressed four areas of software practice: software quality ...
Article
Full-text available
This report analyzes recent literature and contributes expertise from researchers and practitioners in the field to develop good practice guidelines for multi-site videoconferencing - linking people in multiple sites with videoconferencing. Our goal was to develop effective, empowering and contextually-sensitive good practice guidelines that encour...
Conference Paper
Ever wonder how your tool would fare in the 'real world'? Think your tool excels where others have failed? Is your tool better than a software developer? How can your tool help a software developer? Have you asked these kinds of questions before? If so, then this mini-tutorial is focused on your needs. In the mini-tutorial, I will go over the basic...
Conference Paper
Full-text available
In this paper, we present NavTracks, a tool that supports browsing through software. NavTracks keeps track of the navigation history of software developers, forming associations between related files. These associations are then used as the basis for recommending potentially related files as a developer navigates the software system. We present the...
Article
Full-text available
Software engineering is an intensely people-oriented activity, yet too little is known about how designers, maintainers, requirements analysts and all other types of software engineers perform their work. In order to improve software engineering tools and practice, it is therefore essential to conduct field studies, i.e., to study real practitioner...
Article
Full-text available
Sociological and technical difficulties, such as a lack of informal encounters, can make it difficult for new members of noncollocated software development teams to learn from their more experienced colleagues. To address this situation, we have developed a tool, named Hipikat that provides developers with efficient and effective access to the grou...
Conference Paper
Any modification to a software system involves investigating the source code with the goal of understanding it. In turn, this investigation usually requires significant navigation effort. However, relatively little research has been conducted on software developer navigation patterns and tool support for improving navigation. Our research addresses...
Conference Paper
Full-text available
A layered architecture for advanced collaborative environments has been developed to map the definition of a collaboration task from the requirements needed, to accomplish the task to the collaboration services that can be used to satisfy those needs, and to the technologies on which the services can be delivered. The architecture takes into accoun...
Article
Full-text available
(Fictional Case) Dr. Themis and her team of university researchers are building tools to increase the productivity of software engineers. Their research is performed in collaboration with a company that may use the tools once they are developed. The first phase of the project is to conduct a requirements analysis. In service of this analysis, Dr. T...
Conference Paper
Full-text available
The lack of lightweight communication channels and other technical and sociological difficulties make it hard for new members of a non-collocated software development team to learn effectively from their more experienced colleagues while they are coming up-to-speed on a project. To address this situation, we have developed a tool, named Hipikat, th...
Article
Full-text available
Software engineering is a human task, and as such we must study what software engineers do and think. Understanding the normative practice of software engineering is the first step toward developing realistic solutions to better facilitate the engineering process. We conducted three studies using several data-gathering approaches to elucidate the p...
Article
Full-text available
The popularity of empirical methods in software engineering research is on the rise. Surveys, experiments, metrics, case studies, and field studies are examples of empirical methods used to investigate both software engineering processes and products. The increased application of empirical methods has also brought about an increase in discussions a...
Article
Full-text available
This paper describes the results of an interview study conducted at ten industrial sites. The interview focused on the work practices of software engineers engaged in maintaining large scale systems. Five `truths' emerged from this study. First, software maintenance engineers are experts in the systems they are maintaining. Second, source code is t...
Article
This paper reports our experiences studying the work practices of professional software engineers (SEs). We provide our reasons for following this approach, and describe details such as the discovery of work patterns, and the use of synchronized shadowing. We outline several studies we are currently conducting in a large telecommunications company...
Article
this paper. Please refer to the individual papers and/or books for further information
Article
Full-text available
The Knowledge Based Reverse Engineering Project is currently undertaking a study of a large group of telecommunications software engineers (SEs). From this endeavour, we have come to realize that the SEs in this group engage in three main activities, navigating the directory structure, using editors to view or change source, and grepping. This has...
Article
Full-text available
This paper presents work practice data of the daily activities of software engineers. Four separate studies are presented; one looking longitudinally at an individual SE; two looking at a software engineering group; and one looking at companywide tool usage statistics. We also discuss the advantages in considering work practices in designing tools...
Conference Paper
Full-text available
The paper presents a summary of multifaceted evaluation factors that we have identified through our research with Broadband Visual Communication (BVC) projects involving multiple stakeholders. The main benefit of these evaluation factors is that they provide a general evaluation framework for multiple stakeholder projects. The factors are social in...
Article
Full-text available
In this paper we explore how the software engineering research community is currently dealing with the ethical issues that some empirical research presents. We discuss how the immaturity of the software engineering discipline is reflected in an approach ...
Article
Full-text available
Research with Open Source Software (OSS) is not governed by federal regulations. However, it is fraught with ethical issues. Metrics researchers must become familiar with such issues and to proactively address them via the creation of ethical guidelines which detail appropriate use of OSS in research situations.
Article
Full-text available
were extensive discussions on the nature of evidence necessary to construct convincingargumnci and theme5+zj required to produce this evidence. Keywocu Software engineering,emgineer mginee mgineering,58)jj research. 1. BACKGROUND In recent years there has been an increase in interest in studying software engineering emzjW5G(+z . There are now sever...
Article
Full-text available
This paper reports our experiences studying the work practices of professional software engineers(SEs) with the goal of designing tools that enhance, rather than displace or replace, these work practices. The rationale being that the tools we build will actually be used because they have been created to mesh with existing behaviour. We provide our...
Article
Full-text available
The Personal Software Process (PSP) has during the last couple of years gained attention as a way to individual improvements in software development. The PSP is introduced to students and engineers through a course, which introduces a personal ...
Article
Full-text available
In this position paper we discuss research into tools for software maintenance, where tools include everything from large scale integrated CASE products down to simple one-function commands or features. The objective of this research is to learn more about software engineers' work with and needs for tools, so that they can become more productive. W...
Conference Paper
The goal of this workshop is to provide an interactive forum for software engineers and empirical researchers to investigate the feasibility of applying proven methods from other research disciplines to software engineering research. Participants submitted position papers describing problems that might benefit from a multidisciplinary approach. Exp...
Article
SUMMARY We suggest that empirical studies of maintenance are difficult to understand unless the context of the study is fully defined. We developed a preliminary ontology to identify a number of factors that influence maintenance. The purpose of the ontology is to identify factors that would affect the results of empirical studies. We present the o...
Article
Full-text available
2 There are many things to be learned about software engineering by working directly with software practitioners in companies. In this paper, we present an overview of some of the techniques for performing such field studies, focusing on such issues as: What kind of problems can be addressed by field studies? What techniques are available for gathe...
Article
Full-text available
Abstracts provide a summary of the paper. They should include the research hypotheses, population studied and quick review of results. They should also briefly indicate the experimental methodology. An abstract has two purposes: 1) it allows the reader to decide if the article is of interest; and 2) it allows researchers to locate and retrieve arti...
Conference Paper
This paper describes the results of an interview study conducted at ten industrial sites. The interview focused on the work practices of software engineers engaged in maintaining large scale systems. Five `truths' emerged from this study. First, software maintenance engineers are experts in the systems they are maintaining. Second, source code is t...
Conference Paper
Full-text available
This paper reports our experiences studying the work practices of professional software engineers (SEs). We provide our reasons for following this approach, and describe details such as the discovery of work patterns, and the use of synchronized shadowing. We outline several studies we are currently conducting in a large telecommunications company...
Conference Paper
Full-text available
This paper presents work practice data of the daily activities of software engineers. Four separate studies are presented; one looking longitudinally at an individual SE; two looking at a software engineering group; and one looking at company-wide tool usage statistics. We also discuss the advantages in considering work practices in designing tools...
Article
This research describes an intensive study undertaken to determine children's representational strategies for relational numbers (e.g. proportions, ratios, fractions). Relational numbers have three quantities associated with them: a whole and two parts. Given these three quantities, children can form a representation based on a part-whole relations...
Conference Paper
Full-text available
The View Matcher is a structured browser for Smalltalk/V. It presents a set of integrated and dynamic views of a running application, intended to coordinate and rationalize a programmer's early understanding of Smalltalk and its environment. We describe the system through two user scenarios involving exploration of the model-view-controller paradig...
Conference Paper
Full-text available
This paper will discuss a framework and methodology for understanding the use of computers in collaborative learning. In particular, we are interested in how learning occurs when students work together using a computer microworld. Collaborative settings provide a particularly rich environment for studying learning. Many theorists (see Brown and Pal...
Article
This paper presents work practice data of the daily activities of software engineers. Four separate studies are presented; one looking longitudinally at an individual SE; two looking at a software engineering group; and one looking at company-wide tool usage statistics. We also discuss the advantages in considering work practices in designing tools...
Article
Full-text available
1 The authors appear in alphabetical order and contributed equally.
Article
We develop some specific hypotheses about the origins and development of ratio and proportional reasoning in children. Evidence suggests that very young children have important intuitions about densities and rates. These intuitions, which are exercised and developed in the course of everyday experience with the physical and social world, often allo...
Article
lays the groundwork for a theory of the intuitive origins of proportion and ratio reasoning / argue that children have a set of protoquantitative schemas that allow them to reason about ratio- and proportionlike relations without using numbers / among others, (a) a fittingness schema—or the idea that two things go together based on an external dime...
Article
This report summarizes the presentations and discussion of a half-day workshop held at CASCON98. The theme of the workshop, "Building Software Tools for People," indicates the importance of considering users, their habits, their work environments, and their organizations when constructing software engineering tools. There were five presenters from...
Article
The domain of Advanced Collaborative Environments (ACE) is rapidly evolving. Advanced computation, display, storage, sensor, interaction, and networking technologies provide us with a wealth of mechanisms with which to explore complex scientific phenomena. This is especially true in the academic research community where large-scale computational co...
Article
Full-text available
This study analyzes short vlogs posted to YouTube in order to investigate how and why people communicate using vlogs, and how viewers react to vlogs. Vlogs are of particular interest because they are visual texts that are user-generated. Vloggers engage with videos on several levels – they are both the encoders and the decoders, both the producers...
Article
Full-text available
This study analyzes short vlogs posted to YouTube in order to investigate how women and men communicate using vlogs and react as viewers to vlogs. Vlogs are visual texts that are user-generated. Analyzing online videos presents a new challenge for researchers: traditionally, analysis of visual media and communication focused on either the productio...
Article
Full-text available
Thanks to YouTube and other video sharing websites, over a short period of time millions of ordinary people have become regular viewers and creators of user-generated online videos. In this paper we explore how users react to these videos and differences among user groups. Our exploratory study of 60 YouTube users found that women and men, communit...
Article
Full-text available
Digital video creates the potential for several new browsing controls that could not be implemented on VCRs (which play analogue media), such as random access to video segments, looping, segment preview by thumbnails, slide bar, and other indexing mechanisms supporting video browsing. Previous research has indicated that the use of different media...
Article
Full-text available
Collaborative environments have the potential of truly supporting distributed teams but there are still a number of barriers preventing seamless collaboration. These barriers are a result of problems in the following four domains: 1) a lack of understanding of the tasks that people perform when they are collaborating; 2) a lack of understanding and...

Network

Cited By