EPA/ITAS
023
FEBRUARY 23, 1989
EPA SYSTEM PROFILE
FINAL REVISION I
PCS
Prepared for
UNITED STATES ENVIRONMENTAL PROTECTION AGENCY
NATIONAL DATA PROCESSING DIVISION
INFORMATION TECHNOLOGY ARCHITECTURAL SUPPORT
CONTRACT NO. 68-W8-0083
Prepared by the Viar Team
Viar and Company
300 North Lee Street
Suite 200
Alexandria, Virginia 22314
-------
PCS PROFIIiE
OUTLINE
1.0 System Overview
1.1 System Purpose
1.2 System Background
2.0 User Environment
2.1 User Support
2.2 User Training
3.0 Technical Overview
3.1 Hardware/Software Environment
3.2 Subsystem Environments
3.2.1 Data Entry
3.2.2 Data Edits
3.2.3 Updates
3.2.4 Data Retrieval
3.3 Data
3.3.1 System Data Base
3.3.2 Files
3.4 Hardware
3.4.1 Type
3.4.2 Peripherals
3.5 Software
3.5.1 Online
3.5.2 Batch
3.5.3 Communications
4.0 System Functions
4.1 System Input
4.1.1 Data Input
4.1.2 Update
-------
4.2 System Output
4;2.1 Ad-Hoc Data Retrieval
4.2.2 Reports
5.0 System Maintenance
5.1 User Change Control Process
5.1.1 System Enhancements
5.1.2 System Problems
5.2 Technical Change Control Process
5.2.1 Change Control System Design
5.2.2 Change Control Documents
5.2.3 Change Control Activity
5.2.4 Change Control Testing
5.2.5 Implementation of Changes
6.0 Documentation
6.1 User.Documentation
6.2 Technical Documentation
6.3 Data Dictionary
Appendix I Sample System Function Screens
Appendix II Documentation Matrix
-------
PCS PROFILE
1.0 System Overview
1.1 System Purpose
The purpose of the Permit Compliance System (PCS) is to
track and monitor over 130,000 industrial and public works
facilities in support of the National Pollutant Discharge
Elimination System (NPDES). PCS tracks permit information
issuance through expiration as well as additional data including
: general permit information, government grants issued; appeals
and hearing requested by the permittees and facility inspection
data.
1.2 System Background
PCS was developed under the Office of Water Enforcement
and Permits (OWEP) to support NPDES. The NPDES issues permits to
facilities discharging pollutants into our nation's.waterways.
Each permit limits the amount of pollutants a facility may
legally discharge. Actual measurement limits, for pollutants and
beneficial elements are specified on a permit. Maximal limits are
indicated for acceptable levels of a pollutant. Minimum limits
are indicated for the minimal amount of beneficial elements that
are required, such as oxygen.
One of the major functions of the NPDES program is to
determine which facilities violate permit regulations.
Depending upon the severity of the violations, action may be
taken by the EPA to insure future compliance. These "enforcement
actions" that the EPA issues may appear in many forms. The
actions taken become more severe as the violations continue.
Another important aspect of the NPDES program concerns the
maintenance of discharge limits on existing permits as a result
of new laws requiring stricter regulation. These new laws may
require revisions to existing permits, resulting in pollution
discharge limits being lowered or raised significantly. The
revised permit may contain instructions to build new filtering
plants to comply with new regulations. If this is necessary the
EPA will set a time schedule with completion date milestones for
building new plants. These "compliance schedules" must be met
within the time frame specified or enforcement actions will be
applied.
Many reports are required by Congress to identify NPDES
violators and the accompanying enforcement actions taken by the
EPA. Both state and regional EPA employees use PCS as a tool to
determine who is violating the Clean Water Act, to what extent,
-------
and what prior action has been taken.
2.0 User Environment
The user community consists of the state .and regional
employees needing NPDES program information. Each regional
office., is responsible for their designated states. However,
regions may contain interface states, who have developed their
own tracking and compliance systems. Interface states must
supply required NPDES information to the PCS data base (typically
via a batch upload process ).
User personnel include data entry operators, engineers,
and managers. Engineers enter and access PCS inspection
information, and managers monitor PCS for quality control
purposes.
Contractors are employed to create and run retrieval
requests.
2.1 User Support
A representative users group meets twice a year with
Headquarters staff and technical staff to discuss PCS issues. The
forum for these user conferences includes discussion of new
policy decisions, and present and future enhancements. These
conferences are attended on a volunteer basis.
Headquarters maintains a "status" dataset in TSO/SPF.
This dataset contains the status of the update runs. Users may
determine whether the update is still running or if any problems
have occurred by browsing the status dataset. This dataset also
contains scheduling information such as dates for future training
and implementation dates for major enhancements.
2.2 User Training
Training is conducted by the Headquarters staff on a
monthly basis. Generally, between ten and fifteen users need to
request training before a training class is scheduled.
Headquarters offers a two and a half day beginners seminar and a
two day advanced course. Only one of the two courses is offered
each month. Training is offered regionally and usually occurs
onsite or in the vicinity of the requesting majority.
The PCS training program encompasses all aspects of
using PCS however, the following items are not included ;
references to PCS User Guides used in the field, a detailed
overview of the NPDES application and TSO/SPF training ( TSO/SPF
is offered by the NCC ).
-------
3.0 Technical Overview
3.1 Hardware/Software Environment
The PCS computing environment uses the 3090 IBM
mainframe computer at NDPD. This system has been built using
COBOL, CICS and Natural utilizing the ADABAS DBMS. The
specifics of the PCS environment are detailed in the following
sections.
3.2 Subsystem Environments
3.2.1 Data Entry
BATCH - Programs are written in batch COBOL.
PCSADE - Data entry .programs written in NATURAL, edit
processing handled by CICS COBOL.
PCENTRY - Data entry programs are written in DBASE
III.
3.2.2 Data Edits
Data edits are performed during online data entry.
Batch edit programs are written in COBOL and online edit programs
are written CICS COBOL. Initial screen editing is written in
ADABAS/NATURAL.
3.2.3 Updates
All regular updates are performed biweekly in a batch
COBOL mode. A "Direct Call" COBOL program is used to apply
transactions to the database. DIRECT CALL programs access the
database at a lower level than Fourth Generation NATURAL. Lower
level meaning "closer" to machine code. This software is more
difficult to develop and maintain, but provides more efficient
transaction processing.
Valid edits for records which are dependent upon the
existence of other related records are performed during online
editing and batch update processing. If the necessary records
exist the record is added to the data base.
3.2.4 Retrieval
GENERALIZED RETRIEVAL - A series of batch COBOL
programs which generate NATURAL code to access database
records.
INQUIRY - CICS COBOL and Dynamic Source NATURAL code
-------
are used in conjunction to generate NATURAL queries to
the database.
3.3 PCS Data
Information retained in PCS is related to the events
surrounding permit compliance activities. Data related to permit
issuance and acceptance, site inspections, government grants
issuance, scheduling, waste disposal monitoring, enforcement
actions, identification of violations, permittee protests.and
regulations appeals are all part of the PCS data domain.
3.3.1 Data Base
ADABAS is used as the PCS data base. The data residing
in the data base is stored in a relational structure and accessed
in a hierarchical format.
PCS data base access is possible through the PCS
primary key. The primary key or NPID as it is called internally
is an identification number which uniquely identifies each
facility. The NPID is included as part of the key in every PCS
data base record.
The PCS data base contains approximately 8 million
records.
3.3.2 Files
PCS uses approximately 8 different files called the
Permit Facility, Effluent, Compliance, Inspection, Enforcement,
Evidentiary Hearings, Grant and Permit Events.
Permit Facility data contains general facility
information such as name, address and classification.
Effluent data includes three levels of data; pipe
schedule ( identifies currently monitored pipe ), parameter
limits ( identifies pipe parameters being measured ), and
measurements ( records the parameter measurements ).
Compliance data tracks schedules for milestone events
and scheduling violations.
Inspection data records the inspection date, type and
inspector.
Enforcement data identifies actions taken and which
violations occurred to provoke enforcement.
Evidentiary Hearings stores data related to permittee
protests and regulations appeals.
-------
The Grants file contains records of which publicly
owned water treatment plants were issued government grants.
Permit Events data tracks the issuance and acceptance
of the permits.
3.4 Hardware
3.4.1 Type
CPU IBM 3090 - 300 (SIERRA SERIES)
3.4.2 Peripherals
The .peripherals used for PCS are IBM or IBM compatible
personal computers, TTY line by line terminals, IBM 3278 full
screen terminals and IBM 3279 full screen color monitor
terminals.
The PCs use KERMIT or other compatible software to
upload and download data to the mainframe.
TTY terminals have the ability to emulate full screen
with protocol conversion software.
3.5 Software
PROGRAMMING
LANGUAGES COBOL (Batch & CICS)
ADABAS/NATURAL (4GL)
DBASE III
3.5.1 Online
Natural is used for the online or screen programs.
Screen edit programs for online data are written in CICS COBOL.
3.5.2 Batch
COBOL is used for PCS batch processing programs.
3.5.3 Communications
Users in the field access PCS through a modem or
central controller.
4.0 System Functions
-------
4.1 System Input
4.1.1 Data Input
The PCS design provides three methods to enter data ;
1; card image processing, 2. PCSADE and 3. PCENTRY. These
processes are described in the following sections.
1. Card image processing requires users to create 80
character card image data sets and submit them via a batch run.
Once the card is submitted and the batch run activated, the card
image data is edited by PCS and an edit report is generated. The
card image format as depicted below, identifies the record type,
transaction type (add, delete, change) and the data itself.
ie: D-NMD0002323001A9..... .861231
The first character 'D' identifies the transaction as a
Delete transaction.
The next two characters '-N1 identifies the record type
as a measurement.
The remaining characters represent measurement data.
Card Image processing requires extensive TSO/SPF
knowledge.
2. PCSADE is an on-line, menu driven, full screen
system that allows users to add new records and display existing
records for deletion or change. PCSADE provides online editing
so data is edited as it is entered.
PCSADE offers Add, Change and Delete transactions,
however a Browse or View option is not available. The Change
function does not immediately update the data base, it submits an
update transaction which takes effect when the Batch Update
process is run. PCSADE provides a Help function. The Help
function contains information about how to use PCSADE, it does
not include a list of any acceptable entry codes.
3. PCENTRY allows users to enter data on a PC and
upload the data to the mainframe. This system is menu driven with
full screen access similar to PCSADE.
-------
4.1.2 Updates
Although three ways to enter data exist, there Is only
one way to apply the transactions to the PCS database, ie...
update the database. Due to the high volume of data entered^ no
data is updated online. All update transactions are processed by
a standard Update Job run twice a week.
4.2 System Output
4.2.1 Ad-Hoc Data Retrieval
Once the data has been applied to the database it can
be retrieved. Currently there are two ways to retrieve data.
They are : Generalized Retrieval and INQUIRY.
Generalized Retrieval is the most widely used PCS tool. This
facility allows users to set up batch retrieval statements in a
manner similar to the card image data entry. The user submits
these statements and receives either a "canned" report or a
customized report. The following example conveys how Generalized
Retrieval works.
ie: 10 STTE = MD
10 SIC2 = 4952
20 FAC-NAME
The numbers 10,20 identify the commands.
A 10 command indicates selection criteria
A 20 command indicates what is requested to be displayed
The first 10 command requests the state (STTE) of
Mary1and(MD)
The second 10 command indicates the user requests all sewage
treatment plants(internally identified by code 4952)
The 20 command indicates the user requests the Facility name
(FAC-NAME) be displayed on the report.
The subsequent report produced would display the names
of all the sewage treatment plants in Maryland. Although, widely
used because of its tremendous flexibility, Generalized Retrieval
has batch limitations similar to the batch data entry method.
The online "INQUIRY" system provides an interactive single
query function. Each request must be followed by pressing the
'ENTER' key, after which another request may be made. INQUIRY
has two separate modes, Prompt and Command. The Prompt mode is
menu driven and the user selects from a series of "canned
reports". Examples of "line by line" processing and Prompt and
Command modes can be found in Appendix A. The reports produced by
the INQUIRY system appear online.
-------
5.0 System Maintenance
5.1 User Change Control Process
The following scenario depicts the process which
expedites system changes.
- User reports problem to PCS Headquarters hotline.
- Reported problem is logged on the PCS User Request
form.
- Headquarters staff analyzes the problem.
- Headquarters staff determines extent of problem.
- Problem is assigned a priority by Headquarters staff
according .to effect on overall user community.
- Headquarters management meets with technical
management to determine if resolution requires a
system enhancement or a software modification.
5.1.1 System Enhancement
System enhancements are defined as system problems or
changes which require necessitate research before implementation.
First, an analysis of the enhancement is conducted. Once the
study is complete and the effects on the system are determined
the enhancement request is entered into the Enhancement Library.
Included in the library are ; date, description and status of the
request.
A representative user group further prioritizes the
request and presents it to the technical staff, who initiate the
enhancement plan.
When a batch card image data entry enhancement is made
all interface states must modify their conversion software to
accommodate the change.
5.1.2 System "Problems"
System "problems" are classified as system
inadequacies or changes requiring no additional research. ( A
system problem is less complicated than a system enhancement).
Once a modification request is made it is logged into the Problem
Library. The problem is assigned to a programmer, who upon
resolution of the problem updates the library status of the
problem from pending to complete.
-------
5.2 Technical Change Control Process
the mechanics of the technical chancfe control process
are the same for system enhancements as they are for software
''problems". Both types of approaches require existing software
to be modified.
5.2.1 Change Control System Design
PCS incorporates two software environments, development and
production thus adhering to standards set by NDPD. The production
environment contains the actual software and data the user
accesses. Controls have been implemented which restrict
production updates outside of the regular update process. The
development environment allows software modification and testing
to be done on subsets of actual data. This dual system allows
software maintenance and modification without interrupting the
production system.
5.2.2 Change Control Documents
Documents involved in the change control process are
the :
PCS User Request
PCS Cobol/Fortran Tracking Form
- PCS Natural Program Tracking Form
Change/Enhancement Test and Acceptance Form for
Natural Programs
PCS Program Update Log
5.2.3 Change Control Activity
After the software has been changed the programmer is
responsible for testing the change.
Once testing is complete the original request form is
updated to indicate a resolution for the problem is in effect.
Additionally, the software tracking forms and change acceptance
forms both online and bound copies are completed. All forms are
reviewed by a senior project manager.
5.2.4 Change Control Testing
Testing is performed both by the programmer making the
change and Headquarters personnel. The modifications must be
tested and cleared by both parties before being passed to the
National Computer Center (NCC).
-------
5.2.5 Implementation of Changes
The NCC is responsible for moving a software change
from development into production.
6.0 Documentation
PCS User's Guides
GENERALIZED RETRIEVAL
DATA ENTRY, EDIT and UPDATE (PCSADE, PCENTRY, Batch)
INQUIRY
DATA DICTIONARY
Technical Documentation
PCS Maintenance Manual
Production Control Guide
6.1 User Documentation
Users Guides exist for each PCS subsystem. Each guide
contains an overview of the PCS data organization, as well as
detailed procedures pertaining to accessing the subsystem, such
as ; interactive sessions, screen displays, prompts and reports.
Users Guides are currently under revision.
Headguarters plans to have these revised documents online
sometime in fiscal year 89. Online manuals will benefit the
users in that updates to the users guides will be more
manageable, and the time consuming and costly process of mailing
manuals will be eliminated.
6.2 Program Documentation
Maintenance Manuals - There is an extensive collection of program
maintenance documentation on each of the PCS subsystems. These
documents contain detailed program descriptions of the subsystem
programs. For instance, the PCSADE document describes each data
entry screen program (NATURAL) and all of the CICS COBOL editing
programs. The description includes a general overview of each
program and the input and output formats where appropriate. In
addition, program flow diagrams are also contained in these
documents.
The PCS project team also keeps a "hard copy" library of every
program in the system filed by program name.
Production Control - The Production Control manual is an
extensive document detailing the staffs responsibilities. This
document contains listings of all update JCL jobs, the most
common errors that may be encountered, and the appropriate
responses to resolve them.
-------
6.3 Data Dictionary
The PCS data dictionary information includes data element
descriptions and formats.
-------
Appendix I
System Function Sample Screens
-------
Main Menu Screen
08: 17:44
SCREEN ID SCREEN NAME
PCS-ADE
MAIN MENU SCREEN
FAC1 FACILITY DATA SCREEK 1
FAC2 FACILITY DATA SCREEK 2
FACA FACILITY ADDRESS
FACO OWNER/OPERATOR ADDRESS
IKSP INSPECTIONS
CSCH COMPLIANCE SCHEDULES
PTRK PERMIT TRACKING
EVHR EVIDENTIARY HEARINGS
GRNT GRANTS
LIMS LIMITS
LIMM LIMIT MODIFICATIONS
ENAC ENFORCEMENT ACTION
EAKS ENFORCEMENT ACTION KEYS
SCREEN ID
OFLG
OF1T
EVIO
CVIO
SVIO
PCI1
PCI2
PAU1
PAU2
PAU3
PPS1
TABS
fiUIT
10/15/S7
SCREEN NAME
OUTFALL GENERAL DATA
OUTFALL TREATMENT TYPE/COMMENTS
EFFLUENT MEASUREMENTS/VIOLATIONS
COMPLIANCE SCHEDULE VIOLATIONS
SINGLE EVENT VIOLATIONS
PRETREATKENT COMP INSP SCREEN 1
PRETREATI1EMT COWP IMS? SCREEN 2
PRETREATMENT AUDIT SCREEN 1
PRETREATMENT AUDIT SCREEN 2
PRETREATMENT AUDIT SCREEN 3
PRETREATMENT SUMMARY
PCS CODE TABLE MODIFICATIONS
** TERMINATES SESSION **
ENTER SCREEN ID:
DO YOU HANT THE CHANGE OPTION CY/NJ? N
-------
PCS-ADC
Facility Owner/Operator Address Screen
PERHIT f TRAMS CODE _ OUNER/OPER ADDRESS SCRCEK ID' FACO
- - - - FACILITY OUMER ADDRESS - - - -
FACILIir NAHE COKAtt) ___
ADDRESS IINE1
-------
03/09/87
SCREEN ID SCREEN NAME
PCS PC-ENTRY
VERSION 2.01
DATA ENTRY FUNCTION
PANEL E.MENU
SCREEN ID SCRE.-N NAME
FACi
FAC2
FACA
FACO
INSP
CSCH
PTRK
EVHR
GRNT
LI MS
LI MM
ENAC
EAKS
ENTER
FACILITY DATA SCREEN 1 OFLG
FACILITY DATA SCREEN 2 OFLT
FACILITY ADDRESS EDMR
OUNER/OPERATOR ADDRESS EVIO
INSPECTIONS CVIO
COMPLIANCE SCHEDULES SVIO
PERMIT TRACKING PCIl
EVIDENTIARY HEARINGS PCI 2
GRANTS PAUl
LIMITS PAU2
LIMIT MODIFICATIONS PAU2
ENFORCEMENT ACTIONS PPSi
ENFORCEMENT ACTIONS KEYS
SCREEN ID-.
OUTFALL GENERAL DATA
OUTFALL TREATMENT TYPE/COMMENTS
EFFLUENT DMR PAGE
EFFLUENT MEASUREMENTS/VIOLATIONS
COMPLIANCE SCHEDULE VIOLATIONS
SINGLE l-VENT VIOLATIONS
PRETREATMENT COMP INSP SCREEN
PRETREATMENT COMP INSP SCREEN
PRETREATMENT AUDIT SCREEN 1
PRETREATMENT AUDIT SCREEN 2
PRETREATMENT AUDIT SCREEN 3
PRETREATMENT SUMARY
1
2
End Data Entry Function;
-------
INQUIRY REPORT:
FACILITY OVERVIEW REPORT
GENERAL INFORMATION
PERMIT NUMBER: CT000008.6 FACILITY NAME: AMERICAN CYANAMIDE COMPANY
ACTIVITY STATUS : ACTIVE ACTIVITY DATE:
MAJOR/MINOR DISCHARGER : MAJOR
TYPE OF OWNERSHIP : PRIVATE
STD INDUSTRIAL CLASS(SIC): PLASTICS MATERIALS AND RESINS
INDUSTRIAL CLASS UNCL) : PRIMARY PRIMARY CATEGORY: PLAST
CITY : WALLINGFORD /T/ STATE : CONNECTICUT
COUNTY: NEW HAVEN REGION: 01 SUB-REGION: 2
RIVER BASIN : NE/PAWCATUCK RIVER REACH:
RECEIVING WATERS: QUINNIPIAC RIV
ENTER A CARRIAGE RETURN TO CONTINUE, OR
ENTER 'SKIP' TO SKIP THE NEXT SECTION — PERMIT INFORMATION
-------
Appendix II
Documentation Matrix
-------
X XX XX XX X X X X X X X
'x'x'x'x'x'x'x'x'xVx'xVx
x^Vx'x'x'x'VyVVV'xVxl
x'x'x x'x'x x
------- | |