Steven Woodward CFPS, CSQA steve@cloud …Steven Woodward CFPS, CSQA steve@cloud-perspectives.com...

Preview:

Citation preview

Steven Woodward CFPS, CSQAsteve@cloud-perspectives.com

613-823-7573www.cloud-perspectives.com

Image credit: NASA/JPL

Context

Boundary…Leaving Earths Atmosphere

Functionality Discovered on Mars!

Mars FPA Extensions/ Considerations

Mission Summary

2©Copyright Cloud Perspectives 2013 All rights reserved

This presentation provides examples of actual Curiosity functionality without disclosing actual command details

Examples provided are subsets of Curiosity functionality (over 3200 detailed commands are actually available!)

Provide insights applying IFPUG approaches to complex functionality

©copyright Cloud Perspectives 2013 All rights reserved 3

Use the IFPUG approach to clarify and model Mars Rover functionality

Determine some local interpretations/ extensions reasonable for this class of software

Extremely small “slice” of functionality to generate discussions

©copyright Cloud Perspectives 2013 All rights reserved 4

Terminology

The Asset

Constraints & Challenges

Business and Technical lines are blurry

©copyright Cloud Perspectives 2013 All rights reserved 5

Image credit: NASA/JPL

A method to model and quantify software functionality (ISO/ IEC 20926)

Used to clarify requirements

Foster early meaningful discussions

Monitor progress

Estimate budgets, quality and schedule

Pricing and Contracting

©copyright Cloud Perspectives 2013 All rights reserved 6

Many valuable uses!

Context

Boundary…Leaving Earths Atmosphere

Functionality Discovered on Mars!

Mars FPA Extensions/ Considerations

Mission Summary

7©Copyright Cloud Perspectives 2013 All rights reserved

©copyright Cloud Perspectives 2013 All rights reserved 8

Image credit: NASA/JPL

Solution is the entire end-to-end function

©copyright Cloud Perspectives 2013 All rights reserved 9

©copyright Cloud Perspectives 2013 All rights reserved 10

Solution is the functionality to send commands to the Mars Rover

©copyright Cloud Perspectives 2013 All rights reserved 11

Count the Rover capable services

Count the satellite communication services

©copyright Cloud Perspectives 2013 All rights reserved 12

Lots of Analysis and Cooperation!◦ Gas Chromatograph

◦ Mass Spectrometer

◦ Tuneable Laser Spectrometer

◦ X-Ray diffraction and Fluorescence (CheMin)

◦ Mars Hand Lens Imager

◦ Alpha Particle X-ray Spectrometer

◦ Mars Science Laboratory Mast Camera

◦ ChemCam (Laser Pulses, Spectrometer)

◦ Radiation Assessment Detector

◦ Rover Environmental Monitoring Station

◦ Dynamic Albedo of Neutrons

©copyright Cloud Perspectives 2013 All rights reserved 13

Context

Boundary…Leaving Earths Atmosphere

Functionality Discovered on Mars!

Mars FPA Extensions/ Considerations

Mission Summary

14©Copyright Cloud Perspectives 2013 All rights reserved

©copyright Cloud Perspectives 2013 All rights reserved 15

Image credit: NASA/JPL

©copyright Cloud Perspectives 2013 All rights reserved 16

Actuators conceptually

outside of the boundary,

frequently own “systems of

systems”

“Driving System”

Command

Instruction to Actuator/ Device

One Command – performs logic, formats and generates

a single instruction to an actuator or device

©copyright Cloud Perspectives 2013 All rights reserved 17

Actuators conceptually

outside of the boundary,

frequently own “systems of

systems”

“Driving System”

Command

One Command – performs logic, formats and generates

multiple instructions to multiple devices

Instructions to Multiple

Actuators/ Devices

©copyright Cloud Perspectives 2013 All rights reserved 18

“Driving System”

Command

One Command – performs logic, and sets a value, etc

with nothing leaving the boundary

©copyright Cloud Perspectives 2013 All rights reserved 19

Actuators conceptually

outside of the boundary,

could be own “systems of

systems”

“Driving System”

Autonomously – performs logic, formats and generates

multiple or single instructions

Instructions to Multiple

Actuators/ Devices

©copyright Cloud Perspectives 2013 All rights reserved 20

Rotate in place 30 degrees to the right

Rotate in place 90 degrees to the right

Rotate 30 degrees to the right, while moving forward 2 meters

Rotate 45 degrees to the right, while moving forward 3 meters

Same functionality except to the left?....is moving left a business or technical requirement? (could move in place 330 degrees)

©copyright Cloud Perspectives 2013 All rights reserved 21

Rotate in place 999 degrees to the right (EP)

Rotate in place 999 degrees to the left (EP)

Rotate 999 degrees to the right, while moving forward 99 meters (EP)

Rotate 999 degrees to the left while moving forward 99 (EP)

EP Smallest unit of activity meaningful to

the user, leaving the application in a

consistent state

©copyright Cloud Perspectives 2013 All rights reserved 22

Is driving forward 10 meters always processed the same?◦ “Blind Mode”

◦ “Visual Odometry Mode”

◦ “Autonomous Mode”

Consider Unknown Hazards Safe

Consider Unknown Hazards UnSafe

These are complex functions and systems, where the FPA needs

to get key perspectives from stakeholders on how to model

functionality of such complex functions/ requirements.

Establishing core consistent guidelines and extensions based on

an IFPUG framework is key.

