Skip to content
Computer Engineering (CPE)

Software Engineering

"Coding is art; Software Engineering is discipline. It's applying engineering principles to software creation. SDLC, Agile, Testing - this is how we build scalable systems."

1. SDLC Models ๐Ÿ”„

Waterfall

Sequential. Req -> Design -> Dev -> Test -> Deploy. Rigid. Hard to go back.

Agile

Iterative. Sprints. Flexible. Customer feedback loop. (Scrum, Kanban).

2. Testing ๐Ÿงช

  • Unit Testing: Testing individual components/functions in isolation.
  • Integration Testing: Testing how modules work together.
  • System Testing: Testing the complete, integrated system.
  • Acceptance Testing: Does it meet user requirements?

3. Design Patterns ๐ŸŽจ

Reusable solutions to common problems.

  • Creational: Singleton, Factory, Builder. (How objects are created)
  • Structural: Adapter, Facade, Proxy. (How objects are composed)
  • Behavioral: Observer, Strategy, Command. (How objects communicate)

Test Your Knowledge! ๐Ÿง 

Ready ka na ba? Take the practice quiz for Software Engineering to reinforce what you just learned.

Start Practice Quiz ๐Ÿ“

๐Ÿ“š More from Computer Engineering (CPE)