📌 Snapshot
- Project based learning explained: five steps, three approaches, teamwork skills and three sample projects.
- The five steps in the right order, and who monitors a project: the project leader and the guide teacher.
- Modular, top down and bottom up approaches compared, plus six components of good teamwork.
- Restaurant billing, a bomb clearing puzzle and Match the Sum broken into modules, with the code ideas behind them.
📖 Detailed Notes
Written and reviewed by Rohit Singh, Computer Science & Commerce faculty at UniDrill (MCA, Osmania University · 6 years teaching). Based on NCERT Computer Science Class XII, Chapter 13.
Why do group projects fall apart, and how do you stop that?
Every class has seen it: four students, one deadline, and three people waiting for the fourth. The chapter on project based learning is the fix. It gives you a fixed route from the first idea to the finished product, a way to cut a big problem into small pieces, and the habits a team needs. The key facts are the order of the steps and who does what, so learn the steps by heart and understand why each one sits where it does.
What project based learning is
Project based learning (PBL) gives students thorough practical exposure to the problem on which a project is based. Projects are usually done in groups, so students also learn to work together, solve problems, take decisions and investigate. The work follows a pattern: analyse the problem, split it into small modules, apply a method to solve each module, and then integrate the solutions of all the modules into the complete solution.
To solve the problem, the team gathers the relevant data in the format the project needs, processes it with a chosen method, and reports the results in a predetermined format. All team members must be involved.
Three approaches to a project
| Approach | How the work is organised |
|---|---|
| Modular (structured) | The project is divided into manageable modules. Each module has a well defined task, takes a set of inputs and produces a set of outputs. When integrated, the modules give the desired outcome |
| Top down | Start with the whole problem and break it into smaller and smaller sub-problems until each is easy to solve |
| Bottom up | Start by building the small basic components first, then join them step by step into the complete system |
A modular plan can be worked out either top down or bottom up.
Beyond the textbook. For the exam: learn the three approach names and the modular definition: modules with defined tasks, inputs and outputs. In reality: real teams rarely use one approach in its pure form. They plan top down so that everyone sees the whole, build and test small parts bottom up, and revisit the plan as testing shows problems. The ability to change the plan is part of good planning.
The five steps of a project
The cycle in one line: Identification of a project → Defining a plan → Fixing a time frame and processing → Guidance and monitoring → Outcome of the project.
| Step | Name | What happens | Key points to remember |
|---|---|---|---|
| 1 | Identification of a project | The idea comes from a real life situation, such as organising a seminar. Understand its usefulness and impact | Interdisciplinary projects are encouraged |
| 2 | Defining a plan | Project members, one project leader, roles of the leader and each member, specific activities and the tools to be used | Think about extreme situations to get a better solution |
| 3 | Fixing a time frame and processing | Every activity needs time. The project must be well structured and also flexible in its time frame | Every project is time relevant |
| 4 | Providing guidance and monitoring | Members who get stuck use books, websites and experts. The project leader monitors, and the guide teacher also helps to monitor | Two people monitor: the leader and the guide teacher |
| 5 | Outcome of a project | Understand the outcome thoroughly. It can be single or multiple | It can be peer reviewed and modified using feedback from the guide teacher or other users |
Why this order? You cannot plan a project you have not identified, you cannot set a time frame for activities you have not defined, and guidance is needed only once work is under way. The outcome is judged against the idea you began with.
Pause and predict: A member is stuck on a part of the program, and the team asks a senior student and searches a website. Which step of the project is this, and who must make sure progress continues?
Check your answer: Step 4, providing guidance and monitoring. Guidance can come from books, websites and experts. The project leader must ensure monitoring, and the guide teacher also helps.
Teamwork
Teamwork is the combined effort of individuals to accomplish a task. In cricket, a good ball by the bowler does not take a wicket unless a fielder catches the ball. Winning needs batting, bowling and fielding, and so every member's effort. A project team needs technical ability and also six qualities.
| Component | What it means | Example in a project |
|---|---|---|
| Communicate with others | Keep effective contact through emails, telephone calls or group meetings | The team meets weekly to discuss progress |
| Listen to others | Understand others' ideas, listen in meetings, follow the agreed steps | A member listens to a suggestion before replying |
| Share with others | Share ideas, images and tools. A member skilled in an area shares expertise and experience | One member teaches the others how to use a library |
| Respect for others | Treat each member with respect and consider every idea. Ignoring someone's view stops that person from giving the best | Every idea gets a hearing in the meeting |
| Help others | A helping hand from every member, and sometimes from people outside the team | A member who finishes early helps with testing |
| Participate | Encourage everyone to take part in the work and the discussions so they feel important | Quiet members are invited to give opinions |
Worked example: match the situation to the teamwork component.
| Situation | Component |
|---|---|
| Meera has designed icons and shares the image files with the whole group | Share with others |
| The leader asks Arun for his opinion after he stayed silent in the meeting | Participate |
| Ravi, who knows Python well, ignores a suggestion from Sana because she is a beginner | Missing Respect for others |
| Two members reply to messages the same day and settle a doubt by phone | Communicate with others |
The three sample projects
Each description in the chapter is a model. A group may choose any other project in consultation with the guide teacher.
| Project | Goal | Main specifications |
|---|---|---|
| Automation of order processing in a restaurant (Stay Healthy) | Software to place orders and generate bills | Two logins: manager and customer. Kiosks at reception show the menu. A customer enters item codes and quantity. A soft copy of the bill with an order number is displayed. Every bill has a unique identification (such as date plus order number) and is saved in a data file or database. Order number starts from 1 every day. The manager can enter or change the menu, delete an order, and see the sales summary for a given day, plus at least one more report |
| Development of a puzzle | A bomb clearing game in Python (like Minesweeper) | A grid of cells in which some hold bombs. Click a cell: if it holds a bomb the game ends, else it shows a clue, the number of bombs in the adjacent cells. Use a 6 by 6 grid with 6 bombs to keep it simple. Handle exceptions that may occur while playing |
| Development of an educational game (Match the Sum) | Help children aged 5 to 7 practise adding to make 10 | A list of 15 cells each holding a digit from 1 to 9. A random digit is placed in the rightmost cell at equal intervals, and older digits shift left by one. The player types 2 or 3 digits, one at a time, from the list. If their sum is 10, they are removed. The game continues while an empty cell is left. Handle the case when the digits do not add up to 10 |
Worked example: break the restaurant project into modules. Applying the modular approach, each module has a task, an input and an output.
| Module | Input | Output |
|---|---|---|
| Login | User type, ID and password | Manager screen or customer screen |
| Menu display | Menu stored in the data file | Menu with item codes and prices |
| Order entry | Item codes and quantities | List of ordered items |
| Billing | Ordered items and prices | Bill with order number and total, stored in the file |
| Manager: menu management | New or changed item details | Updated menu |
| Manager: delete order | Order identification | Order removed from the records |
| Report | A date | Summary of the sales for that day |
Integration is the last step. The billing module needs the order entry module's output, and the report module needs the saved bills.
Worked example: the bill identification and the day's report. The order number starts from 1 every day, so the order number alone does not identify a bill. Order number 3 exists on every day. Joining the date to it makes a unique identification, for example 2026-10-21 and order 3. The manager's report then adds the bill amounts for one date.
| Code |
|---|
bills = [('2026-10-21', 1, 450), ('2026-10-21', 2, 300), ('2026-10-22', 1, 280)] |
def day_sales(bills, day): |
total = 0 |
for d, no, amt in bills: |
if d == day: |
total += amt |
return total |
print(day_sales(bills, '2026-10-21')) |
print(day_sales(bills, '2026-10-22')) |
| Output |
|---|
750 |
280 |
The report asks for a date, then adds up only the bills of that date, 450 plus 300 for the first date and 280 for the second. The common wrong design is to identify bills by order number alone, which would clash across days.
Worked example: the clue in the puzzle. The board is 6 by 6, so it has 36 cells and 6 bombs. If the first click is on a random cell, the chance it is a bomb is $\dfrac{6}{36} = \dfrac{1}{6}$. A clue counts the bombs in the adjacent cells. A cell in the middle has 8 neighbours, a cell on an edge has 5 and a corner has 3, so the clue can be at most 8, and the code must stay inside the board.
| Code |
|---|
def clue(grid, r, c): |
count = 0 |
for dr in (-1, 0, 1): |
for dc in (-1, 0, 1): |
nr = r + dr |
nc = c + dc |
if (dr != 0 or dc != 0) and 0 <= nr < 6 and 0 <= nc < 6: |
count += grid[nr][nc] |
return count |
grid = [[0] * 6 for _ in range(6)] |
grid[0][1] = 1 |
grid[1][0] = 1 |
print(clue(grid, 0, 0)) |
print(clue(grid, 3, 3)) |
| Output |
|---|
2 |
0 |
With bombs at (0, 1) and (1, 0), the corner cell (0, 0) has both as neighbours, so its clue is 2. The middle cell (3, 3) has none of them near, so its clue is 0. The test 0 <= nr < 6 and 0 <= nc < 6 stops the program from looking outside the grid, which would otherwise cause an error. This is the kind of situation for which the project asks you to handle exceptions.
Worked example: Match the Sum. The cells hold 3, 7, 2, 9, 1, 5, 4 and the player types 3 and 7.
| Code |
|---|
cells = [3, 7, 2, 9, 1, 5, 4] |
typed = [3, 7] |
if len(typed) in (2, 3) and sum(typed) == 10: |
for d in typed: |
cells.remove(d) |
else: |
print('Try again') |
print(cells) |
| Output |
|---|
[2, 9, 1, 5, 4] |
The typed digits are 2 or 3 in number and add to 10, so they are removed from the list. If the player had typed 3 and 9, the sum would be 12, nothing would be removed and the message appears. The game ends when all 15 cells are full and there is no empty cell for the next digit.
Pause and predict: In Match the Sum, the player types the digits 2, 3 and 4. What should the program do?
Check your answer: Nothing is removed, because 2 plus 3 plus 4 is 9 and not 10. The program must show a message or let the player try again. It must not crash, which is why the specification asks you to take care of digits that do not add up to 10.
Exam traps
| Trap | Why it is tempting | Truth |
|---|---|---|
| Defining a plan comes after fixing the time frame | Time looks like the first thing to fix | The order is identification, defining a plan, time frame and processing, guidance and monitoring, outcome |
| Only the guide teacher monitors | Teachers supervise | The project leader must ensure monitoring, and the guide teacher also helps |
| Each project has exactly one outcome | A project has one final product | The outcome can be single or multiple |
| The project leader is chosen at the end | Leaders are needed for monitoring | One project leader is identified while defining the plan |
| A modular approach means writing one big program | It sounds like one system | The project is divided into modules, each with defined inputs and outputs, then integrated |
| Teamwork needs only technical skill | Projects are technical | Communication, listening, sharing, respect, help and participation are also components |
| The order number identifies a bill in the restaurant project | It is called a number | It restarts from 1 each day, so the bill needs a unique identification such as the date plus the order number |
| In Match the Sum any typed digits are removed | Typing seems enough | Digits are removed only if the 2 or 3 typed digits add up to 10 |
60-second revision
| Topic | Key facts |
|---|---|
| PBL | Practical, group based learning: analyse, divide into modules, solve, integrate |
| Approaches | Modular, top down, bottom up |
| Five steps | Identification → Defining a plan → Fixing time frame and processing → Guidance and monitoring → Outcome |
| Roles | One project leader (named while planning). The leader and the guide teacher monitor |
| Outcome | Single or multiple, can be peer reviewed and changed using feedback |
| Teamwork | Communicate, Listen, Share, Respect, Help, Participate |
| Project 1 | Restaurant order processing: two logins, bill with unique ID, order number from 1 daily, manager reports |
| Project 2 | Puzzle: 6 by 6 grid, 6 bombs, clue, exception handling |
| Project 3 | Match the Sum: 15 cells, digits 1 to 9, remove 2 or 3 digits that sum to 10 |
Where this chapter connects
| Chapter | Link |
|---|---|
| The same chapter for the Informatics Practices book | Project Based Learning (IP) |
| Handling errors while a game runs | Exception Handling in Python |
| Saving bills in a data file | File Handling in Python |
| Storing bills in a database | Database Concepts |
🎯 Practice MCQs
First 3 questions free · create a free account to unlock the rest — answers & explanations included, no payment needed
Q1. What is the correct order of the steps in project based learning?
▸ Show answer & explanation
Answer: A
The project is first identified, then a plan with roles is defined, then a time frame is fixed, then guidance and monitoring continue during the work and finally the outcome is reached. The other options swap two adjacent steps.
Q2. Who must ensure that the project is monitored, with the guide teacher also helping in the monitoring?
▸ Show answer & explanation
Answer: D
The project leader, identified while defining the plan, must ensure monitoring of the project, and the guide teacher also helps to monitor it. Experts and books are sources of guidance, and peer review is part of the outcome step.
Q3. In the modular approach to a project,
▸ Show answer & explanation
Answer: B
The modular or structured approach splits a project into modules, each with a clear task and a set of inputs that gives outputs, and integrating the outputs gives the desired outcome. A single block is the opposite of modular, and the modules are made before the outcome, not after.
🔒 12 more practice MCQs
Create a free account to unlock every MCQ in this chapter — answers and explanations included. No payment needed.
Already registered? Just log in and they'll all appear here.
Q4. A team member who is an expert in a software tool teaches it to the others so that the work is finished in time. Which component of teamwork is this?
▸ Show answer & explanation
Answer: A
Sharing ideas, tools and expertise with the team is the Share with others component. Listening is about understanding ideas in meetings, respect is about treating members and their ideas with consideration, and participate is about taking an active part in work and discussions.
Q5. Which of the following are components of teamwork? (i) Communicate with others (ii) Compete with others (iii) Help others (iv) Participate
▸ Show answer & explanation
Answer: C
The six components are communicate, listen, share, respect, help and participate. Competing with others is not one of them, so only (i), (iii) and (iv) are correct.
Q6. Match List I with List II. List I: (i) Identification of a project (ii) Defining a plan (iii) Fixing a time frame (iv) Providing guidance. List II: (p) the project leader and roles are decided (q) the idea comes from a real life situation (r) help from books, websites and experts (s) every project is time relevant yet flexible.
▸ Show answer & explanation
Answer: C
The idea of a project comes from real life, the plan decides the leader and roles, the time frame must be relevant and flexible, and guidance comes from books, websites and experts. The other options swap at least two pairs.
Q7. A group of students is stuck while writing the program for a module and looks for help in books, on websites and from experts. This belongs to the step of
▸ Show answer & explanation
Answer: D
Getting help when the team cannot proceed is the guidance part of the fourth step. Identification and planning come earlier, and the outcome step comes at the end of the work.
Q8. Assertion (A): In the restaurant project, the order number alone cannot be used as the unique identification of a bill. Reason (R): The order number starts again from 1 every day.
▸ Show answer & explanation
Answer: A
Since the order number restarts from 1 on every day, order number 3 occurs on many days. A unique identification therefore joins the date and the order number, and R explains A.
Q9. Assertion (A): In a project, the outcome has to be a single product. Reason (R): The output of a project can be peer reviewed and modified using feedback.
▸ Show answer & explanation
Answer: D
The outcome of a project can be single or multiple, so A is false. It is true that the output can be peer reviewed and modified based on feedback from the guide teacher or other users, so R is true.
Q10. In the puzzle project, the board is a 6 by 6 grid with 6 bombs, and a cell is clicked at random. What is the probability that it holds a bomb?
▸ Show answer & explanation
Answer: C
The grid has 36 cells and 6 of them hold bombs, so the probability is 6 over 36, which is 1 over 6. Option D would be a single bomb in 36 cells, and option B has no basis in the numbers.
Q11. In the same puzzle, how many adjacent cells does a cell in the middle of the grid, away from all edges, have?
▸ Show answer & explanation
Answer: B
A middle cell has a neighbour in each of the eight directions around it, so its clue counts bombs among 8 cells. A cell on an edge has 5 neighbours and a corner cell has 3.
Q12. In Match the Sum, the list of cells is [3, 7, 2, 9]. The player types 3 and 7, which add up to 10, and each typed digit is removed from the list. What does print(cells) show afterwards?
▸ Show answer & explanation
Answer: A
Removing 3 and then 7 leaves 2 and 9 in their original order. Because the digits add to 10, the list does change, and the sum itself is never inserted in the list.
Q13. In Match the Sum, the player types the digits 4 and 8. According to the specification, the program should
▸ Show answer & explanation
Answer: C
Digits are removed only if their sum is 10, and 4 plus 8 is 12. The project asks the programmer to take care of the situation when the digits do not add up to 10, which means the game goes on. It does not end because of a wrong guess.
Q14. A team starts with the complete problem and keeps breaking it into smaller and smaller parts until each part is easy to solve. This approach is called
▸ Show answer & explanation
Answer: B
Starting from the whole and moving to the parts is the top down approach. Bottom up starts with small components and joins them to make the whole. The other two terms are not approaches named in the chapter.
Q15. Which statement about teamwork is correct?
▸ Show answer & explanation
Answer: D
Respect is a component of teamwork, and ignoring a member's view discourages that member. All members need to communicate, help may sometimes be taken from people outside the team, and participation is needed throughout the work and discussions.
📊 Previous-Year Questions
Practise with real CUET Computer Science previous-year papers — every question solved, with the correct answer and a step-by-step explanation.
View solved CUET PYQ papers →Ready to drill Computer Science?
Unlock all MCQs, chapter tests, mocks & PYQs for ₹199/year.
Get UniDrill Pro