105,477 research outputs found
Software Engineering as Instrumentation for the Long Tail of Scientific Software
The vast majority of the long tail of scientific software, the myriads of
tools that implement the many analysis and visualization methods for different
scientific fields, is highly specialized, purpose-built for a research project,
and has to rely on community uptake and reuse for its continued development and
maintenance. Although uptake cannot be controlled over even guaranteed, some of
the key factors that influence whether new users or developers decide to adopt
an existing tool or start a new one are about how easy or difficult it is to
use or enhance a tool for a purpose for which it was not originally designed.
The science of software engineering has produced techniques and practices that
would reduce or remove a variety of barriers to community uptake of software,
but for a variety of reasons employing trained software engineers as part of
the development of long tail scientific software has proven to be challenging.
As a consequence, community uptake of long tail tools is often far more
difficult than it would need to be, even though opportunities for reuse abound.
We discuss likely reasons why employing software engineering in the long tail
is challenging, and propose that many of those obstacles could be addressed in
the form of a cross-cutting non-profit center of excellence that makes software
engineering broadly accessible as a shared service, conceptually and in its
effect similar to shared instrumentation.Comment: 4 page
ImageJ2: ImageJ for the next generation of scientific image data
ImageJ is an image analysis program extensively used in the biological
sciences and beyond. Due to its ease of use, recordable macro language, and
extensible plug-in architecture, ImageJ enjoys contributions from
non-programmers, amateur programmers, and professional developers alike.
Enabling such a diversity of contributors has resulted in a large community
that spans the biological and physical sciences. However, a rapidly growing
user base, diverging plugin suites, and technical limitations have revealed a
clear need for a concerted software engineering effort to support emerging
imaging paradigms, to ensure the software's ability to handle the requirements
of modern science. Due to these new and emerging challenges in scientific
imaging, ImageJ is at a critical development crossroads.
We present ImageJ2, a total redesign of ImageJ offering a host of new
functionality. It separates concerns, fully decoupling the data model from the
user interface. It emphasizes integration with external applications to
maximize interoperability. Its robust new plugin framework allows everything
from image formats, to scripting languages, to visualization to be extended by
the community. The redesigned data model supports arbitrarily large,
N-dimensional datasets, which are increasingly common in modern image
acquisition. Despite the scope of these changes, backwards compatibility is
maintained such that this new functionality can be seamlessly integrated with
the classic ImageJ interface, allowing users and developers to migrate to these
new methods at their own pace. ImageJ2 provides a framework engineered for
flexibility, intended to support these requirements as well as accommodate
future needs
Open source bioimage informatics for cell biology
Significant technical advances in imaging, molecular biology and genomics have fueled a revolution in cell biology, in that the molecular and structural processes of the cell are now visualized and measured routinely. Driving much of this recent development has been the advent of computational tools for the acquisition, visualization, analysis and dissemination of these datasets. These tools collectively make up a new subfield of computational biology called bioimage informatics, which is facilitated by open source approaches. We discuss why open source tools for image informatics in cell biology are needed, some of the key general attributes of what make an open source imaging application successful, and point to opportunities for further operability that should greatly accelerate future cell biology discovery
A Visual Stack Based Paradigm for Visualization Environments
We present a new visual paradigm for Visualization Systems, inspired by stack-based programming. Most current implementations of Visualization systems are based on directional graphs. However directional graphs as a visual representation of execution, though initially quite intuitive, quickly grow cumbersome and difficult to follow under complex examples. Our system presents the user with a simple and compact methodology of visually stacking actions directly on top of data objects as a way of creating filter scripts. We explore and address extensions to the basic paradigm to allow for: multiple data input or data output objects to and from execution action modules, execution thread jumps and loops, encapsulation, and overall execution control. We exploit the dynamic nature of current computer graphic interfaces by utilizing features such as drag-and-drop, color emphasis and object animation to indicate action, looping, message/parameter passing; to furnish an overall better understanding of the resulting laid out execution scripts
- …