Token导航 LogoToken导航TokenDH.com
研究检索只读github未标认证来源可访问许可证需确认审计通过

problem-based-srs基于问题的 SRS

Agent Skill

problem-based-srs 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

490

周安装

20

GitHub Stars

20

下载量

157
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:problem-based-srs(基于问题的 SRS)
来源仓库:https://github.com/rafaelgorski/problem-based-srs
仓库路径:skills/problem-based-srs
安装命令:
npx skills add https://github.com/rafaelgorski/problem-based-srs --skill problem-based-srs
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/rafaelgorski/problem-based-srs --skill problem-based-srs

简介

problem-based-srs 用于查找、检索和筛选相关信息。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中根据关键词快速定位内容。
  • 可用于支持问题驱动的学习或研究流程。
  • 建议确认权限范围和维护状态,避免误触敏感操作。
  • 可结合原始 README 了解其检索逻辑和使用限制。

SKILL.md

Problem-Based SRS

Orchestrate requirements engineering using the Problem-Based SRS methodology (Gorski & Stadzisz). This skill coordinates a structured process (Step 0 through Step 5) that ensures every requirement traces back to a real business problem.

Methodology Overview

Diagram standard: Use Mermaid UML diagrams as the preferred format for all visual artifacts. Mermaid is mandatory for Software Glance (Step 2) and Software Vision (Step 4), and preferred for other steps where diagrams add value.
Stakeholder Input
       ↓
┌──────────────────┐
│ Step 0: BC       │ → Use skill: business-context
│ Business Context │
└────────┬─────────┘
         ↓
┌──────────────────┐
│ Step 1: CP       │ → Use skill: customer-problems
│ Customer Problems│
└────────┬─────────┘
         ↓
┌──────────────────┐
│ Step 2: SG       │ → Use skill: software-glance
│ Software Glance  │
└────────┬─────────┘
         ↓
┌──────────────────┐
│ Step 3: CN       │ → Use skill: customer-needs
│ Customer Needs   │
└────────┬─────────┘
         ↓
┌──────────────────┐
│ Step 4: SV       │ → Use skill: software-vision
│ Software Vision  │
└────────┬─────────┘
         ↓
┌──────────────────┐
│ Step 5: FR/NFR   │ → Use skill: functional-requirements
│ Requirements     │
└──────────────────┘

Traceability Chain: FR → CN → CP (every requirement traces back to a problem)

Domain Mapping (WHY → WHAT → HOW):

DomainArtifactQuestion Answered
WHYCustomer Problems (CP)Why is the solution needed? (Business justification)
WHATCustomer Needs (CN)What outcomes must the software provide?
HOWFunctional Requirements (FR)How will the system behave?

Available Skills

This orchestrator coordinates the following skills:

SkillCommandPurpose
business-context/business-contextStep 0: Establish structured business context and principles
customer-problems/customer-problemsStep 1: Identify and classify customer problems
software-glance/software-glanceStep 2: Create high-level solution view
customer-needs/customer-needsStep 3: Specify customer needs (outcomes)
software-vision/software-visionStep 4: Define software vision and architecture
functional-requirements/functional-requirementsStep 5: Generate functional requirements
zigzag-validator/zigzag-validatorValidate traceability across domains
complexity-analysis/complexity-analysisOptional: Axiomatic Design quality analysis

📁 Saving Progress (CRITICAL)

IMPORTANT: At each step, you MUST save the produced artifacts to files. Progress is NOT automatically saved between sessions.

⚠ File Creation Rule: ONE FILE AT A TIME

NEVER create multiple artifact files in parallel. Always create files one at a time, sequentially — wait for each file to be saved before creating the next one. Batch/parallel file creation causes JSON serialization errors in tool calls when the combined content is too large.

First Time Setup

When starting a new project, ask the user:

Before we begin, where would you like to save your SRS artifacts?

Options:
1. `docs/srs/` (recommended - keeps SRS separate from code docs)
2. `requirements/` (alternative - at project root)
3. Custom path: [specify your preferred location]

All artifacts will be saved in this folder with consistent naming.

Artifact File Structure

Create the following folder structure as you progress through each step:

