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 SoftwareDesign might be better to consider as a single activity.
Activity Name
SWEs
SWEHB Components: Related Topics, Document Structures, Principles, Checklists, and PATs
Acquisition - found in existing activities such as Planning and Architecture
Monitor and Control - found in Planning and 5.5 SoftwareNon-conformance or Defect Management
Div
id
tabs-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, creating a document, implementing a development tool, preparing for or conducting a review, or other related topic supporting the work of an activity.
The Topics page could be expanded to organize and present more groupings of topics. Numbering of topics allows existing reference macros to be used in the Resources tab of the topic.
Components include:
Component Type
Topic Series
Component Description
Document Content
5.xx
Describes the minimum content expected in a particular document
Checklist
6.xx
List of things to consider when performing some development or assurance task in a project. Checklists are frequently designed as a Process Asset Template (PAT).
PAT (Process Asset Template)
PAT-xxx
List 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
Review
4.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
Process
1.xx
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
Software Engineering Topics
7.xx
In depth guidance on Software Engineering topics.
Software Assurance Topics
8.xx
In depth guidance on Software Assurance topics.
Software Safety Topics
3.xx
In depth guidance on Software Safety topics.
Software Design Principles
9.xx
Software Design Principles.
Cybersecurity Topics
2.xx
In depth guidance on Software Cybersecurity topics.
Div
id
tabs-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 Name
SWEs
SWEHB Components: Related Topics, Document Structures, Principles, Checklists, and PATs
"Benchmarking and Appraisals"
Moved to 3.9 Software Development Processes and Practices
3.6 Software Assurance and Software Independent Verification & Validation
8
Release, Operations, Maintenance, and Retirement
4.6 Software Operations, Maintenance, and Retirement
9
Software Assurance
3.6 Software Assurance and Software Independent Verification & Validation
10
Software Development Processes and Practices
3.9 Software Development Processes and Practices
11
Safety-Critical Software
3.7 Safety-Critical Software
12
Cybersecurity
3.11 Software Cybersecurity
13
Configuration Management
5.1 Software Configuration Management (SCM)
14
Risk Management
5.2 Software Risk Management
15
Peer Reviews and Inspections
5.3 Software Peer Reviews and Inspections
16
Measurements and Metrics
5.4 Software Measurements
Div
id
tabs-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
size
900
displayName
Development Life Cycle
name
Development Life Cycle
pagePin
3
Div
id
tabs-6
6. Activities used in SPAN
This is a list from SPAN of Activities used in Process Asset Libraries.