h3. Welcome

{div:style=float:right;}{profile:user=admin}{div}
{info}This site is under development.  You can follow the navigation above to explore the site.  If you have any questions, please contact [Jon Verville|mailto:jon.verville@nasa.gov] at 301-286-8741.
{info}



We are glad you have come to the NASA Software Engineering Handbook site.  The purpose of this site is to provide key insights to you, a Software Engineering professional.  We plan on two phases of release: the first with 30% material in February 2011, and with 80% material in October 2011.

To view a presentation that was given on the handbook development to the Software Engineering Working Group in August 2010, [click here|^7150handbook-swgf2f-_jonv_REV-C.ppt].

h4. How is this different than any other NASA handbook?

The Software Engineering handbook will have two components.  A PDF/printable version for those who wish to use the material in a more traditional way.  We are also developing this web version as an interactive and dynamic version of the same material.  We plan on utilizing web technologies, such as tagging (folksonomies), social commenting, and web editability and versioning to enhance the experience of what a paperback handbook provides.


h4. Special Topic Material

There are a total of 37 special topics which will be chapters within the handbook.  A partial list is as follows:

7.1 - 7150.2A Definitions & References, 7.2 - Classification Tool and Safety Critical Assessment Tool, 7.3 - Lifecycle Management, 7.4 - Entrance / Exit Criteria for 7150.2A, 7.5 - Documentation Products Maturity (List of material maturity by phase of mission), 7.6-8 - 7150.2A's Traceability to Other NPRs, 7.9 - Software Acquisition, 7.10 - P(Center) Guidance, 7.11 - Use of COTS, GOTS, MOTS, 7.12 - Flow down of NPR requirements on contracts and to other centers in multi center projects, 7.13 - Present requirements by class and include safety critical and assurance requirements, 7.14 - Overview and history of the SPI effort, 7.15 - Peer review and inspections including checklists, 7.16 - Transitioning to a higher class, 7.17 - Explanation of enforcement of NPR requirements, 7.18 - Compliance matrices


h4. Material by SWE Requirement Number

