807,683 research outputs found
Recommended from our members
Scientists and software engineers: A tale of two cultures
The two cultures of the title are those observed in my field studies: the culture of scientists (financial
mathematicians, earth and planetary scientists, and molecular biologists) developing their own software, and the culture of software engineers developing scientific software. In this paper, I shall describe some problems arising when scientists and software engineers come together to develop scientific software and discuss how these problems may be ascribed to their two different cultures
Sustainable Software Ecosystems: Software Engineers, Domain Scientists, and Engineers Collaborating for Science
The development of scientific software is often a partnership between domain
scientists and scientific software engineers. It is especially important to
embrace these collaborations when developing advanced scientific software,
where sustainability, reproducibility, and extensibility are important. In the
ideal case, as discussed in this manuscript, this brings together teams
composed of the world's foremost scientific experts in a given field with
seasoned software developers experienced in forming highly collaborative teams
working on software to further scientific research.Comment: 4 pages, submission for WSSSPE
Simplifying the Development, Use and Sustainability of HPC Software
Developing software to undertake complex, compute-intensive scientific
processes requires a challenging combination of both specialist domain
knowledge and software development skills to convert this knowledge into
efficient code. As computational platforms become increasingly heterogeneous
and newer types of platform such as Infrastructure-as-a-Service (IaaS) cloud
computing become more widely accepted for HPC computations, scientists require
more support from computer scientists and resource providers to develop
efficient code and make optimal use of the resources available to them. As part
of the libhpc stage 1 and 2 projects we are developing a framework to provide a
richer means of job specification and efficient execution of complex scientific
software on heterogeneous infrastructure. The use of such frameworks has
implications for the sustainability of scientific software. In this paper we
set out our developing understanding of these challenges based on work carried
out in the libhpc project.Comment: 4 page position paper, submission to WSSSPE13 worksho
Building the Scientific Modeling Assistant: An interactive environment for specialized software design
The construction of scientific software models is an integral part of doing science, both within NASA and within the scientific community at large. Typically, model-building is a time-intensive and painstaking process, involving the design of very large, complex computer programs. Despite the considerable expenditure of resources involved, completed scientific models cannot easily be distributed and shared with the larger scientific community due to the low-level, idiosyncratic nature of the implemented code. To address this problem, we have initiated a research project aimed at constructing a software tool called the Scientific Modeling Assistant. This tool provides automated assistance to the scientist in developing, using, and sharing software models. We describe the Scientific Modeling Assistant, and also touch on some human-machine interaction issues relevant to building a successful tool of this type
Report on the Third Workshop on Sustainable Software for Science: Practice and Experiences (WSSSPE3)
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 sustainable scientific software. It also summarizes a set of
lightning talks in which speakers highlighted to-the-point lessons and
challenges pertaining to sustaining scientific software. The final and main
contribution of the report is a summary of the discussions, future steps, and
future organization for a set of self-organized working groups on topics
including developing pathways to funding scientific software; constructing
useful common metrics for crediting software stakeholders; identifying
principles for sustainable software engineering design; reaching out to
research software organizations around the world; and building communities for
software sustainability. For each group, we include a point of contact and a
landing page that can be used by those who want to join that group's future
activities. The main challenge left by the workshop is to see if the groups
will execute these activities that they have scheduled, and how the WSSSPE
community can encourage this to happen
Some challenges facing scientific software developers: The case of molecular biology
It is apparent that the challenges facing scientific software developers are quite different from those facing their commercial counterparts. Among these differences are the challenges posed by the complex and uncertain nature of the science. There is also the fact that many scientists have experience of developing their own software, albeit in a very restricted setting, leading them to have unrealistic expectations about software development in a different setting. In this paper, we explore the challenges facing scientific software developers focusing especially on molecular biology. We claim that the nature and practice of
molecular biology is quite different from that of the physical sciences and pose different problems to software developers. We do not claim that this paper is the last word on the topic but hope that it serves as the inspiration for further debate
Constructing an advanced software tool for planetary atmospheric modeling
Scientific model building can be an intensive and painstaking process, often involving the development of large and complex computer programs. Despite the effort involved, scientific models cannot be easily distributed and shared with other scientists. In general, implemented scientific models are complex, idiosyncratic, and difficult for anyone but the original scientist/programmer to understand. We believe that advanced software techniques can facilitate both the model building and model sharing process. In this paper, we describe a prototype for a scientific modeling software tool that serves as an aid to the scientist in developing and using models. This tool includes an interactive intelligent graphical interface, a high level domain specific modeling language, a library of physics equations and experimental datasets, and a suite of data display facilities. Our prototype has been developed in the domain of planetary atmospheric modeling, and is being used to construct models of Titan's atmosphere
Agile software development and service science
This paper shows the necessary steps, which should be taken in order to get the most out of agile software development in interdisciplinary settings involving scientific experts. If applied properly, Agile delivers increased productivity, higher quality and, last but not least, higher customer satisfaction. The task of developing high quality software is already difficult. Developing software for a new IT-enabled service in an interdisciplinary team however, is even more challenging.
In interdisciplinary projects scientific experts from different fields need to work together with computer scientists, developers, testers, business analysts and domain experts. Software engineering is very time-consuming and scientific experts who have never been involved in a software project, often find it hard to understand why progress sometimes seems so slow. Therefore, it is important that they understand what it takes to write high- quality code, i.e. code that is clean, tested, documented and extendable at the right points. The best way to achieve this goal is to expand the software team, make the scientific experts an integral part of it and thus profit from their know-how
- …