Sprint Review زمانی شکست می‌خورد که یک Demo از مسیر موفق اجرا شود، چند نفر بگویند «عالی است» و تیم بدون تغییر Product Backlog جلسه را ترک کند. اجرای بی‌خطای سناریوی نمایشی، رأی تأیید و تعداد تست‌ها نشان نمی‌دهد Increment درست، Done و قابل استفاده بوده؛ Outcome برای ذی‌نفع واقعی ارزش دارد؛ Evidence به Build نمایش‌داده‌شده تعلق دارد؛ یا بازخورد به تصمیم و Adaptation تبدیل شده است.

نقش قابلیت تست در Sprint Review، اجرای «دموی QA» یا تأیید کیفیت نیست. این قابلیت کمک می‌کند تیم و ذی‌نفعان یک Outcome واقعی را با Context و محدودیت‌هایش بازرسی کنند، فاصلهٔ Product Goal تا Evidence را ببینند، بازخورد قابل‌ردیابی بسازند و دربارهٔ گام بعد تصمیم بگیرند. Sprint Review یک Working session است؛ نه ارائهٔ یک‌طرفه، UAT، Defect triage، Retrospective یا Release gate.

پاسخ کوتاه: Review شواهدمحور چه حلقه‌ای می‌سازد؟

Current Product Goal + environment changes
 -> inspect the Done, usable Increment
 -> observe stakeholder outcomes in context
 -> expose bounded evidence, risks and unknowns
 -> capture feedback as observations, not votes
 -> compare options and trade-offs
 -> decide adaptations
 -> update Product Backlog and follow-up records

Review موفق لازم نیست حتماً Backlog را عوض کند؛ ممکن است Evidence فعلی جهت را پشتیبانی کند. اما باید امکان واقعی بازرسی و Adaptation وجود داشته باشد. اگر نتیجه از پیش تعیین شده و Feedback فقط تشریفاتی است، رویداد به Show-and-tell تبدیل شده است.

Sprint Review در Scrum رسمی

عنصرتعریفبرداشت نادرست
Purposeبازرسی Outcome اسپرینت و تعیین Adaptationهای آیندهDemo قابلیت‌ها
ParticipantsScrum Team و ذی‌نفعان کلیدیPO به‌عنوان داور و QA به‌عنوان تأییدکننده
موضوعآنچه انجام شده و تغییرهای محیطفقط فهرست Ticketهای بسته
شکلWorking sessionPresentation یک‌طرفه
Adaptationهمکاری دربارهٔ کار بعد؛ Backlog ممکن است تغییر کندثبت چند نظر بدون تصمیم
ReleaseReview Gate انتشار نیستانتظار Sign-off تا پایان Sprint

راهنمای Scrum ۲۰۲۰ صریحاً می‌گوید Sprint Review نباید به ارائه محدود شود و Increment می‌تواند پیش از پایان Sprint به ذی‌نفع تحویل شود؛ Review هرگز Gate انتشار تلقی نمی‌شود. فقط Work مطابق Definition of Done بخشی از Increment است. منبع: Scrum Guide 2020.

مرز Sprint Review با رویدادها و Artifactهای نزدیک

فعالیتپرسش اصلیمرز
Sprint PlanningWhy/What/How Sprint چیست؟Plan آغازین Sprint
Daily ScrumPlan امروز چگونه با Goal سازگار شود؟Evidence Flow روزانه
Sprint ReviewOutcome و محیط چه Adaptation محصولی می‌طلبد؟همین مقاله
Retrospectiveکیفیت و اثربخشی شیوهٔ کار چگونه بهتر شود؟فرایند/تعامل/ابزار/DoD
UATآیا کاربران/Authority شرایط پذیرش Context را برآورده می‌دانند؟چرخهٔ پذیرش کاربر
Test Results presentationEvidence چگونه برای یک تصمیم ارائه شود؟ارائهٔ نتایج تست
Release decisionآیا با ورودی‌ها/Authority تعیین‌شده منتشر شود؟Status و Release packet

Tester قهرمان انحصاری کیفیت نیست

در Scrum، Scrum Team یک واحد cross-functional بدون زیرتیم QA/Development است و کل تیم برای Increment ارزشمند و مفید پاسخ‌گوست. فرد دارای قابلیت Testing می‌تواند Evidence، Oracle، Risk، Failure behavior و محدودیت استنتاج را روشن کند؛ فرد Domain، Operations، Accessibility یا Security Perspective دیگری می‌آورد. هیچ‌کدام به‌تنهایی «صدای کیفیت» یا نمایندهٔ همهٔ کاربران نیستند.

