Identifying and Qualifying Reusable Software Components
Computer - Special issue on cryptography
A Bayesian model of plan recognition
Artificial Intelligence
A case study of open source software development: the Apache server
Proceedings of the 22nd international conference on Software engineering
Palantír: raising awareness among configuration management workspaces
Proceedings of the 25th International Conference on Software Engineering
Probabilistic Student Modelling to Improve Exploratory Behaviour
User Modeling and User-Adapted Interaction
Reducing wasted development time via continuous testing
ISSRE '03 Proceedings of the 14th International Symposium on Software Reliability Engineering
An experimental evaluation of continuous testing during development
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Predicting Source Code Changes by Mining Change History
IEEE Transactions on Software Engineering
Group awareness in distributed software development
CSCW '04 Proceedings of the 2004 ACM conference on Computer supported cooperative work
Understanding email use: predicting action on a message
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Mining Version Histories to Guide Software Changes
IEEE Transactions on Software Engineering
Using task context to improve programmer productivity
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
FASTDash: a visual dashboard for fostering awareness in software teams
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Introduction to Software Testing
Introduction to Software Testing
Automatically finding patches using genetic programming
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Learning from examples to improve code completion systems
Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Automatically patching errors in deployed software
Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles
Online inference and enforcement of temporal properties
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
Proceedings of the 2010 ICSE Workshop on Cooperative and Human Aspects of Software Engineering
Proactive detection of collaboration conflicts
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
Crystal: precise and unobtrusive conflict warnings
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
Proceedings of the ACM 2012 conference on Computer Supported Cooperative Work
Learning from the future of component repositories
Proceedings of the 15th ACM SIGSOFT symposium on Component Based Software Engineering
Improving IDE recommendations by considering global implications of existing recommendations
Proceedings of the 34th International Conference on Software Engineering
Speculative analysis of integrated development environment recommendations
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Making offline analyses continuous
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
Data debugging with continuous testing
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
Hi-index | 0.00 |
Most software tools and environments help developers analyze the present and past development states of their software systems. Few approaches have investigated the potential consequences of future actions the developers may perform. The commoditization of hardware, multi-core architectures, and cloud computing provide new potential for delivering apparently-instantaneous feedback to developers, informing them of the effects of changes that they may be considering to the software. For example, modern IDEs often provide "quick fix" suggestions for resolving compilation errors. Developers must scan this list and select the option they think will resolve the problem. Instead, we propose that the IDE should speculatively perform each of the suggestions in the background and provide information that helps developers select the best option for the given context. We believe the feedback enabled by speculative operations can improve developer productivity and software quality.