The NASA Software Engineering standards are laid out in the NPR 7150.2A document ([click here to view it on the web|http://nodis3.gsfc.nasa.gov/displayDir.cfm?t=NPR&c=7150&s=2]).  Within the document, there are requirements numbering up to 130.  We will be producing material for each of these requirements in the following areas: Guidance, Rationale, Tools Available, Links, and Guidance for Small Projects.

h4. Current Material


Below is a list of all the material in this electronic handbook so far.  Use discretion, as this material is in various stages of development.

{children:all=true|style=h6}

----
{table-plus}







{report-table}
{local-reporter:content:descendents}
  {date-sort:content:modification date|order=descending}
{local-reporter}

{report-column:title=Page title}
{report-info:content:title|link=true}
{report-column}
{report-column:title=Last changed}
{report-info:content:modification date|format=dd MMM, yyyy} by {report-info:content:modifier|link=true}
{report-column}

{report-column:title=Workflow state}
{report-info:workflow:state > name}
?{report-column}

{report-column:title=Approved?}
{report-info:workflow:approved} {report-column}
{report-table}{table-plus}\| {color:#000000}7.1{color} \| {color:#000000}7150.2A Appendicies (Definitions, References, etc.){color} \| \| \| \| {color:#4600a5}Lee{color} \| {color:#fcf305}Jon{color} \| {color:#4600a5}Lee{color} \| {color:#ffffff}John K.{color} \| {color:#993300}Jon/Greg{color} \| {color:#4600a5}Lee{color} \| \| \| \| \|
| {color:#000000}7.2{color} | {color:#000000}Classification Tool and Safety Critical Assessment Tool{color} | | {color:#000000}Flow diagrams of the classification tool{color} | {color:#000000}Actual interactive online tool{color} | {color:#4600a5}Tommy{color} | {color:#4600a5}Dave/Kevin/Kathy{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Tommy{color} | | | | |
| {color:#000000}7.3{color} | {color:#000000}Lifecycle Management{color} | | | | {color:#4600a5}Kathy{color} | {color:#000000}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kathy{color} | | | | |
| {color:#000000}7.4{color} | {color:#000000}Entrance / Exit Criteria for 7150.2A{color} | {color:#000000}Kathy Malnick's criteria charts{color} | | {color:#000000}TODO: Write narrative intro to each section (like SEHandbook){color} | {color:#4600a5}Kathy{color} | {color:#000000}Kevin/ Sally G./ Dave Retherford{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kathy{color} | | | | |
| {color:#000000}7.5{color} | {color:#000000}Documentation Products Maturity{color} | {color:#000000}List of material maturity by phase of mission{color} | | | {color:#4600a5}Kathy{color} | {color:#000000}Multiple Reviewers{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kathy{color} | | | | |
| {color:#000000}7.6{color} | {color:#000000}7150.2A's Traceability to Other NPRs{color} | | | | {color:#4600a5}Kathy{color} | {color:#000000}Kevin/John K.{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kathy{color} | | | | |
| {color:#000000}7.7{color} | {color:#000000}Traceability to 7123.2 (NASA Systems Engineering Processes and Requirements){color} | | | | {color:#4600a5}Kathy{color} | {color:#000000}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kathy{color} | | | | |
| {color:#000000}7.8{color} | {color:#000000} Traceability to NPR 7120.5D (NASA Space Flight Program and Project Management Requirements){color} | | | | {color:#4600a5}Kathy{color} | {color:#000000}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kathy{color} | | | | |
| {color:#000000}7.9{color} | {color:#000000}Software Acquisition{color} | | | | {color:#4600a5}Kathy{color} | {color:#000000}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kathy{color} | | | | |
| {color:#000000}7.10{color} | {color:#000000}P(Center) Guidance{color} | | | | {color:#4600a5}Tommy{color} | {color:#4600a5}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Tommy{color} | | | | |
| {color:#000000}7.11{color} | {color:#000000}Use of COTS, GOTS, MOTS{color} | | | | {color:#4600a5}Dave{color} | {color:#000000}Multiple Reviewers{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Dave{color} | | | | |
| {color:#000000}7.12{color} | {color:#000000}Flow down of NPR requirements on contracts and to other centers in multi center projects{color} | | | | {color:#4600a5}Dave{color} | {color:#ffffff}Tim{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Dave{color} | | | | |
| {color:#000000}7.13{color} | {color:#000000}Present requirements by class and include safety critical and assurance requirements{color} | | | | {color:#4600a5}Kevin{color} | {color:#fcf305}Pat S.{color} | | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kevin{color} | | | | |
| {color:#000000}7.14{color} | {color:#000000}Overview and history of the SPI effort{color} | | | | {color:#4600a5}Kevin{color} | {color:#ffffff}John K.{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Tommy{color} | | | | |
| {color:#000000}7.15{color} | {color:#000000}Peer review and inspections including checklists{color} | | | | {color:#4600a5}Kevin{color} | {color:#4600a5}Dave{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kevin{color} | | | | |
| {color:#000000}7.16{color} | {color:#000000}Transitioning to a higher class{color} | | | | {color:#4600a5}Kathy{color} | {color:#4600a5}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kathy{color} | | | | |
| {color:#000000}7.17{color} | {color:#000000}Explanation of enforcement of NPR requirements{color} | | | | {color:#4600a5}Tommy{color} | {color:#4600a5}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Tommy{color} | | | | |
| {color:#000000}7.18{color} | {color:#000000}Compliance matrices{color} | | | | {color:#4600a5}Kevin{color} | {color:#4600a5}Kathy{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kevin{color} | | | | |
| {color:#000000}7.19{color} | {color:#000000}Developing WBS structures which include Software{color} | | | | {color:#4600a5}Dave{color} | {color:#4600a5}Kathy{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Dave{color} | | | | |
| {color:#000000}7.21{color} | {color:#000000}Qualification of flight software{color} | | | | {color:#4600a5}Dave{color} | {color:#4600a5}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Dave{color} | | | | |
| {color:#000000}7.22{color} | {color:#000000}Architecture development and assessment{color} | | | | {color:#4600a5}Dave{color} | {color:#4600a5}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Dave{color} | | | | |
| {color:#000000}7.23{color} | {color:#000000}Accrediting software models/sims and analysis tools - These topics have not been addressed{color} | | | | {color:#4600a5}Dave{color} | {color:#4600a5}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Dave{color} | | | | |
| {color:#000000}7.24{color} | {color:#000000}Use of development, management and testing tools{color} | | | | {color:#4600a5}Dave{color} | {color:#4600a5}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Dave{color} | | | | |
| {color:#000000}7.25{color} | {color:#000000}Implementing metrics requirements and analysis plus examples{color} | | | | {color:#4600a5}Kevin{color} | {color:#ffffff}Sally G.{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kevin{color} | | | | |
| {color:#000000}7.26{color} | {color:#000000}Cost Estimation{color} | | | | {color:#4600a5}Kevin{color} | {color:#4600a5}Dave{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kevin{color} | | | | |
| {color:#000000}7.27{color} | {color:#000000}Use of multiple classification within a project (eg. Libraries){color} | | | | {color:#4600a5}Kevin{color} | {color:#4600a5}Kathy{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kevin{color} | | | | |
| {color:#000000}7.28{color} | {color:#000000}Accrediting software tools{color} | | | | {color:#4600a5}Kevin{color} | {color:#4600a5}Dave{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kevin{color} | | | | |
| {color:#000000}7.29{color} | {color:#000000}Tailoring of Reqt's based on Project Risk.  Could tailoring be done to match a payload class?{color} | | | | {color:#4600a5}Kevin{color} | {color:#ffffff}Tim{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kevin{color} | | | | |
| {color:#000000}7.30{color} | {color:#000000}Model based development and auto-generated code{color} | | | | {color:#4600a5}Kathy{color} | {color:#4600a5}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kathy{color} | | | | |
| {color:#000000}7.31{color} | {color:#000000}Coding standards with examples, Design patterns{color} | | | | {color:#4600a5}Dave{color} | {color:#4600a5}Tommy{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Dave{color} | | | | |
| {color:#000000}7.32{color} | {color:#000000}Distinguishing A-E from F-H{color} | | | | {color:#4600a5}Tommy{color} | {color:#4600a5}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Tommy{color} | | | | |
| {color:#000000}7.33{color} | {color:#000000}Applicability of requirements to Models and Sims including overlap and underlap of 7150 vs. 7009{color} | | | | {color:#4600a5}Tommy{color} | {color:#4600a5}Dave{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Tommy{color} | | | | |
| {color:#000000}7.34{color} | {color:#000000}Data only projects{color} | | | | {color:#4600a5}Tommy{color} | {color:#4600a5}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Tommy{color} | | | | |
| {color:#000000}7.35{color} | {color:#000000}Static and dynamic testing tools, et. when to use?{color} | | | | {color:#4600a5}Dave{color} | {color:#4600a5}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Dave{color} | | | | |
| {color:#000000}7.36{color} | {color:#000000} Software testing, estimates, levels of testing{color} | | | | {color:#4600a5}Dave{color} | {color:#4600a5}Kevin{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Dave{color} | | | | |
| {color:#000000}7.37{color} | {color:#000000}Choosing SW vs. Complex electronics{color} | | | | {color:#4600a5}Kevin + Tim{color} | {color:#ffffff}John K.{color} | {color:#4600a5}Lee{color} | {color:#ffffff}John K.{color} | {color:#993300}Jon/Greg{color} | {color:#4600a5}Kevin + Tim{color} |