**A. Overview**

The systems development lifecycle breaks the systems development process
down into phases during which discrete systems products are developed.
This approach to systems development leads to well documented systems
that are easier to test and maintain, and for which an organization can
have confidence that the system\'s functions will be fulfilled with a
minimum of unforeseen problems.

Integrating security into the systems development lifecycle is important
for the following reasons:

-   **It is more effective.** Meaningful security is easier to achieve
    when security issues are considered as a part of a routine
    development process, and security safeguards are integrated into the
    system during its design.

-   **It is less expensive.** To retrofit security is generally more
    expensive than to integrate it into an application.

-   **It is less obtrusive.** When security safeguards are integral to a
    system, they are usually easier to use and less visible to the user.

This chapter provides basic information on how our Agency integrates
security into the systems development lifecycle. It applies to the
development of new application systems, as well as to modifications to
existing applications, whether development occurs in-house or under
contract.

**B. Responsibilities**

Our Agency has determined that the best method to use for implementing
security controls is a team approach that crosses organizational lines.
As a result, most of the following organizations are involved in each
step of the systems security lifecycle to some extent. Additionally,
other components will be brought into the process if their expertise is
required. Thus, the following statement of responsibilities indicates
each participant\'s primary or lead areas, and is not intended to limit
participation throughout the systems development period.

**1. Information Systems Security Officer**

The Information Systems Security Officer (ISSO) is responsible for:

-   setting national security policy as it relates to the systems
    development lifecycle;

-   evaluating the functionality of each application area to determine
    what security controls must be implemented;

```{=html}
<!-- -->
```
-   working with other components to develop security functionality;

-   evaluating systems controls and determining whether or not those
    controls provide the proper level of security; and

```{=html}
<!-- -->
```
-   as the owner of the audit and integrity review systems, ensuring
    that those systems meet the audit and integrity review requirements
    of the agency.

**2. ENTER YOUR OFFICE RESPONSIBLE FOR DEVELOPING SYSTEMS REQUIREMENTS**

The **ENTER YOUR OFFICE RESPONSIBLE FOR DEVELOPING SYSTEMS
REQUIREMENTS**

is responsible for:

-   developing functional requirements that will provide the level of
    control required by the ISSO;

-   developing a Validation Plan that includes validating security
    controls;

-   working with other components, including the ISSO, to determine the
    best method for implementing security controls; and

-   validating new systems functionality to ensure that security
    controls are effective.

**3. ENTER YOUR OFFICE RESPONSIBLE FOR SYSTEMS DESIGN AND PROGRAMMING**

The **ENTER YOUR OFFICE RESPONSIBLE FOR SYSTEMS DESIGN AND PROGRAMMING**

is responsible for:

-   developing security controls in conjunction with the development of
    application functionality and

-   recommending alternative control methods if a needed control cannot
    be implemented.

**4. ENTER YOUR OFFICE RESPONSIBLE FOR SYSTEMS OPERATIONS**

The **ENTER YOUR OFFICE RESPONSIBLE FOR SYSTEMS OPERATIONS** is
responsible for:

-   implementing access control requirements;

-   maintaining the access control system; and

-   reporting security problems to the ISSO for necessary action.

**5. All Major Components**

All major components are responsible for:

-   determining the systems access requirements for their employees, and
    communicating those requirements to the ISSO;

-   reporting security problems to the ISSO for necessary action; and

-   determining and defining any additional user needs related to
    security and communicating those to the ISSO.

**6. Regional and Component Security Officers**

The Regional and Component Security Officers are responsible for:

-   reporting security problems to the ISSO and

-   recommending solutions for those security problems.

**7. Users**

Systems users are responsible for:

-   reporting security problems to their security officer for resolution
    and

-   assisting in defining security requirements for their operations,
    when appropriate.

**C. Security and the Systems Development Lifecycle**

There are three important aspects of computer security in relation to
the systems development lifecycle:

1.  Security must be considered from the first phase of the systems
    lifecycle.

2.  Development of computer security is an iterative process. The
    identification of vulnerabilities and the selection and
    implementation of safeguards continue as the system progresses
    through the phases of the lifecycle, including after the system has
    been released into production.