[chosen-folder]/                      # e.g., docs/srs/
├── 00-business-context.md            # Step 0: Business context, principles, and constraints
├── 01-customer-problems.md           # Step 1: CPs (WHY)
├── 02-software-glance.md             # Step 2: High-level solution view
├── 03-customer-needs.md              # Step 3: CNs (WHAT)
├── 04-software-vision.md             # Step 4: Architecture and scope
├── functional-requirements/          # Step 5: Individual FR files
│   ├── _index.md                     # FR summary and traceability matrix
│   ├── FR-001.md                     # Individual FR file
│   ├── FR-002.md                     # Individual FR file
│   └── ...                           # One file per FR
├── non-functional-requirements/      # NFR files (quality attributes)
│   ├── _index.md                     # NFR summary
│   ├── NFR-001.md                    # Individual NFR file
│   └── ...                           # One file per NFR
└── traceability-matrix.md            # CP → CN → FR complete mapping

Why Individual FR/NFR Files?

Each Functional Requirement and Non-Functional Requirement is saved as a separate file so that:

  1. Engineers can work independently on different requirements
  2. Version control tracks changes to individual requirements
  3. Code reviews can focus on specific requirements
  4. Traceability is maintained at the file level
  5. Status tracking is easier (draft, approved, implemented, tested)

FR File Template (FR-XXX.md)

Each FR file follows this template:

# FR-XXX: [Brief Title]

## Requirement

**Statement:** The [System] shall [verb] [object] [constraint] [condition].

