یک نقشه ذهنی با هشت برگ سبز روی صفحه دیده می‌شود. آیا هشت سناریو اجرا شده‌اند؟ آیا پوشش ۱۰۰٪ است؟ آیا همه شاخه‌ها از منبع معتبر آمده‌اند؟ شاید هیچ‌کدام. یک برگ می‌تواند سؤال، ایده، ریسک، Test Condition، مشاهده یا Action باشد؛ رنگ سبز هم ممکن است در ذهن دو نفر معنای متفاوت داشته باشد. نقشه ذهنی در تست نرم‌افزار وقتی مفید است که نقش آن به‌عنوان یک View برای کشف و گفتگو روشن باشد، نه اینکه جای Plan، Registry، Run یا Evidence بنشیند.

این راهنما یک Test Mind Map Contract می‌سازد: Purpose/Audience/Decision → Canonical Sources/Registry → Node و Edge taxonomy → Projection/Filter/Layout → Review/Actions → Export/Round-trip → Accessible text alternative → Archive/Correction. با این قرارداد، نقشه می‌تواند تفکر جمعی را سریع کند، درحالی‌که Claimهای پوشش و نتیجه فقط از شناسه، رابطه و Evidence قابل ردیابی می‌آیند.

پاسخ کوتاه: نقشه ذهنی در تست نرم‌افزار چیست؟

نقشه ذهنی تست یک نمایش شاخه‌ای از موضوع‌ها، سؤال‌ها، ریسک‌ها، شرایط تست، داده‌ها، Oracleها، مسیرهای کاوش، یافته‌ها یا Actionها برای Purpose مشخص است. این View می‌تواند برای Discovery، Planning workshop، Test Design یا Session debrief مفید باشد؛ اما به‌خودی‌خود Test Plan، Test Case، Charter، Coverage model، Run log یا Evidence نیست.

نقش نقشهکار مناسبادعای نامجاز بدون Contract دیگر
Discovery Viewنمایان‌کردن سؤال، فرض، مرز و وابستگینیازمندی‌ها کامل‌اند
Planning Viewگفتگو درباره Scope/Risk/Evidenceخود نقشه Plan مصوب است
Design Viewخوشه‌بندی Condition/Scenario/Data/Oracleهر برگ یک Test Case است
Session Viewثبت مسیر، مشاهده، سؤال و follow-upCoverage یا Execution اثبات شده است
Communication Viewخلاصه بصری برای مخاطبSource of Truth یا Decision Record است
Generated Projectionنمایش Query از Registry نسخه‌دارLayout بخشی از معنای canonical است

مالکیت این مقاله و مرز با راهنماهای مجاور

این صفحه مالک مهندسی Mind Map به‌عنوان View نسخه‌دار، قابل تبدیل و قابل دسترس است. موضوع‌های عمیق‌تر در صفحات مالک خود می‌مانند.

پرسشمالک محتواییمرز این راهنما
Charter، Session و Debrief چگونه انجام شوند؟تست اکتشافی ساختاریافتهاینجا فقط Map View همان Session را مهندسی می‌کنیم.
Living Test Plan چگونه تصمیم‌محور باشد؟نوشتن برنامه تست زندهنقشه می‌تواند View Plan باشد، نه جای Contract آن.
Scenario، Case، Charter یا Script را چگونه انتخاب کنیم؟سناریوی تست و تست‌کیسنوع Node با نوع Test Artifact یکی نیست.
Chart و Visual QA چگونه طراحی شود؟بصری‌سازی داده‌های تستاینجا روابط شاخه‌ای، نه نمودار کمی، مطرح است.
Freshness و Drift سند چگونه اداره شود؟مستندات تست زندهاینجا source/version و map projection را اعمال می‌کنیم.
Test Basis و سؤال‌ها چگونه تحلیل شوند؟تحلیل نیازمندی‌ها در STLCنقشه ورودی تحلیل را نمایش می‌دهد، نه اینکه کامل‌بودن را ثابت کند.
Test Case و Techniques چگونه نوشته شوند؟نوشتن تست‌کیس حرفه‌ایبرگ Map فقط با تبدیل/Review می‌تواند Artifact طراحی شود.
Run و Outcome چگونه ثبت شوند؟چرخه اجرای تسترنگ یا تیک Map جای Attempt نمی‌گیرد.
نتیجه و Evidence چگونه ارائه شوند؟ارائه نتایج تستنقشه می‌تواند Navigation باشد، نه Evidence Packet.

ادعای «تقلید شبکه عصبی مغز» را کنار بگذارید

برای استفاده عملی از نقشه ذهنی نیازی به داستان عصب‌شناختی نداریم. یک Outline شاخه‌ای ممکن است برای بعضی سؤال‌ها، افراد و کارگاه‌ها خواناتر از فهرست باشد و برای مسئله‌ای با روابط چندبه‌چند نامناسب‌تر. اثربخشی را با Task مشخص—مثلاً یافتن Risk بی‌مالک یا تبدیل سؤال‌ها به Action—و با مقایسهٔ خطا، زمان و فهم مخاطب بسنجید.

عبارت‌هایی مثل «خلاقیت را افزایش می‌دهد»، «باگ‌هایی پیدا می‌کند که Script هرگز نمی‌یابد» یا «کیفیت را بالا می‌برد» ادعاهای نتیجه‌ای‌اند و از شکل شعاعی نقشه نتیجه نمی‌شوند. Map ممکن است گفتگو را تسهیل کند یا برعکس، گروه را روی شاخه‌های نخست Anchor کند.

