Skip to main content
Version: Next

pcr.ai Software Requirements Specification

Version: v3.0.0 Status: Normative (text), Illustrative (diagrams only) Scope: Overview of SRS document conventions, terminology, and domain index Document Type: Introduction / Navigation


Statement

This document set defines the software requirements for pcr.ai, a PCR (Polymerase Chain Reaction) analysis and quality control system. The SRS comprises 88 domain-specific files containing approximately 350 testable requirements organized by functional area.

The introduction provides navigation guidance, establishes document conventions (requirement identifiers, normative language, section structure), defines domain terminology, and indexes all SRS files. Readers should reference this document to understand requirement format, locate specific domains, and interpret normative language throughout the specification.


Document Overview (Illustrative)

This diagram illustrates the document structure. The Introduction provides conventions and definitions used by all domain files.


1. Purpose and Scope

1.1 Purpose

This document set defines the software requirements for pcr.ai, a PCR (Polymerase Chain Reaction) analysis and quality control system.

1.2 Scope

In Scope:

  • Functional requirements for all pcr.ai modules
  • Non-functional requirements (performance, capacity)
  • Acceptance criteria for verification
  • Traceability to source documentation

Out of Scope:

  • Deployment and infrastructure specifications
  • Database schema definitions
  • API specifications (covered in separate documentation)
  • Test implementation details (covered in test plans)
  • User training materials

1.3 Intended Audience

  • Development teams implementing features
  • QA teams writing test cases
  • Product owners validating requirements
  • Regulatory reviewers assessing compliance

2. Document Conventions

2.1 Requirement Identifiers

All requirements use the format REQ-{DOMAIN}-{NNN}:

PatternExampleMeaning
REQ-{DOMAIN}-{NNN}REQ-KITCFG-001Functional requirement
REQ-RULES-{RULE}-{NNN}REQ-RULES-QSSC-001Rule-specific requirement
NFR-{CATEGORY}-{NNN}NFR-PERF-001Non-functional requirement

Identifiers are immutable. Once assigned, an identifier permanently refers to that requirement.

2.2 Normative Language

TermMeaning
shallMandatory requirement. Must be implemented.
shouldRecommended. Strong expectation unless justified otherwise.
mayOptional. Implementation discretion.

Only shall statements are testable requirements. Other language is explanatory.

2.3 Document Structure

Each domain SRS file contains:

SectionNormative?Description
OverviewNoContext and purpose
DefinitionsNoDomain-specific terminology
AssumptionsNoPreconditions for requirements
RequirementsYesTestable "shall" statements with acceptance criteria
RefinementsYesConstraints on requirements
Configuration OptionsNoConfigurable parameters
UI DetailNoPresentation specifications (survives UI redesign)
NotesNoImplementation guidance
Reviewer NotesNoConversion decisions and rationale
Traceability MatrixYesRequirement-to-test mapping

2.4 Acceptance Criteria

Each requirement includes acceptance criteria in table format:

| ID | Criterion |
|----|-----------|
| AC-01 | Given [context], when [action], then [outcome] |

Acceptance criteria describe behavior, not UI mechanics. They must survive a complete UI redesign unchanged.


3. Definitions

TermDefinition
Run / RunfileA PCR analysis batch from a thermocycler
WellA single PCR reaction container on a plate
ObservationA target measurement within a well
MixA combination of targets and dyes for an assay
TargetA specific DNA/RNA sequence being detected
CT (Cycle Threshold)The cycle number where fluorescence crosses threshold
ClassificationResult categorization: Positive, Negative, or Ambiguous
Westgard RulesStatistical QC rules (1:2S, 1:3S, 2:2S, R4S, 4:1S, 10X, 7T)
LIMSLaboratory Information Management System
Resolution CodeUser action to resolve a flagged well condition
SigmoidThe characteristic S-shaped curve of PCR amplification
IC (Internal Control)A control target used to detect reaction inhibition
RuleAn automated check executed during run analysis
Error CodeSystem-generated code indicating a validation failure

4. Domain Index

4.1 Domain Files