3.  All computer security considerations should be documented in the
    standard systems development lifecycle documents.

By making security an integral part of the systems development
lifecycle, we ensure that the security implications of new systems
functionality, or changing agency conditions or goals, are considered
and resolved in a systematic way. We also increase awareness of security
concerns by involving all components responsible for the development of
the application in the process of identifying vulnerabilities and
developing safeguards, from the systems security officers down to the
final users of the system.

**D. Systems Planning and Development**

1.  Evaluating the Security Implications of New or Changed Systems
    Functionality

```{=html}
<!-- -->
```
a.  Identifying Systems Changes that may Require Security Changes

New or changed systems functionality is requested by the user community
through the systems requirements staff. As the systems requirements
security staff becomes aware of these requests, they pass information on
the changes to the ISSO, and any other components with an interest in
the security of the system.

b.  Analyzing the Security Implications

Analysts from each involved security staff examine the information
available about the proposed systems functionality. All major components
participate in examining the functionality to determine which positions
require what access for a particular application. The primary concern of
the access control systems staff is to ensure that access control
requirements can be implemented properly. The audit and integrity review
design and development staff\'s interest is that audit and integrity
review requirements can be implemented.

The ISSO provides the security policy perspective, as well as
determining audit and integrity review requirements in consultation with
other involved components. The ISSO also examines the functionality to
determine whether or not additional internal controls are required.

The involvement of the systems requirements staff is broader, since they
must receive the user needs statement for security, audit, and/or
control and develop the formal functional requirements documents for
each security functional area.

2.  Security Teams Consult

Subsequent to each component having an opportunity to examine
information on the system, the various security teams discuss the
specific controls needed for the system. These discussions can be formal
meetings, such as the Security Kickoff meetings for access control and
the Audit Planning and Audit Steering Group meetings, or informal
discussions by phone. These discussions ensure that the controls
recommended for the system meet the needs of all of the involved
components.

3.  User Needs Statements Prepared

Based on the Team discussions, user needs statements are prepared. These
statements form the basis for the functional requirements documents.
Included in the user needs statements are:

a.  Access Controls

Matrices showing which positions should have access to which systems
functions are prepared by each component whose employees require access
to the system. These matrices are submitted to the ISSO for review prior
to being sent to the systems requirements staff for inclusion in their
systems documentation.

b.  Audit and Integrity Review

Audit and integrity review user needs statements are prepared by the
ISSO in consultation with the operational and systems requirements staff
to ensure that these needs statements reflect both operational and
systems constraints. The user needs statements are submitted to the
systems requirements staff under cover of a memorandum from the ISSO.

c.  Other Controls

The need for additional controls is stated by the ISSO in memoranda to
the systems requirements staff describing the additional controls needed
in sufficient detail that functional requirements can be prepared based
on the information provided.

4.  Functional Requirements and Validation Plan

The Functional Requirements documents and the Validation Plans for
security functionality are written by the systems requirements security
staff. The ISSO reviews the functional requirements prior to release to
the design and development staff for development.

Access control matrices are reviewed by the systems requirements staff
and then forwarded to the access control systems management staff for
the necessary implementation.

5.  Development and Validation of Security Features

Security functionality is developed in conjunction with all other system
functionality. If changes are made to the application system that effect
the types of security controls that are needed, then the security
controls are also changed.

After development is complete, the security functions, along with all
other system functionality, are validated in accordance with the
Validation Plan that was prepared during the requirements definition
process. A Validation Checklist is completed to document completion of
each validation task. If any requirement is not met, the software must
go back to the programming staff for corrective action. At the end of
the validation process the validated system is certified for release to
production. The Systems Release Certification document contains this
certification and the documentation supporting the release of the
software to production.

**E. Systems Implementation and Operation**

1.  As each new system is implemented, security officers in the
    operational components watch for potential security problems with
    the application, and report those problems to the ISSO for
    resolution.

2.  A compilation of lifecycle products for the system is maintained and
    available for review by auditors, and provides complete information
    on the development of the application, including the security
    functions.

3.  Periodically, each application system is subject to a
    recertification process, during which the application, including
    it\'s security functions, is examined to ensure that it still meets
    Agency objectives.