Keywords

1 Introduction

The once ‘imagined communities’ of the twentieth century are now transforming into a global network of communities. Anderson believed that nations were a social construction of a group’s imagined connection to other members that was enabled by print press [1]. Today, digital technologies, the internet in particular, have created a global network where the production and consumption of information transcends languages, nationalities, and borders creating a network of communities that is growing in its real-world connectivity. Our ever more connected world has developed a global network where our problems are becoming more complex and more intertwined. As a result, the world faces an acute problem: how can we devise solutions for our multi-layered and interconnected problems while ensuring that the solutions will benefit and reach everyone.

In 2006 Wing suggested that computational thinking, a method of thinking that derives from concepts fundamental to computer science, is a universally applicable attitude and skill set for everyone and all disciplines to solve problems and design systems that no one could accomplish alone [2]. Thereafter, the notion of computation thinking has received attention from scholars in various fields. This paper seeks to explore how computational thinking can serve as a tool, method, or approach to solving complex real-world problems and how can it be utilized. The goal is to conceptualize a method as an approach that would lead to universal efforts resulting in the increase of social, economic, political, and environmental harmony on a local and global level. The paper also suggests general solutions that serve as opportunities for further case studies and research.

2 Methodology

In this paper, the concept of computational thinking will be utilized to propose a four-stage problem-solving paradigm that tackles shared global problems in their localities. The 17 Sustainable Development Goals (SDGs) [3] set by the United Nations in 2015 identify current global problems that are shared across the globe and require immediate solutions. In effect, we have chosen to discuss the paradigm in relation to the SDGs. However, in spite of its broad scope and ambitious targets, we have chosen to address only one of the SDGs, Goal 4: Quality Education, in each stage of the paradigm in order to demonstrate the applicability of the proposed process.

3 What Does Computational Thinking Entail?

In 1950 Turing postulated the universality of the computing process, in that digital computers could mimic any other machine and therefore, possess the ability to function with the same program [4]. The universality of the computation process is also the basis of Wing’s grand vision for computational thinking. She believes that it is a universally compatible method that can help solve complex problems by thinking with many levels of abstraction [2]. In her later work, Wing defines computational thinking as “an approach to solving problems, designing systems, and understanding human behavior that draws on concepts fundamental to computing” [5]. Wing does not suggest to “think” like a computer but to adapt the structural thinking process used by computer scientist to instruct computers to complete a task or solve a problem. Riley and Hunt reiterate Wing’s statement in that computational thinking is characterized by the manner in which computer scientists think and reason [6].

Denning argues that computational thinking has its roots in what was referred to as algorithmic thinking in the 1950s and 1960s, which he describes as “a mental orientation to formulating problems as conversions of some input to an output and looking for algorithms to perform the conversions” [7]. For Denning, computational thinking is not a principle but a practice that develops various levels of skills [7]. Computational thinking has also been defined as “the thought processes involved in formulating problems so their solutions can be represented as computational steps and algorithms” by Aho [8] The suggested thought process is an applicable model in various discourses and establishes the foundation of a plan of action to tackle a problem. Algorithms alone may not be able to solve complex real-world problems, however, computational thinking can induce strategic objectives and models of action that enhance the development of solutions. A fundamental step towards understanding and solving complex real-world problems may rest on the ability to apply Wing’s approach to computational thinking on comprehensive and (big) data sets.

Gouws et al. [9] attribute three elements to computational thinking: “exploring all aspects of the problem, considering the complexity of the problem, and finding an optimal solution that can be achieved with available sources” [9]. In their efforts to incorporate computational thinking in educational activities, they designed a computational thinking framework (CTF) to serve as foundation for computational thinking materials. The CTF is a two-dimensional grid: one dimension is the skill sets that make up computational thinking and the second dimension is the different levels in which the skill sets may be practiced. This approach, demonstrates the applicability of implementing computational thinking in real-world problem solving practices. García-Peñalvo’s definition of computational thinking “as the application of high level abstractions and an algorithmic approach to solve any kind of problems” [10] also affirms the applicability of computational thinking in various domains. These definitions emphasize the applicability of computational thinking to problems from different disciplines as an active problem-solving approach.

