Keywords

1 Introduction

Nowadays most of the technological solutions to support knowledge management processes, both in companies and educational institutions, are focused on combining different technologies able to evolve in different dimensions and to include people as part of the technology, not only as mere end-users. This is due to a large extend because the evolution from Information Society to the current Knowledge Society, where the core element is not the technology, but the ability to identify, produce, process, transform, disseminate and use the information to build and apply knowledge for human development [1]. The Knowledge Society is a Learning Society, where the learning is the key factor in order to persons, business, regions and countries achieve success [2]. There is a need to be able to adapt to a world where the emphasis has moved from knowledge transfer to knowledge creation, from implicit to tacit knowledge, and where building relationships that foster trust and common benefit are the basis for sustainable, ethical progress [3]. In this context, the knowledge management emerges as a sustainable competitive advantage [4] so the organizations expend part of their resources on building their capacity to share, create and apply new knowledge continuously over time [5].

On the other hand, the advances in technology, especially those related to Internet and the mobile devices, have fostered that people build their own personal ecosystems. People select and use different technological tools to support their daily life both in the personal and professional context. Moreover, they seek a certain degree of integration between different tools and services. When these tools are provided by an institution or company two main problems arise: (1) the interoperability of these services and tools; (2) and its evolution. The technological ecosystem concept emerges as a solution to this problems, beyond a simple accumulation of technology [6, 7].

Technological ecosystems are the evolution of the traditional information systems [8, 9]. Information systems emerged in the Information Society to cover the information management needs; whereas technological ecosystems are focused on support the knowledge management typical of Knowledge Society.

The concept of natural ecosystem has been transferred to different contexts. In particular, to the computer science field [10,11,12,13,14,15,16,17] to define technological solutions composed by heterogeneous software tools connected between them to improve the user experience and the knowledge management processes inside institutions or companies. Three common elements are present in all definitions of natural ecosystem - the organisms or biotic factors, the physical environment or abiotic factors and the relationships between them - [18]. According to García-Holgado and García-Peñalvo [19,20,21,22], the natural elements appear in a technological ecosystem: the biotic factors are the users and the software components; the relationships are the information flows that establish the communication between them; and the abiotic factors are the physical environment - hardware, network, etc. - that provides support to those flows.

In the event that the knowledge management is directed on supporting learning processes, the technological ecosystem is called learning ecosystem. Llorens-Largo et al. [23] defines a learning ecosystem as a “community, with educational methods, policies, regulations, applications and work teams, which can coexist so that their processes are interrelated, and their application is based on the physical factors of the technological environment”. They allow establishing learning ecologies, learning environments with a strong interactive component that allow the exchange of knowledge both in a formal and informal way.

This technological approach offers advantages over traditional learning platforms or Learning Management Systems (LMS) such as the ability to evolve in different dimensions [24, 25] or the reuse of heterogeneous tools already developed to build new systems. It provides a flexible and adaptive architecture [24, 26] to support the evolution of its components and their interconnections to achieve transparent interoperability between them. The LMS does not disappear, it becomes a software component inside the learning ecosystem.

People are not only end-users but also an important component of a learning ecosystem. They have an important role in the ecosystems life cycle as well as in the natural ecosystems. In natural ecosystems a driver is any natural or human-induced factor that directly or indirectly causes an ecosystem change [27]. For example, habitat change, climate change, invasive alien species, overexploitation and pollution, are direct drivers; and the indirect drivers are population, economic activity, and technology, as well as socio-political and cultural factors, because they influence in one or more direct drivers [28]. In technological ecosystems in general and in learning ecosystems in particular, there are also drivers; technological or human-induced factors that cause ecosystem changes. For example, direct drivers are workflows, employees or students profile, information handled; and indirect drivers are cultural factors, economic activity, organization policies, market, planned obsolescence, license changes.

Humans have a strong impact in both types of ecosystem. They produce many impacts on natural and technological ecosystems, both harmful and beneficial.

