Papers by Steve Easterbrook
Proceedings of the 2016 ACM Conference on International Computing Education Research - ICER '16, 2016
Although it has never been rigourously demonstrated, there is a common belief that CS grades are ... more Although it has never been rigourously demonstrated, there is a common belief that CS grades are bimodal. We statistically analyzed 778 distributions of final course grades from a large research university, and found only 5.8% of the distributions passed tests of multimodality. We then devised a psychology experiment to understand why CS educators believe their grades to be bimodal. We showed 53 CS professors a series of histograms displaying ambiguous distributions and asked them to categorize the distributions. A random half of participants were primed to think about the fact that CS grades are commonly thought to be bimodal; these participants were more likely to label ambiguous distributions as "bimodal". Participants were also more likely to label distributions as bimodal if they believed that some students are innately predisposed to do better at CS. These results suggest that bimodal grades are instructional folklore in CS, caused by confirmation bias and instructor beliefs about their students.
* Supported by Bell Canada through the Bell University Labs, NSERC and Ontario Centres Of Excelle... more * Supported by Bell Canada through the Bell University Labs, NSERC and Ontario Centres Of Excellence markable duality between them. The results of the paper can then be seen as an (important yet) particular case of this general duality theory. Contents 3 Sample scenario 3.1 Example of relational schema integration
ABSTRACT Distributed cognition is a theoretical and methodological framework that considers socia... more ABSTRACT Distributed cognition is a theoretical and methodological framework that considers social groups, their artifacts, and their contexts as a single cognitive entity working towards the solution of a shared problem. In this paper we briefly describe the framework and consider its strengths and weaknesses as a theoretical foundation for software engineering research. We propose a series of techniques to address the methodological problems that the application of the framework entails in our research field. Finally, we ...
Abstract This paper describes the role of Verification and Validation (V&V) during the requir... more Abstract This paper describes the role of Verification and Validation (V&V) during the requirements and high level design processes, and in particular the role of Independent V&V (IV&V). The job of IV&V during these phases is to ensure that the requirements are ...
2011 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), 2011
Inflo is a web-based tool designed to support quantitative decision-making problems such as carbo... more Inflo is a web-based tool designed to support quantitative decision-making problems such as carbon calculators. Using the dataflow programming paradigm, Inflo provides an extensible environment for end-user programming. Inflo is built around the idea of collaboration and openness for opportunistic code-reuse and unplanned code sharing.
Proceeding of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications - OOPSLA '09, 2009
Lecture Notes in Computer Science, 2001
Multi-valued logics support the explicit modeling of uncertainty and disagreement by allowing add... more Multi-valued logics support the explicit modeling of uncertainty and disagreement by allowing additional truth values in the logic. Such logics can be used for verification of dynamic properties of systems even where complete, agreed upon models of the system are not available. In this paper, we present an implementation of a symbolic model checker for multi-valued temporal logics. The model checkerworks for any multi-valued logic whose truth values form a quasi-boolean lattice. Our models are generalized Kripke structures, where both atomic propositions and transitions between states may take any of the truth values of a given multi-valued logic. Properties to be model checked are expressed in CTL, generalized with a multi-valued semantics. The design of the model checker is based on the use of MDDs, a multi-valued extension of Binary Decision Diagrams. We describe MDDs and their use in the model checker. We also give its theoretical time complexity and some preliminary empirical performance data.
Lecture Notes in Computer Science, 2007
Early aspects are stakeholder concerns that crosscut the problem domain, with the potential for a... more Early aspects are stakeholder concerns that crosscut the problem domain, with the potential for a broad impact on questions of scoping, prioritization, and architectural design. Analyzing early aspects improves early stage decision-making, and helps trace stakeholder interests throughout the software development life cycle. However, analysis of early aspects is hard because stakeholders are often vague about the concepts involved, and
2007 Sixth International IEEE Conference on Commercial-off-the-Shelf (COTS)-Based Software Systems (ICCBSS'07), 2007
IEEE Software, 2015
The critical role that software plays in society demands a paradigm shift in the mindset of Softw... more The critical role that software plays in society demands a paradigm shift in the mindset of Software Engineering. The focus of this shift begins in Requirements Engineering.
Proceedings of the eleventh annual International Conference on International Computing Education Research - ICER '15, 2015
Computer Supported Cooperative Work, 1996
This chapter address the question of why requirements gathering for CSCW systems is substantially... more This chapter address the question of why requirements gathering for CSCW systems is substantially different (harder) than other types of computer system, by considering (i) that single user systems often are only useful because users are so flexible; (ii) that we don't really understand how collaboration works, and hence whether collaborative activities are as flexible; and (iii) that field studies of work activities may tell us much about how that work is arranged, but give us virtually no ideal about how the activities will change as a result of introduction of computer support. The chapter then sketches out a framework for understanding the dynamics of change in work activities, based (loosely) on the role of coordination mechanisms in development and breakdown of shared understanding. This framework is applicable to both the requirements gathering for and user evaluation of CSCW systems. For requirements gathering, it provides a checklist of coordination mechanisms to guide the study of existing work practices. For evaluation of CSCW it uses the key notion of a "coordination breakdown" as an observable phenomenon in use of CSCW systems, with the framework providing a way of diagnosing problems that lead to such breakdowns.
14th IEEE International Requirements Engineering Conference (RE'06), 2006
... These find-ings not only enable us to gain insights into stakeholders' use of terminolog... more ... These find-ings not only enable us to gain insights into stakeholders' use of terminologies and concepts ... Managing terminological interference is fundamental and important in RE when multiple stakeholders and per-spectives are ... The personal construction of information space. ...
Proceedings of the 2006 conference of the Center for Advanced Studies on Collaborative research - CASCON '06, 2006
Software architecture can be a critical factor in software development. Understanding what softwa... more Software architecture can be a critical factor in software development. Understanding what software architects do in practice is necessary to the enterprise of providing techniques, methods, process, tools and technologies to support the development and use of software architecture. In this paper, we present the results of how architects handle requirements in practice. We then summarize the key lessons learned from the study.
ACM SIGSOFT Software Engineering Notes, 2006
A key problem in view-based software development is merging a set of disparate views into a singl... more A key problem in view-based software development is merging a set of disparate views into a single seamless view. To merge a set of views, we need to know how they are related. In this extended abstract, we discuss the methodological aspects of describing the relationships between views. We argue that view relationships should be treated as first-class artifacts in the merge problem and propose a general approach to view merging based on this argument. We illustrate the usefulness of our approach by instantiating it to the state-machine modelling domain and developing a flexible tool for merging state-machines.
Uploads
Papers by Steve Easterbrook