Dan Dvorak and Lorraine Fesq Jet Propulsion Laboratory, California Institute of Technology. Jonathan Wilmot NASA Goddard Space Flight Center

Similar documents
Daring Mighty Things. AFCEA Los Angeles. Larry James (Lt. Gen. USAF, Ret.), Deputy Director. a presentation to. January 14, 2015

Cyber-Physical Systems

MSL Lessons Learned Study. Presentation to NAC Planetary Protection Subcommittee April 29, 2013 Mark Saunders, Study Lead

Low-Cost Innovation in the U.S. Space Program: A Brief History

U.S. Space Exploration in the Next 20 NASA Space Sciences Policy

Fault Management Architectures and the Challenges of Providing Software Assurance

NASA s X2000 Program - an Institutional Approach to Enabling Smaller Spacecraft

Developing NASA s Fault Management Guidebook for Deep Space Robotic Missions

Antenna Mechanical & Structural Engineering (333H) BWG-2 Feed Platform. Jet Propulsion Laboratory California Institute of Technology.

chairs IEEE EMC symposium technical sessions. He is often tutorial workshops and technical demonstrations at IEEE EMC international symposiums.

2009 ESMD Space Grant Faculty Project

NASA and Earth Science Enterprise Overview

Future Plans for the Deep Space Network (DSN)

WHAT WILL AMERICA DO IN SPACE NOW?

Panel Session IV - Future Space Exploration

Benefiting government, industry and the public through innovative science and technology

Credits. National Aeronautics and Space Administration. United Space Alliance, LLC. John Frassanito and Associates Strategic Visualization

NASA Mission Directorates

National Aeronautics and Space Administration. The Planetary Science Technology Review Panel Final Report Summary

Maturing Small Satellite Mission Capabilities at NASA Goddard Space Flight Center

NATIONAL AERONAUTICS AND SPACE ADMINISTRATION

Asteroid Redirect Mission (ARM) Update to the Small Bodies Assessment Group

Evolution of Software-Only-Simulation at NASA IV&V

Ultra Reliability at NASA

ASSEMBLY AND SERVICING OF SPACE TELESCOPES

Addressing International Lunar Surface Operations Click to edit Master title style

NASA s Small Business Innovation Research (SBIR) and Small Business Technology Transfer (STTR) Programs. May 2, 2007

Seven Minutes of Terror, Eight Years of Ingenuity

Science Plenary II: Science Missions Enabled by Nuclear Power and Propulsion. Chair / Organizer: Steven D. Howe Center for Space Nuclear Research

Update on ESA Planetary Protection Activities

JHU/APL CubeSat Initiatives. Andy Lewin 19 April 2007

Science Enabled by the Return to the Moon (and the Ares 5 proposal)

NASA Mars Exploration Program Update to the Planetary Science Subcommittee

Big Data Visualization for Planetary Science

Planetary Data System (PDS) At the DPS Astrophysics Assets Workshop

National Aeronautics and Space Administration

NASA Research Areas of Interest Released by NASA HQ February 2014

Status and Outlook for the European Exploration Envelope Programme

Background for Lesson Discussion, page 122 Assembling a spacecraft model. Questions, page 127 Some familiarity with the Saturn

PROCEEDINGS OF SPIE. Inter-satellite omnidirectional optical communicator for remote sensing

Space Challenges Preparing the next generation of explorers. The Program

Near Earth Asteroid (NEA) Scout CubeSat Mission

SPACOMM 2009 PANEL. Challenges and Hopes in Space Navigation and Communication: From Nano- to Macro-satellites

Design of a Remote-Cockpit for small Aerospace Vehicles

The Virtual Spacecraft Reference Facility

Observations and Recommendations by JPL

Space Challenges Preparing the next generation of explorers. The Program

Directions: Read the following passage and answer the questions that follow. Seven Minutes of Terror, Eight Years of Ingenuity

Science at NASA Goddard. Dr. Piers Sellers Science and Exploration Directorate

Lecture 13: Requirements Analysis

Office of Chief Technologist - Space Technology Program Dr. Prasun Desai Office of the Chief Technologist May 1, 2012

Jet Propulsion Laboratory

The Global Exploration Roadmap International Space Exploration Coordination Group (ISECG)

Uranus Exploration Challenges

