Software Requirements Management



Similar documents
INDEPENDENT VERIFICATION AND VALIDATION OF EMBEDDED SOFTWARE

SOFTWARE CONFIGURATION MANAGEMENT GUIDEBOOK

IT Project: System Implementation Project Template Description

MS Word Exhibit 300 for O&M (BY2008) (Form) / JSC Space Shuttle Program Flight Software (Item)

NDIA CMMI Technology Conference and User Group NASA Experience with CMM and CMMI

F15. Towards a More Mature Test Process. Anne Mette-Hass. P r e s e n t a t i o n

Test Plan Template: (Name of the Product) Prepared by: (Names of Preparers) (Date) TABLE OF CONTENTS

Development of a Safety Knowledge Base

Capability Maturity Model Integration (CMMI SM ) Fundamentals

How To Integrate Software And Systems

<Project Name> Software Quality Assurance (SQA) Plan. <Document Control Number>

Requirements Definition and Management Processes

Criteria for Flight Project Critical Milestone Reviews

Use of CCSDS File Delivery Protocol (CFDP) in NASA/GSFC s Flight Software Architecture: core Flight Executive (cfe) and Core Flight System (CFS)

Process Optimization to Identify Potential Human Error in Flight Hardware Processing

Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti

Configuration & Build Management

Software Configuration Management Plan

Overview and History of Operating Systems

Space Flight Project Work Breakdown Structure

CalMod Design-Build Electrification Services

Life Cycle Quality Gates

PART ONE OVERVIEW. JSC Space Shuttle Program Flight Software

Usability in SW-Engineering-Prozessen und in CMMI

Goddard Procedures and Guidelines

PROJECT MANAGEMENT PLAN TEMPLATE < PROJECT NAME >

A Brazilian Software Industry Experience in Using ECSS for Space Application Software Development

SOFTWARE TEST DESCRIPTION (STD) FOR ON BOARD AUTOMOBILE SYSTEM (OBA) OF DRIVING ASSISTANCE SYSTEM (DAS)

CONTENTS. Preface. Acknowledgements. 1. Introduction and Overview 1 Introduction 1 Whatis the CMMI"? 2 What the CMMI* is Not 3 What are Standards?

CMS Central Monitoring System

SOFTWARE ASSURANCE STANDARD

Effective Methods for Software and Systems Integration

CLASS SPECIFICATION Systems Support Analyst I

Functional Area 3. Skill Level 301: Applications Systems Analysis and Programming Supervisor (Mercer 1998 Job 011)

Independent Test and Evaluation

CLASS SPECIFICATION Systems Support Analyst II

Aligning IT investment and Business

CONFIGURATION MANAGEMENT PLAN

Integrating Quality Assurance into the Software Development Life Cycle

Firing Room Remote Application Software Development

Page 1 of 7 Effective Date: 12/18/03 Software Supplier Process Requirements

SOFTWARE DEVELOPMENT STANDARD FOR SPACECRAFT

Using Rational Software Solutions to Achieve CMMI Level 2

TREASURY INSPECTOR GENERAL FOR TAX ADMINISTRATION

Rotorcraft Health Management System (RHMS)

Organizations remain under intense pressure to reduce costs To reduce costs we must increase efficiency in resource allocation

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc.

Abstract. 1 Introduction

EIIF DAS/RSD Replacement Prototype Initiative EI2F

Fundamentals of Measurements

Program Lifecycle Methodology Version 1.7

CONTROL DATA" 3200 Computer system / ~eal Time Applications

Software Quality Assurance Plan

Product Development Plan for Program Integration Management Operations PDP MS-001

Appendix E Program Management Plan Template

Software Project Management Plan. Team Synergy Version: 1.0 Date: 1/27/03

NODIS Library Program Formulation(7000s) Search

Efficient Verification for Avionic Product Development

Configuration Management in the Aircraft Industry

TREASURY INSPECTOR GENERAL FOR TAX ADMINISTRATION

Product Build. ProPath. Office of Information and Technology

Please Note: Temporary Graduate 485 skills assessments applicants should only apply for ANZSCO codes listed in the Skilled Occupation List above.

Exhibit to Data Center Services Service Component Provider Master Services Agreement

Naval Research Laboratory Automated Ground Operations

Fibre Channel Overview of the Technology. Early History and Fibre Channel Standards Development