**Priority:** [Must Have | Should Have | Could Have | Won't Have]
**Status:** [Draft | Review | Approved | Implemented | Tested]

## Traceability

| Traces To | ID | Description |
|-----------|-----|-------------|
| Customer Need | CN-XXX | [Brief CN description] |
| Customer Problem | CP-XXX | [Brief CP description] |

## Acceptance Criteria

- [ ] Criterion 1 (testable)
- [ ] Criterion 2 (testable)
- [ ] Criterion 3 (testable)

## Notes

[Any additional context, assumptions, or dependencies]

<!-- ⚠️ NO CODE SNIPPETS: Do not include code examples, SQL, or implementation details here.
     Construction details belong in design/ folder (see design/implementation-notes/) -->

---
*Created: [Date]*
*Last Updated: [Date]*
*Author: [Name]*

NFR File Template (NFR-XXX.md)

# NFR-XXX: [Brief Title]

## Requirement

**Category:** [Performance | Security | Usability | Reliability | Scalability | Maintainability]
**Statement:** The [System] shall [quality attribute with measurable criteria].

**Priority:** [Must Have | Should Have | Could Have | Won't Have]
**Status:** [Draft | Review | Approved | Implemented | Tested]

## Traceability

| Traces To | ID | Description |
|-----------|-----|-------------|
| Customer Need | CN-XXX | [Brief CN description] |
| Applies To FRs | FR-XXX, FR-YYY | [Related functional requirements] |

## Acceptance Criteria

- [ ] Criterion 1 (measurable)
- [ ] Criterion 2 (measurable)

## Measurement Method

[How this NFR will be verified/tested]

<!-- ⚠️ NO CODE SNIPPETS: Do not include code examples or implementation details here.
     Technical specifications belong in design/ folder -->

---
*Created: [Date]*
*Last Updated: [Date]*

Save After Each Step

After completing each step, ALWAYS:

  1. Create or update the corresponding file(s)
  2. Confirm with user that files were saved
  3. Show the file paths for reference

Example handoff for Step 5:

✅ Step 5 Complete: Functional Requirements Specified

📁 Saved to: docs/srs/functional-requirements/
   ├── _index.md (summary with 8 FRs)
   ├── FR-001.md → CN-001 (User Registration)
   ├── FR-002.md → CN-001 (User Authentication)
   ├── FR-003.md → CN-002 (Data Validation)
   ├── FR-004.md → CN-002 (Error Handling)
   ├── FR-005.md → CN-003 (Report Generation)
   ├── FR-006.md → CN-003 (Export Functionality)
   ├── FR-007.md → CN-004 (Search Capability)
   └── FR-008.md → CN-004 (Filter Options)

📁 Updated: docs/srs/traceability-matrix.md

Engineers can now work on individual requirements independently.
Each FR file contains full context and acceptance criteria.

Business Context File (00-business-context.md)

Create this file at the start of every project using the business-context skill.

The business context captures: project identity, business principles (Mandatory/Guiding/Aspirational), stakeholders with influence levels, current situation (process, pain points, existing systems), domain boundaries, constraints with impact assessment, and measurable success criteria.

Use the business-context skill for the full template, discovery questions, and examples.

How to Use This Skill

Starting Fresh

When user provides business context or problem description:

  1. Ask where to save artifacts (if not already specified)
  2. Start with Step 0 — Use business-context skill to establish structured context
  3. Save 00-business-context.md with the structured business context
  4. Detect current step (see Detection Heuristics below)
  5. Invoke the appropriate skill
  6. Follow instructions from that skill
  7. Save output to the corresponding file(s)
  8. Guide user through the process

Continuing Work

If user has existing artifacts (CPs, CNs, etc.):

  1. Check for existing SRS folder (docs/srs/, requirements/, etc.)
  2. Read existing files to understand current state
  3. Identify what they have
  4. Jump to appropriate step
  5. Invoke that step's skill
  6. Continue from there, updating files as needed

Validation

At any point, use zigzag-validator skill to check consistency.

Detection Heuristics

Determine current step by checking what artifacts exist:

If user has...Current StepUse SkillSave To
Nothing / business idea only0business-context00-business-context.md
Business Context (BC)1customer-problems01-customer-problems.md
Customer Problems (CPs)2software-glance02-software-glance.md
CPs + Software Glance3customer-needs03-customer-needs.md
CPs + CNs + Software Glance4software-vision04-software-vision.md
CPs + CNs + Software Vision5functional-requirementsfunctional-requirements/*.md

The Steps (Quick Reference)

Step 0: Business Context (BC)

Purpose: Establish structured business context and project principles Input: Stakeholder conversations, project briefs, existing documentation Output: Business context document with identity, principles, stakeholders, boundaries, constraints, success criteria Save to: 00-business-context.md Skill: business-context

Step 1: Customer Problems (CP)

Purpose: Identify and document business problems Input: Business Context (Step 0) Output: List of CPs classified as Obligation/Expectation/Hope Syntax: [Subject] [must/expects/hopes] [Object] [Penalty] Save to: 01-customer-problems.md Skill: customer-problems

Step 2: Software Glance (SG)

Purpose: Create initial abstract solution view Input: Customer Problems Output: High-level system description with boundaries and components Save to: 02-software-glance.md Skill: software-glance

Step 3: Customer Needs (CN)

Purpose: Specify outcomes software must provide Input: CPs + Software Glance Output: CNs with outcome classes (Information/Control/Construction/Entertainment) Syntax: [Subject] needs [system] to [Verb] [Object] [Condition] Save to: 03-customer-needs.md Skill: customer-needs

Step 4: Software Vision (SV)

Purpose: Define high-level scope and positioning Input: CNs + Software Glance Output: Vision document with stakeholders, features, architecture Save to: 04-software-vision.md Skill: software-vision

Step 5: Functional Requirements (FR) & Non-Functional Requirements (NFR)

Purpose: Generate detailed requirements Input: CNs + Software Vision Output: Individual FR and NFR files with traceability Syntax FR: The [System] shall [Verb] [Object] [Constraint] [Condition] Save to: functional-requirements/FR-XXX.md and non-functional-requirements/NFR-XXX.md Skill: functional-requirements

Quality Gates

IMPORTANT: Zigzag validation using zigzag-validator skill is MANDATORY after Steps 3 and 5 to verify traceability and identify gaps.

After Step 0 (BC)

  • Project identity complete (name, domain, purpose)
  • Business principles defined and classified (Mandatory/Guiding/Aspirational)
  • Stakeholders identified with roles and influence
  • Current situation documented
  • Domain boundaries defined
  • Constraints documented
  • Success criteria measurable
  • File saved: 00-business-context.md

After Step 1 (CPs)

  • All CPs use structured notation
  • Classifications assigned (Obligation/Expectation/Hope)
  • No solutions embedded in problem statements
  • File saved: 01-customer-problems.md

After Step 2 (SG)

  • System boundaries defined
  • Main actors and interfaces identified
  • High-level components described
  • Mermaid UML diagram included (mandatory)
  • File saved: 02-software-glance.md

After Step 3 (CNs)

  • Every CP has at least one CN
  • All CNs use structured notation
  • Outcome classes assigned
  • File saved: 03-customer-needs.md
  • MANDATORY: Run zigzag validation (CP → CN mapping)

After Step 4 (SV)

  • Positioning statement clear
  • All stakeholders identified
  • Major features listed
  • Mermaid UML architecture diagram included (mandatory)
  • Cross-reference to Software Glance present
  • File saved: 04-software-vision.md

After Step 5 (FRs/NFRs)

  • Every CN has at least one FR
  • All FRs use "shall" or "should"
  • Each FR saved as individual file in functional-requirements/
  • Each NFR saved as individual file in non-functional-requirements/
  • Index files created (_index.md)
  • Traceability matrix complete (FR → CN → CP)
  • No code snippets or programming examples in FR/NFR files
  • Construction details in separate design/ folder (not in FR/NFR files)
  • File saved: traceability-matrix.md
  • MANDATORY: Run zigzag validation (full chain verification)

Problem-First Enforcement

If user attempts to skip to solutions, redirect:

Detect: User mentions specific technology, feature, or implementation before CPs exist

Redirect:

I notice you're describing a solution. Let's first understand the problem.

Before we design [mentioned solution], help me understand:
1. What is the business context? (→ business-context skill)
2. What business obligation, expectation, or hope drives this need?
3. What negative consequences occur without this?
4. Who is impacted?

→ Loading: business-context skill (if no BC exists)
→ Loading: customer-problems skill (if BC exists)

Quick Syntax Reference

ArtifactSyntax Pattern
CP[Subject] [must/expects/hopes] [Object] [Penalty]
CN[Subject] needs [system] to [Verb] [Object] [Condition]
FRThe [System] shall [Verb] [Object] [Constraint] [Condition]
NFRThe [System] shall [quality attribute with measurable criteria]

Handoff Protocol

When completing each step:

  1. Save outputs to the appropriate file(s)
  2. Summary of outputs produced
  3. Validation that gate criteria are met
  4. Next step recommendation
  5. Required inputs for next step

Example:

✅ Step 3 Complete: Customer Needs Specified

📁 Saved to: docs/srs/03-customer-needs.md

Outputs:
- CN-001: [Information] User needs system to display...
- CN-002: [Control] Admin needs system to manage...
- CN-003: [Information] Manager needs system to report...

Gate Check:
- [x] All CNs use structured notation
- [x] Outcome classes assigned
- [x] Every CP has at least one CN
- [x] File saved

→ Next: Step 4 - Software Vision
→ Loading: references/step4-software-vision.md
→ Will save to: docs/srs/04-software-vision.md
→ Input: The CNs documented above

Usage Patterns

Pattern 1: Full Process (New Project)

Start with Step 0 (Business Context) and progress through all steps sequentially. Remember: Ask where to save files, establish business context first.

Pattern 2: Jump In (Existing Artifacts)

Detect what artifacts exist, skip completed steps, resume at current step. Remember: Check for existing SRS folder and read current files.

Pattern 3: Iterative Refinement

Complete initial pass, then iterate on specific steps as understanding improves. Remember: Update existing files rather than creating new ones.

Pattern 4: Validation Only

Use zigzag-validator skill to check existing artifacts without generating new ones.

Pattern 5: Independent Development

After Step 5, engineers can pick up individual FR files and develop independently. Each FR file contains all context needed (traceability, acceptance criteria).

Pattern 6: Agile/Sprint Integration

Use Problem-Based SRS iteratively within agile workflows:

  • Sprint 0: Steps 0-2 (BC + CPs + Software Glance) for product vision
  • Sprint 1+: Steps 3-5 for specific feature sets
  • Per Feature: Complete CP→CN→FR chain for one feature at a time
  • Validation: Run zigzag-validator after each sprint to ensure traceability

Pattern 7: Minimal Viable SRS

For quick prototypes or MVPs:

  1. Identify 2-3 core CPs (Obligations only)
  2. Create minimal Software Glance
  3. Derive essential CNs
  4. Generate only critical FRs
  5. Skip detailed validation until expansion

When to Use Each Skill

  • business-context: User is starting a new project and needs to establish structured context
  • customer-problems: User has business context but no structured problems
  • software-glance: User has CPs and needs high-level solution view
  • customer-needs: User has CPs + SG and needs to specify outcomes
  • software-vision: User has CNs and needs detailed vision document
  • functional-requirements: User has CNs + SV and needs functional requirements
  • zigzag-validator: User needs to check traceability or consistency
  • complexity-analysis: User explicitly requests Axiomatic Design analysis

Optional: Complexity Analysis

For deeper quality analysis, users can explicitly invoke the complexity-analysis skill for Axiomatic Design-based specification quality analysis. Use for critical systems, large specifications, or formal reviews. This is NOT part of the standard flow.

Examples

For complete walkthroughs, see:

Use skills individually based on current step to minimize context usage.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.26%
按下载量换算57

Claude

31.03%
按下载量换算49

Cursor

19.22%
按下载量换算30

Gemini CLI

10.26%
按下载量换算16

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills