bannerd

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

6. Activities used in SPAN

This is a list from SPAN of Activities used in Process Asset Libraries. 

6.2 Activity Groupings in NPR but not explicitly in SPAN

Is every Topic and other appropriate SWEHB page accounted for in one or more Activities? 
Tabsetup
01. Activities and Their SWEHB Components
12. Definitions
23. Chapter 2 SWE Distribution
34. Activity Groupings
45. Activity Diagram
56. Activities used in SPAN
67. Design Decisions
Div
idtabs-1

1. Activities and Their SWEHB Components

This is a working page to build the list of activities and the SWEs and topics that define them. 

The table below was built from the activity descriptions in NPR 7150.2D chapters 3 thru 5. These are highlighted in yellow. The activity name includes the numbering that came from the NPR. Once we are sure that we know what activities we want to use, we should renumber the activities in a way that seems appropriate. 

Additional activities were derived from chapter 2. These chapter 2 activities were then copied into the activities highlighted in yellow where they seemed most likely to belong. See the subheading "SWEs from Ch 2 - Institutional Requirements". 

Note

At this point, all SWEs and Topics are represented "somewhere" in this scheme. It does not mean that they are in all of the appropriate places. Once we decide that the activity names should be, adding and deleting as appropriate, we will need to make sure that all of the SWEs, Topics and other pages are represented in the appropriate Activities. 

Distribution Of SWEs Into Activities

  • All SWEs in NPR 7150.2D are represented in an activity in the yellow group. SWEs that come from chapter 2 represent things that are done at the Institutional level to enable projects to perform a SWE at the project level. In a sense, they are enabling SWEs.

Distribution Of Topics And PATs Into Activities

  • All topics are represented in at least one activity.
  • Some topics are associated with multiple SWEs and may appear in more than one activity. For example, topic 8.5 - SW Failure Modes and Effects Analysis deals with design as well as has safety related considerations as well. It appears in both the 3.7 Safety-Critical Software and 4.3 Software Design activities. 
  • All PATs are represented in at least one activity. Some PATs may appear in multiple activities depending on the same criteria as topics.

Topics That Don't Fit Into Activities

  • There are a few topics that don't fit into the activity scheme. They are listed in the next to last row in the red highlight. 

Activities That Are Not Represented In This Model

  • There are a few topics that are not represented in this activity model. They are listed in the last row in the green highlight. If we want this activity model to match more closely with the way projects do their work, it may be necessary to add these activities into the model and move the appropriate SWEs, Topics, PATs, etc. into them. 

Additional Considerations Moving Forward

  • 3.8 Automatic Generation of Software Source Code content might be better to put into the activity 4.3 Software Design or 4.4 Software Implementation
  • 3.12 Software Bi-Directional Traceability has only one SWE and no other topics or other materials associated with it. It may be more appropriate to put this SWE under 4.1 Software Requirements
  • 4.2 Software Architecture and 4.3 Software Design might be better to consider as a single activity. 


Activity NameSWEs SWEHB Components: Related Topics, Document Structures, Principles, Checklists, and PATs
3.1 Software Life Cycle Planning

3.2 Software Cost Estimation

3.3 Software Schedules

3.4 Software Training

SWEs from Ch 2 - Institutional Requirements

3.5 Software Classification
Assessments


SWEs from Ch 2 - Institutional Requirements
3.6 Software Assurance
and Software Independent
Verification & Validation


3.7 Safety-Critical Software
3.8 Automatic Generation of
Software Source Code
3.9 Software Development
Processes and Practices
3.10 Software Reuse

SWEs from Ch 2 - Institutional Requirements

3.11 Software Cybersecurity
3.12 Software Bi-Directional Traceability
4.1 Software Requirements
4.2 Software Architecture
4.3 Software Design
4.4 Software Implementation
4.5 Software Testing
4.6 Software Operations,
Maintenance, and Retirement
5.1 Software Configuration
Management (SCM)
5.2 Software Risk Management 
5.3 Software Peer Reviews
and Inspections
5.4 Software Measurements