قابلیتContribution در Reviewادعای نامجاز
ProductGoal/value/options/trade-offتنها صدای همهٔ ذی‌نفعان
TestingEvidence/unknown/risk/oracle/limitationsتضمین کیفیت یا Done sign-off
Developmentرفتار/architecture/feasibilityفقط Happy-path demo
Operations/supportworkflow/recovery/observabilityنمایندگی همهٔ Production
Accessibility/user researchinteraction/participant evidenceاثبات پذیرش همهٔ کاربران
StakeholderContext/need/change/constraintرأی شخصی به‌عنوان بازار

Review Contract قابل‌کپی

SprintReviewContract {
  review_id, sprint_id,
  product_goal_id, sprint_goal_id,
  increment_id, build_digest,
  definition_of_done_version,
  product_backlog_snapshot,
  environment_snapshot, facts_as_of,
  stakeholder_contexts[],
  outcome_questions[],
  evidence_profile[],
  known_risks_and_unknowns[],
  interaction_format,
  feedback_schema,
  decision_and_adaptation_policy,
  record_owner, access_and_retention
}

این Contract الزام Scrum نیست؛ راهی برای جلوگیری از نمایش Build اشتباه، دادهٔ نمایشی نامعلوم و رأی‌های بی‌Context است. Review می‌تواند سبک باشد، اما هویت Increment/Build/Goal و محل ثبت Feedback/Adaptation نباید با حدس پر شود.

فقط Increment Done را به‌عنوان Increment ارائه کنید

Work ناقص می‌تواند برای شفافیت یا Conversation نشان داده شود، اما باید صریحاً Prototype/WIP/Experiment نامیده شود؛ طبق Scrum جزو Increment نیست، قابل Release یا حتی ارائه به‌عنوان Increment در Review نیست. مخلوط‌کردن Done و WIP در یک Demo، ذی‌نفع را دربارهٔ واقعیت محصول گمراه می‌کند.

وضعیتنحوهٔ نمایشClaim مجاز
Done Incrementمحصول قابل استفاده با Build/DoD مشخصOutcome محدود در Conditions آزموده‌شده
Prototypeبرچسب Prototype و سؤال یادگیریConcept feedback، نه readiness
WIPفقط برای شفافیت Plan/optionWork incomplete
Mock/Fakeمرز fidelity و componentهای fakeInteraction محدود
Recorded demoBuild/time/context recordingرفتار همان Snapshot
Slideپشتیبان Evidence/Trendجای Increment را نمی‌گیرد

Demo باید Outcome را قابل بازرسی کند

  • کدام Actor/Workflow و مسئله/Outcome در Product Goal مطرح است؟
  • این Increment چه Contribution ادعایی دارد؟
  • ذی‌نفع چه کار واقعی یا نزدیک به واقعیت می‌تواند انجام دهد؟
  • کدام مسیر/شرط/Failure برای تصمیم امروز معنادار است؟
  • چه چیزی عمداً خارج از Scope و Evidence است؟
  • چه مشاهده‌ای می‌تواند فرض فعلی را رد یا تغییر دهد؟

Script خشک که فقط بدون خطا اجرا می‌شود، Confirmation bias می‌سازد. اجازه دهید ذی‌نفع با محصول کار کند، سؤال بپرسد و Context خود را وارد کند؛ اما از یک مشاهدهٔ فردی به همهٔ کاربران یا بازار تعمیم ندهید.

Outcome با Output و Activity فرق دارد

لایهنمونهچه چیزی را اثبات نمی‌کند؟
Activity۲۰۰ تست اجرا شدکفایت یا ارزش
OutputFeature/endpoint ساخته شداستفاده/Outcome
BehaviorRetry در Lab duplicate effect نساختProduction distribution
User outcomeوظیفه در Sample سریع‌تر انجام شدهمهٔ کاربران/علت قطعی
Business outcomeConversion/هزینه/Support تغییر کردCausality بدون طرح مناسب
Product Goal progressEvidence چند Outcome/فرضGoal achieved مگر Gate روشن

Evidence را با Claim و محدودیت ارائه کنید

ReviewEvidenceClaim {
  claim_id, outcome_or_risk,
  population_and_context,
  increment_and_build_id,
  data_environment_oracle_refs[],
  evidence_refs[], observed_result,
  unknowns[], limitations[],
  confidence_rationale,
  decision_supported,
  explicitly_not_proven[]
}

«۲۰۰ تست و ۸۵٪ Coverage، پس پرداخت بدون Regression است» یک جهش استنتاج است. بگویید کدام Coverage Registry، کدام Build/Population/Risk، چه Outcome و چه Gapهایی. Evidence باید فهم و تصمیم را بهتر کند، نه اعتماد نمایشی بسازد.

