Managing Features in SAFe
Features are services that fulfill stakeholder needs. Each feature includes a benefit hypothesis and acceptance criteria, and is sized to fit in a single Program Increment (PI). This guide shows you how to create and manage Features in Safedevops.app.
Feature Management Overview
Before diving into the details, let's see what Feature management looks like in Safedevops.app. The following screenshots show the typical workflow from viewing an existing Feature to creating a new one.
Feature Details View
This is what a Feature looks like when you open it for editing or viewing. You can see all the essential information including title, description, status, acceptance criteria, and the comprehensive readiness assessment interface.
Creating a New Feature
When you create a new work item, you'll see the work item type selection wizard. Select "Feature" to create a new Feature work item. This wizard ensures you choose the correct work item type for your needs.
Parent Epic Selection
Features must be associated with a parent Epic in the SAFe hierarchy. The system requires you to select an Epic that this Feature will contribute to, ensuring proper portfolio alignment and traceability.
Now that you've seen the overview, let's dive into the details of Feature management, starting with understanding what Features are and how they fit into the SAFe framework.
What is a Feature?
In the Scaled Agile Framework (SAFe), a Feature is a service that fulfills a stakeholder need. Features are:
- Customer-centric: Focused on delivering value to end users
- PI-sized: Can be completed within a single Program Increment (typically 8-12 weeks)
- Testable: Include clear acceptance criteria and benefit hypothesis
- Independent: Can be developed and delivered independently of other features
Creating a New Feature
1. Navigate to Work Items
From the main navigation sidebar, click on "Work Items" to access the work item management area.
2. Create Feature
Click the "Create Work Item" button and select "Feature" from the work item type dropdown, or use the "Quick Create Feature" button if available.
3. Select Parent Epic
Features must be associated with an Epic. Use the parent search field to find and select the appropriate Epic that this Feature will contribute to.
4. Basic Information
Complete the essential details for your Feature:
- Title: A clear, concise name for the feature (e.g., "User Authentication System")
- Description: Detailed explanation of what the feature does and why it's needed
- Priority: Set the business priority (High, Medium, Low)
- Status: Initial status (typically "Proposed" or "New")
5. Assignment and Ownership
Assign the Feature to the appropriate team and owner:
- Owner: The person responsible for the feature (often a Product Owner or Product Manager)
- Team: Features are typically managed at the program level and don't require team assignment
Feature Readiness Assessment
Features in Safedevops.app include a comprehensive readiness assessment system to ensure quality and readiness for release. The platform provides visual tracking and automated assessment to help teams maintain high standards.
Accessing Feature Readiness Assessment
When editing a Feature, scroll down to the "Feature Readiness Assessment" section. This area provides comprehensive tracking of your feature's readiness across multiple dimensions.
Test Coverage Tracking
Monitor the testing progress of your feature across multiple levels with visual progress indicators:
Test Coverage Dashboard
The test coverage section provides detailed tracking across different testing levels. Set target percentages and track actual coverage to ensure comprehensive testing before release.
- Unit Test Coverage: Percentage of code covered by unit tests (target: typically 80-90%)
- Integration Test Coverage: Coverage of integration points and interfaces
- System Test Coverage: End-to-end system testing coverage
- Automated Tests: Status of automated test execution with pass/fail indicators
- Regression Testing: Completion status of regression test suite
- Performance Testing: Performance and load testing completion with metrics
Comprehensive Quality Assessment
The platform provides an interactive assessment interface where teams input, update, and track multiple quality dimensions throughout the feature development lifecycle:
Feature Readiness Assessment Form
Input and track quality metrics using the comprehensive assessment form. This interactive interface allows teams to record, update, and monitor all aspects of feature readiness in real-time as work progresses.
Issue Recording and Management
Use the assessment form to record and categorize known issues by severity level:
- Blockers: Input count of critical issues preventing feature completion (must be 0 for release)
- Critical Issues: Record high-severity problems that require resolution
- Major Issues: Document significant problems that should be addressed
- Minor Issues: Log low-impact issues that can be deferred to future releases
Tip: Update these counts regularly as issues are discovered, resolved, or change in severity.
Dependency Status Recording
Use the form to document and update dependency resolution status:
- External Dependencies: Mark completion status of third-party services, APIs, or systems
- Internal Dependencies: Record progress on other features or components within your system
- Risk Assessment: Document identified risks and mitigation strategies
- Dependency Resolution: Update completion status as prerequisite work is finished
Tip: Regular updates ensure accurate readiness assessment and early identification of potential delays.
Documentation Completion Checklist
Mark completion status for all required documentation using the built-in checklist:
- User Documentation: Check off when end-user guides and help materials are complete
- Technical Documentation: Mark completion of API docs, architecture diagrams, deployment guides
- Release Notes: Confirm summary of changes and new functionality is prepared
- Knowledge Transfer: Verify team documentation and training materials are ready
Tip: Use the checkbox interface to maintain an accurate completion status that feeds into the automated readiness assessment.
Automated Readiness Determination
The system automatically determines feature readiness based on industry standards and best practices:
Ready for Release Status
When your feature meets all quality criteria, the system automatically updates the status to "Ready for Release" and notifies relevant stakeholders. The assessment considers test coverage, issue counts, dependency resolution, and documentation completion.
Automated Assessment Criteria:
- Test Coverage: Minimum thresholds met across all testing levels
- Zero Blockers: No critical blocking issues remain
- Dependencies Resolved: All external and internal dependencies satisfied
- Documentation Complete: All required documentation checked off
- Acceptance Criteria: All acceptance criteria verified and approved
- Quality Gates: Performance and security requirements met
Stakeholder Notifications:
When a feature achieves "Ready for Release" status, the system automatically sends notifications to:
- Product Owners and Product Managers
- Release Train Engineers (RTEs)
- Scrum Masters and Team Leads
- System Architects and Technical Leads
- Quality Assurance teams
Acceptance Criteria Management
Acceptance criteria are the specific conditions that must be met for a Feature to be considered complete and ready for release. They serve as the contract between stakeholders and development teams, ensuring clear expectations and measurable outcomes.
Creating Acceptance Criteria
Adding Acceptance Criteria
In the Feature creation or edit form, navigate to the "Acceptance Criteria" section. Click "Add Acceptance Criterion" to create new criteria. Each criterion should be specific, measurable, and testable.
Acceptance Criteria Best Practices
Structure and Format:
- Given-When-Then Format: Use behavioral-driven development (BDD) format when appropriate
Example: "Given a user is logged in, When they click the logout button, Then they should be redirected to the login page" - Clear Success Criteria: Define exactly what constitutes success
Example: "The system must respond to user actions within 2 seconds" - Negative Test Cases: Include what should NOT happen
Example: "Unauthorized users cannot access admin features"
Quality Guidelines:
- Specific and Unambiguous: Avoid vague terms like "user-friendly" or "fast"
- Testable and Verifiable: Each criterion must be objectively verifiable
- Independent: Criteria should not depend on the order of execution
- Valuable: Each criterion should add meaningful value to the user
- Estimable: The team should be able to estimate the effort required
- Small: Keep criteria focused and avoid overly complex conditions
Verification and Approval Process
The platform provides a structured verification process for acceptance criteria:
Verification Workflow:
- Draft Status: Initially created criteria are in draft state
- Review Process: Product Owners and stakeholders review criteria
- Testing Phase: QA teams verify criteria through testing
- Approval: Final approval by authorized stakeholders
- Verification: Mark criteria as verified when implementation meets requirements
Automated Notifications:
The system sends notifications to relevant stakeholders when:
- New acceptance criteria are added to a Feature
- Criteria are modified or updated
- Criteria are marked as verified or unverified
- All criteria for a Feature are verified (Feature becomes ready for release)
Integration with Feature Readiness
Acceptance criteria verification directly impacts the automated feature readiness assessment:
- Readiness Gate: All acceptance criteria must be verified before a feature can be marked "Ready for Release"
- Progress Tracking: The percentage of verified criteria contributes to overall feature completion metrics
- Quality Assurance: Unverified criteria trigger alerts and prevent premature release
- Stakeholder Visibility: Criteria status is visible to all stakeholders for transparency
Types of Acceptance Criteria
Consider different categories of acceptance criteria for comprehensive coverage:
Functional Criteria:
- Core business logic and workflows
- User interface behavior and interactions
- Data validation and processing rules
- Integration with external systems
Non-Functional Criteria:
- Performance requirements (response times, throughput)
- Security requirements (authentication, authorization, encryption)
- Usability standards (accessibility, user experience)
- Reliability and availability targets
Technical Criteria:
- Code quality standards and test coverage
- Documentation completeness
- Deployment and configuration requirements
- Monitoring and logging capabilities
Collaboration and Review
Stakeholder Involvement:
- Product Owners: Define business value and user experience criteria
- Development Teams: Provide technical feasibility input and implementation details
- QA Teams: Ensure testability and create verification procedures
- UX Designers: Contribute usability and accessibility criteria
- Security Teams: Define security and compliance requirements
Review Process:
- Schedule regular acceptance criteria review sessions
- Use the platform's commenting system for collaborative feedback
- Version control changes to track evolution of requirements
- Maintain traceability between criteria and test cases
Integration: Acceptance Criteria & Feature Readiness
Safedevops.app provides seamless integration between acceptance criteria verification and feature readiness assessment, creating a comprehensive quality gate system.
Automated Quality Gates
The platform automatically monitors multiple quality dimensions:
Acceptance Criteria Gates:
- 100% Verification Required: All acceptance criteria must be verified before release
- Stakeholder Approval: Criteria verification requires appropriate role permissions
- Traceability: Direct link between criteria and test execution results
- Change Management: Modified criteria reset verification status automatically
Technical Quality Gates:
- Test Coverage Thresholds: Minimum coverage requirements across all test levels
- Issue Resolution: Zero blocking issues and controlled critical issue count
- Dependency Verification: All external and internal dependencies resolved
- Documentation Completion: All required documentation artifacts completed
Release Readiness Workflow
The integrated workflow ensures comprehensive quality assessment:
1. Feature Development Phase
- Acceptance criteria defined and reviewed
- Development work progresses with test coverage tracking
- Continuous integration validates basic quality metrics
2. Testing and Verification Phase
- Test coverage reaches minimum thresholds
- Acceptance criteria verification begins
- Issues are identified, tracked, and resolved
- Dependencies are validated and confirmed
3. Readiness Assessment Phase
- All acceptance criteria verified by authorized stakeholders
- Technical quality gates satisfied
- Documentation review completed
- Final stakeholder approval obtained
4. Automatic Release Readiness
- System automatically marks feature as "Ready for Release"
- Stakeholders receive automated notifications
- Feature becomes available for deployment planning
- Audit trail captures all verification steps
Stakeholder Notifications and Alerts
The platform provides comprehensive notification system for all stakeholders:
Real-time Notifications:
- Acceptance Criteria Updates: When criteria are added, modified, or verified
- Readiness Status Changes: When features achieve or lose readiness status
- Quality Gate Failures: When quality thresholds are not met
- Dependency Alerts: When dependencies block feature progress
Notification Recipients:
- Product Owners: Business value and acceptance criteria updates
- Scrum Masters: Team progress and impediment notifications
- Release Train Engineers: Cross-team dependencies and release readiness
- Quality Assurance: Test coverage and verification status updates
- Development Teams: Technical quality gate status and requirements
Continuous Improvement
Use the integrated system to drive continuous improvement:
Metrics and Analytics:
- Cycle Time Tracking: Time from feature creation to readiness
- Quality Metrics: Defect escape rates and test coverage trends
- Acceptance Criteria Quality: Clarity and completeness measurements
- Stakeholder Engagement: Verification turnaround times and participation
Process Optimization:
- Identify bottlenecks in the verification process
- Optimize acceptance criteria templates and standards
- Improve test automation and coverage strategies
- Enhance stakeholder collaboration and communication
Feature Lifecycle Management
Status Progression
Features typically progress through these statuses:
- Proposed: Initial idea or requirement identified
- Analyzing: Requirements analysis and design in progress
- Ready: Ready for development, all prerequisites met
- In Progress: Development work is underway
- Testing: Feature is being tested and validated
- Done: Feature is complete and meets all acceptance criteria
- Released: Feature has been deployed to production
Integration Tags
Use integration tags to track the feature's integration status:
- ready-for-integration: Feature code is ready to be integrated
- integration: Feature is currently being integrated
- integrated: Feature has been successfully integrated
- system-demo-ready: Feature is ready for system demonstration
Managing Child User Stories
Features are decomposed into User Stories for development teams to implement:
Creating User Stories
From the Feature details page, you can create User Stories that contribute to the Feature. Each User Story should represent a small, deliverable piece of functionality.
User Story Guidelines:
- Keep stories small enough to complete in one iteration
- Ensure each story delivers value to the user
- Write stories from the user's perspective
- Include clear acceptance criteria for each story
Feature Metrics and Tracking
Progress Tracking
Monitor feature progress through various metrics:
- Completion Percentage: Based on completed child User Stories
- Test Coverage: Overall testing progress across all levels
- Readiness Score: Composite score based on readiness assessment
- Issue Count: Number and severity of open issues
Reporting
Generate reports for stakeholders:
- Feature Status Reports: Current status of all features in a PI
- Readiness Dashboard: Overview of feature readiness across the portfolio
- Dependency Reports: Track and manage feature dependencies
- Quality Metrics: Test coverage and issue resolution trends
Best Practices
Feature Definition
- Customer Focus: Always define features from the customer's perspective
- Value-Driven: Ensure each feature delivers measurable business value
- Testable: Include clear acceptance criteria and testable outcomes
- Sized Appropriately: Features should fit within a single PI
Collaboration
- Cross-Functional Input: Involve all relevant stakeholders in feature definition
- Regular Reviews: Conduct frequent reviews and updates
- Transparent Communication: Keep all stakeholders informed of progress and issues
- Continuous Feedback: Incorporate feedback throughout the development process
Quality Assurance
- Early Testing: Begin testing activities early in the development cycle
- Comprehensive Coverage: Ensure testing covers all aspects of the feature
- Risk Management: Identify and mitigate risks proactively
- Documentation: Maintain up-to-date documentation throughout development
What's Next?
With your Feature created and properly configured, you can now:
- Create User Stories: Break down the feature into implementable user stories.
→ Managing User Stories - Plan Program Increments: Include the feature in your PI planning activities.
→ Managing Program Increments - Track Dependencies: Identify and manage feature dependencies.
→ Managing Dependencies - Monitor Progress: Use the readiness assessment to track feature progress.
→ Feature Readiness Assessment