SlideShare a Scribd company logo
1 of 59
Carl J. Daniele Office of the Chief Engineer Training Coordinator Mark Goldman GSFC Senior Human Resources Development Specialist
Presentation Includes ,[object Object],[object Object],[object Object],[object Object],10/10
Mark Goldman, Senior Human Resources Development Specialist NASA/GSFC, Code 114 [email_address] 301-286-8852 DACUM Presented on February 22, 2012
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],What Is DACUM? February 22, 2012
DACUM Philosophy ,[object Object],[object Object],[object Object],10/10
Major DACUM Workshop Outcomes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],10/10
Who Serves on a DACUM Panel? ,[object Object],[object Object],[object Object],[object Object],10/10
What’s the ‘Flow’ of the DACUM Session? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],10/10
What is Phase 2 All About? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],10/10
How Does Phase 2 Work? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],10/10
The Phase 2 Session is Complete – Now What? ,[object Object],[object Object],[object Object],[object Object],10/10
Use of DACUM Process to Develop a Curriculum for Software Engineering at NASA ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],10/10
NASA Software Engineering DACUM History 10/10 Date Activity November 14 – November 15 , 2005 in Greenbelt, MD Phase 1 Panel Met November 30 – December 1, 2005 in Greenbelt, MD Phase 2 Panel Met April 27 – 28, 2006 in Greenbelt, MD Phase 3 Panel  Met (baselined  DACUM 5.6) August 18, 2011 In Greenbelt , MD Review/Update Session   Goddard Space Flight Center  ( Updated course information for 15 of 16 Courses)  November 17, 2011 in Huntsville, AL Updated course information for last Course December 16, 2011 Baseline Document 5.6 was updated per the DACUM updates and sent to NASA Centers to review. December 16, 2011 NASA Ames Research Center Proposed Addition of new DACUM Course in Human Computer Interface
10/10
10/10 CURRENT  DACUM  ( Blue – word change;  Yellow – no change ;  White – added requirement;  green - delete  ) Early Career Courses Mid-Career Courses Later Career Course           0. Courses Outside OCE 1 .  Found of  Aerospace at NASA (FOU) 2. SWE 101 3. Reqs. Dev.&Mgmt (incl. Inspections) 4. SW Implem. 5. SW Testing 6. SWE 201 (incl. Maint.) 7. SW Config. Mgmt. 8. SW Design 9. SW for Embedded Systems 10.  SWE Assurance and Safety 11. SWE 301 12. SW & Process  Metrics 13. SW Estimations 14. SW Process Improvement 15. SW Acquisition 16. Formal Methods for SW       H1  Provide feedback to team members K13   Knowledge of spacecraft and aeronautics systems and architecture E7  Knowledge of monitoring contractor performance Ax1 Define and validate Scope C1  Write code consistent with design specification D1  Generate test documents (plans/procedures consistent with requirements)  Ax  Requirements management (duplicate card, refresher from course #3) F11  Perform configuration management B1  Select architecture Z40  Knowledge of Architectural Design of Real-Time Software (duplicate card) F14  Perform SW hazard analyses Ax  Requirements Management (duplicate card, refresher from course #3) G12  Analyze metrics G3  Estimate SW schedule G12  Analyze metrics  (duplicate card) E2  Develop SW part of SOW for RFP and task orders L1  Formal modeling to capture the logic and discrete mathematic elements of a system/subsystem       H2  Develop teamwork K16  Knowledge of aerospace environment F7  Participate in peer reviews/inspections Ax2 Develop SW requirements (including derived SW requirements) C2  Conduct unit tests D3  Develop test tools and simulations B6  Perform trade analyses Z18  Data Management B2  Identify SW components Z41  Knowledge of Hardware and SW Co-design Techniques F15  Perform SW safety analyses B7  Develop and execute acquisition strategy Z69 Identify measurement goals & objectives at all levels - projects through Agency Gx Software size-estimation attributes (e.g. complexity) I3  Maintain organizational assets  (e.g. templates, metrics) E3  Develop SW acquisition/contractor requirements for RFP L2  Formal specifications
10/10 3. Requirements Development and Management including Inspections Ax1 Define and validate Scope Ax2 Develop SW requirements (including derived SW requirements) Ax3 Manage requirements and maintain traceability([3] Note: Traceability is maintained throughout the SW lifecycle and a repeated theme throughout the curriculum.) A1  Elicit requirements A2  Develop software requirements from operations concept A3  Analyze requirements and associated risks A4  Validate Requirements (ex.. prototype, simulation, inspection, etc.) A5  Identify verification methods A6   Document interface requirements A7  Document SW requirements (e.g. SRS [SW Requirement Specifications], system requirements, etc.) F13  Perform traceability  (bidirectional) K17  Knowledge of how to write requirements Z08  Participate in trade studies Z09 Knowledge of SW Requirements tools Z103 Knowledge of NPR 7150.2, NASA and Center Standards, and CMMI direction and guidance related to software requirements and management Z111 How to monitor and control software requirement creep/volatility (moved from  SW Estimations class) Z123  Use of state machines and discrete logic to model requirements Q14  Knowledge of value of IV&V during requirements development Q15  Knowledge of use case development Q16  Knowledge of Requirements Phasing Q17  Knowledge of Requirements Volatility   Z115  Knowledge of value of SW related peer reviews/ inspections  Z116  Peer reviews/ inspections process (e.g., planning, checklist, readiness & completion criteria, tracking actions, recording basic measurements, correction of problems, and follow up) Z117  Knowledge of peer reviews/ inspections roles and responsibilities Z118  Peer reviews/ inspections tailoring guidelines Z124  Knowledge of NPR 7150.2, NASA Preferred Standards, and CMMI direction and guidance related to peer review/inspection direction and guidance related to peer review/inspection
10/10 Comparison of SWEET to SWEBOK and IEEE NASA Software Engineering Excellence Training  (SWEET) Software Engineering Body of Knowledge (SWEBOK) ACM - IEEE Software Engineering 2004 3. Software Requirements Development and Management Software Requirements The Software Engineering Discipline A1.  Elicit Requirements Requirements Elicitation Eliciting requirements A2. Develop operations concept Requirements Process Requirements fundamentals A3. Analyze Requirements Requirements Analysis Requirements specification & documentation A4. Validate Requirements Requirements Validation Requirements validation A5. Identify verification methods Requirements Specification   A6. Document Interface Requirements Software Requirements Fundamentals   A7. Document Software Requirements Practical Considerations   Ax  Define and validate Scope     Ax  Develop SW requirements (including derived SW requirements)     Ax  Manage requirements and maintain traceability([3] Note: Traceability is maintained throughout the SW lifecycle and a repeated theme throughout the curriculum.)     F13  Perform traceability  (bidirectional)     K17  How to write requirements     Z08  Participate in trade studies     Z09  SW Requirements tools Software Requirements Tools   Z103  NPR 7150.2, NASA Core Standards, NASA Preferred Standards, and CMMI direction and guidance related to SW requirements and management     Z123  Use of state machines and discrete logic to model requirements    
Curriculum Check ,[object Object],10/10
10/10 NASA SWE DACUM Course STATUS 1. Foundations of Aerospace at NASA Current APPEL Course 2. SWE 101 NASA Size Defense Acquisition University Course – Software Acquisition Management 101 3. Requirements Development and Management NASA Centers Recommend Courses 4. Software Implementation NASA Centers Recommend Courses 5. Software Testing NASA Centers Recommend Courses 6. SWE 201 NASA will Develop 7. Software Configuration  Management NASA Centers Recommend Courses 8. Software Design NASA Centers Recommend Courses
10/10 NASA SWE DACUM Course STATUS 9. Software For Embedded Systems NASA Centers Recommend Courses 10. Software Engineering Assurance and Safety NASA Centers Recommend Courses 11. SWE 301 Course Exists – Developed by NASA 12. Software and Process metrics NASA Centers Recommend Courses 13. Software Estimations NASA Centers Recommend Courses 14. Software Process Improvement NASA Centers Recommend Courses 15. Software Acquisition NASA Centers Recommend Courses 16. Formal Methods for Software NASA Centers Recommend Courses
NASA Centers Recommend Courses  ,[object Object],[object Object],[object Object],[object Object],10/10
Proposed Schedule for Course Development ,[object Object],[object Object],[object Object],[object Object],10/10
BACKUP – Mark Goldman
What Does the DACUM Session Look Like? ,[object Object],[object Object],[object Object],[object Object],10/10
How is the Data Captured? ,[object Object],[object Object],[object Object],[object Object],[object Object],10/10
 
10/10
10/10 The NASA Software Engineer develops, acquires, manages, maintains and researches software systems using disciplined, quantifiable, systematic approaches.
10/10 NASA SWE TASKS A1 A2 A3 A4 A5 A6 A7         A.  Develop Software Requirements Elicit requirements Develop operations concept Analyze requirements Validate requirements (e.g. prototype, simulation) Identify verification methods Document interface requirements Document software requirements  (e.g. SRS [Software Requirement Specs], system requirements)         B1 B2 B3 B4 B5 B6 B7 B8 B9 B10 B11 B12 B. Design Software Select architecture Identify software components Analyze data flow Analyze control flow Choose algorithm Perform trade analysis Decide make/buy Identify software development environment Certify software development architecture Design external interfaces Verify design Generate design documentation C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C. Implement Software Write code Conduct unit tests Debug code Analyze code Inspect code Integrate software components Integrate software and hardware Perform margin analyses Verify code meets coding standards Generate user documentation Generate 'as-built' document C12 C13                   Update design documents Generate version description document         D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D. Verify Software Generate test documents (plans/proc) Identify test environment Develop test tools and simulations Certify test environment Test software Generate problem reports Analyze test results Verify code by analysis Perform 'proof of correctness' (formal methods) Document verification results Support hardware/software integration testing Deploy software
10/10 NASA SWE TASKS E1 E2 E3 E4 E5 E6 E7 E8 E9 E10   E E. Acquire Software  ( ADV .) Interact with Procurement ( a lot!) Develop SOW for RFP Develop software system requirements for RFP Develop DRD (Data Requirements Documents) Develop evaluation criteria Evaluate proposals Monitor contractor performance Participate in technical audits Evaluate deliverables Accept product formally   F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F F. Manage Crosscutting Processes Maintain software Collect metric data Research new technology Manage change requests Participate in software change boards Manage problem reports Participate in peer reviews Conduct peer reviews Participate in formal reviews Conduct formal reviews  (ADV) Perform CM F12 F13 F14 F15 F16 F17 F18   Prototype solutions Perform traceability (bi-directional) Perform software hazard analysis Perform software safety analysis Perform software FMEA (Failure Modes Effects Analysis) Perform software reliability analysis Perform IT security assessments         G1 G2 G3 G4 G5 G6 G7 G8 G9 G10 G11 G12 G G. Manage Software Development  ( ADV .) Classify criticality of software Estimate cost Estimate schedule Generate planning documents Plan build content Comply with HQ policies/requirements Manage software engineering processes Manage software resources  (technical, human, budget) Manage software schedules Monitor software development progress Manage risks Analyze metrics H1 H2 H3 H4 H5 H6 H7         H H. Manage Software Team Provide feedback to team members Develop teamwork Monitor team members Develop team competencies Maintain team's technical credibility Provide input for employee evaluations Resolve interpersonal conflicts
10/10 NASA SWE TASKS I1 I2 I3 I4               I. Support Organization Write proposals in response to RFPs Set up labs Maintain organizational assets (e.g. templates, metrics) Improve software engineering processes               J1 J2 J3 J4 J5 J6 J7 J8 J9 J10 J11 J. Continue Professional Development Participate in professional organizations Attend classes Attend conferences Present at conferences  (ADV) Read journals Mentor people  (ADV) Be mentored Obtain professional certifications Obtained advanced degrees Rotate assignments Teach J12 J13 J14 J15               Attend colloquia Review lessons learned Network (meet and talk with colleagues) Play  
10/10
10/10 Baseline 5.6 NASA Software Engineering DACUM Course coverage  ( Green fully ;  Orange partially ;  Red little ) Early Career Courses Mid-Career Courses Later Career Course           0. Courses Outside OCE 1. Intro Aerospace at NASA 2. SWE 101 3. Reqs. Dev.&Mgmt (incl. Inspections) 4. SW Implem. 5. SW Testing 6. SWE 201 (incl. Maint.) 7. SW Config. Mgmt. 8. SW Design 9. SW for Embedded Systems 10.  SW Safety & Reliability 11. SWE 301 12. SW & Process  Metrics 13. SW Estimations 14. SW Process Improvement 15. SW Acquisition 16. Formal Methods for SW       H1  Provide feedback to team members K13   spacecraft and aeronautics systems and architecture E7  monitoring contractor performance A1  Elicit requirements C1  Write code consistent with design specification D1  Generate test documents (plans/procedures consistent with requirements)  Ax  Requirements management (duplicate card, refresher from course #3) F11  Perform configuration management B1  Select architecture Z41  Hardware and SW Co-design Techniques F14  Perform SW hazard analyses Ax  Requirements Management (duplicate card, refresher from course #3) G12  Analyze metrics G3  Estimate SW schedule G12  Analyze metrics  (duplicate card) E2  Develop SW part of SOW for RFP and task orders L1  Formal modeling to capture the logic and discrete mathematic elements of a system/subsystem       H2  Develop teamwork K16  aerospace environment F7  Participate in peer reviews/inspections A2  Develop operations concept C2  Conduct unit tests D3  Develop test tools and simulations B6  Perform trade analyses Z18  Data Management B2  Identify SW components Z42  Board Support Package Design F15  Perform SW safety analyses B7  Decide make/buy Z69  Identify measurement goals & objectives Gx  SW size estimations I3  Maintain organizational assets  (e.g. templates, metrics) E3  Develop SW acquisition/contractor requirements for RFP L2  Formal specifications
10/10 NASA Software Engineering Excellence Training  (SWEET) Software Engineering Body of Knowledge (SWEBOK) ACM - IEEE Software Engineering 2004 8. Software Design Software Design Software Design B1 Select Architecture Software Design Fundamentals Architectural design B2. Identify software components Key Issues In Software Design Detailed design B3. Analyze data flow Software Structure and Architecture Design support tools and evaluation B4. Analyze Control Flow Software Design Quality Analysis and Evaluation Human computer interface design B5. Choose Algorithm Software Design Notations Design strategies B6. Perform Trade Studies Software Design Strategies and Methods Design concepts B7. Decide make/buy Software Design Tools B8. Identify Software Development Environment   B9. Certify Software Development Architecture     B10. Design external interfaces     B11. Verify design     B12. Generate Design Documentation     Bx  Intermediate design technologies (similar card)     F13  Perform traceability  (bidirectional)     Z34  Architectural SW design     Z35  Detailed SW design     Z36  SW system architectures     Z37  design patterns     Z38  SW design development tools     Z39  Object-Oriented Design     Z40  Architectural Design of Real-Time SW     Z123  Use of state machines and discrete logic to model designs    
Use the Course/Competency Matrix (horizontal)
2. Software Acquisition                                    2A. Acquisition Processes, Contract Management and  contractor performance   ●         ●                 ●  
3. Software Engineering Life Cycle Processes                                   3A. Operational Concept     ●                         ●   3B. Software Product Requirements Development   ● ●                             3C. State Machines and Discrete Logic for Modeling     ●           ● ●               3D. Software Design   ●     ●       ● ●               3E. Software Implementation: Coding, Debugging, Unit Testing, Integration, Optimizing, and Documentation   ●     ● ●                       3F. Embedded Systems Software Implementation   ●               ●               3G. Software Engineering Tools and Equipment    ●   ● ● ● ● ● ●   ●           3H. Peer Reviews/inspections   ●   ● ●   ●                     3I. Software Testing Techniques and Environments   ●     ● ●       ●   ●           3J. Software Deployment, Transition to Operations, and Maintenance             ●                     3K. Software Engineering Processes and Process Improvement    ●         ● ●       ● ●   ●     3L. Software Assurance   ●         ●       ●             3M. Software Safety and Reliability                      ●             3N. Verification and Validation    ● ●   ●   ●   ●               ●
4. Software Engineering Management                                   4A. Software Engineering Planning and Management             ●         ● ● ●       4B. Software Metrics   ●   ●     ● ●         ●   ● ●   4C. Risk Management   ●                   ●   ●       4D. Software Estimation             ●             ●       4E. Requirements Management      ●       ●         ●          
mm m Software Engineering Competencies  Software  Acquisition  Software Engineering Management Acquisition Processes, Contract Management and Contractor Performance Software Engineering Planning and management Software Estimation Risk Management Software Metrics Requirements Management Software Safety and Reliability Software Assurance Information Technology Security Operational   Concept Software Product Requirements Development State machines and Discrete Logic for Modeling Software Design Embedded Systems Software Implementation Software Testing Techniques and Environments Verification and  Validation Software Engineering Processes and Process Improvement Formal Modeling and Validation Configuration and Change Control Software Assurance Processes Software Requirements Development  Process Peer Reviews/Inspections Software Product Improvement Processes Software Engineering Tools and Equipment Software Design Process Software Implementation: Coding, Debugging, Unit Testing, Integration, Optimizing, and Documentation Software Deployment, Transition to Operations, and Maintenance Post Software Delivery Process Software Implementation Process Software Testing Process Software Classification Competencies
10/10 1.   Foundations of Aerospace at NASA Course Current NASA SWE DACUM Course Requirements K13   Knowledge of spacecraft and aeronautics systems and architecture K16  Knowledge of aerospace environment K20a  Knowledge of NASA policies and procedures Q2  Knowledge of Impact of software on Modern Aerospace Systems Color Code Blue Updated wording Yellow Original Wording White Added
10/10 2. Software Engineering 101 (SWE 101) Course E7  Knowledge of monitoring contractor performance F7  Participate in peer reviews/inspections K1 Knowledge of software development life cycles/methodologies K2  Knowledge of software engineering processes K3a  Knowledge of prototyping techniques Kx1 Knowledge of software requirements development K4 Knowledge of design technologies/tools  (reinforced/amplified in SW Design course) K5  Knowledge of user interfaces K6  Knowledge of software testing techniques K18  Knowledge of flight and ground systems (originally referred to as ‘embedded systems’) Kx2  Knowledge of NASA Advanced Technology, Basic and Applied Research, and Institutional systems  K19  Knowledge of risk management (As applicable to software systems. Checklist of software risks, reading knowledge of NASA risk matrix, understanding of NASA continuous risk management process diagram, etc.) matrix, understanding of NASA continuous risk management process diagram, etc.) K20b Knowledge of NASA engineering and software policies and procedures including the classification of software) ([2] a common thread throughout the curriculum is coverage of the related NPR 7150.2 requirements including 2210) K21  Knowledge of Quality Management (QM) systems (originally referred to as ‘Knowledge of applicable ISO standards)  (reinforced/amplified in SW 201, SW 301 and Software Process Improvement courses) K23 DELETE SW process improvement (e.g. CMMI)  (originally referred to as ‘CMMI’)  (reinforced/amplified in SW Process Improvement course)  Ka industry SW standards and usage of SW standards at NASA Centers, including standards program description Z01  Knowledge of acquisition processes Z02   Knowledge of software assurance and IV&V Z03  Knowledge of verification and validation  Z04  Knowledge of formal review process Z05 Knowledge of configuration management Z06 Knowledge of SW metrics (include uses and benefits of) Q1  Knowledge of Software Engineering Standards (replace K23) Q3  Knowledge of  Software System Architecture (intro) Q4  Intro to Model Based Development Q5  Intro to User-Centered Design Q6  Knowledge of Software implementation techniques/methodologies Q7   Knowledge of estimation techniques Q8  Knowledge of basic cyber-security
10/10 3. Requirements Development and Management including Inspections Course Ax1 Define and validate Scope Ax2 Develop SW requirements (including derived SW requirements) Ax3 Manage requirements and maintain traceability([3] Note: Traceability is maintained throughout the SW lifecycle and a repeated theme throughout the curriculum.) A1  Elicit requirements A2  Develop software requirements from operations concept A3  Analyze requirements and associated risks A4  Validate Requirements (ex.. prototype, simulation, inspection, etc.) A5  Identify verification methods A6   Document interface requirements A7  Document SW requirements (e.g. SRS [SW Requirement Specifications], system requirements, etc.) F13  Perform traceability  (bidirectional) K17  Knowledge of how to write requirements Z08  Participate in trade studies Z09 Knowledge of SW Requirements tools Z103 Knowledge of NPR 7150.2, NASA and Center Standards, and CMMI direction and guidance related to software requirements and management Z111 How to monitor and control software requirement creep/volatility (moved from SW Estimations class) Z123  Use of state machines and discrete logic to model requirements Q14  Knowledge of value of IV&V during requirements development Q15  Knowledge of use case development Q16  Knowledge of Requirements Phasing Q17  Knowledge of Requirements Volatility   Z115  Knowledge of value of SW related peer reviews/ inspections  Z116  Peer reviews/ inspections process (e.g., planning, checklist, readiness & completion criteria, tracking actions, recording basic measurements, correction of problems, and follow up) Z117  Knowledge of peer reviews/ inspections roles and responsibilities Z118  Peer reviews/ inspections tailoring guidelines Z124  Knowledge of NPR 7150.2, NASA Preferred Standards, and CMMI direction and guidance related to peer review/inspection direction and guidance related to peer review/inspection
10/10 4. Software Implementation Course C1  Write code consistent with design specification C2  Conduct unit tests C3  Debug code C4  Analyze code C5  Inspect code C6  Integrate SW components C7  Integrate SW on to hardware platform C8  Perform margin analysis C9 Verify code meets coding and documentation standards C10  Generate user documentation C11  Generate ‘as built’ documentation C12  Update design documents C13  Generate version description document Ca  Configuration control of implementation products Cb  DELETE use of style guides in code development Cc  Create Executables Cd Perform Design Traceability (bidirectional) Ce Knowledge of Auto coding techniques and tools Cf Knowledge of Code and Data Partitioning techniques F18 Implement SW consistent with Cyber security design Z10 Integrate with reused/modified SW, legacy SW, COTS, and open source D8 DELETE Verify code by analysis Z11 Knowledge of  SW code development tools Z104  Maintain/update data dictionary Z105  Develop unit test plans and procedures Z121 Knowledge of NPR 7150.2, NASA and Center Standards, and CMMI direction and guidance related to software implementation Z204  Conduct performance testing Z205  Optimize code Q23  Include domain/environmental considerations Q25  Knowledge of Debugging Strategies Q45  Knowledge of Static Analysis Tools
10/10 5. Software Testing Course D1  Generate test documents (plans/procedures consistent with requirements)  D3  Develop test tools and simulations D5  Test SW D6  Generate problem reports D7  Analyze test results D8 Verify code by analysis (moved from Course 4) D11  Support hardware/SW integration testing Da Knowledge of SW’s role in system testing Db Knowledge of hardware-in-the-loop testing of SW systems Dc Perform End-to-end SW testing F13  Perform traceability  (bidirectional) Kx  Perform testing COTS, MOTS software and open source Z12   Document test results Z13 Knowledge of SW testing tools Z120  Knowledge of NPR 7150.2, NASA Standards, and CMMI direction and guidance related to software design Z202  Off nominal testing Z203  Certification testing ([5] A theme throughout the set of courses includes the varying levels of rigor and techniques needed to develop and maintain SW up through human rated space systems.) Q24  Knowledge of types of software testing Q26  Validate software Q27  Knowledge of test completion criteria Q28  Accredit software testing tools Q29  Develop test environment Q30  Perform test reviews
10/10 6. Software Engineering 201(SWE 201) Including Maintenance Course   Ax  Requirements management (duplicate card, refresher from course #3) B6  Perform trade analyses D9  Knowledge of formal specifications, model checking, and formal verification (formal methods) E8  Participate in technical audits E9  Evaluate contract deliverables F2  Collect and evaluate metric data F5  Participate in SW change boards F8  Conduct peer reviews/inspections F9  Participate in formal reviews F18 Perform cyber security design  (duplicate card G1  Identification of SW classifications (duplicate card) G4 Generate planning documents (including life cycle planning ) G5 Plan Build Content I1 In support of organization write proposals K1  Knowledge of software development lifecycles (similar card; e.g. waterfall, incremental, spiral, agile) K3  Knowledge of prototyping K7  Knowledge of software planning process (cost estimate, WBS, earned value management, etc.) K18a More in-depth knowledge of flight and ground systems (similar card) K23  Additional knowledge of software process improvement (e.g. CMMI)  (similar card, progression of knowledge from SW Engineering 101) K25a  Knowledge of computational modeling and simulations techniques K32a  Knowledge of estimation techniques (cost, scope, schedule …)  Z14  Monitoring contract performance Z15  Integration of SW life cycles with system life cycles Z16  Overview of SW development tools and equipment (including where NASA does trial studies and research on tools) Z105 Knowledge of NPR 7150.2, NASA and Center Standards, NASA Preferred and Center Standards, and CMMI direction and guidance related to SE 201 topics Z106 Generate teaming agreements including contractor teams ([6] Teaming/intergroup coordination should be a common thread throughout the curriculum.) Z125  Plan for SW assurance activities Z200 Knowledge of Intermediate NASA Advanced Technology, Basic and Applied Research, and Institutional systems Q9  Testing techniques and tools review/refresher Q10  CM Review/Refresher Q11  Knowledge of Stakeholder Management
10/10 6. Software Engineering 201 (SWE 201) Including Maintenance continued D12  DELETE Deploy SW F1  Maintain SW F4  Manage change requests F6  Manage problem reports Z17 Knowledge of Reverse engineering tools and techniques Z107  Deployment of SW and transition to operations (replaces D12) DELETE  G5  Plan build content Z108 Knowledge of SW maintenance plans and procedures Z109 Knowledge of NPR 7150.2,  and Center Standards, and CMMI direction and guidance related to software maintenance
10/10 7. Software Configuration Management Course F11  Perform configuration management Z18  Data Management Z19  CMMI Process Area for Configuration Management Z20 NPR 7150.2, NASA and Center Preferred Standards direction and guidance related to SW configuration management Z21 How to prepare a SW CM plan — activities, schedules, responsibilities, resources, tools Z22  Selecting work products to control Z23  Selecting appropriate levels of control — informal, semi-formal, formal Z24  SCM requirements and activities performed by SW engineering and other groups Z25  Defining check-in/check-out procedures Z26  Developing organizational SW CM policies and procedures Z27  Establishing and maintaining SW baselines Z28  Establishing and maintaining a configuration management library system Z29  Establishing and running a SW Configuration Control Board (SCCB) Z30  Tracking and controlling changes to work product Z31  Conducting SW CM audits - the unique CMMI requirements for PPQA and SW CM Z32  Production, storage, update and retrieval of SCM reports and records Z33  Selecting and using SCM tools Z201  Collecting and analyzing configuration management metrics Q31  Knowledge Of PDLM Tools with Respect to CM Q40  Knowledge of Change Management
10/10 8. Software Design Course B1  Select architecture B2  Identify SW components B3  Analyze data flow B4  Analyze control flow B5  Choose algorithm B10  Design external interfaces (including user interfaces) B11  Verify design B12  Generate design documentation Bx Identify Intermediate design technologies/tools (similar card) C8 Perform margin analysis (duplicate card) F13  Perform traceability  (bidirectional) F18  Perform Cyber security Design Z34   Knowledge of Architectural SW design Z35 Knowledge of Detailed SW design Z36 Knowledge of SW system architectures Z37 Knowledge of design patterns Z38 Knowledge of SW design development tools Z39 Knowledge of Object-Oriented Design Z40  Knowledge of Architectural Design of Real-Time Software Z120  Knowledge of NPR 7150.2, NASA Standards, and CMMI direction and guidance related to software testing Z123  Use of state machines and discrete logic to model designs Q18  Knowledge of Software Architecture Analysis Techniques Q19  Conduct Formal Design Reviews Q20  Knowledge of Software Safety Critical Design Techniques Q21  Evaluate Legacy Systems
10/10 9. Software For Embedded Systems Course Z40  Knowledge of Architectural Design of Real-Time Software (duplicate card) Z41  Knowledge of Hardware and SW Co-design Techniques Z41a Capability to design hardware and software Z42  Fundamental Knowledge of Board Support Package Capabilities Z43  Knowledge of Compiler, linkers design Z44  Knowledge of Emulator design techniques Z44a Ability to use emulator design techniques Z45  Knowledge of Embedded SW design Z45a Ability to test embedded design Z45b Knowledge of embedded software testing techniques (including design for testing) Z46  Defining and managing margins (by phase) Z47  Knowledge of Real-time kernels Z48   Knowledge of   Operating systems and SW executives (including real time operating systems and COTS operating systems) Z49  Capability to develop software drivers  Z50  Knowledge of Real time and embedded programming considerations and constructs Z51  Knowledge of Microprocessors/Microcontrollers Z52  Understanding Embedded Systems I/O Z53 Knowledge of Digital Signal Processors Z54  Knowledge of Data bus,  interfaces, and protocols Z55  Knowledge of and design considerations for the selection of Single Board Computers
10/10 9. Software For Embedded Systems (continued) Z56  Knowledge of and design considerations and selection of FPGAs, ASICs (hardware logic devices) Z56a Capability to conduct trade studies between software and hardware logic devices (FPGAs, ASICS) Z57  Knowledge of Embedded system development tools Z58  Knowledge of Hardware in the loop testing of Software systems (duplicate card) Z58a Ability to perform hardware in the loop testing of software systems Z59  DELETE End-to-end testing (duplicate card) Z60  Ability to estimate and track memory size and through put Z123  Knowledge of state machines and discrete logic  Z123a  Ability to model   embedded systems/subsystem Z206  Knowledge of Debugging techniques Z206a  Ability to use Debugging techniques Q50  Knowledge of Fault tolerance techniques for embedded software Q51 Knowledge of fault tolerance management techniques for embedded software Q52 Knowledge of design considerations for safety critical embedded software Q53 Knowledge of Assurance Techniques for embedded software Q54 Knowledge of physical security considerations and access controls for embedded systems Q55 Knowledge of unique management considerations  for the development of embedded software Q56  Knowledge of Embedded Software Standards Q57 Knowledge of the management of embedded software system development (acquisition)
10/10 10. Software  Engineering Assurance and Safety Course F14  Perform SW hazard analyses F15  Perform SW safety analyses F16  Perform SW FMEA  (Failure Modes Effects Analysis) F17  Perform SW reliability analyses Z61 Knowledge of SW safety management and planning Z62 Knowledge of SW assurance and IV&V Z63  Knowledge of  NASA Safety standard requirements and practices Z64 Knowledge of Human rated and Mission Critical SW techniques Z65 Knowledge of NASA SW best practices for SW safety and reliability Z66 Perform Traceability to FMEAs, hazard analyses, safety analyses Z110 Knowledge of  NPRs, NASA Standards, and CMMI (e.g., PPQA) direction and guidance related to SW safety and reliability. Q32  Knowledge of Fault tree analysis Q33  Support Process and product quality audits
10/10 11. Software Engineering 301  (SWE 301)  Course Ax  Requirements Management (duplicate card, refresher from course #3) B7 Develop and execute acquisition strategy B8  Identify SW development environment B9  Certify SW development environment D2  Identify test environment D4  Certify test environment F10  Conduct formal reviews (advanced tasks) G1 Identification of SW classifications ([7] Note: NASA’s SW classification definitions are contained in NPR 7150.2. NASA criteria for determining whether SW is “safety critical” is contained  in NASA-STD 8739.8)) G7  Manage SW engineering processes G8  Manage SW resources (technical, human, budget) G9  Manage SW schedules G10  Monitor SW development progress G11  Manage risks H4  Develop team competencies K31  Project management skills Z67 Knowledge of SW Development/Management Planning Z74 Using Metrics in project planning (duplicate card) Z106 Generate  and manage teaming agreements (duplicate card) (include Contractors on team) Z207 Knowledge of NPR 7150.2, NASA and Center Core Standards, NASA Preferred Standards, and CMMI direction and guidance related to SE 301 topics Q12   Taylor SWE Processes to Project (will replace G1 in SWE 301 eventually) Q13  Manage Stakeholders Q14  Knowledge of value of IV&V during requirements development  (duplicate card Q22  Manage intellectual property Q31  Knowledge Of PDLM Tools with Respect to CM (duplicate card) Q37  Collect and Submit Lessons Learned Q38  Apply Past Lessons Learned
10/10 12. Software and Process Metrics Course G12  Analyze metrics Z69 Identify measurement goals & objectives at all levels - projects through Agency Z70  Identify metrics Z71 Knowledge of the benefits of measurement  Z72 Knowledge of management issues and indicators  Z73 Knowledge of performance analysis  Z74 Knowledge of  using metrics in project planning  Z75 Knowledge of analyzing earned value  Z76  Implementing project measures and coverage of CMMI unique guidance for Measurement Analysis Z77  Identify key areas of concern and uses of measurement for project management  Z78  Define indicators based upon what a project manager would want to know  Z79 U se measurement to support decision making  Z80  Understand where measurement is used from the perspective of a generic management process (NPR 7150.2) and a reference model such as CMMI  Z81  use measurement data to communicate more clearly to all project stakeholders Z82  Trending analysis (both within a given project and organizational for local, Center, & Agency needs) Q34  Collect Metrics
10/10 13. Software Estimations Course G3  Estimate SW schedule Gx Software size-estimation attributes (e.g. complexity) Gy  Throughput estimating K32  SW estimation skills overview (cost, scope, schedule, etc.) T9 SW cost estimation tools/methods Z84 Defining Your Project  Scope Z85  Adjusting For the Environment Z86  "What If" Modeling Z87  Knowledge of Scheduling and Project Constraints Z88  Project Risk and Sensitivity Analysis Z89  Software Case Studies/Class Demonstrations Z90  How to identify risks Z91  How to identify, collect, and report on data that impacts SW estimates Z111  DELETE How to monitor and control SW requirement creep and volatility Z92  How to monitor and control project SW costs and schedule Z93  Keys to successful implementation of a SW estimation and tracking strategy Q35  Knowledge of how to use trades to ask for money Q36  Identify resources
10/10 14. Software Process Improvement Course G12  Analyze metrics  (duplicate card) I3  Maintain organizational assets  (e.g. templates, metrics) I4  Improve SW engineering processes (e.g. IDEAL Model, Information mapping, process change method, etc.) K23  SW process improvement (using CMMI) Z208  Perform SCAMPI-A/B/C appraisals Z209  Perform Team Support related to CMMI Q39  Knowledge of characteristics of a good process
10/10 15. Software Acquisition Course E2  Develop SW part of SOW for RFP and task orders E3  Develop SW acquisition/contractor requirements for RFP E4 Develop SW DRD (Data Requirements Document)/CDRL E5  Develop proposal  evaluation criteria E6  Evaluate suppliers and proposals E7  Monitor contractor performance (including insight and oversight, duplicate card) E9  Evaluate contract deliverables  (duplicate card) E10  Accept product formally Z94  Supporting the development of Concept of Operations Z95  Develop CDRL (Contract Data Requirements List) Z96  Define Metrics, Reviews, etc. for SW as part of a contractual RFP or task order for evaluation of products and processes Z97  Define product specification standards Z98  Define quality surveillance plan and define incentives Z99  How to write a Request for Proposal to obtain the SW data needed to perform an independent estimate Z100  How to structure Contract Line Item Numbers to obtain the data needed to track project progress and cost Z112  Define and validate the scope of the acquisition Z113  Identify some of the major problems, symptoms, and potential impacts encountered when acquiring SW-intensive systems and proven techniques to avoid them Z114  Recovery methods when SW acquisition related problems challenge a project  Z122 NPR 7150.2, NASA Standards, and CMMI direction related to SW that needs to be rolled down to the contractor Q41   Knowledge of FAR/Escrow as related to software Acquisition and Intellectual Property Q42  Knowledge of general (NASA and Center) acquisition strategies for COTS software Q43  Execute Performance Evaluation Plan Q44  Knowledge of Alternate Acquisition Strategies
10/10 16. Formal Methods for Software Course L1  Formal modeling to capture the logic and discrete mathematic elements of a system/subsystem L2  Formal specifications L3  Model checking L4  Formal verification techniques Q46  Knowledge of Tools and techniques for formal methods.
Final SWEET Framework ,[object Object],[object Object],[object Object],[object Object],[object Object],10/10
STEP Framework Overall STEP Program Commitment Estimated Hours per STEP Level STEP Training Elements Level 1 Level 2 Level 3 Level 4 Core Training 3 24 40 N/A Discipline Training 18 100 137 137 Domain Training 4 40 TBD TBD Total  Academic Hours 25 164 177 (+TBD) 137 (+TBD) On-the-Job Training N/A 200 400 400 Reference Material N/A varies varies varies Years of work experience N/A 1y-3y 3y-5y 8y-10y Complete Enrichment Experience N/A Yes Yes Yes Pass a Comprehensive Level Test N/A N/A Yes-Written N/A Pass Peer Review Panel N/A N/A N/A Yes Pass a Qualification Board N/A N/A Yes Yes Continuing Education N/A 16 24 32

More Related Content

What's hot

Dan galorath
Dan galorathDan galorath
Dan galorathNASAPMC
 
Kapruch steve
Kapruch steveKapruch steve
Kapruch steveNASAPMC
 
Bhasin reinert barnes_golden
Bhasin reinert barnes_goldenBhasin reinert barnes_golden
Bhasin reinert barnes_goldenNASAPMC
 
Zimmerman
ZimmermanZimmerman
ZimmermanNASAPMC
 
Reed simpson
Reed simpsonReed simpson
Reed simpsonNASAPMC
 
Jenks.ken
Jenks.kenJenks.ken
Jenks.kenNASAPMC
 
Spm ksp
Spm kspSpm ksp
Spm kspktosri
 
Chen.tim
Chen.timChen.tim
Chen.timNASAPMC
 
Kelly.elliott
Kelly.elliottKelly.elliott
Kelly.elliottNASAPMC
 
Snow lee
Snow leeSnow lee
Snow leeNASAPMC
 
Terry.conroy
Terry.conroyTerry.conroy
Terry.conroyNASAPMC
 
Dean.baker
Dean.bakerDean.baker
Dean.bakerNASAPMC
 
Agile for DHS 2017 June26
Agile for DHS  2017 June26Agile for DHS  2017 June26
Agile for DHS 2017 June26Glen Alleman
 
Vonnie simonsen
Vonnie simonsenVonnie simonsen
Vonnie simonsenNASAPMC
 
Costello kenneth
Costello kennethCostello kenneth
Costello kennethNASAPMC
 
Lawrence.jim
Lawrence.jimLawrence.jim
Lawrence.jimNASAPMC
 
Daniel.dvorak
Daniel.dvorakDaniel.dvorak
Daniel.dvorakNASAPMC
 
Software Project Managment
Software Project ManagmentSoftware Project Managment
Software Project ManagmentSaqib Naveed
 

What's hot (20)

Dan galorath
Dan galorathDan galorath
Dan galorath
 
Kapruch steve
Kapruch steveKapruch steve
Kapruch steve
 
Bhasin reinert barnes_golden
Bhasin reinert barnes_goldenBhasin reinert barnes_golden
Bhasin reinert barnes_golden
 
Symons
SymonsSymons
Symons
 
Zimmerman
ZimmermanZimmerman
Zimmerman
 
Reed simpson
Reed simpsonReed simpson
Reed simpson
 
Spm tutorials
Spm tutorialsSpm tutorials
Spm tutorials
 
Jenks.ken
Jenks.kenJenks.ken
Jenks.ken
 
Spm ksp
Spm kspSpm ksp
Spm ksp
 
Chen.tim
Chen.timChen.tim
Chen.tim
 
Kelly.elliott
Kelly.elliottKelly.elliott
Kelly.elliott
 
Snow lee
Snow leeSnow lee
Snow lee
 
Terry.conroy
Terry.conroyTerry.conroy
Terry.conroy
 
Dean.baker
Dean.bakerDean.baker
Dean.baker
 
Agile for DHS 2017 June26
Agile for DHS  2017 June26Agile for DHS  2017 June26
Agile for DHS 2017 June26
 
Vonnie simonsen
Vonnie simonsenVonnie simonsen
Vonnie simonsen
 
Costello kenneth
Costello kennethCostello kenneth
Costello kenneth
 
Lawrence.jim
Lawrence.jimLawrence.jim
Lawrence.jim
 
Daniel.dvorak
Daniel.dvorakDaniel.dvorak
Daniel.dvorak
 
Software Project Managment
Software Project ManagmentSoftware Project Managment
Software Project Managment
 

Viewers also liked

Avio Aerospace Case Study
Avio Aerospace Case Study Avio Aerospace Case Study
Avio Aerospace Case Study Open iT Inc.
 
Quality in software industry
Quality in software industryQuality in software industry
Quality in software industryRicha Goel
 
Software Measurement: Lecture 1. Measures and Metrics
Software Measurement: Lecture 1. Measures and MetricsSoftware Measurement: Lecture 1. Measures and Metrics
Software Measurement: Lecture 1. Measures and MetricsProgrameter
 
Chapter 6 software metrics
Chapter 6 software metricsChapter 6 software metrics
Chapter 6 software metricsdespicable me
 

Viewers also liked (8)

Avio Aerospace Case Study
Avio Aerospace Case Study Avio Aerospace Case Study
Avio Aerospace Case Study
 
Quality in software industry
Quality in software industryQuality in software industry
Quality in software industry
 
Software Measurement: Lecture 1. Measures and Metrics
Software Measurement: Lecture 1. Measures and MetricsSoftware Measurement: Lecture 1. Measures and Metrics
Software Measurement: Lecture 1. Measures and Metrics
 
DACUM presentation
DACUM presentationDACUM presentation
DACUM presentation
 
Chapter 6 software metrics
Chapter 6 software metricsChapter 6 software metrics
Chapter 6 software metrics
 
Software Metrics
Software MetricsSoftware Metrics
Software Metrics
 
T 50 avionics embedded software development using java
T 50 avionics embedded software development using javaT 50 avionics embedded software development using java
T 50 avionics embedded software development using java
 
Software Metrics
Software MetricsSoftware Metrics
Software Metrics
 

Similar to Carol daniele

Testing material (1).docx
Testing material (1).docxTesting material (1).docx
Testing material (1).docxKVamshiKrishna5
 
Registration System for Training Program in STC
Registration System for Training Program in STCRegistration System for Training Program in STC
Registration System for Training Program in STCalraee
 
Final_Resume_Rev L
Final_Resume_Rev LFinal_Resume_Rev L
Final_Resume_Rev LHerve Pierre
 
Testing documents
Testing documentsTesting documents
Testing documentssuhasreddy1
 
Testing documents
Testing documentsTesting documents
Testing documentsHari Tiru
 
Managing project with the Fsoft Insight
Managing project with the Fsoft InsightManaging project with the Fsoft Insight
Managing project with the Fsoft InsightMobi Marketing
 
TBR Common Data Repository ITS13
TBR Common Data Repository ITS13TBR Common Data Repository ITS13
TBR Common Data Repository ITS13Thomas Danford
 
Armstrong
ArmstrongArmstrong
ArmstrongNASAPMC
 
Architecture presentation 8
Architecture presentation 8Architecture presentation 8
Architecture presentation 8Anoush Ghamsari
 
Team International Capabilities Presentation
Team International Capabilities PresentationTeam International Capabilities Presentation
Team International Capabilities PresentationNatalie Zheleznova
 
The Big Bang - Upgrading to Banner 8.1
The Big Bang - Upgrading to Banner 8.1The Big Bang - Upgrading to Banner 8.1
The Big Bang - Upgrading to Banner 8.1TJ Rains
 
iFL: An Interactive Environment for Understanding Feature Implementations
iFL: An Interactive Environment for Understanding Feature ImplementationsiFL: An Interactive Environment for Understanding Feature Implementations
iFL: An Interactive Environment for Understanding Feature ImplementationsICSM 2010
 
Resume_Amjed Noolvi
Resume_Amjed NoolviResume_Amjed Noolvi
Resume_Amjed NoolviAmjed Noolvi
 

Similar to Carol daniele (20)

Testing material (1).docx
Testing material (1).docxTesting material (1).docx
Testing material (1).docx
 
Harvinder Singh-Resume
Harvinder Singh-ResumeHarvinder Singh-Resume
Harvinder Singh-Resume
 
Registration System for Training Program in STC
Registration System for Training Program in STCRegistration System for Training Program in STC
Registration System for Training Program in STC
 
Resume April 2015
Resume April 2015Resume April 2015
Resume April 2015
 
Final_Resume_Rev L
Final_Resume_Rev LFinal_Resume_Rev L
Final_Resume_Rev L
 
Testing documents
Testing documentsTesting documents
Testing documents
 
Testing documents
Testing documentsTesting documents
Testing documents
 
vyshnavi
vyshnavivyshnavi
vyshnavi
 
Shylaja_Sr QA 6 years
Shylaja_Sr QA 6 yearsShylaja_Sr QA 6 years
Shylaja_Sr QA 6 years
 
Sdlc
SdlcSdlc
Sdlc
 
Managing project with the Fsoft Insight
Managing project with the Fsoft InsightManaging project with the Fsoft Insight
Managing project with the Fsoft Insight
 
TBR Common Data Repository ITS13
TBR Common Data Repository ITS13TBR Common Data Repository ITS13
TBR Common Data Repository ITS13
 
Armstrong
ArmstrongArmstrong
Armstrong
 
Ch07
Ch07Ch07
Ch07
 
Architecture presentation 8
Architecture presentation 8Architecture presentation 8
Architecture presentation 8
 
Team International Capabilities Presentation
Team International Capabilities PresentationTeam International Capabilities Presentation
Team International Capabilities Presentation
 
The Big Bang - Upgrading to Banner 8.1
The Big Bang - Upgrading to Banner 8.1The Big Bang - Upgrading to Banner 8.1
The Big Bang - Upgrading to Banner 8.1
 
Incremental model
Incremental modelIncremental model
Incremental model
 
iFL: An Interactive Environment for Understanding Feature Implementations
iFL: An Interactive Environment for Understanding Feature ImplementationsiFL: An Interactive Environment for Understanding Feature Implementations
iFL: An Interactive Environment for Understanding Feature Implementations
 
Resume_Amjed Noolvi
Resume_Amjed NoolviResume_Amjed Noolvi
Resume_Amjed Noolvi
 

More from NASAPMC

Bejmuk bo
Bejmuk boBejmuk bo
Bejmuk boNASAPMC
 
Baniszewski john
Baniszewski johnBaniszewski john
Baniszewski johnNASAPMC
 
Yew manson
Yew mansonYew manson
Yew mansonNASAPMC
 
Wood frank
Wood frankWood frank
Wood frankNASAPMC
 
Wood frank
Wood frankWood frank
Wood frankNASAPMC
 
Wessen randi (cd)
Wessen randi (cd)Wessen randi (cd)
Wessen randi (cd)NASAPMC
 
Vellinga joe
Vellinga joeVellinga joe
Vellinga joeNASAPMC
 
Trahan stuart
Trahan stuartTrahan stuart
Trahan stuartNASAPMC
 
Stock gahm
Stock gahmStock gahm
Stock gahmNASAPMC
 
Smalley sandra
Smalley sandraSmalley sandra
Smalley sandraNASAPMC
 
Seftas krage
Seftas krageSeftas krage
Seftas krageNASAPMC
 
Sampietro marco
Sampietro marcoSampietro marco
Sampietro marcoNASAPMC
 
Rudolphi mike
Rudolphi mikeRudolphi mike
Rudolphi mikeNASAPMC
 
Roberts karlene
Roberts karleneRoberts karlene
Roberts karleneNASAPMC
 
Rackley mike
Rackley mikeRackley mike
Rackley mikeNASAPMC
 
Paradis william
Paradis williamParadis william
Paradis williamNASAPMC
 
Osterkamp jeff
Osterkamp jeffOsterkamp jeff
Osterkamp jeffNASAPMC
 
O'keefe william
O'keefe williamO'keefe william
O'keefe williamNASAPMC
 
Muller ralf
Muller ralfMuller ralf
Muller ralfNASAPMC
 
Mulenburg jerry
Mulenburg jerryMulenburg jerry
Mulenburg jerryNASAPMC
 

More from NASAPMC (20)

Bejmuk bo
Bejmuk boBejmuk bo
Bejmuk bo
 
Baniszewski john
Baniszewski johnBaniszewski john
Baniszewski john
 
Yew manson
Yew mansonYew manson
Yew manson
 
Wood frank
Wood frankWood frank
Wood frank
 
Wood frank
Wood frankWood frank
Wood frank
 
Wessen randi (cd)
Wessen randi (cd)Wessen randi (cd)
Wessen randi (cd)
 
Vellinga joe
Vellinga joeVellinga joe
Vellinga joe
 
Trahan stuart
Trahan stuartTrahan stuart
Trahan stuart
 
Stock gahm
Stock gahmStock gahm
Stock gahm
 
Smalley sandra
Smalley sandraSmalley sandra
Smalley sandra
 
Seftas krage
Seftas krageSeftas krage
Seftas krage
 
Sampietro marco
Sampietro marcoSampietro marco
Sampietro marco
 
Rudolphi mike
Rudolphi mikeRudolphi mike
Rudolphi mike
 
Roberts karlene
Roberts karleneRoberts karlene
Roberts karlene
 
Rackley mike
Rackley mikeRackley mike
Rackley mike
 
Paradis william
Paradis williamParadis william
Paradis william
 
Osterkamp jeff
Osterkamp jeffOsterkamp jeff
Osterkamp jeff
 
O'keefe william
O'keefe williamO'keefe william
O'keefe william
 
Muller ralf
Muller ralfMuller ralf
Muller ralf
 
Mulenburg jerry
Mulenburg jerryMulenburg jerry
Mulenburg jerry
 

Recently uploaded

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

Carol daniele

  • 1. Carl J. Daniele Office of the Chief Engineer Training Coordinator Mark Goldman GSFC Senior Human Resources Development Specialist
  • 2.
  • 3. Mark Goldman, Senior Human Resources Development Specialist NASA/GSFC, Code 114 [email_address] 301-286-8852 DACUM Presented on February 22, 2012
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13. NASA Software Engineering DACUM History 10/10 Date Activity November 14 – November 15 , 2005 in Greenbelt, MD Phase 1 Panel Met November 30 – December 1, 2005 in Greenbelt, MD Phase 2 Panel Met April 27 – 28, 2006 in Greenbelt, MD Phase 3 Panel Met (baselined DACUM 5.6) August 18, 2011 In Greenbelt , MD Review/Update Session Goddard Space Flight Center ( Updated course information for 15 of 16 Courses) November 17, 2011 in Huntsville, AL Updated course information for last Course December 16, 2011 Baseline Document 5.6 was updated per the DACUM updates and sent to NASA Centers to review. December 16, 2011 NASA Ames Research Center Proposed Addition of new DACUM Course in Human Computer Interface
  • 14. 10/10
  • 15. 10/10 CURRENT DACUM ( Blue – word change; Yellow – no change ; White – added requirement; green - delete ) Early Career Courses Mid-Career Courses Later Career Course           0. Courses Outside OCE 1 . Found of Aerospace at NASA (FOU) 2. SWE 101 3. Reqs. Dev.&Mgmt (incl. Inspections) 4. SW Implem. 5. SW Testing 6. SWE 201 (incl. Maint.) 7. SW Config. Mgmt. 8. SW Design 9. SW for Embedded Systems 10. SWE Assurance and Safety 11. SWE 301 12. SW & Process Metrics 13. SW Estimations 14. SW Process Improvement 15. SW Acquisition 16. Formal Methods for SW       H1 Provide feedback to team members K13 Knowledge of spacecraft and aeronautics systems and architecture E7 Knowledge of monitoring contractor performance Ax1 Define and validate Scope C1 Write code consistent with design specification D1 Generate test documents (plans/procedures consistent with requirements) Ax Requirements management (duplicate card, refresher from course #3) F11 Perform configuration management B1 Select architecture Z40 Knowledge of Architectural Design of Real-Time Software (duplicate card) F14 Perform SW hazard analyses Ax Requirements Management (duplicate card, refresher from course #3) G12 Analyze metrics G3 Estimate SW schedule G12 Analyze metrics (duplicate card) E2 Develop SW part of SOW for RFP and task orders L1 Formal modeling to capture the logic and discrete mathematic elements of a system/subsystem       H2 Develop teamwork K16 Knowledge of aerospace environment F7 Participate in peer reviews/inspections Ax2 Develop SW requirements (including derived SW requirements) C2 Conduct unit tests D3 Develop test tools and simulations B6 Perform trade analyses Z18 Data Management B2 Identify SW components Z41 Knowledge of Hardware and SW Co-design Techniques F15 Perform SW safety analyses B7 Develop and execute acquisition strategy Z69 Identify measurement goals & objectives at all levels - projects through Agency Gx Software size-estimation attributes (e.g. complexity) I3 Maintain organizational assets (e.g. templates, metrics) E3 Develop SW acquisition/contractor requirements for RFP L2 Formal specifications
  • 16. 10/10 3. Requirements Development and Management including Inspections Ax1 Define and validate Scope Ax2 Develop SW requirements (including derived SW requirements) Ax3 Manage requirements and maintain traceability([3] Note: Traceability is maintained throughout the SW lifecycle and a repeated theme throughout the curriculum.) A1 Elicit requirements A2 Develop software requirements from operations concept A3 Analyze requirements and associated risks A4 Validate Requirements (ex.. prototype, simulation, inspection, etc.) A5 Identify verification methods A6 Document interface requirements A7 Document SW requirements (e.g. SRS [SW Requirement Specifications], system requirements, etc.) F13 Perform traceability (bidirectional) K17 Knowledge of how to write requirements Z08 Participate in trade studies Z09 Knowledge of SW Requirements tools Z103 Knowledge of NPR 7150.2, NASA and Center Standards, and CMMI direction and guidance related to software requirements and management Z111 How to monitor and control software requirement creep/volatility (moved from SW Estimations class) Z123 Use of state machines and discrete logic to model requirements Q14 Knowledge of value of IV&V during requirements development Q15 Knowledge of use case development Q16 Knowledge of Requirements Phasing Q17 Knowledge of Requirements Volatility   Z115 Knowledge of value of SW related peer reviews/ inspections Z116 Peer reviews/ inspections process (e.g., planning, checklist, readiness & completion criteria, tracking actions, recording basic measurements, correction of problems, and follow up) Z117 Knowledge of peer reviews/ inspections roles and responsibilities Z118 Peer reviews/ inspections tailoring guidelines Z124 Knowledge of NPR 7150.2, NASA Preferred Standards, and CMMI direction and guidance related to peer review/inspection direction and guidance related to peer review/inspection
  • 17. 10/10 Comparison of SWEET to SWEBOK and IEEE NASA Software Engineering Excellence Training (SWEET) Software Engineering Body of Knowledge (SWEBOK) ACM - IEEE Software Engineering 2004 3. Software Requirements Development and Management Software Requirements The Software Engineering Discipline A1. Elicit Requirements Requirements Elicitation Eliciting requirements A2. Develop operations concept Requirements Process Requirements fundamentals A3. Analyze Requirements Requirements Analysis Requirements specification & documentation A4. Validate Requirements Requirements Validation Requirements validation A5. Identify verification methods Requirements Specification   A6. Document Interface Requirements Software Requirements Fundamentals   A7. Document Software Requirements Practical Considerations   Ax Define and validate Scope     Ax Develop SW requirements (including derived SW requirements)     Ax Manage requirements and maintain traceability([3] Note: Traceability is maintained throughout the SW lifecycle and a repeated theme throughout the curriculum.)     F13 Perform traceability (bidirectional)     K17 How to write requirements     Z08 Participate in trade studies     Z09 SW Requirements tools Software Requirements Tools   Z103 NPR 7150.2, NASA Core Standards, NASA Preferred Standards, and CMMI direction and guidance related to SW requirements and management     Z123 Use of state machines and discrete logic to model requirements    
  • 18.
  • 19. 10/10 NASA SWE DACUM Course STATUS 1. Foundations of Aerospace at NASA Current APPEL Course 2. SWE 101 NASA Size Defense Acquisition University Course – Software Acquisition Management 101 3. Requirements Development and Management NASA Centers Recommend Courses 4. Software Implementation NASA Centers Recommend Courses 5. Software Testing NASA Centers Recommend Courses 6. SWE 201 NASA will Develop 7. Software Configuration Management NASA Centers Recommend Courses 8. Software Design NASA Centers Recommend Courses
  • 20. 10/10 NASA SWE DACUM Course STATUS 9. Software For Embedded Systems NASA Centers Recommend Courses 10. Software Engineering Assurance and Safety NASA Centers Recommend Courses 11. SWE 301 Course Exists – Developed by NASA 12. Software and Process metrics NASA Centers Recommend Courses 13. Software Estimations NASA Centers Recommend Courses 14. Software Process Improvement NASA Centers Recommend Courses 15. Software Acquisition NASA Centers Recommend Courses 16. Formal Methods for Software NASA Centers Recommend Courses
  • 21.
  • 22.
  • 23. BACKUP – Mark Goldman
  • 24.
  • 25.
  • 26.  
  • 27. 10/10
  • 28. 10/10 The NASA Software Engineer develops, acquires, manages, maintains and researches software systems using disciplined, quantifiable, systematic approaches.
  • 29. 10/10 NASA SWE TASKS A1 A2 A3 A4 A5 A6 A7         A. Develop Software Requirements Elicit requirements Develop operations concept Analyze requirements Validate requirements (e.g. prototype, simulation) Identify verification methods Document interface requirements Document software requirements (e.g. SRS [Software Requirement Specs], system requirements)         B1 B2 B3 B4 B5 B6 B7 B8 B9 B10 B11 B12 B. Design Software Select architecture Identify software components Analyze data flow Analyze control flow Choose algorithm Perform trade analysis Decide make/buy Identify software development environment Certify software development architecture Design external interfaces Verify design Generate design documentation C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C. Implement Software Write code Conduct unit tests Debug code Analyze code Inspect code Integrate software components Integrate software and hardware Perform margin analyses Verify code meets coding standards Generate user documentation Generate 'as-built' document C12 C13                   Update design documents Generate version description document         D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D. Verify Software Generate test documents (plans/proc) Identify test environment Develop test tools and simulations Certify test environment Test software Generate problem reports Analyze test results Verify code by analysis Perform 'proof of correctness' (formal methods) Document verification results Support hardware/software integration testing Deploy software
  • 30. 10/10 NASA SWE TASKS E1 E2 E3 E4 E5 E6 E7 E8 E9 E10   E E. Acquire Software ( ADV .) Interact with Procurement ( a lot!) Develop SOW for RFP Develop software system requirements for RFP Develop DRD (Data Requirements Documents) Develop evaluation criteria Evaluate proposals Monitor contractor performance Participate in technical audits Evaluate deliverables Accept product formally   F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F F. Manage Crosscutting Processes Maintain software Collect metric data Research new technology Manage change requests Participate in software change boards Manage problem reports Participate in peer reviews Conduct peer reviews Participate in formal reviews Conduct formal reviews (ADV) Perform CM F12 F13 F14 F15 F16 F17 F18   Prototype solutions Perform traceability (bi-directional) Perform software hazard analysis Perform software safety analysis Perform software FMEA (Failure Modes Effects Analysis) Perform software reliability analysis Perform IT security assessments         G1 G2 G3 G4 G5 G6 G7 G8 G9 G10 G11 G12 G G. Manage Software Development ( ADV .) Classify criticality of software Estimate cost Estimate schedule Generate planning documents Plan build content Comply with HQ policies/requirements Manage software engineering processes Manage software resources (technical, human, budget) Manage software schedules Monitor software development progress Manage risks Analyze metrics H1 H2 H3 H4 H5 H6 H7         H H. Manage Software Team Provide feedback to team members Develop teamwork Monitor team members Develop team competencies Maintain team's technical credibility Provide input for employee evaluations Resolve interpersonal conflicts
  • 31. 10/10 NASA SWE TASKS I1 I2 I3 I4               I. Support Organization Write proposals in response to RFPs Set up labs Maintain organizational assets (e.g. templates, metrics) Improve software engineering processes               J1 J2 J3 J4 J5 J6 J7 J8 J9 J10 J11 J. Continue Professional Development Participate in professional organizations Attend classes Attend conferences Present at conferences (ADV) Read journals Mentor people (ADV) Be mentored Obtain professional certifications Obtained advanced degrees Rotate assignments Teach J12 J13 J14 J15               Attend colloquia Review lessons learned Network (meet and talk with colleagues) Play  
  • 32. 10/10
  • 33. 10/10 Baseline 5.6 NASA Software Engineering DACUM Course coverage ( Green fully ; Orange partially ; Red little ) Early Career Courses Mid-Career Courses Later Career Course           0. Courses Outside OCE 1. Intro Aerospace at NASA 2. SWE 101 3. Reqs. Dev.&Mgmt (incl. Inspections) 4. SW Implem. 5. SW Testing 6. SWE 201 (incl. Maint.) 7. SW Config. Mgmt. 8. SW Design 9. SW for Embedded Systems 10. SW Safety & Reliability 11. SWE 301 12. SW & Process Metrics 13. SW Estimations 14. SW Process Improvement 15. SW Acquisition 16. Formal Methods for SW       H1 Provide feedback to team members K13 spacecraft and aeronautics systems and architecture E7 monitoring contractor performance A1 Elicit requirements C1 Write code consistent with design specification D1 Generate test documents (plans/procedures consistent with requirements) Ax Requirements management (duplicate card, refresher from course #3) F11 Perform configuration management B1 Select architecture Z41 Hardware and SW Co-design Techniques F14 Perform SW hazard analyses Ax Requirements Management (duplicate card, refresher from course #3) G12 Analyze metrics G3 Estimate SW schedule G12 Analyze metrics (duplicate card) E2 Develop SW part of SOW for RFP and task orders L1 Formal modeling to capture the logic and discrete mathematic elements of a system/subsystem       H2 Develop teamwork K16 aerospace environment F7 Participate in peer reviews/inspections A2 Develop operations concept C2 Conduct unit tests D3 Develop test tools and simulations B6 Perform trade analyses Z18 Data Management B2 Identify SW components Z42 Board Support Package Design F15 Perform SW safety analyses B7 Decide make/buy Z69 Identify measurement goals & objectives Gx SW size estimations I3 Maintain organizational assets (e.g. templates, metrics) E3 Develop SW acquisition/contractor requirements for RFP L2 Formal specifications
  • 34. 10/10 NASA Software Engineering Excellence Training (SWEET) Software Engineering Body of Knowledge (SWEBOK) ACM - IEEE Software Engineering 2004 8. Software Design Software Design Software Design B1 Select Architecture Software Design Fundamentals Architectural design B2. Identify software components Key Issues In Software Design Detailed design B3. Analyze data flow Software Structure and Architecture Design support tools and evaluation B4. Analyze Control Flow Software Design Quality Analysis and Evaluation Human computer interface design B5. Choose Algorithm Software Design Notations Design strategies B6. Perform Trade Studies Software Design Strategies and Methods Design concepts B7. Decide make/buy Software Design Tools B8. Identify Software Development Environment   B9. Certify Software Development Architecture     B10. Design external interfaces     B11. Verify design     B12. Generate Design Documentation     Bx Intermediate design technologies (similar card)     F13 Perform traceability (bidirectional)     Z34 Architectural SW design     Z35 Detailed SW design     Z36 SW system architectures     Z37 design patterns     Z38 SW design development tools     Z39 Object-Oriented Design     Z40 Architectural Design of Real-Time SW     Z123 Use of state machines and discrete logic to model designs    
  • 35. Use the Course/Competency Matrix (horizontal)
  • 36. 2. Software Acquisition                                   2A. Acquisition Processes, Contract Management and contractor performance   ●         ●                 ●  
  • 37. 3. Software Engineering Life Cycle Processes                                   3A. Operational Concept     ●                         ●   3B. Software Product Requirements Development   ● ●                             3C. State Machines and Discrete Logic for Modeling     ●           ● ●               3D. Software Design   ●     ●       ● ●               3E. Software Implementation: Coding, Debugging, Unit Testing, Integration, Optimizing, and Documentation   ●     ● ●                       3F. Embedded Systems Software Implementation   ●               ●               3G. Software Engineering Tools and Equipment   ●   ● ● ● ● ● ●   ●           3H. Peer Reviews/inspections   ●   ● ●   ●                     3I. Software Testing Techniques and Environments   ●     ● ●       ●   ●           3J. Software Deployment, Transition to Operations, and Maintenance             ●                     3K. Software Engineering Processes and Process Improvement   ●         ● ●       ● ●   ●     3L. Software Assurance   ●         ●       ●             3M. Software Safety and Reliability                     ●             3N. Verification and Validation   ● ●   ●   ●   ●               ●
  • 38. 4. Software Engineering Management                                   4A. Software Engineering Planning and Management             ●         ● ● ●       4B. Software Metrics   ●   ●     ● ●         ●   ● ●   4C. Risk Management   ●                   ●   ●       4D. Software Estimation             ●             ●       4E. Requirements Management     ●       ●         ●          
  • 39. mm m Software Engineering Competencies Software Acquisition Software Engineering Management Acquisition Processes, Contract Management and Contractor Performance Software Engineering Planning and management Software Estimation Risk Management Software Metrics Requirements Management Software Safety and Reliability Software Assurance Information Technology Security Operational Concept Software Product Requirements Development State machines and Discrete Logic for Modeling Software Design Embedded Systems Software Implementation Software Testing Techniques and Environments Verification and Validation Software Engineering Processes and Process Improvement Formal Modeling and Validation Configuration and Change Control Software Assurance Processes Software Requirements Development Process Peer Reviews/Inspections Software Product Improvement Processes Software Engineering Tools and Equipment Software Design Process Software Implementation: Coding, Debugging, Unit Testing, Integration, Optimizing, and Documentation Software Deployment, Transition to Operations, and Maintenance Post Software Delivery Process Software Implementation Process Software Testing Process Software Classification Competencies
  • 40. 10/10 1. Foundations of Aerospace at NASA Course Current NASA SWE DACUM Course Requirements K13 Knowledge of spacecraft and aeronautics systems and architecture K16 Knowledge of aerospace environment K20a Knowledge of NASA policies and procedures Q2 Knowledge of Impact of software on Modern Aerospace Systems Color Code Blue Updated wording Yellow Original Wording White Added
  • 41. 10/10 2. Software Engineering 101 (SWE 101) Course E7 Knowledge of monitoring contractor performance F7 Participate in peer reviews/inspections K1 Knowledge of software development life cycles/methodologies K2 Knowledge of software engineering processes K3a Knowledge of prototyping techniques Kx1 Knowledge of software requirements development K4 Knowledge of design technologies/tools (reinforced/amplified in SW Design course) K5 Knowledge of user interfaces K6 Knowledge of software testing techniques K18 Knowledge of flight and ground systems (originally referred to as ‘embedded systems’) Kx2 Knowledge of NASA Advanced Technology, Basic and Applied Research, and Institutional systems K19 Knowledge of risk management (As applicable to software systems. Checklist of software risks, reading knowledge of NASA risk matrix, understanding of NASA continuous risk management process diagram, etc.) matrix, understanding of NASA continuous risk management process diagram, etc.) K20b Knowledge of NASA engineering and software policies and procedures including the classification of software) ([2] a common thread throughout the curriculum is coverage of the related NPR 7150.2 requirements including 2210) K21 Knowledge of Quality Management (QM) systems (originally referred to as ‘Knowledge of applicable ISO standards) (reinforced/amplified in SW 201, SW 301 and Software Process Improvement courses) K23 DELETE SW process improvement (e.g. CMMI) (originally referred to as ‘CMMI’) (reinforced/amplified in SW Process Improvement course) Ka industry SW standards and usage of SW standards at NASA Centers, including standards program description Z01 Knowledge of acquisition processes Z02 Knowledge of software assurance and IV&V Z03 Knowledge of verification and validation Z04 Knowledge of formal review process Z05 Knowledge of configuration management Z06 Knowledge of SW metrics (include uses and benefits of) Q1 Knowledge of Software Engineering Standards (replace K23) Q3 Knowledge of Software System Architecture (intro) Q4 Intro to Model Based Development Q5 Intro to User-Centered Design Q6 Knowledge of Software implementation techniques/methodologies Q7 Knowledge of estimation techniques Q8 Knowledge of basic cyber-security
  • 42. 10/10 3. Requirements Development and Management including Inspections Course Ax1 Define and validate Scope Ax2 Develop SW requirements (including derived SW requirements) Ax3 Manage requirements and maintain traceability([3] Note: Traceability is maintained throughout the SW lifecycle and a repeated theme throughout the curriculum.) A1 Elicit requirements A2 Develop software requirements from operations concept A3 Analyze requirements and associated risks A4 Validate Requirements (ex.. prototype, simulation, inspection, etc.) A5 Identify verification methods A6 Document interface requirements A7 Document SW requirements (e.g. SRS [SW Requirement Specifications], system requirements, etc.) F13 Perform traceability (bidirectional) K17 Knowledge of how to write requirements Z08 Participate in trade studies Z09 Knowledge of SW Requirements tools Z103 Knowledge of NPR 7150.2, NASA and Center Standards, and CMMI direction and guidance related to software requirements and management Z111 How to monitor and control software requirement creep/volatility (moved from SW Estimations class) Z123 Use of state machines and discrete logic to model requirements Q14 Knowledge of value of IV&V during requirements development Q15 Knowledge of use case development Q16 Knowledge of Requirements Phasing Q17 Knowledge of Requirements Volatility   Z115 Knowledge of value of SW related peer reviews/ inspections Z116 Peer reviews/ inspections process (e.g., planning, checklist, readiness & completion criteria, tracking actions, recording basic measurements, correction of problems, and follow up) Z117 Knowledge of peer reviews/ inspections roles and responsibilities Z118 Peer reviews/ inspections tailoring guidelines Z124 Knowledge of NPR 7150.2, NASA Preferred Standards, and CMMI direction and guidance related to peer review/inspection direction and guidance related to peer review/inspection
  • 43. 10/10 4. Software Implementation Course C1 Write code consistent with design specification C2 Conduct unit tests C3 Debug code C4 Analyze code C5 Inspect code C6 Integrate SW components C7 Integrate SW on to hardware platform C8 Perform margin analysis C9 Verify code meets coding and documentation standards C10 Generate user documentation C11 Generate ‘as built’ documentation C12 Update design documents C13 Generate version description document Ca Configuration control of implementation products Cb DELETE use of style guides in code development Cc Create Executables Cd Perform Design Traceability (bidirectional) Ce Knowledge of Auto coding techniques and tools Cf Knowledge of Code and Data Partitioning techniques F18 Implement SW consistent with Cyber security design Z10 Integrate with reused/modified SW, legacy SW, COTS, and open source D8 DELETE Verify code by analysis Z11 Knowledge of SW code development tools Z104 Maintain/update data dictionary Z105 Develop unit test plans and procedures Z121 Knowledge of NPR 7150.2, NASA and Center Standards, and CMMI direction and guidance related to software implementation Z204 Conduct performance testing Z205 Optimize code Q23 Include domain/environmental considerations Q25 Knowledge of Debugging Strategies Q45 Knowledge of Static Analysis Tools
  • 44. 10/10 5. Software Testing Course D1 Generate test documents (plans/procedures consistent with requirements) D3 Develop test tools and simulations D5 Test SW D6 Generate problem reports D7 Analyze test results D8 Verify code by analysis (moved from Course 4) D11 Support hardware/SW integration testing Da Knowledge of SW’s role in system testing Db Knowledge of hardware-in-the-loop testing of SW systems Dc Perform End-to-end SW testing F13 Perform traceability (bidirectional) Kx Perform testing COTS, MOTS software and open source Z12 Document test results Z13 Knowledge of SW testing tools Z120 Knowledge of NPR 7150.2, NASA Standards, and CMMI direction and guidance related to software design Z202 Off nominal testing Z203 Certification testing ([5] A theme throughout the set of courses includes the varying levels of rigor and techniques needed to develop and maintain SW up through human rated space systems.) Q24 Knowledge of types of software testing Q26 Validate software Q27 Knowledge of test completion criteria Q28 Accredit software testing tools Q29 Develop test environment Q30 Perform test reviews
  • 45. 10/10 6. Software Engineering 201(SWE 201) Including Maintenance Course Ax Requirements management (duplicate card, refresher from course #3) B6 Perform trade analyses D9 Knowledge of formal specifications, model checking, and formal verification (formal methods) E8 Participate in technical audits E9 Evaluate contract deliverables F2 Collect and evaluate metric data F5 Participate in SW change boards F8 Conduct peer reviews/inspections F9 Participate in formal reviews F18 Perform cyber security design (duplicate card G1 Identification of SW classifications (duplicate card) G4 Generate planning documents (including life cycle planning ) G5 Plan Build Content I1 In support of organization write proposals K1 Knowledge of software development lifecycles (similar card; e.g. waterfall, incremental, spiral, agile) K3 Knowledge of prototyping K7 Knowledge of software planning process (cost estimate, WBS, earned value management, etc.) K18a More in-depth knowledge of flight and ground systems (similar card) K23 Additional knowledge of software process improvement (e.g. CMMI) (similar card, progression of knowledge from SW Engineering 101) K25a Knowledge of computational modeling and simulations techniques K32a Knowledge of estimation techniques (cost, scope, schedule …) Z14 Monitoring contract performance Z15 Integration of SW life cycles with system life cycles Z16 Overview of SW development tools and equipment (including where NASA does trial studies and research on tools) Z105 Knowledge of NPR 7150.2, NASA and Center Standards, NASA Preferred and Center Standards, and CMMI direction and guidance related to SE 201 topics Z106 Generate teaming agreements including contractor teams ([6] Teaming/intergroup coordination should be a common thread throughout the curriculum.) Z125 Plan for SW assurance activities Z200 Knowledge of Intermediate NASA Advanced Technology, Basic and Applied Research, and Institutional systems Q9 Testing techniques and tools review/refresher Q10 CM Review/Refresher Q11 Knowledge of Stakeholder Management
  • 46. 10/10 6. Software Engineering 201 (SWE 201) Including Maintenance continued D12 DELETE Deploy SW F1 Maintain SW F4 Manage change requests F6 Manage problem reports Z17 Knowledge of Reverse engineering tools and techniques Z107 Deployment of SW and transition to operations (replaces D12) DELETE G5 Plan build content Z108 Knowledge of SW maintenance plans and procedures Z109 Knowledge of NPR 7150.2, and Center Standards, and CMMI direction and guidance related to software maintenance
  • 47. 10/10 7. Software Configuration Management Course F11 Perform configuration management Z18 Data Management Z19 CMMI Process Area for Configuration Management Z20 NPR 7150.2, NASA and Center Preferred Standards direction and guidance related to SW configuration management Z21 How to prepare a SW CM plan — activities, schedules, responsibilities, resources, tools Z22 Selecting work products to control Z23 Selecting appropriate levels of control — informal, semi-formal, formal Z24 SCM requirements and activities performed by SW engineering and other groups Z25 Defining check-in/check-out procedures Z26 Developing organizational SW CM policies and procedures Z27 Establishing and maintaining SW baselines Z28 Establishing and maintaining a configuration management library system Z29 Establishing and running a SW Configuration Control Board (SCCB) Z30 Tracking and controlling changes to work product Z31 Conducting SW CM audits - the unique CMMI requirements for PPQA and SW CM Z32 Production, storage, update and retrieval of SCM reports and records Z33 Selecting and using SCM tools Z201 Collecting and analyzing configuration management metrics Q31 Knowledge Of PDLM Tools with Respect to CM Q40 Knowledge of Change Management
  • 48. 10/10 8. Software Design Course B1 Select architecture B2 Identify SW components B3 Analyze data flow B4 Analyze control flow B5 Choose algorithm B10 Design external interfaces (including user interfaces) B11 Verify design B12 Generate design documentation Bx Identify Intermediate design technologies/tools (similar card) C8 Perform margin analysis (duplicate card) F13 Perform traceability (bidirectional) F18 Perform Cyber security Design Z34 Knowledge of Architectural SW design Z35 Knowledge of Detailed SW design Z36 Knowledge of SW system architectures Z37 Knowledge of design patterns Z38 Knowledge of SW design development tools Z39 Knowledge of Object-Oriented Design Z40 Knowledge of Architectural Design of Real-Time Software Z120 Knowledge of NPR 7150.2, NASA Standards, and CMMI direction and guidance related to software testing Z123 Use of state machines and discrete logic to model designs Q18 Knowledge of Software Architecture Analysis Techniques Q19 Conduct Formal Design Reviews Q20 Knowledge of Software Safety Critical Design Techniques Q21 Evaluate Legacy Systems
  • 49. 10/10 9. Software For Embedded Systems Course Z40 Knowledge of Architectural Design of Real-Time Software (duplicate card) Z41 Knowledge of Hardware and SW Co-design Techniques Z41a Capability to design hardware and software Z42 Fundamental Knowledge of Board Support Package Capabilities Z43 Knowledge of Compiler, linkers design Z44 Knowledge of Emulator design techniques Z44a Ability to use emulator design techniques Z45 Knowledge of Embedded SW design Z45a Ability to test embedded design Z45b Knowledge of embedded software testing techniques (including design for testing) Z46 Defining and managing margins (by phase) Z47 Knowledge of Real-time kernels Z48 Knowledge of Operating systems and SW executives (including real time operating systems and COTS operating systems) Z49 Capability to develop software drivers Z50 Knowledge of Real time and embedded programming considerations and constructs Z51 Knowledge of Microprocessors/Microcontrollers Z52 Understanding Embedded Systems I/O Z53 Knowledge of Digital Signal Processors Z54 Knowledge of Data bus, interfaces, and protocols Z55 Knowledge of and design considerations for the selection of Single Board Computers
  • 50. 10/10 9. Software For Embedded Systems (continued) Z56 Knowledge of and design considerations and selection of FPGAs, ASICs (hardware logic devices) Z56a Capability to conduct trade studies between software and hardware logic devices (FPGAs, ASICS) Z57 Knowledge of Embedded system development tools Z58 Knowledge of Hardware in the loop testing of Software systems (duplicate card) Z58a Ability to perform hardware in the loop testing of software systems Z59 DELETE End-to-end testing (duplicate card) Z60 Ability to estimate and track memory size and through put Z123 Knowledge of state machines and discrete logic Z123a Ability to model embedded systems/subsystem Z206 Knowledge of Debugging techniques Z206a Ability to use Debugging techniques Q50 Knowledge of Fault tolerance techniques for embedded software Q51 Knowledge of fault tolerance management techniques for embedded software Q52 Knowledge of design considerations for safety critical embedded software Q53 Knowledge of Assurance Techniques for embedded software Q54 Knowledge of physical security considerations and access controls for embedded systems Q55 Knowledge of unique management considerations for the development of embedded software Q56 Knowledge of Embedded Software Standards Q57 Knowledge of the management of embedded software system development (acquisition)
  • 51. 10/10 10. Software Engineering Assurance and Safety Course F14 Perform SW hazard analyses F15 Perform SW safety analyses F16 Perform SW FMEA (Failure Modes Effects Analysis) F17 Perform SW reliability analyses Z61 Knowledge of SW safety management and planning Z62 Knowledge of SW assurance and IV&V Z63 Knowledge of NASA Safety standard requirements and practices Z64 Knowledge of Human rated and Mission Critical SW techniques Z65 Knowledge of NASA SW best practices for SW safety and reliability Z66 Perform Traceability to FMEAs, hazard analyses, safety analyses Z110 Knowledge of NPRs, NASA Standards, and CMMI (e.g., PPQA) direction and guidance related to SW safety and reliability. Q32 Knowledge of Fault tree analysis Q33 Support Process and product quality audits
  • 52. 10/10 11. Software Engineering 301 (SWE 301) Course Ax Requirements Management (duplicate card, refresher from course #3) B7 Develop and execute acquisition strategy B8 Identify SW development environment B9 Certify SW development environment D2 Identify test environment D4 Certify test environment F10 Conduct formal reviews (advanced tasks) G1 Identification of SW classifications ([7] Note: NASA’s SW classification definitions are contained in NPR 7150.2. NASA criteria for determining whether SW is “safety critical” is contained in NASA-STD 8739.8)) G7 Manage SW engineering processes G8 Manage SW resources (technical, human, budget) G9 Manage SW schedules G10 Monitor SW development progress G11 Manage risks H4 Develop team competencies K31 Project management skills Z67 Knowledge of SW Development/Management Planning Z74 Using Metrics in project planning (duplicate card) Z106 Generate and manage teaming agreements (duplicate card) (include Contractors on team) Z207 Knowledge of NPR 7150.2, NASA and Center Core Standards, NASA Preferred Standards, and CMMI direction and guidance related to SE 301 topics Q12 Taylor SWE Processes to Project (will replace G1 in SWE 301 eventually) Q13 Manage Stakeholders Q14 Knowledge of value of IV&V during requirements development (duplicate card Q22 Manage intellectual property Q31 Knowledge Of PDLM Tools with Respect to CM (duplicate card) Q37 Collect and Submit Lessons Learned Q38 Apply Past Lessons Learned
  • 53. 10/10 12. Software and Process Metrics Course G12 Analyze metrics Z69 Identify measurement goals & objectives at all levels - projects through Agency Z70 Identify metrics Z71 Knowledge of the benefits of measurement Z72 Knowledge of management issues and indicators Z73 Knowledge of performance analysis Z74 Knowledge of using metrics in project planning Z75 Knowledge of analyzing earned value Z76 Implementing project measures and coverage of CMMI unique guidance for Measurement Analysis Z77 Identify key areas of concern and uses of measurement for project management Z78 Define indicators based upon what a project manager would want to know Z79 U se measurement to support decision making Z80 Understand where measurement is used from the perspective of a generic management process (NPR 7150.2) and a reference model such as CMMI Z81 use measurement data to communicate more clearly to all project stakeholders Z82 Trending analysis (both within a given project and organizational for local, Center, & Agency needs) Q34 Collect Metrics
  • 54. 10/10 13. Software Estimations Course G3 Estimate SW schedule Gx Software size-estimation attributes (e.g. complexity) Gy Throughput estimating K32 SW estimation skills overview (cost, scope, schedule, etc.) T9 SW cost estimation tools/methods Z84 Defining Your Project Scope Z85 Adjusting For the Environment Z86 "What If" Modeling Z87 Knowledge of Scheduling and Project Constraints Z88 Project Risk and Sensitivity Analysis Z89 Software Case Studies/Class Demonstrations Z90 How to identify risks Z91 How to identify, collect, and report on data that impacts SW estimates Z111 DELETE How to monitor and control SW requirement creep and volatility Z92 How to monitor and control project SW costs and schedule Z93 Keys to successful implementation of a SW estimation and tracking strategy Q35 Knowledge of how to use trades to ask for money Q36 Identify resources
  • 55. 10/10 14. Software Process Improvement Course G12 Analyze metrics (duplicate card) I3 Maintain organizational assets (e.g. templates, metrics) I4 Improve SW engineering processes (e.g. IDEAL Model, Information mapping, process change method, etc.) K23 SW process improvement (using CMMI) Z208 Perform SCAMPI-A/B/C appraisals Z209 Perform Team Support related to CMMI Q39 Knowledge of characteristics of a good process
  • 56. 10/10 15. Software Acquisition Course E2 Develop SW part of SOW for RFP and task orders E3 Develop SW acquisition/contractor requirements for RFP E4 Develop SW DRD (Data Requirements Document)/CDRL E5 Develop proposal evaluation criteria E6 Evaluate suppliers and proposals E7 Monitor contractor performance (including insight and oversight, duplicate card) E9 Evaluate contract deliverables (duplicate card) E10 Accept product formally Z94 Supporting the development of Concept of Operations Z95 Develop CDRL (Contract Data Requirements List) Z96 Define Metrics, Reviews, etc. for SW as part of a contractual RFP or task order for evaluation of products and processes Z97 Define product specification standards Z98 Define quality surveillance plan and define incentives Z99 How to write a Request for Proposal to obtain the SW data needed to perform an independent estimate Z100 How to structure Contract Line Item Numbers to obtain the data needed to track project progress and cost Z112 Define and validate the scope of the acquisition Z113 Identify some of the major problems, symptoms, and potential impacts encountered when acquiring SW-intensive systems and proven techniques to avoid them Z114 Recovery methods when SW acquisition related problems challenge a project Z122 NPR 7150.2, NASA Standards, and CMMI direction related to SW that needs to be rolled down to the contractor Q41 Knowledge of FAR/Escrow as related to software Acquisition and Intellectual Property Q42 Knowledge of general (NASA and Center) acquisition strategies for COTS software Q43 Execute Performance Evaluation Plan Q44 Knowledge of Alternate Acquisition Strategies
  • 57. 10/10 16. Formal Methods for Software Course L1 Formal modeling to capture the logic and discrete mathematic elements of a system/subsystem L2 Formal specifications L3 Model checking L4 Formal verification techniques Q46 Knowledge of Tools and techniques for formal methods.
  • 58.
  • 59. STEP Framework Overall STEP Program Commitment Estimated Hours per STEP Level STEP Training Elements Level 1 Level 2 Level 3 Level 4 Core Training 3 24 40 N/A Discipline Training 18 100 137 137 Domain Training 4 40 TBD TBD Total Academic Hours 25 164 177 (+TBD) 137 (+TBD) On-the-Job Training N/A 200 400 400 Reference Material N/A varies varies varies Years of work experience N/A 1y-3y 3y-5y 8y-10y Complete Enrichment Experience N/A Yes Yes Yes Pass a Comprehensive Level Test N/A N/A Yes-Written N/A Pass Peer Review Panel N/A N/A N/A Yes Pass a Qualification Board N/A N/A Yes Yes Continuing Education N/A 16 24 32