The generalization of computational thinking to a universal discourse has been subject to criticism as well. Blackwell et al. argue that computer scientists use a literalistic approach to definitions because computers reason literally. This approach undermines the complexities and contexts of real-world problems and creates an illusion of universality. Their second argument suggests that abstraction compromises the end-goal by focusing on how the problem is structured. The third point argues that computational thinking can be a misleading foundation, as it is not rooted in a real-world problems or human phenomenon [11]. While authors raise valid points, the principle argument is that computational thinking is not the solution to our complex problems; it is a tool to aid the process of developing solutions.

Wing believes that computational thinking benefits our societies by enhancing intellectual skills to not only find solutions but also formulate problems in any domain [12]. The question for us now is how can computational thinking assist in consolidating the development of solutions for real-world problems that are subject to different and changing circumstances, diverse thought processes, and contain the element of unpredictability?

4 Real-World Problem: The SDGs

Sustainable development emerged as a concept in the report published by the World Commission for Environment and Development (WCED) in 1987, when the General Assembly of the United Nations called for “a global agenda for change” [13]. Section 3 Article 27 of the report—also known as the Brundtland report—states that sustainable development is development that “meets the needs of the present without compromising the ability of future generations to meet their own needs” [13]. Chapter 2 of the report expands the definition of sustainable development to: “It contains within it two key concepts: (1) the concept of ‘needs’, in particular the essential needs of the world’s poor, to which overriding priority should be given; and (2) the idea of limitations imposed by the state of technology and social organization on the environment’s ability to meet present and future needs. Thus the goals of economic and social development must be defined in terms of sustainability in all countries - developed or developing, market-oriented or centrally planned. Interpretations will vary, but must share certain general features and must flow from a consensus on the basic concept of sustainable development and on a broad strategic framework for achieving it” [13].

In 2015, 193 members of the UN General Assembly adopted 17 SDGs, which aim to achieve economic development, social inclusion, and environmental protection by 2030 [3]. The SDGs central position is to ensure that no one is left behind. The universal agenda featured in the SDGs are driven by problems that are shared globally, however, each of the outlined problems are caused under different circumstances in each of the target populations. The implementation of such goals requires a local-to-global framework that would provide a global yet localizable plan of action. This paper proposes that the conceptual elements of computational thinking can contribute to providing a universal framework and collective structure for problem-solving thought processes that is suitable for each local population.

5 A Local-to-Global Problem-Solving Approach

In practice, computational thinking stimulates a process of thinking in which the multiplicity of the problem is understood and deconstructed it to its core and periphery components, so that the development of solutions propel an effective and efficient implementation process. Given the fundamental concepts of computing, our proposed method approaches real-world problems with four core stages of abstraction, decomposition, solution development, and validation. Each stage of the process is attainable through the following steps (Fig. 1):

Fig. 1.
figure 1

Four-stage problem-solving approach

5.1 Abstraction

Abstraction, according to Wing, is the “mental tool” of computing; it identifies details that are crucial for solving a problem and extracts the knowledge embedded in the data [5]. The process of abstraction focuses on the relevant details required to solve a problem [14]. Wing’s “thinking with multiple layers of abstraction” leads to defining different elements of a problem and how they relate to one another. Kramer points out two vital features of abstraction: simplification, by removing details, and generalization, to identify the common core [15]. Therefore, the central focus of abstraction is the process of extracting fundamental concepts of a complex problem that affect the outcome of the solution. In a real-world problem setting, generalizations do not eliminate the contextual factors that dictate the local circumstances. On the contrary, the generalization process identifies problems shared in local contexts and takes the “big picture” into consideration. The SDGs are a great example of how issues such as economic vulnerability, gender inequality, climate change, etc. are generalizable problems to all societies that need to be locally interpreted. The process of abstraction undergoes three steps of elucidation, context identification, and circumstantial description.

5.1.1 Elucidation

The outcome of this stage of the process is to define the core problems that need to be solved. Priami states that “computational thinking is a different way of approaching a problem by producing descriptions that are inherently executable” and understanding the problem at different layers of abstraction is “building a virtual hierarchy of interpretations” [16]. The first layer of abstraction provides a clear definition of the core of the problem. This step undertakes an important task as it generalizes the definition of the problem to the extent that it is clear and pertinent to all other layers so that the essential factors are extracted.

