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.
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 ratings0% 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.
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.