EO to the right 999 degrees while moving forward 99 meters in “Blind Mode”◦ Wheel Right Front – angle, rotations

◦ Wheel Left Front – angle, rotations

◦ Wheel Right Middle – angle, rotations

◦ Wheel Left Middle – angle, rotations

◦ Wheel Right Rear – angle, rotations

◦ Wheel Left Rear – angle, rotations

©copyright Cloud Perspectives 2013 All rights reserved 23

14 DETs crossing the boundary plus error/ confirmation

Total 15 DETs

©copyright Cloud Perspectives 2013 All rights reserved 24

“Unstow” the arm (command sent to “Flight Software”◦ Verify the arm position (must be equal to “90 arm

position” and “0” rotation position)

◦ Verify wheel “lock”

◦ Turn “on” the arm heater

◦ Wait 10 minutes

◦ Turn “off” the arm heater

◦ Un-Lock Arm

◦ Move elbow to 90 degree position

©copyright Cloud Perspectives 2013 All rights reserved 25

Actuators conceptually

outside of the boundary,

frequently own “systems of

systems”

“Driving System”

Command

One Command – performs logic, formats and generates

multiple instructions to multiple devices

Instructions and queries to

Multiple Actuators/ Devices

©copyright Cloud Perspectives 2013 All rights reserved 26

Once sent, user considers

“consistent state”

Unstow the Arm (EO 2 DETs, Updates ILF)

The complexity is NOT on the console, but rather in the logic

contained in the “Flight Software” on Mars!

“Engage….make it so”

Data is retained for query, validation

Data is updated to reflect current known information/ settings

Data is set

Data is updated based upon collected information

©copyright Cloud Perspectives 2013 All rights reserved 27

No tape drives on Mars

Data typically stored in non-volatile memory

Blobs and other formats

One physical “file/ container” may contain a combination of logical entities

Thousands of attributes are retained and stored on Curiosity

©copyright Cloud Perspectives 2013 All rights reserved 28

Logically need to categorize attributes◦ Arm Joint Angles

◦ Camera Mast Joint Angles

◦ Suspension Joint Angles

◦ High-Gain Antenna Joint Angles

◦ Position

◦ Orientation

◦ Images

◦ Logs

©copyright Cloud Perspectives 2013 All rights reserved 29

Last Guarded Position: Here we have placed a tool on a location. The flight software remembers that location so we can command any tool on the arm back to that location, we can command the cameras to look at that location, etc. This persists over boot cycles so we can wake up the next day and use that location in a command.

Goal: This is a location that we are driving to. We can tell the rover to turn to face that location (or away from it), to drive to it, to point cameras at it, etc.

©copyright Cloud Perspectives 2013 All rights reserved 30

©copyright Cloud Perspectives 2013 All rights reserved 31

“Driving System”

EO Right 999 degrees and 99 meters forward “blind mode”

DETs: 15, FTRs: Movement Log (updated), Orientation (2 FTR)

FPs: 6

EO Right 999 degrees and 99 meters forward “visual odometry mode””

DETs: 15, FTRs: Movement Log (updated), Orientation, Position

Suspension Joint Angles (4 FTR)

FPs: 7

Context

Boundary…Leaving Earths Atmosphere

Functionality Discovered on Mars!

Mars FPA Extensions/ Considerations

Mission Summary

32©Copyright Cloud Perspectives 2013 All rights reserved

Some corrections

Some new functions

Some changes

Recent release:◦ Autonomous navigation

◦ Avoid pointing the ChemCam at the sun

©copyright Cloud Perspectives 2013 All rights reserved 33

Determine what is the unique end-to-end function (from user perspective) for the application in question

A user can be a person or thing!

Identify the unique elementary processes◦ Smallest unit of activity meaningful to the user,

leaving the application in a consistent state

◦ It should be unique from other EP’s (unique edits, attributes, processing logic)

©copyright Cloud Perspectives 2013 All rights reserved 34

Count the data attributes entering or exiting the application boundaries

Count the “retained” data applying the IFPUG rules for categorizing updated vs referenced vs “logically technical hard coded”

©copyright Cloud Perspectives 2013 All rights reserved 35

How much functionality does the “flight software” support, resident on the rover asset?

How much/ what functionality was defined in the “sequence set” for today? Is it a reasonable set of sequences, given the resources available (schedule and energy for example)

©copyright Cloud Perspectives 2013 All rights reserved 36

In some cases the “poke update” to specific data can be a “bug” fix

In some cases a “poke update” is to update a business recognizable parameter

In some cases a “poke update” is of a technical, none business nature (updating essentially a “hard coded” value)

◦ Local guidelines help insure consistency overall and by mission and understand terminology

©copyright Cloud Perspectives 2013 All rights reserved 37

Context

Boundary…Leaving Earths Atmosphere

Functionality Discovered on Mars!

Mars FPA Extensions/ Considerations

Mission Summary

38©Copyright Cloud Perspectives 2013 All rights reserved

Boundaries – check

Data – check

Functions – check

Unique characteristics – check

Unique perspectives – check

Requires Context, Extensions and Interpretations with a Value Focus

Pricing and Software Estimation require calibration on Mars

©copyright Cloud Perspectives 2013 All rights reserved 39

40©Copyright Cloud Perspectives 2013 All rights reserved

Image credit: NASA/JPL-Caltech/MSSS

Special Thanks to

John Wright and

NASA JPL!

http://www.jpl.nasa

.gov/

Recommended