@(#)train.htm 3.5 - 03/08/02
The Generic UWF Maintenance Process (GUMP) 1994, 1995, 1996, 1997 The University of West Florida. All rights reserved.
Permission is granted to reproduce and adapt this document provided credit is given to the University of West Florida. This documentation is provided "as is" and no warranty of fitness for any particular purpose is made or implied.
This document is the Training Manual for the generic maintenance process for the University of West Florida. This document describes the training that is required to effectively perform the various software roles.
ABSTRACT
LIST OF TABLES
1.0 PURPOSE
2.0 SCOPE
3.0 OVERVIEW OF THE TRAINING PHASE
4.0 EVALUATION OF CURRENT SKILL LEVELS
5.0 TRAINING AREAS
6.0 ROLES AND RESPONSIBILITIES
7.0 QUIZ DESIGN
8.0 LESSON PLAN STRATEGY
9.0 EVALUATION OF THE TRAINING PHASE
10.0 LESSONS LEARNED
REFERENCES
REVISION HISTORY
Appendix A: SKILLS EVALUATION SURVEY
Appendix B: TRAINING PHASE EVALUATION SURVEYS
BIBLIOGRAPHY
GLOSSARY
The purpose of the Generic UWF Maintenance Process (GUMP) Training Manual is to provide the Project Coordinator (PC), Training Officers (TO), and students a guide for the CEN6015 Software Engineering Project course training phase. This document may be tailored based on the specific needs of each class or other organizations using GUMP.
The purpose of the training phase is to ensure an understanding of GUMP and prepare the participants for effective use of RECON software, software tools, test procedures, and languages utilized in the course.
The Training Manual will detail the strategy, organization, roles, responsibilities, and materials used for the CEN6015 Software Engineering Project course training phase. This document will not provide complete lesson plans for the training areas.
The Training Manual will address training issues for the Fort Walton Beach campus UNIX- and C-based RECON application, as well as the Pensacola Ada-based RECON application. Teaching UNIX, C, and Ada is beyond the scope of this document. It is the responsibility of each individual to ensure he/she has acquired the skills necessary to fulfill his/her assigned roles by the end of the training phase.
The training phase is scheduled during the initial class periods in the CEN6015 course. During the first class, an overview of the training phase, RECON, and GUMP will be presented to the class. Each student in the class will complete the Skills Evaluation Survey. The PC and instructor will assign roles and responsibilities, detailed in Section 5.0, to the students during the second class meeting, whenever possible.
The training phase will consist of a lecture, assignment, and quiz cycle. The lectures and assignments will be the primary teaching methods used in the course. Quizzes will provide a benchmark to evaluate the effectiveness of the training and quantify each student's progress.
Quizzes may be repeated in a specific area as many times as necessary for the student to pass. The grading policy and number of questions on a given quiz may vary at the instructor's discretion, but will be thoroughly explained during class.
Training requirements will vary based on a student's given role, as well as in which CEN6015 course (Fort Walton Beach or Pensacola) the student is participating. The specific training areas and quiz requirements by role are detailed in Section 6.0.
The training phase is considered complete when all students have passed the required quizzes and are prepared to perform their roles, or the instructor calls an end to the training phase.
The purpose of evaluating the current skills of the participants is to identify those areas
where further training is needed.
During the first class, students will complete a Skills Evaluation Survey, as well as quizzes in
selected areas, depending on the course location. The survey has a series of questions designed
to determine each person's background and experience in software maintenance. The initial
quizzes and the survey responses will enable the instructor and PC to evaluate student
proficiency in key areas, ensure that the correct level of training is incorporated into the
course, and allow informed decisions to be made about role assignments.
An example Skills Evaluation Survey is included in Appendix A. PCs are encouraged to adapt the
Skills Evaluation Survey as appropriate for their situations.
There are twelve (12) training areas required to ensure participants have the necessary
skills and understanding for the project phase of the course. The training areas shown in Table
1 may be a combination of various topics or skills. Quizzes, TO assignments, homework, lectures,
and roles have been designed around these training areas. Quiz categories are the same as the
training areas. The RECON quiz may be tailored for course location.
Training area topics covered:
| RECON |
RECON tool. Several versions of RECON exist, which analyze pre-ANSI C, ANSI, C, C++, and Ada. |
| UNIX |
UNIX commands, shell scripts, UWF SUN systems. |
| C ANSI |
C, gcc compiler |
| Ada/gnatmake |
Ada, gnat compiler |
| GUMP |
Process architecture and all GUMP documents |
| HTML |
Hypertext Markup Language |
| IV&V |
System level testing, regression testing |
| Metrics |
Metrics tracking and overview |
| SCM/SCCS |
Software Configuration Management, Source Code Control System |
| SEPG |
Software Engineering Process Group |
| SQA |
SQA Plan and inspections |
| Unit Testing |
Unit testing methods |
| Delphi Estimation |
Wideband Delphi Estimation Technique |
Table 1. Training Areas
TO categories shown in Table 2 may cover multiple training areas. The instructor and/or
PC will make TO assignments based on the skill sets of the participants. The roles and
responsibilities of each TO are detailed in Section 6.0.
Table 2. Training Officers
Participant assignments are determined for the duration of the course on the second night of class, whenever possible. Responsibilities in a given assignment will vary slightly depending on whether the class is in the training phase or the standard project phase of the course. Roles may be combined as necessary or omitted depending on the class structure. This training manual is designed to be tailored to the needs of each class or organization that uses it.
Each class member is responsible for passing each quiz for the training areas listed in Table 1. At the instructor's discretion, taking a quiz in a given category may be waived if the participant wrote the quiz pool questions. The quiz pool is discussed in Section 7.0.
The training phase consists of a lecture, assignment, and quiz cycle. The TO will lecture on a given topic, then distribute homework assignments, due the next class period. Any quizzes may be taken at the beginning of each class. Further lectures and homework assignments may be necessary. Quizzes may be repeated as often as necessary for participants to pass.
Each TO shown in Table 2 is responsible for providing training in the form of lectures during the class meetings. TOs will create and distribute homework assignments. They will grade the assignments, report on the results in class, and are responsible for providing training references and assignment solutions to the class. TOs may hold training sessions outside of class time as needed. It is recommended that outside training sessions be mandatory for participants who have attempted, yet failed to pass, two quizzes in a given area.
The PC will have a meeting with the TOs during the second class meeting to discuss their responsibilities and create a training schedule, allowing each TO time to prepare lectures. The PC will create the weekly quizzes in each area. The PC is responsible for tracking how many times a student took a quiz, his/her grade on each quiz, and whether or not the student has passed the given quiz.
Students are responsible for knowing what training they need and studying the appropriate materials necessary to pass each quiz. Students are responsible for approaching TOs for assistance. Students are required to complete all homework assignments by the given due dates.
During the training phase, the IV&V TO and participants should concentrate primarily on running through the existing UNIX and DOS regression test sets. IV&V is a very complex process. It has been shown that lectures and quizzes alone are NOT sufficient to prepare IV&V participants for their roles.
The instructor is responsible for the master quiz question sets for RECON and GUMP. The masters should be given to the PC prior to the first night of class, when possible. The instructor is responsible for the configuration management of all training material from the previous year.
The various roles that exist during the project phase of the course are shown in Table 3. The
PC and the instructor must determine the structure of the project during the training phase.
Some positions are optional and positions may be combined to accommodate class structure. These
assignments depend on the number of participants and their skill sets. A detailed description of
these roles and their responsibilities can be found in the GUMP Management Document.
Table 3. Project Roles
Creating, grading, and posting the weekly quizzes is a time consuming task. Quizzes should be
tailored to the needs of the participants and the training structure. At a minimum, a pool of
twenty (20) questions for each quiz topic is created by the PC. All quizzes are
multiple choice with four (4) possible answers. Each quiz should consist of ten (10) questions
selected from the question pool.
The quiz pool in each category will be posted to a class Web page after the first week of class
or as the quizzes become available. The answers to the quiz pool questions will NOT be released
to participants, except in the form of a graded quiz. Graded quizzes will be returned to the
participants at the end of each class. Quiz masters from the previous years are available from the instructor.
Lesson plans should be tailored to the specific needs of each class.
The TO should get a copy of the 20-question quiz set (without answers) from the PC. This quiz set can be used as a guide in training preparation.
The TO should generally approach this from a novice user's point of view. The PC will give this TO an idea of the skill set of the participants during the first class. The TO should concentrate on the basics.
The TO should generally approach this from a novice user's point of view. The PC will give this TO an idea of the skill set of the participants during the first class. The TO should be careful not to try to cover everything in one lecture. The training should concentrate on the practical aspects of getting novice users up and productive in UNIX. These topics and the UNIX training in general must be tailored to the specific needs of the current participants.
Training sessions at a UNIX terminal or workstation should be planned by the TO.
Students should utilize these sessions throughout the training phase.
All IV&V participants should concentrate on the regression test sets. The TO
should plan an assignment which requires the use of the UNIX and DOS regression test sets. The
class lecture should provide an overview of the IV&V process.
The TO should get a copy of the 20-question quiz set (without answers) from the
PC. This quiz set can be used as a guide in training preparation.
The SQA TO should focus on the inspection process. Inspection walkthroughs should be implemented as group homework assignments.
The Metrics TO should focus on time card data collection. Metrics will work closely with SQA to tabulate meaningful information that can be utilized for future tisks.
All TOs should get a copy of the quiz set (without answers) from the PC. This quiz set can be
used as a guide in training preparation. walkthroughs and assignments should be used as much as
possible during the training phase. These methods have been proven to improve training
results.
All TOs should keep track of the hours spent in preparation for lectures, homework,
etc. This will be useful to the PC at the end of the training phase.
The Training Phase Evaluation Surveys are distributed to all students by the PC at the end of
the training phase. Three qualitative surveys, provided in Appendix B, are used in the
evaluation. The first survey is designed for the TOs only. The second survey is designed for
non-TO participants. The final survey is designed for all students.
The PC compiles the results and evaluates the quality of the training. This evaluation is passed
to follow-on PCs to enable them to improve the training process. All surveys should be utilized
to evaluate the training phase.
Much better training results were seen when homework assignments and walkthroughs were
utilized in addition to the quizzes.
Strong configuration management is vital in all aspects of the RECON and GUMP process. Off-line
backup should also be kept in the event of a catastrophic event.
The current lecture, assignment, and quiz cycle described in this document is a direct result
of these lessons learned, the training results from the Ft. Walton Beach Fall 1997 class, and
the 1997 training survey responses.
Training areas are listed with suggested references.
C: The C Programming Language by Brian Kernighan and Dennis Ritchie
SCCS: Handout titled SCCS Terminology
ATAC: Handout titled ATAC Tutorial
UNIX, Shell Scripts:
SQA Inspection Training: SQA Document
UWF System: Handout Titled A UNIX Primer for New Users
RECON: RECON User Manual, RECON readme file, RECON Overview
Questionnaire for CEN6015 <Date Here>
Please print as clearly as possible
Name: _____________________________________________________________
Telephone: (Day) __________________ (Evening) ________________________
Email Address: ____________________________________________________
Rate your skill level in the given categories:
Circle the numerical selection, then provide illustrative examples or comments to support your rating.
Example: C Expert (I code in C daily at work and have been using C for 3 years.)
SKILL NONE-1 NOVICE-2 FAIR-3 GOOD-4 EXPERT-5
UNIX Commands 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
UNIX Shell Programming (Scripts) 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
UNIX Email (mail, mailx, etc.) 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
ANSI C 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
gcc Compiler 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Ada 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Ada Compilers 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
SCCS 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Software Configuration Management 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Software Quality Assurance 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Software Metrics 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Capability Maturity Model (CMM) Levels 2 or 3 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Independent Verification &Validation 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
ATAC Tool & UNIX lint Tool 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Technical Writing 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
HTML 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Using Web Browsers 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Marketing Techniques 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Project Management 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Delphi Estimation 1 2 3 4 5
Example of Experience: ________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Have you completed these courses?
Software Specification Yes No
Software Design Yes No
Software Verification and Validation Yes No
Software Engineering Management Yes No
Please list any additional tools, programming languages, or hardware experience you have that
you feel would be beneficial to the group during this course.
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
CEN6015 Training Officer Survey
Name: _______________________ Email: _____________________
Training Officer Position: ____________________________________
ex: RECON/GUMP, UNIX/C, SQA)
Please describe your preparation (learning process) to become a training officer. Include a rough estimate of the number of hours spent in preparation.
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
Number of days spent in preparation ___________.
How many individuals came to you for assistance during the training period? ______
Did anyone seek assistance more than once? _______
Please describe any improvements you would make in the training process, quizzes, etc.
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
CEN6015 Student Training Survey
Name: _______________________ Email: ___________________________
Please describe your preparation (learning process) in preparation for the quizzes.
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
Number of days spent in preparation ___________.
Did you perform any type of training other then the quiz-based training in preparation for the project class? ___________
Please describe: _______________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
Please describe your overall impression of the quiz-based training process, its effectiveness, grading policy, etc.
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
Please describe any improvements you would make in the training process, quizzes, etc.
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
CEN6015 Qualitative Training Survey
Please answer the following questions with a 1, 2, 3 ,4 or 5, where 1 is lowest (poor) and 5 is highest (excellent).
Please answer the following questions Yes or No.
SEI-93-TR-024: CMM for Software, version 1.1, Mark C. Paulk, Bill Curtis, Mary Beth Chrissis, and Charles V. Weber.
SEI-93-TR-025: Key Practices of the CMM, version 1.1, Mark C. Paulk, Charles V. Weber, Suzanne M. Garcia, Mary Beth Chrissis, Marilyn Bush.
| ANSI |
American National Standards Institute |
| APC |
Assistant Project Coordinator |
| ATAC |
Bellcore supplied test tool |
| CMM |
Capability Maturity Model |
| DE |
Documentation Engineer |
| IV&V |
Independent Verification and Validation |
| gcc |
GNU C Compiler |
| gnat |
GNU-NYU Ada Translator |
| gnatmake |
GNU-NYU Ada Translator Make |
| GUMP |
Generic UWF Maintenance Process |
| HTML |
Hypertext Markup Language |
| LSE |
Lead Software Engineer |
| PC |
Project Coordinator |
| RECON |
Software Reconnaissance Tool |
| SCCS |
Source Code Control System |
| SCM |
Software Configuration Management |
| SE |
Software Engineer |
| SEPG |
Software Engineering Process Group |
| SQA |
Software Quality Assurance |
| SUN |
Sun Microsystems |
| TO |
Training Officer |
| UNIX |
AT&T Bell Laboratories Operating System |
| UWF |
University of West Florida |