Critical Thinking in Computer Science and Database
by K. Yue
Foreword
Critical thinking is one of the most important skills and habits in learning and navigating our life. The materials below are based on the university's accreditation effort from 2010 to 2020 focusing on applied critical thinking (ACT). ACT is no longer the accreditation's effort, at least to me.
For those interested in critical thinking, I would recommend to start with Steven Pinker's work. You may or may not agree with him in many issues but his work has depth and is thought provoking.
- Steven Pinker's lectures on critical thinking: https://harvard.hosted.panopto.com/Panopto/Pages/Sessions/List.aspx#folderID=%2255a37adc-eaae-4aa6-8a06-ab25015a4ee8%22.
- Steven Pinker, Rationality: What It Is, Why It Seems Scarce, Why It Matters. Penguin.
1. Introduction
- Our course has been approved as an Applied Critical Thinking (ACT) course at UHCL.
- As of Fall 2018, there are 68 approved ACT courses.
- ACT is the topic for the Quality Enhancement Plan (QEP) for our university's accreditation.
- ACT will be integrated into our class.
- There will also be surveys. Thanks for your help.
- Below is the ACT statement of our class.
Critical Thinking In Computer Science in General and Design of Database Systems in Particular
Computer science is the scientific and practical study of computation and its applications. Its scope is well agreed upon. For example, in Wikipedia, it is "the systematic study of the feasibility, structure, expression, and mechanization of the methodical procedures (or algorithms) that underlie the acquisition, representation, processing, storage, communication of, and access to information." A thorough understanding and precise specification of the problem domain through modeling, with a clear understanding of all underlying assumptions, is a prerequisite for effectively using computer science to construct a computer-based solution. All elements of thought of critical thinking are essential in every step of the elaboration and modeling of the problem, and design, implementation, and maintenance of a computer-based solution.
In particular, information is usually stored permanently in database. In the design of database systems, critical thinking is integrated in the process. Database designers use principles of data modeling to thoroughly understand and specify the problem. Concepts of normalization theory and data manipulation are applied to infer and construct suitable logical design solutions. The implications and consequences of the design are realized through the effective uses of query languages. The central question in the design of database systems is how to store and retrieve permanent data effectively.
- In short, computer science is very applicative in nature. It is used to solve problems in very diverse fields.
- Critical thinking is essential in effective problem solving.
2. Critical Thinking
- There are many models for critical thinking.
- The one UHCL selected is from the Foundation of Critical Thinking (FCT)
- FCT's Fundamental of Critical Thinking.
- FCT's model of critical thinking: https://www.criticalthinking.org/ctmodel/logic-model1.htm
- Eight Elements of Thought (EoT, or Elements of Reasoning):
- Purpose
- Question at Issue/Problem
- Information
- Interpretation and Inference/Solution
- Concepts
- Assumptions
- Implications and Consequences
- Point of View
- Nine Universal Intellectual Standards for Critical Thinking:
- Clarity
- Accuracy
- Precision
- Relevance
- Depth
- Breadth
- Logic
- Significance
- Fairness
- Elements of Thought:
- Each represents a commonly occurring component in critical thinking.
- Each represents something one needs to be mindful with.
- Some may be more important than others for a specific topic, problem or scenario.
- Intellectual Standards
- Ways to assess the quality of your thinking.
- Something to strike for.
- Intellectual traits: http://www.criticalthinking.org/pages/valuable-intellectual-traits/528. They are traits of good critical thinkers that you may want to develop.
- intellectual humility
- intellectual courage
- intellectual empathy
- intellectual autonomy
- intellectual integrity
- intellectual perseverance
- confidence in reason
- fair-mindedness
Why?
- Everyone can think critically to different degrees when stepping back.
- On the other hand, thinking may not be 'efficient' for most everyday decision.
- We are accustomed to 'not thinking: 'Few people think more than two or three times a year. I've made an international reputation for myself by thinking once or twice a week.' -- Bernard Shaw.
- However, many problems need deeper thinking.
- Need:
- Be structured and complete
- Form habits
- Thus, critical thinking at UHCL.
- You may read Daniel Kahneman, Thinking Fast and Slow.
Exercise:
Think about and use CT EoT and standards on the following topics. Use the critical thinking form. For groups, use the group form.
- How do you get a grade of A in this course?
- How much time should I devote in the course per week?
- How can I become a teaching assistant.
3. Critical Thinking Tools
- There are many CT tools and techniques.
- One technique is the identification, refinement, and application of Fundamental and Powerful Concepts (FPC):
- FPC are the core concepts that ground other concepts.
- FPCs provide a context for us to reason through a large number of problems, questions, theories, and information.
- New information and concepts can then be viewed and analyzed through their relevance with FPC.
Fundamental and Powerful Concepts (FPC) of the Course
In ACT vocabulary, fundamental and powerful concepts form the foundation that permeates and unites a course. In this course, these concepts are:
- Data modeling for thoroughly understanding and precisely specifying problem requirements, assumptions, and constraints.
- Database design for constructing database solution to satisfy the data model.
- Data manipulation for updating and accessing information stored in the database solutions.
SEE-I
- For learning, one tool is SEE-I. In your own words:
- State the concept in a definition/summary of one to two sentences.
- Elaborate the concept by providing more details.
- Exemplify the concept by examples
- Illustrate the concept by diagrams, pictures, metaphors, analogies, etc.
- Iterate through SEE-I until you are satisfied with the CT intellectual standards.
Exercise:
Use FPC and SEE-I iteratively to learn the following topics:
- The basic relational data model.
- The Select Statement in SQL.
- The weak entity in Entity-Relationship (ER) model.
- Why are there seasons (Spring, Summer, Autumn and Winter)? See: http://cmap.ihmc.us/docs/theory-of-concept-maps