Product Goal Progress Claim

ProductGoalProgress {
  product_goal_id, as_of,
  contribution_hypotheses[],
  evidence_for[], evidence_against[],
  environmental_changes[],
  unknowns[], risks[],
  current_interpretation,
  options[], next_learning_needed,
  owner_and_review_date
}

رنگ سبز/قرمز بدون Evidence/Unknown و Rule کافی نیست. Review می‌تواند نشان دهد Increment Done است ولی فرض Product Goal هنوز شاهد میدانی ندارد. Done دربارهٔ کیفیت Increment طبق DoD است؛ Outcome/Value پرسش دیگری است.

تغییر محیط را ورودی اصلی Review کنید

ChangeپرسشAdaptation ممکن
نیاز/Workflow ذی‌نفعOutcome فعلی هنوز مناسب است؟Refine Goal/PBI
رقیب/بازارفرض ارزش تغییر کرده؟Reorder/Experiment
Policy/constraintچه شرط تازه‌ای لازم است؟Risk/obligation
Production signalBehavior واقعی با Lab فرق دارد؟Observe/fix/test
Support patternکدام ambiguity تکرار شده؟UX/diagnostic candidate
Technology/dependencyFeasibility/cost تغییر کرده؟Option/architecture spike

Stakeholder را بر اساس تصمیم و Context انتخاب کنید

Contextدانش/تصمیمBlind spot
End user/representativeWorkflow و languageنمونهٔ محدود
Supportخطا/diagnostic/recoveryتمرکز روی موارد مشکل‌دار
Operationsdeploy/observe/recoverOutcome کسب‌وکار
Finance/domainRule/reconciliation/unitInteraction
Security/privacy/legalconstraint/risk/authorityValue/flow
Sales/marketneed/positioningrepresentativeness
Product leadershipGoal/options/trade-offجزئیات اجرا

حضور «همه» یا فقط Product Owner هر دو می‌تواند Feedback را محدود کند. Stakeholder map را با Product Goal و تصمیم Review تطبیق دهید؛ عدم حضور Perspective مهم را به Unknown تبدیل کنید.

Feedback رأی Approval نیست

ReviewFeedback {
  feedback_id, review_id,
  stakeholder_context,
  observed_at, increment_id,
  observation, expected_or_need,
  affected_outcome_or_goal_ref,
  consequence_or_opportunity,
  evidence_or_example_refs[],
  confidence_and_limits,
  type, disposition,
  decision_ref, backlog_change_ref
}

«دوست داشتم/تأیید» اطلاعات کمی دارد. بپرسید: در چه Workflow و برای چه Outcome؟ چه چیزی مشاهده شد؟ انتظار چه بود؟ پیامد چیست؟ Feedback می‌تواند Finding، Question، Need، Opportunity، Constraint، Risk signal یا Hypothesis باشد.

بازخورد مبهم را بدون هدایت پاسخ تبدیل کنید

عبارتسؤال خنثیخطر سؤال هدایت‌گر
این را دوست ندارمدر کدام کار/مرحله چه چیزی مانع شد؟پس رنگ دکمه بد است؟
خیلی کند استکدام Task، Context و انتظار زمانی؟۲ ثانیه خوب است؟
عالی استکدام Outcome بهتر شد و چه شاهدی دیدید؟پس Approve می‌کنید؟
این لازم نیستبرای کدام نقش/Workflow و چه جایگزینی؟حذفش کنیم؟
باید مثل قبل باشدکدام رفتار قبلی و چرا ارزش داشت؟پس Rollback؟

Feedback Triage و Disposition

Dispositionمعنارکورد
ACCEPT_AS_CANDIDATEنیازمند refinement/order استBacklog candidate ID
QUESTIONاطلاعات برای تصمیم کافی نیستOwner/Due
EXPERIMENTفرض نیازمند شاهد استHypothesis/measure/guardrail
DEFECTObservation به Defect workflow می‌رودDefect ID
DUPLICATEFeedback canonical وجود داردCanonical ID
DECLINEدر Product Goal/constraint فعلی دنبال نمی‌شودRationale/authority
DEFERبعداً با trigger/expiry بررسی می‌شودTarget/review date
NO_CHANGEEvidence جهت فعلی را پشتیبانی می‌کندDecision rationale

ثبت هر نظر به‌عنوان PBI، Backlog را به Inbox بی‌مالک تبدیل می‌کند. Product Owner پاسخ‌گویی مدیریت مؤثر Product Backlog را حفظ می‌کند؛ Feedback input است، Order تصمیم Product است.

Adaptation Record قابل‌پیگیری

