Development Approval Requirements
We have several requirements we must follow for any development. The core requirements differ based on:
Amount of development time
Severity or importance
Departments involved
These rules apply to all software development work. No exceptions are allowed.
Work Categories
All work falls into one of two categories:
- Bug Fixes
Fixing errors, broken behavior, or inaccurate information.
- Feature Development
Changes to how a system works, or adding new functionality.
Knowing the category ensures we follow the right approval path before any work begins.
Bug Fixes
A bug is any error-producing, dysfunctional, or unexpected behavior. We handle bugs by urgency and impact.
Critical or Blocking Bugs
Critical or blocking bugs create inaccurate data people rely on or stop someone from doing their daily work.
Rules:
Fix immediately with no approval required.
Prioritize above all other work except other critical or blocking bugs.
Non-Blocking Bugs
Non-blocking bugs are known issues that do not stop someone from working.
Rules:
Schedule them for a future development or debt cycle based on urgency.
Approval, priority, and schedule are decided by the blue-level software manager responsible for that system.
Some fixes are worth implementing immediately despite not being critical or blocking. The blue-level software manager is responsible for making this decision.
Feature Development
Feature development changes system behavior. Approval depends on development time, complexity, and department impact.
Feature development is classified into two categories:
- Level 1
Work that is easy to reverse
Examples: change the sort order for a view; add an extra dimension to a drawing
- Level 2
Work that is difficult or impossible to reverse
Examples: change the behavior of an action button; change the thickness of a baseplate
Level 1 (under 20 minutes, affects only one department)
This work is quick, reversible, and affects only one department.
Rules:
Can proceed with no approval.
The blue-level manager who oversees the system sets the schedule and priority.
All Other Feature Development
Any effort that exceeds the Level 1 limits or affects multiple departments requires layered approval.
Rules:
All changes of this nature should be requested by a green or red level manager
We must obtain approval from all applicable leaders before work begins:
The green-level software manager
AND
For changes that affect only one department, that department's green-level leader.
For changes that affect multiple departments, but do not change any workflows or SOPs, a green-level leader from each affected department.
For changes that affect multiple departments and include a workflow or SOP change, a red-level leader from each affected department.
The green-level software manager sets the schedule and priority after approvals are in place.
Other Work Types
Any other types of software team work, including proof of concept work, is to be approved and prioritized by the green-level software manager.