0% found this document useful (0 votes)
2 views63 pages

IT Notes Module 3

Module 3 covers the concept of problem-solving in IT, detailing a structured process that includes defining, analyzing, and implementing solutions. It emphasizes the importance of identifying necessary information and selecting reliable data based on criteria such as bias and accuracy. Additionally, it introduces software development models and the stages of the System Development Life Cycle (SDLC) to ensure effective system development.

Uploaded by

cherice043
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views63 pages

IT Notes Module 3

Module 3 covers the concept of problem-solving in IT, detailing a structured process that includes defining, analyzing, and implementing solutions. It emphasizes the importance of identifying necessary information and selecting reliable data based on criteria such as bias and accuracy. Additionally, it introduces software development models and the stages of the System Development Life Cycle (SDLC) to ensure effective system development.

Uploaded by

cherice043
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

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

You might also like