ReviewAdaptation {
  adaptation_id,
  observation_and_evidence_refs[],
  product_goal_or_outcome_ref,
  options_considered[], tradeoffs[],
  decision, decision_authority,
  owner, due_or_review_at,
  product_backlog_change_ref,
  next_evidence_needed,
  assumptions_and_unknowns[]
}

«در Sprint بعد اضافه شود» Adaptation کامل نیست. تصمیم ممکن است Reorder، Refine، Split، Experiment، Stop، Continue، Goal review یا No change باشد. هرکدام باید به Evidence/Feedback و Backlog/Decision record متصل شوند.

Risk و Unknown را به زبان تصمیم ترجمه کنید

گزارش فنیClaim تصمیمی محدود
Load test در ۱۰۰ کاربر کند شددر workload/env W1، p95 از threshold قراردادی گذشت؛ Production capacity نامعلوم؛ گزینه‌ها…
Security تست شدScope/threat/Build مشخص؛ Findings و خارج از Scope…
Regression پاس شدRegistry R17/Build B17؛ Evidence obligations پذیرفته و Gapها…
UX خوب استدر Task/participants/context مشخص، Observation و limitation…
هیچ باگ بحرانی نداریمدر cutoff و defect population تعریف‌شده، مورد State/Severity X نیست؛ Unknown…

برای ساخت Presentation شواهدمحور، راهنمای ارائه نتایج تست را ببینید. Sprint Review فقط آن بخش از Evidence را مصرف می‌کند که Outcome/Product direction را قابل بازرسی می‌کند.

Defect در Sprint Review: نه پنهان، نه Triage کامل

اگر Defect روی Outcome، Increment، Product Goal یا تصمیم آینده اثر دارد، پنهان‌کردن آن برای «خراب‌نشدن Demo» ضدشفافیت است. Observation و اثر را کوتاه و دقیق بگویید؛ Triage، Root cause و Workflow رفع را در مسیر مدیریت نقص ادامه دهید. هر Defect لازم نیست زمان Review را بگیرد.

UAT و Sprint Review را یکی نکنید

بعدSprint ReviewUAT نمونه
هدفOutcome inspection و future adaptationپذیرش در برابر criteria/context
Cadenceهر Sprintطبق Release/contract/process
Authorityهمکاری Product؛ رأی رسمی ذاتی نیستAcceptance authority ممکن است باشد
Environment/dataIncrement قابل استفاده و context مناسبUAT contract
خروجیFeedback/options/Backlog adaptationaccept/reject/conditions/evidence
ReleaseGate نیستممکن است ورودی Gate باشد

آمادگی Review: Evidence Pack، نه اسکریپت نمایشی

  • Product Goal/Sprint Goal و سؤال‌های Outcome مشخص‌اند؛
  • Increment/Build/DoD و Done items دقیق‌اند؛
  • Environment/Data/Fake و محدودیت fidelity روشن‌اند؛
  • Stakeholder Contextهای لازم دعوت شده‌اند؛
  • مسیرهای تعاملی و failureهای تصمیم‌ساز آماده‌اند؛
  • Evidence/Unknown/Risk به Claimهای محدود متصل است؛
  • WIP/Prototype جدا و برچسب‌دار است؛
  • Feedback schema و Recorder آماده است؛
  • Decision/Backlog update path معلوم است؛
  • Fallback برای failure دمو، بدون جعل Outcome وجود دارد.

Failure دمو را چگونه مدیریت کنیم؟

رخدادپاسخ سالمپاسخ ناسالم
Environment downImpact/Unknown؛ recording با Build صریح؛ Follow-upSlide را Increment جا زدن
Unexpected failureObservation؛ containment؛ effect on claimپنهان/Retry تا سبز شود
Data mismatchSnapshot/lineage check؛ Claim معلقدادهٔ واقعی اضطراری
Stakeholder absentPerspective gap به Unknown؛ async follow-upPO را نمایندهٔ همه فرض کردن
Time expiresاولویت Outcome/decision؛ remaining recordحذف Feedback و فقط Demo
Sensitive findingSanitized impact؛ restricted follow-upافشای جزئیات

آزمایش تکرارپذیر: Demo موفق و چهار Approval

Fixture کاملاً ساختگی SYN-SPRINT-REVIEW-OUTCOME-01 چهار گام Demo را بدون خطا اجرا می‌کند و چهار رأی `approve` دارد؛ کنترل سطحی `PASS` می‌دهد. ممیزی Contract سپس Product/Sprint Goal، Increment/Build/DoD، Backlog/Environment، Done items، Evidence، limitation، Feedback و Adaptation را بررسی می‌کند.

Draft ساختگی آزمایش

