Skip all navigation and jump to content

Jump to site navigation

NASA Logo

+ Visit NASA.gov

Assurance Process for Complex Electronics

HOME

Complex Electronics Background

Complex Electronics Assurance Process

TECHNIQUES

CHECKLISTS

Site Map

Techniques

Requirements Evaluation

Risk Analysis

Requirements Review

Interface Analysis

Traceability Analysis

Decision Tables and Trees

Fault Tree Analysis

Failure Modes and Effects Analysis

Design Evaluation

Design Review

Change Impact Analysis

Functional and Physical Configuration Audits

 

Change Impact Analysis

It is important to manage change no matter when it occurs. The earlier in the project change occurs, the easier it is to manage. Even the best managed project will experience change.

Change needs to be reviewed by a variety of people, not just the Design Engineer. He proposes the changes to accommodate the requirement change, bug fix or upgrade. The Systems Engineer assesses how the changes affect the system while the Safety Engineer determines the safety impact of the change.

Things to think about include

  • Does the number of Inputs or Outputs change
  • Has the clock timing changed
  • Has the circuit timing been affected
  • Does the change affect a critical path
  • Is a Hazard Control affected
  • Does the change cross chip boundaries
  • Has the chip type or number of pins changed
  • Will this change affect inputs to other chips
  • What about heat output and power consumption
  • Is an Internal or External interface changed
  • What new bugs can be introduced
  • What simulations and test verifications will have to be repeated
  • Will the system still meet the requirements
Let’s use the following example to do impact analysis. Input B previously feed directly into Block 14. What does the addition of Block 15 do to the circuit?

 

 You could start with a standard circuit trace. That will show you conditional changes that occur for Block 16 based on inputs A, B, & C .However, this does not necessarily show the affects on Block 14. The timings and simulations were initially done using different inputs for the block. Three inputs now control the output of Block 14.

 Things you can do make manage change:

  1. Partition the design into logical components. This can limit analysis to a small number of blocks
  2. Avoid the use of self modifying code and constructs such as goto's in the code
  3. Always code the expected action as the IF part of the decision statement. This will make the code easier to follow and faster in execution
  4. Avoid the use of negative logic when possible
  5. Add exception handling mechanisms into the code. (hardware, software or both)
  6. Document the design including the code. This will make analysis easier
  7. Use a standard coding convention for all projects
  8. Use meaningful names for signals, variables, etc.
  9. Be aware of tool induced errors
  10. Control the outputs of the design on both power-up and power-down
  11. Beware of Clock Skew and always use the same clock edge for triggering
  12. Perform a detailed peer review on the design
  13. Manage the design using a configuration management or version control system
  14. Update the documentation to reflect the change(s) 

A Change Impact Checklist is provided to help you assess proposed change.

 

FirstGov logo

+ NASA Privacy, Security, Notices

NASA

Curator: Richard Plastow
NASA Official: Cynthia Calhoun
Last Updated: 08/01/2006