MSFC Avionics Department Flight Software Group CMM Level 2 Certified Automated Software Coding Standards System Development Team Assessment Team Luis Trevino.

Slides:



Advertisements
Similar presentations
Making the System Operational
Advertisements

Software development process. Explanation of the iterative nature of the software development process.
Systems Investigation and Analysis
14-1 © Prentice Hall, 2004 Chapter 14: OOSAD Implementation and Operation (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh.
Test Automation Success: Choosing the Right People & Process
Presentation for the Management Study of the Code Enforcement Process City of Little Rock, Arkansas August 3, 2006.
Metrics for Process and Projects
Chapter 1 Assuming the Role of the Systems Analyst
Software Quality Assurance Inspection by Ross Simmerman Software developers follow a method of software quality assurance and try to eliminate bugs prior.
Difference between project and other assignments  real customer  before programming: negotiations with client to clarify requirements  often.
Access 2007 Product Review. With its improved interface and interactive design capabilities that do not require deep database knowledge, Microsoft Office.
Week 7: Requirements validation Structured walkthroughs Why have walkthroughs When to have walkthroughs Who participates What procedures are helpful Thoughtless.
© 2005 by Prentice Hall Chapter 4 System Testing & Implementation Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George Joseph.
Chapter 1 Assuming the Role of the Systems Analyst
Dr. Ralph R. Young Director of Software Engineering PRC, Inc. (703) Fifth IEEE International Symposium on Requirements Engineering.
CASE Tools CIS 376 Bruce R. Maxim UM-Dearborn. Prerequisites to Software Tool Use Collection of useful tools that help in every step of building a product.
Chapter 1 Assuming the Role of the Systems Analyst
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
Difference between project and other assignments real customer before programming: negotiations with client to clarify requirements often changes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 Tools of Software Development l 2 types of tools used by software engineers:
SAS_06_STOL_Tool_Cooper Automated Systems Test and Operations Language (STOL) Analysis Tool Jason G. Cooper July 20, 2006.
Software Engineering Institute Capability Maturity Model (CMM)
Deploying Visual Studio Team System 2008 Team Foundation Server at Microsoft Published: June 2008 Using Visual Studio 2008 to Improve Software Development.
Introductions Jim Enzinna, Chief, Licensing Division Mark DiNapoli, Assistant Chief, Licensing Division Tracie Coleman, Head, Information Section Vince.
Annual SERC Research Review - Student Presentation, October 5-6, Extending Model Based System Engineering to Utilize 3D Virtual Environments Peter.
INFORMATION SYSTEM APPLICATIONS System Development Life Cycle.
Software Engineering II Lecture 1 Fakhar Lodhi. Software Engineering - IEEE 1.The application of a systematic, disciplined, quantifiable approach to the.
CSI315 Web Applications and Technology Overview of Systems Development (342)
Test Organization and Management
Chapter 2 The process Process, Methods, and Tools
Managing the development and purchase of information systems (Part 1)
Page 1 MODEL TEST in the small GENERALIZE PROGRAM PROCESS allocated maintenance changes management documents initial requirement project infrastructure.
Understanding the Web Site Development Process. Understanding the Web Site Development You need a good project plan Larger projects need a project manager.
Betsy L. Sirk Section 508 Coordinator NASA Goddard Space Flight Center
CSCE 548 Code Review. CSCE Farkas2 Reading This lecture: – McGraw: Chapter 4 – Recommended: Best Practices for Peer Code Review,
14-1 © Prentice Hall, 2004 Chapter 14: OOSAD Implementation and Operation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
14-1 © Prentice Hall, 2004 Chapter 14: OOSAD Implementation and Operation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
On-Line: Undergraduate Admissions Applications. College of Charleston Profile 13 th oldest college in the nation founded in 1770 Traditional Liberal Arts.
Chapter 1 Assuming the Role of the Systems Analyst Systems Analysis and Design Kendall & Kendall Sixth Edition.
Markland J. Benson, Computer Systems Manager, White Sands Complex, (575) , Technology Infusion of CodeSonar into the Space.
Johnson Space Center SAS05_CodeSurfer_Infusion_JSC_Markovich S&MA Directorate Can CodeSurfer Increase Code Inspection Efficiency? A Research Infusion Project.
Software Project Management Lecture # 3. Outline Chapter 22- “Metrics for Process & Projects”  Measurement  Measures  Metrics  Software Metrics Process.
V&V of COTS RTOS for Space Flight Projects The 1st Annual NASA Office of Safety and Mission Assurance (OSMA) Software Assurance Symposium (SAS) Michael.
Development of Methodologies for Independent Verification and Validation of Neural Networks NAG OSMA-F001-UNCLASS Methods and Procedures.
Software Development Life Cycle by A.Surasit Samaisut Copyrights : All Rights Reserved.
+ SUH Incorporated Executive Briefing. + SUH Business Opportunity I.T. solutions are needed to improve SUH’s ability to operate Sales Support team would.
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
Chapter 1 Introduction to Systems Design and Analysis Systems Analysis and Design Kendall and Kendall Sixth Edition.
1 Technology Infusion of the Software Developer’s Assistant (SDA) into the MOD Software Development Process NASA/JSC/MOD/Brian O’Hagan 2008 Software Assurance.
ELECTRONIC DOCUMENT SHARING AND MANAGEMENT BY: EDWARD DISI JUSTIN HEIN BROM ESPY Senior Design 1.
Oman College of Management and Technology Course – MM Topic 7 Production and Distribution of Multimedia Titles CS/MIS Department.
Project Management Strategies Hidden in the CMMI Rick Hefner, Northrop Grumman CMMI Technology Conference & User Group November.
HTML5 and CSS3 Illustrated Unit B: Getting Started with HTML.
Software Design and Development Development Methodoligies Computing Science.
Chapter 1 Assuming the Role of the Systems Analyst.
Critical Systems Testing Experts EXB Solutions - Contact us at cFS Workshop – Automated Test for NASA cFS David C. McComas 1, Susanne.
CIS 375 Bruce R. Maxim UM-Dearborn
Cincinnati Bell Telephone INsideOUT Database Redesign
Pragmatics 4 Hours.
Getting Started with CSS
Verification and Validation
SSW Code Auditor Insert witty intro.
Managing the development of information systems (Part 1)
Tools of Software Development
Standards.
In the Senior Design Center
Software development process
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 Tools of Software Development l 2 types of tools used by software engineers:
{Project Name} Organizational Chart, Roles and Responsibilities
SeeSoft A Visualization Tool..
Presentation transcript:

MSFC Avionics Department Flight Software Group CMM Level 2 Certified Automated Software Coding Standards System Development Team Assessment Team Luis Trevino Michael Rahmatipour Luis Lopez, CTO, FlowLynx Inc. Marlyn Terek Emma Eduok (Summer Intern) September 04-06, 2002 Office of Safety and Mission Assurance Software Assurance Symposium 2002 Berkeley Springs, WV

2 1. Source Code: C Files 3. FlowCode Agents 2. FlowCode System 4. Peer Review Artifacts Collaborative Website System Metrics/Standards Reports Flowchart Visualization of Inspected Code MSFC Avionics Department, Flight Software Group Automated Software Coding Standards System Best Practices, Past Successful Projects, Other References

3 MSFC Avionics Department, Flight Software Group Automated Software Coding Standards System Standard Rules 1.Filenames 1 2.Include Files (layout) 4 3.Function Layout 6 4.Indentation 8 5.Brace Placement 6 6.White Space Usage 15 7.Naming Convention 64 8.Scope 5 9.Macros 6 10.Globals 2 11.Function Layout 5 12.Include Files (.h) 4 13.Pointers 5 14.Control Flow 19 Coding Standards and Rules Total 150

4 MSFC Avionics Department, Flight Software Group Automated Software Coding Standards System Coding Standards Reporting

5 MSFC Avionics Department, Flight Software Group Automated Software Coding Standards System Metrics Reporting

6 Development & Validation Process 15K Effort With Flowlynx Inc. To Develop Prototype With Seven Rules Fall 2000 Seven Rules Validated Against Real Flight Software and Coding Standards Document. Effort Featured In April 2001 Issue of Military & Aerospace Electronics Magazine Proposal to Code Q OSMA And Awarded 71K To Continue Development of Coding Standards Tool Summer / Fall % of The Rules Implemented And 70% Validated By Assessment Team Using Coding Standards Document and Flight Software. Verified No False “Passed” Rules And All “Failed” Rules Were Legitimate Summer/Sept Implementable Coding Standards Identified And Effort Continued With Quarterly Status to IV&V Center Fall 2001 / Winter % of The Rules Implemented And Validated End of Sept Development of ED14 Coding Standards Document Spring 2000 Analyze Remaining Rules For Implementation Tool Enhancement: Rule Modification, Metrics, Reporting, Languages Training Fall 02 – Winter 03 MSFC Avionics Department, Flight Software Group Automated Software Coding Standards System

7 Task Description March AprilJulySept Notes 1Coding Standard Rules Identified & Associated System Requirements (%) >  85 Some of the rules are subjective and difficult to implement. 2Capability of System to Implement Identified Rules (%) Implementation of Identified Rules (%) 17 (6/35) Validation of Implemented Rules (%) 16 (1/6) MSFC Avionics Department, Flight Software Group Automated Software Coding Standards System Status

8 Tool Benefits Enforce Repeatability In Software Development Processes Accelerate Learning Curve for New Programmers Minimize Software Errors From Becoming Potentially Larger Costly Errors Source Code Maintainability and Code Reuse Increased Technical Insight on Contractor Developed Source Code Tool for all Levels of Software Personnel to Support Development, Analysis, and Maintenance of Code Software Code Peer Reviews and Code Walkthroughs Visual Code (Flowcharts) Easier To Review & Inspect Over Text Other Benefits Being Implemented Applicable To All Computer Language Domains Will Support End User Specifications For Implementing and Maintaining Standards and Metrics Will Support Inclusion of LINT, GLINT, SPLINT, and RATS MSFC Avionics Department, Flight Software Group Automated Software Coding Standards System Conclusions

9 MSFC Avionics Department, Flight Software Group Automated Software Coding Standards System Comparison To Other Tools This system compares to other tools. Major features that differ: Static Analyzer Not Compiler Dependent Web Based Multiple User Capability Ability To View & Edit Source Code Flowchart of the Code Reports are Stored & Accessible On-Line Server Side Computation of Metrics & Standards Conclusions