Mind Map، Outline، Concept Map و Graph چه فرقی دارند؟

نمایشساختار غالبمناسب برایمحدودیت
Mind Mapمرکز و شاخه‌های درختیIdeation، دسته‌بندی، مرور سریعParent واحد و روابط مبهم
Outlineسلسله‌مراتب متنیKeyboard، export، review و alternative textروابط عرضی کم‌رنگ
Concept MapNode/Edge با عبارت رابطهمعنا و causal/semantic hypothesesپیچیدگی و نیاز به Legend
Graphروابط چندبه‌چند نوع‌دارTraceability و queryنمای بصری سریعاً شلوغ می‌شود
Table/Matrixردیف/ستون و mapping دقیقمقایسه، Coverage و reconciliationDiscovery آزاد کمتر
Flow/State modelترتیب، transition و conditionJourney، lifecycle و recoveryبرای Brainstorming عمومی مناسب نیست

اگر یک Condition به سه Risk و دو Source وصل است، قرار دادن آن زیر یک Parent ممکن است معنا را تحریف کند یا Duplicate بسازد. راه‌حل این نیست که نقشه را به Source canonical تبدیل کنید؛ Graph/Registry را canonical نگه دارید و Map را Projection آن بسازید.

Map View Contract: قرارداد پایه

TEST-MIND-MAP: SYN-MAP-CHECKOUT-v4
Purpose: discovery of checkout risks and evidence questions
Audience/decision: QA+Product workshop / Plan B17 refinement
Subject/scope: checkout API/UI/Ledger; fake PSP; excludes Production
Canonical sources: FLOW-v3, RULES-v4, API-v6, UI-v4, LEDGER-v2
Registry snapshot/cutoff: SYN-COVERAGE-v2 / 2026-08-13T09:00:00+03:30
Node taxonomy/legend: MAP-NODES-v3 / MAP-LEGEND-v2
Projection: active critical/material items + open questions
Layout/tool/export: radial / tool-neutral / OPML+JSON+SVG+HTML outline
Owner/reviewer/review-by: test-designer-a / domain-b / 2026-09-01
Status: DRAFT_DISCOVERY_VIEW; not Plan, Run, Coverage proof or Decision

Purpose و Audience قبل از مرکز نقشه می‌آیند

مرکز «Checkout» برای همه کارها بیش‌ازحد کلی است. مرکز باید با سؤال View سازگار باشد: «کدام failure mechanismهای retry برای B17 بی‌Evidence‌اند؟» یا «در Session رسید فارسی چه فرض‌ها و سؤال‌هایی داریم؟». مخاطب نیز تعیین می‌کند چه چیزهایی باید دیده یا پنهان شوند؛ نقشه مدیر، اجراکننده و Specialist یک Projection یکسان نمی‌خواهد.

Purposeمرکز پیشنهادیNodeهای اصلیخروجی
Requirement discoveryClaim/Capabilitysource، question، assumption، conflictanalysis actions
Risk workshopDecision/undesired outcometrigger، mechanism، impact، controlrisk register candidates
Test designCondition/coverage modeldata، boundary، oracle، environmentartifact candidates
Exploratory sessionCharter missiontour، observation، question، findingsession notes/follow-ups
Release discussionResidual risk/decisionevidence، gap، owner، actiondecision navigation

Node taxonomy را صریح کنید

Node typeمعناحداقل attributeنباید با
Sourceمنبع versionedsource_id/version/statusView کپی‌شده
Claim/Ruleانتظار قابل ارجاعclaim_id/authority/scopeObservation
Riskرویداد/پیامد نامطلوبrisk_id/owner/classDefect
Condition/Coverage itemعضو مدل آزمونcoverage_id/model/sourceبرگ دلخواه
Question/Assumptionابهام یا گزاره تأییدنشدهid/owner/status/dueFact
IdeaCandidate برای بررسیid/rationale/dispositionCase/commitment
Oracle/Data/Environmentنیاز طراحی یا اجراref/version/ownerEvidence واقعی
Observation/Findingمشاهده یا مسئله در Sessionattempt/time/actor/evidenceRoot cause
Action/Decisionکار یا انتخاب مجازowner/due/authority/statusرنگ/آیکون

هر Node شناسه و Payload ساختاریافته می‌خواهد

{
  "node_id": "N-RISK-04",
  "type": "risk",
  "label_fa": "اثر تکراری پس از Callback مجدد",
  "ref": "SYN-R4",
  "source": ["API-v6", "LEDGER-v2"],
  "status": "OPEN_FOR_DESIGN",
  "owner": "risk-owner-c",
  "links": [
    { "type": "motivates", "to": "SYN-C3" },
    { "type": "requires-evidence", "to": "EP-INVARIANT-v2" }
  ],
  "presentation": { "color": "orange", "icon": "risk" }
}

Label کوتاه برای View است؛ معنا در Type، Ref، Source و رابطه‌هاست. رنگ و Icon فقط presentation هستند. اگر Tool custom attribute را حفظ نمی‌کند، یک Sidecar JSON/CSV یا Registry بیرونی لازم است.

Edge taxonomy: Parent-child به‌تنهایی کافی نیست

