4.3 Develop And Supply Organizational Training

Overview

In this activity, the software engineering process group (SEPG) determines and supplies the training for the organization’s personnel. This includes the initial training of current personnel in various aspects of the organization’s standard software process, continuously evaluating newly available course material(s) and classes, modifying existing course materials in response to change requests, and providing training for new personnel.

Roles and Responsibilities

The SEPG is responsible for determining the organization-level training needs, developing the Organizational Training Plan (OTP), selecting and/or developing training classes, and conducting the organizational-level training.

Controls

The OTP Data Item Description (DID) (see Appendix E).

The organization’s Configuration Management (CM) Plan (CMP).

Inputs

The organization’s standard software process documenting the activities to be performed on each project, the standards to be followed, the methods to be used, etc.

Course materials and classes for evaluation.

Approved Software Change Requests (SCR) (see Appendix C) that are used to request changes in the OTP or training materials.

Procedures

1) The SEPG members responsible for training first review the organization’s standard software process to determine the types of training for the identified roles. For each role (e.g., developer, project manager, SEPG member) a training specification is defined. This specification includes training in areas such as object-oriented design, formal inspections, project management, and CM. The project software manager and software engineering managers must receive training in teamwork (e.g., group dynamics, building and managing teams), as well as system engineering training to gain a better understanding of other disciplines (e.g., electrical, mechanical). All project personnel should receive orientation in working as a team. The training program may include training in individual tools. If the same tool is expected to be used on multiple projects, the SEPG may arrange the training for the organization; otherwise, the tool training is done at the project level. An outline of the training needed in each subject for each role is completed as a basis for course development or selection.

2) Once the needed training subject/topic areas are identified, the SEPG determines how the training is provided. In comparing conventional training methods, in-house (training conducted by members of the organization) and commercial training programs ( training courses by commercial training companies) are found to be the most effective methods [Jones, 1995, pp. 88-89]. An alternative approach is to have a part-time consultant(s) provide training on-site and support projects over several months. Developing in-house training is not always cheaper because the effort required to develop and maintain the course materials must be considered. If the training is to be developed in-house, the resources (e.g., personnel, labor, cost) must be clearly identified and approved by senior management.

3) The SEPG identifies the cost and time required for the training. Initial training can be lengthy. Studies [Quann, 1995, pp. 25-30] show approximate classroom needs as depicted in Table 4.3-1.

Table 4.3-1. Training Time Estimates

Subject Weeks
Software engineering concepts and process 1 - 4
New design methodologies 1- 2
Software development tools 1 (per tool)
Basic Ada programming skills 1 - 2
Advanced Ada concepts 1 - 3

Financial support must be provided to the organization. Upper management must be made aware of the cost and training needs, and be willing to invest in training their personnel.

4) Once the training needs, training materials, and courses are identified (and funding secured), they are documented in the OTP, which is submitted to the asset library in accordance with the organization’s CMP.

5) Training materials are acquired (or developed) and placed in the organization’s asset library in accordance with the organization’s CMP.

6) Classes are scheduled and conducted. For each class, the individuals completing the course should be documented on the Course Record Form (see Appendix C), and entered into the software metrics database. Individuals successfully completing all areas of the training program for a role also are tracked via the organization’s software metrics database.

7) Feedback should be gathered from each individual completing the training on the training’s strengths and weaknesses. This is collected via the Course Evaluation Form (see Appendix C). The SEPG should review these results at the end of each course to determine if the training should be modified.

8) If in-house training materials or the OTP require corrections or updates (in response to changes in technologies and/or processes), an SCR should be written (see activity 2.2.4 Request Software Product Change) and submitted to the SEPG chairperson for approval (see activity 4.2.4 Maintain Process Standards) before modifying the training. Changes should not be made until an approved SCR is received.

Outputs

The Organization’s Training Program (consisting of the OTP and course materials) which is placed in the asset library.

The training metrics and information collected and placed in the organizational metrics database.