CSS Prepare

optional · CSS study notes

Software Engineering

CSS CS Optional — Paper-I, Section-B, Topic V. Chapter 5 intro concept.

🔑 Definition

  • Systematic application of engineering principles to: design, development, testing, deployment, maintenance of software.
  • Treats software building as disciplined & measurable, not ad hoc coding.

📌 Why "Engineering"?

  • Software is intangible, but still needs: reliability, maintainability, cost/schedule discipline.
  • "Software crisis" (1960s–70s): projects late, over-budget, unreliable → historical reason SE became its own discipline.

🎯 Goals

  • Meet functional + non-functional requirements.
  • Deliver on time, within budget.
  • Stay maintainable, reliable, scalable over its whole lifetime.

📋 Scope (each = own page)

  • Requirements Engineering → Design → Implementation → Testing → Deployment → Maintenance → Evolution.

⚠️ MCQ Trap

  • SE ≠ "just coding" — coding is one activity inside a much bigger disciplined process.