Edgeازبهمعنا
derived-fromClaim/ConditionSourceمنشأ، نه اثبات درستی
motivatesRiskCondition/Ideaدلیل توجه
coversTest artifact candidateCoverage itemقصد طراحی، نه Run Evidence
requiresConditionData/Env/OracleDependency اجرا/تصمیم
observed-duringObservationAttempt/Sessionprovenance مشاهده
supports/contradictsEvidenceClaimرابطه محدود Evidence
results-inFinding/DecisionActionپیگیری
related-toهر Nodeهر Nodeضعیف؛ فقط با rationale

Cross-linkهای Map ممکن است در Export از بین بروند. برای روابط حیاتی، Registry را canonical کنید و پس از import/export صحت Edgeها را بشمارید.

Legend Contract: رنگ به‌تنهایی معنا نیست

MAP-LEGEND: MAP-LEGEND-v2
Node type: text prefix + icon + machine type
Freshness: FRESH / IMPACT_PENDING / STALE / UNKNOWN / SUPERSEDED
Work status: IDEA / REVIEW / COMMITTED / EXECUTED / EVIDENCE_PRESENT
Outcome: stored only on Attempt reference, not inferred from color
Priority: rationale + class; size/color are secondary cues
Unknown: explicit "? UNKNOWN" label
Color: never sole carrier; contrast and monochrome export reviewed
Language: Persian labels; stable Latin IDs; RTL/LTR behavior tested

یک Map چند نوع Status را مخلوط نکند

Status familyنمونهمالکخطای رایج
Idea lifecycleCaptured/Reviewed/Accepted/Rejectedworkshop ownerسبز=اجراشده
Artifact lifecycleDraft/Active/Supersededartifact ownerActive=Passed
FreshnessFresh/Stale/Unknownsource/view ownerتازه=درست
Execution outcomePassed/Failed/Blocked/InconclusiveRun/AttemptOutcome روی Condition
Evidence stateMissing/Present/Rejectedevidence reviewerPresent=کافی
Decision/actionPending/Approved/Done/Expireddecision/action ownerDone=Risk رفع شد

Mind Map در Test Planning: View است، Plan نیست

نقشه می‌تواند در کارگاه برنامه‌ریزی سؤال‌ها، Scope candidates، Riskها، Dependencyها و Evidence ideas را آشکار کند. پس از کارگاه، تصمیم‌ها باید به Plan Contract با Source، owner، date، constraint، exception و approval منتقل شوند. باقی‌ماندن تصمیم فقط به شکل شاخه یا رنگ، Audit و تغییر بعدی را شکننده می‌کند.

Map candidateتبدیل به PlanReview لازم
In-scope branchScope Item با code/schema/config identityProduct/Plan owner
Out-of-scope branchreason، residual exposure، owner، revisit triggerRisk authority
Risk branchRisk Claim و Risk-to-evidence mappingDomain/Test reviewer
Dependency branchdeliverable، owner، due، fallbackDependency owner
Environment ideaversioned manifest/readinessEnvironment owner
Open questionAssumption/unknown با validator/dueMeaning owner
Estimate bubblemethod/range/assumptions/capacityWork owners

Scope را با In/Out/Conditional/Unknown مدل کنید

دو رنگ In/Out، Scope مشروط و نامعلوم را حذف می‌کند. هر Scope node باید Subject identity، reason/source، risk owner، dependency و trigger داشته باشد. رنگ یا موقعیت شاخه نمی‌تواند Approval یا Risk acceptance را نشان دهد.

SCOPE-NODE: SYN-SCOPE-07
Subject: callback worker / API-v6 / flag retry_v2=on
State: CONDITIONAL
Condition: fake PSP contract v5 available by 2026-08-14
If true: run fault-recovery profile FP-04
If false: mark affected R2 evidence Not Run; no silent exclusion
Residual exposure: unknown post-commit recovery behavior
Owner/authority: plan-owner-b / release-owner-a
Map label: "△ CONDITIONAL — Callback recovery [SYN-SCOPE-07]"

هر برگ سناریو یا Test Case نیست

Leaf فقط Node بدون فرزند در Layout فعلی است؛ ماهیت تستی ندارد. یک سؤال، Note، Divider، Link یا Idea نیز می‌تواند برگ باشد. برای تبدیل به Scenario/Case/Charter باید Type، Basis، Objective، Coverage link، Oracle/Data/Environment و سطح جزئیات بررسی شود. تعداد برگ‌ها Metric طراحی نیست.

Coverage با شمارش برگ‌ها محاسبه نمی‌شود

Coverage نیازمند مدل و Registry نام‌گذاری‌شده است: Requirement، Risk، State transition، Decision rule، Boundary partition یا Coverage Item دیگر. Map فقط mapping را نمایش می‌دهد. Duplicate node نباید مخرج/صورت را دوبرابر کند و Idea یا Note نباید وارد Population شود.

Claimصورتمخرجمحدودیت
Mapped registry coverageunique eligible IDs with valid map refseligible registry IDsDesign یا Run را ثابت نمی‌کند
Designed coverageitems with reviewed design artifactsin-scope itemsExecution/Evidence را ثابت نمی‌کند
Evidence-backed coverageitems with accepted applicable evidencedecision-scope itemsکفایت مدل را ثابت نمی‌کند
Session toucheditems with session observationcharter population اگر تعریف شدهعمق یا کیفیت کاوش را ثابت نمی‌کند

Coverage Node Contract

COVERAGE-NODE: N-C6
Type: coverage-item
Registry ref: SYN-C6 / COVERAGE-REGISTRY-v2
Source: LEDGER-v2
Eligibility: in Plan B17-v2
Design refs: RECON-CHECK-06@v1
Evidence refs: none
Map status text: DESIGNED / EVIDENCE_MISSING
Presentation: outline icon + amber border (secondary only)
Duplicate policy: one canonical node; aliases link to same ref
Claim: mapped/designed only—not executed or adequate

