TOC Next Page


APPLICATIONS DEVELOPMENT AND MAINTENANCE

(GS-334)


Essential Competencies

Applications Developer

A specialist who performs tasks required to develop a software project from conception to implementation. Tasks may include analyzing organizational needs, developing functional and technical requirements, designing and coding programs, designing and conducting testing, writing documentation, designing and presenting training, and coordinating implementation. At the advanced level, the specialist may be more properly described as Systems Developer

Positions with these duties are generally classified in the Computer Specialist Series (GS-334). Depending on the size and organization of the information management staff, application development may be the only responsibility or just one of several responsibilities an individual performs. (Refer to the files for Data Communications Specialist, Local Area Network Manager, or Technical Support Specialist for the competencies required to perform additional responsibilities.)

ENTRY LEVEL

Description: These competencies identify the Knowledge, Skills, and Abilities required to perform basic tasks of Applications Development at the entry level. Work is performed with the assistance of more experienced colleagues, with an emphasis on developing skills.

Essential Competencies

Hardware

Description:Familiarity with basic computer hardware.

Outline

I. Hardware

Knowledge, Skills, and Abilities

Basic knowledge of computer hardware and the interactions between system components

Operating Systems

Description:Manipulates the operating system at a basic level.

Outline

II. Operating Systems

Knowledge, Skills, and Abilities

Knowledge of common operating system commands

Ability to write and edit simple batch files using common operating system commands (e.g., changing directories, launching programs)

Applications Software

Description:Installs and runs off-the-shelf and custom software.

Outline

III. Applications Software

Knowledge, Skills, and Abilities

Ability to read and understand manufacturer's or other instructions

Skill at installing and configuring software products

Systems Analysis

Description:Provides analysis leading to functional requirements documents.

Outline

IV. Systems Analysis

Knowledge, Skills, and Abilities

Basic knowledge of systems analysis techniques

Ability to participate in conducting interviews with line employees to elicit information about current procedures

Ability to analyze non-complex operating information to perform portions of functional requirements analyses for basic computer programs (e.g., analyze inputs, outputs)

Program Design/Programming

Description:Writes programs that perform basic tasks.

Outline

V. Program Design/Programming

Knowledge, Skills, and Abilities

Ability to write programs in the language appropriate to the need (C++, Clipper, Visual Basic, etc.) based on detailed program specifications

Ability to design relational database files

Applications Testing

Description:Performs testing of software programs, using a test plan and documenting problems.

Outline

VI. Applications Testing

Knowledge, Skills, and Abilities

Ability to understand test plans

Ability to conduct testing of specific software programs based on existing test plans

Ability to document problems

Technical Writing

Description:Writes basic technical documents.

Outline

VII. Technical Writing

Knowledge, Skills, and Abilities

Ability to write portions of functional requirements for basic computer programs (e.g., input and output layouts)

Ability to assist in developing user documentation

Training

Description:Comprehends a body of computer related knowledge and shares it with others.

Outline

VIII. Training

Knowledge, Skills, and Abilities

Ability to follow training plans

Ability to assist in conducting training

DEVELOPMENTAL LEVEL

Description: These competencies identify the Knowledge, Skills, and Abilities required to perform tasks of Applications Development at the developmental level. Routine work is performed with minimal assistance, with an emphasis on developing skills.

Essential Competencies

Hardware

Description:Determines the minimum hardware needed to support particular applications and operating systems.

Outline

I. Hardware

A. Research
B. Analysis

Knowledge, Skills, and Abilities

Ability to research capabilities and restrictions of hardware platforms

Ability to use hardware research and analyze in conjunction with system requirements

Operating Systems

Description:Analyzes potential operating systems for capabilities and restrictions and ability to support system requirements.

Outline

II. Operating Systems

A. Commands
B. Optimization
C. Analysis

Knowledge, Skills, and Abilities

Ability to write complex batch files using operating system commands

Ability to understand processor memory management and optimize operating system settings for application/job setups

Ability to analyze operating systems to determine which would be appropriate for hardware/software platforms

Applications Software