CubeSat Standard Updates

Automated Planning for Spacecraft and Mission Design

NASA s Space Launch System: Powering the Journey to Mars. FISO Telecon Aug 3, 2016

M&S Requirements and VV&A: What s the Relationship?

The Use of SPARK in a Complex Spacecraft CubeSat Developer s Workshop - Copyright 2017 Carl Brandon & Peter Chapin

Planetary CubeSats, nanosatellites and sub-spacecraft: are we all talking about the same thing?

JPL Does Cubesats. Tony Freeman* Manager, Innova1on Foundry. April 2013

QUEST Vision for Exploration of Space

ENGAGE MSU STUDENTS IN RESEARCH OF MODEL-BASED SYSTEMS ENGINEERING WITH APPLICATION TO NASA SOUNDING ROCKET MISSION

JPL. Heading back to Mars with thermal control system developed using NX. Aerospace. Product NX

ISHM Testbeds and Prototypes (ITP) Project

The Future of the US Space Program and Educating the Next Generation Workforce. IEEE Rock River Valley Section

Planetary Protection, NASA, the Science Mission Directorate, and Everything

Voyage to Mars Space Simulation

The Mars Exploration Program

The Lunar Exploration Campaign

Space Mission Engineering The New Smad Space Technology Library Vol 28

The JPL A-Team and Mission Formulation Process

Navigation and Ancillary Information Facility What s Up at NAIF? Chuck Acton August 2010 Rev. 1

AN ENABLING FOUNDATION FOR NASA S EARTH AND SPACE SCIENCE MISSIONS

The Aerospace Corporation s Concept Design Center

Contents 1 Introduction 2 The Importance of Natural Resources from Space and Key Challenges

Reaching New Heights and Revealing the Unknown: A Conversation with Charles F. Bolden, Jr. NASA Administrator

A Call for Boldness. President Kennedy September 1962

ESA Human Spaceflight Capability Development and Future Perspectives International Lunar Conference September Toronto, Canada

Mars Spaceship All About Mars A Space Book For Kids Solar System And Planets For Children

ESA Preparation for Human Exploration ACQUIRING CAPABILITIES

Meeting the Challenge of Low Cost Lunar Exploration

JPL Visions of the Future Posters

713/

When Failure Means Success: Accepting Risk in Aerospace Projects NASA Project Management Challenge 2009

Decadal Survey Process and Mars Program Introduction

Engineering Adventures

SPACE DEBRIS MENACE. GLYCAN SPACE XR- HELIOTORR Corp LLC Pasadena CA

Commission for Moon, Mars and Beyond

Heading back to Mars with a thermal control system developed using NX

Reaction to NASA Roadmap TA04 Robotics, Telerobotics, and Autonomous Systems (RTA)

Jet Propulsion Laboratory, California Institute of Technology

Ocean Worlds Robert D. Braun

Evaluation of Active Parts for use on NASA Deep Space Missions

Model-based Systems Engineering Mission Formulation and Implementation

This document is a preview generated by EVS

Educational Product. National Aeronautics and Space Administration. Educators. Grades 9 12 EG HQ. burning paper.

Survey questionnaire and topline

BEYOND LOW-EARTH ORBIT

Future Directions: Strategy for Human and Robotic Exploration. Gary L. Martin Space Architect

Transcription:

Jet Propulsion Laboratory Quality Attributes for Mission Flight Software: A Reference for Architects Dan Dvorak and Lorraine Fesq Jet Propulsion Laboratory, Jonathan Wilmot NASA Goddard Space Flight Center SATURN Conference San Diego, CA May 2-5, 2016 Copyright 2016. Government sponsorship acknowledged. The research was carried out at the Jet Propulsion Laboratory,, under a contract with the National Aeronautics and Space Administration. 1

Agenda Introduction Rationale Attributes Use Cases Next Steps 2

JPL is part of NASA and Caltech Jet Propulsion Laboratory Federally- funded (NASA- owned) Research and Development Center (FFRDC) University Operated (Caltech) $1.73B Business Base 5,000 Employees Founded in the 1930s Focus on robotic missions for solar system exploration 3