آزمایش بازتولیدپذیر: هشت برگ سبز، هشت Finding

برای آزمودن خطای «برگ سبز = Coverage»، Fixture کاملاً ساختگی و آفلاین SYN-TEST-MIND-MAP-01 را ساختیم. Registry شش Coverage Item دارد، اما Draft Map هشت برگ سبز نمایش می‌دهد. کنترل بصری فقط رنگ و تعداد برگ را می‌بیند و ۱۰۰٪/PASS اعلام می‌کند؛ Contract audit نوع Node، Ref یکتا، Source، Evidence، Build و text status را بررسی می‌کند.

Leafظاهرواقعیت ساختاریFinding
N3 / SYN-C3سبز و testedEvidence نداردmissing-evidence
N5 / SYN-C4سبز و testedEvidence متعلق به B16، هدف B17foreign-build-evidence
N6سبزنوع Idea، نه Coverage Itemnoncoverage-leaf
N7 / SYN-C99سبز و testedRef در Registry وجود نداردunknown-coverage-ref
N8 / SYN-C5سبزnot-tested و بدون Evidencemissing-evidence + color-status-mismatch
N2/N4 / SYN-C2دو برگ سبزRef تکراریduplicate-coverage-ref
SYN-C6در Map دیده نمی‌شودRegistry Item بی‌Mapuncovered-registry-item
{
  "runtime": "v24.18.0",
  "fixture": "SYN-TEST-MIND-MAP-01",
  "expectedBuild": "B17",
  "superficialDraft": {
    "leaves": 8,
    "greenLeaves": 8,
    "visualCoverage": "100%",
    "decision": "PASS"
  },
  "draftContract": {
    "registryItems": 6,
    "uniqueMappedItems": 5,
    "findings": [
      "missing-evidence:SYN-C3",
      "foreign-build-evidence:SYN-C4:B16->B17",
      "noncoverage-leaf:N6:idea",
      "unknown-coverage-ref:N7->SYN-C99",
      "missing-evidence:SYN-C5",
      "color-status-mismatch:SYN-C5:green->not-tested",
      "duplicate-coverage-ref:SYN-C2:2",
      "uncovered-registry-item:SYN-C6"
    ],
    "decision": "HOLD"
  },
  "correctedContract": {
    "registryItems": 6,
    "uniqueMappedItems": 6,
    "findings": [],
    "decision": "READY_FOR_MAP_REVIEW"
  }
}

نسخه اصلاح‌شده چه چیزی را ثابت می‌کند؟

نسخه اصلاحی دقیقاً شش Node از نوع Coverage Item با Refهای یکتا C1 تا C6، Source مورد انتظار، text status و Evidence روی Build B17 دارد. نتیجه READY_FOR_MAP_REVIEW فقط نبود Finding ساختاری در این Fixture است؛ کفایت Coverage، کیفیت Exploration، کشف Defect، کیفیت محصول، انطباق Accessibility یا آمادگی Release را ثابت نمی‌کند.

همه Nodeها، Registry Itemها، Sources، Buildها، Evidenceها، رنگ‌ها، درصدها، قواعد و تصمیم‌ها عمداً ساختگی‌اند. آزمایش هیچ Tool، Map، تیم یا محصول واقعی را ارزیابی یا Benchmark نمی‌کند و هیچ Interaction، Database، UI، Network یا Test execution واقعی ندارد.

نقشه ذهنی در تست اکتشافی

در Session اکتشافی، Map می‌تواند فرض‌ها، تورها، مسیرها، سؤال‌ها و مشاهدات را کم‌اصطکاک ثبت کند؛ اما Charter باید Mission/Scope/Risks/Oracles/Data/Timebox/Evidence را نگه دارد و Session record هویت Build/Environment/Actor/Time را ثبت کند. Map بدون این Context یک تصویر جذاب اما غیرقابل بازسازی است.

قبل، حین و بعد Session را جدا کنید

مرحلهNodeهای مجازخروجیخطر
قبلmission، risk، question، model، ideaCharter ViewIdea به‌عنوان Observation
حینpath، data، observation، question، interruptiontime-linked Session notesحافظه‌نویسی بعدی
بعدfinding، evidence link، coverage note، actionDebrief Viewهر Observation به Bug تبدیل شود
Reviewaccepted/rejected/unknown decisionscanonical artifacts/actionsنقشه خام Source of Truth شود

Observation، Question، Hypothesis و Finding را جدا کنید

SESSION-NODE: OBS-14
Type: observation
Session/attempt: SYN-SES-RTL-03 / A7
Time/actor: 2026-08-13T10:22:14+03:30 / tester-d
Observed: LTR attempt_id rendered before Persian label in narrow viewport
Expected/oracle: UI-v4 semantic-order rule
Evidence: local sanitized screenshot manifest E14
Interpretation: possible bidi isolation issue
Cause: UNKNOWN
Finding decision: pending specialist review
Map path: Receipt → RTL/LTR → narrow viewport → OBS-14

Map Session Log نیست مگر Provenance داشته باشد

جابجایی Node پس از Session می‌تواند ترتیب رخداد را پاک کند. برای بازسازی، timestamp، actor، attempt، previous parent یا event history را جدا نگه دارید. Snapshot شروع و پایان، Change log و export machine-readable کمک می‌کنند؛ خود Layout زمانی نیست.