Using the Agile Methodology to Mitigate the Risks of Highly Adaptive Projects

SOFTWARE SAFETY STANDARD

ESA s Data Management System for the Russian Segment of the International Space Station

This presentation covers virtual application shared services supplied with IBM Workload Deployer version 3.1.

An ITIL Perspective for Storage Resource Management

STAR JPSS Algorithms Integration Team Configuration Management Plan Version 1.2

GOP Minimum Additional Requirements List.R1.xlsx. Page 2 of 11

Software Quality Assurance Plan

How To Write An Slcm Project Plan

Teaching Continuous Risk Management Using A Requirements Management Tool

Developing CMMI in IT Projects with Considering other Development Models

<name of project> Software Project Management Plan

Independent Validation of Software Safety Requirements for System of Systems by S. Driskell, J. Murphy, J.B. Michael, M. Shing

Developing Work Breakdown Structures

DATA REQUIREMENTS DESCRIPTION (DRD)

Chapter 10. System Software Safety

Plan-Driven Methodologies

Software Engineering: Analysis and Design - CSE3308

CMMI for Development Introduction & Implementation Roadmap

Space product assurance

AIRCRAFT WORK BREAKDOWN STRUCTURE (WBS) LEVELS (FROM MILITARY SPECIFICATION 881)

Software Configuration Management. Addendum zu Kapitel 13

TIMED Mission System Engineering and System Architecture

Software Engineering of NLP-based Computer-assisted Coding Applications

Automated Office Systems Support Quality Assurance Plan. A Model DRAFT. December 1996

CHAPTER 7 Software Configuration Management

MKS Integrity & CMMI. July, 2007

PART ONE OVERVIEW. JSC Space Shuttle Program Integration

MSITel provides real time telemetry up to 4.8 kbps (2xIridium modem) for balloons/experiments

ITSM Maturity Model. 1- Ad Hoc 2 - Repeatable 3 - Defined 4 - Managed 5 - Optimizing No standardized incident management process exists

Manage Software Development in LabVIEW with Professional Tools

Performance Baseline. Component 8 Installation and Maintenance of Health IT Systems. Performance Baseline: Testing

Technical Baseline Management

A Database Security Management White Paper: Securing the Information Business Relies On. November 2004

Configuration Management. Process Guide

Transcription:

Software Requirements Management Space Shuttle Lessons Learned #3377 1/27/2011 Hal Turner NASA Kennedy Space Center NE-C1 Application and Simulation Software Engineering Harold.H.Turner@nasa.gov (321) 861-3789

Application Software Launch Processing System (LPS) Application Software is used in the Launch Control Center Firing Room to perform Vehicle & Ground Support Equipment (GSE) testing and launch of the Space Shuttle. GOAL: Ground Operation Aerospace Language Developed (1977) as a very high order, English-like language Approximately 2500 programs, 2 Million lines of code (Firing Room/Launch Configuration) > 1000 GOAL Displays, > 760 PCGOAL Displays > 50,000 Command and Measurement parameters: 30,000 Vehicle / 20,000 GSE (Function Designators/FDs, Measurement & Stimuli IDs/MSIDs)

Firing Room 4 Layout

CHARTERED Application Software Working Teams The following ASWTs have been officially chartered by the LPS Application Software TRP.

Application Software Working Teams* (ASWT) KSCL-1160-0369 ASWT CHARTER The ASWT is the primary point of contact and responsible for all aspects of Checkout, Control and Monitor Subsystem (CCMS) Application Software development. Each ASWT is responsible for the development and maintenance of the Application Software required to support checkout and launch activities for the associated vehicle/ground support equipment (GSE) systems. Each ASWT can be responsible for one or more Computer Software Configuration Items (CSCI), which equates to an Application Software set. * 21 ASWTs

ASWT Member Responsibilities Shuttle/System Engineering Determination of requirements needed for checkout and launch Allocation of requirements to hardware and software implementations Development of software requirements Technical support to software engineering Validation of application software Software Engineering Assessment of requirements Code development and verification Maintenance of design documentation Assist Shuttle/System engineering