Description:Researches and compares available software packages, and makes recommendations for purchase.

Outline

III. Applications Software

A. Research
B. Analysis

Knowledge, Skills, and Abilities

Skill in researching software products including the ability to deal with vendors to secure evaluation copies of those products

Ability to analyze features of various software products, make comparisons based on understanding of target hardware, operating system, and user needs, and recommend purchases

Troubleshooting and Maintenance

Description:Analyzes the source of a problem, and suggests a solution.

Outline

IV. Troubleshooting and Maintenance

A. Identification
B. Resolution

Knowledge, Skills, and Abilities

Knowledge of troubleshooting techniques to determine whether difficulties are due to lack of training on the part of the user, hardware, software, or communications problems

Ability to suggest means of problem resolution, and modify code if necessary

Systems Analysis

Description:Provides analysis leading to project definition, management needs assessment, and requirements development.

Outline

V. Systems Analysis

A. Information Collection
B. Analysis

Knowledge, Skills, and Abilities

Knowledge of systems analysis and design techniques

Skill at planning and conducting interviews with line employees to elicit information about current procedures and analyzing whether these procedures meet current and future needs

Ability to analyze information gathered from users, available documentation, organizational research to perform functional requirements analyses for programs

Program Design/Programming

Description:Designs and writes programs of a complex nature.

Outline

VI. Program Design/Programming

A. Design and Coding
B. Relational Concepts

Knowledge, Skills, and Abilities

Ability to design and write programs in the language appropriate to the need (C++, Clipper, Visual Basic, etc.)

Ability to design relational database structures

Applications Testing

Description:Fully tests complex software programs by foreseeing many possible combinations of events.

Outline

VII. Applications Testing

A. Test Plans
B. Testing

Knowledge, Skills, and Abilities

Skill in designing test plans

Ability to conduct testing of software programs

Ability to document problems for appropriate resolution

Procurement/Contracting

Description:Writes basic specifications for purchasing items related to computers.

Outline

VIII. Procurement/Contracting

Knowledge, Skills, and Abilities

Ability to translate need for basic computer equipment into specifications for purchase

Technical Writing

Description:Writes technical documents for users and technical staff.

Outline

IX. Technical Writing

A. Functional Requirements
B. User and Technical Documentation

Knowledge, Skills, and Abilities

Ability to write functional requirements and user documentation

Ability to translate functional requirements into system specifications

Training

Description:Comprehends a body of computer related knowledge, develops a training approach, and delivers training.

Outline

X. Training

A. Training Plans
B. Materials
C. Training

Knowledge, Skills, and Abilities

Ability to develop training session plans

Ability to produce training materials

Skill at conducting user training

FULL PERFORMANCE LEVEL

Description:These competencies identify the Knowledge, Skills, and Abilities required to perform tasks of Applications Development at the full performance level. At the full performance level, Applications Development becomes Systems Development as the projects become more broad in scope. The incumbent will be a recognized expert, able to provide leadership to others.

Essential Competencies

Hardware

Description:Determines the minimum hardware needed to support particular applications and operating systems.

Outline

I. Hardware

A. Research
B. Analysis

Knowledge, Skills, and Abilities

Ability to research capabilities and restrictions of hardware platforms

Ability to use hardware research and analyze in conjunction with system requirements

Operating Systems

Description:Analyzes potential operating systems for capabilities and restrictions and ability to support system requirements. Environment may include multiple users and platforms.

Outline

II. Operating Systems

A. Commands
B. Optimization
C. Analysis for complex environments

Knowledge, Skills, and Abilities

Ability to write complex batch files using advanced operating system commands

Ability to understand processor memory management and optimize operating system settings for application/job setups

Ability to analyze operating systems to determine which would be appropriate for hardware/software platforms, including multi-user, multi-platform environments

Applications Software

Description:Researches and compares available software packages and products expected in the future (off-the-shelf and NPS systems), to make recommendations for purchase or development of new products.

Outline

III. Applications Software

A. Research
B. Analysis
C. Justification

Knowledge, Skills, and Abilities

