swebok

Answers software engineering questions using SWEBOK v4 knowledge areas, SOLID principles, and GoF patterns.

Updated May 19, 2026
One-click install
npx skills add https://github.com/Curcolor/CLAUDEMAX --skill swebok-curcolor
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: swebok
Source: https://github.com/Curcolor/CLAUDEMAX/tree/main/skills/swebok
Command: npx skills add https://github.com/Curcolor/CLAUDEMAX --skill swebok-curcolor

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Engineers often need standard industry vocabulary and decision frameworks for questions about requirements, architecture, testing, estimation, or technical debt, but the full SWEBOK v4 body of knowledge is too large to search on demand. This Skill distills all 18 knowledge areas into a pocket guide with quick-decision rules, a glossary, and curated references on SOLID, the 23 GoF design patterns, and system architectures. ## Core Features & Use Cases - Topic index by question: Routes natural-language questions (e.g., how to prioritize conflicting requirements, when to stop testing, how to estimate effort) to the right chapter, cheatsheet rule, glossary term, or curated reference file. - Decision cheatsheet: Provides "if X, do Y, because Z" rules, trade-off matrices (predictive vs. adaptive SDLC, static vs. dynamic vs. formal V&V), thresholds, and anti-pattern warning signs. - Curated architecture references: Offers practical guidance on choosing between hexagonal, clean, microservices, modular monolith, event-driven, CQRS, and serverless architectures, plus smell tests for each SOLID principle and one-line triggers for all 23 GoF patterns. - Use Case: When asked whether to refactor or live with technical debt, the Skill returns the decision table comparing refactoring, reengineering, and reverse engineering, with the rule to quantify debt as a financial decision. ## Quick Start Ask the swebok skill which testing technique to use for validating requirements against a specification and when to stop testing.

Frequently Asked Questions about swebok

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I choose between black-box and white-box testing techniques?

Use black-box testing to validate behavior against requirements and white-box testing to measure code coverage. They are complementary because they start from different information sources and detect different classes of faults, so combine both rather than relying on one.

How do I choose between microservices and a modular monolith?

Start with a modular monolith when you have a small team, a single deploy, and one database. Choose microservices only when real forces demand it, such as independent deployment cadence, fault isolation, or separate scaling needs, since distributed transactions and observability costs are significant.

What estimation technique should I use for software effort?

Match the technique to available information: expert judgment with no historical base, analogy with a comparable project, bottom-up decomposition when you can break down the work, and parametric models with a solid historical database. For high-impact decisions, use multiple techniques and look for convergence.

When should I refactor versus live with technical debt?

Refactor when external behavior must stay the same but internal structure is problematic. Quantify the debt in terms of current cost, potential savings, and urgency, and treat it as a financial investment decision rather than an aesthetic judgment about messy code.

Does the skill cover SOLID principles and design patterns?

Yes, it includes curated reference files covering all five SOLID principles with smell tests and over-application costs, plus all 23 GoF design patterns with one-line triggers for choosing between them. These complement the SWEBOK chapters with more practical depth.

What are the limitations of a green test suite?

A passing test suite only demonstrates the absence of failures in those specific cases, never the absence of faults in general, per Dijkstra's limit. Communicate the coverage and adequacy criteria achieved instead of claiming zero defects.