IT Notes Module 3
📘 Objective 1: Explain the Concept of
Problem-Solving
🔹 1. What is Problem-Solving? (Exam Definition)
Problem-solving is the process of identifying a problem and developing a solution to
resolve it.
👉 In IT, it usually involves:
● Understanding a situation
● Finding what is wrong or needed
● Creating a solution (often using technology)
✅ CAPE-style answer (2–3 marks):
Problem-solving is the systematic process of identifying a problem, analysing it, and developing
an appropriate solution to resolve it.
🔹 2. Problem-Solving as a Process
Problem-solving is NOT a one-step thing — it is a series of steps followed in order.
💡 Key idea:
👉 You don’t just “fix” a problem — you go through stages to ensure the solution actually
works.
🔁 General Problem-Solving Process:
1. Identify the problem
2. Analyse the problem
3. Generate possible solutions
4. Select the best solution
5. Implement the solution
6. Evaluate (review) the solution
🔹 3. What is a “Problem”?
A problem is any situation where:
● There is a gap between what is happening and what should happen, OR
● A goal cannot be achieved without a solution
✅ Examples:
● A business cannot track sales → needs a database system
● A school has slow record-keeping → needs automation
● A website is not loading → needs troubleshooting
🔹 4. Problem-Solving in IT Context
In Information Technology, problem-solving often involves:
● Designing systems
● Creating programs
● Improving efficiency
● Automating tasks
👉 It focuses on:
● Logical thinking
● Step-by-step solutions
● Accuracy and efficiency
🔹 5. Key Characteristics of Problem-Solving
● Systematic → follows steps
● Logical → uses reasoning
● Goal-oriented → aims to solve a specific issue
● Analytical → breaks down problems
● Evaluative → checks if solution works
📘 Objective 2: Stages of the
Problem-Solving Process
🔹 Overview
The problem-solving process is a series of structured steps used to move from a problem
to a working solution.
👉 Each stage builds on the previous one — if you mess up early, everything else goes wrong.
🔁 1. Define the Problem
💡 Meaning:
Clearly state what the problem is.
👉 You must understand:
● What is happening now
● What should be happening
● The gap between the two
📌 Key Points:
● Identify the main issue
● Avoid being vague
● Focus on the root problem, not symptoms
✅ Example:
A business cannot keep track of inventory manually → errors occur.
🔍 2. Analyse the Problem
💡 Meaning:
Break the problem down to fully understand it.
📌 Includes:
● Gathering information (interviews, observation, documents)
● Identifying inputs, processes, outputs
● Finding causes and constraints
🎯 Goal:
Understand why the problem exists
✅ Example:
Inventory errors occur because records are handwritten and frequently lost.
💭 3. Identify and Evaluate Possible
Solutions
💡 Meaning:
Come up with different ways to solve the problem and assess them.
📌 Identify:
● Manual system improvement
● Computerized database system
● Inventory software
📌 Evaluate based on:
● Cost
● Efficiency
● Feasibility
● Time
● Resources
🎯 Goal:
Compare options and see which is best
🏆 4. Select and Justify the Optimal
Solution
💡 Meaning:
Choose the best solution and explain why it is best.
📌 Important:
● Must be justified (VERY important for exams)
● Show why it is better than alternatives
✅ Example:
A computerized database is selected because it is faster, more accurate, and reduces human
error.
⚙️ 5. Implement the Solution
💡 Meaning:
Put the chosen solution into action.
📌 Includes:
● Developing or installing system
● Training users
● Testing
🎯 Goal:
Make the solution work in real life
🔁 6. Evaluate and Review the Solution
💡 Meaning:
Check if the solution actually solved the problem.
📌 Ask:
● Did it fix the issue?
● Is it efficient?
● Are improvements needed?
🎯 Goal:
Ensure the solution is effective and make changes if necessary
🧠 Condensed Notes (Exam Revision)
Stages of Problem-Solving:
1. Define → Identify the problem clearly
2. Analyse → Gather info and understand causes
3. Identify & Evaluate Solutions → Generate and compare options
4. Select & Justify → Choose best solution and explain why
5. Implement → Put solution into action
6. Evaluate & Review → Check effectiveness and improve
📘 Objective 3: Identify Information
Needed to Solve Real-Life Problems
🔹 1. What This Objective Is About
👉
This is about:
👉
Figuring out what information you actually need to solve a problem
And classifying that information correctly
💡 Not all information is useful — some is:
● critical
● helpful
● irrelevant
● just for appearance
🔍 2. Identifying Necessary Information
💡 Meaning:
👉
Before solving a problem, you must determine:
What information is required to make a correct decision
📌 Types of Real-Life Problems
👤 Personal Problems
● Budgeting money
● Planning a schedule
👉 Needed info:
● Income, expenses, time available
🏢 Commercial Problems (Business)
● Inventory management
● Sales tracking
👉 Needed info:
● Stock levels, sales data, supplier details
🔬 Scientific Problems
● Experiments, research
👉 Needed info:
● Measurements, variables, observations
🌍 Social Problems
● Traffic congestion, crime rates
👉 Needed info:
● Statistics, reports, patterns
🎯 Key Idea:
👉 The type of problem determines the type of information needed
🗂️ 3. Categorization of Information
This is the MOST IMPORTANT PART for exams ⚠️
You must classify information into FOUR types:
🔴 1. Essential Information
💡 Meaning:
Information that is absolutely necessary to solve the problem
👉 Without it → you CANNOT solve the problem
✅ Example:
For payroll system:
● Employee hours worked
● Pay rate
🟡 2. Desirable Information
💡 Meaning:
Information that is not required, but helps improve the solution
👉 Makes solution better, but not required
✅ Example:
● Employee attendance trends
● Performance data
⚪ 3. Extraneous Information
💡 Meaning:
Information that is irrelevant to the problem
👉 Should be ignored
⚠️ Important:
This can confuse the solution
✅ Example:
● Employee favourite colour
● Employee hobbies (for payroll system)
🔵 4. Cosmetic Information
💡 Meaning:
Information used to make output look good, not affect function
👉 Purely presentation-based
✅ Example:
● Colours in a report
● Fonts, logos, layout
🧠 4. Why This Matters in Problem-Solving
● Prevents information overload
● Helps focus on relevant data
● Improves efficiency and accuracy
● Ensures better decision-making
🧠 Condensed Notes (Quick Revision)
● Identify relevant information based on problem type:
○ Personal, Commercial, Scientific, Social
Categories:
● Essential → must have (cannot solve without it)
● Desirable → helpful but not required
● Extraneous → irrelevant (ignore)
● Cosmetic → for appearance only
📘 Objective 4: Criteria for Selecting
Information
🔹 1. What This Objective Is About
👉 When solving a problem, you cannot use all information blindly
👉 You must decide:
● What to accept
● What to reject
💡 This is based on specific criteria (rules)
🧠 2. Key Criteria for Selecting
Information
These are the main factors you MUST know:
⚖️ 1. Bias
💡 Meaning:
Bias is when information is one-sided or influenced by opinion
❌ Problem:
● May mislead decision-making
✅ Example:
A company promoting its own product may only show positive reviews
👉 Exam point:
Unbiased information is more reliable
🎯 2. Accuracy
💡 Meaning:
How correct and error-free the information is
❌ Problem:
● Wrong data → wrong decisions
✅ Example:
Incorrect sales figures → wrong business decisions
👉 Always verify from trusted sources
🌍 3. Cultural Context
💡 Meaning:
Information must be appropriate to the environment or society
❌ Problem:
● Something valid in one country may not apply in another
✅ Example:
A business strategy from the USA may not work in Trinidad and Tobago
👉 Must fit the user’s situation
📦 4. Completeness
💡 Meaning:
Information must be whole and not missing key parts
❌ Problem:
● Incomplete info → poor decisions
✅ Example:
Having sales data without expenses → incomplete analysis
⏱️ 5. Currency (Up-to-date)
💡 Meaning:
How recent the information is
❌ Problem:
● Outdated info can be useless
✅ Example:
Using old technology data in a fast-changing IT environment
👉 Especially important for Internet sources
📚 6. Refereed vs Un-refereed Sources
📘 Refereed (Peer-reviewed):
● Checked by experts before publication
● More reliable
🌐 Un-refereed:
● Not checked (blogs, random websites)
● Less reliable
👉 Exam tip:
Refereed = trusted
Un-refereed = questionable
🌐 3. Characteristics of Information on the
Internet
⚠️ VERY COMMON EXAM AREA
❌ Issues with Internet Information:
● Can be biased
● May be inaccurate
● Often not verified
● Can be outdated
● Easily manipulated
✅ Advantages:
● Easily accessible
● Fast to obtain
● Large amount of information
🎯 Key Idea:
👉 Internet information must be carefully evaluated before use
🧠 Condensed Notes (Quick Revision)
Criteria for selecting information:
● Bias → avoid one-sided info
● Accuracy → must be correct
● Cultural context → must fit situation
● Completeness → must not be missing info
● Currency → must be up-to-date
● Refereed sources → more reliable
● Un-refereed sources → less reliable
Internet info:
● Not always reliable → must evaluate carefully
📘 Objective 5: Software Development
Models
🔹 1. What is a Software Development Model?
A software development model is a structured approach used to design, develop and
maintain a software system.
👉 It shows:
● How the work is organised
● The order of stages
● How developers and users interact
🔁 2. Types of Software Development
Models
🧱 1. Waterfall Model
💡 Meaning:
A linear, step-by-step model where each stage must be completed before moving to the next.
🔄 Flow:
Requirements → Design → Implementation → Testing → Maintenance
✅ Usage:
● When requirements are clear and fixed
● Large, structured projects
👍 Advantages:
● Simple and easy to understand
● Well-organised and documented
● Easy to manage
👎 Disadvantages:
● Hard to make changes later
● No user feedback until the end
● Errors found late
🔄 2. Evolutionary Development
(Prototyping)
💡 Meaning:
A model where a working prototype is built early and improved based on feedback.
✅ Usage:
● When requirements are unclear
● Systems involving user interaction
👍 Advantages:
● Early user involvement
● Requirements become clearer
● Faster feedback
👎 Disadvantages:
● Can become poorly structured
● Time-consuming if many changes
● Users may expect final system too soon
⚡ 3. Agile Software Development
💡 Meaning:
A flexible and iterative approach where software is developed in small parts (increments)
with continuous feedback.
✅ Usage:
● Projects that change frequently
● Fast-paced environments
👍 Advantages:
● Very flexible
● Continuous user feedback
● Faster delivery of parts of system
👎 Disadvantages:
● Requires strong teamwork
● Hard to predict time and cost
● Less documentation
🔁 4. Iterative / Incremental Model
💡 Meaning:
System is developed in small sections (increments) and improved through repeated cycles
(iterations).
✅ Usage:
● Large systems broken into parts
● When gradual development is preferred
👍 Advantages:
● Easier to manage
● Early partial system available
● Problems found earlier
👎 Disadvantages:
● Requires good planning
● Integration issues may occur
● Can become complex
📘 Objective 6: SDLC (System
Development Life Cycle)
🔹 1. What is SDLC?
The System Development Life Cycle (SDLC) is a structured process used to develop an
information system from start to finish.
👉 It ensures systems are:
● Well planned
● Efficient
● Meet user requirements
🔁 2. Stages of the SDLC
There are 6 main stages:
🧪 1. Feasibility Study
💡 Meaning:
Determines whether the system is worth doing
📌 Types of Feasibility:
● Technical → Do we have the technology?
● Economic → Is it cost-effective?
● Operational → Will it work in the organisation?
📤 Deliverable:
👉 System Proposal / Feasibility Report
🔍 2. Analysis
💡 Meaning:
Understanding the current system and user requirements
📌 Activities:
● Gather information (interviews, observation)
● Identify problems
● Define system requirements
📤 Deliverables:
● Requirements document
● Data Flow Diagrams (DFDs)
● Process descriptions
🧠 3. Design
💡 Meaning:
Plan how the system will work
📌 Activities:
● Design inputs, outputs
● Database design
● System architecture
📤 Deliverables:
● System design specifications
● Flowcharts
● Database structure
● Interface designs
💻 4. Development (Coding)
💡 Meaning:
Actually build the system
📌 Activities:
● Write code
● Create database
● Develop system components
📤 Deliverables:
● Working software
● Program code
🚀 5. Implementation
💡 Meaning:
Put the system into real use
📌 Activities:
● Install system
● Train users
● Convert from old system
🔄 Conversion Methods:
● Direct
● Parallel
● Pilot
● Phased
📤 Deliverables:
● Conversion plan
● User manuals
● Training materials
🔁 6. Review (Evaluation & Maintenance)
💡 Meaning:
Check if system works and improve it
📌 Activities:
● Testing system
● Fixing errors
● Updating system
📤 Deliverables:
● Test plans
● Maintenance reports
● Updated system
🧠 3. What is Software Engineering?
💡 Meaning:
Software engineering is the application of systematic methods and principles to develop
and maintain software.
👉 It ensures:
● Quality software
● Reliability
● Efficiency
📘 Objective 7: Tools Used in the SDLC
🔹 1. What This Objective Is About
👉 Different stages of the SDLC use different tools to:
● Collect data
● Design systems
● Plan development
● Build solutions
🔁 2. Tools by SDLC Stage (MOST
IMPORTANT)
🔍 🔹 ANALYSIS STAGE (Information
Gathering Tools)
These tools help understand the problem and gather requirements
📋 1. Questionnaires
💡 Meaning:
A set of written questions given to many users
✅ Use:
● Collect data from large groups quickly
👍 Advantage:
● Cheap and fast
👎 Disadvantage:
● Limited detail
🗣️ 2. Interviews
💡 Meaning:
Face-to-face discussion with users
✅ Use:
● Get detailed information
👍 Advantage:
● Clarification possible
👎 Disadvantage:
● Time-consuming
👀 3. Observation
💡 Meaning:
Watching how a system is currently used
✅ Use:
● Understand real processes
👍 Advantage:
● Shows actual behaviour
👎 Disadvantage:
● May miss hidden processes
📄 4. Review of Printed Material
💡 Meaning:
Examining existing documents (reports, forms)
✅ Use:
● Understand current system
🧠 🔹 DESIGN STAGE (System Modelling
Tools)
Used to represent how the system will work
🧩 5. Entity Relationship (ER) Diagrams
💡 Meaning:
Shows relationships between data (entities)
👉 Example:
Student → Enrolled in → Course
🔄 6. Data Flow Diagrams (DFDs)
💡 Meaning:
Shows how data moves through the system
👉 Inputs → Processes → Outputs
⚙️ 7. Process Models
💡 Meaning:
Shows how processes operate step-by-step
🧱 8. Object Models
💡 Meaning:
Represents system as objects with data + behaviour
🌳 9. Decision Tables & Trees
💡 Meaning:
Used to show decision-making logic
● Decision table → table format
● Decision tree → diagram format
📊 🔹 PLANNING / PROJECT
MANAGEMENT
📅 10. GANTT Charts
💡 Meaning:
A chart showing tasks vs time
👉 Helps track:
● Schedule
● Progress
💻 🔹 DEVELOPMENT STAGE
🔁 11. Prototypes
💡 Meaning:
Early version of system for testing ideas
🔀 12. Flowcharts
💡 Meaning:
Graphical representation of program logic
✍🏽 13. Pseudocode
💡 Meaning:
Step-by-step instructions written in plain English
💻 14. Programming Languages
💡 Meaning:
Used to write the actual system
👉 Example:
Python, Java, C++
🛠️ 🔹 ALL STAGES
🧰 15. CASE Tools (Computer-Aided Software
Engineering)
💡 Meaning:
Software tools that assist in system development
✅ Use:
● Automate tasks
● Improve productivity
🧠 3. Condensed Notes (Quick Revision)
🔍 Analysis:
● Questionnaires
● Interviews
● Observation
● Document review
🧠 Design:
● ER diagrams
● DFDs
● Process models
● Object models
● Decision tables/trees
📊 Planning:
● GANTT charts
💻 Development:
● Prototypes
● Flowcharts
● Pseudocode
● Programming languages
🛠️ All stages:
● CASE tools
📘 Objective 8: Data Flow Diagrams
(DFDs)
🔹 1. Definition of a DFD
💡 Meaning:
A Data Flow Diagram (DFD) is a graphical representation of how data moves through a
system, showing inputs, processes, storage, and outputs.
✅ CAPE Exam Definition:
A DFD is a diagram that shows the flow of data within a system, including processes, data
stores, external entities, and data flows.
🔹 2. The FOUR Symbols (VERY
IMPORTANT ⚠️)
You MUST know:
✔ Name
✔ Meaning
✔ Function
🧍 1. Entity (External Entity)
💡 Meaning:
A person, organisation, or system outside the system
📌 Function:
● Sends or receives data
✅ Example:
● Customer
● Bank
● Student
⚙️ 2. Process
💡 Meaning:
A step where data is processed or transformed
📌 Function:
● Takes input → produces output
✅ Example:
● Calculate total
● Process payment
🗄️ 3. Data Store
💡 Meaning:
A place where data is stored
📌 Function:
● Holds data for later use
✅ Example:
● Database
● File system
➡️ 4. Data Flow
💡 Meaning:
Shows movement of data between components
📌 Function:
● Connects entities, processes, and stores
✅ Example:
● “Customer details”
● “Payment info”
🧠 3. Levels of DFDs
🌍 1. Context Diagram (Level 0)
💡 Meaning:
The highest-level diagram showing the entire system as ONE process
📌 Features:
● Only one process
● Shows external entities
● Shows main data flows
● No data stores
🎯 Purpose:
👉 Gives a big picture overview
🔍 2. Level 1 DFD (Detailed Diagram)
💡 Meaning:
Breaks down the main process into smaller processes
📌 Features:
● Multiple processes
● Includes data stores
● Shows more detailed data flows
🎯 Purpose:
👉 Shows how the system actually works internally
📘 Objective 9: Concept of a
Well-Designed Algorithm
🔹 1. What is an Algorithm?
💡 Meaning:
An algorithm is a step-by-step set of instructions used to solve a problem.
✅ CAPE Definition:
An algorithm is a finite sequence of clearly defined steps used to solve a problem or perform a
task.
🎯 Key Idea:
👉 It is a plan for a solution before coding
👉 Think of it like a recipe
✅ Example (Simple Algorithm):
Problem: Add two numbers
Steps:
1. Start
2. Input number A and B
3. Add A + B
4. Display result
5. Stop
🔹 2. Algorithm as a Problem-Solving
Strategy
👉 Algorithms are used to:
● Break problems into steps
● Provide a clear solution plan
● Ensure problems are solved logically
📌 Role in Problem-Solving Process:
● Comes after analysis
● Before coding (development)
👉 Flow:
Problem → Analyse → Algorithm → Program → Solution
🔹 3. Importance of Algorithms
Algorithms are important because they:
● Ensure correct solutions
● Improve efficiency
● Reduce errors in programming
● Make solutions easy to understand and test
🔹 4. Characteristics of a Well-Designed
Algorithm (VERY IMPORTANT ⚠️)
You MUST know these for exams.
🔢 1. Finite (Has an End)
💡 Meaning:
The algorithm must finish after a limited number of steps
❌ Not infinite loop
✅ Must terminate
🎯 2. Clearly Defined / Unambiguous
💡 Meaning:
Each step must be:
● Clear
● Precise
● Not confusing
👉 Every person should interpret it the same way
🔁 3. Logical Flow of Control
💡 Meaning:
Steps must follow a correct order
👉 Flow should move:
● Step → Step → Step (no confusion)
🌍 4. General Solution
💡 Meaning:
The algorithm should solve all cases of the problem, not just one
✅ Example:
Algorithm to add numbers should work for:
● 2 + 3
● 10 + 50
● ANY numbers
🧠 Condensed Notes (Quick Revision)
● Algorithm = step-by-step solution to a problem
● Used as a plan before coding
Characteristics:
● Finite → must end
● Clear → no ambiguity
● Logical flow → correct order
● General → works for all cases
📘 Objective 10: Ways of Representing
Algorithms
🔹 1. What This Objective Is About
👉 An algorithm can be shown in different formats depending on:
● Clarity
● Purpose
● Audience
💡 The same algorithm can be written in:
● Words
● Diagrams
● Structured steps
🔁 2. The THREE Main Representations
🗣️ 1. Natural Language
💡 Meaning:
An algorithm written in plain English (or any human language)
✅ Example:
1. Start
2. Enter two numbers
3. Add the numbers
4. Display the result
5. Stop
👍 Advantages:
● Easy to understand
● No special knowledge needed
👎 Disadvantages:
● Can be ambiguous (unclear)
● Not structured
🔀 2. Flowcharts
💡 Meaning:
A diagrammatic representation of an algorithm using symbols and arrows
📌 Common Symbols:
● Oval → Start/End
● Rectangle → Process
● Diamond → Decision
● Arrow → Flow
👍 Advantages:
● Visual and easy to follow
● Shows flow clearly
👎 Disadvantages:
● Can become complex
● Time-consuming to draw
✍🏽 3. Pseudocode
💡 Meaning:
A structured, step-by-step description of an algorithm using simple English with
programming-like structure
✅ Example:
START
INPUT A, B
SUM = A + B
OUTPUT SUM
END
👍 Advantages:
● Clear and structured
● Easy to convert into code
👎 Disadvantages:
● Requires some understanding of logic
● Not executable
📘 Objective 11: Developing Algorithms
🔹 1. What This Means
👉 You must be able to:
● Write algorithms using pseudocode or flowchart logic
● Use:
○ Input
○ Processing
○ Output
● Apply control structures
🔁 2. Basic Algorithm Structure (ALWAYS
FOLLOW THIS)
Every algorithm should follow:
1. Start
2. Input
3. Process
4. Output
5. End
✅ Example:
START
INPUT A, B
SUM = A + B
OUTPUT SUM
END
🔹 3. Key Components
📥 1. Input
💡 Meaning:
Data entered into the system
✅ Example:
INPUT name
INPUT number
⚙️ 2. Processing
💡 Meaning:
Performing calculations or operations
✅ Example:
TOTAL = PRICE * QUANTITY
📤 3. Output
💡 Meaning:
Displaying results
✅ Example:
OUTPUT TOTAL
🔹 4. Control Structures (VERY
IMPORTANT ⚠️)
These control how the algorithm flows.
🔁 1. Sequence
💡 Meaning:
Steps are executed in order
✅ Example:
START
INPUT A
INPUT B
SUM = A + B
OUTPUT SUM
END
👉 Straight line — no decisions
🔀 2. Selection (Decision)
💡 Meaning:
Making a choice based on a condition
👉 Uses: IF statements
✅ Example:
START
INPUT MARK
IF MARK >= 50 THEN
OUTPUT "Pass"
ELSE
OUTPUT "Fail"
ENDIF
END
🔁 3. Repetition (Loop)
💡 Meaning:
Repeating steps multiple times
👉 Uses:
● FOR
● WHILE
● REPEAT
✅ Example:
START
FOR i = 1 TO 5
OUTPUT i
NEXT i
END
🔹 5. Putting It All Together (Exam-Level
Example)
🧠 Problem:
Find the average of 3 numbers and determine if it is greater than 50
✅ Algorithm:
START
INPUT A, B, C
TOTAL = A + B + C
AVERAGE = TOTAL / 3
IF AVERAGE > 50 THEN
OUTPUT "Above Average"
ELSE
OUTPUT "Below Average"
ENDIF
OUTPUT AVERAGE
END
🧠 Condensed Notes (Quick Revision)
Algorithm Structure:
● Start → Input → Process → Output → End
Components:
● Input → data entry
● Process → calculations
● Output → results
Control Structures:
● Sequence → step-by-step
● Selection → IF/ELSE
● Repetition → loops
📘 Objective 12: Relationship Between
Algorithms and Programming
🔹 1. Key Idea (Start Here)
👉 Algorithms come BEFORE programming
💡 You don’t just start coding — you:
1. Plan the solution (algorithm)
2. Then translate it into a program
✅ Simple Explanation:
An algorithm is the plan, and a program is the implementation of that plan using a
programming language.
🔁 2. Interrelationship Between
Algorithms and Programming
💡 How They Are Connected:
● An algorithm:
○ Describes what needs to be done
○ Written in pseudocode, flowcharts, or natural language
● A program:
○ Tells the computer how to do it
○ Written in a programming language
🎯 Relationship:
👉 A program is a direct translation of an algorithm into code
✅ Example:
Algorithm (Pseudocode):
START
INPUT A, B
SUM = A + B
OUTPUT SUM
END
Program (Python Example):
A = int(input())
B = int(input())
SUM = A + B
print(SUM)
👉 Same logic — different form
🔹 3. Algorithms as a Precursor to
Program Development
💡 Meaning:
Algorithms are created before coding begins
🎯 Why This Is Important:
● Helps plan the solution
● Reduces coding errors
● Makes programming easier
● Improves efficiency
🔹 4. Stages in Program Development
These are the steps from idea → working program:
🔁 Stages:
1. Problem Definition
→ Understand the problem
2. Algorithm Design
→ Create step-by-step solution
3. Coding (Programming)
→ Write code using a programming language
4. Testing & Debugging
→ Find and fix errors
5. Documentation
→ Explain how the program works
6. Maintenance
→ Update and improve program
🔹 5. Programming Paradigms
💡 Meaning:
Different styles or approaches to programming
📌 Types:
🔸 Procedural Programming
● Uses step-by-step instructions
● Based on procedures/functions
👉 Example:
● C
🔸 Object-Oriented Programming (OOP)
● Uses objects (data + behaviour)
👉 Example:
● Java
● Python
🔹 6. Examples of Programming
Languages
👉 Used to convert algorithms into programs:
● Python
● Java
● C++
🧠 Condensed Notes (Quick Revision)
● Algorithm = plan (step-by-step solution)
● Program = implementation (code)
Relationship:
👉 Algorithm → Program
Program Development Stages:
1. Define problem
2. Design algorithm
3. Code
4. Test
5. Document
6. Maintain
Paradigms:
● Procedural
● Object-Oriented