These (ASWT) functions include: A. Requirements Identification The team is responsible for identifying the software requirements necessary to implement all program directed changes, all Operational Maintenance Requirements Specification (OMRS) and Launch Commit Criteria (LCC) requirements and all operational enhancement changes necessary to improve the safety and efficiency of checkout and launch activities. The specifics of how to perform this identification are defined in USA004715 and USA004732. B. Application Software Development Planning The team shall be responsible for the detailed planning of all software development activities related to the system. This includes maintaining a prioritized schedule of all mandatory and non-mandatory requirements that must be implemented. These plans and schedules shall be maintained by the team for tracking, statusing and presentation to management upon request. C. Application Software Development The team is responsible for development, testing and verification of all Application Software for the associated vehicle/gse system. The specifics of the development activities are defined in USA004715 and USA004732. D. Action Item Tracking The team is responsible for tracking and responding to all external action items assigned (e.g., by TRP, CCB) and all internal action items (e.g., Shuttle Configuration Management System (SCMS) or Open Item Status Report (OISR) items within the allotted time frames. These action items shall be tracked in the ASWT minutes, with responsibility for the action assigned to specific individuals and projected completion dates defined. The team is responsible for implementing any tasks resulting from the assigned action items. E. Issue Resolution The team is responsible for resolving all issues associated with the Application Software of all associated CSCIs. If an issue cannot be resolved at the ASWT level, the ASWT Lead and CSCI Lead may elevate the problem to their First Line Managers and/or the Application Software Technical Review Panel (TRP) for assistance in reaching resolution. Refer to IDS-SEPG-058, LPS Defined Software Process, for the issue escalation process to use in these instances.

Requirements Processing and Control Boards Data Change Request (DCR) Shuttle Recon Coordination (SRC) Level II Shuttle Data Control Board (SDCB) Level II Shuttle SW Change Request (SSCR), Discrepancy Report (DR), Flight SW Change Proposal (FCP), Software Authorization Notice (SAN), Initial-Load DCR (I-Load DCR) Space Shuttle Main Engine Requirements Change Notice (SSME RCN), Engineering Change Proposal (ECP) Shuttle Engine Software Review Group (SRG) SASCB Pre-board Shuttle Avionics Software Control Board (SASCB) Level II Integrated Data Systems Configuration Control Board (IDS CCB) (Local KSC Board) Requirements Change Notice (RCN) (with software changes) Launch Commit Criteria (LCC) Change Notice (LCN) Engineering Support Request (ESR) Operations & Maintenance Requirements Specification (OMRS) Test Requirements Approval Process LCC Working Group CSP Change Screening Panel Program Requirements Control Board (PRCB) Level II

Requirements Processing and Control Boards BOEING, H.B. Data Change (DC), DCR SSCR,FCP DR ECP, SAN, RCN, DCR s JSC NASA Control boards (SASCB, PRCB) USA Data RECON, Flight SW (FSW) Marshall Space Flight Center Shuttle Engine or engine controller related ECP,SAN,RCN,DCR s DC, DCR (STAR) SSCR, FCP DR KSC Payloads KSC Ground Ops DC, DCR (MAST) SSCR, FCP (FSW, Multi-function Electronic Display System (MEDS) DR (FSW) ECP, SAN, RCN (engine) RCN (Requirements) LCN (LCC) Master Change Request (MCR) PRCBD (directives) ESR (ground S/W)

Software Engineering Life Cycle PHASES: 1. Project/Task Initiation 2. Requirements Analysis and Definition 3. Software Implementation 4. Acceptance Test 5. Release and Delivery A succession of phases in a software development life cycle are formalized in a software process model

Software Engineering Model Capability Maturity Model Integration (CMMI) developed by Software Engineering Institute (SEI), Carnegie Mellon University CMMI provides guidance for improving an organization s processes and the ability to manage the development, acquisition, and maintenance of products or services United Space Alliance (USA) Integrated Data Systems Space Flight Operations Contract (SFOC): CMM Level 3, Dec. 2004 (Advent of LPS Software Requirements Tagging and Tracking ) CMMI Level 3, Mar. 2006

Project/Task Initiation (PS 1.1, 1.2) Project/Task Planning Requirements Analysis and Definition (PS 2.2) Requirements Definition Functional Design Design (PS 2.3) Test Plan Generation Detailed Design DB Compiler Code Implementation (PS 2.4) Application Program Library Maintenance (APLM) Program Repository Fetch Source Acceptance Test Procedure Generation 1 Display 2 TCID Specific Data Configure Acceptance Test (PS 2.5) Designated TCID Release and Delivery (PS 3.5) Change Package or SOW Project Plans Engineering Assessment SRS SDD (Prelim) PDR SDD (Final) Code Unit Test Integrated Test Source Code Unit Test Procedures Integrated Test Procedures CI Beta Test User Guide Acceptance Test Procedures RTVM CI Log TRR Acceptance Test Formal RESULT OF ADDITIONAL/DELAY OF REQUIREMENTS C O S T 8 7 6 5 4 3 2 User Testing 1 2 Set VFY Flag Load to Prod TCID Delivery Release Package Major Milestones: Activity Product DRR 0 CDR VRR Release 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Verification Milestone 1 Peer Reviewed Product TIME SOW Statement of Work DRR Design Readiness Review PDR Preliminary Design Review CDR Critical Design Review RTVM Requirements Traceability Verification Matrix SDD Software Design Document SRS Software Requirements Specification VRR Verification Readiness Review CI Configuration Inspection TRR Test Readiness Review (occurs after VRR but prior to the start of Acceptance Test)

Backup

Space Shuttle Lessons Learned #3377 Abstract: The ability to manage and trace software requirements is critical to achieve success in any software project and to produce software products in a cost-effective and timely fashion. Conversely, incomplete, incorrect, or changing software requirements result in cost and schedule impacts that increase the later they occur (or are discovered) in the software life cycle. Current software technology, processes, and tools provide innovative, automated methods to facilitate optimum management of software requirements. Additionally, a collaborative relationship between the customer, or user, of the software and the developer of the software is essential to the success of the software project. That is, the user/customer requirements must be accurately communicated and understood to be correctly implemented in the software in order to meet end-users needs. Description of Driving Event: The legacy (manual) methods for managing the implementation of software requirements for the Space Shuttle Program have had a major impact on cost and schedule over the entire software development life cycle. Lesson(s) Learned: Manual methods for management of software requirements are ineffective and inefficient, contributing to excessive costs as well as schedule delays. Aspects of the management of software requirements include the elicitation/specification, analysis, development, tracking, and changing of software requirements used during the implementation and sustaining phases of the software life cycle. Management and traceability of software requirements are critical to the success of producing reliable, high-quality, and safe software products that meet end-users requirements and needs in a cost-effective and timely fashion. Cost and schedule impacts that result from incomplete, incorrect, or changing software requirements increase the later they occur in the software life cycle. Current software technology, processes, and tools provide innovative automated methods to facilitate optimum management of software requirements (e.g., IBM Rational DOORS, IBM Rational RequisitePro, Cradle requirements management software). Additionally, a collaborative relationship between the customer using the software and the developer providing the software is paramount to the success of the software project. More specifically, the users/customers must effectively define and accurately communicate their requirements to the developer. For example, the user s defined requirements should be clearly stated and unambiguous, concise, complete, autonomous, able to be implemented, and testable. Recommendation(s): Adopt and use current, state-of-the-art software processes and tools to manage requirements for software development. Value and foster the collaborative relationship between the customer who uses the software and the developer providing the software to ensure the success of the software project.

Launch Processing System (LPS) KATS Kennedy Avionics Test Set Simulation Server OPF O L S A H I M Orbiter / LPS Signal Adaptor RSI Obiter Processing Facility Ground Data Bus Ground Support Equipment H I M GSE MLP Mobile Launch Platform CCMS V&DA: Video & Data Assembly SSV Space Shuttle Vehicle Checkout, Control, & Monitor Subsystem LDB PCM PCM O L S A Launch Data Bus Pulse Code Moduation Launch Data Bus Hardware Interface Module Raw Data H I M VAB RPS Record & Playback Subsystem Vehicle Assembly Building Strip Charts Analog Tape Recorders PCGOAL Data (Shuttle Data Stream) SDC Data SDC Shuttle Data Center <:::::> Real-time Simulation Interface LON LPS Operations Network <:::::> GSE FEPS MASTER CONSOLE Downlink PCM FEPS Bus Monitor Data / PC-GOAL Link :::::... Front End Processors Common ::::: :::::... Data... Buffer C1... :::::... C12 Uplink PCM FEP LDB FEP FRONT ROOM PDR / SPA Processed Data Recorder Shared Peripheral Area SCRS Bulk Disk Line Printers Strip Chart Recording Subsystem 9.6K BPS / Modem Link INTG BKUP PCGOAL Workstations