Guiding Principles for Application Development
All application development activities should follow EPA's System Lifecycle Management (SLCM) Procedures. EPA follows a set of guiding principles for digital delivery and application development to ensure EPA meets its mission. This includes considering solutions in the following order of priority:
- Use existing systems first and contribute to shared resources.
- Buy off-the-shelf (or open-source) and change business processes to align.
- Build on a development platform.
- Build custom applications.
When starting to consider development, System Managers and System Owners should analyze all requirements to determine which are necessary for their system or solution, which can be combined and consolidated with another requirement, and the level of detail needed for the requirements that are selected as part of the plan.
EPA uses several factors to determine how to tailor an application’s development. These include the following:
- Size and complexity of the investment
- Build-versus-buy-approach
- Agency risk and criticality to EPA's mission
- Development methodology (Agile or Waterfall)
Additional considerations that may affect development of applications include:
- The system or solution must comply with federal requirements and EPA policies, procedures. Refer to EPA's IT/IM Information Directives site.
- The system must be adequately tested. This includes verifying the system meets functional requirements and security, usability, and Section 508/accessibility requirements.
- Users must be adequately trained.
- Operations and Maintenance documentation must be completed.
The federal project lead will advise development teams regarding tailoring decisions and applicable EPA IT/IM Directives.
Development Methodologies
There are two methods of development for EPA applications:
- Agile: An adaptable, iterative way to manage development projects. The use of the word Agile in this context derives from the Agile Manifesto.
- Waterfall: A predictable, linear approach to software development.
While EPA does not mandate a specific development methodology, it strongly encourages the use of agile practices, and alignment to the TechFAR and Digital Services Playbook.