gen-specs-as-issues

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Product Manager Assistant: Feature Identification and Specification

产品经理助手:功能识别与规格制定

This workflow guides you through a systematic approach to identify missing features, prioritize them, and create detailed specifications for implementation.
此工作流将引导你通过系统化的方法识别缺失功能、对其进行优先级排序,并制定详细的实现规格说明。

1. Project Understanding Phase

1. 项目理解阶段

  • Review the project structure to understand its organization
  • Read the README.md and other documentation files to understand the project's core functionality
  • Identify the existing implementation status by examining:
    • Main entry points (CLI, API, UI, etc.)
    • Core modules and their functionality
    • Tests to understand expected behavior
    • Any placeholder implementations
Guiding Questions:
  • What is the primary purpose of this project?
  • What user problems does it solve?
  • What patterns exist in the current implementation?
  • Which features are mentioned in documentation but not fully implemented?
  • 审阅项目结构以了解其组织架构
  • 阅读README.md及其他文档文件,理解项目的核心功能
  • 通过以下方式识别现有实现状态:
    • 主要入口点(CLI、API、UI等)
    • 核心模块及其功能
    • 测试用例以了解预期行为
    • 任何占位符实现
引导问题:
  • 该项目的主要目标是什么?
  • 它解决了用户的哪些问题?
  • 当前实现中存在哪些模式?
  • 文档中提到但未完全实现的功能有哪些?

2. Gap Analysis Phase

2. 差距分析阶段

  • Compare the documented capabilities ONLY against the actual implementation
  • Identify "placeholder" code that lacks real functionality
  • Look for features mentioned in documentation but missing robust implementation
  • Consider the user journey and identify broken or missing steps
  • Focus on core functionality first (not nice-to-have features)
Output Creation:
  • Create a list of potential missing features (5-7 items)
  • For each feature, note:
    • Current implementation status
    • References in documentation
    • Impact on user experience if missing
  • 仅将文档中记录的功能与实际实现进行对比
  • 识别缺乏实际功能的“占位符”代码
  • 查找文档中提到但缺少完善实现的功能
  • 考虑用户旅程,识别中断或缺失的步骤
  • 优先关注核心功能(而非锦上添花的功能)
输出成果:
  • 创建潜在缺失功能列表(5-7项)
  • 针对每项功能,记录:
    • 当前实现状态
    • 文档中的参考依据
    • 缺失该功能对用户体验的影响

3. Prioritization Phase

3. 优先级排序阶段

  • Apply a score to each identified gap:
Scoring Matrix (1-5 scale):
  • User Impact: How many users benefit?
  • Strategic Alignment: Fits core mission?
  • Implementation Feasibility: Technical complexity?
  • Resource Requirements: Development effort needed?
  • Risk Level: Potential negative impacts?
Priority = (User Impact × Strategic Alignment) / (Implementation Effort × Risk Level)
Output Creation:
  • Present the top 3 highest-priority missing features based on the scoring
  • For each, provide:
    • Feature name
    • Current status
    • Impact if not implemented
    • Dependencies on other features
  • 为每个识别出的差距打分:
评分矩阵(1-5分制):
  • 用户影响:受益用户数量?
  • 战略契合度:是否符合核心目标?
  • 实现可行性:技术复杂度如何?
  • 资源需求:所需开发工作量?
  • 风险等级:潜在负面影响?
优先级 =(用户影响 × 战略契合度)/(实现工作量 × 风险等级)
输出成果:
  • 展示基于评分得出的前3个最高优先级缺失功能
  • 针对每项功能,提供:
    • 功能名称
    • 当前状态
    • 未实现该功能的影响
    • 对其他功能的依赖关系

4. Specification Development Phase

4. 规格说明制定阶段

  • For each prioritized feature, develop a detailed but practical specification:
    • Begin with the philosophical approach: simplicity over complexity
    • Focus on MVP functionality first
    • Consider the developer experience
    • Keep the specification implementation-friendly
For Each Feature Specification:
  1. Overview & Scope
    • What problem does it solve?
    • What's included and what's explicitly excluded?
  2. Technical Requirements
    • Core functionality needed
    • User-facing interfaces (API, UI, CLI, etc.)
    • Integration points with existing code
  3. Implementation Plan
    • Key modules/files to create or modify
    • Simple code examples showing the approach
    • Clear data structures and interfaces
  4. Acceptance Criteria
    • How will we know when it's done?
    • What specific functionality must work?
    • What tests should pass?
  • 为每个优先级功能制定详细且实用的规格说明:
    • 遵循“简洁优先于复杂”的原则
    • 首先聚焦MVP功能
    • 考虑开发者体验
    • 确保规格说明便于实现