In order to identify the underlying problems stated in the SDGs it is necessary to provide a clear definition of all the goals. In spite of the SDGs’ vague language, a re-formulation of the goals will provide a more detailed definition, contextualize them in such a manner that is applicable to a broader variation of social constructs, and identify the underlying problem each goal seeks to overcome. Goal 4 of the SDGs, as stated in Transforming Our World: The 2030 Agenda for Sustainable Development [3], is: “Ensure inclusive and equitable quality education and promote lifelong learning opportunities for all.” The re-formulation of Goal 4 provides a more inclusive and cohesive understanding of its purpose and function with the following description: Facilitate all meansincluding educational material, facilities, and educatorsthat would build a diverse foundation of quality education, as both the process and outcome of learning, and equal access for all. Promote the benefits of education for individuals and their societies at large. The elucidation process allows us to identify the general scope of the goal to its core problem of inaccessibility of education, in a way that is relevant to all layers of the problem.

5.1.2 Context Identification

To highlight the relevant details related to a problem is part of Wing’s abstraction procedure [5]. Context identification contextualizes the general problem in its local context. The purpose of this layer of abstraction is to eliminate generalized details that are not applicable to that particular setting and simplify our understanding of the complex situation by highlighting local and relevant interpretations of a problem. The lack of contextualized information will result in the misinterpretation of that problem and exhaust efforts that are not beneficial to the solution development process.

Given the complexity and multiplicity of socio-cultural factors present in real-world problems, designing a model that is accommodating to everyone is as ambitious as the SDGs themselves. Nevertheless, including cultural factors in the problem definition will provide the means of designing solutions that will reach a wider range of populations. Now that the core underlying problem has been defined, the next step is to define each problem in their local and cultural setting: Does the local population perceive Goal 4 as a problem in their community? How does the local population define the problems derived from Goal 4? How does the local population define the relationship between local and global factors of the problem?

5.1.3 Circumstantial Description

Problems do not emerge independent from their circumstantial settings, which are vital details to examine in the problem-solving process. Zachman characterizes people (who), time (when), and motivation (why) as a necessary descriptive type in the field of information systems architecture [17]. In this layer of abstraction, Zachman’s motivation factor has been substituted with the location factor in order to determine who is involved in the problems, where the problems take place, and when do the problems occur. Each of the circumstantial factors affects the composition of the problem and its susceptibility to change. In the case of the SDGs, the actors, location, and timeline vary and must be identified locally:

Who: The actors involved in the SDGs are networks of designs makers, contributors, recipients, and implementers. These interconnected networks of people who will design solutions, implement solutions, and collectively participate in the development process are: UN system and stakeholders, local governments, private sector, educational institutions, citizens and community organizers, local experts.

Where: The Sustainable Development Solutions Network published in a report that the SDGs will depend on a bottom-up approach that will connect local authorities and communities to national-level decision-making [18]. Therefore, the SDGs require a local-to-global approach. The SDGs have declared to “take into account different national realities, capacities and levels of development and respect national policies and priorities” [3]. Ensuring the inclusion of populations at a local level will lead to the foundation of national, regional, and global partnerships. For Goal 4, the local to global approach would start with local schools and education centers to form a cohesive community that take educational concerns to a national and global level.

When: There is a 15-year timeframe with 2030 as the deadline. The timeframe vary for each problem and location. The attainment of equitable and quality education is a long-term goal, however, it is plausible to believe that the foundations of Goal 4 are attainable in the remaining years of the SDGs timeline.

Outlining the circumstantial settings of the problem will provide insight on the following questions: Who are the influential local authorities? Who will the local populations accept as the solution implementer? In what time frame can the problems be resolved? What can citizens do to help solve the problem?

5.2 Decomposition

Breaking problems down by functionality is an important element of computational thinking, according to Wing [5]. In this stage, the complex set of problems is divided into simpler forms that are easier to solve. Simplifying the problem does not equate to dehumanizing its complexities in computer-identifiable codes, on the contrary, it serves to simplify the means of implementing the solutions. Solving each of the sub-problems will compose a solution to the original problem that was decomposed. The objective is to find a way to solve complex problems, which requires solving problems in parallel to one another, as they contain inter-component connections. After all, computational thinking also encompasses thinking recursively [2].