Like humans have to work to improve their role as drivers in natural ecosystems in order to mitigate many of the negative consequences of growing pressures on ecosystems [28], from a technological point of view, the tools and methods to define and develop learning ecosystems have to take into account the important role that people have in their success or failure.

The aim of this paper is to examine how the human factor in learning ecosystems has been addressed in the authors’ proposal to define and develop this kind of software solutions using Open Source tools.

The paper has been organized in the following way. The second section describes how the users are part of the learning ecosystems from an architectural point of view. The third section addresses the human factor in the ecosystem metamodel. The fourth section analyses the human interaction in learning ecosystems using the Suricata Model. Finally, the last section summarizes the main conclusions of this work.

2 Human Factor from an Architectural Point of View

2.1 The Architectural Pattern for Learning Ecosystems

The early history of software engineering was heavily influenced by a highly formal and mathematical approach to specifying software components, and a reductionist approach to deriving computer software programs that correctly implemented the formal specifications. A “separation of concerns” was practiced, in which the responsibility of producing formalizable software requirements was left to others [29] one example quote that illustrates this approach is “The notion of ‘user’ cannot be precisely defined, and therefore has no place in computer science or software engineering” [30]. Since this statement by Dijkstra, end-user involvement has become relevant in software engineering activities such as requirement elicitation. Requirements elicitation traditionally has been focused on satisfying the needs of the majority of users [31]. However, other software paradigms, such as the services-oriented computing, introduce the identification of individual user needs as a the prerequisite for customization and tailoring of software [32].

Booher [33] summarizes the increases emphasis on human factors integration into systems engineering. He stands up for a focus on the human element to achieve both dramatic increases in system performance and productivity and dramatic reductions in problems in contexts where technology plays a fundamental role. The human element should be considered a critical component of the complex system.

Considering humans as part of the learning ecosystems, not only mere end-users, is one of the main ecosystems characteristics. Users are part of the definition and development processes of the ecosystems, not only in the requirement elicitation phase [34], but also during the whole ecosystem life cycle. They take an active role in the evolution of the ecosystem. According to Booher [33] the organization’s focus should be first and foremost upon the people who, in some manner, will be directly exposed to the complex system. This idea can be applied to the learning ecosystems because they are complex tools that must adapt itself to changing users’ needs, from end-users to managers and decision makers in the organization.

The software engineering processes to develop learning ecosystems should take into account the human element at the same level as technology. For this reason, the architectural pattern to define learning ecosystems [19, 20, 24, 35] includes the human factor as a key element. According to Fowler [36], a pattern is an idea that has been useful in one practical context and that will probably be useful in others. The goal of the pattern for learning ecosystems is to establish the basis for the definition and implementation of this technological solutions that can solve different knowledge management problems in any type of organization or institution.

To define the architectural pattern, several learning ecosystems [37,38,39,40,41,42] were analyzed to detect the problems associated to the definition, development and deployment of this type of software solutions. First of all, the problems were identified using a Strengths, Weaknesses, Opportunities and Threats (SWOT) analysis [19]. Then, the main problems were modelled using the Business Process Model and Notation (BPMN) and analyzed to improve the knowledge management processes and resolve the identified problems [24].

The architectural pattern is based on the Layers pattern proposed by Buschmann et al. [43] and describes the logic architecture of a learning ecosystem, regardless of the physical deployment of the system and including the methodology and the human factor as elements of the ecosystem.

The human factor is represented in the architectural pattern through three main elements: a specific layer focused on the human interaction, the fourth layer called “Presentation”; an input stream to have a strong methodological basis to support the definition and operation of the whole ecosystem; and an input stream to ensure the implementation of the methodology and the ecosystem’s evolution over time. Figure 1 shows the architectural pattern with the human elements highlighted.

Fig. 1.
figure 1

Architectural pattern for learning ecosystems [24]

The heterogeneous nature of the software components that compose a learning eco-system makes end-users perceive the ecosystem as a set of parts, not as a whole. The aim of the presentation layer is to improve the usability and the user experience of the learning ecosystems fundamentally in two ways. First, it provides a unified design, not only visual but also related to interaction, for all the services or functionality provided by the lower layers in the architectural pattern. Second, nowadays, the learning ecosystems are used from different devices with distinct screen sizes (tablets, smartphones, computers), so the presentation layer must ensure accessibility to the ecosystem from any device.

