15/04/2026

What is Software Engineering

Meaning of Software Engineering

Software Engineering is made of two words:

  • (A) Software
  • (B) Engineering

(A) Software

Software means a collection of programs, data, and instructions used to perform tasks.

Examples:
  • WhatsApp
  • MS Word
  • Banking App
  • Games
  • ATM Software

(B) Engineering

Engineering means applying scientific knowledge, methods, tools, and techniques to solve problems.

Final Meaning

Software Engineering is the branch of engineering that deals with designing, developing, testing, maintaining, and improving software using proper methods.

Definition (Important for Exam)

Roger Pressman Definition:

Software Engineering is the systematic, disciplined, and measurable approach for development, operation, and maintenance of software.

2. Why Software Engineering is Needed?

Earlier software was developed without planning, causing:

  • Late delivery
  • High cost
  • Errors/Bugs
  • Poor quality
  • Difficult maintenance
So software engineering gives:
  • Proper planning
  • Better quality
  • Low cost
  • Fast development
  • Easy maintenance

3. Characteristics of Good Software

A good software must have these qualities:

  • 1. Correctness
  • 2. Reliability
  • 3. Efficiency
  • 4. Usability
  • 5. Maintainability
  • 6. Portability
  • 7. Security
  • 8. Scalability
  • 9. Reusability

4. Nature of Software

Software is different from hardware.

1. Software is Developed, not Manufactured
Hardware is manufactured in factories.
Software is created by coding.

2. Software Does Not Wear Out
Hardware gets old.
Software does not physically damage.

3. Software is Custom Built
Many software are developed as per customer needs.

4. Software is Intangible
Cannot touch software physically.

5. Software is Complex
Large software contains many modules.

4. Software Process

Meaning:

Software process is a set of activities used to produce good software product.

Handled by:

  • Software Engineer
  • Developer

5. Main Parts of Software Process

1. Software Specification
2. Software Development
3. Software Validation
4. Software Evolution

1. Software Specification

Means planning before development.

Includes:

  • Customer requirements
  • User needs
  • Features list
  • Functionalities
  • Programming language selection
  • Database selection

This is analysis stage.

2. Software Development

Actual creation of software.

Includes:

  • Coding
  • Designing
  • Programming using language

Software is developed according to customer requirement.

3. Software Validation

Means testing software after development.

Includes:

  • Check software works properly or not
  • Check customer requirements completed or not
  • Find errors
  • Remove bugs

Done by tester.

4. Software Evolution

Means changing software after delivery.

When client requirement changes, software also changes.

Includes:

  • New features
  • Flexibility
  • Scalability
  • Updates

6. SDLC Models

Meaning:

SDLC = Software Development Life Cycle

These models are used by developers to build software.

7. Types of SDLC Models Mentioned

Model Name
Waterfall Model
RAD Model
Spiral Model
V-Model
Incremental Model
Agile Model
Iterative Model
Big Bang Model
Share This
Latest
Next Post