DomainFileDescription
Analyticsanalytics.mdRule execution on wells during processing
Analyzeranalyzer.mdData validation for imported run files
Audit Logaudit-log.mdChange tracking and compliance trails
Client Configclient-config.mdSystem-wide configuration settings
Commentscomments.mdUser tagging and notification
Config I/Oconfigio.mdConfiguration import/export
Error Codeserrorcodes.mdError codes from analytical rules
File Importfileimport.mdRun file ingestion from thermocyclers
Filtersfilters.mdGeneric filtering across tables/reports
Global UIglobalui.mdApplication-wide UI patterns
Helphelp.mdContext-sensitive help and tutorials
Keyboardkeyboard.mdKeyboard shortcuts
Kit Configkitcfg.mdMixes, targets, instruments, assays
NFRnfr.mdNon-functional requirements
Notificationsnotif.mdStatus icons and counts
Printprint.mdPDF export and print formatting
Progressprogress.mdProgress indicators
Reanalyzereanalyze.mdWell outcome management
Reportsreports.mdLevey-Jennings, Trends, Outcomes
Runfile Listrunfile-list.mdRun file browsing and filtering
Runfile Reportrunfile-report.mdIndividual run analysis
Sitesite.mdMulti-site configuration
Tablestables.mdGeneric table display
UIui.mdGeneric UI requirements
Upload Runsupload-runs.mdRun file upload
User Managementuser-management.mdUsers, roles, authentication
User Settingsuser-settings.mdPersonal preferences

4.2 Rules Domain

The Rules domain contains 61 files in the rules/ directory:

FileDescription
rule-engine.mdRules Engine Framework - mapping, ordering, error flow
rule-adj.mdADJ - Cross contamination detection
rule-amb.mdAMB - Ambiguous classification
rule-bpec.mdBPEC - Positive extraction control
rule-cc.mdCC - Control curve bounds
rule-combine-outcomes.mdCombined outcomes evaluation
rule-control-fail.mdControl failure propagation
rule-delta-ct.mdDelta CT validation
rule-downward-sigmoid.mdDownward sigmoid detection
rule-extraction-controls.mdExtraction control validation
rule-icct.mdIC CT validation
rule-inhibition-*.mdInhibition detection (6 variants)
rule-nec.mdNEC - Negative control validation
rule-qssc.mdQSSC - Standard curve quantification
rule-reporting-*.mdReporting rules (3 variants)
rule-threshold.mdThreshold validation
rule-westgards.mdWestgard statistical QC
rule-w*.mdWell-level rules (20+ variants)
(+ 30 additional rule files)

5. References

DocumentDescription
Confluence 3.0.0-Product RequirementsOriginal source (~77,000 lines)
Jira Epic BT-674Rules Engine epic
IEEE 29148:2018Systems and software engineering - Requirements engineering

6. Document Statistics

MetricCount
Domain SRS files27
Rule SRS files61
Total SRS files88
Total requirements~350
Validation status100% pass (no blocking issues)

7. Version History

VersionDateDescription
1.02026-01-15Initial SRS conversion from Confluence

Design DocumentRelevant Sections
SDD IntroductionSystem architecture overview
SDD GlossaryExtended terminology (127 terms)
SDD Master IndexTopic-based navigation

Appendix: Process Artifacts

Completion Checklist

  • Statement section present (1-2 paragraphs)
  • Mermaid diagram present and renders without errors
  • Diagram marked as (Illustrative)
  • No "non-normative" text anywhere
  • All original content preserved
  • Blank lines before bullet lists
  • All Trace references preserved (Source, Jira, Tests, Epics)
  • Related Design Documents section added
  • Appendix has Completion Checklist and Reviewer Notes

Reviewer Notes

Document Type: This is an introduction/index document, not a domain requirements file. It contains no REQ-* identifiers or acceptance criteria because its purpose is to:

  1. Establish document conventions used across all SRS files
  2. Define common terminology
  3. Index all domain files for navigation

Conversion Notes:

SectionDisposition
Purpose and ScopePreserved verbatim
Document ConventionsPreserved verbatim
DefinitionsPreserved verbatim
Domain IndexPreserved verbatim
ReferencesPreserved verbatim
Document StatisticsPreserved verbatim
Version HistoryPreserved verbatim

Additions:

  • Statement section summarizing document purpose
  • Mermaid diagram showing document structure relationship
  • Related Design Documents section linking to SDD
  • Process artifacts appendix

Reversibility: Source file preserved at output/srs/introduction.md