James J. Marshall
Goddard Space Flight Center
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by James J. Marshall.
international geoscience and remote sensing symposium | 2008
James J. Marshall; Robert R. Downs
The reuse of software and related artifacts offers the potential for cost savings in various industries and has contributed to the development of the cyberinfrastructure that is used by the Earth science community. Developing measures that enable the assessment of software in terms of its potential reusability can contribute to efforts of both developers and reusers of software. Draft Reuse Readiness Levels (RRLs) have been developed as an instrument for assessing the maturity of software products for potential reuse. The process employed to develop the draft RRLs is described, and the initial summary of topic areas defined for each level is presented. Based on recommendations from the community of Earth science data systems software developers, areas for improving the precision of the draft RRLs have been identified and an approach for identifying enhancements is described.
international geoscience and remote sensing symposium | 2006
James J. Marshall; S. W. Olding; Robert E. Wolfe; Victor E. Delnore
Scientific missions in the Earth sciences frequently require cost-effective, highly reliable, and easy-to-use software, which can be a challenge for software developers to provide. The NASA Earth science community spends a significant amount of resources developing software components and other software development artifacts that may also be of value if reused in other projects requiring similar functionality. In general, software reuse is often defined as utilizing existing software artifacts. Software reuse can improve productivity and quality while decreasing the cost of software development, as documented by case studies in the literature. Since large software systems are often the results of the integration of many smaller and sometimes reusable components, ensuring reusability of such software components becomes a necessity. Indeed, designing software components with reusability as a requirement can increase the software reuse potential within a community such as the NASA Earth science community. The NASA Earth Science Data Systems (ESDS) Software Reuse Working Group is chartered to oversee the development of a process that will maximize the reuse potential of existing software components while recommending strategies for maximizing the reusability potential of yet-to-be-designed components. As part of this work, two surveys of the Earth science community were conducted. The first was performed in 2004 and distributed among government employees and contractors. A follow-up survey was performed in 2005 and distributed among a wider community, to include members of industry and academia. The surveys were designed to collect information on subjects such as the current software reuse practices of Earth science software developers, why they choose to reuse software, and what perceived barriers prevent them from reusing software. In this paper, we compare the results of these surveys and discuss the findings, including the difference between the components desired for reuse and those made available for reuse. The results are very similar, with the second, larger survey confirming the basic results of the first, smaller survey. The results suggest that reuse of Earth science software can drive down the cost and time of system development, increase flexibility and responsiveness of these systems to new technologies and requirements, and increase effective and accountable community participation. Software reuse; Earth science; SEEDS; NASA
information reuse and integration | 2007
R. S. Gerard; Robert R. Downs; James J. Marshall; Robert E. Wolfe
Packaging software assets for reuse can improve the potential for others to adopt the software. Packaging the software with appropriate documentation and other resources can facilitate decision-making by those considering adoption and can enable them to implement the software more efficiently. Software that can be easily integrated is more likely to be shared with others and reused by the recipients. The NASA Earth Science Data Systems (ESDS) Software Reuse Working Group has been chartered to oversee the process that will maximize the reuse of potential software components. As part of this work, a portal Web site was created to support reuse practices within the Earth science community. This portal also serves as an example of reuse practices, both as a recipient and as a contributor to reuse. This paper describes the assets that were reused to develop the software reuse portal. For each asset reused, we identify the type, format, and licensing restrictions. This case study exemplifies reuse at various scopes such as the application, component, and function level. Aside from consuming reusable assets, the software produced was also made available for reuse. We address proper packaging methodologies to foster easy integration and reuse. We obtain various reuse metrics based on an analysis of the final system and the impact in our community. We identify caveats in current metrics such as consideration for emerging technologies and intangible benefits.
international geoscience and remote sensing symposium | 2010
Chris A. Mattmann; Robert R. Downs; James J. Marshall; Neal Most; Shahin Samadi
Software assets from existing Earth science missions can be reused for the new decadal survey missions that are being planned by NASA in response to the 2007 Earth Science National Research Council (NRC) Study. The new missions will require the development of software to curate, process, and disseminate the data to science users of interest and to the broader NASA mission community. In this paper, we discuss new tools and a blossoming community that are being developed by the Earth Science Data System (ESDS) Software Reuse Working Group (SRWG) to improve capabilities for reusing NASA software assets.
information reuse and integration | 2011
James J. Marshall; Robert R. Downs; Chris A. Mattmann
Social computing has the potential to contribute to scientific research. Ongoing developments in information and communications technology improve capabilities for enabling scientific research, including research fostered by social computing capabilities. The recent emergence of e-Science practices has demonstrated the benefits from improvements in the technological infrastructure, or cyberinfrastructure, that has been developed to support science. Cloud computing is one example of this e-Science trend. Our own work in the area of software reuse offers methods that can be used to improve new technological development, including cloud computing capabilities, to support scientific research practices. In this paper, we focus on software reuse and its potential to contribute to the development and evaluation of information systems and related services designed to support new capabilities for conducting scientific research.
Archive | 2010
James J. Marshall; Robert R. Downs; Shahin Samadi
Software is a key ingredient when developing any aerospace system. It is used in embedded electronics, in flight dynamics, in ground and space data processing, and in the current generation of data products. For example, the National Aeronautics and Space Administration (NASA) Goddard Space Flight Center’s Innovative Partnerships Program Office offers licensing opportunities for software and technologies from a variety of areas relevant to the hardware and software requirements of Earth and space science missions and projects: aerospace/aeronautics, computer software, data processing/analysis, electromechanical devices, electronics, manufacturing equipment, mechanical technologies, nanotechnology, optics and photonics, sensor and detector technologies, subassemblies and components, telecommunications and internet, and test and measurement (IPP Office, 2009). Reuse of existing experience and artifacts eliminates having to “reinvent the wheel” and is a key element to achieving progress in many areas of complex aerospace system development. Originally, in the absence of vendor-provided solutions and commercial off-the-shelf software components, many data and information systems were designed and built as custom applications. However, as the practice of systems and applications development has matured, facilitating reuse of software and reusing previously developed software have been recognized as beneficial for meeting the challenges of developing and maintaining complex systems. Some of the challenges commonly faced by system developers can include dealing with very large quantities of data (e.g., terabytes per day), working with a distributed knowledge base, the expense and complexity of required technology infrastructure, and the need for domain-specific knowledge in software development (Samadi et al., 2007). In software development, reuse can assist today’s development teams in various aspects of the system development life cycle, especially when they share common goals (Samadi et al., 2007). The development of new systems can benefit from the efforts that contributed to the development of current and previous generations of systems. Considering the costs of building new systems, and the learning curve that contributes to such costs, leveraging the results of previous system development activities has the potential to reduce system
information reuse and integration | 2010
James J. Marshall; Robert R. Downs; Chris A. Mattmann
A Reuse Enablement System (RES) allows developers of Earth science software to contribute software for reuse by others and for users to find, select, and obtain software for reuse in their own systems. This paper describes work that the NASA Earth Science Data Systems (ESDS) Software Reuse Working Group has completed to date in the development of an RES for NASA.
ieee aerospace conference | 2007
Shahin Samadi; R. S. Gerard; Mary Hunter; James J. Marshall; Robert J. Schweiss; Robert E. Wolfe; Edward J. Masuoka
Over the years, numerous large and complex information systems have been created to store, process, and disseminate vast volumes of remotely-sensed Earth science data. These systems have the potential to be reused to process similar data from other missions or instruments, reducing risk, schedule, and associated development cost for future projects.
international geoscience and remote sensing symposium | 2006
James J. Marshall; R. S. Gerard; Shahin Samadi; Robert E. Wolfe
The reuse of software assets can be critical to the development of large-scale software projects where budget and reliability are paramount. Yet many of the benefits of software reuse are either not recognized or overlooked. The majority of software assets are not made available to peers or a wider community. Therefore, a key activity in promoting software reuse is the initiative to increase the awareness of reuse enablement systems. An ideal Earth science reuse enablement system should ensure that reusable software assets are readily available to the software developers who want to use them to build new or enhance existing Earth science applications. This can be done by placing the assets into a software catalog or repository system. Many such systems exist, mostly outside of the Earth science domain, each designed for a particular purpose. Some are domain- specific, covering one particular subject area, while others are more general, covering a large variety of fields. Each is well- designed for its target audience. Many candidate systems that exist provide open-source software solutions. However, user goals, quality control, and overall usability determine the usefulness of a system to the community of Earth science software developers. The software used to create these systems also varies, ranging from standard HTML to full repository software packages like Repository in a Box (RIB), which uses the Basic Interoperability Data Model (BIDM), IEEE Standard 1420.1. The NASA Earth Science Data System (ESDS) Software Reuse Working Group has examined a variety of these systems, and focused on their applicability to the Earth science domain. Within a set of requirements designed for the Earth science community, this paper compares selected features of these systems, such as providing reviews for assets or the software used to design the site, and how the presence or absence of these features affects the systems ability to promote reuse.
Data Science Journal | 2010
Robert R. Downs; James J. Marshall