Map finding با Bug Report برابر نیست

شاخه «مشکل Callback» برای Handoff کافی نیست. Finding باید Oracle، Build/Config/State/Data، Observation، Attempt و Evidence داشته باشد؛ سپس طبق Workflow به Report/Investigation/Question تبدیل شود. Map فقط Navigation و Context می‌دهد و لینک Canonical Defect را نگه می‌دارد.

ساختارهای کاربردی Map را بر اساس سؤال انتخاب کنید

Map typeRootشاخه‌های اصلیCanonical companion
Product/CapabilityCapabilityactors، flows، states، interfacesdomain/source registry
RiskDecision/undesired outcometrigger، mechanism، impact، controlrisk register
Coveragecoverage modelpartitions/items/status viewscoverage registry
Dataentity/populationidentity، boundary، state، privacydata manifest
State/eventsubject lifecyclestate، event، transition، recoverystate model/event contract
Dependencysystem/decisionservice، owner، deliverable، fallbackdependency registry
SessionCharter missionpath، observation، question، findingsession record
Decisiondecision questionoptions، evidence، risk، actiondecision record

قرار دادن همهٔ این‌ها در یک نقشه غول‌پیکر معمولاً Navigation را بدتر می‌کند. چند Projection کوچک با ID و Cross-link بهتر از «نقشه همه‌چیز» است.

Projection Pipeline بسازید

Canonical registries / sources
  → query by purpose, scope, status, cutoff
  → typed node/edge dataset
  → map projection and layout
  → collaborative annotations (clearly noncanonical)
  → review/disposition
  → accepted updates to canonical artifacts
  → regenerate map
  → export bundle: machine data + SVG/PNG + accessible outline + manifest

این Pipeline از دو خطا جلوگیری می‌کند: تغییر دستی View که Registry را دور می‌زند، و بازنویسی Source بر اساس Layout. Annotation خام تا زمانی که Review و disposition نشده، Candidate می‌ماند.

Round-trip Contract: Export فقط داشتن فایل نیست

مشخصات OPML ۲.۰ یک Outline را درختی از Nodeها با attributeهای رشته‌ای توصیف می‌کند و برای تبادل Outline طراحی شده است. این دامنه به معنی حفظ همهٔ semantics ابزارهای Mind Map نیست؛ Cross-link، style، attachment، icon، note و custom attribute ممکن است در تبدیل ابزارها تغییر یا حذف شوند. Spec نیز می‌گوید Processorها attribute ناشناخته را نادیده می‌گیرند؛ بنابراین Round-trip باید آزموده شود.

لایه Exportهدفآزمون
Canonical JSON/CSV/GraphType/ID/Edge semanticsschema + exact counts/hash
OPML/Outlineتبادل hierarchy و متنnode IDs/text/order/attrs round-trip
SVG/PNG/PDFView بصری/انتشارrender/RTL/font/zoom/legend
HTML/text outlineدسترس‌پذیری و searchheading/list/link equivalence
Manifestprovenancetool/version/source/cutoff/hash

Round-trip Test قابل کپی

ROUND-TRIP: SYN-RT-OPML-04
Source map: SYN-MAP-CHECKOUT-v4 / tool A 6.2
Export: OPML 2.0 + sidecar JSON v3
Import target: tool B 4.1
Expected: 42 nodes; 39 hierarchy edges; 7 cross-links; 42 stable refs
Observed: 42 nodes; 39 hierarchy edges; 0 cross-links; 38 refs preserved
Lost: four custom ref attrs; seven cross-links
Decision: HOLD for canonical interchange; acceptable only as visual outline
Fallback: JSON registry + generated accessible HTML
Owner/correction: docs-engineer-e / MAP-EXPORT-12

دسترس‌پذیری نقشه ذهنی

نقشهٔ شاخه‌ای معمولاً یک تصویر پیچیده است. راهنمای رسمی W3C WAI برای Complex Images توضیح کوتاه برای شناسایی تصویر و توضیح بلندِ معادل اطلاعات ضروری را توصیه می‌کند. این راهنما تضمین WCAG یا درستی محتوای Map نیست؛ فقط مبنای طراحی Alternative قابل مصرف است.

  • Alt کوتاه، Purpose و دامنهٔ Map را بگوید؛ فهرست همه Nodeها را در Alt نچپانید.
  • Outline یا جدول بلندِ ساختاریافته و در دسترس کنار View قرار دهید.
  • نوع، Status و رابطه را با متن/ساختار منتقل کنید؛ Color تنها حامل معنا نباشد.
  • Zoom، reflow، contrast، فونت فارسی، RTL/LTR و چاپ تک‌رنگ را بررسی کنید.
  • Interactive nodeها keyboard/focus/name/role/state و مقصد روشن داشته باشند.
  • Collapse/expand نباید Nodeهای مهم را برای Export یا Screen reader ناپدید کند.
  • لینک‌های متن جایگزین باید همان مقصد و Action را داشته باشند.

Accessible Map Bundle

ACCESSIBLE-MAP-BUNDLE: SYN-AMB-v2
Short alt: "نقشه ریسک و شواهد Checkout ساختگی برای Plan B17"
Long description: structured HTML outline grouped by typed branches
Exact registry table: node ID/type/ref/status/owner/source/evidence
Interactive parity: every node link available in keyboard-readable list
Color-independent legend: prefix + text status + icon name
RTL/LTR: Persian labels; Latin IDs isolated; logical reading order verified
Exports: SVG, high-resolution PNG, tagged/text PDF if supported, HTML, JSON
Known limits: radial proximity is presentation, not semantic distance

