Markland J. Benson, Computer Systems Manager, White Sands Complex, (575) 527-7034, Technology Infusion of CodeSonar into the Space.

Slides:



Advertisements
Similar presentations
Testing Workflow Purpose
Advertisements

Lecture 2 1 Introduction to Software Engineering.
Systems Analysis and Design: What is it? Systems analysis: the systematic study of the information needs and problems of some organizational domain in.
Cingular Case Studies September 24, © 2007 BearingPoint, Inc.IM – Content, Portals and IntegrationCommunications and Utilities AT&T B2B Wireless.
CS 325: Software Engineering January 13, 2015 Introduction Defining Software Engineering SWE vs. CS Software Life-Cycle Software Processes Waterfall Process.
1 State of Michigan Achieving Software Process Improvement with Capability Maturity Model (CMM)
W5HH Principle As applied to Software Projects
Telecom Lifecycle Management Solutions for Sales Partners.
University of Southern California Center for Systems and Software Engineering Productivity Data Analysis and Issues Brad Clark, Thomas Tan USC CSSE Annual.
Copyright © 2006 Software Quality Research Laboratory DANSE Software Quality Assurance Tom Swain Software Quality Research Laboratory University of Tennessee.
SE 555 Software Requirements & Specification Requirements Management.
SWE Introduction to Software Engineering
E-Commerce: The Second Wave Fifth Annual Edition Chapter 12: Planning for Electronic Commerce.
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
13.1 © 2007 by Prentice Hall 13 Chapter Building Systems.
Introduction/overview, Process model. What is Software Engineering? Why we need Software Engineering? Software Process Models.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 18 Maintaining.
1 ECE 453 – CS 447 – SE 465 Software Testing & Quality Assurance Case Studies Instructor Paulo Alencar.
Chapter 5 Initiating and Planning Systems Development Projects
PMSS Final SOW May 22 nd, Statement of Work 2 GLENN RESEARCH CENTER PROJECT MANAGEMENT SUPPORT SERVICES (PMSS) The Contractor shall provide expert.
CS527: (Advanced) Topics in Software Engineering Overview of Software Quality Assurance Tao Xie ©D. Marinov, T. Xie.
ShopKeeper was designed from the ground up to manage your entire fleet maintenance operations … from 1 user to 100, including full security features that.
System Analysis and Design
Objectives of the Lecture
Systems Development Lifecycle Project Identification & Selection Project Initiation & Planning Analysis Logical Design Physical Design Implementation Maintenance.
ISU Alumni Association Online Store Abstract The Iowa State University Alumni Association desires a complete overhaul of their online store. The current.
SCSC 311 Information Systems: hardware and software.
High Availability for Information Security Managing The Seven R’s Rich Schiesser Sr. Technical Planner.
Testing Workflow In the Unified Process and Agile/Scrum processes.
.1 RESEARCH & TECHNOLOGY DEVELOPMENT CENTER SYSTEM AND INFORMATION SCIENCES JHU/MIT Proprietary Titan MESSENGER Autonomy Experiment.
Markland J. Benson, Computer Systems Manager, White Sands Complex, (575) , Technology Infusion of CodeSonar into the Space.
HIGH INTENSITY DRUG TRAFFICKING AREA FINANCIAL MANAGEMENT DATABASE PROJECT.
Johnson Space Center SAS05_CodeSurfer_Infusion_JSC_Markovich S&MA Directorate Can CodeSurfer Increase Code Inspection Efficiency? A Research Infusion Project.
Software Project Management Lecture # 3. Outline Chapter 22- “Metrics for Process & Projects”  Measurement  Measures  Metrics  Software Metrics Process.
Chapter 1. Introduction.
Verifying Autonomous Planning Systems Even the best laid plans need to be verified Prepared for the 2005 Software Assurance Symposium (SAS) DS1 MSL EO1.
An Introduction to Software Engineering. Communication Systems.
Verifying AI Plan Models Even the best laid plans need to be verified Margaret Smith – PI Gordon Cucullu Gerard Holzmann Benjamin Smith Prepared for the.
SAS ‘05 Reducing Software Security Risk through an Integrated Approach David P. Gilliam, John D. Powell Jet Propulsion Laboratory, California Institute.
Formal Methods in Software Engineering
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 18 Maintaining.
Measuring and Estimating Software Defects Loren Stroup UCF EEL6883: Software Engineering II.
SOFTWARE METRICS. Software Process Revisited The Software Process has a common process framework containing: u framework activities - for all software.
March 2004 At A Glance NASA’s GSFC GMSEC architecture provides a scalable, extensible ground and flight system approach for future missions. Benefits Simplifies.
March 2004 At A Glance autoProducts is an automated flight dynamics product generation system. It provides a mission flight operations team with the capability.
Corporate Capabilities October 2015 Corporate Capabilities October 2015 Disruptive Technology Associates, Ltd.
Reaching New Heights... Processing Operational Decisions Chapter IX Integrating Marketing in the Leisure Industry.
1 Overview of Maintenance CPRE 416-Software Evolution and Maintenance-Lecture 3.
System Maintenance Modifications or corrections made to an information system after it has been released to its customers Changing an information system.
February Monthly Status Review (MSR) Note: No presentation this month
March 2004 At A Glance The AutoFDS provides a web- based interface to acquire, generate, and distribute products, using the GMSEC Reference Architecture.
July 2003 At A Glance The GMSEC provides efficient and enabling GSFC mission services and products for the next decade. Benefits Establishes a Single Strategic.
The Information Systems Development Processes Chapter 9.
Making the Case for Business Intelligence
Chapter 18 Maintaining Information Systems
State of Michigan Achieving Software Process Improvement with
Chapter 18 Maintaining Information Systems
2016 Maintenance Innovation Challenge
Clinical Engineering Lecture (3).
9/18/2018 Department of Software Engineering and IT Engineering
Introduction to Software Testing
Technology Adoption Services
Colorado Space Grant Consortium
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
The Human Element in Unmaintainable Systems
Requirements Management - I
Testing and Inspection Present and Future
Chapter 13 Building Systems.
Chapter 18 Maintaining Information Systems
Presentation transcript:

