---
title: "Need of analysis and design"
subject: "Computer Programming"
chapter: 2
key: "semester_1/computer_programming:analysis-design-before-coding"
source: https://www.bctengineer.com/q/semester_1/computer_programming/analysis-design-before-coding
site: BCT Engineering
---

# Need of analysis and design

Computer Programming · Chapter 2: Problem solving using Computer

- Asked in: 2072 Kartik, 4 marks
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_1/computer_programming/analysis-design-before-coding
- Whole chapter: https://www.bctengineer.com/md/semester_1/computer_programming/chapter-2

## Question

Why do we need analysis and design before coding a program?

## Short answer

Analysis defines inputs, outputs, and requirements. Design creates an algorithm or flowchart to verify logic cheaply on paper, reducing costly coding errors, saving time, and leading to structured, testable code.

## Answer

Analysis and design should be done before coding because coding without a plan leads to wrong, costly and hard-to-maintain programs.

- **Clear understanding:** analysis tells exactly what the inputs, outputs and requirements are, so the right problem is solved.
- **Correct logic:** designing an algorithm and flowchart lets us check the logic on paper, where mistakes are cheap to correct.
- **Saves time and cost:** errors found after coding take much more effort to fix.
- **Efficient and structured code:** a good design chooses a better method, data structure and modules.
- **Easy coding:** each step of the design converts directly to statements.
- **Fewer bugs and easier testing:** a planned program has fewer logical errors.
- **Documentation and teamwork:** the design can be shared and used for later maintenance.

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. Doing design first saves time and cost because
   A. errors found after coding take more effort to fix
   B. it removes the need to code
   C. compilers need it
   D. programs run faster automatically
   Answer: A. Mistakes on paper are cheap. (Key point: Cost)

2. Analysis before coding ensures
   A. the program is portable
   B. the right problem is solved with known inputs and outputs
   C. variables are named
   D. the compiler is faster
   Answer: B. Analysis defines requirements. (Key point: Clear understanding)

3. Designing an algorithm and flowchart lets us
   A. skip testing
   B. avoid all bugs
   C. check the logic on paper
   D. avoid choosing a language
   Answer: C. Logic is checked early. (Key point: Correct logic)

4. The design also helps
   A. hide logic from others
   B. replace the program
   C. remove modules
   D. documentation and teamwork for later maintenance
   Answer: D. Design can be shared. (Key point: Teamwork)

## Related in Computer Programming

- [Need of control statements](https://www.bctengineer.com/question.md?key=semester_1%2Fcomputer_programming%3Awhy-control-statements) — Computer Programming, chapter 5, asked 2×
- [Need of stdio.h header file](https://www.bctengineer.com/question.md?key=semester_1%2Fcomputer_programming%3Astdio-header-need) — Computer Programming, chapter 3
- [Nested structures with example](https://www.bctengineer.com/question.md?key=semester_1%2Fcomputer_programming%3Anested-structure-explain) — Computer Programming, chapter 8, asked 7×
- [Why datatype in pointer declaration](https://www.bctengineer.com/question.md?key=semester_1%2Fcomputer_programming%3Apointer-datatype-needed) — Computer Programming, chapter 9

## Related in other subjects

- [Why do we need DFT](https://www.bctengineer.com/question.md?key=semester_7%2Fdigital_signal_analysis_and_processing%3Awhy-need-dft) — Digital Signal Analysis and Processing, chapter 7, asked 6×
- [Why do we need FFT](https://www.bctengineer.com/question.md?key=semester_7%2Fdigital_signal_analysis_and_processing%3Awhy-need-fft) — Digital Signal Analysis and Processing, chapter 7, asked 2×
- [Need for speech coding; vocoder concept](https://www.bctengineer.com/question.md?key=semester_7%2Fwireless_communication%3Aspeech-coding-need-vocoder) — Wireless Communication, chapter 6, asked 2×
- [Need for channel coding](https://www.bctengineer.com/question.md?key=semester_5%2Fdata_communication%3Achannel-coding-need) — Data Communication, chapter 8