JPL Spacecraft and Instruments Across the Solar System 50+ Years of Space Exploration 24 missions and 12 instruments active Current programs and projects include: Planetary Missions Mars Rovers and Orbiters (MER, MRO, MO, MSL) Outer Planets (Voyager 1&2, Cassini, Juno) Other Bodies (Dawn, EPOXI) Earth and Moon Observations Climate (ACRIMSAT, CloudSat, MLS) Earth Observations (ASTER, AIRS, MISR) Oceans (Aquarius, GRACE, Jason, OSTM, QuickScat) Moon (GRAIL, Diviner) Astrophysics Universe (WISE, Spitzer, GALEX, Herschel, Keck) Exoplanets (Kepler) Deep Space Network 4

Continuous Robotic Presence on and in- orbit around Mars 2001 Mars Odyssey Opportunity Mars Reconnaissance Orbiter Curiosity Mars Express (ESA) Opportunity s tracks Meridiani Planum Do not go where the path may lead, go instead where there is no path and leave a trail - - - Ralph Waldo Emerson 5

Jet Propulsion Laboratory Mission & Charter of NASA s SARB* Mission: Manage flight software complexity through better software architecture Background Established in 2009 based on recommendation from Flight Software Complexity study to NASA Chief Engineer Targets projects in Formulation Phase to maximize impact Charter Provide constructive feedback to flight projects in the formative stages of software architecting Focus on architectural improvements to reduce and/or better manage complexity in requirements, analysis, design, implementation, verification, and operations Spread best architectural practices, principles, and patterns across flight software centers Contribute to NASA Lessons Learned * SARB = Software Architecture Review Board 6

Importance of Software Jet Propulsion Laboratory Quality Attributes Quality Attributes have a significant impact on the system design, software architecture and cost Requirement for software portability (e.g., Consider abstraction layers) Requirement for software decoupling (e.g., Consider a message passing interface, aka Software Bus) It s uncommon to see Quality Attribute requirements at the mission level Quality Attribute requirements tend to be derived requirements Software architects and engineers need to do a little selling to convince project management it s in the project or organization s best interest Organizations tend to think across missions and will more readily consider cross- cutting requirements Quality Attributes and associated priorities should be traded, documented, and reviewed early by all stakeholders 7

Creating the Quality Attribute Table What problem were we trying to solve? Jet Propulsion Laboratory A method to objectively evaluate an architecture in the domain of space mission flight software Space Universal MOdular Architecture(SUMO) architecture survey NASA s Software Architecture Review Board (SARB) Many of the surveyed software architecture description documents had a list of quality attributes, but: Attributes were inconsistent Attribute definitions were inconsistent Attribute lists were incomplete Available architecture documents outside the domain Missing objective evaluation criteria 8

Creating the QA Table Jet Propulsion Laboratory SUMO started this effort to evaluate several software architectures at NASA, DoD, and in industry in the hope of establishing a level of commonality that could be exploited to reduce cost and expand markets NASA s SARB picked up this effort to provide more objective evaluation criteria for use during architecture reviews The authors worked with software architects across NASA centers and DoD Most notably ARC, JPL, JSC, GSFC, AFRL, APL, and NAVAIR Reviewed documents available on the internet Created an initial list and refined it over several months 9

Quality Attribute Table Format Jet Propulsion Laboratory Intended to help software teams think carefully about quality attributes What do you mean by portability, availability, safety, etc.? What are the different aspects of an attribute? What requirements should it impose? How does it add value to the project architecture? What evidence will demonstrate that the QA is achieved? What tactic(s) will be used to achieve it? What is its priority? This table is not comprehensive and is intended to be extended 10

Quality Attributes in the QA Table Column A: The Quality Attributes The first column in each row is the quality attribute to be addressed. This column contains the chosen term indicating the non- functional requirement or property of the architecture to be implemented or reviewed. The term was selected through consensus by the SARB members, since different perspectives led to differing opinions as to which terms best fit the desired property. Quality Attributes are: Jet Propulsion Laboratory Portability Interoperability Modifiability Performance Availability Reusability Predictability Usability Scalability Verifiability Manage complexity Security Safety Openness These are important in mission-critical real-time embedded systems 11

