సాఫ్ట్వేర్ సాధారణంగా వాతావరణాల ద్వారా స్థాపించబడుతుంది — అభివృద్ధి, స్టేజింగ్ మరియు ఉత్పత్తిని నిర్వహిస్తుంది — ప్రతిటి కోడ్ నుండి లైవ్ వినియోగదారుల వరకు పథంలో ఉద్దేశ్యం కూడా ఉండటం. కోడ్ను వాతావరణాల ద్వారా ప్రోత్సహించడం వాస్తవ వినియోగదారులకు చేరుకోవడానికి ముందు సమస్యలను పట్టుకుంటుంది.
విలక్షణ వాతావరణాలు
DEVELOPMENT (dev) → where developers build and test (local or a shared dev environment);
unstable, frequent changes, experimentation
STAGING (test/QA/pre-prod) → a PRODUCTION-LIKE environment for final testing:
→ mirrors production (same config/infrastructure as closely as possible)
→ run integration/E2E tests, QA, UAT before releasing
→ catch issues in a safe, prod-like setting BEFORE real users see them
PRODUCTION (prod) → the LIVE environment serving real users:
→ stability is critical; changes are careful and monitored
