0% found this document useful (0 votes)
14 views5 pages

FCC 2228 Lesson 2-4_250303_201841

The document discusses critical thinking skills, emphasizing Bloom's taxonomy, which categorizes thinking into lower and higher order skills. It outlines the six levels of thinking and introduces critical thinking tools of analysis essential for problem-solving in various disciplines, particularly computer science. Additionally, it highlights methods for assessing critical thinking in computer science education, including code reviews, ethical case studies, and open-ended problem-solving tasks.

Uploaded by

amosmaina830
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)
14 views5 pages

FCC 2228 Lesson 2-4_250303_201841

The document discusses critical thinking skills, emphasizing Bloom's taxonomy, which categorizes thinking into lower and higher order skills. It outlines the six levels of thinking and introduces critical thinking tools of analysis essential for problem-solving in various disciplines, particularly computer science. Additionally, it highlights methods for assessing critical thinking in computer science education, including code reviews, ethical case studies, and open-ended problem-solving tasks.

Uploaded by

amosmaina830
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
You are on page 1/ 5

FCC 2228 LESSON 2-4

2.0 Critical thinking skills


Bloom’s taxonomy is a valuable and widely used tool that describes different levels of thinking. The six
levels described in Bloom’s taxonomy are divided into higher order thinking and lower order thinking.
Critical thinking integrates these two components:
1) Ability to generate information (lower order)
2) Using those skills to guide behavior (higher order)
• Knowledge, comprehension, and application (or Lower order thinking skills (LOTs))
• Analysis, synthesis, and evaluation (or Higher order thinking Skills (HOTs))
Major decisions or life changes that are made without going through this process may not be the best and
most informed decisions and may show less than satisfactory results. Critical thinking therefore is at the
level of HOTs.
Identified below shows each of the 6-levels associated with verbs and guiding questions.
Knowledge Level
Identification and recall of information
Define, Fill the blank, List, Identify, Label, Locate, Match, Memorize, Name, Recall, Spell, State, Tell,
Underline,
Guiding Questions: Who__? What__? Where__? When__? How__? Describe__. What is__?
Comprehension level
Organization and selection of facts and ideas
Convert, Describe, Explain, Interpret, Paraphrase, Put in order, Restate, Retell in your own words Rewrite,
Summarize, Trace, Translate.
Guiding questions: Re-tell in your own words? What is the main idea of __? What differences exist
between__? Can you write a brief outline?
Application Level
Use of facts, rules, and principles
Apply, Compute, Conclude, Construct, Demonstrate, Determine, Draw, Find out, Give an example,
Illustrate, Make, Operate, Show, Solve, Sate a rule or principle use.
Guiding Questions: How is an example of__? How is related to__? Why is __significant? Do you know of
another instance where__? Could this have happened in __?
Analysis Level
Separation of a whole into components
Analyze, Categorize, Classify, Compare, Contrast, Debate, Deduct, Determine the factors, Diagram,
Differentiate, Dissect, Distinguish, Examine, Infer, Specify.
Guiding questions
What are the parts or features of__? Classify __ according to__? Outline/diagram/web/map__? How does
__ compare/contrast with? What evidence can you present for__?
Synthesis Level
Combining ideas to form a new whole
Change, Combine, Compose, Construct, Create, Design, Find an unusual way, Formulate, Generate, Invent,
Originate, Plan, Predict, Pretend, Produce, Rearrange, Reconstruct, Reorganize, Revise, Suggest, Suppose,
Visualize, Write.
Guiding questions
What would you predict/infer from__? What ideas can you add to__? How would you create/design a
new__? What solutions would you suggest for__? What might happen if you combined with__?
Evaluation Level
Developing opinions, judgements, or decisions
Appraise, Choose, Compare, Conclude, Decide, Defend, Evaluate, Give your opinion, Judge, Justify,
Prioritize, Rank, Rate, Select, Support, Value.
Guiding questions
Do you agree that __? Explain. What do you think about __? What is most important? Prioritize according
to__? How would you decide about__? What criteria would you use to assess__?
3.0 Critical thinking Tools of Analysis
Critical thinking tools of analysis are also referred to as Dimensions of thinking. They entail those essential
components that must be taken into consideration when confronted with issues that begs for an answer. The
tools of analysis deals with the informational basis to which we can proceed in determining a solution based
on inclusive and conclusive knowledge. In general tools of analysis include:
✓ Purpose
✓ Issue, problem or Question at hand
✓ Assumptions
✓ Points of view
✓ Data, Information and evidence base
✓ Concepts and ideas
✓ Inferences or interpretations
✓ Implications and Consequences
All reasoning has a Purpose.
• Take time to state your purpose clearly.
• Distinguish your purpose from related purposes.
All reasoning is an attempt to Figure something out, to settle some question, to solve some problem.
• Identify if the question has one right answer, is a matter of opinion, or requires reasoning from more than
one point of view.
All reasoning is based on Assumptions.
• Clearly identify your assumptions and determine whether they are justifiable.
All reasoning is done from some Point of view.
• Seek other points of view and identify their strengths as well as weaknesses.
All reasoning is expressed through, and shaped by, Concepts and Ideas.
• Identify key concepts and explain them clearly.
• Consider alternative concepts or alternative definitions to concepts.
All reasoning contains Inference or Interpretations by which we draw Conclusion and give meaning
to data.
• Identify assumptions which lead you to your inferences.
All reasoning leads somewhere or has Implication and Consequences.
• Trace the implications and consequences that follow from your reasoning.
3.1 Critical thinking skills linked with computer software/science
In the landscape of computer science education, the integration of critical thinking is increasingly
recognized as a cornerstone for developing a new generation of technologically adept and intellectually
agile graduates. Integrating critical thinking into computer science education requires more than just
isolated strategies; it demands a holistic rethinking of how computer science is taught. Critical thinking
empowers students to assess, evaluate, and address the complexities of technological challenges they will
face in their careers.
For computer science students, critical thinking skills can be developed through tools like:
a) Coding challenges on platforms like Leet-Code, & debugging exercises.
b) Data analysis projects using tools like Python and R.
c) Design thinking methodologies.
d) Algorithmic problem-solving platforms.
e) Simulation software.
f) Collaborative coding environments.
All of these encourage breaking down complex problems, evaluating different solutions, identifying
patterns, and testing for efficiency.
Key aspects of critical thinking in computer science and computer software:
• Problem Decomposition: Breaking down complex problems into smaller, manageable
parts. Teachers share the complex, multi-step problem and facilitate conversations that help
students to break it down. In doing this, students begin to develop a framework of strategic,
computational thinking.
Ideas to Try: You’re required to plan a birthday party, that involves multiple steps using a mental map of
how to solve this problem and similar problems in the future.
• Pattern Recognition: Identifying recurring patterns and applying similar solutions to different
problems. Pattern recognition invites students to analyze similar objects or experiences and
identify commonalities to develop an understanding of trends and are therefore able to make
predictions. Finding patterns simplifies tasks because you can use what you already know.
• Abstraction: Focusing on essential details while ignoring irrelevant information to create
simplified models. Abstraction is focusing on the information that is relevant and important. It
involves separating core information from extraneous details. By teaching students’ abstraction,
they are able to sort through all of the information available to identify the specific information
they need.
Ideas to try: Provide key features that distinguish Microsoft office from micro-soft power-point
• Algorithmic Thinking: Designing step-by-step procedures to solve problems efficiently. Data
Structures and Algorithms: Strong understanding of data structures (like arrays, linked lists, trees,
graphs) and algorithms (sorting, searching, dynamic programming) is crucial for coding
interviews. By developing algorithmic thinking skills, individuals can approach challenges in a
structured and systematic manner, ultimately leading to more effective problem-solving.
Ideas to Try: You’re invited to design the path from EG 30 to the swimming pool by detailing a series of
steps.
• Evaluation and Testing: Thoroughly testing code to identify errors and potential issues.
The following Specific tools and practices can enhance critical thinking skills for computer scientist:
a) Coding Platforms:
• LeetCode: Offers a wide range of coding challenges with different difficulty levels,
promoting problem-solving and algorithm design.
• HackerRank: Another platform with coding challenges across various languages and
domains.
• Codewars: Focuses on collaborative problem-solving and learning from other users'
solutions.
• Programming Languages: Proficiency in languages such as Python, Java, C++, or
JavaScript. Familiarity with multiple languages is a plus.
b) Data Analysis Tools:
• Python with libraries like Pandas and NumPy: Powerful data manipulation and
analysis capabilities.
• R: Statistical analysis and data visualization
• Kaggle: Access to real-world datasets for practice and exploration
• Databases: Familiarity with SQL and NoSQL databases, data modeling, and query
optimization.
c) Simulation Software:
• Simulink: Modeling and simulation of complex systems
• Unity: Game development platform for prototyping and testing game mechanics
• Software Development Methodologies: Familiarity with Agile, Scrum, or DevOps
practices.
d) Design Thinking Methodologies:
• Empathize, Define, Ideate, Prototype, Test: Structured approach to problem-solving
that encourages brainstorming and user-centric design.
• System Design: Knowledge of how to design scalable and efficient systems, including
understanding microservices, APIs, and cloud architecture.
• Web Development: Understanding front-end (HTML, CSS, JavaScript) and back-end
technologies (Node.js, Express, Django).
e) Collaborative Learning Tools:
• GitHub: Version control system that allows for code review and collaboration
• Pair Programming: Working with a partner on coding tasks to discuss strategies and
identify potential issues
• Version Control: Proficiency in tools like Git for version control and collaboration.
f) Mind Mapping Tools:
Mind mapping tools help students visually organize information, which can be particularly
beneficial for enhancing critical thinking skills. By creating mind maps, students learn to
categorize concepts, identify relationships between ideas, and develop a structured approach to
thinking. This visual representation of knowledge can aid in memory retention and understanding
complex subjects, making mind mapping an invaluable tool for students
g) Interactive Puzzles
Interactive puzzles are a great way to stimulate the brain. By presenting challenges that require
logical reasoning and pattern recognition, these tools help students develop the ability to think
critically. As they navigate through complex problems and seek solutions, they learn to approach
issues from different angles and improve their problem-solving skills. The satisfaction of solving
a puzzle can also motivate students to tackle more challenging tasks, further enhancing their
critical thinking abilities
During critical thinking process in any discipline, the following Important considerations should be made:
a) Reflect on your process: Actively think about the steps you took to solve a problem and identify
areas for improvement.
b) Ask questions: Don't hesitate to seek clarification on concepts or assumptions when working on
a problem.
c) Consider different perspectives: Evaluate potential solutions from various angles to identify the
most effective approach.
d) Practice debugging skills: Effectively analyze error messages and trace code to identify the root
cause of problems
Here are five fictional examples of how computational thinking has been used to solve complex
problems:
1. Automating Repetitive Tasks: A data analyst at a tech company used computational thinking to
automate a repetitive task of cleaning and organizing large datasets. By breaking down the task
into simple steps and writing a script in a programming language, the analyst was able to save
hours of manual work each week.
2. Optimizing Resource Allocation: A logistics manager at a shipping company used
computational thinking to optimize the allocation of trucks for deliveries. By abstracting the
problem and using computational tools, the manager was able to find the most efficient routes,
reducing fuel costs and delivery times.
3. Improving Customer Service: A customer service manager at a retail company used
computational thinking to improve the company's response time to customer inquiries. By
analyzing patterns in customer complaints and creating an algorithm to prioritize responses, the
company was able to improve its customer satisfaction ratings.
4. Enhancing Product Design: A product designer at a software company used computational
thinking to enhance the design of a new app. By using logical reasoning to understand user needs
and preferences, the designer was able to create a more user-friendly interface.
5. Predicting Market Trends: A financial analyst at an investment firm used computational
thinking to predict market trends. By using computational tools to analyze historical data and
identify patterns, the analyst was able to make more accurate predictions about future market
movements.