The role of end-users as drivers in learning ecosystems is evident, but there are other human-induced factors who cause ecosystem changes. The two input streams represent those factors in any type of organization. Both are the result of the one or several people work.

According to Cambridge Dictionary, a methodology is a system of ways of doing, teaching, or studying something [44]. In the software engineering context, Rumbaugh et al. [45] define software methodology as a process to produce software in an organized way, using a collection of predefined notation techniques and conventions. The methodology stream in the pattern represents a set of methodologies, not only a software methodology, but also learning methodologies to guide both formal and informal learning processes, or quality improvement methodologies to ensure the quality of the processes, among others. This set of methodologies provide a solid base to increase the chances of ecosystem success, as well as establishing the basis to evolve the ecosystem in the correct way.

Regarding the management stream, it is focused on ensuring the application of the methodology and providing both project and risk management to allow the evolution of the ecosystem. The people in charge of the ecosystem management aspects have to define its objectives related to technological and knowledge management in the organization. Each objective can apply one or more of the methodologies mentioned above. The learning ecosystem will evolve to meet the objectives.

2.2 Influence of Human Factor in the Success of a Learning Ecosystem

The relevance of methodology and management input streams is clearly reflected in the learning ecosystem for support the knowledge management inside a PhD Programme [46]. This learning ecosystems was defined and developed for the PhD in Education in the Knowledge Society at the University of Salamanca [47]. The main components of the ecosystem are a user-centered portal which provides most features required by the learning processes and a set of social tools centered in the dissemination of the scientific knowledge. Figure 2(a) shows the architecture with all software and human components.

Fig. 2.
figure 2

Architecture of the learning ecosystem for PhD Programmes. (a) PhD in Education in the Knowledge Society at the University of Salamanca. (b) PhD in Educational Innovation at Tecnológico de Monterrey. (c) Master and PhD in Behavioral Science with Orientation to Food and Nutrition at University of Guadalajara.

This learning ecosystem (a) was transferred to other two contexts, in particular to two Mexican universities. First, the ecosystem was rolled out for supporting the scientific knowledge in a PhD Programme of the Tecnológico de Monterrey (Mexico), the PhD in Educational Innovation coordinated by the School of Humanities and Education. Figure 2(b) shows the architecture of the learning ecosystem transferred to the Tecnológico de Monterrey. The architecture was adapted to the new context. Most of the social tools were deleted, the repository was replaced although both are based on the same Open Source tool, DSpace, and the mail server was replaced by the mail server provided by the institution. Furthermore, the input stream related to the methodology is not present in this context.

On the other hand, the learning ecosystem (a) was transferred to the Behavioral Feeding and Nutrition Research Center (CICAN) at the University of Guadalajara (Mexico). The aim was to support the scientific knowledge management both in the Research Center and the postgraduate studies, the Master and PhD in Behavioral Science with Orientation to Food and Nutrition. The knowledge acquired during the first transfer to a Mexican context was applied in this new context. The main differences from the first ecosystem are that there are three different portals instead one, besides a new tool to provide institutional blogs. Regarding the human factor, this ecosystem neither has the methodology input stream. Figure 2(c) shows the architecture resulting after the transfer to this context.

The three ecosystems have many similarities:

  • Same objective: scientific knowledge management in PhD studies.

  • Same architecture pattern.

  • The main software components: a web portal based on Drupal, one or more social tools, a repository, a mail server and a user management system based on Drupal too.

Therefore, the main differences are focused on the human factor and the cultural context. Regarding the cultural context, the ecosystem was adapted to the vocabulary and PhD studies regulations in Mexico and it was validated by end-users and directors of the PhD studies.

In relation to the human factor, the quality committee disappears in the two derived ecosystems. The quality committee in the original ecosystem is responsible of the assessment and monitoring of the PhD Programme and the learning ecosystem, it defines the methodology to support the objectives defined by the academic committee.