5.2.1 Root Cause Breakdown

The first phase of decomposition can be achieved by identifying the root causes, where each cause becomes a sub-problem that needs to be solved. Identifying the root causes will analyze the contextual constraints that exist in each location and recognize the connection between each of the sub-problems. The local-to-global approach will identify of root causes in their local and global contexts. The lack of education infrastructures, high cost of education, insufficient number of educators, far distances to nearest education facilities, cultural gender norms, conflict and war, and lack of services available for students with special needs are but a few barriers to education that concern the achievement of Goal 4. The following questions assist in identifying why the problem is occurring in its current circumstances: What do experts identify as the causes of inaccessibility to inclusive and quality education? What does the local population identify as the causes of inaccessibility to inclusive and quality education? What efforts have been made to eradicate the root cases? Why have they been unsuccessful in overcoming obstacles related to education in the past? Which of the underlying causes can be changed or eliminated?

5.2.2 Linkage Breakdown

Understanding the relationship among different layers is one of the essential components of computational thinking. The second phase of decomposition answers the question: how are the root causes related to one another? The interconnectivity of sub-problems requires the understanding of links within and between problems. The SDGs have emerged from a network of interdependent problems; not only do the goals address a broad scope of issues, but many of them overlap and generate the causality of one another. Meaning that the reduction of the root causes of problem 1 will result in the reduction of problem 2, problem 3, and so on, or understanding the root causes of problem 4 will help solve problem 5, problem 6, and so forth. Once the links between the root causes are identified in each context, the set of problems will be narrowed to manageable sub-problems. The assessment of the links between each of the underlying problems of the SDGs requires local information for a contextualized result. However, Table 1 provides a few examples of how some of the other SDGs are directly linked to Goal 4:

Table 1. Demonstration of direct links (cause and/or effect) between the SDGs and Goal 4

5.3 Solution Development

The end goal of computational thinking is to devise a solution for complex problems. The previous stages of the paradigm collect preliminary data in the process of defining, contextualizing, and decomposing the problem. In this next stage of the process, data pertaining to problems and solutions are collected, processed, and translated into solution strategies.

5.3.1 Fact (Data) Collection

This step gathers all the data that has been collected and combines it with data that is gathered by two groups; (i) the authorities, scientists, academics, and experts; and (ii) citizens and members of different communities. According to Hilgers and Ihl “the resulting input from an open call to a community to solve a given problem results in higher quality of the input (compared to solving the problem internally)” [27]. Citizenscience and citizensourcing are two methods that will propel the accumulation of detailed and solution-oriented data.