4.0 Tools of Assessing/Evaluating Critical Thinking in Computer Science/Software


Assessing critical thinking in computer science education requires a multifaceted approach, using various
methods that balance technical proficiency with reflective analytical skills. Below are several strategies that
can be employed to evaluate students’ critical thinking abilities in both practical and theoretical contexts.
1. Code Review Exercises Method: Students critically analyse and provide feedback on code written by
their peers or in fictional scenarios, focusing on areas such as efficiency, readability, and potential
improvements. This method not only tests technical competence but also encourages students to think
critically about software quality and development practices.
Rationale: This exercise aligns with the constructivist principle of learning through reflection and
interaction. Students engage in deeper learning by considering alternative approaches and making reasoned
judgments about coding practices.
2. Ethical Case Studies Method: Present students with real-world ethical dilemmas in tech—such as data
privacy issues or algorithmic bias and assess their ability to analyse the problem, consider multiple
perspectives, and propose ethically sound solutions.
Rationale: By incorporating ethical case studies, educators can leverage problem-based learning principles.
This method encourages students to engage with authentic problems and develop critical thinking by
evaluating both the technical and social implications of technology.
3. Design Critique Sessions Method: Students present software designs and architectures for peer and
instructor critique. Feedback focuses on how well the design aligns with best practices and the thought
process behind specific decisions.
Rationale: Design critique sessions emphasise experiential learning, allowing students to engage in critical
self-reflection and peer evaluation. Peer evaluation in design work fosters deeper critical reflection,
improving both technical skills and the ability to justify design decisions without the assistance of teaching
staff.
4. Algorithmic Bias Detection Method: Provide students with datasets and algorithms, asking them to
critically analyse potential biases in the data and algorithm outcomes. This exercise develops both technical
and ethical critical thinking skills, especially in fields like artificial intelligence.
Rationale: This method integrates critical analysis with technical problem-solving, encouraging students
to think beyond technical implementation and consider broader societal implications. It reflects the growing
importance of ethical AI development, as highlighted in recent studies.
5. Open-Ended Problem-Solving Method: Students are presented with complex, ill-defined problems and
tasked with breaking them down and proposing solutions. Assessment focuses not only on the solution itself
but also on how the students approach the problem.
Rationale: Open-ended problem-solving emphasizes higher-order thinking in Bloom’s Taxonomy,
particularly at the “Analyze” and “Create” levels. This method challenges students to navigate ambiguity,
requiring them to justify their decisions and reflect on their problem-solving process.
6. Reflective Journals Method: Students maintain journals where they reflect on their problem-solving
processes, challenges faced, and lessons learned throughout a course.
Rationale: Reflective journals encourage metacognition, allowing students to critically analyses their own
thinking. This method fosters self-regulation and deeper engagement with the material.
7. Peer Evaluation Rubrics Method: Develop detailed rubrics for peer code reviews that include criteria
for assessing the depth and quality of critical analysis, encouraging students to think critically while
evaluating their peers’ work.
Rationale: Peer review not only helps distribute the workload but also fosters critical engagement with
content from multiple perspectives. By clearly outlining assessment criteria, it mitigates potential biases,
ensuring consistency and transparency.

You might also like