SEC. 874. SOFTWARE DEVELOPMENT PILOT
PROGRAM USING AGILE BEST PRACTICES.
(a) In General.—Not later than 30 days
after the date of the enactment of this Act, the Secretary of
Defense shall identify no fewer than four and up to eight
software development activities within the Department of Defense
or military departments to be developed in a pilot program using
agile acquisition methods.
(b) Streamlined Processes.—Software development activities
identified under subsection (a) shall be selected for the pilot
program and developed without incorporation of the following
contract or transaction requirements:
(1) Earned value management (EVM) or
EVM-like reporting.
(2) Development of integrated master schedule.
(3) Development of integrated master plan.
(4) Development of technical requirement document.
(5) Development of systems requirement documents.
(6) Use of information technology infrastructure library
agreements.
(7) Use of software development life cycle (methodology).
(c) Roles And Responsibilities.—
(1) IN GENERAL.—Selected activities shall include the
following roles and responsibilities:
(A) A program manager that is
authorized to make all programmatic decisions within the
overarching activity objectives, including resources,
funding, personnel, and contract or transaction termination
recommendations.
(B) A product owner that reports directly to the program
manager and is responsible for the overall design of the
product, prioritization of roadmap elements and
interpretation of their acceptance criteria, and
prioritization of the list of all features desired in the
product.
(C) An engineering lead that reports directly to the program
manager and is responsible for the implementation and
operation of the software.
(D) A design lead that reports directly to the program
manager and is responsible for identifying, communicating,
and visualizing user needs through a human-centered design
process.
(2) QUALIFICATIONS.—The Secretary
shall establish qualifications for personnel filling the
positions described in paragraph (1) prior to their selection.
The qualifications may not include a positive education
requirement and must be based on technical expertise or
experience in delivery of software products, including agile
concepts.
(3) COORDINATION PLAN FOR TESTING AND CERTIFICATION
ORGANIZATIONS.—The program manager shall ensure the
availability of resources for test and certification
organizations support of iterative development processes.
(d) Plan.—The Secretary of Defense shall
develop a plan for each selected activity under the pilot
program. The plan shall include the following elements:
(1) Definition of a product vision,
identifying a succinct, clearly defined need the software will
address.
(2) Definition of a product road map, outlining a
noncontractual plan that identifies short-term and long-term
product goals and specific technology solutions to help meet
those goals and adjusts to mission and user needs at the
product owner’s discretion.
(3) The use of a broad agency announcement, other transaction
authority, or other rapid merit-based solicitation procedure.
(4) Identification of, and continuous engagement with, end
users.
(5) Frequent and iterative end user validation of features and
usability consistent with the principles outlined in the
Digital Services Playbook of the U.S. Digital Service.
(6) Use of commercial best practices for advanced computing
systems, including, where applicable—
(A) Automated testing, integration,
and deployment;
(B) compliance with applicable commercial accessibility
standards;
(C) capability to support modern versions of multiple,
common web browsers;
(D) capability to be viewable across commonly used end user
devices, including mobile devices; and
(E) built-in application monitoring.
(e) Program Schedule.—The Secretary
shall ensure that each selected activity includes—
(1) award processes that take no
longer than three months after a requirement is identified;
(2) planned frequent and iterative end user validation of
implemented features and their usability;
(3) delivery of a functional prototype or minimally viable
product in three months or less from award; and
(4) follow-on delivery of iterative development cycles no
longer than four weeks apart, including security testing and
configuration management as applicable.
(f) Oversight Metrics.—The Secretary
shall ensure that the selected activities—
(1) use a modern tracking tool to
execute requirements backlog tracking; and
(2) use agile development metrics that, at a minimum, track—
(A) pace of work accomplishment;
(B) completeness of scope of testing activities (such as
code coverage, fault tolerance, and boundary testing);
(C) product quality attributes (such as major and minor
defects and measures of key performance attributes and
quality attributes);
(D) delivery progress relative to the current product
roadmap; and
(E) goals for each iteration.
(g) Restrictions.—
(1) USE OF FUNDS.—No funds made
available for the selected activities may be expended on
estimation or evaluation using source lines of code
methodologies.
(2) CONTRACT TYPES.—The Secretary of Defense may not use
lowest price technically acceptable contracting methods or
cost plus contracts to carry out selected activities under
this section, and shall encourage the use of existing
streamlined and flexible contracting arrangements.
(h) Reports.—
(1) SOFTWARE DEVELOPMENT ACTIVITY
COMMENCEMENT.—
(A) IN GENERAL.—Not later than 30
days before the commencement of a software development
activity under the pilot program under subsection (a), the
Secretary shall submit to the congressional defense
committees a report on the activity (in this subsection
referred to as a “pilot activity”).
(B) ELEMENTS.—The report on a pilot activity under this
paragraph shall set forth a description of the pilot
activity, including the following information:
(i) The purpose of the pilot
activity.
(ii) The duration of the pilot activity.
(iii) The efficiencies and benefits anticipated to accrue
to the Government under the pilot program.
(2) SOFTWARE DEVELOPMENT ACTIVITY
COMPLETION.—
(A) IN GENERAL.—Not later than 60
days after the completion of a pilot activity, the Secretary
shall submit to the congressional defense committees a
report on the pilot activity.
(B) ELEMENTS.—The report on a pilot activity under this
paragraph shall include the following elements:
(i) A description of results of
the pilot activity.
(ii) Such recommendations for legislative or
administrative action as the Secretary considers
appropriate in light of the pilot activity.
(i) Definitions.—In this section:
(1) AGILE ACQUISITION.—The term “agile
acquisition” means acquisition using agile or iterative
development.
(2) AGILE OR ITERATIVE DEVELOPMENT.—The term “agile or
iterative development”, with respect to software—
(A) means acquisition pursuant to a
method for delivering multiple, rapid, incremental
capabilities to the user for operational use, evaluation,
and feedback not exclusively linked to any single,
proprietary method or process; and
(B) involves—
(i) the incremental development
and fielding of capabilities, commonly called “spirals”,
“spins”, or “sprints”, which can be measured in a few
weeks or months; and
(ii) continuous participation and collaboration by users,
testers, and requirements authorities.
|
Software development pilot program using agile best practices
(sec. 874)
The Senate amendment contained a provision (sec. 885) that
would direct the Secretary of Defense to identify between four
and eight software development activities within the Department
of Defense or military departments and pilot the use of modern
agile methods—to include open source approaches--as well as
oversight metrics appropriate for agile development.
The House recedes with amendments that would adjust the
Department’s responsibilities related to data rights and modify
the definition of agile development.
The conferees note that the Department of Defense’s warfighting, business, and enterprise capabilities are
increasingly reliant on or driven by software and information
technology.
The conferees note with concern that the Department
is behind other federal agencies and industry in implementing
best practices for acquisition of software and information
technologies, to include agile and incremental development
methods.
The conferees note that existing law and
acquisition regulation provide significant flexibility to the
Department and that the Department has explicitly provided for
tailoring in its acquisition directives and instructions.
The conferees note with concern that the
organizational culture and tradition of acquiring capabilities
using a hardware-dominant approach impedes effective tailoring
of acquisition approaches to incorporate agile and incremental
development methods.
Therefore, the conferees expect that in conducting the
program selection and tailoring under this section, the
Secretary:
(1) use the tools, resources, and expertise of
digital and innovation organizations resident in the Department,
such as the Defense Innovation Board, the Defense Innovation
Unit Experimental, the Defense Science Board, the Defense
Digital Services, federally funded research and development
centers, research laboratories, and other technical, management,
and acquisition experts;
(2) use the digital development and acquisition
expertise of the General Services Administration’s Technology
Transition Service, Office of 18F; and
leverage the science, technology, and innovation activities
established pursuant to section 217 of the National Defense
Authorization Act for Fiscal Year 2016 (Public Law 114–92; 10 U.S.C. 2445a note).
|