Object-Oriented Software Development Process

3 Points of successful software

1. A successful software product must satisfy the stakeholder’s Requirements.

2. A successful software product must be developed on time and on budget.

3. A successful software product must be resilient to change.

Why do we need software engineering?

1. Increasing Size of Software product.

2. Increasing Complexity of Software product.

A development process defines WHO is doing WHAT, WHEN and HOW to reach a certain goal.

Basic workflows (or disciplines) in a process

1. Analysis

2. Design

3. Implementation

4. Testing -> (test code is very important!)

Problems in Conventional Software Development

1. Long delays

2. High development cost

3. High cancellation rate

4. Low quality

5. High maintenance cost

WaterFall Model Problems

1. Requirements can’t be Fairly Accurate.

2. Requirements aren’t Stable.

3. Design can’t be Done, before Programming.

~ page 17