بعدContractDraft
Product/Sprint GoalPG-9/SG-17PG-8/SG-16
Increment/BuildINC-B17-DONE/B17DEMO-B16/B16
DoD/Backlog/Environmentv4/PB18/ENV7v3/PB16/ENV5
ItemsP1/P2/P3 DoneP1/P2/P2/P4-WIP
EvidenceFunctional/Idempotency/Reconciliation/A11Yفقط IDemp B16
Limitationsبرای هر Claimهمه خالی
FeedbackContext/Observation/Goal/Dispositionدو FB-۱ ناقص
Goal progressEvidence + UnknownGREEN بدون هردو
AdaptationOwner/Decision/Backlog ref«بعداً feature اضافه شود»

خروجی واقعی Fixture

fixture: SYN-SPRINT-REVIEW-OUTCOME-01
superficial: PASS | demoSteps=4 | approvals=4

auditedDraft: HOLD
findings (31):
1 wrong-product-goal:PG-8->PG-9
2 wrong-sprint-goal:SG-16->SG-17
3 wrong-increment:DEMO-B16->INC-B17-DONE
4 wrong-build:B16->B17
5 stale-dod:DOD-v3->DOD-v4
6 stale-backlog:PB-SNAP-16->PB-SNAP-18
7 stale-environment:ENV-LAB-5->ENV-LAB-7
8 missing-outcome-contribution:P1
9 missing-evidence:P1:EV-FUNCTIONAL-B17
10 limitations-omitted:P1
11 missing-evidence:P2:EV-IDEMP-B17
12 missing-evidence:P2:EV-RECON-B17
13 limitations-omitted:P2
14 duplicate-demo-item:P2
15 missing-evidence:P2:EV-IDEMP-B17
16 missing-evidence:P2:EV-RECON-B17
17 limitations-omitted:P2
18 non-done-item-presented-as-increment:P4-WIP
19 missing-outcome-contribution:P4-WIP
20 limitations-omitted:P4-WIP
21 feedback-missing-context:FB-1
22 feedback-missing-observation:FB-1
23 feedback-missing-goal-or-outcome-ref:FB-1
24 feedback-missing-disposition:FB-1
25 duplicate-feedback-id:FB-1
26 feedback-missing-goal-or-outcome-ref:FB-1
27 feedback-missing-disposition:FB-1
28 product-goal-progress-without-evidence
29 product-goal-progress-unknowns-omitted
30 environment-changes-omitted
31 adaptation-missing-owner-decision-or-backlog-ref

corrected: READY_FOR_REVIEW_OUTCOME_ADAPTATION | findings=0

نسخهٔ اصلاحی و مرز نتیجه

نسخهٔ اصلاحی PG-۹/SG-۱۷/INC-B17-DONE/B17/DOD-v4/PB18/ENV7 را قفل کرد؛ P1/P2/P3 را با Contribution، Evidence و limitation نمایش داد؛ دو Feedback یکتا از Support و Finance با Observation/Goal/Disposition ثبت کرد؛ Product Goal را `PARTIAL_EVIDENCE` با دو Unknown اعلام و دو Adaptation را به Product Owner، Decision و Backlog change وصل کرد. نتیجه فقط `READY_FOR_REVIEW_OUTCOME_ADAPTATION` است.

  • همهٔ Goal/Increment/Build/PBI/Evidence/Feedback/نقش و رأی‌ها ساختگی‌اند.
  • Fixture حقیقت یا کفایت Evidence، Value، کیفیت یا Product Goal progress را نمی‌سنجد.
  • چهار Approval رأی معتبر بازار، UAT یا Authority نیست.
  • ۳۱ Finding معیار عملکرد تیم، Tester یا Review نیست.
  • خروجی Acceptance، Release، Risk acceptance یا compliance proof نیست.

سناریوی ایرانی کاملاً ساختگی: Review Checkout آفلاین

یک محصول خیالی Checkout در Lab قطع از شبکه مرور می‌شود. Increment B17 شامل مسیر پایه، Retry/Reconciliation جعلی و Interaction محدود است. اجزا Order، PaymentAttempt، PSP Stub جعلی، Callback، Ledger آزمایشی، Reconciliation و Notification fake هستند. هیچ بانک، PSP، کاربر، پول، تراکنش یا Production واقعی وجود ندارد.

Outcome سؤالInteraction/EvidenceLimitationFeedback Context
آیا retry ambiguity کم شده؟P2 + EV-IDEMP/REC B17PSP fake و Lab آفلاینSupport
آیا Ledger قابل فهم است؟IRR-labeled reconciliationهیچ settlement واقعیFinance
آیا Interaction قابل استفاده است؟keyboard/semantic evidenceSample/AT coverage محدودAccessibility
آیا Goal اثبات شد؟Partial evidenceProduction/user outcome UnknownProduct