نقشه فارسی: RTL، شناسه و Export

موضوعContractTest
LabelUTF-8 Persian textrender/search/copy/paste
Stable IDLatin LTR token جدا از Labelvisual/logical order
Digitscanonical semantics + display formPersian/Arabic/Latin normalization
Moneycanonical IRR؛ تومان فقط با برچسب/تبدیلvalue/unit parity
TimeISO instant + Asia/Tehran Viewcutoff/order/round-trip
CalendarJalali presentation-only اگر مقررconversion/boundary
Fontembedded/available fallbackSVG/PNG/PDF target systems
Directionlogical outline order مستقل از radial sidekeyboard/screen reader/export

همکاری هم‌زمان و Conflict را اداره کنید

ویرایش هم‌زمان می‌تواند Duplicate، overwrite، شاخه بی‌مالک یا ادغام دو معنای متفاوت بسازد. Workshop باید Facilitator، Scribe، Naming/Legend، parking lot و disposition time داشته باشد. پس از جلسه، Snapshot منجمد و Change set بررسی می‌شود؛ آزادبودن Brainstorming به معنی Merge خودکار به Registry نیست.

ConflictنمونهResolution
Duplicate concept«Callback مجدد» در دو شاخهیک Ref canonical + aliases
Competing typeیک Node هم Risk هم Findingsplit typed nodes + edge
Source conflictRULES-v3 و v4Authority/impact review
Status overwriteIdea سبز روی Run failedseparate status families
Layout conflictدو Parent پیشنهادیGraph relation + chosen projection rationale
Deletionسؤال حل‌نشده حذف می‌شودreject/archive with disposition

Map Debt و نشانه‌های فروپاشی

  • مرکز کلی و بیش از یک Purpose؛
  • شاخه‌های بسیار عمیق یا صدها Node بدون Projection؛
  • Duplicateهای ناشی از Parent واحد؛
  • Legendهای محلی و رنگ‌های چندمعنا؛
  • Node بی‌ID/Source/Owner؛
  • لینک/attachment شکسته یا بدون دسترسی؛
  • Map دستی جدا از Registry؛
  • Cross-linkهای ازدست‌رفته در Export؛
  • تصویر بدون Outline/long description؛
  • Session note مخلوط با Fact و Decision؛
  • View «Active» بدون facts-as-of/review-by؛
  • نقشه‌ای که هیچ‌کس برای Task واقعی مصرف نمی‌کند.

چه زمانی Mind Map انتخاب بدی است؟

نیاز غالبView بهترچرا
محاسبه Coverage دقیقRegistry + matrix/tableunique IDs و denominator
مدل State/Transitionstate diagram/tableguard و transition semantics
Timeline/sequencesequence/timelineorder و concurrency
Dependency چندبه‌چندtyped graphParent واحد تحریف می‌کند
Run accountingRun/Attempt recordsهویت، زمان و Outcome
Quantitative trendChart + exact tablescale/denominator/time
Approval/auditversioned contract/decision recordauthority/history
Long procedural stepsProcedure/checklistترتیب و repeatability

معیار انتخاب ابزار Mind Map

نام Vendor یا محبوبیت معیار نیست. با یک Fixture واقعی PoC کنید و قابلیت‌هایی را بسنجید که Contract شما لازم دارد.

قابلیتسؤال PoCFailure
Stable ID/custom fieldsپس از edit/export/import حفظ می‌شود؟Label-only nodes
Cross-linkstype/direction در round-trip می‌ماند؟tree-only loss
Version/historySnapshot و correction بازسازی می‌شود؟latest-only
Collaborationactor/time/conflict/disposition دارد؟silent overwrite
API/exportJSON/OPML/SVG/HTML قابل بازسازی است؟Vendor lock-in
Accessibilitykeyboard/zoom/text alternative ممکن است؟image-only
RTL/UnicodePersian labels/IDs/exports سالم‌اند؟reorder/tofu text
Securityaccess/classification/retention/audit چیست؟public shadow copy
PerformanceProjection بزرگ چطور عمل می‌کند؟unusable canvas

امنیت، Privacy و Retention

Brainstorming سریع می‌تواند نام واقعی، Endpoint، Token، Screenshot، ضعف امنیتی یا داده مشتری را بی‌محافظ وارد Canvas ابری کند. Data policy، classification، least privilege، sharing/export rule، retention و incident response باید پیش از Workshop روشن باشند. برای داده حساس، محیط و Fixture مجاز یا نقشه آفلاین انتخاب کنید.

اتوماسیون Map QA

MAP QA POLICY
ERROR: duplicate node ID, invalid schema, broken canonical reference
HOLD: unknown coverage ref, missing critical source/owner, foreign-build evidence
WARN: duplicate alias, stale review, color/status mismatch, lost round-trip field
INFO: presentation-only node, archived question, accepted non-impact change
HUMAN: semantic adequacy, map usefulness, exploration quality, risk decision
Never infer: coverage adequacy, product quality, defect absence or release readiness

AI در تولید و نگهداری نقشه