Markland J. Benson, Computer Systems Manager, White Sands Complex, (575) , Technology Infusion of CodeSonar into the Space Network Ground Segment (RII07) Software Assurance Symposium Executive Summary

2 Relevance to NASA (1) The NASA Space Network is a fleet of nine geosynchronous satellites that provide continuously available “bent pipe” communications to customers at and below low earth orbit as well as three ground stations that control the satellites and act as a communications conduit to mission operations centers RelevanceProblemApproachCapabilitiesChallengesMeasures Image credit: Canadian Space Agency educational resource web site;

3 Relevance to NASA (2) Human Spaceflight, Space Science Earth Science and other government agencies (National Science Foundation, for example) rely on the Space Network for many forms of communication including launch support, tracking, telemetry, and command, voice communication, and delivery of science data RelevanceProblemApproachCapabilitiesChallengesMeasures

4 Problem Statement The Space Network requires availability of all communications equipment at minimum 97.00% of all time and requires 99.90% proficiency in delivery of scheduled communications events. The standard of excellence in availability and proficiency are more stringent (98.00% and 99.97%, respectively). The Space Network equipment is controlled by over eight million lines of software, which cannot feasibly be exhaustively tested*. Software Engineering, A Practitioner’s Approach, 4 th edition, Chapter 16: Software Testing Techniques provides an explanation and example of this phenomenon, which is applicable to software in general. RelevanceProblemApproachCapabilitiesChallengesMeasures

5 Approach Space Network software maintenance performs formal demonstration, analysis, test, and manual product inspections The approach of this technology infusion initiative is to reduce loss of availability and proficiency caused by software via insertion of an automated software analysis tool into the software maintenance lifecycle RelevanceProblemApproachCapabilitiesChallengesMeasures

6 Current Project Capability Software has historically accounted for an annual average of 28% of the Space Network loss of availability and proficiency (low of 11% and high of 57% annually) Percentages reflect the portion of losses attributed to software with respect to the total loss within the control of the Space Network. For example, if the annual average loss attributable to the Space Network was 500 out of 130k total hours (99.996% proficiency), then the portion caused by software would be 500 x 0.28 = 140 hours. RelevanceProblemApproachCapabilitiesChallengesMeasures

7 Planned Project Capability Technology infusion of static code analysis is expected to improve the existing baseline (reduce losses due to latent defects) and prevent certain classes of defects from entering the operational system (new losses not otherwise eliminated). Automated static code analysis is expected to find defects sooner to prevent rework, which permits better use of resources. RelevanceProblemApproachCapabilitiesChallengesMeasures Image credit: CrossTalk: TheJournal on Defense Software Engineering; Determining Return on Investment Using Software Inspections; Don O’Neill;

8 Future Project Capability GrammaTech’s CodeSonar was selected as the source code analysis tool on two Space Network C++ software systems because of the past success of GrammaTech’s CodeSurfer product in application to other NASA software and the beta capabilty of CodeSonar to analyze the Ada language, which constitutes over 25% of the Space Network software lines of code Success in this project will lead to automated code analysis becoming an integral part of the Space Network software maintenance processes RelevanceProblemApproachCapabilitiesChallengesMeasures Image credit: GrammaTech;

9 Technical Challenges (1) The Space Network uses a variety of compilers and operating systems, some up to twenty years old. Effort required to apply the source code analysis tool across the many platforms and languages is a challenge. Mitigation for platforms not supported by the tool is to perform static analysis on a modern, sterile* configuration management system. CodeSonar is advertised as working best by “watching” compilation but can also be used on a system other than the development system. A “sterile” system hosts the source code but does not have all tools needed to build the code. RelevanceProblemApproachCapabilitiesChallengesMeasures Image credit: GrammaTech;

10 Technical Challenges (2) Source code analysis tools have historically produced a large number of false positives. Differentiating false positives from real defects can require too much time from developer staff to be cost effective. Formal training and support from the vendor in the tools capabilities to narrow false positives and availability of staff familiar with automated source code analysis tools will streamline the filtering process to overcome this challenge. RelevanceProblemApproachCapabilitiesChallengesMeasures

11 Acceptance Measures (1) Measures are meant to aid in determining the impact of the technology on the project both in the expenditure of effort and the technical results of the technology Average time to correct defect Average data loss per defect RelevanceProblemApproachCapabilitiesChallengesMeasures

12 Acceptance Measures (2) The decision to make permanent the use of static source code analysis as part of the maintenance lifecycle is based on weighing factors influenced by use of the tool Time to operate tool Time to review discrepancy report Defect count in operationsData loss caused by defect Time to correct discrepancy Time to inspect code RelevanceProblemApproachCapabilitiesChallengesMeasures