59,566 research outputs found
The Co-Evolution of Test Maintenance and Code Maintenance through the lens of Fine-Grained Semantic Changes
Automatic testing is a widely adopted technique for improving software
quality. Software developers add, remove and update test methods and test
classes as part of the software development process as well as during the
evolution phase, following the initial release. In this work we conduct a large
scale study of 61 popular open source projects and report the relationships we
have established between test maintenance, production code maintenance, and
semantic changes (e.g, statement added, method removed, etc.). performed in
developers' commits.
We build predictive models, and show that the number of tests in a software
project can be well predicted by employing code maintenance profiles (i.e., how
many commits were performed in each of the maintenance activities: corrective,
perfective, adaptive). Our findings also reveal that more often than not,
developers perform code fixes without performing complementary test maintenance
in the same commit (e.g., update an existing test or add a new one). When
developers do perform test maintenance, it is likely to be affected by the
semantic changes they perform as part of their commit.
Our work is based on studying 61 popular open source projects, comprised of
over 240,000 commits consisting of over 16,000,000 semantic change type
instances, performed by over 4,000 software engineers.Comment: postprint, ICSME 201
Pedagogy First, Technology Second: teaching & learning information literacy online
This paper explores the pedagogical and technical issues, challenges and outcomes of creating an online information literacy course. Currently under development, this course will be offered as a parallel study option to Advanced Information Retrieval Skills (AIRS:IFN001 ) for QUT postgraduate students, a compulsory face-to-face course for all QUT research students. The aim of this project is to optimise students’ access to AIRS:IFN001 and meet the University’s objectives regarding flexible delivery and online teaching. Still in its developmental stages, AIRS::Online extends beyond the current notion of static online information literacy tutorials by providing a facilitated, student focussed learning environment comprising content and learning experiences enhanced by appropriate multimedia technology and resources which engage students in planned facilitated and/or self-paced learning events. Course assessment is formative and summative, and is comprised of a research log and reflective journal to provide a means for reviewing the content and key process of advanced information searching and retrieval
Smart objects as building blocks for the internet of things
The combination of the Internet and emerging technologies such as nearfield communications, real-time localization, and embedded sensors lets us transform everyday objects into smart objects that can understand and react to their environment. Such objects are building blocks for the Internet of Things and enable novel computing applications. As a step toward design and architectural principles for smart objects, the authors introduce a hierarchy of architectures with increasing levels of real-world awareness and interactivity. In particular, they describe activity-, policy-, and process-aware smart objects and demonstrate how the respective architectural abstractions support increasingly complex application
Embedding Spatial Software Visualization in the IDE: an Exploratory Study
Software visualization can be of great use for understanding and exploring a
software system in an intuitive manner. Spatial representation of software is a
promising approach of increasing interest. However, little is known about how
developers interact with spatial visualizations that are embedded in the IDE.
In this paper, we present a pilot study that explores the use of Software
Cartography for program comprehension of an unknown system. We investigated
whether developers establish a spatial memory of the system, whether clustering
by topic offers a sound base layout, and how developers interact with maps. We
report our results in the form of observations, hypotheses, and implications.
Key findings are a) that developers made good use of the map to inspect search
results and call graphs, and b) that developers found the base layout
surprising and often confusing. We conclude with concrete advice for the design
of embedded software maps.Comment: To appear in proceedings of SOFTVIS 2010 conferenc
Grand Challenges of Traceability: The Next Ten Years
In 2007, the software and systems traceability community met at the first
Natural Bridge symposium on the Grand Challenges of Traceability to establish
and address research goals for achieving effective, trustworthy, and ubiquitous
traceability. Ten years later, in 2017, the community came together to evaluate
a decade of progress towards achieving these goals. These proceedings document
some of that progress. They include a series of short position papers,
representing current work in the community organized across four process axes
of traceability practice. The sessions covered topics from Trace Strategizing,
Trace Link Creation and Evolution, Trace Link Usage, real-world applications of
Traceability, and Traceability Datasets and benchmarks. Two breakout groups
focused on the importance of creating and sharing traceability datasets within
the research community, and discussed challenges related to the adoption of
tracing techniques in industrial practice. Members of the research community
are engaged in many active, ongoing, and impactful research projects. Our hope
is that ten years from now we will be able to look back at a productive decade
of research and claim that we have achieved the overarching Grand Challenge of
Traceability, which seeks for traceability to be always present, built into the
engineering process, and for it to have "effectively disappeared without a
trace". We hope that others will see the potential that traceability has for
empowering software and systems engineers to develop higher-quality products at
increasing levels of complexity and scale, and that they will join the active
community of Software and Systems traceability researchers as we move forward
into the next decade of research
- …