هویت، مبلغ، Unicode و زمان در Review Lab

  • Tenant، Order، Attempt، Callback event، Ledger entry، Run، Build و Evidence ID مستقل‌اند.
  • مبلغ canonical فقط IRR ساختگی است؛ تومان فقط View برچسب‌دار است.
  • اعداد فارسی «۱۲۵۰۰۰»، عربی «۱۲۵۰۰۰» و لاتین «۱۲۵۰۰۰» synthetic هستند.
  • Instantها UTC/ISO ۸۶۰۱، View با Asia/Tehran و جلالی فقط Presentation است.
  • Timeout-before/after-fake-commit، retry، duplicate، late و reorder جدا هستند.
  • نام، موبایل، ایمیل، IP، حساب، کارت، PAN، CVV2، OTP، Cookie، Token، Secret، Log و Screenshot واقعی ممنوع‌اند.

این Lab توصیهٔ بانکی، مالی، حقوقی، مالیاتی، امنیتی، حریم خصوصی یا تحریمی دربارهٔ ایران نیست و رفتار هیچ PSP/بازار/کاربر واقعی را نمایندگی نمی‌کند.

Review Brief نمونه

Review: SYN-REV-17 | Increment: INC-B17-DONE | DoD v4
Product Goal: PG-9 | Sprint Goal: SG-17 | Environment: ENV-LAB-7

Outcome questions:
1) آیا recovery status ابهام Support را کم می‌کند؟
2) آیا Reconciliation با واحد صریح قابل فهم است؟

Evidence:
- Functional/Idempotency/Reconciliation/A11Y روی B17
- محدودیت: Lab آفلاین، PSP fake، بدون Production/user inference

Feedback:
- FB-1 Support: reason code اپراتوری غایب → Backlog candidate
- FB-2 Finance: export نیازمند برچسب IRR → Backlog candidate

Product Goal: PARTIAL_EVIDENCE
Unknown: توزیع Callback واقعی؛ فهم کاربران نماینده

Adaptations:
- DEC-1/PB-CHANGE-1: refine reason-code candidate
- DEC-2/PB-CHANGE-2: explicit IRR label candidate

Remote/Hybrid Sprint Review

  • Increment interactive و keyboard-accessible باشد، نه فقط Screen share؛
  • Caption، description و مسیر متن برای Evidence بصری فراهم شود؛
  • Timezone و Context Stakeholder ثبت شود؛
  • Feedback async به همان Increment/Build/Question وصل شود؛
  • Breakout فقط با سؤال/Outcome و Merge record؛
  • رأی emoji جای Observation/Disposition را نگیرد؛
  • Recording با consent/access/retention و Build ID باشد؛
  • تصمیم‌ها در Product Backlog canonical همگام شوند.

امنیت و حریم خصوصی Review

ریسککنترلجایگزین
Demo با Production dataمنع/approval/redactionsynthetic dataset
نمایش Token/Logpre-review scansanitized evidence ref
Security findingneed-to-knowimpact summary + restricted follow-up
Recordingconsent/access/expirydecision notes
Stakeholder identityminimizationrole/context code
Feedback sensitivityclassificationrestricted record
External AI/toolapproved data routelocal/synthetic input

هوش مصنوعی در Sprint Review

کاراستفادهٔ محدودGate
Review briefDraft از Source IDsIncrement/Build/Evidence check
Feedback captureTranscript→candidate recordsStakeholder confirmation
Theme clusteringCandidate duplicate/thememinority/context preservation
Question generationOutcome promptsnon-leading review
Adaptation optionsCandidate trade-offsProduct Owner/team decision
SummaryDraft decision/backlog changescanonical records

مدل ممکن است Feedback اقلیت را حذف، رأی را Consensus، WIP را Done، هم‌بستگی را علت یا Risk را قطعی کند. Model/version، Prompt، Source، خروجی خام و اصلاح انسانی را ثبت کنید. AI نمی‌تواند Stakeholder context، Product accountability یا Evidence را جایگزین کند.

نقش‌ها و حق تصمیم

نقش/قابلیتدر Reviewمرز
Scrum TeamIncrement/Outcome/learning را بازرسی می‌کندDemo team جدا ندارد
Product OwnerProduct Goal/Backlog/value accountabilityتنها تولیدکننده Feedback نیست
DevelopersIncrement و همهٔ قابلیت‌های لازم را نمایندگی می‌کنندفقط ارائهٔ فنی نیست
Testing capabilityEvidence/limits/risk/unknownQA sign-off یا کیفیت‌قهرمانی نیست
StakeholdersContext/observation/need/changeرأی جمعی Release نیست
Recorder/facilitatorFeedback/Decision/Adaptation lineageOrder/authority را تصاحب نمی‌کند
Release/UAT authorityدر فرایند جدا تصمیم می‌گیردبه‌طور ذاتی Review participant نیست