Irwin first introduced citizenscience to point out the expertise present among everyday citizens [28]. The term refers to a research technique of obtaining data from various locations provided by the public. By involving the public in providing scientific data, global projects can benefit from “global data-gathering networks” [29]. The public collaborates with scientists by “contributing data according to an established protocol, or completing structured recognition, classification, or problem-solving tasks that depend on human competencies” [30]. Project BudBurst (http://www.budburst.org/) for example, encourages citizens to observe how plants change with the seasons in different communities. The project also provides resources to integrate citizen science into various educational levels and settings.

Torres introduces the concept of citizensourcing to shift the function of citizens as consumers to actively partaking in government policies and programs [31]. Citizensourcing is an interactive relationship between citizens and decision makers by communicating information, concerns, and new ideas. Hilgers and Ihl note that citizensourcing is outsourcing the tasks that were formerly performed by a public agent to a large group of citizens. Linders defines this procedure as “online citizen consultation,” a “powerful new problem-solving mechanism,” and “government data mining” [32]. UClass (http://www.uclass.io/) enables teachers, schools, and organization personnel to store, share, search, and view curricula. The website provides teachers with access to a global education network and explore a variety of educational material and sources uploaded by their colleagues worldwide.

5.3.2 Analysis

Analyzing large quantities of data is an element of computational thinking that eventually finds the knowledge embedded in the data that has been collected [5]. In this step the collected data is analyzed with the aim to recommend potential solutions to the problem. This stage of data analysis will determine: (i) aspects of the sub-problems, and therefore the original problem, that are solvable; (ii) the limitation and barriers to solving the problems; and (iii) how to prevent the problem from reoccurring in the future. In regards to Goal 4 of the SDGs, the analysis will provide insight on the aforementioned points on social, institutional, and pedagogical level by collecting data about the significance of education in different communities, teaching and learning structures and practices, the nature of courses and subjects incorporated in the curricula, student interests, and financial recourses.

5.3.3 Solution Formation

The end goal of computational thinking is to design a solution to overcome the outlined problem. Evidently, each of the problems will require a solution that is contextualized for each population. For example, Massive Open Online Courses (MOOCs) are tools that can address specific educational needs worldwide and not only serve as a solution to Goal 4 of the SDGs. George Siemens and Stephen Downes established the first large online course in 2008 [33] which then developed into Massive Open Online Courses (MOOCs) as free and accessible courses available online to a large audience across the globe. Prominent MOOCs providers such as edX, Coursera, Khan Academy, and Udacity have emerged in association with top universities with a wide variety of open courses since 2012. MOOCs are not restricted to specific locations, operate on flexible schedules, and in some cases are free of charge. These characteristics increase the accessibility of education to wider range of individuals.

Kiron (https://kiron.ngo/) is an online platform that allows refugees to obtain a graduate degree worldwide and it is free of charge. Kiron’s goal is to make education more accessible and utilize innovative methods in creating a global network of educational, entrepreneurial, and research initiatives with a focus on migration and pedagogy. Kiron highlights its five advantageous characteristics as: flexibility in location, flexibility in time, open to all despite the student’s temporary or permanent status in a country, internationally accepted degree, and affordability. The website also outlines the benefits of such platforms in that a internationally accredited degree will increase the employment rate and economic growth among refugees and their country of residence while encouraging peaceful coexistence across different nationalities and religions. The characteristics of this platform indicate that MOOCs have a direct impact on reducing poverty risks (Goal 1), allowing more women attain education (Goal 5), increase employment opportunities (Goal 8), and provide more equal access to educational programs (Goal 10).

5.4 Validation

This stage of the process focuses on the implementation of contextualized solutions; the solutions are applied to the target population or location, monitored, and modified in order to perform with maximum effectiveness. This stage is accomplished through three steps of: implementation, monitoring progress, and error correction.

5.4.1 Implementation

The local-to-global approach has prepared the application of contextualized means of implementation and localized solutions—in addition to identifying local actors—and the circumstantial setting of each sub-problem and subsequently the problem in its entirety. However, this is not the final stage of the process, as the solutions are subject to the variability of human conditions affecting the problem.

5.4.2 Monitoring Progress

Solutions designed for real-world problems are not only aiming to resolve the problem but to produce productive outcomes. Monitoring the progress of an implemented solution will discover the errors and deficiencies the solutions may pose and allow for improving the means of implementation in each situation. In the case of the SDGs, local governments, the United Nations and their partners, education ministries and institutions, and educators play an important role in monitoring the local and global progress of each of the goals and targets.

5.4.3 Error Correction

In her description of computational thinking, Wing states that error correction is an important attribute of the process [2]. In the context of real-world problems the reception of solutions in various populations are not predictable and would have to be adjustable to the population’s needs and interests. Therefore, this stage modifies any errors that arise in the previous step.

6 Conclusion

Universal goals require global initiatives that close the gap between developed, developing, and under-developed countries. A local-to-global approach promulgates universal respect for diverse thought processes and generates cooperative means to raise awareness about sustainable development and its implications, in addition to innovative solutions and productive outcomes. Forming a localizable model for shared global problems is to serve as a means to include all populations in the process of creating a more sustainable culture on a global level.

This paper intended to propose a paradigm to approach complex real-world problem solving that would promote a communal effort towards the global concerns that we face today. For that reason, further research should be pursued in order to investigate the applicability of computational thinking as a universal concept and real-world problem-solving tool in practice. Future case studies can identify the shared and local-specific factors of the thinking processes, investigate the universality of computational thinking across cultures and disciplines, and develop a method of approach that not only provides solutions but also compatible with future developments.