کارAI می‌تواندReview لازمممنوع
Draft branchesCandidate از Sources مجازDomain/Test reviewerساخت Source یا Fact
Clusteringگروه‌بندی Nodeهااز دست نرفتن relation/meaningParent=causal claim
DeduplicationSimilar refs پیشنهاد دهدidentity/semantic checkMerge خودکار
Map-to-outlineتوضیح بلند Draft کندinformation equivalenceحذف شاخه کم‌دید
Drift scansource/version candidatesImpact ownerاعلام خودکار Fresh
Coverage suggestionunmapped items را نشان دهدRegistry/eligibility reviewادعای Coverage کامل

Provenance خروجی AI باید model/tool version، prompt/template، source refs، scope، time و Reviewer را ثبت کند. اطلاعات حساس را به سرویس تأییدنشده نفرستید و Generated map را بدون Review به Artifact canonical تبدیل نکنید.

نقش‌ها و Decision Rights

تصمیم/کارResponsibleAuthority/Reviewer
Purpose/AudienceMap owner/facilitatorDecision consumer
Source/RegistryAnalyst/data curatorDomain authority
Node/Edge taxonomyTest information architectArtifact owners
Workshop captureFacilitator/scribe/contributorsWorkshop owner
DispositionNode/action ownersMeaning/decision authority
Coverage claimCoverage analystTest/decision reviewer
Session EvidenceExecutor/session ownerEvidence reviewer
Export/accessibilityDocs/platform ownerRepresentative users
Archive/correctionMap ownerDocumentation governance

Metricها و Countermetricها

MetricکاربردCountermetricبازی احتمالی
Unresolved questionsابهام قابل اقدامquestion quality/ageحذف سؤال
Canonical ref rateTraceability Nodeهاfalse/meaningless linksلینک مصنوعی
Duplicate/unknown refsMap integrityuseful aliases/new discoveryادغام بیش‌ازحد
Disposition lead timeتبدیل Workshop به Actiondecision correctness/reworkبستن عجولانه
Round-trip lossPortabilitysemantic importance of fieldsکاهش Schema برای سبزشدن
Retrieval task successUsabilitywrong-answer rateجواب سریع اما غلط
Accessible parity findingsView equivalencerepresentative-user feedbackOutline صوری
Maintenance effortهزینه Viewdecision/rework benefitحذف کنترل لازم

Pilot سی‌روزه برای Test Mind Map

روزتمرکزخروجیGate
۱–۵یک Purpose/CapabilityMap Contract و SourcesAudience/decision روشن
۶–۱۰Taxonomy/Legendtyped nodes/edges/statusesرنگ تنها معنا نیست
۱۱–۱۵Workshop/Sessionannotations + dispositionsFact/Idea/Observation جدا
۱۶–۲۰Registry mappingprojection و duplicate auditCoverage از Registry می‌آید
۲۱–۲۵Round-trip/accessibilityOPML/JSON/SVG/HTML bundleloss/RTL/parity visible
۲۶–۳۰Consumption/maintenancetasks/metrics/Tailoringcontinue/adjust/stop record

۳۰ Anti-pattern در نقشه ذهنی تست

  1. توجیه Map با تقلید شبکه عصبی مغز.
  2. آن را ابزار ایده‌آل جهانی دانستن.
  3. افزایش خلاقیت/کیفیت را قطعی دانستن.
  4. هر برگ را Scenario دانستن.
  5. برگ سبز را Test اجراشده دانستن.
  6. شمارش برگ را Coverage نامیدن.
  7. Mind Map را Test Plan گرفتن.
  8. Map را Charter یا Session Log کامل دانستن.
  9. Map finding را Bug Report دانستن.
  10. Parent-child را رابطه معنایی کافی گرفتن.
  11. Duplicate را دو Coverage Item شمردن.
  12. Idea/Question را وارد Coverage کردن.
  13. Source/Version را حذف‌کردن.
  14. Node بی‌ID و Owner ساختن.
  15. نوع Node را فقط با Icon نشان‌دادن.
  16. Status را فقط با رنگ نشان‌دادن.
  17. سبز را هم Active، هم Passed، هم Fresh معناکردن.
  18. Unknown را پنهان‌کردن.
  19. چند Purpose را در نقشه همه‌چیز جمع‌کردن.
  20. Layout را مدل دامنه دانستن.
  21. Cross-link را در Export بررسی‌نکردن.
  22. OPML را حفظ کامل semantics فرض‌کردن.
  23. تصویر را بدون Outline بلند منتشرکردن.
  24. RTL و LTR ID را تست‌نکردن.
  25. IRR و تومان را بی‌برچسب مخلوط‌کردن.
  26. Workshop annotation را خودکار canonical کردن.
  27. Map را با داده/Secret واقعی روی Canvas عمومی ساختن.
  28. AI cluster را حقیقت رابطه دانستن.
  29. Popular tool را Best tool نامیدن.
  30. READY_FOR_MAP_REVIEW را Coverage/Release proof دانستن.

