skills/software-vision/SKILL.md
Transform Software Glance and Customer Needs into a detailed Software Vision with positioning, stakeholders, features, and architecture. Use after Customer Needs. Step 4 of Problem-Based SRS methodology.
npx skillsauth add rafaelgorski/problem-based-srs software-visionInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 RFC 2119 RFC 8174 when, and only when, they appear in all capitals, as shown here.
Step 4 of 5 in the Problem-Based SRS methodology.
Single Responsibility: Transform the Software Glance + Customer Needs into a detailed Software Vision document that provides high-level scope, positioning, and architectural boundaries.
Position in Process:
Step 1: Customer Problems → Step 2: Software Glance → Step 3: Customer Needs
↓ ↓
Step 4: SOFTWARE VISION (You are here)
↓
Step 5: Requirements Specification
Generate a Software Vision document that serves as:
🔗 See also: Software Glance (Step 2) — the initial abstract solution view that this Vision elaborates upon. Use the Glance to review system boundaries and actors before building the Vision.
This skill REQUIRES completed artifacts from previous steps:
Software Glance (from software-glance skill)
Customer Needs (from customer-needs skill)
⚠ Warning: Do not proceed without these inputs. The Vision cannot be created independently.
Transform the Software Glance into a detailed Vision document by:
✅ Provides high-level scope and positioning
✅ Lists major features at conceptual level
✅ Defines environmental constraints
✅ Shows high-level architecture blocks
✅ Identifies all stakeholders
❌ Create detailed functional requirements (Step 5)
❌ Design complete software architecture (later design phase)
❌ Specify low-level implementation details
❌ Go beyond high-level architectural decisions
Generate a document with these sections:
For [target customer]
Who [statement of need or opportunity]
The [product name] is a [product category]
That [key benefit, compelling reason to buy/use]
Unlike [primary competitive alternative]
Our product [statement of primary differentiation]
List all parties involved:
Describe:
For each major feature:
Example format: | Feature | Description | Benefit | Priority | |---------|-------------|---------|----------| | Contact Management | Store and organize customer information | Centralized customer data | Must-have |
Specify:
Provide using Mermaid UML diagrams (mandatory):
Use Mermaid diagram types as appropriate:
flowchart TB
subgraph UI[User Interface Layer]
Web[Web App]
Mobile[Mobile App]
end
subgraph BL[Business Logic Layer]
API[API Gateway]
Services[Core Services]
end
subgraph DA[Data Access Layer]
ORM[Data Access]
Cache[Cache]
end
DB[(Database)]
UI --> BL
BL --> DA
DA --> DB
Recommended Mermaid diagram types:
flowchart — for component/subsystem relationshipsC4Context / C4Container — for system context and container viewssequenceDiagram — for key interaction flowsclassDiagram — for domain model overview🔗 Cross-reference: The system boundaries and actors defined in the Software Glance (Step 2) SHOULD be expanded here with architectural detail. Readers can refer back to the Glance for the original abstract view.
Provide the vision as a structured markdown document directly in the response. The full document content MUST be visible in the conversation—do NOT return only a summary or file listing.
Required markdown headings (use these exact headings):
## Vision or ## Positioning — the positioning statement section## Stakeholders — list of stakeholders## Product Overview — purpose, scope, benefits## High-Level Features — feature table## Environment and Constraints — deployment, technical constraints## High-Level Architecture — architecture blocksAdditional formatting:
Input Validation:
Output Validation:
Boundary Validation:
When Vision is complete:
✅ Step 4 Complete: Software Vision Defined
Summary:
- Positioning statement defined
- [N] stakeholders identified
- [N] high-level features listed
- Architecture overview complete
→ Next Step: 5 - Functional Requirements
→ Use skill: functional-requirements
→ Input: Customer Needs + Software Vision
Version: 1.2
Step: 4 of 5
Next: functional-requirements skill
development
Complete Problem-Based Software Requirements Specification methodology following Gorski & Stadzisz research. Use when you need to perform requirements engineering from business problems to functional requirements with full traceability.
tools
Generate Functional Requirements (FR) and Non-Functional Requirements (NFR) from Customer Needs and Software Vision. Creates individual requirement files with traceability. Step 5 of Problem-Based SRS methodology.
testing
Validate traceability and consistency across Customer Problems, Customer Needs, and Functional Requirements domains. Use to check completeness, identify gaps, and ensure all requirements trace to real business problems.
content-media
Create the first abstract representation of a software solution from Customer Problems. Use after identifying CPs to design high-level system boundaries and components. Step 2 of Problem-Based SRS methodology.