SWEs from Ch 2 - Institutional Requirements

5.5 Software Non-conformance
or Defect Management


  • 7.18 - 
CR-PR - Software Change Request - Problem Report
Other SWEHB pages that don't fit into the "activity" model

Other Activities for consideration: 

  • Acquisition - found in existing activities such as Planning and Architecture
  • Monitor and Control - found in Planning and 5.5 Software Non-conformance or Defect Management


3. Distribution of Chapter 2 SWEs

The SWEs from NPR 7150.2D chapter 2 are the Institutional Requirements. Initially, I grouped them into 7 "activities" to make sure that they didn't fall out of the overall activity scheme. The table below is the result of that work. 

SWEs that come from chapter 2 represent things that are done at the Institutional level to enable projects to perform a SWE at the project level. In a sense, they are enabling SWEs.

Additional activities were derived from chapter 2 and are highlighted blue below as the first 7 activities. These chapter 2 activities were then copied into the activities in tab 1, highlighted in yellow, where they seemed most likely to belong. 

Div
idtabs-2

2. Definitions

In the context of this view of the SWEHB, some definitions are in order. These are ideas for helping partition the information so it can be organized in a way to make finding things easier. 

2.1 Activity

General name for a set of processes, performed by one or more groups of stakeholders in the lifecycle of the development of a software product. Activity names may align with project phases in some cases depending on the development process or life cycle chosen for the project. Some activities are performed in a sequence. Others may be started and continue while others start up later and run in parallel with other activities. An example of this is coding and testing. These activities may appear to run together while different portions or releases of the code are being developed. 

An activity is composed of

  • SWE requirements that are satisfied during the conducting of the activity, and
  • Other work described in the other SWEHB components. 

2.2 SWE Components

Each SWE requirement is composed of one or more objectives that represent an industry best practice that OCE expects projects (on the agency in the case of Institutional Requirements) to perform. How these objectives are achieved is at the discretion of the group satisfying the requirement. Each SWE page lists some tasks that would accomplish the requirement, and guidance on how they might be completed. 

Tasks for the Software Engineering (tab ?) as well as Software Assurance (tab 7) are listed. In cases where additional support or more in depth guidance is available, the reader is referred to a Topic. 

2.3 Other SWEHB Components

Any page in the SWEHB that contains guidance on performing a process, such as

  • creating a document,
  • implementing a development tool,
  • preparing for or conducting a review, or
  • other related topic supporting the work of an activity. 

The SWEHB Topics page could be expanded to organize and present more groupings of topics. Numbering of topics allows existing reference management macros to be used in the Resources tab of the topic. 

In the table below, I have organized it in Topic Series number order. Rows in green highlight are currently in use. Components include: 

5List of things to do or consider when performing a development or assurance task in a project. These may be used in any of the other Topic seriesProcess1