برای مالکیت مشترک بدون ابهام، راهنمای رهبری تضمین کیفیت را ببینید. Review باید Perspectiveهای مختلف را به تصمیم متصل کند، نه یک فرد را سخنگوی کیفیت سازد.

Metricهای سلامت Review و Countermetricها

Metricتعریف محدودCountermetric
Stakeholder context coverageContextهای لازم حاضر/کلrepresentativeness/depth
Interaction ratioزمان کار/گفت‌وگو نسبت به ارائهdecision quality
Feedback traceabilityFeedbackهای با Increment/Context/Goalnovelty/value
Disposition latencyFeedback تا decisionpremature decisions
Adaptation closureBacklog changes با Owner/decisionoutcome realized
Unknown agingسن Unknownهای Goalforced certainty
Evidence correctionClaimهای تصحیح‌شدهunder-reporting
Demo failure recoveryزمان/کیفیت responseconcealment
AttendanceContextهای حاضرengagement/relevance
Review durationزمان Working sessionlearning/decision outcome

تعداد Feedback، Attendance یا Backlog item را KPI فردی نکنید. تیم می‌تواند Feedback کم اما مهم یا تصمیم No-change داشته باشد. Metric برای بهبود حلقه است، نه اثبات ارزش Tester یا Review.

ضدالگوهای نقش تستر در Sprint Review

  • تستر به‌عنوان قهرمان/صدای انحصاری کیفیت؛
  • Developer فقط Happy path و Tester فقط edge case؛
  • QA demo جدا از Increment؛
  • Sign-off تستر برای Done؛
  • Review به‌عنوان UAT یا Release gate؛
  • نمایش WIP/Prototype به‌عنوان Increment؛
  • Build/DoD/Data/Environment نامعلوم؛
  • Script بی‌خطا به‌عنوان Evidence Value؛
  • ۲۰۰ تست/۸۵٪ Coverage به‌عنوان عدم Regression؛
  • رنگ سبز Product Goal بدون Evidence/Unknown؛
  • پنهان‌کردن Defect برای حفظ Demo؛
  • Triage کامل Defect در Review؛
  • Feedback به شکل رأی/emoji/«دوست داشتم»؛
  • PO به‌عنوان نمایندهٔ همهٔ کاربران؛
  • دعوت همه بدون Stakeholder context؛
  • پرسش‌های هدایت‌گر برای گرفتن Approval؛
  • هر Feedback مساوی PBI؛
  • Backlog candidate بدون Disposition/Owner؛
  • Adaptation «Sprint بعد» بدون Decision/ref؛
  • Slide/recording جای Increment؛
  • دادهٔ Production/Token در Demo؛
  • AI summary که Feedback اقلیت را حذف می‌کند؛
  • Metric Attendance/Feedback برای ارزیابی فرد؛
  • عدم تغییر از پیش تعیین‌شدهٔ Product Backlog؛
  • ادعای Trust/quality/value/release از Review.

Pilot سی‌روزه برای Outcome Review

بازهکارخروجی
روز ۱–۵مشاهدهٔ Review فعلی: presentation/interaction/feedback/adaptationBaseline
روز ۶–۱۰تعریف Increment/Outcome/Evidence/Feedback contractsTemplate v0.1
روز ۱۱–۱۵Fixture synthetic و تمرین WIP/Build/feedback mismatchExecutable audit
روز ۱۶–۲۰یک Review shadow با Outcome questionsGap/learning log
روز ۲۱–۲۴تمرین demo failure، absent stakeholder و No-changeRecovery evidence
روز ۲۵–۲۷Remote/accessibility/privacy/AI reviewApproved route
روز ۲۸–۲۹Metric+Countermetric و مصاحبه ذی‌نفعTrade-off report
روز ۳۰Adopt/Adapt/Stop و rollbackDecision record