In reviewing the use of the three ecosystems, no updated data was found on the derived ecosystems, only the original ecosystem continues active. The learning ecosystem (b) has updated information about the enrolled students but does not have more data related to the users’ interaction and use the ecosystem. The learning ecosystem (c) was used for some months after the deployment and training to use and manage it, but there are not current data. After analyzing the situation, the main reason for this is the lack of a methodology provided by one or more persons.

3 Modeling Human Interaction in Learning Ecosystems

The definition and development of learning ecosystems is a complex process influences by many factors. Although the main goals are the same, the software components and the information flows can change, even in the same organization, mainly due to the human factor changes continuously over time. As section above shows, the transfer of an existing ecosystem involves a large number of ad-hoc developments and its success rate depends largely on how the learning ecosystem integrates the human component as one more element.

It is needed to provide a platform-independent solution to improve the definition and development of learning ecosystems which can adapt to different contexts and evolve to cover the changing needs of companies and institutions. Model-Driven Architecture (MDA) provides a framework for software development that uses models to describe the system to be built [48]. This proposal apply Model Driven Development (MDD) [49] using the standards supported by the Object Management Group (OMG). The learning ecosystem metamodel was defined in previous works to define Platform-Independent Models (PIM) of learning ecosystems, first as an instance of Meta Object Facility (MOF) and final version as an instance of Ecore [50]. The main objective of this metamodel is to provide a Computing Independent Model (CIM) for describing learning ecosystems build from software components, human elements and information flows between components which are represented by web services [22].

The human factor is one of the main concepts identified in the learning ecosystem metamodel together the different software components and the information flows to establish the relationship between the previous ones. Just like the architectural pattern for learning ecosystems, in which this metamodel is based, the human factor is highly relevant to ensure the evolution of the ecosystem. Figure 3 shows how the human factor is represented in the learning ecosystem metamodel. The full version of the metamodel in Ecore is available in high resolution on the following link https://doi.org/10.5281/zenodo.1066369 [51].

Fig. 3.
figure 3

Human factor in the learning ecosystem metamodel in Ecore

There is an abstract class that represents the human factor in the metamodel, the People class, from which inherit four classes that represent each of the human elements involved in a learning ecosystem. In particular, these classes represent the two input streams defined previously in the architectural patter for learning ecosystems. The methodology input stream is modelled through the Methodology class and the management input stream through the Management class. Both input streams are the result of the one or several people work, this is modelled through the User class. User has an attribute to determine the type of user – manager or computer engineer –. The relation between User and Methodology is represented by a bidirectional association which means that people can establish one or more methodologies in an ecosystem. To model that people have to ensure the application of the methodology through the management input stream, a bidirectional association between User and Management has been defined in the metamodel.

The management in a learning ecosystem is composed by a set of objectives related to technological and knowledge management in the organization. One or more methodologies are applied to achieve an objective. The aim of the learning ecosystem is to meet the defined objectives. This is modelled in the ecosystem metamodel through the Objective class, which compose the Management class. Moreover, there are two bidirectional associations. The first between Objective and Methodology classes, to model that an objective applies a methodology. The second one, between the Objective class and the class that represents the information flows of the learning ecosystems (InformationFlow class), in order to model that information flows can be defined to accomplish one or more objectives.

4 Human Factor in Knowledge Management Processes

According to King [52], knowledge management can be defined as the planning, organizing, motivating, and controlling of people, processes and systems in the organization to ensure that its knowledge-related assets are improved and effectively employed. Moreover, inside an organization, the knowledge are not only the electronic or printed documents, the knowledge in employee’s mind and the knowledge embedded in the organization’s processes are part of the knowledge-related assets.

The knowledge management has a life cycle as known as knowledge management process. As described above, the learning ecosystems are focused on supporting knowledge management processes inside companies and institutions. According to the architectural pattern for developing learning ecosystems, this technological approach should include methodological elements that allows the optimization of resources related to knowledge.