QA Description and Aspects Column B: Description of the QA and other terms used to describe the quality Each Quality Attribute identified in Column A is defined in Column B to help the user understand what is meant by the term. For example, Portability is defined as A design and implementation property of the architecture and applications supporting their use on systems other than the initial target system. Numerous references were used to define each Column C: Aspects of the QA The term Aspect of is intended to define a context for the attribute. The State/behavior aspect of the QA Predictability can be rephrased as the predictability of the state/behavior of the architecture. The QA Portability has numerous entries for Aspect of that help provide context; they allow the architect or evaluator to individually specify whether the application or system is portable across real- time/non- real- time implementations, across operating systems, across avionics platforms, or across any combination 12

Jet Propulsion Laboratory QA Requirements, Rationale, Evidence Column D: Requirements Column D contains sample requirements that the architecture must satisfy to claim support of a quality attribute. These requirements are verifiable statements, and are specific to each Aspect of row, as they need to be associated with a specific QA context. Column E: Rationale The Rationale column documents how each QA requirement adds value to an architecture for a project or projects. The team did not list all possible rationale, but focused on the one or two considered most important. For example, a project may have a requirement that the architecture shall support application execution in real- time and non- real- time environments allowing deployment on flight and development/test (e.g. desktop) run- time environments Column F: Evidence of/verification Provides evidence that the requirement has been verified, or how it will be verified. For example, one aspect of portability is OS portability, and the associated requirement (Column D) is: The architecture shall support application execution on a range of operating systems without modification of the application. This requirement would be convincingly met if the project demonstrates execution on multiple operating systems with no changes to the application 13

Tactics to Achieve, Project Prioritization Column G: Tactic to Achieve A tactic is a design decision that influences the control of a quality attribute response [Bass et al, 2003]. Thus, Column G is where the project identifies design decisions to be used in meeting the requirements in Column D. Explicitly identifying such decisions enables experienced reviewers to challenge a decision if they feel the tactic is inadequate or insufficiently described. For example, in the aspect of Portability related to operating systems, the QA table provides standards and abstractions as general tactics Columns H- I: Project Prioritization and Project Intended Variation Jet Propulsion Laboratory Each row of the table has two columns for use by project software architects, implementers, and reviewers. Project Prioritization and Project intended variation are to be completed by project personnel in the very early stage of development concurrently with the system requirements. All QAs should be reviewed to decide/establish the priority of each (Not Applicable, Low, Medium or High) in Column H. 14

Architect/Project Team Usage Jet Propulsion Laboratory Review the Quality Attribute list for things to consider early in the architecture formulation phase Assign the Quality Attribute priorities Complete the table even if the QA is not applicable Create the variation points Create the architectural trades Get stakeholder input Develop and document additional tactics to achieve 15

Developers Usage Jet Propulsion Laboratory Become a stakeholder in the architecture Provide inputs to the trades Help the architects understand any implementation, maintenance, or performance impacts for the QAs being considered Use the Tactic to achieve for guidance on design and implementation Help improve and expand the tactics Document the Evidence of/verification Include QAs requirements in design and code reviews 16

Reviewers Usage Jet Propulsion Laboratory Examine the alignment of Project Prioritization and driving system requirements Are the tactics to achieve valid for intended attribute Are the trades sufficiently documented and contain valid rationale Is the evidence included in the architecture description document Have all the stakeholders been considered and their interests addressed 17

Next Steps Jet Propulsion Laboratory Use the QA table to evaluate an architecture NASA s core Flight System (cfs) software product line Potential to evaluate JPL s Core software product line Use the QA table for the next SARB review Expand QA table based on reviews Post table on FSW Workshop website at http://flightsoftware.jhuapl.edu For further information, ref 2016 IEEE paper Quality Attributes for Mission Flight Software: A Reference for Architects 18

Questions? 19

From Caltech students testing rockets to exploring the planets in our lifetime Jet Jet Propulsion Laboratory California Institute of of Technology Caltech students (1936) Missiles (1940s) Explorer 1 (1958) Mars Exploration Rovers (2004 present) Spitzer Space Telescope (2004 present) Earth Science (1978 now) 20

JPL s mission for NASA is robotic Mars Solar system Exoplanets Astrophysics Earth Science Interplanetary network space exploration Jet Jet Propulsion Propulsion Laboratory Laboratory California California Institute Institute of Technology of Technology Of the 73 known planetary/moon exploration missions that the U.S. has launched to date, JPL has managed 52 of them 21

NASA s Mars Rovers A Family Portrait 22