Skillshub feature-spec
Software Engineering Feature Specification and Planning Best Practices
install
source · Clone the upstream repo
git clone https://github.com/ComeOnOliver/skillshub
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ComeOnOliver/skillshub "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/pproenca/dot-skills/feature-spec" ~/.claude/skills/comeonoliver-skillshub-feature-spec && rm -rf "$T"
manifest:
skills/pproenca/dot-skills/feature-spec/SKILL.mdsource content
Software Engineering Feature Specification and Planning Best Practices
Comprehensive feature specification and planning guide for software engineers, product managers, and technical leads. Contains 42 rules across 8 categories, prioritized by impact to prevent scope creep and ensure project success.
When to Apply
Reference these guidelines when:
- Writing PRDs or feature specifications
- Defining requirements or user stories
- Managing scope and preventing scope creep
- Prioritizing features and backlog items
- Handling change requests
- Aligning stakeholders on project goals
Rule Categories by Priority
| Priority | Category | Impact | Prefix |
|---|---|---|---|
| 1 | Scope Definition | CRITICAL | |
| 2 | Requirements Clarity | CRITICAL | |
| 3 | Prioritization Frameworks | HIGH | |
| 4 | Acceptance Criteria | HIGH | |
| 5 | Stakeholder Alignment | MEDIUM-HIGH | |
| 6 | Technical Specification | MEDIUM | |
| 7 | Change Management | MEDIUM | |
| 8 | Documentation Standards | LOW | |
Quick Reference
1. Scope Definition (CRITICAL)
- Define explicit scope boundariesscope-define-boundaries
- Document all assumptions explicitlyscope-document-assumptions
- Break scope into measurable work itemsscope-work-breakdown
- Define MVP before full feature setscope-define-mvp
- Get stakeholder signoff on scopescope-stakeholder-signoff
2. Requirements Clarity (CRITICAL)
- Write specific, measurable requirementsreq-specific-measurable
- Structure requirements as user storiesreq-user-stories
- Avoid solution-specific languagereq-avoid-solution-language
- Separate functional and non-functionalreq-functional-nonfunctional
- Use consistent terminologyreq-consistent-terminology
- Maintain requirements traceabilityreq-traceability
3. Prioritization Frameworks (HIGH)
- Use MoSCoW prioritization methodprio-moscow-method
- Apply RICE scoring for objectivityprio-rice-scoring
- Map value vs effort explicitlyprio-value-vs-effort
- Identify and order dependenciesprio-dependencies-first
- Apply Kano model for feature classificationprio-kano-model
4. Acceptance Criteria (HIGH)
- Use Given-When-Then formataccept-given-when-then
- Write testable acceptance criteriaaccept-testable-criteria
- Include edge cases in acceptanceaccept-edge-cases
- Define clear definition of doneaccept-definition-of-done
- Avoid over-specificationaccept-avoid-over-specification
5. Stakeholder Alignment (MEDIUM-HIGH)
- Identify all stakeholders earlystake-identify-stakeholders
- Gather feedback early and oftenstake-early-feedback
- Resolve conflicts explicitlystake-conflict-resolution
- Establish communication cadencestake-communication-plan
- Align on success metricsstake-success-metrics
6. Technical Specification (MEDIUM)
- Document system context and dependenciestech-system-context
- Define API contracts before implementationtech-api-contracts
- Specify data models and schema changestech-data-model
- Plan error handling and recoverytech-error-handling
- Specify performance requirementstech-performance-requirements
- Document security considerationstech-security-considerations
7. Change Management (MEDIUM)
- Use formal change request processchange-formal-process
- Assess full impact before approvalchange-impact-assessment
- Version all specification documentschange-version-tracking
- Implement scope freeze periodschange-scope-freeze
- Maintain deferred items logchange-defer-log
8. Documentation Standards (LOW)
- Maintain single source of truthdoc-single-source
- Use consistent document templatesdoc-consistent-templates
- Document key decisions with contextdoc-decision-records
- Keep documentation accessibledoc-accessible-format
- Define project terminologydoc-glossary-terms