To ensure that the proposal for improving the definition and development of learning ecosystems take into account the human factor in the knowledge management processes, it was analyzed following the Suricata Model [53], an architectural proposal based on five layers ranging from the technological infrastructure that encompasses software, hardware and communications with an Open Source philosophy, to the personalized portal for knowledge worker, through which the user interacts with all layers of the architecture in a transparent way (see Fig. 4) [54]. This model allows to develop methods and tools to support individuals involved in the knowledge management processes, both from a personal and collective point of view, in order to promote increased productivity and innovation capacity in a context of knowledge management oriented to processes [53].

Fig. 4.
figure 4

Source: Enrique Rubio Royo [53]

Suricata model.

First, the most basic layer of the Suricata architecture is the technological infrastructure, which aims to integrate the different software applications and facilitates their interoperability and integration. In the case of the architecture pattern for developing learning ecosystems, this layer is matched to the lower layer, the infrastructure layer, where interoperability between all components is facilitated through a set of software tools, in particular, a mail server, a tool for monitorization of the ecosystem and a user management system.

The second layer is the information architecture, which is responsible for storing digital artifacts, and allowing the content management. The proposed pattern for developing learning ecosystems has a data persistence layer in which all relevant information for the knowledge management is collected, stored and shared between the different ecosystem components, both human and software.

The third layer is the collaborative environment that enables collaboration among all the components of the architecture, ensuring the knowledge exchange. The service layer in the proposed architectural pattern is equivalent to this layer in the Suricata Model. This layer provides a set of services and information flows between them to support learning processes. Moreover, this layer supports the main knowledge management processes,

The penultimate layer of the Suricata Architecture focuses on supporting the creation of virtual communities that allow the transaction of knowledge and not just the transmission thereof between different users [55]. The transaction of knowledge is a fundamental axis in learning ecosystems. The information flows support this transactions among all the ecosystem.

The last layer in the Suricata Model corresponds to the user interface through a customized environment that allows access to all layers of the architecture. In the case of learning ecosystems, there is a layer of access to other layers, but which has directly access the different elements of the service layer. This is the presentation layer, one of the main elements which includes the human factor in the learning ecosystems based on the architectural pattern.

Therefore, the architectural pattern for defining and developing learning ecosystems accomplishes the Suricata Model.

5 Conclusions

In order to adjust to the cognitive disruption caused by the transition from a hierarchical organization of our physical environment and knowledge structures, to a networked, hyperconnected, environment we need to manage our personal knowledge in an effective, open-minded and sustainable way [3]. Technological ecosystems emerged in the Knowledge Society to share, create and apply the knowledge in any type of organization. In particular, technological ecosystems are called learning ecosystems when the knowledge management is focused on supporting learning processes, both companies and institutions.

The metaphor of natural ecosystem has been transferred to the technological area to stress the importance of human factor in technological solutions to manage knowledge. People have a main role as drivers in natural ecosystems, and they have the same role in technological ecosystems. They are not only end-users, they are an active part of the learning ecosystems.

Even though the learning ecosystems are powerful to support knowledge management processes, the definition, development, deployment and maintenance of this type of software solutions is complex and involves several problems. To solve these problems and improve the development of learning ecosystems from a software engineering point of view, an architectural pattern and a metamodel was defined in previous works [19, 20, 24, 51, 56, 57]. This paper has analyzed the human factor in these engineering proposals.

First, the human factor is one of the main parts of the architectural pattern for developing learning ecosystems. Three elements introduce this factor: a layer focused on the human interaction in the ecosystem, the presentation layer; an input stream to force the presence of one or more methodologies defined by people inside the organization; and an input stream to ensure the application of the methodologies and coordinate the evolution of the ecosystem.

Regarding the ecosystem metamodel, although usually software metamodels are focused on modelling software requirements, in the proposal the human factor was included as one of the three parts that compose the metamodel.

Finally, the Suricata Model [53] was used to analyze the human factor as a key element in the knowledge management processes supported by learning ecosystems developed with the architectural pattern and the ecosystem metamodel. In particular, the architectural pattern fulfills the Suricata Model, and also the ecosystem metamodel by transitivity because of it is based on the pattern.