Skip to main content
US Army Corps of EngineersInstitute for Water Resources, Risk Management Center

Introduction

This guide defines how RMC teams plan, build, review, and release software for the USACE Risk Management Center. It provides the standard operating procedures (SOPs) that keep work consistent, traceable, and reliable across teams and projects.

This guide serves as a day-to-day reference for branching, reviews, releases, and AI-assisted development. New readers should follow the Quick Start Path and then read through the Core Workflow section in order.


Who This Guide Is For

This SOP is designed for:

  • Software developers working in USACE-RMC repositories
  • Technical leads and reviewers responsible for approvals
  • Project contributors creating or updating code and documentation
  • Contractors or partners collaborating in RMC projects

Learning Objectives

By following this SOP, readers learn how to:

  • Set up and follow the standard branching strategy
  • Write consistent commit messages and PR descriptions
  • Use GitHub Issues to track work and decisions
  • Complete code reviews and merge safely to main
  • Resolve conflicts and manage releases
  • Use AI assistants responsibly and consistently

What This Guide Does NOT Cover

This guide focuses on development process. It does not cover:

  • Application-specific design or architecture choices
  • Team staffing or project management policy
  • Security accreditation or external compliance processes
  • Build and deployment automation details

Prerequisites

Readers should have:

  • Basic Git and GitHub experience
  • Access to the USACE-RMC GitHub organization
  • A local development environment for the relevant project

Optional but helpful:

  • Familiarity with Conventional Commits
  • Experience with pull request workflows

How This Guide Is Organized

Core Workflow

  1. Overview
  2. Repository Structure & Permissions
  3. Branching Strategy
  4. Commit Message Standards
  5. Pull Request Workflow
  6. GitHub Issues
  7. Code Review Process
  8. Merging to Main
  9. Project-Specific Workflows
  10. Conflict Resolution
  11. Release Management

AI Assistant Guidance

Standards & References


Quick Start Path

New readers should follow this path:

  1. Start with Overview
  2. Read Branching Strategy and Commit Message Standards
  3. Learn the Pull Request Workflow and Code Review Process
  4. Keep Quick Reference and Common Scenarios handy

Key Concepts to Understand

Branches and Pull Requests

The workflow uses feature branches for all work and requires review before merging to main. This keeps main stable and provides an auditable history of changes.

Code Review

All changes receive review by at least one other person. Reviews focus on correctness, clarity, and alignment with team standards.

Releases

Releases are planned and documented. Follow the release management section for versioning and tagging practices.

AI Assistance

AI tools can speed up development, but they do not replace engineering judgment. Follow the AI guidance to ensure consistent, safe use.


Common Workflows

Start a New Feature

  • Create a feature branch
  • Open or link a GitHub Issue
  • Commit work with Conventional Commit messages
  • Open a pull request and request review

Resolve a Conflict

  • Sync with main
  • Merge main into the feature branch
  • Resolve conflicts, test, and update the PR

Prepare a Release

  • Confirm scope and approvals
  • Follow tagging and release notes guidance
  • Verify changes are merged to main

Required Tools

  • Git and GitHub for source control and code review
  • A project-specific IDE and tooling for local development
  • GitHub Issues for tracking work and decisions

Getting Help

When uncertain about a process, ask a team lead or repository owner. For quick answers, consult the Quick Reference and Common Scenarios sections first.