
Security News
White House Authorizes Private Companies to Conduct Offensive Cyber Operations
A new federal program will let vetted U.S. cybersecurity firms help investigate and disrupt foreign cybercrime groups under government direction.
ai-test-process-mcp
Advanced tools
MCP server providing AI-assisted test process tools, starting with JSTQB-based test plan draft generation and test design techniques.
JSTQB/ISTQB Generic Test Process ã AI ã§æ¯æŽãã MCP ãµãŒããŒã
ãã¹ã管çããŒã«ã®æäœãç®çãšãããGeneric Test Process ã®åå·¥çšïŒTest Planning ã Test CompletionïŒã«ãããŠããã¹ãææç©ã®äœæã»ã¬ãã¥ãŒã»åæã AI ã§æ¯æŽããããšãç®çãšãããææžæ§æã¯ JSTQBæºæ ã®15ç« ãã³ãã¬ãŒãã«åºã¥ãã
çŸåšã®ã¹ã³ãŒãïŒPhase 1ã3: Test Planning + Test Analysis + Test DesignïŒ: ãã¹ãèšç»æžïŒJSTQBæºæ 15ç« æ§æïŒã®æ¥æ¬èªãã©ããçæã»JSTQB芳ç¹ã§ã®ã¬ãã¥ãŒã»ä¿®æ£æ¯æŽã»è³ªå圢åŒã§ã®ã³ã³ããã¹ãåéã¬ã€ããèŠä»¶åæã»ãã¹ãæ¡ä»¶æœåºãå¢çå€åæã»åå€åå²ã»ãã¹ãã±ãŒã¹çæã«ãããã¹ãèšèšææ³ãããã³æ¢çŽ¢çãã¹ãã®ãã£ãŒã¿ãŒèšèšãå«ãçµéšããŒã¹ææ³ã å°æ¥æ§æ³: Test AnalysisïŒèŠä»¶åæã»ãã¹ãæ¡ä»¶æœåºïŒãTest DesignïŒãã¹ãã±ãŒã¹çæã»ãã¹ã仿§æžã¬ãã¥ãŒïŒãçµãŠãGeneric Test Process å š7å·¥çšãžæ®µéçã«æ¡åŒµããã詳现㯠docs/roadmap.md ãåç §ã
npmã«å ¬éæžã¿ã®ããããã«ãäžèŠã§ããã«äœ¿ãããClaude Desktop / Claude Codeã®èšå®ã«ä»¥äžã远èšããïŒNode.js 18以äžãå¿ èŠïŒã
{
"mcpServers": {
"ai-test-process-mcp": {
"command": "npx",
"args": ["-y", "ai-test-process-mcp@latest"]
}
}
}
@latestãä»ããããšã§ãæ°ããããŒãžã§ã³ãå
¬éããããšãã«æåã§ãã£ãã·ã¥ãæ¶ããªããŠãèªåçã«åæ ãããã
git clone https://github.com/Hashi-Kazu/ai-test-process-mcp.git
cd ai-test-process-mcp
npm install
npm run build
create_test_planãããžã§ã¯ãæ
å ±ïŒprojectName, scope ã¯å¿
é ãobjectives, risks, scheduleConstraints, team, testItems, stakeholders, glossary ãªã©å€æ°ã®ä»»æé
ç®ïŒãå
¥åãããšãJSTQBæºæ ã®15ç« æ§æã«æ²¿ã£ãæ¥æ¬èªMarkdown圢åŒã®ãã¹ãèšç»æžãã©ãããçæãããæªå
¥åã®é
ç®ã¯ _æªèšå
¥_ïŒå¿
é é
ç®ã¯ _æªèšå
¥ïŒå¿
é ïŒ_ïŒãšããŠæç€ºãããããã¹ãã¿ã€ã説æã»ã€ã³ã·ãã³ãã©ã³ã¯çã®åºå®ãªãã¡ã¬ã³ã¹ã¯åžžã«åºåãããã
review_test_planãã¹ãèšç»æžã®Markdownæ¬æãå ¥åãããšãJSTQB芳ç¹ã§ã¬ãã¥ãŒã¬ããŒããè¿ããäºå±€æ§æ: (1) æ§é æ€æ»ïŒ15ç« ã®æ¬ èœã»å¿ é é ç®ã®æªèšå ¥ã決å®çã«æ€åºïŒã(2) æå³çã¬ãã¥ãŒçšãã§ãã¯ãªã¹ãïŒåŒã³åºãåŽã®LLMãå 容ã®åŠ¥åœæ§ã倿ããããã®æç€ºåœ¢åŒïŒã
revise_test_planæ¢åã®ãã¹ãèšç»æžMarkdownãšä¿®æ£æç€ºïŒinstructionsãä»»æã®æååé
åïŒãå
¥åãããšãä¿®æ£çµæã¬ããŒããè¿ããäºå±€æ§æ: (1) æ©æ¢°çä¿®æ£ïŒæ¬ èœç« ã®èªåè£å®ãTBD/TODO/æªå®çã®æªèšå
¥ãã¬ãŒã¹ãã«ãã® _æªèšå
¥_ ãžã®æ£èŠåïŒãé©çšããä¿®æ£åŸèšç»æžã(2) å
å®¹ã®æžãæããåŒã³åºãåŽLLMã«æç€ºããç®æ¡æžãïŒãŠãŒã¶ãŒæå®ã®ä¿®æ£æç€ºãããã³ä¿®æ£åŸããªãæ®ãå¿
é æªèšå
¥é
ç®ã®äžèЧïŒã
test_plan_interview質å圢åŒã§ãã¹ãèšç»æžã®ã³ã³ããã¹ããåéããããã®ã¬ã€ãããã³ãã¬ãŒãã®å¿
é é
ç®ãäžå¿ã«ããŠãŒã¶ãŒãžé ã«è³ªåããŠåçãéããcreate_test_plan ãåŒã³åºãããã¢ã·ã¹ã¿ã³ããèªå°ãããä»»æåŒæ° projectName ãåãåãã
design_boundary_values倿°ã®æå¹ç¯å²ïŒäžéã»äžéã»å»ã¿ã»åïŒãã2å€/3å€ã®å¢çå€ã決å®çã«åæããæå¹/ç¡å¹å€å®ä»ãã®Markdown衚ã§è¿ãã
design_equivalence_partitioning倿°ããšã®æå¹/ç¡å¹åå€ã¯ã©ã¹ãã代衚å€ããŒã¹ã®ãã¹ãã±ãŒã¹ã決å®çã«çæããå šã¯ã©ã¹è¢«èŠãã§ãã¯ä»ãã®Markdown衚ã§è¿ãã
design_decision_tableæ¡ä»¶é
ç®ïŒåå ïŒãšãã®åãåŸãæ°Žæºã»ç¡å¹çµåãïŒããããªãçµåããšçç±ïŒã»ã«ãŒã«ïŒæ¡ä»¶ã»ã¬ã¯ã¿âåäœïŒãããå
šçµåãã®æ±ºå®çãªåæ â ç¡å¹çµåãã®é€å€ â åäžåäœåã®å§çž®ïŒdon't care å°åºïŒãè¡ããæ¡ä»¶çµåã被èŠã»åäœæªå®çŸ©çµåãïŒDTC-06ïŒã»é£ãéãåäœã®ççŸïŒDTC-07ïŒã»å§çž®ååŸã®åæ°ãšåæžçãMarkdownã§è¿ããå§çž®åŸã®åã«ãŒã«ã¯ DT: ãã¬ãã£ãã¯ã¹ã®ç¶²çŸ
察象IDãšã㊠generate_test_cases ã® decisionTable ãžãã®ãŸãŸæž¡ãããanalyze_cause_effect ã®ããã·ãžã§ã³ããŒãã«ãžã®åŒãæž¡ããåºåïŒDecisionTableSpec 圢åŒãæ°Žæº ["T","F"] ã®æ¡ä»¶é
ç®ã»åäœé
ç®ãå¶çŽç±æ¥ã®ç¡å¹çµåããå§çž®åŸã«ãŒã«ãå«ãïŒããã®ãŸãŸå
¥åã«ã§ããã
design_pairwiseå åïŒfactors[]: id / name / levelsïŒã»çŠåïŒforbiddenCombinations[]: ããããªãçµåããšçç±ïŒã»å¿
ãå«ãããæ¢ç¥ã®éèŠçµåãïŒseedRows[]ïŒãå
¥åãããšãå
šãŠã®æ°Žæºãã¢ã®æ£æºé ã§ã®åæ â çŠåã«ããå°éäžèœãã¢ã®å€å® â ãã¢ã被èŠããçµåãã®æ±ºå®çãªè²ªæ¬²æ³ã§ã®çæããè¡ããå åã»æ°Žæºè¡šãçŠå衚ãå°éå¯åŠè¡šãçæããçµåã衚ãè¡å¥ã®æ°èŠè¢«èŠãã¢ã決å®çæ€æ»ãç¶²çŸ
察象äžèЧããµããªã®8ç¯ãMarkdownã§è¿ããä¹±æ°ã»çŸåšæå»ã䜿ããªããããåäžå
¥åããã¯åžžã«åäžã®çµåã衚ãåŸããããçæããåãã¢ã¯ PW:<setId>:P<n> 圢åŒã®ç¶²çŸ
察象IDãšããŠåºåããããã®ãŸãŸ generate_test_cases ã® pairwise ãžæž¡ããšãã¢è¢«èŠçãæ±ºå®çã«ã«ãŠã³ãã§ããããã¢è¢«èŠçã®åæ¯ã¯ãå
šãã¢æ° â çŠåã«ããå°éäžèœãªãã¢æ° â æ¢çŽ¢äžéã«ããå€å®ä¿çãšãªã£ããã¢æ°ãã§ããå
šãã¢æ°ã§ã¯ãªãæšãæç€ºãããåæžçã®åæ¯ã¯ãå
šçµåããå³å¯åæã§ãããšãã¯ãçŠåé©çšåŸã®æå¹çµåãæ°ããåæäžéïŒmaxEnumerationCombinationsãæ¢å®4096ïŒãè¶
ãããšãã¯ãçŠåé©çšåã®å
šçµåãæ°ãã§ããããããã䜿ã£ãããåºåã«æèšãããå
šçµåãæ°ãå®å
šæŽæ°ãè¶
ããå Žåã¯åæžçãæšæž¬å€ã§åºãããæªç®åºïŒçç±ïŒããšæèšãããå
šãã¢æ°ãäžéïŒmaxPairCountãæ¢å®5000ïŒãè¶
ããå Žåãå
¥åã«èŽåœçãªææãããå Žåã¯çµåãçæãè¡ãããç®åºã§ããã«ãŠã³ãã®ã¿ãè¿ããå åã»æ°Žæºã¯ testcondition://factor/ralph-frame ã®å å衚ïŒFHO-04ïŒãããã®ãŸãŸæå
¥ã§ãããå€å®åºåãšå¯ŸåŠæé㯠testdesign://pairwise/analysis-criteria ãåç
§ããã
testdesign://pairwise/analysis-criteriadesign_pairwise ã®å€å®åºåã«ã¿ãã°ïŒPWC-01ãPWC-12ãèªäœãã©ãã¬ãŒãºïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããæªå®£èšã®å åIDã»æ°Žæºã®åç
§ãå åID/æ°Žæºã®éè€ãçµåãã«å¯äžããªãå åãå åæ°äžè¶³ãçŠåã«ããå°éäžèœãªãã¢ãæå¹ãªçµåããååšããªããåé·ã»å°éäžèœãªçŠåãseedè¡ã®äžæ£ããã¢æ°ã®äžéè¶
éãå°éå¯åŠã®å€å®ä¿çããã¢è¢«èŠçã100%æªæºãã®ååºåã«ã€ããŠé倧床ã»å®çŸ©ã»æšå¥šã¢ã¯ã·ã§ã³ãå«ãããã¢è¢«èŠçã»åæžçããããã®åæ¯ã®å®çŸ©ãšãæ¬æ€æ»ãæž¡ãããå åã»æ°Žæºã»çŠåã«å¯ŸããŠã®ã¿æç«ãããšããéçãæ³šèšãšããŠæã€ã
design_scenario_flowsã¢ã¯ã¿ãŒïŒactors[]ïŒã»ãŠãŒã¹ã±ãŒã¹ïŒuseCases[]: äºåæ¡ä»¶ã»äž»ãããŒã»ä»£æ¿ãããŒ/äŸå€ãããŒïŒãå
¥åãããšãäž»ãããŒåç¬ã®ã·ããªãªãšãååå²ã1ä»¶ãã€ééããã·ããªãªã宣èšé ã«æ±ºå®çã«å±éããã¢ã¯ã¿ãŒäžèЧããŠãŒã¹ã±ãŒã¹ã»ãããŒäžèЧãã·ããªãªäžèЧãåé¡ãµããªãæ©èœID被èŠããã¹ãæ¡ä»¶ãšã®çªåãæ±ºå®çæ€æ»ãç¶²çŸ
察象äžèЧããµããªã®9ç¯ãMarkdownã§è¿ããã·ããªãªã®åé¡ã¯åå²ã®çµäºç¶æ
ïŒoutcomeïŒã ãã§æ±ºãŸããäž»ãããŒåç¬ã¯æ£åžžç³»ãç®çãéæããåå²ã¯æºæ£åžžç³»ãç®çæªéã§çµããåå²ã¯ç°åžžç³»ã«ãªãïŒåå²ã®çš®å¥ kind ã¯åé¡ã«åœ±é¿ããªãïŒã1ã·ããªãªã¯ãäž»ãããŒïŒé«ã
1åå²ãã§ãããè€æ°åå²ãåæã«çµ¡ãçµè·¯ã¯çæããªãïŒå¿
èŠãªã generate_test_cases ã® additionalCoverageTargets ã§è£ãïŒãä¹±æ°ã»çŸåšæå»ã䜿ããªããããåäžå
¥åããã¯åžžã«åäžã®ã·ããªãªäžèЧãåŸããããåãããŒã¯ UC:<useCaseId>:<flowId>ãåã·ããªãªã¯ SC:<useCaseId>:S<n> 圢åŒã®ç¶²çŸ
察象IDãšããŠåºåããããã®ãŸãŸ generate_test_cases ã® scenarioFlows ãžæž¡ããšäž»èŠã»ä»£æ¿ãããŒè¢«èŠãšã·ããªãªè¢«èŠã決å®çã«ã«ãŠã³ãã§ãããæ©èœID被èŠçã¯æ©èœIDæ¯éå£ïŒfeatureIdsïŒã宣èšãããŠãããšãã ããå®£èšæ¯éå£ã忝ã»ã¹ããããå®éã«ééããæ©èœIDãååãšããŠç®åºããæªå®£èšãªãæ°å€ãåºãããæªç®åºïŒçç±ïŒããšæèšãããå
¥åã«èŽåœçãªææãããå Žåã1ãŠãŒã¹ã±ãŒã¹ãããã®ã·ããªãªæ°ãäžéïŒmaxScenariosPerUseCaseãæ¢å®200ïŒãè¶
ããå Žåã¯ã·ããªãªçæãè¡ãããææã®ã¿ãè¿ããå€å®åºåãšå¯ŸåŠæé㯠testdesign://scenario-flow/analysis-criteria ãåç
§ããã
scenario_flow_interview質å圢åŒã§ã·ããªãªãããŒèšèšã®ã³ã³ããã¹ããåéããããã®ã¬ã€ããã¢ã¯ã¿ãŒã»ãŠãŒã¹ã±ãŒã¹ãšäž»ã¢ã¯ã¿ãŒã»äºåæ¡ä»¶/äºåŸæ¡ä»¶ã»äž»ãããŒïŒã¹ãããçªå·é ïŒã»ä»£æ¿ãããŒ/äŸå€ãããŒã»åå²ã®èµ·ç¹/奿©/埩垰å
ã»åå²ã®åž°çµïŒç®çéæïŒäžæïŒã»æ©èœIDæ¯éå£ã確èªããdesign_scenario_flows ãåŒã³åºãããã¢ã·ã¹ã¿ã³ããèªå°ãããä»»æåŒæ° subjectName ãåãåãã
testdesign://scenario-flow/analysis-criteriadesign_scenario_flows ã®å€å®åºåã«ã¿ãã°ïŒSFC-01ãSFC-14ãèªäœãã©ãã¬ãŒãºïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããæªå®£èšã¢ã¯ã¿ãŒã®åç
§ããŠãŒã¹ã±ãŒã¹IDã»åå²IDã®éè€ãã¹ãããçªå·ã®äžæŽåãåå²äœçœ®ã»åŸ©åž°äœçœ®ã®äžæŽåãå岿¡ä»¶ã®æªå®£èšãæªå®£èšã®æ©èœIDã®åç
§ãäŸå€ãããŒã®æ¬ åŠãã·ããªãªåé¡ã®åããã©ã®ã·ããªãªãééããªãæ©èœIDãæ©èœIDã1ä»¶ãçŽã¥ããªããããŒããã¹ãæ¡ä»¶ãæ±ããæ©èœIDã®æªééããã¹ãæ¡ä»¶ã«çŽã¥ããªãééæ©èœIDãéè€ã·ããªãªãã·ããªãªæ°ã®äžéè¶
éãã®ååºåã«ã€ããŠé倧床ã»å®çŸ©ã»æšå¥šã¢ã¯ã·ã§ã³ãå«ããã·ããªãªå±éã®æ¹éïŒäž»ãããŒïŒé«ã
1åå²ïŒãåé¡ã outcome ã ãã§æ±ºãŸãããšãæ©èœID被èŠçãæ¯éå£å®£èšæã®ã¿ç®åºããããšããããŒè¢«èŠçãšãã¹ãã±ãŒã¹ã«å¯Ÿããå®è¢«èŠã®éããããã³æ¬æ€æ»ãæž¡ããããŠãŒã¹ã±ãŒã¹ã»ãããŒã«å¯ŸããŠã®ã¿æç«ãããšããéçãæ³šèšãšããŠæã€ã
design_test_architectureãã¹ãã³ã³ããïŒcontainers[]: 責åã»ãã¹ãç®çã»ãã¹ãã¬ãã«ã»ãã¹ãã¿ã€ãã»åªå
床ã¯ã©ã¹ã»æ
åœèгç¹ã«ããŽãªã»ãã¹ã察象ã»å®è¡ç°å¢ã»éå§/çµäºåºæºïŒãšãã³ã³ãããžã®åž°å±å
ãæå®ãããã¹ãæ¡ä»¶ïŒtestConditions[]ïŒãä»»æã§ãã¹ãã±ãŒã¹ïŒtestCases[]ïŒãå
¥åãããšããã¹ãã¹ã³ãŒãããã¹ãã³ã³ããäžèЧãã³ã³ããéå±€å³ïŒmermaidïŒããã¹ãæ¡ä»¶ã®ã³ã³ããåž°å±ãååžïŒã³ã³ããÃãã¹ãã¬ãã«ïŒã³ã³ããÃãã¹ãã¿ã€ãïŒåªå
床ã¯ã©ã¹ïŒãã³ã³ããå¥ãã¹ããµã€ãºã»ãã¹ãã¬ãã«ååžãæ¡ä»¶âã±ãŒã¹ã®ãã¬ãŒãµããªãã£ã決å®çæ€æ»ããµããªã®9ç¯ãMarkdownã§è¿ãããã¹ãæ¡ä»¶âãã¹ãã±ãŒã¹ã®2段ãããªãã£ããã€ãã©ã€ã³ã«ããã¹ãæ¡ä»¶çŸ€ãæãããã¹ãã¢ãŒããã¯ãã£å±€ãè¶³ãããã©ã®ã³ã³ãããäœãä¿èšŒããããã®å®£èšãšãå®éã«ãããžåž°å±ãããã¹ãæ¡ä»¶ã»ãã¹ãã±ãŒã¹ã®å®äœãçªãåããããå€å®ã¯å®£èšãšå®äœã®ç
§åãå¿
ãã»ããã«ããŠãããæ
åœã宣èšãã芳ç¹ã«ããŽãªã«è©²åœæ¡ä»¶ã1ä»¶ãç¡ãå ŽåïŒå®£èšã®ã¿ïŒãšãåž°å±æ¡ä»¶ã®èгç¹ã宣èšã«å«ãŸããªãå ŽåïŒå®äœã®ã¿ïŒãåæ¹åã§æ€åºãã宣èšããåå²è»žïŒdecompositionAxisIdsïŒã«ã€ããŠãããã¹ãã¬ãã«å¥ã宣èšããã®ã«å®éã¯1çš®é¡ããç¡ããšãã£ãäžäžèŽãæ€åºãããåž°å±çã¯ã忝ïŒå
¥åãã¹ãæ¡ä»¶æ°ïŒååïŒæ¢ç¥ã³ã³ãããž1件以äžåž°å±ããæ¡ä»¶æ°ããå¿
ã䜵èšããæªåž°å±æ¡ä»¶IDãå
šä»¶åæãããååžã®æ§ææ¯ã®åæ¯ã¯åž°å±æžã¿æ¡ä»¶æ°ã§ãããæªåž°å±æ¡ä»¶ã¯åæ¯ããé€ãã奿²ãããã³ã³ããå¥ãã¹ããµã€ãºååžã¯ testCases ãæž¡ããããšãã®ã¿ç®åºããæªæå®æã¯æ°å€ãåºãããæªç®åºïŒçç±ïŒããšæèšãããä¹±æ°ã»çŸåšæå»ã䜿ããªããããåäžå
¥åããã¯åžžã«åäžã®åºåãåŸããããæªåž°å±æ¡ä»¶ã»æªç¥ã®ã³ã³ããIDåç
§ã»ã³ã³ããIDã®éè€ã»èŠªåé¢ä¿ã®äžæŽåã»è²¬åã®æªèšå
¥ã®ãããããããå ŽåããŸãã¯ã³ã³ããæ°ïŒmaxContainersãæ¢å®200ïŒã»é局深ãïŒmaxDepthãæ¢å®5ïŒã®äžéãè¶
ããå Žåã¯æ§é ã®ç®åºãè¡ãããææã®ã¿ãè¿ããã³ã³ããéã®å®è¡é åºã»äŸåé¢ä¿ã»ã¯ãªãã£ã«ã«ãã¹ã»ãªãœãŒã¹éèšã¯å¯Ÿè±¡å€ãå€å®åºåãšå¯ŸåŠæé㯠testarch://container/design-principles ãåç
§ããã
test_architecture_interview質å圢åŒã§ãã¹ãã¢ãŒããã¯ãã£èšèšã®ã³ã³ããã¹ããåéããããã®ã¬ã€ãããã¹ãã¹ã³ãŒãã»ã³ã³ããå解軞ã»ãã¹ãã³ã³ããã®å®çŸ©ïŒID/åç§°/芪å/責åïŒã»ãã¹ãã¬ãã«ãšãã¹ãã¿ã€ãã»å®è¡å¿
èŠæ§ã®åªå
床ã¯ã©ã¹ã»æ
åœèгç¹ã«ããŽãªã»ç°å¢ãšéå§/çµäºæ¡ä»¶ã»ãã¹ãæ¡ä»¶ã®ã³ã³ããåž°å±ã確èªããdesign_test_architecture ãåŒã³åºãããã¢ã·ã¹ã¿ã³ããèªå°ãããä»»æåŒæ° subjectName ãåãåãã
testarch://container/design-principlesdesign_test_architecture ã®ãã¹ãã³ã³ããèšèšååã»å€å®åºåã«ã¿ãã°ïŒèªäœãã©ãã¬ãŒãºïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããã³ã³ããåå²è»ž8çš®ïŒTAX-01ãTAX-08: ãã¹ãã¬ãã«å¥ïŒãã¹ã察象ã»ãµãã·ã¹ãã å¥ïŒãã¹ãã¿ã€ãå¥ïŒåè³ªç¹æ§å¥ïŒãªã¹ã¯åŒ·åºŠå¥ïŒãã¹ããµã€ã¯ã«ã»ãã§ãŒãºå¥ïŒå©çšã·ããªãªã»æ¥åå¥ïŒå®è¡ç°å¢ã»æ§æå¥ãå軞ã«ããã®è»žã§å²ãã¹ããã®åãããé©ããç¶æ³ãããã®è»žã ãã§å²ããšäœãèŠããªããªããããæã€ïŒãã³ã³ããã宣èšãã¹ã責åå®çŸ©é
ç®9çš®ïŒRFD-01ãRFD-09ãå¿
é é
ç®ã¯è²¬åã»ãã¹ãã¬ãã«ã»ãã¹ãã¿ã€ãã»åªå
床ã¯ã©ã¹ïŒãåªå
床ã¯ã©ã¹3çš®ïŒTPR-01ãTPR-03: å¿
é 宿œïŒæ¡ä»¶ä»ã宿œïŒä»»æå®æœãåã¯ã©ã¹ã蚱容ãããã¹ãæ¡ä»¶ã®åªå
床ãæã¡ããã®å¯Ÿå¿ãå€å®ããŒã¿æºã«ãªãïŒããã¹ãã¹ã³ãŒã宣èšé
ç®3çš®ïŒTSC-01ãTSC-03ïŒãå€å®åºå17çš®ïŒTAC-01ãTAC-17ïŒãå«ããå€å®åºåã¯ãã©ã®ã³ã³ããã«ãåž°å±ããªããã¹ãæ¡ä»¶ãæªç¥ã®ã³ã³ããIDåç
§ãã³ã³ããIDã®éè€ã芪åé¢ä¿ã®äžæŽåã責åã»ãã¹ãç®çã®æªèšå
¥ããã¹ãæ¡ä»¶ã®éè€åž°å±ããã¹ãæ¡ä»¶ã空ã®èã³ã³ããããã¹ãã¿ã€ãã®æªå®£èšãåªå
床ã¯ã©ã¹ãšåž°å±æ¡ä»¶ã®åªå
床ã®äžæŽåãæ
åœèгç¹ã«ããŽãªã®å®£èšãšåž°å±å®äœã®äžäžèŽãæªç¥ã®èгç¹ã«ããŽãªIDåç
§ã宣èšãã¹ãã¬ãã«ãšåž°å±ã±ãŒã¹ã®å®ã¬ãã«ã®äžäžèŽããã¹ãã¹ã³ãŒãã®å®£èšäžè¶³ã»å®äœãšã®äžäžèŽããã¹ãã±ãŒã¹ãŸã§å°éããŠããªããã¹ãæ¡ä»¶ãã³ã³ããæ°ã»é局深ãã®äžéè¶
éãåå²è»žã®å®£èšãšå®äœã®äžäžèŽãã®ååºåã«ã€ããŠé倧床ã»å®çŸ©ã»æšå¥šã¢ã¯ã·ã§ã³ãå«ããæ§ææ¯ã®åæ¯ã®å®çŸ©ããã¹ãã±ãŒã¹æªæå®æã«æ°å€ãåºããªãããšãå®è¡é åºã»äŸåé¢ä¿ã察象å€ãšããããšãããã³æ¬æ€æ»ãæž¡ãããã³ã³ããã»ãã¹ãæ¡ä»¶ã«å¯ŸããŠã®ã¿æç«ãããšããéçãæ³šèšãšããŠæã€ã
design_test_dataããŒã¿åºåïŒdataClasses[]: ã©ã€ããµã€ã¯ã«ç¶æ
ã»ç¶æ
éã®é·ç§»ãšã€ãã³ãã»æºåæ
åœã»èª¿éæ¹æ³ã»å
±ææ¹éã»åäžããŒã¿ãšã¿ãªãéµå±æ§ïŒãããŒã¿ç®¡ç衚ã®å®äœïŒdataItems[]ïŒããã¹ãã±ãŒã¹ãèŠæ±ããåæããŒã¿ïŒtestCases[]: åºåã»ç¶æ
ã»å®äœã»read/updateïŒãå
¥åãããšãããŒã¿åºåäžèЧãããŒã¿åºåÃã©ã€ããµã€ã¯ã«ç¶æ
ãããªã¯ã¹ãç¶æ
é·ç§»äžèЧãšééã±ãŒã¹ãããŒã¿å®äœäžèЧãããŒã¿Ããã¹ãã±ãŒã¹äŸçµŠãã¬ãŒãµããªãã£ãæä»ã»å®è¡é åºãå¿
èŠãªçµåããæ±ºå®çæ€æ»ãç¶²çŸ
察象äžèЧããµããªã®9ç¯ãMarkdownã§è¿ããäŸçµŠå
ã®æç¡ã¯IDã®ååšã ãã§ãªãåæç¶æ
ããé·ç§»ã°ã©ãã蟿ã£ãå°éå¯èœæ§ïŒBFSïŒã§å€å®ããæ¬æè£ä»ãïŒTDC-11ïŒãééããèŠæ±ã ããç¶æ
/é·ç§»è¢«èŠã®ååã«æ°ãããåäžããŒã¿ãæŽæ°ããè€æ°ã±ãŒã¹ã¯ dataItemIdããŸã㯠dataClassId ãšããŒå±æ§ïŒkeyAttributesïŒã®å€ã®çµã§åå®ãã6ç¯ã®æä»è¡šã«åæãããå
±ææ¹éïŒshared/exclusive/per-caseïŒã宣èšããåºåã«ã€ããŠã¯ã宣èšãšå®éã®ã¢ã¯ã»ã¹å®äœã®äžäžèŽïŒTDC-14/TDC-15ïŒãæ€åºãããä¹±æ°ã»çŸåšæå»ã䜿ããªããããåäžå
¥åããã¯åžžã«åäžã®åºåãåŸããããåç¶æ
㯠DL:S:<dataClassId>:<stateId>ãåé·ç§»ã¯ DL:T:<dataClassId>:<transitionId> 圢åŒã®ç¶²çŸ
察象IDãšããŠåºåããããã®ãŸãŸ generate_test_cases ã® testData ãžæž¡ããšç¶æ
é·ç§»è¢«èŠã決å®çã«ã«ãŠã³ãã§ãããIDéè€ã»æªå®£èšIDåç
§ã»åæç¶æ
ã®å®£èšäžæ£ã»é·ç§»ã€ãã³ãã®æªèšå
¥ã®ãããããããå ŽåããŸãã¯ããŒã¿åºåæ°ïŒmaxDataClassesãæ¢å®100ïŒã»åºåãããã®ç¶æ
æ°ïŒmaxStatesPerClassãæ¢å®50ïŒã®äžéãè¶
ããå Žåã¯ãããªã¯ã¹ã»è¢«èŠã®ç®åºãè¡ãããææã®ã¿ãè¿ããå®è¡é åºïŒããããžã«ã«ãœãŒãã»ã¯ãªãã£ã«ã«ãã¹ïŒã»èŠå¡/ãªãœãŒã¹ã®éèšã¯å¯Ÿè±¡å€ïŒå°æ¥ã® analyze_execution_order ã®æ
åœé åïŒãå€å®åºåãšããŒã¿åºåçš®å¥ã«ã¿ãã°ã¯ testdesign://test-data/analysis-criteria ãåç
§ããã
testdesign://test-data/analysis-criteriadesign_test_data ã®ããŒã¿åºåçš®å¥ã«ã¿ãã°ïŒTDK-01ãTDK-06: ãã¹ã¿ç³»ïŒãã©ã³ã¶ã¯ã·ã§ã³ç³»ïŒã«ãŠã³ã¿ã»é£çªç³»ïŒèªèšŒã»æš©éç³»ïŒå€éšé£æºã»æ±ºæžç³»ïŒæå»ã»æéäŸåãèªäœãã©ãã¬ãŒãºïŒãšå€å®åºåã«ã¿ãã°ïŒTDC-01ãTDC-18ãèªäœãã©ãã¬ãŒãºïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããå€å®åºåã¯ãIDéè€ãæªå®£èšIDåç
§ãåæç¶æ
ã®å®£èšäžæ£ãé·ç§»ã€ãã³ãã®æªèšå
¥ãå°éäžèœãªç¶æ
ãããããšã³ãç¶æ
ãã©ã®ã±ãŒã¹ãããèŠæ±ãããªãç¶æ
/ããŒã¿åºåãã©ã®ã±ãŒã¹ã® update ãééããªãé·ç§»ãäŸçµŠå
äžåšãæ¬æè£ä»ããªããäŸçµŠéå°ãåäžããŒã¿ãæŽæ°ããè€æ°ã±ãŒã¹ãå
±ææ¹é(shared)ãš updateèŠæ±ã®äžäžèŽãå
±ææ¹é(exclusive)ãšå
±æå®äœã®äžäžèŽãäžæ£é·ç§»ã®èŠæ±ãäžéè¶
éãç¶æ
å€ååæã®åºåã«updateèŠæ±ãç¡ããã®ååºåã«ã€ããŠé倧床ã»å®çŸ©ã»æšå¥šã¢ã¯ã·ã§ã³ãå«ããåäžããŒã¿ã®å宿¹æ³ïŒdataItemId åªå
ãç¡ããã° dataClassIdïŒããŒå±æ§ïŒã被èŠçã¯æ¬æè£ä»ããééããèŠæ±ã ããååã«æ°ããããšãå®è¡é åºã»äŸåé¢ä¿ã»ã¯ãªãã£ã«ã«ãã¹ã察象å€ãšããããšãããã³æ¬æ€æ»ãæž¡ãããããŒã¿åºåã»å®äœã»ãã¹ãã±ãŒã¹ã«å¯ŸããŠã®ã¿æç«ãããšããéçãæ³šèšãšããŠæã€ã
testplan://template/standardãã¹ãèšç»æžãã³ãã¬ãŒãïŒJSTQBæºæ 15ç« æ§æïŒã®æ§é ããŒã¿ïŒJSONïŒãå
¬éãããåã»ã¯ã·ã§ã³ã®èŠåºãã»å¿
é ãã©ã°ã»å
¥åãããã³ã°ïŒfieldKeyïŒã«å ããåºå®ãªãã¡ã¬ã³ã¹ïŒãã¹ãã¿ã€ãã»ã«ã¿ãã°ãã€ã³ã·ãã³ãã©ã³ã¯ãå€å®ã¹ããŒã¿ã¹ãæšæºã¡ããªã¯ã¹çïŒãå«ãã
jstqb://glossary/coreJSTQBïŒISTQBïŒçšèªã®ãã©ãã¬ãŒãºéïŒãã¹ãã¬ãã«ã»ãã¹ãã¿ã€ãã»éå§åºæº/çµäºåºæºã»ãã¹ãæ¡ä»¶/ãã¹ã芳ç¹ã»ã¬ãã¥ãŒã¿ã€ãçïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå ¬éããã
testplan://review/checklistãã¹ãèšç»æžã®æå³çã¬ãã¥ãŒçšãã§ãã¯ãªã¹ãïŒJSTQB芳ç¹ãçšèªéãžã®çžäºåç §ä»ãïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå ¬éããã
review_test_basisãã¹ãããŒã¹ïŒèŠä»¶ã»ä»æ§ïŒã®MarkdownææžäžåŒãå ¥åãããšãIDéè€ã»æªè§£æ±ºåç §ã»ãã¬ãã£ãã¯ã¹éžè±ã»ææ§èªã»æ°é衚çŸã決å®çã«æ€æ»ããæå³çãã§ãã¯ãªã¹ãã»äŸé Œå ãžã®è³ªåç¶éåœ¢ã»æ¹åææ¡ã䜵ããŠè¿ãã
testbasis://review/checklistãã¹ãããŒã¹ïŒèŠä»¶ã»ä»æ§ïŒã¬ãã¥ãŒçšã®æå³çãã§ãã¯ãªã¹ãïŒæ¹åã¢ã¯ã·ã§ã³ã»çšèªéãžã®çžäºåç §ä»ãïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå ¬éããã
analyze_requirementsè€æ°ã®ãã¹ãããŒã¹ææžã暪æåæããèŠä»¶IDäœç³»ã»æ°é衚çŸã®å
šææžæšªæéçŽã»å¢çå€åè£ïŒdesign_boundary_values 飿ºïŒã»çšèªå®çŸ©ãšæ¬æäœ¿çšã®ç
§åã»ææ§èªæ€åºã決å®çã«è¡ããæ ¹æ äœçœ®å¿
é ã®ææè¡šä»ãMarkdownãšããŠè¿ããèŠä»¶IDâææžåã»è¡ç¯å²ã»åŒçšã©ãã«ã®æ ¹æ äœçœ®ïŒrequirementSourcesïŒãJSONä»ãã§åºåããextract_test_conditions / generate_test_cases ã«ãã®ãŸãŸåŒãç¶ãããåè³ªç¹æ§ãããã³ã°ã»ã¹ããŒã¯ãã«ããŒå¥åœ±é¿ã»å€æŽå·®å4åºåã¯åŒã³åºãåŽLLMãžã®æç€ºãšããŠåºåããããæ¢å®ïŒverbose æªæå®/falseïŒã§ã¯åŒã³åºãå
LLMã®contextã«èŒãèŠæš¡ã«åãããããIDéè€ã»æªè§£æ±ºåç
§ã®äžèЧïŒ2.1ç¯ïŒã»æ ¹æ äœçœ®ïŒ2.6ç¯ïŒã»ææè¡šïŒ3ç« ãseverityéé ïŒã«ä»¶æ°äžéãé©çšããæã¡åã£ãç®æã«ã¯å¿
ãå
šä»¶æ°ã»çç¥ä»¶æ°ã»verbose: true ã§å
šä»¶ååŸã§ããæšãæç€ºãããå
šä»¶ãå¿
èŠãªå Žå㯠verbose: true ãæå®ãããææžå
šæãåãåãããŒã«ïŒanalyze_requirements / review_test_basis / audit_id_population / review_test_specificationïŒã¯ãæå
¥ãããããã¹ãã®èŠæš¡ãšæ€åºéïŒæåæ°ã»è¡æ°ã»èŠåºãæ°ã»æ€åºIDæ°ã»æ°å€ããŒã¯ã³æ°ïŒããå
¥åãã€ãžã§ã¹ãã衚ãšããŠå
é ã«åºåããæ€åºIDã0ä»¶ã®ææžããã¬ãã£ãã¯ã¹ã®æ€åºã極端ã«å°ãªãææžãæç²æå
¥ã®çããšã㊠[medium] ã§ææãããèŠåºãã©ãã«ãææžå
šäœã§1çš®é¡ãããªã倧ããªææžïŒWordã®æ°æ§å¯Ÿç
§è¡šã®ããã«IDäœç³»ã # èŠåºããåããªãå®åææžïŒã§ã¯ãææã®ç« ç¯ããã€ã衚ã®è¡ã»åã¢ã³ã«ãŒïŒè¡šèŠåºãè¡ã®èŠçŽïŒããŒã¿è¡çªå·ïŒåïŒè¡çªå·ïŒã§è§£æ±ºãã代æ¿ã¢ã³ã«ãŒã䜿ã£ãäºå®ãšãã®è§£æ±ºæ¹åŒãå
¥åãã€ãžã§ã¹ãã® [info] ææããã³æ³šèšè¡ãšããŠæç€ºãããèŠåºãããã€ã衚ãç¡ãç®æã¯ (èŠåºããªã) ã®ãŸãŸæ®ãã
requirements_analysis_interview質å圢åŒã§èŠä»¶åæã®ã³ã³ããã¹ããåéããããã®ã¬ã€ããéçºèæ¯ã»åæå¯Ÿè±¡ææžã»ã¹ã³ãŒãã»ã¹ããŒã¯ãã«ããŒã»å€æŽå·®åçã確èªããanalyze_requirements ãåŒã³åºãããã¢ã·ã¹ã¿ã³ããèªå°ãããä»»æåŒæ° subjectName ãåãåãã
quality://characteristics/product補ååè³ªç¹æ§ã¢ãã«ïŒèªäœãã©ãã¬ãŒãºãæ©èœé©åæ§ã»æ§èœå¹çæ§ã»äºææ§ã»äœ¿çšæ§ã»ä¿¡é Œæ§ã»ã»ãã¥ãªãã£ã»ä¿å®æ§ã»ç§»æ€æ§ã®8ç¹æ§ïŒãå¯ç¹æ§ã»ççŒç¹ã»é¢é£ãã¹ãã¿ã€ãä»ãã®æ§é åããŒã¿ïŒJSONïŒãšããŠå ¬éããã
testbasis://id-patternsèŠä»¶IDã»æ©èœIDã®è¡šèšããã«å¯Ÿå¿ããæ£èŠè¡šçŸãã¿ãŒã³éãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããanalyze_requirements / review_test_basis ã® idPatterns åŒæ°ã«ãã®ãŸãŸã³ããŒããŠäœ¿ãããidPatterns ã«æž¡ããã¿ãŒã³ã¯ãã£ããã£ã°ã«ãŒãæ°ã§è§£éãå€ããïŒ1ã°ã«ãŒãïŒgroup 1 å
šäœãIDãšããŠæ±ãïŒ2ã°ã«ãŒãïŒprefix-number ãšããŠåæ§æïŒ0ã°ã«ãŒãïŒãããå
šäœïŒãæ°å€ã®ã¿ã»ãããåºåãã»ã¢ã³ããŒã¹ã³ã¢åºåãã®IDã¯1ã°ã«ãŒãã®ãã¿ãŒã³ã§æå®ãããšåæ¬ãšåã衚èšã®IDã«ãªãã
extract_test_conditionsãã¹ãæ¡ä»¶ãããã¹ãããŒã¹ïŒã¹ããŒã¯ãã«ããŒïŒãªã¹ã¯ïŒã¬ã€ãã¯ãŒããã®4系統ããå°åºãããå°åºå
ïŒsource + derivedFromïŒãå¿
é ã¡ã¿ããŒã¿ãšããŠæ€æ»ãããèŠä»¶IDÃãã¹ãæ¡ä»¶ã®åæ¹åã«ãã¬ããžãããªã¯ã¹ã»æªã«ããŒèŠä»¶IDã»èгç¹ã«ããŽãªã®æªäœ¿çšã»æ¡ä»¶IDã®éè€/æ¬ çªã»åªå
床æªèšå®ã»derivedFrom ã®æªè§£æ±ºåç
§ã»æªç¥ã®æšå¥šææ³IDãæ±ºå®çã«æ€åºãããªã¹ã¯ã¹ã³ã¢ïŒåœ±é¿åºŠÃçºçå¯èœæ§Ã倿Žå·®åéã¿ïŒããã®åªå
床å°åºãšå®£èšåªå
床ã®éžè±å€å®ãæ·»ããMarkdownãè¿ããderivedFrom 㯠ID æååã«å ã㊠{kind, id} 圢åŒïŒrequirement / risk / stakeholder / guidewordïŒã§çš®å¥ãæç€ºã§ããçš®å¥ããšã«å¯Ÿå¿ããæ¯éå£ãšç
§åãããanalyze_requirements ã® requirementSources ãæž¡ããæ¡ä»¶ããšã« sourceRefs ãæå®ãããšãæ¡ä»¶è¡šã«ææžåã»è¡çªå·ã®æ ¹æ äœçœ®ã衚瀺ãããæªç¹å®ã®æ¡ä»¶ãæ€åºãããã芳ç¹ã«ã¿ãã°ã»ã¬ã€ãã¯ãŒãèŸæžã»ãªã¹ã¯åæãã¬ãŒã ã«åºã¥ãè¿œå æŽãåºãã¯åŒã³åºãåŽLLMãžã®æç€ºãšããŠåºåããããpersonas ã¯ã屿§ïŒdemographicsïŒïŒçºèšã»æèïŒsaysAndThinksïŒïŒç®æšïŒgoalsïŒïŒäžæºç¹ïŒpainPointsïŒãã®4象éã§èšè¿°ã§ãããã«ãœã衚ã¯4象éã®åã§åºåãããæªèšå
¥ã®è±¡éããããã«ãœãã¯æ±ºå®çã«æ€åºãããïŒæ§åœ¢åŒã® concerns ã¯äžæºç¹ã®ãã©ãŒã«ããã¯ãšããŠåŒãç¶ãæå¹ïŒã
test_condition_interview質å圢åŒã§ãã¹ãæ¡ä»¶æœåºã®ã³ã³ããã¹ããåéããããã®ã¬ã€ããèŠä»¶IDæ¯éå£ã»ãã¹ãæ¡ä»¶ã®æ¬äœïŒæ¡ä»¶ID/察象/æ¡ä»¶æïŒã»å°åºç³»çµ±ïŒtestbase/stakeholder/risk/guidewordïŒã»å°åºå
IDã»èгç¹ã«ããŽãªã»åªå
床ãšå€å®åºæºã»ãªã¹ã¯3軞ã»ãã«ãœã/ãªã¹ã¯äžèЧã»ãã¹ãããŒã¹å
ã®åºå
žäœçœ®ã確èªããextract_test_conditions ãåŒã³åºãããã¢ã·ã¹ã¿ã³ããèªå°ãããèŠä»¶IDæ¯éå£ãå
ã«åºããããä¿ããæ¯éå£ãçž®ãããšæªã«ããŒ0ä»¶ãèŠããã®å€ã«ãªãããšãæç€ºãããä»»æåŒæ° subjectName ãåãåãã
testcondition://perspectives/catalogãã¹ã芳ç¹ã«ã¿ãã°ïŒèªäœãã©ãã¬ãŒãºãæ©èœã»å¢çã»åå€ã»ç¶æ é·ç§»ã»äžŠè¡ç«¶åã»é害ååŸ©ã»æ§èœè² è·ã»ã»ãã¥ãªãã£ã»ãªã°ã¬ãã·ã§ã³çã®18ã«ããŽãªïŒãã芳ç¹ã»ççŒç¹äŸã»é¢é£åè³ªç¹æ§ã»æšå¥šææ³ä»ãã®æ§é åããŒã¿ïŒJSONïŒãšããŠå ¬éããã
testcondition://guidewords/dictionaryçç®ç¹èªåœïŒ12ä»¶ïŒã»ã¬ã€ãã¯ãŒãèªåœïŒ16ä»¶ïŒã»è³ªåãã³ãã¬ãŒãã»éçšæé ãæ§é åããŒã¿ïŒJSONïŒãšããŠå ¬éãããçç®ç¹1Ãçç®ç¹2Ãã¬ã€ãã¯ãŒããæãåããããã¹ãããŒã¹ã«æžãããŠããªããã¹ãæ¡ä»¶ãæ©æ¢°çã«æŽãåºãããã«äœ¿ãã
testcondition://risk/frameãªã¹ã¯åæãã¬ãŒã ïŒåœ±é¿åºŠè»žã»çºçå¯èœæ§è»žã»å€æŽå·®å軞ã»ã¹ããŒã¯ãã«ããŒå¥åœ±é¿æ ã»ãªã¹ã¯ã¹ã³ã¢ç®åºåŒã»ã¹ã³ã¢ããåªå
床ãžã®ååïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããä»»æè»žãšããŠãé節床4ãµã軞ïŒçŽæ¥åœ±é¿ã»æ³¢å圱é¿ã»çæééã»é·æééãRA-SEV-01ãRA-SEV-04ïŒãšS/A/Bé節床åºåãçºçé »åºŠ2ãµã軞ïŒå©çšé »åºŠã»çºçããããä¿æ°ãRA-USAGEïŒRA-PRONENESSãä¿æ°èª¿æŽèŠå RA-PF-01ãïŒãããã³ãªã¹ã¯Ãã¹ããŒã¯ãã«ã圱é¿è¡åãå«ãããããã¯æªèšå
¥ã§ãæ¢åã®åœ±é¿åºŠÃçºçå¯èœæ§Ã倿Žå·®åã®3軞ã¹ã³ã¢ã§è©äŸ¡ãå®çµããïŒextract_test_conditions ã® 4.5ç¯ã»8ç¯ã«åæ ïŒã
testcondition://factor/ralph-frameå ååè§£ãã¬ãŒã ïŒèªäœãã©ãã¬ãŒãºïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããå åã®4åé¡ïŒFC-01ãFC-04ãä¿¡å·å åã»èª€å·®å åã»ç¶æ
å åã»å¶åŸ¡å åïŒã®å®çŸ©ã»åãã»æ°Žæºã®å²ãåœãŠæ¹ãæ°Žæºãã¥ãŒãªã¹ãã£ãã¯6ä»¶ïŒFLH-01ãFLH-06ãç¯å²åã»åæåã»æç¡åã»æ°éåã»æéåã»å£ååïŒãå åID/æ°ŽæºIDã®æ¡çªèŠçŽãæŽãåºãæŒãã®èªå·±ç¹æ€ãããã³ design_boundary_values / design_equivalence_partitioning / design_decision_table / design_pairwise ãžã®åŒãæž¡ãèŠçŽïŒFHO-01ãFHO-04ããããã availableïŒãå«ããçµåãææ³ã®å
¥åãšãªãå åã»æ°Žæºãäœç³»çã«æŽãåºãããã«ãææ³é©çšã®å段ã§äœ¿ãã
generate_test_casesãã¹ãæ¡ä»¶ãããã¹ãã±ãŒã¹ä»æ§ãå°åºãããäºå±€æ§æ: (1) 決å®çå±€ã¯ãå¢çå€åæã»åå€åå²ã»ç¶æ
é·ç§»ã®åå
¥åããç¶²çŸ
察象äžèŠ§ãæ©æ¢°çã«æ§ç¯ããç¶²çŸ
çã«ãŠã³ãã»æªå
è¶³ã®ç¶²çŸ
察象ã»ãã¹ãæ¡ä»¶Ããã¹ãã±ãŒã¹ãã¬ãŒãµããªãã£ã»ã±ãŒã¹IDã®éè€/æ¬ çª/ãã¬ãã£ãã¯ã¹äžäžèŽã»ç±æ¥ã¡ã¿ããŒã¿ã®æªè§£æ±ºåç
§ã»æåŸ
çµæã®äž»èгèª/空æ¬ã»æé ã®ç²åºŠã»éŸå€ã®çŽå€åã蟌ã¿ã決å®çã«æ€æ»ãããããã«ã宣èšãããç¶²çŸ
察象IDãã±ãŒã¹æ¬æïŒã¿ã€ãã«ã»åææ¡ä»¶ã»æé ã»äºåŸæ¡ä»¶ïŒããè£ä»ããããããç
§åããŠãè£ä»ãããå
è¶³çãã宣èšããŒã¹ã®ç¶²çŸ
çãšäžŠã¹ãŠåºãïŒç¶²çŸ
察象IDã®æµçšã ãã§ç¶²çŸ
çãç·ã«ãªãç¶æ
ãæ€åºããïŒãä»»æå
¥å testBasisDocumentsïŒãã¹ãããŒã¹å
šæïŒãæž¡ããšæåŸ
çµæã®åŒçšæèšã»IDããã¹ãããŒã¹ã«å®åšããããç
§åããïŒæªæå®æã¯ãæªå®æœ(èŠç¢ºèª)ããšæç€ºããïŒãå ããŠãtestCases[].testLevel / externalDependencyIds / estimatedDurationSeconds / declaredTestSizeïŒããããä»»æïŒãæž¡ããšãtestdesign://testsize/classification-criteria ã®å®¢èгçåºæºïŒå€éšäŸåã®æç¡ã»å®è¡æéäžéïŒã§ãã¹ããµã€ãºãåé¡ãã宣èšãµã€ãºãšã®äžäžèŽã»ãã¹ãã¬ãã«ãšãµã€ãºã®äžæŽåã»ãµã€ãºæ§ææ¯ã®åãã»ãã¹ãã¬ãã«éã®ç¶²çŸ
察象éè€ãæ€æ»ããïŒå€å®å
¥åãç¡ãå Žåã¯ãå€å®äžå¯ããæç€ºããïŒã(2) æå³çå±€ã¯ããã¹ãã±ãŒã¹æ¬æïŒåææ¡ä»¶ã»æé ã»æåŸ
çµæïŒã®çµã¿ç«ãŠã®ã¿ãåŒã³åºãåŽLLMãžã®æç€ºãšããŠè¿ããtestCases ãæªæå®ã»ç©ºã®å Žåã¯ãçææç€ºã®ã¿ãã®åºåã«ãªããderivedFrom 㯠ID æååã«å ã㊠{kind, id} 圢åŒïŒrequirement / risk / stakeholder / guidewordïŒã§çš®å¥ãæç€ºã§ããriskIds / personaIds ãæž¡ããšçš®å¥ããšã«å¯Ÿå¿ããæ¯éå£ãšç
§åãããrequirementSources / testConditions[].sourceRefs / testCases[].sourceRefs ãæž¡ããšã察象ãã¹ãæ¡ä»¶è¡šã»ã±ãŒã¹è©³çްã»ãã¬ãŒãµããªãã£è¡šã«æ ¹æ äœçœ®ïŒææžåã»è¡çªå·ïŒãåŒãç¶ãããã
test_design_interview質å圢åŒã§ãã¹ãèšèšã®ã³ã³ããã¹ããåéããããã®ã¬ã€ãã察象ãã¹ãæ¡ä»¶ã»ãã¹ãããŒã¹ã®ç¹åŸŽã»å¢çå€/åå€ã¯ã©ã¹ã»ç¶æ
é·ç§»ã»å åæ°Žæºã»åææ¡ä»¶ã»éŸå€ãã©ã¡ãŒã¿çã確èªããgenerate_test_cases ãåŒã³åºãããã¢ã·ã¹ã¿ã³ããèªå°ãããä»»æåŒæ° subjectName ãåãåãã
testdesign://techniques/catalogãã¹ãææ³ã«ã¿ãã°ïŒèªäœãã©ãã¬ãŒãºãå¢çå€åæã»åå€åå²ã»ãã·ãžã§ã³ããŒãã«ã»ç¶æ
é·ç§»ã»ãã¢ã¯ã€ãºã»ãŠãŒã¹ã±ãŒã¹/ã·ããªãªã»CRUD/ããŒã¿ã©ã€ããµã€ã¯ã«ã»ç«¶å/ã¿ã€ãã³ã°ã»æ¢çŽ¢çãã¹ã/ãšã©ãŒæšæž¬/ãã§ãã¯ãªã¹ãããŒã¹ããã¹ãã®13ææ³ïŒãšããã¹ãããŒã¹ã®ç¹åŸŽããã®ææ³éžå®æ±ºå®è¡šïŒ10è¡ïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããgenerate_test_cases / generate_exploratory_charters ãææ³æšå¥šãšç¶²çŸ
åºæºè¡šç€ºã«å©çšããã
testdesign://testsize/classification-criteriaãã¹ããµã€ãºåé¡åºæºïŒèªäœæŽçãGoogle Test Sizes ã®èãæ¹ãåèã«ããç¬èªãã©ãã¬ãŒãºïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããå€éšäŸåã®å€å®è»ž8ä»¶ïŒå€éšãã¹ããžã®ãããã¯ãŒã¯ã¢ã¯ã»ã¹ã»æ°žç¶ããŒã¿ã¹ãã¢ã»ãã¡ã€ã«ã·ã¹ãã ã»å¥ããã»ã¹èµ·åã»äžŠè¡å®è¡ã»å®æ©/åšèŸºæ©åšã»ç»é¢æäœã»å®æéåŸ
ã¡ïŒãšãã¹ã¢ãŒã«/ããã£ã¢ã /ã©ãŒãžã®3ãµã€ãºïŒå®è¡æéäžé 60/300/1800ç§ã蚱容ããå€å®è»žã劥åœãªãã¹ãã¬ãã«ãæšå¥šæ§ææ¯ïŒãå®çŸ©ãããgenerate_test_cases ããã¹ãã¬ãã«é
åã®åŠ¥åœæ§æ€æ»ã«å©çšãããå€éšåºæºãžã®é©åã䞻匵ãããã®ã§ã¯ãªãã
review_test_specificationããã¹ãããŒã¹ã«å¯ŸããŠãã¹ã仿§æžãååãããè©äŸ¡è»žã«ããã¹ãããŒã¹ææžäžåŒãšãã¹ã仿§æžæ¬æïŒãã©ãŒãããäžåïŒãä»»æã® testCases / testConditions / risks ãå
¥åãšããŠåãåããèŠä»¶IDã»ãã¹ãæ¡ä»¶IDã»ãªã¹ã¯IDã®3系統ã«ã€ããŠåæ¹åã«ãã¬ããžïŒforward: æªã«ããŒIDãreverse: æ ¹æ äžæã»éå°ãã¹ãåè£ïŒãæ§ç¯ããID衚èšã®åæïŒEH100 ãš EH-100 ã®è¡šèšããïŒã»ã±ãŒã¹IDã®éè€ã»æåŸ
çµæã®ç©ºæ¬ã»åªå
床ã®ä»äžç¶æ³ãšå€å®åºæºã®å®£èšæç¡ã»åææ¡ä»¶ã®ãã¬ãŒã¹ãã«ããŒã»æé æ°ãšæåŸ
çµææ°ã®ãã©ã³ã¹ã»äž»èгèªã»æåŸ
çµæã®åŒçšæèš/IDã®ãã¹ãããŒã¹å®åšç
§åã»ç¶²çŸ
åºæºã®å®£èšæç¡ã決å®çã«æ€æ»ãããæå³çã¬ãã¥ãŒçšãã§ãã¯ãªã¹ãïŒ14é
ç®ïŒãšæ¹åææ¡ã䜵ããŠè¿ããtestCases æªæå®æã¯IDæœåºããŒã¹ã®ç°¡æãã§ãã¯ã®ã¿ãè¿ãã
test_specification_review_interview質å圢åŒã§ãã¹ã仿§æžã¬ãã¥ãŒã®ã³ã³ããã¹ããåéããããã®ã¬ã€ãããã¹ãããŒã¹ææžäžåŒã»ã¬ãã¥ãŒå¯Ÿè±¡ã®ãã¹ã仿§æžæ¬æã»æ§é åãã¹ãã±ãŒã¹ã»èŠä»¶IDæ¯éå£ã»ãã¹ãæ¡ä»¶äžèЧã»ãªã¹ã¯äžèЧã»ID衚èšã®èŠåã»è¿œå ã®ææ§èª/䞻芳èªã確èªããreview_test_specification ãåŒã³åºãããã¢ã·ã¹ã¿ã³ããèªå°ãããtestCases æªæå®ã§ã¯IDæœåºããŒã¹ã®ç°¡æãã§ãã¯ããåºãªããããæ§é åãã¹ãã±ãŒã¹ãçšæã§ããããå¿
ã確èªããããä»»æåŒæ° subjectName ãåãåãã
testspec://review/checklistãã¹ã仿§æžã¬ãã¥ãŒçšã®æå³çãã§ãã¯ãªã¹ãïŒç¶²çŸ æ§ã»ãã¬ãŒãµããªãã£ã»æåŸ çµæã®æŽåã»ææ³ã®é©åãã»å®è¡å¯èœæ§ã»èŠ³æž¬å¯èœæ§ã»åçŸæ§ã»ç¬ç«æ§ã»ããŒã¿æºåå¯èœæ§ã»ç°å¢æå®ã»å€æŽå·®åãžã®éã¿ä»ãã»åå©çšæ§ã»çšèªäžè²«æ§ã»ææ³éžå®æ ¹æ ã®14é ç®ïŒããæ¹åã¢ã¯ã·ã§ã³ã»çšèªéãžã®çžäºåç §ä»ãã®æ§é åããŒã¿ïŒJSONïŒãšããŠå ¬éããã
generate_exploratory_chartersæ¢çŽ¢çãã¹ãïŒãšã©ãŒæšæž¬ã»ãã§ãã¯ãªã¹ãããŒã¹ããã¹ããå«ãçµéšããŒã¹ææ³ïŒã®ãã£ãŒã¿ãŒè¡šãçæãããäºå±€æ§æ: (1) 決å®çå±€ã¯ã芳ç¹åºåã«ã¿ãã°ãåºã«ãã£ãŒã¿ãŒIDã®éè€/æ¬ çª/ãã¬ãã£ãã¯ã¹äžäžèŽã»æªç¥ã®èгç¹åºåIDã»ç±æ¥ã¡ã¿ããŒã¿ïŒderivedFromïŒã®æªè§£æ±ºåç
§ã»èгç¹åºåã®æªäœ¿çšã»é«åªå
床ãã¹ãæ¡ä»¶/ãªã¹ã¯ã®æªã«ããŒã»ã¿ã€ã ããã¯ã¹ãšæéäºç®ã®è¶
éã»ããã·ã§ã³æã®äž»èгèªã決å®çã«æ€æ»ããã(2) æå³çå±€ã¯ãããã·ã§ã³æïŒäœã確èªããã©ãæºãã¶ããïŒã®èšèªåã®ã¿ãåŒã³åºãåŽLLMãžã®æç€ºãšããŠè¿ããcharters ãæªæå®ã»ç©ºã®å Žåã¯ãçææç€ºã®ã¿ãã®åºåã«ãªããæ¢åã®ãã£ãŒã¿ãŒè¡šã charters ã«æž¡ãã°ãæ¢åææç©ã®ã¬ãã¥ãŒãšããŠãæ©èœãããä»»æã® deterministicallyCoveredConditionIdsïŒå¢çå€åæã»åå€åå²çã®æ±ºå®çææ³ã§æ¢ã«ãã¹ãã±ãŒã¹åæžã¿ã®ãã¹ãæ¡ä»¶IDïŒãæž¡ããšãæ¢çŽ¢çãã¹ãã¯æ±ºå®çææ³ã®è£å®ãšããäœçœ®ã¥ãã«æ²¿ã£ãŠããã®æ¡ä»¶ãé«åªå
床ãã¹ãæ¡ä»¶ã®æªã«ããŒæ€æ»ããé€å€ããã
exploratory_charter_interview質å圢åŒã§æ¢çŽ¢çãã¹ãã®ãã£ãŒã¿ãŒèšèšã®ã³ã³ããã¹ããåéããããã®ã¬ã€ãã察象é åã»ãã¹ãæ¡ä»¶ã»æ¢åãã¹ãã±ãŒã¹ã§æèãªç®æã»éå»é害/çµéšäžã®åæã»èгç¹åºåã»ã»ãã·ã§ã³æéäºç®ã»å®æœè
/ã¹ãã«ã»èšé²æ¹æ³ã»åæ¢æ¡ä»¶ã確èªããgenerate_exploratory_charters ãåŒã³åºãããã¢ã·ã¹ã¿ã³ããèªå°ãããä»»æåŒæ° subjectName ãåãåãã
testdesign://exploratory/chartersæ¢çŽ¢çãã¹ããã£ãŒã¿ãŒã«ã¿ãã°ïŒèªäœãã©ãã¬ãŒãºãæ©èœæšªæã»ç¶æ
/äžæã»ããŒã¿æŽåã»éçš/äŸå€ã»ç°å¢/æ§æã»æå»å¢çã®6芳ç¹åºåïŒãã確èªèгç¹ã»æäœèгç¹ã»é¢é£èгç¹åºåã»æšå¥šã¿ã€ã ããã¯ã¹ã»åæ¢ã®ç®å®ã»ãã£ãŒã¿ãŒè¡šã®åºå®åæ§æä»ãã®æ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããgenerate_exploratory_charters ã芳ç¹åºåã«ã¿ãã°ãšãã£ãŒã¿ãŒè¡šã®åæ§æã«å©çšããã
audit_id_populationextract_test_conditions çã®ãæªã«ããŒ0ä»¶ïŒç¶²çŸ
ç100%ãããå
¥åãšããŠå®£èšãããæ¯éå£ã«ããå¹ããªãåé¡ã«å¯Ÿå¿ããããã¹ãããŒã¹ææžäžåŒïŒdocumentsïŒããæœåºããå®çŸ©æžã¿IDå
šéãšãåããŒã«åŒã³åºãã«å®éã«æž¡ãããæ¯éå£ïŒdeclaredPopulationsïŒãçªãåãããã©ã®æ¯éå£ã«ãäžåºŠãæž¡ãããŠããªãIDïŒæªå®£èšIDïŒã»é€å€å®£èšãããIDã»æ¯éå£ã«ã®ã¿ååšããã¹ãããŒã¹ã«å®çŸ©ãç¡ãIDã»ææžå¥ã®æ¯éå£åæ çã»æªæå
¥ææžïŒexpectedDocumentNamesïŒã»æ¯éå£éã®å·®åïŒå·¥çšéã®çž®éïŒã決å®çã«æ€åºãããç¶²çŸ
ç100%ãæ¯éå£ã®çž®éïŒäžéšã®IDã ããç¹°ãè¿ã䜿ãããç¶æ
ïŒã«ããèŠããã®å€ã§ãªãããæ€èšŒããããã«äœ¿ããdesign_* ç³»ããŒã«ãçºè¡ããã³ãã³åºåãã®ç¶²çŸ
察象IDïŒBV: EP: ST: DT: PW: SC: UC: DL: CFG:ïŒãæ¢å®ïŒincludeCoverageTargetIds: trueïŒã§ID玢åŒã«å«ãããããèŠä»¶IDã ãã§ãªãç¶²çŸ
察象IDã®å€±å¹åç
§ã»æªå®£èšãæ€åºã§ãããå€å®åºåãšå¯ŸåŠæé㯠testbasis://population/audit-criteria ãåç
§ããã
id_population_audit_interview質å圢åŒã§IDæ¯éå£ç£æ»ã®ã³ã³ããã¹ããåéããããã®ã¬ã€ããç£æ»å¯Ÿè±¡ã®ãã¹ãããŒã¹ææžã»ç£æ»ãã¹ãææžã®æåŸ
äžèЧã»åããŒã«åŒã³åºãã«å®éã«æž¡ããæ¯éå£ã»åäžããŒã«ã®è€æ°ååŒã³åºãã®èå¥ã©ãã«ã»æå³çã«å¯Ÿè±¡å€ãšããIDãšçç±ã»ID衚èšãã¿ãŒã³ã確èªããaudit_id_population ãåŒã³åºãããã¢ã·ã¹ã¿ã³ããèªå°ãããæ¯éå£ã¯çæ³å€ã§ã¯ãªãå®éã«æž¡ããå®çžŸå€ãèãåããããä»»æåŒæ° subjectName ãåãåãã
testbasis://population/audit-criteriaIDæ¯éå£ç£æ»ã®å€å®åºåã«ã¿ãã°ïŒèªäœãã©ãã¬ãŒãºãæªå®£èšIDã»é€å€å®£èšIDã»ãã¹ãããŒã¹æªå®çŸ©IDã»æªæå
¥ææžã»å·¥çšéã®æ¯éå£çž®éã»ææžåäœã®åæ çäœäžã®6åºåïŒããé倧床ã»èª¬æã»å¯ŸåŠæéä»ãã®æ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããaudit_id_population ãå€å®è¡šã®çæã«å©çšããã
audit_cross_matrixä»»æã®2軞以äžïŒãããã¯ããªã¹ã¯ïŒãã¹ã芳ç¹ã«ããŽãªïŒãã«ãœãïŒæ©èœIDïŒã·ããªãªïŒãã¹ãã³ã³ããïŒãã©ã¡ãŒã¿ïŒãã¹ãã¿ã€ããªã©ïŒãæ±çšã®è»žããŒã¿ïŒaxesïŒãšããŠåãåãã軞ãã¢ã®çŽç©è¡šã決å®çã«çæããŠã**空è¡ã»ç©ºåïŒçåŽã«ãããªãèŠçŽ ïŒ**ãåæããã3軞以äžãæž¡ããå Žåã¯å
šçµåãã®è»žãã¢ïŒaxisPairs çç¥æã¯å®£èšé ã® i<j å
šçµåãïŒã1åã®åŒã³åºãã§äžæ¬å ±åãããçŽã¥ãïŒitems[].linksïŒã¯ç¡åãšããŠæ±ããaâb ãš bâa ã®ã©ã¡ããäžæ¹ã®å®£èšã§ã»ã«ã¯åãŸã£ããšã¿ãªããçæ¹åã®ã¿ã®å®£èšã¯å¥åºåãšããŠå ±åãããå
å¡«çã¯åæ¯ïŒè¡æ° Ã åæ°ïŒãæç€ºããŠç®åºããè¡è¢«èŠçã»å被èŠçã®åæ¯ã¯é€å€å®£èšïŒexclusionsïŒãããèŠçŽ ãé€ãã察象èŠçŽ æ°ãšãããå ããŠãdeclaredCoverage ã«å®£èšãããå
å¡«çãšå®æž¬å€ã®ç
§åãexpectedAxisPopulations ã«ãã軞æ¯éå£ã®çž®éæ€åºãdocuments æ¬æãšã®åæ¹åã®è£ä»ãç
§åïŒæ¬æã«è£ä»ãã®ç¡ã軞èŠçŽ ïŒæ¬æã«å®çŸ©ãããã®ã«ã©ã®è»žã«ãèŒã£ãŠããªãIDïŒãŸã§è¡ããããæ¯éå£ãçž®ããããšã«ããèŠããã®é«å
å¡«çãæ€åºã§ãããdocuments ãšã®ç
§åã§ã¯ãdesign_* ç³»ããŒã«ãçºè¡ããã³ãã³åºåãã®ç¶²çŸ
察象IDïŒBV: EP: ST: DT: PW: SC: UC: DL: CFG:ïŒãæ¢å®ïŒincludeCoverageTargetIds: trueïŒã§å¯Ÿè±¡ã«å«ãããå€å®åºåãšå¯ŸåŠæé㯠testdesign://cross-matrix/audit-criteria ãåç
§ããã
testdesign://cross-matrix/audit-criteriaå€è»žãããªã¯ã¹ç£æ»ã®å€å®åºåã«ã¿ãã°ïŒèªäœãã©ãã¬ãŒãºãCMX-01ãCMX-17 ã®17åºåãæªå®£èšIDãžã®çŽã¥ãã»è»žID/èŠçŽ IDã®éè€ã»ç©ºè¡ã»ç©ºåã»èªè»žå
èŠçŽ ãžã®çŽã¥ãã»çæ¹åã®ã¿ã®çŽã¥ãã»é€å€çç±ã®æªèšå
¥ã»å®£èšå
å¡«çãšå®æž¬å€ã®äžäžèŽã»è»žæ¯éå£ã®çž®éã»ãã¹ãããŒã¹æ¬æã«è£ä»ãã®ç¡ã軞èŠçŽ ã»ãã¹ãããŒã¹ã«å®çŸ©ãããã®ã«è»žã«èŒã£ãŠããªãIDã»çŽç©ã«å¯äžããªã軞ã»ã»ã«æ°ã®äžéè¶
éã»æªå®£èšè»žIDã®åç
§/åäžè»žãã¢ã®æå®ã»å®å
šå€ç«èŠçŽ ã»ãªã³ã¯æ ¹æ ã®æªèšå
¥ã»æ¬æã«è£ä»ãã®ç¡ããªã³ã¯æ ¹æ ïŒããé倧床ã»èª¬æã»å¯ŸåŠæéä»ãã®æ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããaudit_cross_matrix ãå€å®è¡šã®çæã«å©çšããã
audit_test_design_notationsASTER OPENã¯ã©ã¹åå èŠé
ãææç©2ã®äŸãšããŠå
¬åŒã«æãã3èšæ³ïŒFV衚ã»NGTã»ããã€ããããªã¯ã¹ïŒãã宣èšãšå®äœã®ç
§åã§æ±ºå®çã«æ€æ»ãããFV衚ïŒfvTableãæ©èœÃæ€èšŒå
容ã®ãªã¹ãïŒã¯IDéè€ã»æ¬ çªã»æ€èšŒå
å®¹ã®æªèšå
¥ãå®åèªã®ã¿ã§ã®å®è³ªæªèšå
¥ã»æ©èœæ¯éå£ïŒexpectedFunctionIdsïŒãšã®åæ¹åç
§åã»å®£èšæžã¿æ©èœè¢«èŠçãšå®æž¬å€ã®äžèŽãæ€æ»ãããNGTïŒngtããã¹ã芳ç¹ã®éå±€æ§é ïŒã¯ããŒãIDéè€ã»èŠªåé¢ä¿ã®åŸªç°ã»ã«ãŒã0ä»¶/2件以äžã»ãã¹ãæ¡ä»¶ã«èœã¡ãªãèããŒãã»çž®éæãç²åºŠäžæãã»èã®æ·±ãã®åãã»testcondition://perspectives/catalog ã®èгç¹ã«ããŽãªIDãšã®åæ¹åç
§åã»å®£èšæžã¿èããŒãæ°ãšå®æž¬å€ã®äžèŽãæ€æ»ãããããã€ããããªã¯ã¹ïŒyumotsuyoMatrixããã¹ãã¿ã€ãÃãã¹ã芳ç¹ã®ãããªã¯ã¹ïŒã¯è¡åIDéè€ã»é€å€å®£èšã®ãªã空ã»ã«ã»ç©ºè¡/空åã»é€å€çç±ã®æªèšå
¥ã»ãã¹ãæ¡ä»¶æ¯éå£ãšã®åæ¹åç
§åã»å®£èšæžã¿å
å¡«çãšå®æž¬å€ã®äžèŽãæ€æ»ãããå ããŠãFV衚㮠ngtNodeId / ããã€ããããªã¯ã¹ã®è¡åã® ngtNodeId ãä»ããNGTãšã®çžäºåç
§ã3èšæ³ãåç
§ãããã¹ãæ¡ä»¶IDéåãšå
¥å testConditionIds æ¯éå£ãšã®å·®åãªã©ãèšæ³ããŸããã æŽåãŸã§1åã®åŒã³åºãã§æ€åºãããç¶²çŸ
çã»å
å¡«çã®å®£èšïŒclaimedFunctionCoveragePercent / claimedLeafCount / claimedFillRatePercentïŒã¯åæ¯ãæç€ºããŠå®æž¬ãšç
§åããæ¯é壿ªå®£èšæã¯ç®åºãããè£ä»ãäžèœããšããŠææãããåèšæ³ãæªæå
¥ã®å Žåã¯æ€æ»ãè¡ããçææç€ºã®ã¿ãè¿ããå€å®åºåãšå¯ŸåŠæé㯠testdesign://notation/catalog ãåç
§ããã
testdesign://notation/catalogASTERåå èŠé
ãäŸç€ºããFV衚ã»NGTã»ããã€ããããªã¯ã¹ã®3èšæ³ã«ã€ããŠããäœã衚çŸããèšæ³ãããå¿
é èŠçŽ ããæ¢åresource/toolãšã®å¯Ÿå¿ããåºå
žããä¿æããæ§é åããŒã¿ïŒJSONãèªäœãã©ãã¬ãŒãºïŒãããã㊠audit_test_design_notations ãçšããå€å®åºåã«ã¿ãã°ïŒTDN-01ãTDN-25 ã®25åºåïŒããé倧床ã»èª¬æã»å¯ŸåŠæéä»ãã§å
¬éããã
audit_deliverable_consistencyãã¹ãèšç»æžã»ãã¹ãåææžã»ãã¹ãèšèšæžã®ããã«å·¥çšããŸããã è€æ°ææç©ïŒdeliverablesã2件以äžïŒãçªãåãããææç©éã®äžæŽåãæ±ºå®çã«æ€åºãããæ€æ»ã¯4系統: (1) åç
§ãã¹ãããŒã¹ææžãªã¹ãã®çªãåããïŒ2æ¡ã®ææžçªå·ãããŒã«èªäºïŒæªèªãææç©å¥ã®ãããªã¯ã¹ãžå±éããææç©éã§ã®èªäºç¶æ
ã®é£ãéãã»åäžææç©å
ã®èªå·±ççŸã»çåŽã«ããçŸããªãææžãæ€åºãdeclaredReferencedDocuments ãæž¡ãã°å®£èšãªã¹ããšæ¬æå®äœããidPrefixOwners ãæž¡ãã°æªèªå®£èšææžãææããIDãã¬ãã£ãã¯ã¹ã®å®åç
§ãŸã§ç
§åããïŒã(2) IDã®ææç©éçžäºåç
§ïŒã¬ã³ãžè¡šèš R-01ãR-04 ãå±éããããã§ãã©ã®ææç©ã«ãå®çŸ©ãç¡ãåç
§IDã»ã仿æç©ã®åœè©²ç¯ãšå¯Ÿå¿ããããšãã䞻匵ã®è£ä»ãæ¬ èœã»åŸç¶ææç©ããäžåºŠãåç
§ãããªãå®çŸ©æžã¿IDãæ€åºïŒã(3) ç« ç¯åç
§ã®å®åšæ§ïŒN.Mç¯ åœ¢åŒã®åç
§å
çªå·ãåç
§å
ææç©ã®èŠåºãã«å®åšãããã䜵èšãããã©ãã«ãåœè©²ç¯ã®èŠåºãã»æ¬æã«çŸããããåç
§å
ææç©ãæªæå
¥ã§è§£æ±ºã§ããªãããæ€åºïŒã(4) åäžé
ç®ã»åäžIDã®èšè¿°å·®åïŒåäžåäœã§ç°ãªãå€ã2-gram å
å«çãéŸå€æªæºã®èšè¿°ä¹é¢ãã¹ã³ãŒãïŒå¯Ÿè±¡å€ïŒåææ¡ä»¶ïŒå¶çŽïŒãã¹ãã¬ãã«ïŒãã¹ãã¿ã€ãã®åæã®çåŽæ¬ èœïŒãå ããŠãNä»¶ããN/MïŒX%ïŒãã®ãããªä»¶æ°ã»ç¶²çŸ
çã®å®£èšããåäžç®æã«åæãããIDã®å®æ°ã»åå忝ããç®åºããçã»countClaimSubjectsïŒæªæå®æã¯æ¢å®äž»èªã«ã¿ãã°ïŒã§è§£æ±ºãããã¬ãã£ãã¯ã¹ã®å®çŸ©æžã¿ID宿°ïŒïŒæ¯éå£ïŒãšç
§åããåæ¯ãæ¯éå£ã®å®æ°ãšäžèŽããªãèŠããã®ç¶²çŸ
çãšãåååæ¯ã®æ ¹æ ã䌎ããªã裞ã®éæåºŠ%䞻匵ãåºå¥ããŠæ€åºãããä»»æå
¥åïŒdeclaredReferencedDocuments / idPrefixOwners / countClaimSubjectsïŒãæªæå®ã®æ€æ»ã¯åæ Œã§ã¯ãªããæ€æ»äžèœïŒèŠç¢ºèªïŒããšããŠåºåãããID玢åŒã«ã¯ design_* ç³»ããŒã«ãçºè¡ããã³ãã³åºåãã®ç¶²çŸ
察象IDïŒBV: EP: ST: DT: PW: SC: UC: DL: CFG:ïŒãæ¢å®ïŒincludeCoverageTargetIds: trueïŒã§å«ãŸããããããããã®IDã«ã€ããŠãææç©éã®å€±å¹åç
§ã»åŸç¶å·¥çšã§ã®åãããŒããæ€åºã§ãããå€å®åºåãšå¯ŸåŠæé㯠testdesign://deliverable/consistency-criteria ãåç
§ããã
testdesign://deliverable/consistency-criteriaææç©éæŽåæ§ç£æ»ã®å€å®åºåã«ã¿ãã°ïŒèªäœãã©ãã¬ãŒãºãDCC-01ãDCC-17 ã®17åºåãåç
§ææžã®èªäºç¶æ
ã®ææç©éäžäžèŽã»åäžææç©å
ã®èªå·±ççŸã»çåŽã«ããçŸããªãåç
§ææžã»å®£èšãªã¹ããšæ¬æå®äœã®äžäžèŽã»æªèªå®£èšææžç±æ¥IDã®å®åç
§ã»æªè§£æ±ºã®ææç©éIDåç
§ã»å¯Ÿå¿äž»åŒµã®è£ä»ãæ¬ èœã»åŸç¶ææç©ããäžåºŠãåç
§ãããªãå®çŸ©æžã¿IDã»å®åšããªãç« ç¯åç
§ã»ç« ç¯åç
§ã®èŠåºãã©ãã«äžäžèŽã»åç
§å
ææç©ã®æªæå
¥ã»åäžIDã®åäžåäœç°å€ã»èšè¿°æèšã®ä¹é¢ã»å
±éé
ç®åæã®çåŽæ¬ èœã»ä»¶æ°/ç¶²çŸ
ç宣èšã𿬿åæå®äœã®äžäžèŽã»ç¶²çŸ
ç宣èšã®åæ¯ãæ¬æå®çŸ©ID宿°ãšäžäžèŽïŒæ¯éå£ã®çž®éæ€åºïŒã»åååæ¯ã®æ ¹æ ã䌎ããªãéæåºŠ%ã®äž»åŒµïŒãšãå
±éé
ç®çš®å¥ã«ã¿ãã°ïŒDSI-01ãDSI-06ïŒã»èªäºç¶æ
èªåœã»ç¶²çŸ
ç宣èšã®æ¢å®äž»èªã«ã¿ãã°ã»éæåºŠèªåœããé倧床ã»èª¬æã»å¯ŸåŠæéä»ãã®æ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããaudit_deliverable_consistency ãå€å®è¡šã®çæã«å©çšããã
audit_coverage_balanceçææžã¿ãã¹ãã±ãŒã¹çŸ€ïŒtestCasesãgenerate_test_cases ã®å
¥åããã®ãŸãŸæµã蟌ããé
ç®åïŒã軞ããšã«éèšãã芳ç¹ã«ããŽãªå¥ïŒææ³å¥ïŒãã¹ãã¬ãã«å¥ã®ã±ãŒã¹æ°ååžãšèгç¹ã«ããŽãªÃãã¹ãã¬ãã«ã®ã¯ãã¹è¡šã決å®çã«æç€ºãããæ¬ããŒã«ã¯æãŸããååžã®åºæºãæãããååžãã®ãã®ã«ã¯ååŠãä»ããªããååŠã¯ã宣èšãšå®äœã®é£ãéããã«å¯ŸããŠã®ã¿ä»ãã: 芳ç¹ã«ã¿ãã°ã«ãææ³ã«ã¿ãã°ã«ãååšããªãåºåIDã®å®£èšïŒCBC-01 / CBC-02ïŒãååžè»žã®æªå®£èšïŒCBC-03ãååžè¡šã«ã¯å¿
ããæªæå®ãè¡ãåºãïŒãdeclaredDistributions ã«å®£èšããåºåå¥ä»¶æ°ãšå®éèšã®äžäžèŽïŒCBC-04ïŒãååžã«èšäžããã±ãŒã¹IDã deliverables æ¬æã®ã©ãã«ãåºçŸããªãæ°Žå¢ãïŒCBC-05ïŒãæ¬æã«åºçŸããã®ã«éèšå¯Ÿè±¡ãžæå
¥ãããŠããªãã±ãŒã¹IDïŒCBC-06ãæ¯éå£ã®çž®éïŒãå²ãåœãŠ0ä»¶ã®åºåïŒCBC-07ïŒãšååžã®éäžåºŠïŒCBC-08ãæå€§åºåã®å æçã»äžäœ2åºåã®åèšïŒã¯èŠ³æž¬å€ãšã㊠info ã§ã®ã¿æç€ºãããããããŠææç©äžã®ç¬èªçšèªã4çš®ã®èŠåïŒé€æ¬åŒ§èªã»ã«ã¿ã«ãé£ç¶ã»è±å€§æåç¥èªã»å€ªå匷調èªïŒã§æ©æ¢°çã«æœåºããçšèªéã»ã¯ã·ã§ã³äžåšã®ãŸãŸã®ç¬èªçšèªäœ¿çšïŒCBC-09ïŒãã©ã®ææç©ã«ãå®çŸ©ãç¡ãçšèªïŒCBC-10ïŒãå®çŸ©æžã¿ã ãæ¬æã§æªäœ¿çšã®çšèªïŒCBC-11ïŒãå®çŸ©æãäžèŽããªãéè€å®çŸ©ïŒCBC-12ïŒãæ¢ç¥ã«ã¿ãã°çšèªãšã®è¡šèšããåè£ïŒCBC-13ïŒãæ€æ»ãããdeliverables æªæå®æã¯ CBC-05 / CBC-06 / CBC-09ãCBC-13 ããdeclaredDistributions æªæå®æã¯ CBC-04 ããåæ Œã§ã¯ãªããæ€æ»äžèœïŒèŠç¢ºèªïŒããšããŠåºåãããæ§ææ¯(%)ã¯èŠ³æž¬å€ã§ããéæåºŠã§ã¯ãªããããéæåºŠãšããŠæç€ºããå Žå㯠audit_deliverable_consistency ã®ç¶²çŸ
çæ€æ»ã䜵çšããããšãå€å®åºåãšå¯ŸåŠæé㯠testdesign://balance/coverage-balance-criteria ãåç
§ããã
testdesign://balance/coverage-balance-criteriaç¶²çŸ
ãã©ã³ã¹ã»çšèªå®çŸ©ç£æ»ã®å€å®åºåã«ã¿ãã°ïŒèªäœãã©ãã¬ãŒãºãCBC-01ãCBC-13 ã®13åºåãæªç¥ã®èгç¹ã«ããŽãªID宣èšã»æªç¥ã®ææ³ID宣èšã»ååžè»žã®æªå®£èšã»å®£èšååžä»¶æ°ãšéèšå®äœã®äžäžèŽã»èšäžã±ãŒã¹IDã®æ¬æå®åšæ§æ¬ èœã»æ¬æã«ãããæªæå
¥ã®ã±ãŒã¹IDã»1ä»¶ãå²ãåœãŠãããŠããªãåºåã»ååžã®éäžåºŠã®èŠ³æž¬å€ã»çšèªéã»ã¯ã·ã§ã³äžåšã®ãŸãŸã®ç¬èªçšèªäœ¿çšã»ç¬èªçšèªã®å®çŸ©æ¬ èœã»å®çŸ©æžã¿ã ãæ¬ææªäœ¿çšã®çšèªã»åäžçšèªã®éè€å®çŸ©ã»æ¢ç¥ã«ã¿ãã°çšèªãšã®è¡šèšããåè£ïŒããé倧床ã»èª¬æã»å¯ŸåŠæéä»ãã®æ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããããããŠçšèªéèŠåºãããŒã¯ãŒãã»æ±çšèªã¹ããããªã¹ãã»ç¬èªçšèªåè£ã®æœåºèŠåïŒCBT-01ãCBT-04ïŒãä¿æãããååžã¯èŠ³æž¬å€ãšããŠã®ã¿æ±ããæãŸããååžã®åºæºå€ã»ç®æšæ¯çã¯äžåä¿æããªããaudit_coverage_balance ãå€å®è¡šã®çæã«å©çšããã
generate_user_story_mapäžæµã®å©çšç¶æ³ã¢ããªã³ã°ïŒãã¡ã€ã³åæ â ãã«ãœãç«æ¡ â ãŠãŒã¶ãŒã¹ããŒãªãŒããã5éå±€ â ãã¹ãèŠæ±å°åºïŒãæ¯æŽãããäºå±€æ§æ: (1) 決å®çå±€ã¯ãã¢ã¯ãã£ããã£/ã¿ã¹ã¯/ãŠãŒã¶ãŒã¹ããŒãªãŒ/ãã¹ãèŠæ±ã®IDéè€ã»æ¬ çªã»ãã¬ãã£ãã¯ã¹äžäžèŽãéå±€åç
§ïŒpersonaIds / activityId / taskId / storyIdsïŒã®æªè§£æ±ºããŠãŒã¶ãŒã¹ããŒãªãŒã1ä»¶ãçŽã¥ããªããã«ãœãããã¹ãèŠæ±0ä»¶ã®ãã«ãœãããã«ãœã4象éã®æªèšå
¥ããã¹ãèŠæ±è¡ïŒçŸç¶(Before)/å°æ¥(After)/ãã¹ãèŠæ±ïŒã®æ¬ èœããã¡ã€ã³åæèгç¹ã®è¢«èŠç¶æ³ã決å®çã«æ€æ»ããã(2) æå³çå±€ã¯ããã¬ãŒã ã®è³ªåäŸã«åºã¥ãæ·±æãæç€ºã®ã¿ãåŒã³åºãåŽLLMãžè¿ããactivities / tasks / stories / testRequirements ãæªæå®ã»ç©ºã®å Žåã¯ãçææç€ºã®ã¿ãã®åºåã«ãªããæ¢åææç©ãæž¡ãã°ã¬ãã¥ãŒãšããŠæ©èœãããå°åºãããã¹ãèŠæ±ã¯ source="stakeholder" ã®ãã¹ãæ¡ä»¶ãšã㊠extract_test_conditions ãžåŒãæž¡ã察å¿è¡šä»ãã§åºåãããã
persona_journey_interview質å圢åŒã§äžæµã®å©çšç¶æ³ã¢ããªã³ã°ã®ã³ã³ããã¹ããåéããããã®ã¬ã€ãããã¡ã€ã³åæïŒæäŸãµãŒãã¹ã»å©çšè
/åŸæ¥å¡ã®æ§æã»æ¥åãããŒã»ITååŸåã»æ³èŠå¶ã»å£ç¯æ§ïŒâ ãã«ãœã4象éïŒå±æ§ã»çºèšã»æèã»ç®æšã»äžæºç¹ïŒâ ãããã¯ããŽãŒã« â ã¢ã¯ãã£ããã£ã»ã¿ã¹ã¯ â ãŠãŒã¶ãŒã¹ããŒãªãŒ â ãã¹ãèŠæ±ïŒBefore/AfterïŒãé ã«ç¢ºèªããgenerate_user_story_map ãåŒã³åºãããã¢ã·ã¹ã¿ã³ããèªå°ãããä»»æåŒæ° subjectName ãåãåãã
testcondition://persona/journey-frameäžæµã®å©çšç¶æ³ã¢ããªã³ã°çšãã¬ãŒã ïŒèªäœãã©ãã¬ãŒãºïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éããããã¡ã€ã³åæã®èгç¹ïŒDOM-xxãæäŸãµãŒãã¹ã»å©çšè
/åŸæ¥å¡æ§æã»æ¥åãããŒã»ITååŸåã»æ³èŠå¶ã»å£ç¯æ§ïŒããã«ãœã4象éã®å®çŸ©ïŒPQ-01ãPQ-04ã質åäŸã»é¿ããæžãæ¹ä»ãïŒããŠãŒã¶ãŒã¹ããŒãªãŒãããã®5éå±€ïŒUSM-01ãUSM-05ãç²åºŠã®ç®å®ä»ãïŒãçŸç¶(Before)/å°æ¥(After)/ãã¹ãèŠæ±ã®3åå®çŸ©ãš extract_test_conditions ãžã®åŒãæž¡ãèŠçŽã«å ããã¹ããŒã¯ãã«ããŒ2軞è©äŸ¡ãã¬ãŒã ïŒåœ±é¿å SW-INFLUENCE ïŒé¢å¿åºŠ SW-INTEREST ã®4段éå®çŸ©ã4段ã®åæã¹ããã SWS-01ãSWS-04ãæ±ãã¯ã©ã¹ SWC-01ãSWC-03ïŒéç¹ïŒéåžžïŒåèïŒãš4Ã4ã»å
š16çµåãã®å¯Ÿå¿è¡šãextract_test_conditions ãžã®åŒãæž¡ãèŠçŽïŒãå«ããgenerate_user_story_map ãå©çšããã
analyze_cause_effect仿§æïŒã»ã¯ã·ã§ã³åäœïŒã®è«çé¢ä¿ãåå ã»çµæã»å¶çŽãšããŠã¢ãã«åããå
¥åãåãåãããã®ã¢ãã«ã®æŽåæ§ãšã仿§ææ¬æã«ããè£ä»ãããæ±ºå®çã«æ€æ»ãããã¢ãã«åãã®ãã®ïŒæå³çå±€ïŒã¯åŒã³åºãåŽLLMã«å§ããæ±ºå®çå±€ã (1) æªç¥ããŒãåç
§ã»IDéè€ã»IDãã¬ãã£ãã¯ã¹äžäžèŽã»ã°ã©ãã®åŸªç°ã(2) ã©ã®çµæã«ãæ¥ç¶ããªãå€ç«åå ã(3) ã©ã®åå ãããå°ãããªãçµæã(4) äžéããŒãã®çåŽæªæ¥ç¶ã(5) å¶çŽã®æå®äžæ£ïŒå¯Ÿè±¡çš®å¥ã»èŠçŽ æ°ã»éè€ïŒã»å¶çŽã®ççŸã»å¶çŽã«ããåå å€ã®åºå®ã»åé·ãªå¶çŽã(6) åå ã®çåœçµåãæ°ïŒçè«äžé 2^nã»å¶çŽå
è¶³åŸã»å§çž®åŸã®ãã·ãžã§ã³ããŒãã«åæ°ïŒã(7) åžžã«åœã®çµæïŒåå ã«äŸåããªãçµæã(8) åŒçšïŒquoteïŒã®ä»æ§æå®åšç
§åãšåŒçšæªæå®ã(9) ã©ã®ããŒãã«ãçŽã¥ããªãæªã¢ãã«å仿§æã®å
šä»¶åæãšã¢ãã«åçã(10) è«çæ¥ç¶èªïŒãã€ïŒãŸãã¯ïŒãã ãïŒä»¥å€ çïŒã®ã¢ãã«æªåæ ã(11) 宣èšåæ°ïŒexpectedRuleCountïŒãšç®åºåæ°ã®äžäžèŽã(12) çæãããã·ãžã§ã³ããŒãã«å
¥åã design_decision_table ã®ç®åºããžãã¯ãžéããçµæãšã®çªãåããããæ€æ»ãããå¶çŽã¯ exclusive / inclusive / onlyOne / requires / masks ã®5çš®ã蟺㯠identity / notãäžéããŒã㯠and / or ãæå®ã§ãããåºå㯠mermaid ã®åå çµæã°ã©ããå§çž®åŸã«ãŒã«è¡šãããã³ design_decision_table ãžãã®ãŸãŸæž¡ããåŒãæž¡ãJSONãå«ããåå æ°ãäžéïŒæ¢å®12ä»¶ãmaxEnumerationCauses ã§å€æŽå¯ïŒãè¶
ããå Žåãã¢ãã«ã«èŽåœçãªæ§é ææãããå Žåã¯å
šåæãè¡ãããå¶çŽå
è¶³åŸã®åæ°ã»å§çž®åŸã®åæ°ãæšæž¬å€ã§åºããã«ãæªç®åºïŒçç±ïŒããšæèšãããå€å®åºåãšå¯ŸåŠæé㯠testbasis://cause-effect/analysis-criteria ãåç
§ããã
testbasis://cause-effect/analysis-criteriaåå çµæã°ã©ãåæã®å€å®åºåã«ã¿ãã°ïŒèªäœãã©ãã¬ãŒãºãCEG-01ãCEG-20 ã®20åºåãæªç¥ããŒãåç
§ã»IDéè€ã»ãã¬ãã£ãã¯ã¹äžäžèŽã»å€ç«åå ã»å°åºãããªãçµæã»äžéããŒãã®çåŽæªæ¥ç¶ã»ã°ã©ãã®åŸªç°ã»å¶çŽã®æå®äžæ£ã»å¶çŽã®ççŸã»åå å€ã®åºå®ã»åé·ãªå¶çŽã»åžžã«åœã®çµæã»åå ã«äŸåããªãçµæã»ä»æ§æã«ååšããªãåŒçšã»åŒçšæªæå®ã»æªã¢ãã«å仿§æã»è«çæ¥ç¶èªã®æªåæ ã»ææ§èªã®æ®åã»å®£èšåæ°ãšç®åºåæ°ã®äžäžèŽã»ãã·ãžã§ã³ããŒãã«åŒãæž¡ãã®äžæŽåïŒããé倧床ã»èª¬æã»å¯ŸåŠæéä»ãã®æ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããanalyze_cause_effect ãå€å®è¡šã®çæã«å©çšããã
generate_business_requirement_modelæ¥ååŽããèŠããã·ã¹ãã åã®ç®ç â æ¥åãŠãŒã¹ã±ãŒã¹ â æ¥åãã㌠â é§åããæ
å ±ãã®4å±€ã¢ãã«ããæ©èœIDã®ç« ç«ãŠã«åŸå±ããã«åæ§æãããæ±ºå®çå±€ïŒBRC-01ãBRC-15ïŒã¯ãç®ç/æ¥åãŠãŒã¹ã±ãŒã¹/ãããŒå·¥çš/é§åããŒã¿ã®IDéè€ã»æ¬ çªã»ãã¬ãã£ãã¯ã¹äžäžèŽã»æªè§£æ±ºåç
§ïŒç±æ¥ç®çIDã»æ
ãæããŒã«IDã»æå±ãŠãŒã¹ã±ãŒã¹IDã»é§åããŒã¿IDïŒãç®çãšæ¥åãŠãŒã¹ã±ãŒã¹ã®çžäºçŽã¥ãïŒå€ç«ç®çïŒç®çæªçŽã¥ãæ¥åãŠãŒã¹ã±ãŒã¹ïŒãæ©èœIDæ¯éå£ãšã®åæ¹åç
§åïŒæ¯éå£ã®ãã¡æªåç
§ã®æ©èœIDïŒæ¯éå£ã«ç¡ãæ©èœIDã®åç
§ïŒãæ¥åãããŒã®å·¥çš0ä»¶ã®æ¥åãŠãŒã¹ã±ãŒã¹ã»æ
ãææªèšå
¥ã®å·¥çšãã©ã®å·¥çšãããèªã¿æžããããªãé§åããŒã¿ã»ã©ã®é§åããŒã¿ã«ãè§Šããªãæ¥åãŠãŒã¹ã±ãŒã¹ãhasStates 宣èšãš states å®äœã®äžèŽãç®çã®éæå€å®ææšã»æž¬å®æ¹æ³ã®æªèšå
¥ãäŸå€æã®æ¥åéçšïŒBUC-06ïŒã®æªèšå
¥ã宣èšããæ©èœID被èŠçïŒclaimedFeatureCoveragePercentïŒãšç®åºå€ã®äžèŽïŒæ¯é壿ªå®£èšæã¯ featureCoverageBasis="unavailable" ãšããŠè¢«èŠçãç®åºããã宣èšå€ãããã°è£ä»ãäžèœãšããŠææïŒãæ¥åãŠãŒã¹ã±ãŒã¹å¿
é 芳ç¹ïŒuseCaseAspects ã® required:trueïŒã®ç©ºæ¬ãæ€æ»ãããbusinessUseCases ãæªæå®ã»ç©ºã®å Žåã¯çææç€ºã®ã¿ãè¿ããdesign_scenario_flows / design_test_data / audit_cross_matrix ãžã®åŒãæž¡ã衚ïŒBRH-01ãBRH-03ïŒãšããã¹ãç®çã®å°åºãã¬ãŒã ïŒBRH-04ãavailable: falseã#85æªå®è£
ã®ããèªåæ¥ç¶ã¯è¡ããªãïŒãžã®ç³ãéããtestcondition://persona/journey-frame ãšã®åœ¹å²åæ
衚ã䜵ããŠåºåããã
testcondition://business/requirement-frameæ¥åãŠãŒã¹ã±ãŒã¹ã»èŠä»¶ã¢ãã«ã»ãã¬ãŒã ïŒèªäœãã©ãã¬ãŒãºïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éããã4å±€ã®å®çŸ©ïŒBRL-01ãBRL-04ãã·ã¹ãã åã®ç®çã»æ¥åãŠãŒã¹ã±ãŒã¹ã»æ¥åãããŒã»é§åããæ
å ±ïŒãç®çéå±€ïŒBPL-01ãBPL-03ãæ¥åãŽãŒã«ã»ã·ã¹ãã åç®çã»éæå€å®ææšïŒãæ¥åãŠãŒã¹ã±ãŒã¹èгç¹ïŒBUC-01ãBUC-06ãå¿
é ãã©ã°ä»ãïŒãæ¥åãããŒèгç¹ïŒBFL-01ãBFL-05ïŒãé§åããŒã¿èгç¹ïŒBDA-01ãBDA-05ãæšå¥š DataClassKind ä»ãïŒãtestcondition://persona/journey-frame ãšã®åœ¹å²åæ
ïŒæ¥åãããŒã»åœ¹å²/æ
ãæã»ç®æšã®3ãããã¯ã«ã€ããŠãã©ã¡ãåŽã«æ£ãæžããã®èŠçŽïŒãäžæµããŒã«ãžã®åŒãæž¡ãèŠçŽïŒBRH-01ãBRH-04ïŒãå«ããgenerate_business_requirement_model ãå©çšããã
select_regression_suiteãã¹ãæ¡ä»¶ã»ãã¹ãã±ãŒã¹ã®æ¯éå£ãšãããã«å¯Ÿããéžæ(include/exclude)å€å®ã»åããŒãžã§ã³ã¹ã€ãŒãã»åé€çç±ããããªã°ã¬ãã·ã§ã³ã¹ã€ãŒããšããŠäœãæ®ãäœãèœãšããããæ±ºå®çã«æ€æ»ããŠMarkdownã§è¿ããæ¯éå£å€ã®éžæå€å®åç
§ã»éžæå€å®ã®éè€ççŸã»éžæçç±ã®æªèšå
¥ã»é«ãªã¹ã¯é
ç®(riskScore >= highRiskMinScore ãŸã㯠priority: "é«")ã®ééžæã»éžæ/ééžææªæ±ºå®ã®æ¯éå£é
ç®ã»å€æŽå·®ååºå(RA-CHANGE)ã®æªå®£èšã»åœ±é¿ãåããªã(existing-unaffected)é
ç®ã®éžæã»åœ±é¿ç¯å²æ¡ä»¶ã®ééžæ/æªæ±ºå®ã»åããŒãžã§ã³ããåé€ãããé
ç®ã®åé€çç±æªèšå
¥ãšãã®é(åé€ãããŠããªãé
ç®ãžã®åé€çç±å®£èš)ã»åããŒãžã§ã³ã¹ã€ãŒãã®æ¯éå£å€åç
§ã»ã©ãŒãžãµã€ãºåéã»æšå®å®è¡æéã®äºç®è¶
éã»éžæé
ç®ã®ãµã€ãºå€å®å
¥åæ¬ èœã»åœ±é¿ç¯å²è¢«èŠç(TTC-COV-18)ã®å®£èšãšç®åºå€ã®äžäžèŽã»éžæåºæºIDã®æªå®£èšåç
§ã»éžææ¡ä»¶ã«å¯Ÿå¿ããã±ãŒã¹æ¬ èœã»éžæåºæºã®æªå®£èšããå€å®åºåRSC-01ãRSC-20ã§æ±ºå®çã«æ€æ»ãããå ããŠãreexpand_threshold_changes ã®ãææç©å¥ã®åœ±é¿å€å®ãè¡ã computedImpactVerdicts ãšããŠãã®ãŸãŸæž¡ããšã圱é¿å€å®å®äœ(ownerKind/ownerId/verdict)ãš changeCategory ç³åãç
§åãã圱é¿ãããšç®åºãããæ¡ä»¶ã existing-unaffected ãšç³åãããŠãã(RSC-21)ã»åœ±é¿ãããšç®åºãããã±ãŒã¹ãééžæã«ãªã£ãŠãã(RSC-22)ã»åœ±é¿ãªããšç®åºãããæ¡ä»¶ãé倧ç³åãããŠãã(RSC-23)ã»åœ±é¿å€å®å
¥åãæ¯éå£å€ãåç
§ãŸãã¯éè€å®£èšãããŠãã(RSC-24)ãæ€åºããããã§ã圱é¿ç¯å²è¢«èŠçã®åæ¯ãç³åãšå®äœã®åéåã§è£æ£ãããcomputedImpactVerdicts ãæž¡ããªãå Žåã¯è¢«èŠçã basis: "declared-only"ïŒç³åã®ã¿ïŒãšããŠç®åºããå®äœç
§åããŠããªãæšãRSC-25ã§æç€ºããããã¹ããµã€ãºåé¡ã»ãªã¹ã¯ã¹ã³ã¢ç®åºã¯æ¢åã®å
±æçŽé¢æ°(src/testSizeAnalysis.ts / src/testConditionAnalysis.ts)ãåå©çšãããéŸå€ã»ãã©ã¡ãŒã¿å€æŽã«äŒŽãèšèšèªäœã®åå±é㯠reexpand_threshold_changes ã®æ
åœã§ãã察象å€ãææ³ã«ã¿ãã° TTK-17(regression-selection) ããã®ããŒã«ãžæ±ºå®çã«ã«ãŒãã£ã³ã°ããã
testdesign://regression-selection/analysis-criteriaãªã°ã¬ãã·ã§ã³ã¹ã€ãŒãéžæã®å€å®åºåã«ã¿ãã°ïŒèªäœãã©ãã¬ãŒãºãRSC-01ãRSC-25 ã®25åºåãæ¯éå£å€åç
§ã»éžæå€å®ã®éè€ççŸã»çç±æªèšå
¥ã»é«ãªã¹ã¯é
ç®ã®ééžæã»æªæ±ºå®é
ç®ã»å€æŽå·®ååºåã®æªå®£èšã»åœ±é¿ãåããªãé
ç®ã®éžæã»åœ±é¿ç¯å²æ¡ä»¶ã®ééžæ/æªæ±ºå®ã»åé€çç±ã®æªèšå
¥ãšãã®éã»åããŒãžã§ã³ã®æ¯éå£å€åç
§ã»ã©ãŒãžåéã»å®è¡æéäºç®è¶
éã»ãµã€ãºå€å®å
¥åæ¬ èœã»åœ±é¿ç¯å²è¢«èŠçã®å®£èšäžäžèŽã»éžæåºæºIDã®æªå®£èšåç
§ã»å¯Ÿå¿ã±ãŒã¹æ¬ èœã»éžæåºæºã®æªå®£èšã»åããŒãžã§ã³å·®åæªç®åºã»æ¯éå£ä»¶æ°äžéè¶
éã«å ãã圱é¿å€å®å®äœãšã®ç³åççŸïŒåœ±é¿ããâexisting-unaffectedç³åïŒã»åœ±é¿ãããšç®åºãããã±ãŒã¹ã®ééžæã»åœ±é¿ãªããšç®åºãããæ¡ä»¶ã®é倧ç³åã»åœ±é¿å€å®å
¥åã®æ¯éå£å€åç
§/éè€å®£èšã»åœ±é¿å€å®å®äœã®æªé£æºïŒããé倧床ã»èª¬æã»å¯ŸåŠæéä»ãã®æ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããselect_regression_suite ãå©çšããã
threshold_change_interview質å圢åŒã§éŸå€å€æŽåœ±é¿ã®åå±éã®ã³ã³ããã¹ããåéããããã®ã¬ã€ãã倿Žå/倿ŽåŸã®éŸå€ãã©ã¡ãŒã¿è¡šïŒååã»å€ã»åäœã»åºå
žïŒã»å€æŽååŸã®ä»æ§æžæ¬æã»æœåºåè£ã®æ¿èªã»æ¢åã®ãã¹ãæ¡ä»¶/ãã¹ãã±ãŒã¹ã»å¢çå€å€æ°ããã³åå€ã¯ã©ã¹ãšãã©ã¡ãŒã¿ã®æçžã確èªããreexpand_threshold_changes ãåŒã³åºãããã¢ã·ã¹ã¿ã³ããèªå°ãããæªæ¿èªã®æœåºåè£ã§æå¹ãªãã©ã¡ãŒã¿è¡šãæžãæããªãããšãæç€ºãããä»»æåŒæ° subjectName ãåãåãã
analyze_execution_orderãã¹ãã³ã³ãã(ãŸãã¯ãã¹ãã¹ã€ãŒãïŒã±ãŒã¹çŸ€)ã®äŸåé¢ä¿ã»æèŠæéã»å¿
èŠãªãœãŒã¹ãããå®è¡é åº(ããããžã«ã«ãœãŒã)ã»åŸªç°äŸåã»ã¯ãªãã£ã«ã«ãã¹ã»ãªãœãŒã¹ç«¶åã»äŸåæªå®çŸ©ã³ã³ãããæ±ºå®çã«æ€æ»ããŠMarkdownã§è¿ããKahnæ³ã«ããããããžã«ã«ãœãŒããšå®è¡é åºã»äžŠåå®è¡ã°ã«ãŒã(wave)ã®ç¢ºå®ã埪ç°äŸåã®æ€åºãšä»£è¡šéè·¯ã®æç€º(æ€åºæã¯å®è¡é åºã»ã¹ã±ãžã¥ãŒã«ä»¥éãæªç®åºãšãã)ãCPM(ã¯ãªãã£ã«ã«ãã¹æ³)ã«ããES/EF/LS/LFã»ã¹ã©ãã¯ã»ã¯ãªãã£ã«ã«ãã¹ã»ç·æèŠæéã®ç®åºãææ©éå§ã¹ã±ãžã¥ãŒã«äžã®åäžãªãœãŒã¹ã®ç«¶å(capacityè¶
é)ã»äžŠå床äžé(maxParallelism)è¶
éã®æ€åºãäŸåé¢ä¿(dependsOn)ãæªå®£èšã®ããŒãã®å
šä»¶åæãäŸåæ ¹æ (ææç©ã»ãªãœãŒã¹ã»ããŒã¿é
ç®)ã®å®£èšãšå®äœã®åæ¹åç
§åãåè³ªç®æš(SLO)ã»åæ Œåºæº(exitCriteria)ã®æž¬å®å¯èœæ§ãšSLOåç
§ã®åæ¹åç
§åãã¢ãã¿ãªã³ã°ãã§ãã¯ãã€ã³ã(monitoringCheckpoints)ã®å®£èšã»ç¯å²ã»ææšæ¥ç¶ã®ç¹æ€ãdesign_test_architecture ã®ã³ã³ããæ¯éå£(architectureContainerIds)ãšã®èšç»è¢«èŠçã®ç®åºãšå®£èšå€ç
§åãã¯ãªãã£ã«ã«ãã¹ã»ç·æèŠæéã»èšç»è¢«èŠçã®å®£èšå€ãšç®åºå€ã®ç
§åããå€å®åºåEOC-01ãEOC-27ã§æ±ºå®çã«æ€æ»ããããã¹ãã³ã³ãããžã®åå²ã»è²¬åå®çŸ©ã¯ design_test_architecture ã®æ
åœã§æ¬ããŒã«ã¯å¯Ÿè±¡å€ãSUTå
éšã®åŠçé åºã»ã¿ã€ãã³ã°ã®ãã¹ã(ææ³ã«ã¿ãã°TTK-10)ãšã¯å¥æŠå¿µã§ãããææ³ã«ã¿ãã°ã®æ±ºå®çã«ãŠã³ãå¯åŠã¯å€æŽããªãã
testdesign://execution-order/analysis-criteriaãã¹ãå®è¡é åºã»äŸåé¢ä¿åæã®å€å®åºåã«ã¿ãã°ïŒèªäœãã©ãã¬ãŒãºãEOC-01ãEOC-27 ã®27åºåãããŒãIDéè€ã»äŸåå
ã®æ¯éå£å€åç
§/èªå·±äŸåã»åŸªç°äŸåã»äŸåé¢ä¿ã®æªå®£èšã»äŸåæ ¹æ ã®æªèšå
¥/å®äœäžäžèŽã»äŸåã®éè€å®£èšã»æèŠæéã®æªç³åã»å¿
èŠãªãœãŒã¹ã®æªå®£èš/æ¯éå£å€åç
§ã»ãªãœãŒã¹ç«¶åã»äžŠå床äžéè¶
éã»å®£èšãªãœãŒã¹ã®æªäœ¿çšã»å€ç«ããŒãã»ã¯ãªãã£ã«ã«ãã¹/ç·æèŠæé宣èšã®äžäžèŽã»ã¢ãŒããã¯ãã£æ¯éå£ã®æªèšç»ã³ã³ãã/æ¯éå£å€ããŒãã»åæ Œåºæºã®æž¬å®äžèœã»SLOåç
§ã®å®äœäžäžèŽã»ã¢ãã¿ãªã³ã°èšç»ã®æªå®£èš/ç¯å²å€/ææšæªæ¥ç¶ã»èšç»è¢«èŠçã®å®£èšäžäžèŽã»ããŒãä»¶æ°ã®äžéè¶
éã»ã¹ã±ãžã¥ãŒã«æªç®åºïŒããé倧床ã»èª¬æã»å¯ŸåŠæéä»ãã®æ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããanalyze_execution_order ãå©çšããã
analyze_data_flow_timingã·ã¹ãã æ§æèŠçŽ éã®ããŒã¿ãããŒãšã¿ã€ãã³ã°ïŒéä¿¡åšæã»éä¿¡å¥æ©ã»äŒéæéã»ACKã»ã¿ã€ã ã¢ãŠãã»åéïŒãããåäžããŒã¿ãæ«ç«¯ãžå°éãããŸã§ã®æå€§äŒæé
å»¶ïŒé
å»¶çªïŒãšãåäžããŒã¿ãè€æ°çµè·¯ã§äŒæãããšãã®æå€§ä¹é¢æéïŒä¹é¢çªïŒã決å®çã«ç®åºããŠMarkdownã§è¿ããããŒã¿é
ç®ããšã®éšåã°ã©ãäžã§èµ·ç¹ããåå°éã³ã³ããŒãã³ããžã®åçŽãã¹ãå
šåæãã蟺ããšã®æå€§é
å»¶ïŒéä¿¡åŸ
ã¡ïŒåšæç³»ã¯intervalSecondsïŒeventã¯0ãïŒäŒéæéïŒã¿ã€ã ã¢ãŠãÃåéåæ°ïŒãšæå°é
å»¶ïŒäŒéæéïŒãåç®ããŠé
å»¶çªãç®åºãããã¿ã€ãã³ã°ãæªå®çŸ©ã®éä¿¡ïŒkind:"undefined"ïŒåšæç³»ãªã®ã«intervalSecondsæªæå®ïŒeventãªã®ã«triggeræªèšå
¥ïŒã¯ latency äžå®ãšããŠæ±ãã0ç§ã§ä»£æ¿ãããã®èŸºãå«ãçµè·¯ããæªç®åºããšããŠåºå¥ããã宣èšãããäŒæå
ïŒpropagationTargetsïŒã®å°éæ§ç
§åã宣èšå€ïŒæå€§äŒæé
å»¶ã»æå€§ä¹é¢æéã»é
å»¶çªè¢«èŠçïŒãšç®åºå€ã®ç
§åãå³æåæ ãæåŸ
ãããã¹ãæ¡ä»¶ãšç®åºé
å»¶ã®ççŸæ€åºãACKã»ã¿ã€ã ã¢ãŠãã»æ ¹æ äœçœ®ã®æªå®£èšæ€åºãåäžããŒã¿é
ç®ãéã¶åšæç³»éä¿¡ã®åšæäžæãã®åæã決å®ç㪠mermaid ã·ãŒã±ã³ã¹å³ã®çæãextract_test_conditions ãžã®ãã¹ãæ¡ä»¶åè£ïŒææ¡æ¡ä»¶IDã»æ¡ä»¶æé圢ã»source=testbaseã»derivedFromã»timing-order-testã»å¯Ÿå¿çªIDïŒã®åŒãæž¡ãããå€å®åºåDFT-01ãDFT-20ã§æ±ºå®çã«æ€æ»ãããæ¬ããŒã«ãæ±ãã®ã¯SUTå
éšã®æ§æèŠçŽ éã®éä¿¡ã¿ã€ãã³ã°ã§ããããã¹ãäœæ¥ãã®ãã®ã®å®è¡é åºãæ±ã analyze_execution_order ãšã¯å¥æŠå¿µã§ãããææ³ã«ã¿ãã°TTK-10(timing-order-test) ããã®ããŒã«ãžæ±ºå®çã«ã«ãŒãã£ã³ã°ããã
data_flow_timing_interview質å圢åŒã§ããŒã¿ãããŒã»ã¿ã€ãã³ã°åæã®ã³ã³ããã¹ããåéããããã®ã¬ã€ããæ§æèŠçŽ ïŒæ©åš/ãµãŒãã¹/ã¯ã©ãŠã/ã¹ãã¢/人ïŒã»è«çããŒã¿é
ç®ã»éä¿¡çµè·¯ïŒéä¿¡å
/å®å
/éã¶ããŒã¿é
ç®ïŒã»éä¿¡ã¿ã€ãã³ã°ïŒçš®å¥/åšæ/奿©ïŒã»é
å»¶/ACK/ã¿ã€ã ã¢ãŠã/ãªãã©ã€ã»äŒæã®èµ·ç¹ãšçµç«¯ã»äž»åŒµããæå€§ã¹ãã¥ãŒã»é
å»¶çªè¢«èŠçã®å®£èšã確èªããanalyze_data_flow_timing ãåŒã³åºãããã¢ã·ã¹ã¿ã³ããèªå°ãããä»»æåŒæ° subjectName ãåãåãã
testdesign://data-flow-timing/analysis-criteriaããŒã¿ãããŒã»ã¿ã€ãã³ã°åæã®å€å®åºåã«ã¿ãã°ïŒèªäœãã©ãã¬ãŒãºãDFT-01ãDFT-20 ã®20åºåãIDéè€ã»æ¯éå£å€åç
§ã»èªå·±éä¿¡ã»ã¿ã€ãã³ã°ã®æªå®çŸ©ã»ACKã®æªå®çŸ©ã»ã¿ã€ã ã¢ãŠãå€ã®æªå®£èšã»äŒæé
å»¶ã®ç®åºäžèœã»æå€§äŒæé
å»¶ã®å®£èšäžäžèŽã»å®£èšããçµç«¯ã®å°éäžèœã»é
å»¶çªïŒä¹é¢çªã«å¯Ÿå¿ãããã¹ãæ¡ä»¶ã®æ¬ èœã»å³æåæ ã®æåŸ
ãšç®åºé
å»¶ã®ççŸã»éã°ããªãããŒã¿é
ç®ã»ããŒã¿é
ç®ãéã°ãªãéä¿¡ã»å€ç«ããæ§æèŠçŽ ã»æ ¹æ äœçœ®ã®æªç¹å®ã»åšæã®äžæãã»æå€§ä¹é¢æéã®å®£èšäžäžèŽã»ä»¶æ°äžéã®è¶
éïŒåæã®æã¡åãã»é
å»¶çªè¢«èŠçã®å®£èšäžäžèŽïŒããé倧床ã»èª¬æã»å¯ŸåŠæéä»ãã®æ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããé
å»¶ã®ç®åºåŒã»æªå®çŸ©èŸºã®æ±ãã»mermaid ç¢å°èšæ³ã®å¯Ÿå¿ã泚èšãšããŠå«ããanalyze_data_flow_timing ãå©çšããã
derive_test_purposesãã¹ãç®çããäŸé Œè
ã®æåŸ
â ãã¹ãèŠæ±ïŒãããžã¡ã³ãçïŒãšã³ãžãã¢ãªã³ã°çã®2ç³»çµ±ïŒ â ãã¹ãæŠç¥ â ãã¹ãç®ç â åªå
é äœããšããå°åºãã§ãŒã³ã§æŽçãããæ±ºå®çå±€ïŒPDC-01ãPDC-17ïŒãé£éã®è²«éæ§ãåæ¹åã«æ€æ»ãããæªè§£æ±ºåç
§ã»IDéè€/æ¬ çª/ãã¬ãã£ãã¯ã¹äžäžèŽã»ã©ã®ãã¹ãèŠæ±ãããåç
§ãããªãäŸé Œè
ã®æåŸ
ãšãã®éã»ã©ã®ãã¹ãç®çãããåç
§ãããªããã¹ãèŠæ±ãšãã®éã»ãã¹ãèŠæ±ã®ç³»çµ±ïŒãããžã¡ã³ãçïŒãšã³ãžãã¢ãªã³ã°çïŒã®æ¬ èœã»ã©ã®ãã¹ãç®çã«ãçŽã¥ããªããã¹ãæ¡ä»¶ãšãã®éïŒã©ã®ãã¹ãæ¡ä»¶ãããåç
§ãããªããã¹ãç®çïŒã»ãã¹ãã¿ã€ãéžæãšãã¹ãç®çã®äžæŽåïŒéžå®ãªã®ã«ç®ç/çç±ãç¡ããééžå®ãªã®ã«ç®çãããïŒã»ã©ã®ãã¹ãã¿ã€ãã«ãçŽã¥ããªããã¹ãç®çã»éæå€å®åºæºïŒsuccessCriterionïŒã®æªèšå
¥ã»åªå
é äœã®æªèšå®/éè€/æ ¹æ æªèšå
¥ã»åè³ªç¹æ§ã®æªå²åœ/æªç¥IDïŒè£œåå質QC-*ã»å©çšæå質QU-*ã®äž¡ã¢ãã«ãæ¢ç¥IDãšããŠæ±ãïŒã»äŸé Œæžæ¬æã«è£ä»ãã®ç¡ãæåŸ
ïŒrequestDocuments æå®æãIDãæèšãæ¬æã«åºçŸããªãããsourceRef ã®ææžå/è¡çªå·ãå®åšããªãïŒã»å®£èšãã被èŠçã»èšå
¥çïŒãã¹ãç®çãžã®çŽã¥ãçïŒãã¹ãã¿ã€ãéžå®çç±ã®èšå
¥çïŒãšå®æž¬å€ã®äžäžèŽãæ€åºãããåè
ã¯testConditions[].purposeIdsã®å®£èšæç¡ã ãã§ç®åºããæ§é äžã®çŽã¥ãçã§ãããåŸè
ã¯ç®çIDã1件以äžããéžå®çç±(reason)ãå®è³ªèšå
¥(å®åèªã®ã¿ã»æ£èŠååŸ8æåæªæºãé€ã)ã§ããéžå®ã¿ã€ãã®å²åã§ãã£ãŠãããããå
容ã®åŠ¥åœæ§ãŸã§ã¯æ€æ»ããªããçç±ãå®è³ªæªèšå
¥ã®éžå®ã¿ã€ãã¯PDC-10ã§åå¥ã«ææãããã«ã¿ãã°å€ã®ãã¹ãã¿ã€ãåãæ€åºãããç®çIDã extract_test_conditionsïŒtestConditions[].purposeIds / testPurposesïŒãš create_test_planïŒtestPurposes / testTypeSelectionsïŒãžè²«éããŠãããã®ãããªã¯ã¹ïŒ4.1 ç®çÃæ¡ä»¶ïŒ4.2 ç®çÃãã¹ãã¿ã€ãïŒ4.3 ç®çÃåè³ªç¹æ§ïŒãåºåããã4.3 ã¯é¢é£ããåè³ªç¹æ§IDã補åå質ïŒQC-*ïŒã»å©çšæå質ïŒQU-*ïŒã»æªç¥IDã®3åã«åããŠç€ºããæ¢åã®ãã¹ãç®çäžèЧã purposes ã«æž¡ãã°ãæ¢åææç©ã®ã¬ãã¥ãŒãšããŠãåãæ±ºå®çæ€æ»ãå®è¡ã§ããã
testplan://purpose/derivation-frameãã¹ãç®çã®å°åºãã¬ãŒã ïŒèªäœãã©ãã¬ãŒãºïŒãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããå°åºæ®µ5段ïŒPDS-01ãPDS-05ïŒäŸé Œè
ã®æåŸ
ã®ææ¡ã»ãã¹ãèŠæ±ã®æŽçã»ãã¹ãæŠç¥ã®é©çšã»ãã¹ãç®çã®æ±ºå®ã»ç®ç/ã¿ã€ãã®åªå
é äœä»ãïŒããã¹ãèŠæ±ã®2系統ïŒPRL-01 ãããžã¡ã³ãçïŒPRL-02 ãšã³ãžãã¢ãªã³ã°çïŒããã¹ãç®çã®è³ªãç¹æ€ããèŠåïŒPQR-01ãPQR-05ïŒãåªå
é äœä»ãã®3軞ïŒPPA-01ãPPA-03ïŒãå€å®åºåã«ã¿ãã°ïŒPDC-01ãPDC-17ïŒãå«ããderive_test_purposes ãå©çšããã
toolchain://next-tools/catalogå
šããŒã«ã®åºåæ«å°Ÿã«ä»ããæ¬¡ã«å®è¡ãã¹ãããŒã«ãç¯ãåç
§ããéçã«ã¿ãã°ãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããå®è¡å
ããŒã«åããšã®åŸç¶ããŒã«åè£ïŒåŸç¶ããŒã«åã»æç€ºçç±ã»æç€ºæ¡ä»¶ãšãªãã·ã°ãã«ããŒãalways ã¯åžžã«æç€ºïŒãšãæ¬MCPãç»é²ããå
šããŒã«åã®äžèЧïŒregisteredToolNamesïŒãåããŒã«ã®åºåèŠåºã眲åããŒãã«ïŒtoolOutputSignaturesïŒãå«ããåããŒã«ã¯èªèº«ã®åŸç¶è¡šãšçæç©ã®å
容ããæ©æ¢°çã«å°ããã·ã°ãã«ãçªãåãããæªå®æœã®åŸç¶ããŒã«ãåæãããåŒã³åºãåŽã¯ completedToolsïŒtoolName ãšèšŒè·¡ evidenceãå®åºåã®æç² outputExcerptïŒã§å®æœæžã¿ãç³åã§ãããã蚌跡ãåç
§åœ¢åŒïŒãã¡ã€ã«ãã¹ãŸã㯠# ããå§ãŸãèŠåºãïŒã§ãªãç³åã»registeredToolNames ã«ç¡ãããŒã«åã®ç³åã¯å®æœæžã¿ãšèªãããèŠåä»ãã§æªå®æœã®ãŸãŸæ®ãã蚌跡ãåç
§åœ¢åŒã§ãã£ãŠããoutputExcerpt ã«åœè©²ããŒã«èªèº«ã®åºåèŠåºãïŒtoolOutputSignaturesïŒãå®åšããªãç³åã¯ã宿œæžã¿(蚌跡æªç
§å)ããšããŠæªå®æœä»¶æ°ã«å«ããã
testbasis://coverage/inspectabilityåæå
¥åå£ãæã€11ããŒã«ïŒreview_test_basis / analyze_requirements / review_test_specification / generate_test_cases / audit_id_population / audit_basis_contradictions / audit_cross_matrix / audit_test_design_notations / audit_coverage_balance / audit_deliverable_consistency / reexpand_threshold_changesïŒã®åºåæ«å°Ÿã«ä»ããæ€æ»å®è¡ç¶æ³(å®è¡ãããæ€æ» / æ€æ»äžèœãªæ€æ»)ãç¯ãåç
§ããéçã«ã¿ãã°ãæ§é åããŒã¿ïŒJSONïŒãšããŠå
¬éãããæ±ºå®çæ€æ»ãæç«ããããã®å
¥åäžã®åæïŒåæIDã»æ¥æ¬èªåã»å®æž¬æ¹æ³ã»ç®åºå
ã®å
¥åã»äžæç«ãè§£æ¶ããå
¥åäžã®æåœãŠïŒãå
¥åãã€ãžã§ã¹ãç±æ¥ã®å
±éæ€æ»ïŒIQC-01ãIQC-05ïŒãããŒã«ããšã®åæäŸåãªæ±ºå®çæ€æ»ïŒæ¢åå€å®åºåIDã»åºåç¯ã©ãã«ã»å¿
èŠãªåæIDïŒãå«ããæ°èŠã®å€å®åºåIDäœç³»ã¯äœãããæ¢åã«ã¿ãã°ã®åºåIDïŒPAC-* / BC-* / CMX-* / TDN-* / CBC-* / DCC-* / TCE-* / IQC-*ïŒããã®ãŸãŸåç
§ããã
åããŒã«ã¯ãã®ã«ã¿ãã°ãšãæå ¥ãããåæããç®åºããåæã®å®æž¬å€ïŒå®çŸ©IDä»¶æ°ã»è¡šã»ã«ä»¶æ°ã»ç« ç¯ã¢ã³ã«ãŒè§£æ±ºå¯åŠãªã©ïŒãçªãåããã忀æ»ããå®è¡ãããæ€æ»äžèœããã«åããŠå®æž¬å€ä»ãã§åæãããææ0ä»¶ããå ¥åãåæ Œãããã®ããæ€æ»ãã®ãã®ãæç«ããŠããªããã®ããåŒã³åºãåŽãå€å¥ã§ããããã«ããããã®ç¯ã§ãããæ€æ»å¯èœçãªã©ã®çŸåçã¯åºããªãïŒéæåºŠã®äž»åŒµã§ã¯ãªãããïŒã
MCPããŒã«ã¯ãã©ãŒãããäžåã®èªç±ããã¹ããåãåããããWord / Excel / PDF ã¯åŒã³åºãåŽã§ããã¹ãåããŠæå ¥ããã äœãä¿ã¡äœãèœãšããã®èŠçŽãšåç §å®è£ 㯠docs/ai/testbase-ingestion.md ãåç §ã
bash scripts/extract-testbase-text.sh 2025 # PDFïŒpdftotext -layout åºå®ïŒ
node scripts/extract-testbase-xlsx.mjs <in.xlsx> --out <out.txt> # ExcelïŒå³åœ¢å
ããã¹ããç¬ç«ã»ã¯ã·ã§ã³ã§åºåïŒ
node scripts/extract-testbase-docx.mjs <in.docx> --out <out.txt> # WordïŒç®æ¬¡ã»åé€å±¥æŽãé€å»ãèŠåºãã # ãžïŒ
npm run dev # tsc --watch
npm start # node dist/server.jsïŒstdio transportïŒ
npm test # vitest run
npm run inspect # buildåŸãMCP Inspectorãèµ·åããŠåäœç¢ºèª
npx @modelcontextprotocol/inspector --cli node dist/server.js --method resources/list
npx @modelcontextprotocol/inspector --cli node dist/server.js --method tools/list
npx @modelcontextprotocol/inspector --cli node dist/server.js --method prompts/list
npx @modelcontextprotocol/inspector --cli node dist/server.js --method tools/call \
--tool-name create_test_plan \
--tool-arg projectName="ECãµã€ã" \
--tool-arg scope="決æžãšãã°ã€ã³æ©èœ"
npx @modelcontextprotocol/inspector --cli node dist/server.js --method prompts/get \
--prompt-name test_plan_interview --prompt-args projectName="ECãµã€ã"
{
"mcpServers": {
"ai-test-process-mcp": {
"command": "node",
"args": ["<repo-path>/dist/server.js"]
}
}
}
npmå
¬éåŸã¯ããªããžããªãããŒã«ã«ã«cloneããªããŠã npx çµç±ã§èµ·åã§ããïŒ.vscode/mcp.json ã®äŸïŒã
{
"servers": {
"ai-test-process-mcp": {
"command": "npx",
"args": ["-y", "ai-test-process-mcp"]
}
}
}
npm loginïŒnpmjs.comã®ã¢ã«ãŠã³ãã§èªèšŒïŒnpm run buildïŒnpm publish å®è¡æã¯ prepublishOnly ããã¯ã«ããèªåå®è¡ããããããæåå®è¡ã¯ä»»æïŒnpm publishå
¬éåŸã®æ¥ç¶æ¹åŒïŒstdioïŒã¯å€ãããªããMCPã¬ãžã¹ããªïŒserver.json / mcp-publisherïŒãžã®ç»é²ã¯æ¬æé ã®å¯Ÿè±¡å€ã§ãå°æ¥ã®å¥ã¿ã¹ã¯ãšããŠæ±ãã
æ°ããæ©èœïŒTest Analysisã»Test Design ã»ã Generic Test Process åå·¥çšã® toolïŒã远å ããéã¯ã以äžã®ãã¿ãŒã³ã«åŸãïŒ
src/resources/<name>.ts â å¿
èŠãªåç
§ããŒã¿ïŒæ§é åããŒã¿ïŒãå®çŸ©src/tools/<name>.ts â zodå
¥åã¹ããŒã + çŽç²ãªã¬ã³ããªã³ã°é¢æ° + registerXxxTool()src/resources/index.ts / src/tools/index.ts ã«ãããã1è¡ç»é²ã远å test/<name>.test.ts ã§ã¬ã³ããªã³ã°é¢æ°ãåäœãã¹ãserver.ts æ¬äœã¯å€æŽäžèŠããã©ã°ã€ã³ããŒããŒãã¬ãžã¹ããªã®ãããªæœè±¡åã¯ãã¢ãžã¥ãŒã«æ°ãå¢ããŠæç€ºçãªç»é²ãªã¹ããç
©éã«ãªããŸã§å°å
¥ããªãã
詳现㯠AGENTS.md ãš docs/ai/project-overview.md ãåç §ã
FAQs
MCP server providing AI-assisted test process tools, starting with JSTQB-based test plan draft generation and test design techniques.
The npm package ai-test-process-mcp receives a total of 1,796 weekly downloads. As such, ai-test-process-mcp popularity was classified as popular.
We found that ai-test-process-mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
A new federal program will let vetted U.S. cybersecurity firms help investigate and disrupt foreign cybercrime groups under government direction.

Research
/Security News
The campaign amassed more than 75,000 installs by targeting Russian-speaking users seeking access to blocked services.

Company News
Open source maintainers are under more pressure than ever. We're raising our open source program from the Team plan to the Business plan, free.