NASA Jet Propulsion Laboratory California Institute of Technology JPL Home Earth Solar System Stars & Galaxies Science & Technology Bring the Universe to You JPL Email News RSS Podcast Video
Follow this link to skip to the main content

Home
Research
Research Topics List
spacer
Earth Sciences
spacer
Planetary Sciences
spacer
Astrophysics & Space Sciences
spacer
Exploration & Observational Systems
spacer
Software & Computing Systems
Strategic Technology Directions
Technology Transfer
Opportunities
Community
News and Events
ST icon
Office of the Chief Scientist and Chief Technologist
Research

Software & Computing Systems

Average Rating: 5 / 5 (3 ratings)
  •   star rating help
    How Do I Rate This?
    The blue stars show the average user rating for this item. To add your own rating, move your cursor over the stars to highlight them in gold, and click to show your rating. One star highlighted is the lowest rating, all five is the highest. Once you have rated an item, your rating is added to the average.
Lifecycle Software and System Development
Lifecycle Software and System Development

With the rising complexity of mission software, the distinctiveness of each mission, and the funding constraints that come along with each project, JPL has been challenged to produce state-of-the art software on schedule and within budget. JPL's software and system engineers have been working to establish practices to reuse and redevelop software when possible to reduce costs while ensuring the robustness of software packages that are retested and redeployed with each use.


Systems engineers have typically described software systems differently from their software engineering peers, and this frequently leads to incomplete or ambiguous communication. However, software engineering and systems engineering remain highly interdependent. Systems engineers must understand what the system must do (and document this understanding in the form of system specifications), while software engineers must design how the system will do it (and realize the design in implemented software artifacts). As an ever-increasing element of system design, this relationship has become quite problematic.

JPL has rigorous standard for its software development, as set forth by its Software Quality Improvement (SQI) project. In September 2007 the Lab met its goal of operating at CMMI Maturity Level 3 across the entire Engineering and Science Directorate (ESD), largely due to SQI’s efforts in setting standards for software standards and usability.


Samples of Current Efforts

Mission Data Systems (MDS)

The MDS Project was chartered with rethinking the entire mission software lifecycle. MDS confronts the growing interdependence between systems and software engineering with a more integrated approach to engineering complex systems. The MDS architecture provides the means for software engineers and systems engineers to communicate through a common language, and thus bridges the traditional gap between software requirements and software design and implementation. State Analysis augments this architecture with a principled methodology for developing and specifying system capability in terms defined by the architecture, and the MDS frameworks, embodying the architecture, simplify the translation of these specifications into software implementation. As a result, software engineers and systems engineers share a common model-based approach to defining, describing, developing, understanding, verifying, validating, operating, and visualizing what systems do. The net result is systems that are more reliable, cost-effective, and reusable.

Mission software element chart

Although the architecture patterns were first envisioned for use in space systems, they are widely applicable to control problems in other fields. They are particularly well suited for systems having complex interactions and dynamics, and which must continue operating in the presence of failures and other unpredictable events.

Reliable Software

The JPL Laboratory for Reliable Software (LaRS) was created to achieve long term improvements in the reliability of JPL's mission critical software systems through the pursuit of a research, development, and application program, targeting the development of relevant theory and tools that benefit JPL software development. Topics of interest for the Lab include new and existing software testing and verification strategies based on:

  • requirements capture, analysis, and tracking
  • design verification
  • static analysis
  • logic model checking
  • automata based testing
  • runtime monitoring and verification
  • software quality and reliability metrics
  • auto coding techniques
  • verification of AI-based planners
  • verification of fault protection code
  • fault tolerance, fault containment, survivability
LaRS Logo


Selected Research Projects

Example of model integration
CMSV-Engineering Framework

Computing, modeling, simulation, and visualization (CMSV) technologies are essential elements in the multi-disciplinary collaborative engineering process. In order to effectively utilize a wide range of legacy discipline models and foster a model-based engineering-design environment at JPL, the CMSV-Engineering Framework (CMSV-EF) has developed a set of interdisciplinary engineering-service mechanisms so that a complex system can be rapidly integrated using subsystem models, virtually operated in a wide range of hypothetical environments, and comprehensively validated by all design teams. The technologies developed under the CMSV-EF task have been infused into the Juno mission, for which it will provide a lifecycle-wide mission simulation integrating the models from all disciplines.

The impact of Jupiter’s radiation environment on spacecraft and instruments (an example of innovative multi-discipline model integration)



Library of Reusable CMSV Tools

This is an operational model library capable of providing secure access to geographically distributed repositories of models, either through the Internet or through an electronic interface. The current configuration provides access to about 72,000 models from the Team Center Enterprise, Docushare, MSIM and OODT collections. JPL users can access the system by typing “SEEMORE” in their web browsers. The ultimate objective is to create a comprehensive library of ground software tools that are available at JPL. This will enable tools that have already been developed to be accessed for reference and reused for new projects where appropriate, reducing the need to build from scratch and thereby saving time and money.

Scrrenshot of Juno mission modeling
Juno mission phase simulation examples


Contacts

Larry Bergman - Management Contact
E-Mail: Larry.A.Bergman@jpl.nasa.gov
Phone: 818.393.5314

Dan Dvorak - Technical Contact
E-Mail: Daniel.L.Dvorak@jpl.nasa.gov
Phone: 818.393.1986


Links


Site Manager:  Brian Knosp
Webmasters:  Cornell Lewis, Maryia Davis
Science Writer:  Samantha Harvey
JPL Clearance:  CL#08-4147