چک‌لیست ۴۸ نقطه‌ای Map Review

  1. Purpose یک جمله و آزمون‌پذیر است.
  2. Audience/Decision نام‌برده شده است.
  3. Subject/Scope روشن است.
  4. Exclusionها روشن‌اند.
  5. Map ID/version دارد.
  6. Facts-as-of/cutoff دارد.
  7. Owner/Reviewer دارد.
  8. Review-by دارد.
  9. Canonical Sources شناسه/نسخه دارند.
  10. Registry snapshot ثبت شده است.
  11. Projection query/filter روشن است.
  12. Node taxonomy نسخه‌دار است.
  13. Edge taxonomy نسخه‌دار است.
  14. Legend نسخه‌دار است.
  15. Nodeها stable ID دارند.
  16. Node type machine-readable است.
  17. Label از Ref جدا است.
  18. Source links resolve می‌شوند.
  19. Owner برای Risk/Question/Action روشن است.
  20. Idea از Fact جدا است.
  21. Question از Assumption جدا است.
  22. Observation از Interpretation جدا است.
  23. Finding از Cause جدا است.
  24. Coverage Item از Leaf جدا است.
  25. Duplicate refs کنترل شده‌اند.
  26. Unknown refs بررسی شده‌اند.
  27. Coverage denominator Registry است.
  28. Eligibility/Scope ثبت شده است.
  29. Design status از Outcome جدا است.
  30. Outcome فقط به Attempt وصل است.
  31. Evidence ID/Build/Env روشن است.
  32. Foreign Evidence محدود/رد شده است.
  33. Color تنها حامل معنا نیست.
  34. Text status و prefix/icon وجود دارد.
  35. Contrast/monochrome بررسی شده است.
  36. Short alt Purpose را می‌گوید.
  37. Long description معادل اطلاعات است.
  38. Outline/table ساختاریافته وجود دارد.
  39. Keyboard/zoom/reflow بررسی شده است.
  40. Persian/RTL/LTR IDs بررسی شده‌اند.
  41. Digit/money/time semantics روشن‌اند.
  42. Round-trip expected counts دارد.
  43. Node/edge/attribute loss گزارش شده است.
  44. Export manifest tool/source/hash دارد.
  45. Annotations disposition دارند.
  46. Security/classification/retention روشن است.
  47. Automation limits صریح‌اند.
  48. Review result ادعای محدود دارد.

منابع فنی و دامنه استفاده

  • OPML 2.0 Specification: برای ساختار Outline درختی و محدودیت تبادل attributeها؛ نه مدل Test، Coverage standard یا تضمین round-trip ابزارها.
  • W3C WAI Complex Images: برای short/long text alternatives تصویر پیچیده؛ نه تضمین WCAG، صحت Map یا کفایت متن جایگزین بدون Review.
  • W3C WAI Accessibility Principles: برای پرهیز از Color-only meaning و اصول کلی قابل تشخیص‌بودن؛ نه ممیزی کامل Accessibility محصول یا ابزار.

جمع‌بندی: Map را View نگه دارید

نقشه ذهنی وقتی ارزش دارد که Purpose و Audience محدود، Node/Edge/Legend روشن، Source و Registry نسخه‌دار، Annotation قابل disposition، Export قابل آزمون و Alternative متنی معادل داشته باشد. شکل شاخه‌ای گفتگو را سازمان می‌دهد؛ حقیقت، Coverage و Outcome از Contractها و Evidenceهای بیرون Map می‌آیند.

برای شروع، یک نقشه موجود را انتخاب و فقط سه کار انجام دهید: به هر Node مهم Type/ID/Ref بدهید؛ رنگ‌ها را به Text Status تبدیل کنید؛ و Coverage را با Registry unique IDs دوباره محاسبه کنید. معمولاً همین سه کنترل تفاوت میان یک تصویر تزئینی و View قابل اعتماد را آشکار می‌کند.

سؤالات متداول درباره نقشه ذهنی در تست نرم‌افزار

۱. آیا نقشه ذهنی می‌تواند جایگزین Test Case یا Test Plan شود؟

نه به‌طور خودکار. Map می‌تواند View سبک یا ورودی طراحی باشد. اگر برای Context شما Artifact کافی است، باید Purpose، Basis، Scope، Risk، Oracle، owner، version و Evidence links لازم را داشته باشد. Decision/Execution semantics را فقط با رنگ و شاخه نگه ندارید.

۲. چگونه Coverage را با Mind Map محاسبه کنیم؟

ابتدا Coverage model و Registry eligible items را مستقل تعریف کنید. سپس unique node refs معتبر را به آن‌ها map کنید و Design/Evidence status را جدا حساب کنید. تعداد برگ‌ها یا برگ‌های سبز مخرج معتبر نیست و Duplicate/Idea/Note باید حذف یا طبقه‌بندی شود.

۳. برای تست اکتشافی چه چیزهایی در نقشه ثبت کنیم؟

Mission، Risk، Question و Idea پیش از Session؛ Path، Data، Observation و Interruption حین Session؛ و Finding، Evidence، Coverage note و Action پس از آن. Typeها را مخلوط نکنید و Session/Attempt/Build/Time/Actor را ثبت کنید.

۴. بهترین ابزار نقشه ذهنی برای QA چیست؟

بهترین نام جهانی وجود ندارد. Stable ID/custom fields، cross-link، version/history، collaboration، API/export، round-trip، accessibility، RTL/Unicode، security و retention را با Fixture خود PoC کنید. برای Workshop کم‌ریسک حتی کاغذ می‌تواند کافی باشد؛ برای Traceability canonical معمولاً Registry جدا لازم است.

۵. چگونه نقشه ذهنی تست را دسترس‌پذیر کنیم؟

Alt کوتاه Purpose را معرفی کند؛ Outline یا جدول بلندِ ساختاریافته اطلاعات و روابط ضروری را معادل‌سازی کند؛ رنگ تنها معنا نباشد؛ contrast، zoom، keyboard، focus و interactive parity بررسی شوند؛ و فارسی/RTL/LTR/Export با کاربران و فناوری‌های نماینده آزموده شود.

دیدگاهتان را بنویسید