Gestionarea Cerințelor - sebiboga/testlink-upgraded GitHub Wiki
Gestionarea Cerințelor (Requirements Management) 📋
Ce sunt Cerințele?
Cerințele (Requirements) sunt descrieri ale funcționalității care trebuie implementată și testată:
Business Request
↓
Cerință: "Utilizatorii trebuie să se loghe cu Google OAuth"
↓
Implementation
↓
Test Cases: TC-001, TC-002, TC-003
↓
Execution & Tracking
↓
Release
Structura Cerință
Fiecare cerință are:
ID: REQ-050
Titlu: Login cu Google OAuth
Descriere:
Sistemul trebuie să accepte autentificare prin Google OAuth.
Utilizatorii pot folosi contul Google pentru acces rapid.
Status: Approved
Prioritate: High
Versiune: 2
Complexitate: Medium
Effort: 8 hours
Linked Test Cases: 5
Coverage: 100%
Implemented: ✅ v2.0 RC1
Creare Cerințe
Cine poate: Administrator, Manager, Requirements Analyst
Pași:
- Mergi la Proiect → Cerințe → Adaugă Cerință Nouă
- Completează:
| Camp | Descriere | Obligatoriu |
|---|---|---|
| ID | Unic (REQ-001) | ✅ |
| Titlu | Scurt și clar | ✅ |
| Descriere | Detalii ample | ✅ |
| Status | Draft/Approved/Rejected | ✅ |
| Prioritate | Critical/High/Medium/Low | ✅ |
| Complexitate | Simple/Medium/Complex | ❌ |
| Effort | Ore estimare | ❌ |
- Apasă Salvează
Exemplu Cerință Completă:
ID: REQ-201
Titlu: Transfer Bani între Conturi Interne
Status: Approved
Prioritate: Critical
Descriere:
Utilizatorii trebuie să poată transfera bani din orice cont
în alt cont din același bank.
Funcționalități:
- Input destinație cont (validare)
- Input sumă (cu limițe)
- Confirmare transfer
- SMS OTP verification
- Instant completion
- Transaction log
Constraints:
- Minimum transfer: 1 RON
- Maximum transfer: 999,999 RON
- Available: 8 AM - 8 PM (business hours)
- Transaction fee: 1 RON
Acceptance Criteria:
- Transfer success in < 5 seconds
- User gets SMS confirmation
- Transaction logged in database
- Audit trail complete
Status Cerință
| Status | Semnificație | Acțiune |
|---|---|---|
| Draft | Cerință temporară, neaprobată | Review și approve/reject |
| Approved | Validă, trebuie implementată | Assign to developer |
| In Progress | Codată în development | Monitor progress |
| Implemented | Codul e gata | Pass to QA pentru test |
| Tested | Testarea completă | Ready for release |
| Rejected | Refuzată | Archive |
| Deferred | Amânată pentru viitor | Re-plan |
Workflow Status:
Draft → Approved → In Progress → Implemented → Tested → Released
↑ ↓
└─────────── Rejected / Deferred ←────────────────────┘
Organizare Cerințe
Hierarchie:
Proiect: Banking v2.0
Epic: User Management
├─ REQ-100: User Registration
├─ REQ-101: User Profile
├─ REQ-102: Password Management
└─ REQ-103: Account Deactivation
Epic: Transfers
├─ REQ-200: Domestic Transfer
├─ REQ-201: International Transfer
├─ REQ-202: Transfer History
└─ REQ-203: Transfer Limits
Epic: Reporting
├─ REQ-300: Transaction Report
├─ REQ-301: Tax Report
└─ REQ-302: Export PDF
Folder Organization:
Poți grupa cerințe în folder-uri:
Requirements/
├─ v1.0/
│ ├─ REQ-001 to REQ-050
│ └─ Status: Completed
│
├─ v2.0/
│ ├─ REQ-100 to REQ-150
│ └─ Status: In Progress
│
└─ Future/
├─ REQ-200 to REQ-250
└─ Status: Not Started
Atribuite și Responsabilitate
Fiecare cerință trebuie atribuită:
REQ-201: Transfer Bani
├─ Owner (Analyst): Maria Ionescu
├─ Developer: Ion Popescu
├─ QA Lead: Alexandra Dumitrescu
└─ Stakeholder: Finance Manager
Schimbă Responsabili:
- Cerință → Editează
- Schimbă Owner/Developer/QA
- Salvează
Linkare cu Test Cases
Trasabilitate cruciala: Fiecare cerință → Test Cases
Metoda 1: Din Cerință
- Cerință → Linkuri → Adaugă Test Case
- Selectează test case din lista
- Apasă Salvează
Metoda 2: Din Test Case
- Test Case → Linkuri → Adaugă Cerință
- Selectează cerință
- Apasă Salvează
Exemplu Linkare:
REQ-201: Transfer Bani
├─ TC-201: Transfer amount validation
├─ TC-202: Destination account check
├─ TC-203: SMS OTP verification
├─ TC-204: Transaction log verification
└─ TC-205: Balance update verification
Coverage: 5/5 test cases = 100%
Status: All PASS ✅
Versionare Cerințe
Cerințele evoluează și se versioning:
REQ-201 (Transfer Bani)
├─ v1: Initial (approve Jan 2024)
├─ v2: Added international transfer (Feb 2024)
├─ v3: Added transfer limits (Mar 2024)
└─ v4: Added recurring transfers (current)
Fiecare versiune poate fi legată de build diferit:
v1 → Released în v1.5
v2 → Released în v2.0 RC1
v3 → Released în v2.0 RC2
v4 → Planned v2.1
Estimare și Tracking
Effort Estimation
REQ-201: Transfer
├─ Analysis: 4 hours
├─ Development: 16 hours
├─ Testing: 8 hours
├─ Documentation: 2 hours
└─ Total: 30 hours
Progress Tracking
REQ-201 Progress:
Status: In Progress (70% done)
├─ Analysis: ✅ Complete
├─ Development: 🟡 In Progress (80%)
├─ Testing: ⚪ Not Started
└─ Documentation: ⚪ Not Started
Timeline:
├─ Started: 2024-02-01
├─ Current Date: 2024-02-12
├─ Estimate End: 2024-02-20
└─ Days Left: 8
Traceability Matrix
Matrice completa: Requirements → Test Cases → Builds → Results
Matrice Complet:
REQ | Build v1.5 | Build v2.0 | Test Coverage | Status
----|------------|------------|---------------|--------
REQ-001 | ✅ Pass | ✅ Pass | 100% | Ready
REQ-002 | ✅ Pass | 🔴 Fail | 80% | Blocked
REQ-003 | ⚪ N/A | ✅ Pass | 100% | New feature
REQ-004 | ✅ Pass | ⚪ N/A | 100% | Deprecated
Cerințe Neacoperite
Raport automat: Care cerințe nu au test cases?
Untested Requirements Report:
REQ-045: Backup Automata
├─ Priority: High
├─ Status: Approved
├─ Tests: 0/0
└─ Action: Need to create test cases
REQ-067: Dark Mode
├─ Priority: Low
├─ Status: Draft
├─ Tests: 0/0
└─ Action: Can defer to v3.0
REQ-089: Mobile App
├─ Priority: Critical
├─ Status: In Progress
├─ Tests: 0/5
└─ Action: URGENT - Create tests now!
Gap Analysis
Identificare gaps în coverage:
Coverage Analysis:
Total Requirements: 100
With Test Cases: 90 (90%)
Without Test Cases: 10 (10%)
By Priority:
├─ Critical: 50/50 (100%) ✅
├─ High: 35/35 (100%) ✅
├─ Medium: 4/10 (40%) ⚠️
└─ Low: 1/5 (20%) ⚠️
Risk Assessment: MEDIUM
- Medium priority gaps need addressing
Stakeholder Communication
Raport pentru Stakeholder-i:
Requirements Status Report - 2024-02-12
Total Requirements: 100
Completed (Released): 50
- Status: ✅ In Production
In Development: 30
- Status: 🔄 On Track (85% complete)
Testing: 15
- Status: 🟡 Some issues found
Blocked: 3
- Status: 🔴 Waiting for decision
Not Started: 2
- Status: ⚪ Planned for v3.0
Overall: 95% on track for v2.0 release
Audit Trail
TestLink urmărește toți modificările:
REQ-201: Transfer Bani
Audit History:
2024-02-01 10:00 - Created by maria.ionescu
2024-02-05 14:30 - Status changed to Approved by manager
2024-02-10 09:15 - Linked TC-201 by alexandra.dumitrescu
2024-02-12 16:45 - Effort updated to 30h by ion.popescu
Best Practices
✅ DO:
- Crează cerințe DETAILATE și CLARE
- Linkează TOȚI test cases cu cerințe
- Track coverage pre-launch
- Review cerințe cu stakeholder-i
- Versioneaza importante requirements
- Archive oude requirements
❌ DON'T:
- Nu lansa cu coverage < 80%
- Nu uita untested requirements
- Nu modifica cerințe fără audit trail
- Nu ștergi cerințe (archivează)
- Nu ignora stakeholder feedback
Workflow Tipic
FAZA 1: PLANNING
- Product team define cerințe
- Stakeholder approve
- Status: APPROVED
FAZA 2: DEVELOPMENT
- Dev team start coding
- Status: IN PROGRESS
- Track effort / timeline
FAZA 3: QA PLANNING
- QA create test cases
- Link cu cerințe
- Estimate test effort
FAZA 4: TESTING
- Execute test cases
- Report results
- Status: TESTED
FAZA 5: RELEASE
- Verify coverage 80%+
- Go/No-Go decision
- Release to production
Gata cu Requirements? Merge la Trasabilitate pentru coverage tracking! 📊