چک‌لیست Sprint Review شواهدمحور

  • Product Goal و Sprint Goal دقیق‌اند.
  • Increment ID/Build/DoD و Facts-as-of ثبت شده‌اند.
  • فقط Done واقعی به‌عنوان Increment نمایش داده می‌شود.
  • WIP/Prototype/Fake/recording برچسب و limitation دارد.
  • Product Backlog و Environment snapshot تازه است.
  • Outcome questions پیش از Demo روشن‌اند.
  • هر item Contribution به Outcome/Goal دارد.
  • Evidence به Build/Data/Environment/Oracle متصل است.
  • Evidence for/against و Unknown نمایش داده می‌شود.
  • Counterclaim و explicitly-not-proven روشن است.
  • Product Goal progress از Done جداست.
  • Environment changes بررسی شده‌اند.
  • Stakeholder contexts با تصمیم تناسب دارند.
  • Perspective غایب به Unknown تبدیل شده است.
  • Interaction واقعی یا نزدیک به Context فراهم است.
  • Demo script Feedback را هدایت نمی‌کند.
  • Failure/edge فقط وقتی تصمیم‌ساز است نمایش داده می‌شود.
  • Feedback ID/Context/Observation/Goal ref دارد.
  • Question/Need/Risk/Defect/Opportunity تفکیک می‌شوند.
  • رأی/emoji جای Feedback record نیست.
  • هر Feedback Disposition/rationale می‌گیرد.
  • Backlog candidate با Product Owner/Order اشتباه نمی‌شود.
  • Options و trade-offs ثبت می‌شوند.
  • Adaptation Owner/Decision/Backlog ref دارد.
  • No-change نیز rationale دارد.
  • UAT/Release/Risk acceptance جدا هستند.
  • Defect اثرگذار شفاف ولی Triage جداست.
  • Demo data/recording/AI مسیر امن دارند.
  • Metricها Countermetric و Context دارند.
  • نتیجه ادعای کیفیت/ارزش/بازار/Release جهانی نمی‌کند.

مسیر مطالعهٔ مرتبط

سؤالات متداول درباره نقش تستر در Sprint Review

۱. آیا تستر باید Demo را اجرا کند؟

Scrum نقش Presenter ثابت تعیین نمی‌کند. هر فردی از Scrum Team که بهترین Context را برای Interaction دارد می‌تواند تسهیل کند؛ بهتر است Demo «Developer versus Tester» نباشد. قابلیت تست روی Evidence، Risk و limitation کمک می‌کند، اما Demo جداگانهٔ QA یا اجرای نمایشی edge case الزام نیست.

۲. آیا Sprint Review جلسه تأیید Done یا UAT است؟

خیر. فقط Work مطابق DoD بخشی از Increment است و این واقعیت باید پیش از Review شفاف باشد. Review Outcome و Product direction را با ذی‌نفعان بازرسی می‌کند؛ UAT یا Sign-off ممکن است Contract، Environment، Criteria و Authority جدا داشته باشد. Review نیز Gate انتشار نیست.

۳. باگ و ریسک را در Sprint Review مطرح کنیم؟

اگر بر Outcome، Increment، Product Goal یا تصمیم بعدی اثر دارد، Observation و اثر را شفاف و محدود مطرح کنید؛ پنهان‌کردن برای حفظ Demo درست نیست. جزئیات Triage/Root cause را به Defect workflow ببرید. هر Bug کم‌اثر یا Log فنی لازم نیست Timebox Review را مصرف کند.

۴. چگونه Feedback مبهم ذی‌نفع را قابل‌اقدام کنیم؟

بدون هدایت پاسخ بپرسید: در کدام Workflow/Context چه چیزی مشاهده شد؟ انتظار یا Need چه بود؟ کدام Outcome/Product Goal متاثر می‌شود؟ مثال چیست و چه محدودیتی دارد؟ سپس Feedback را Question، Need، Risk، Defect، Opportunity یا Hypothesis طبقه‌بندی و Disposition/Decision/Backlog ref ثبت کنید.

۵. آیا رأی تأیید ذی‌نفعان برای انتشار کافی است؟

خیر. رأی در Demo نه نمایندگی بازار را تضمین می‌کند، نه UAT/ریسک/عملیات/امنیت را پوشش می‌دهد و نه Authority انتشار می‌سازد. Release decision باید طبق Governance و Evidence packet خود انجام شود. Sprint Review می‌تواند ورودی مهم بدهد، اما خودش Gate انتشار نیست.

جمع‌بندی: از Demo به Outcome Adaptation

مشارکت مؤثر قابلیت تست در Sprint Review با اجرای edge case یا نمایش تعداد تست‌ها تعریف نمی‌شود. Increment Done و Build واقعی را قابل تعامل کنید؛ Evidence و Unknown را به Outcome/Product Goal وصل کنید؛ محدودیت استنتاج را پنهان نکنید؛ Feedback را با Context و Observation ثبت کنید؛ و آن را به گزینه، تصمیم و Product Backlog change تبدیل کنید. Review زمانی ارزش دارد که محصول و محیط را صادقانه قابل بازرسی و جهت آینده را قابل سازگاری کند—بدون قهرمان‌سازی QA، UAT نمایشی یا وعدهٔ کیفیت و Release.

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