English
Related papers

Related papers: Software Carpentry: Lessons Learned

200 papers

Best practices in programming need to be emphasized in a CS1 course as bad student habits persist if not reinforced well. The C++ programming language, although a relatively old language, has been regularly updated with new versions since…

Computers and Society · Computer Science 2023-11-15 Ryan E. Dougherty

The work of astronomers is getting more complex and advanced as the progress of computer development occurs. With improved computing capabilities and increased data flow, more sophisticated software is required in order to interpret, and…

Instrumentation and Methods for Astrophysics · Physics 2015-05-19 Kim K. Nilsson , Ole Moeller-Nilsson

Multiple supervised learning scenarios are composed by a sequence of classification tasks. For instance, multi-task learning and continual learning aim to learn a sequence of tasks that is either fixed or grows over time. Existing…

Machine Learning · Statistics 2025-01-10 Verónica Álvarez , Santiago Mazuelas , Jose A. Lozano

The continuous software engineering paradigm is gaining popularity in modern development practices, where the interleaving of design and runtime activities is induced by the continuous evolution of software systems. In this context,…

Software Engineering · Computer Science 2024-01-31 Romina Eramo , Michele Tucci , Daniele Di Pompeo , Vittorio Cortellessa , Antinisca Di Marco , Davide Taibi

End to end learning is machine learning starting in raw data and predicting a desired concept, with all steps done automatically. In software engineering context, we see it as starting from the source code and predicting process metrics.…

Software Engineering · Computer Science 2021-12-23 Idan Amit

The activities of requirements engineering and software testing are intrinsically related to each other, as these two areas are linked when seeking to specify and also ensure the expectations of a software product, with quality and on time.…

Software Engineering · Computer Science 2023-04-27 Thalia S. Santana , Taciana N. Kudo , Renato F. Bulcão-Neto

The advancements in machine learning techniques have encouraged researchers to apply these techniques to a myriad of software engineering tasks that use source code analysis, such as testing and vulnerability detection. Such a large number…

Software Engineering · Computer Science 2022-09-14 Tushar Sharma , Maria Kechagia , Stefanos Georgiou , Rohit Tiwari , Indira Vats , Hadi Moazen , Federica Sarro

As modern software systems continue inexorably to increase in complexity and capability, users have become accustomed to periodic cycles of updating and upgrading to avoid obsolescence -- if at some cost in terms of frustration. In the case…

Software Engineering · Computer Science 2015-10-09 Jeffrey Hughes , Cassandra Sparks , Alley Stoughton , Rinku Parikh , Albert Reuther , Suresh Jagannathan

Quadruped robots have emerged as an evolving technology that currently leverages simulators to develop a robust controller capable of functioning in the real-world without the need for further training. However, since it is impossible to…

Robotics · Computer Science 2023-11-14 Giovanni Minelli , Vassilis Vassiliades

Researchers have recently achieved significant advances in deep learning techniques, which in turn has substantially advanced other research disciplines, such as natural language processing, image processing, speech recognition, and…

Computation nowadays is becoming inherently concurrent, either because of characteristics of the hardware (with multicore processors becoming omnipresent) or due to the ubiquitous presence of distributed systems (incarnated in the…

Software Engineering · Computer Science 2011-08-01 Mohammad Reza Mousavi , Antonio Ravara

Engineering software systems is a multidisciplinary activity, whereby a number of artifacts must be created - and maintained - synchronously. In this paper we investigate whether production code and the accompanying tests co-evolve by…

Software Engineering · Computer Science 2007-05-25 Andy Zaidman , Bart Van Rompaey , Serge Demeyer , Arie van Deursen

Software engineering concepts and processes are worthy of formal study; and yet we seldom formalize them. This "research ideas" article explores what a theory of software engineering could and should look like. Software engineering research…

Software Engineering · Computer Science 2025-02-25 Bertrand Meyer

Spreadsheet engineering adapts the lessons of software engineering to spreadsheets, providing eight principles as a framework for organizing spreadsheet programming recommendations. Spreadsheets raise issues inadequately addressed by…

Software Engineering · Computer Science 2024-12-31 Thomas A. Grossman

The necessity to adapt current products and services into a way of working environmentally friendly is already a social and economic demand. Although the GreenIT can be considered a mature discipline, software sustainability, both in its…

Software Engineering · Computer Science 2014-01-23 Coral Calero , M. Angeles Moraga , Manuel F. Bertoa

Rapid improvements in machine learning over the past decade are beginning to have far-reaching effects. For communications, engineers with limited domain expertise can now use off-the-shelf learning packages to design high-performance…

Information Theory · Computer Science 2019-01-25 Mengke Lian , Christian Häger , Henry D. Pfister

This report records and discusses the Third Workshop on Sustainable Software for Science: Practice and Experiences (WSSSPE3). The report includes a description of the keynote presentation of the workshop, which served as an overview of…

Development of scientific and engineering software is usually different and could be more challenging than the development of conventional enterprise software. The authors were involved in a technology-transfer project between academia and…

Software Engineering · Computer Science 2020-03-03 Vahid Garousi , Ehsan Abbasi , Bedir Tekinerdogan

In this paper, we present our experience based on a reengineering project. The software project is to re-engineer the original system of a company to answer the new requirements and changed business functions. Reengineering is a process…

Software Engineering · Computer Science 2012-06-20 Waraporn Jirapanthong

Cloud computing is the next stage of the internet evolution. It relies on sharing of resources to achieve coherence on a network. It is emerged as new computing standard that impacts several different research fields, including software…

Software Engineering · Computer Science 2014-02-11 Priyadharshini. V , Malathi. A