Knowledge of industry trends and coming software developments, in addition to skill in researching software products

Ability to deal with vendors to secure evaluation copies of software products

Ability to analyze features of various software products, make comparisons based on understanding of target hardware, operating system, and user needs, and recommend purchases. Includes developing analysis documents to justify selections or support the need for development of a new product

Troubleshooting and Maintenance

Description:Analyzes the source of complex problems, and effects solutions.

Outline

IV. Troubleshooting and Maintenance

A. Identification
B. Resolution

Knowledge, Skills, and Abilities

Knowledge of troubleshooting techniques to determine whether difficulties are due to lack of training on the part of the user, hardware, software, or communications problems

Ability to resolve problems by modifying procedures, providing training, coordinating hardware replacement, configuration, or repair, modifying program code, or whatever else may be necessary to correct the problem

Systems Analysis

Description:Provides analysis leading to project definition, management needs assessment, cost/benefit documentation, requirements development, and system implementation coordination. Also may include work on servicewide standards, security issues, planning.

Outline

V. Systems Analysis

A. Information Collection
B. Analysis
C. Implementation

Knowledge, Skills, and Abilities

Extensive knowledge of systems analysis and design techniques

Skill at eliciting detailed information about current procedures and analyzing whether these procedures meet current and future needs

Ability to deal with all levels of employees, including management

Ability to analyze information gathered from users, available documentation, organizational research to determine system feasibility, perform cost/benefit analyses, and perform functional requirements analyses for systems

Ability to translate functional requirements into hardware and software system specifications

Ability to coordinate full implementation of a system with users and management, including conversion of data to new structures and any period of parallel processing

Program Design/Programming

Description:Designs and writes programs in a multi-user, multi-platform environment, and serves as a resource to other programmers.

Outline

VI. System Design/Programming (Program Design/Programming)

A. Design/Coding/Oversight
B. Relational Concepts

Knowledge, Skills, and Abilities

Ability to design and write programs for a variety of platforms (e.g., LANs, WANs, other multi-user environments), in the language appropriate to the need (C++, Clipper, Visual Basic, etc.) and oversee program development by others

Ability to take complex code developed by someone else, analyze the structure and flow, and make modifications that will improve the program without having negative impact on other parts of the system

Ability to design and manage complex relational database structures

Applications Testing

Description:Designs and conducts testing of all programs including the system interaction level, and effects solutions to problems encountered.

Outline

VII. System Testing (Applications Testing)

A. System Testing
B. Problem Resolution

Knowledge, Skills, and Abilities

Skill in designing test plans

Ability to conduct program testing of all programs in a system, including the interaction between the various programs in a complex system

Ability to document problems, and lead others in discussions of potential solutions

Procurement/Contracting

Description:Writes specifications for purchasing or contracting items or services related to computers.

Outline

VIII. Procurement/Contracting

Knowledge, Skills, and Abilities

Ability to translate need for computer systems into specifications for purchase or contract

Ability to develop specifications for contract computer services (e.g., programming, technical support)

Technical Writing

Description:Writes complex technical documents for audiences at the user, technical staff, and management levels.

Outline

IX. Technical Writing

A. Functional and System Specifications
B. User and Technical Documentation
C. Management Documents

Knowledge, Skills, and Abilities

Ability to write functional requirements, system specifications, hardware specifications, and user documentation

Ability to write management documents, e.g., feasibility studies, cost/benefit analyses, management decision papers

Training

Description:Comprehends a complex body of computer related knowledge, develops a training approach, delivers training, and uses comprehension measurement techniques.

Outline

X. Training

A. Training Production
B. Training Improvement
C. Complex Training

Knowledge, Skills, and Abilities

Skill at developing training session plans

Skill at producing training materials

Ability to develop training data, create hands-on examples and theoretical scenarios to measure user comprehension

Ability to modify training in progress to address inadequate user comprehension

Ability to modify training plans or materials to improve future sessions

Skill at conducting user training on complex systems

National Park Service
Training and Development Division
Essential Competencies
c-appdev.htm

TOC Next Page