Regularly performed set of actions with an expected set of outcomes. An example might be a generic Peer Review Process. A process usually contains: 

  • Triggers that cause the process to be initiated
  • Inputs
  • Process Steps which may be performed in a sequence or simultaneously
  • Outputs
  • Follow up actions, e.g. defects that need to be fixed topics.In depth guidance on Software Safety
    Component TypeTopic SeriesComponent Description
    Document ContentProcess1.xxDescribes the minimum content expected in a particular document
    Checklist6.xxList of things to consider when performing some development or assurance task in a project. Checklists are frequently designed as a Process Asset Template (PAT).

    Regularly performed set of actions with an expected set of outcomes. An example might be a generic Peer Review Process. A process usually contains: 

    1. Triggers that cause the process to be initiated
    2. Inputs
    3. Process Steps which may be performed in a sequence or simultaneously
    4. Outputs
    5. Follow up actions, e.g. defects that need to be fixed
    Cybersecurity Topics2.xxIn depth guidance on Software Cybersecurity topics.
    Software Safety Topics3.xxIn depth guidance on Software Safety topics.PAT (Process Asset Template)PAT-xxx
    Review4.xx

    List of things to do or consider when performing a development or assurance task in a project. Usually includes Items for:

    • Preparing for the review
    • Actions taken during the review
    • Actions taken after the review
    Document Content5.xxDescribes the minimum content expected in a particular document
    Checklist6.xxList of things to consider when performing some development or assurance task in a project. Checklists are frequently designed as a Process Asset Template (PAT).
    Software Engineering Topics7.xxIn depth guidance on Software Engineering topics. 
    Software Assurance Topics8.xxIn depth guidance on Software Assurance Software Safety Topics3.xx topics.
    Software Design Principles9.xxSoftware Design Principles. 
    Cybersecurity Topics2.xxIn depth guidance on Software Cybersecurity topics.
    Div
    idtabs-3
    PAT (Process Asset Template)PAT-xxxList of things to do or consider when performing a development or assurance task in a project. These may be used in any of the other Topic series. This series number format will allow using the "refstable" macro to select references if we allow references to be assigned to a PAT. 
    ActivitiesA.xxSWEHB Activity View series. This series number format will allow using the "refstable-topic" macro to select references if we allow references to be assigned to an Activity.
    Div
    idtabs-3

    3. Distribution of Chapter 2 SWEs

    The SWEs from NPR 7150.2D chapter 2 are the Institutional Requirements. Initially, I grouped them into 7 "activities" to make sure that they didn't fall out of the overall activity scheme. The table below is the result of that work. 

    SWEs that come from chapter 2 represent things that are done at the Institutional level to enable projects to perform a SWE at the project level. In a sense, they are enabling SWEs.

    Additional activities were derived from chapter 2 and are highlighted blue below as the first 7 activities. These chapter 2 activities were then copied into the activities in tab 1, highlighted in yellow, where they seemed most likely to belong. 

    Activity NameSWEs SWEHB Components: Related Topics, Document Structures, Principles, Checklists, and PATs

    "Benchmarking and Appraisals"

    Moved to 3.9 Software Development
    Processes and Practices

    "Licensing, Sharing and Reuse"

    Moved to 3.10 Software Reuse

    "Measurements and Metrics"

    Moved to 5.4 Software Measurements

    "Process Definition"

    Moved to 3.9 Software Development
    Processes and Practices

    "Process Library"

    Moved to 3.9 Software Development
    Processes and Practices


    "Requirement Mapping, Tailoring,
    and Classification"

    Moved to 3.5 Software Classification
    Assessments
     

    "Training"

    Moved to 3.4 Software Training

    Div
    idtabs-4

    4. Activity Groupings

    In this tab I will construct the new table of Activities based on the input from all of you. 

    • SWEHB Activity will be the name of the activity we use going forward.  
    • NPR Activity Groupings reflects the names of the groups of SWEs found in the NPR. They have the chapter and location number so we wont get confused. 



    4.1 Fred's Initial Rough Cut Of Activity Groupings

    The last column is used for SWEs that apply to the "SWEHB Activity" regardless of the "NPR Activity Grouping" that it belongs to. 


    SWEHB ActivityNPR Activity Groupings Specific SWEs That Apply
    1Planning

    3.1 Software Life Cycle Planning

    3.2 Software Cost Estimation

    3.3 Software Schedules

    3.4 Software Training

    3.5 Software Classification
    Assessments


    2Monitor and Control

    5.5 Software Non-conformance
    or Defect Management

    SWE-024 - Plan Tracking
    3Requirements Management

    4.1 Software Requirements

    3.12 Software Bi-Directional Traceability


    4Architecture and Design

    4.2 Software Architecture

    4.3 Software Design

    3.10 Software Reuse


    5Implementation and Coding

    4.4 Software Implementation

    3.8 Automatic Generation of
    Software Source Code


    6Testing4.5 Software Testing
    7IV&V3.6 Software Assurance
    and Software Independent
    Verification & Validation

    8Release, Operations,
    Maintenance, and Retirement
    4.6 Software Operations,
    Maintenance, and Retirement

    9Software Assurance3.6 Software Assurance
    and Software Independent
    Verification & Validation

    10Software Development
    Processes and Practices
    3.9 Software Development
    Processes and Practices

    11Safety-Critical Software3.7 Safety-Critical Software
    12Cybersecurity3.11 Software Cybersecurity
    13Configuration Management5.1 Software Configuration
    Management (SCM)

    14Risk Management5.2 Software Risk Management
    15Peer Reviews and Inspections5.3 Software Peer Reviews
    and Inspections

    16Measurements and Metrics5.4 Software Measurements
    Div
    idtabs-5

    5. Activity Diagram

    This activity Diagram represents the SWEHB Activities and their layout on a timeline. The timeline is notional and only represents the predecessors and successors and not any iterations that might be necessary in the real world. 


    5.1 - Fred's Initial Rough Cut Of Activity Groupings In A Diagram

    Gliffy diagrams plugin has been fixed. One of the greatest benefits of Gliffy diagrams is the ability to embed a link in the diagram. I will use this diagram to experiment with Gliffy capabilities. Eventually, a diagram similar to this one will be used to give users a visual representation of the Activity View of SWEHB. 


    Gliffy Diagram
    size900
    displayNameDevelopment Life Cycle
    nameDevelopment Life Cycle
    pagePin3

    Div
    idtabs-6

    6. Activities used in SPAN

    One element that should probably be in each activity is a link to the SPAN page where more information about the Activity from the Center perspective can be seen. 

    This is a list from SPAN of Activities used in various Center Process Asset Libraries. 

    Activity in SPANDescriptionHas Counterpart in SWEHB
    Project PlanningProject planning and scheduling assets

    3.1 Software Life Cycle Planning

    3.3 Software Schedules

    Process SelectionSelecting processes using the Compliance Matrix3.5 Software Classification
    Assessments
    ClassificationClassification of Software Process3.5 Software Classification
    Assessments
    EstimationEstimation processes and related assets3.2 Software Cost Estimation
    Project Monitoring and ControlMonitoring and control assets5.5 Software Non-conformance
    or Defect Management
    Risk ManagementRisk Management assets5.2 Software Risk Management
    ClosureAssets used when closing a project
    RequirementsAssets for recording and tracking requirements and change control

    4.1 Software Requirements

    3.12 Software Bi-Directional Traceability

    DesignAssets for use during product design

    4.3 Software Design

    3.10 Software Reuse

    4.2 Software Architecture

    Code and IntegrationCoding and software integration assets

    4.4 Software Implementation

    3.8 Automatic Generation of
    Software Source Code

    Peer ReviewReview processes and follow up activities5.3 Software Peer Reviews
    and Inspections
    Verification and ValidationVerification and Validation assets

    3.6 Software Assurance
    and Software Independent
    Verification & Validation

    4.5 Software Testing

    Release, Sustain and RetireAssets used during product release, Sustaining activities, and Retirement4.6 Software Operations,
    Maintenance, and Retirement
    Configuration ManagementConfiguration management and change control assets5.1 Software Configuration
    Management (SCM)
    MetricsMetrics assets5.4 Software Measurements
    Decision MakingDecision making processes and templates
    ImprovementProcess Improvement activities including SEPG3.9 Software Development
    Processes and Practices
    Software Quality AssuranceSoftware Quality Assurance and Audit assets3.6 Software Assurance
    and Software Independent
    Verification & Validation
    SafetySafety3.7 Safety-Critical Software
    PurchasingAssets used in purchasing software3.1 Software Life Cycle Planning
    ContractingAssets used when contracting software development3.1 Software Life Cycle Planning
    TrainingGeneral Training3.4 Software Training


    6.2 Activity Groupings in NPR but not explicitly in SPAN

    Activity Grouping in NPRHow it is accounted for in SPAN
    3.11 Software CybersecurityNot currently accounted for in SPAN

    7.1 - History and Overview of the Software Process Improvement (SPI) Effort

    4. Activity Groupings

    In this tab I will construct the new table of Activities based on the input from all of you. 

    • SWEHB Activity will be the name of the activity we use going forward.  
    • NPR Activity Groupings reflects the names of the groups of SWEs found in the NPR. They have the chapter and location number so we wont get confused. 

    4.1 Fred's Initial Rough Cut Of Activity Groupings

    The last column is used for SWEs that apply to the "SWEHB Activity" regardless of the "NPR Activity Grouping" that it belongs to. 

    5. Activity Diagram

    This activity Diagram represents the SWEHB Activities and their layout on a timeline. The timeline is notional and only represents the predecessors and successors and not any iterations that might be necessary in the real world. 

    5.1 - Fred's Initial Rough Cut Of Activity Groupings In A Diagram

    Gliffy diagrams plugin has been fixed. One of the greatest benefits of Gliffy diagrams is the ability to embed a link in the diagram. I will use this diagram to experiment with Gliffy capabilities. Eventually, a diagram similar to this one will be used to give users a visual representation of the Activity View of SWEHB. 

    Div
    idtabs-7

    7. Design Decisions

    The following questions and decisions by the group will steer the design of the Activity View of the SWEHB. 

    #Design ElementQuestionDesign Requirement
    1Activity Names

    What is the list of Activity Names that will be used in the Activity View of SWEHB?

    Decision: 

    • Each Activity Name will be numbered in the sequence A.00 - A.99
    • Each Activity will have a page with the Activity number and name in the title
    • Each activity will be placed under the Activity View page in the SWEHB Hierarchy
    2SWE PagesIs every SWE accounted for in one or more Activities? 
    • Every SWE must be in the SWEHB Activity that corresponds to it's NPR 7150.2 activity. 
    • SWEs may be added to other SWEHB Activities. 
    • Each SWE should have an accompanying statement expressing why it is in the Activity. This statement, "rationale", may appear in the SWEHB Activity. 
    3Topic and other pages

    Is every Topic and other appropriate SWEHB page accounted for in one or more Activities? 

    • Every Topic must be in the SWEHB Activity that corresponds to it's function.  
    • Topics may be added to other SWEHB Activities, as appropriate. For example, a topic on Peer Reviews may be included in other Activities that have work products that need to be reviewed. 
    • Each Topic should have an accompanying statement expressing why it is in the Activity. This statement, "rationale", may appear in the SWEHB Activity. Topics currently have an "excerpt" that is used in the Topics page to describe its purpose. These should be reviewed for adequacy in the SWEHB Activity pages. 
    4Activity page Layout

    What information should be displayed on an Activity page? 

    • There must be at least one statement for each SWE, Topic or other SWEHB page describing why it is included in the Activity. 
    • Statements must be reusable and may be in the form of: 
      • excerpt macros in the SWE, Topic or other page
      • Include page as a child of the SWE, Topic or other page
    Activity NameSWEs SWEHB Components: Related Topics, Document Structures, Principles, Checklists, and PATs

    "Benchmarking and Appraisals"

    Moved to 3.9 Software Development
    Processes and Practices

    "Licensing, Sharing and Reuse"

    Moved to 3.10 Software Reuse

    "Measurements and Metrics"

    Moved to 5.4 Software Measurements

    "Process Definition"

    Moved to 3.9 Software Development
    Processes and Practices

    "Process Library"

    Moved to 3.9 Software Development
    Processes and Practices

    "Requirement Mapping, Tailoring,
    and Classification"

    Moved to 3.5 Software Classification
    Assessments
     

    "Training"

    Moved to 3.4 Software Training

    Div
    idtabs-4
    SWEHB ActivityNPR Activity Groupings Specific SWEs That Apply1Planning

    3.1 Software Life Cycle Planning

    3.2 Software Cost Estimation

    3.3 Software Schedules

    3.4 Software Training

    3.5 Software Classification
    Assessments

    2Monitor and Control

    5.5 Software Non-conformance
    or Defect Management

    SWE-024 - Plan Tracking
    3Requirements Management

    4.1 Software Requirements

    3.12 Software Bi-Directional Traceability

    4Architecture and Design

    4.2 Software Architecture

    4.3 Software Design

    3.10 Software Reuse

    5Implementation and Coding

    4.4 Software Implementation

    3.8 Automatic Generation of
    Software Source Code

    6Testing4.5 Software Testing7IV&V3.6 Software Assurance
    and Software Independent
    Verification & Validation
    8Release, Operations,
    Maintenance, and Retirement
    4.6 Software Operations,
    Maintenance, and Retirement
    9Software Assurance3.6 Software Assurance
    and Software Independent
    Verification & Validation
    10Software Development
    Processes and Practices
    3.9 Software Development
    Processes and Practices
    11Safety-Critical Software3.7 Safety-Critical Software12Cybersecurity3.11 Software Cybersecurity13Configuration Management5.1 Software Configuration
    Management (SCM)
    14Risk Management5.2 Software Risk Management15Peer Reviews and Inspections5.3 Software Peer Reviews
    and Inspections
    16Measurements and Metrics5.4 Software Measurements
    Div
    idtabs-5
    Gliffy Diagram
    size900
    displayNameDevelopment Life Cycle
    nameDevelopment Life Cycle
    pagePin3

    Div
    idtabs-6
    Activity in SPANDescriptionHas Counterpart in SWEHB
    Project PlanningProject planning and scheduling assets

    3.1 Software Life Cycle Planning

    3.3 Software Schedules

    Process SelectionSelecting processes using the Compliance Matrix3.5 Software Classification
    Assessments
    ClassificationClassification of Software Process3.5 Software Classification
    Assessments
    EstimationEstimation processes and related assets3.2 Software Cost Estimation
    Project Monitoring and ControlMonitoring and control assets5.5 Software Non-conformance
    or Defect Management
    Risk ManagementRisk Management assets5.2 Software Risk Management
    ClosureAssets used when closing a project
    RequirementsAssets for recording and tracking requirements and change control

    4.1 Software Requirements

    3.12 Software Bi-Directional Traceability

    DesignAssets for use during product design

    4.3 Software Design

    3.10 Software Reuse

    4.2 Software Architecture

    Code and IntegrationCoding and software integration assets

    4.4 Software Implementation

    3.8 Automatic Generation of
    Software Source Code

    Peer ReviewReview processes and follow up activities5.3 Software Peer Reviews
    and Inspections
    Verification and ValidationVerification and Validation assets

    3.6 Software Assurance
    and Software Independent
    Verification & Validation

    4.5 Software Testing

    Release, Sustain and RetireAssets used during product release, Sustaining activities, and Retirement4.6 Software Operations,
    Maintenance, and Retirement
    Configuration ManagementConfiguration management and change control assets5.1 Software Configuration
    Management (SCM)
    MetricsMetrics assets5.4 Software Measurements
    Decision MakingDecision making processes and templates
    ImprovementProcess Improvement activities including SEPG3.9 Software Development
    Processes and Practices
    Software Quality AssuranceSoftware Quality Assurance and Audit assets3.6 Software Assurance
    and Software Independent
    Verification & Validation
    SafetySafety3.7 Safety-Critical Software
    PurchasingAssets used in purchasing software3.1 Software Life Cycle Planning
    ContractingAssets used when contracting software development3.1 Software Life Cycle Planning
    TrainingGeneral Training3.4 Software Training
    Activity Grouping in NPRHow it is accounted for in SPAN
    3.11 Software CybersecurityNot currently accounted for in SPAN
    Div
    idtabs-7

    7. Design Decisions

    The following questions and decisions by the group will steer the design of the Activity View of the SWEHB. 

    #Design ElementQuestionDesign Requirement
    1Activity Names

    What is the list of Activity Names that will be used in the Activity View of SWEHB?

    Decision: 

    • Each Activity Name will be numbered in the sequence A.00 - A.99
    • Each Activity will have a page with the Activity number and name in the title
    • Each activity will be placed under the Activity View page in the SWEHB Hierarchy
    2SWE PagesIs every SWE accounted for in one or more Activities? 3Topic and other pages