每项功能规格说明包含:
  1. 概述与范围
    • 它解决了什么问题?
    • 包含哪些内容,明确排除哪些内容?
  2. 技术要求
    • 所需核心功能
    • 用户面向的接口(API、UI、CLI等)
    • 与现有代码的集成点
  3. 实现计划
    • 需要创建或修改的关键模块/文件
    • 展示实现思路的简单代码示例
    • 清晰的数据结构与接口
  4. 验收标准
    • 如何判断功能已完成?
    • 哪些具体功能必须正常工作?
    • 需要通过哪些测试?

5. GitHub Issue Creation Phase

5. GitHub Issue创建阶段

  • For each specification, create a GitHub issue:
    • Clear, descriptive title
    • Comprehensive specification in the body
    • Appropriate labels (enhancement, high-priority, etc.)
    • Explicitly mention MVP philosophy where relevant
Issue Template Structure:
  • 为每个规格说明创建GitHub Issue:
    • 清晰、具有描述性的标题
    • 正文中包含完整的规格说明
    • 添加合适的标签(如enhancement、high-priority等)
    • 相关处明确提及MVP理念
Issue模板结构:

[Feature Name]

[功能名称]

Overview

概述

[Brief description of the feature and its purpose]
[功能的简要描述及其目的]

Scope

范围

[What's included and what's explicitly excluded]
[包含的内容及明确排除的内容]

Technical Requirements

技术要求

[Specific technical needs and constraints]
[具体的技术需求与约束]

Implementation Plan

实现计划

[Step-by-step approach with simple code examples]
[带简单代码示例的分步实现思路]

Acceptance Criteria

验收标准

[Clear list of requirements to consider the feature complete]
[判断功能完成的明确要求列表]

Priority

优先级

[Justification for prioritization]
[优先级的理由说明]

Dependencies

依赖关系

  • Blocks: [List of issues blocked by this one]
  • Blocked by: [List of issues this one depends on]
  • 阻塞: [被此Issue阻塞的Issue列表]
  • 被阻塞: [此Issue依赖的Issue列表]

Implementation Size

实现规模

  • Estimated effort: [Small/Medium/Large]
  • Sub-issues: [Links to sub-issues if this is a parent issue]
  • 预估工作量: [小/中/大]
  • 子Issue: [如果是父Issue,此处为子Issue链接]

5.5 Work Distribution Optimization

5.5 工作分配优化

  • Independence Analysis
    • Review each specification to identify truly independent components
    • Refactor specifications to maximize independent work streams
    • Create clear boundaries between interdependent components
  • Dependency Mapping
    • For features with unavoidable dependencies, establish clear issue hierarchies
    • Create parent issues for the overall feature with sub-issues for components
    • Explicitly document "blocked by" and "blocks" relationships
  • Workload Balancing
    • Break down large specifications into smaller, manageable sub-issues
    • Ensure each sub-issue represents 1-3 days of development work
    • Include sub-issue specific acceptance criteria
Implementation Guidelines:
  • Use GitHub issue linking syntax to create explicit relationships
  • Add labels to indicate dependency status (e.g., "blocked", "prerequisite")
  • Include estimated complexity/effort for each issue to aid sprint planning
  • 独立性分析
    • 审阅每个规格说明,识别真正独立的组件
    • 重构规格说明以最大化独立工作流
    • 在相互依赖的组件之间建立清晰的界限
  • 依赖关系映射
    • 对于存在不可避免依赖的功能,建立清晰的Issue层级
    • 为整体功能创建父Issue,为组件创建子Issue
    • 明确记录“被阻塞”和“阻塞”关系
  • 工作量平衡
    • 将大型规格说明拆分为更小、易于管理的子Issue
    • 确保每个子Issue对应1-3天的开发工作量
    • 包含子Issue专属的验收标准
实施指南:
  • 使用GitHub Issue链接语法创建明确的关系
  • 添加标签以指示依赖状态(如“blocked”、“prerequisite”)
  • 为每个Issue添加预估复杂度/工作量,以辅助迭代规划

6. Final Review Phase

6. 最终评审阶段

  • Summarize all created specifications
  • Highlight implementation dependencies between features
  • Suggest a logical implementation order
  • Note any potential challenges or considerations
Remember throughout this process:
  • Favor simplicity over complexity
  • Start with minimal viable implementations that work
  • Focus on developer experience
  • Build a foundation that can be extended later
  • Consider the open-source community and contribution model
This workflow embodiment of our approach should help maintain consistency in how features are specified and prioritized, ensuring that software projects evolve in a thoughtful, user-centered way.
  • 总结所有已制定的规格说明
  • 强调功能之间的实现依赖关系
  • 建议合理的实现顺序
  • 记录任何潜在挑战或注意事项
在整个过程中请记住:
  • 优先选择简洁而非复杂
  • 从可用的最小可行实现开始
  • 关注开发者体验
  • 构建可在未来扩展的基础
  • 考虑开源社区与贡献模式
此工作流是我们方法的具体体现,有助于保持功能规格说明与优先级排序的一致性,确保软件项目以深思熟虑、以用户为中心的方式演进。