Application of scalable Workflow-Management- Systems in 3D ...
-
Upload
khangminh22 -
Category
Documents
-
view
1 -
download
0
Transcript of Application of scalable Workflow-Management- Systems in 3D ...
AuthorMarkus Eggenreiter,BSc.
SubmissionDepartment forBusiness Informatics –CommunicationsEngineering
Thesis SupervisorUniv.-Prof. Dipl.-Ing.Dr. Stefan Oppl
March 2021
JOHANNES KEPLERUNIVERSITAT LINZAltenbergerstraße 694040 Linz, Osterreichwww.jku.atDVR 0093696
Application of scalableWorkflow-Management-Systems in 3D printing
Master’s Thesis
to confer the academic degree of
Master of Science
in the Master’s Program
Business Informatics
Statutory Declaration
I hereby declare that the thesis submitted is my own unaided work, that I
have not used other than the sources indicated, and that all direct and indirect
sources are acknowledged as references. This printed thesis is identical with
the electronic version submitted.
Linz, . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(Signature)
18.03.2021
Abstract
3D printing or additive manufacturing (AM) has already been
successfully introduced to the consumer market, with low-cost user-
friendly machines for every-day use. However, the implementation in
a professional environment (e.g. educational institutions, production
chains) is still a challenge to realize for stakeholders. This master thesis
focuses on the application of scaleable Workflow-Management Systems
in a 3D Print learning environment. Scaleable in this context defines
the ability, to extent the system if the requirements are changed (e.g.
additional machines and processes are added).
The goal is to construct a blueprint for a 3D Print learning system,
which incorporates best practices from Project-Based Learning (PBL)
and Smart Learning frameworks. The technological aspects cover the
characteristics of modern Workflow-Management-Systems (WfMS) and
Cyber-physical systems (CPS).
To be able to define this blueprint and to provide findings for
the research questions, a web-based prototype was implemented with
a 3D Print Server. The last part covers an empirical study in the
form of ”Thinking Aloud Sessions”, to test the requirements and the
implementation of the prototype.
As a result, this master thesis gives the reader a list of require-
ments necessary for a 3D Print learning system that incorporates
best-practices based on Project-Based Learning. The study transcripts
can be used to further detail and specify missing features for a learning
platform beyond a prototype.
Contents
1 Introduction 6
1.1 Challenge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 Aim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Research questions . . . . . . . . . . . . . . . . . . . . . . . . 7
2 Background 8
2.1 Project-Based Learning (PBL) . . . . . . . . . . . . . . . . . . 11
2.2 Smart Learning . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3 Workflow-Management-Systems (WfMS) . . . . . . . . . . . . 27
2.4 Cyber-physical systems (CPS) . . . . . . . . . . . . . . . . . . 35
2.5 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.6 Cloud 3D Print IoT platform . . . . . . . . . . . . . . . . . . 42
3 Specification for 3D Print Smart Learning Application 46
4 Implementation 57
4.1 3D Print Assistant - Learning Portal . . . . . . . . . . . . . . 57
4.2 Octoprint Server - 3D Print Server with Presets . . . . . . . . 64
5 Empirical Study - The Think Aloud Method 65
5.1 Goal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.2 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.3 Implementation of the study . . . . . . . . . . . . . . . . . . 66
5.4 Participants . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.5 Analysis of transcripts . . . . . . . . . . . . . . . . . . . . . . 68
5.6 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
6 Conclusion 73
6.1 Limitations of the study / master thesis . . . . . . . . . . . . 75
6.2 Contribution to the state of research . . . . . . . . . . . . . . 76
6.3 Relevance for practice . . . . . . . . . . . . . . . . . . . . . . 76
6.4 Future Research . . . . . . . . . . . . . . . . . . . . . . . . . . 77
List of Figures
1 Evolutionary prototype . . . . . . . . . . . . . . . . . . . . . . 18
2 Classic Intelligent Tutoring System Source: (Hwang, 2014) . . 21
3 Smart Learning Framework Modules Source: (Hwang, 2014) . 24
4 BPMN Example - start your first 3D Print . . . . . . . . . . . 27
5 Prusa research printer farm . . . . . . . . . . . . . . . . . . . 30
6 3D Print time comparison . . . . . . . . . . . . . . . . . . . . 32
7 Workflow vs. Business Process Source: (Muller J., 2005) . . . 35
8 Cloud 3D Print Panel . . . . . . . . . . . . . . . . . . . . . . . 44
9 3D Print App Use Case Diagram . . . . . . . . . . . . . . . . 47
10 3D Print App System Context . . . . . . . . . . . . . . . . . . 50
11 Functional Requirements Scope . . . . . . . . . . . . . . . . . 51
12 3D-Print Assistant On-boarding . . . . . . . . . . . . . . . . . 58
13 3D-Print Assistant Learning Profile . . . . . . . . . . . . . . . 58
14 3D-Print Assistant Core Functions . . . . . . . . . . . . . . . 59
15 3D-Print Learning Module . . . . . . . . . . . . . . . . . . . . 60
16 3D-Print Learning Module Content . . . . . . . . . . . . . . . 60
17 3D-Print Development Module . . . . . . . . . . . . . . . . . . 61
18 3D-Print Implementation Module 1 . . . . . . . . . . . . . . . 62
19 3D-Print Implementation Module 2 . . . . . . . . . . . . . . . 62
20 3D-Print Implementation Module 3 . . . . . . . . . . . . . . . 63
21 3D-Print Implementation Module 4 . . . . . . . . . . . . . . . 64
22 OctoPrint Software . . . . . . . . . . . . . . . . . . . . . . . . 65
23 Findings TOL sessions . . . . . . . . . . . . . . . . . . . . . . 68
5
1 Introduction
1.1 Challenge
Additive manufacturing (AM) has the potential to bring a fourth industrial
revolution for three main reasons: Firstly, the technology allows innovative
entrepreneurs to start prototyping without investing in expensive moulding
forms to create a new product. Secondly, it gives manufacturers the possibility
to produce personalized products for the needs of their customers. Last but
not least, 3D printing encourages innovation, since everybody has the freedom
to shape, design, and produce a 3D printed part(Tofail et al., 2018).
However, many companies and organizations have not made the first step to
adapt their processes to integrate this technology. The main reason is that
procedures linked to 3D printing are complex and not self-explanatory, e.g.
choice of material, the operation of a printer, or 3D design choices.
1.2 Aim
The additive manufacturing process itself cannot be taught by just sharing
explicit knowledge. The competence to choose ideal parameters like tempera-
ture and print settings is obtained during several successful and failed projects.
Therefore, it is clear that learning this technology needs to be supported by
learning-assistance systems, which enable and simplify the process of building
expertise.
Workflow-Management-Systems (WfMS) can allocate and coordinate all tasks
which are required for the 3D printing process. With the advantages of IoT
(Internet of Things) in terms of connectivity, it is possible to develop a smart
network for machines, processes and people to make additive manufacturing
easier, accessible and more profitable.
6
1.3 Research questions
The aim of this work is to analyze which technology and methods can be used
to support the process of building expertise in a complex field like additive
manufacturing. To give an appropriate conclusion for this objective, it is
necessary to address the following research questions:
• To which degree can Project-Based Learning be used to enable compe-
tence building in complex processes?
• Which technologies and methods are currently available to support
Project-Based Learning?
• How can the process of learning additive manufacturing be supported
by using specific technology and methods?
The Master Thesis is divided into the following sections:
1. Research: the first part will cover comprehensive research about learning
methods and practices that are mainly used in project environments to
increase the explicit knowledge of the participants. The main interest in
this part will lie in approaches that support problem-solving in complex
processes.
2. Requirements for the additive manufacturing process: the second part
will compare the findings from the first part with the actual requirements
for the additive manufacturing process. The main goal in this part is
to find out if existing technology and methods can fully support the 3D
printing process.
3. Implementation: the third part will introduce a showcase in the field of
3D printing. The combination of a modern Smart Learning app with
an IoT application for 3D printers shall present the reader with a new
method of making complex learning processes more accessible.
4. Empirical study: the fourth part will focus on the evaluation of the
results of the showcase and the main reasons why existing WfMS cannot
fully support complex learning processes like 3D printing.
7
2 Background
The primary sources for scientific papers for this master thesis are the online
database ”ScienceDirect” and ”Google Scholar”. Before selecting specific
journals and articles, it was necessary to get an understanding of the topics and
definitions for terms, like Project-Based Learning, Smart Learning, Workflow-
Management-Systems and Cyber-physical systems. The strategy was to firstly
run a Google search to get an overview of the topics. Secondly, the terms
Workflow-Management-Systems or Cyber-physical systems were connected
with additive manufacturing or 3D printing, to evaluate if there are products
or services online available, which are interesting in the given context. Finally,
specific terms and combinations of terms were selected and primarily searched
in the online database ”ScienceDirect”.
For the research topics ”Project-Based Learning” and ”Smart Learning”
there are many papers and books available online since those areas are
broadly discussed and researched by different authors. For ”Project-Based
Learning” the main literature to focus on was the book ”Project-Based
Learning” by Joseph S. Krajcik and Phyllis C. Blumenfeld. Search queries
like ”Project-Based Learning 3D Printing” give many feasible results for
the application of additive manufacturing in classrooms. Another keyword
in this context is STEM-Education (science, technology, engineering and
mathematics education), a term that stands for learning approaches that
combine different research areas. For ”Smart Learning” the main paper is
”Definition, framework and research issues of Smart Learning environments
- a context-aware ubiquitous learning perspective” by the author Gwo-Jen
Hwang, which can be found online with the service ”ScienceDirect”.
There was a lack of results for papers in the given context, here are some
examples for queries: ”workflow additive manufacturing” or ”workflow 3D
Print” or ”additive manufacturing system”. Other terms like ”workflow
management production” or simply ”additive manufacturing” gave mostly
results that are only suitable for specific domains (e.g. The Pegasus workflow
management system for scientific workflows). The conclusion was to determine
8
the main characteristic of a Workflow-Management-System and to combine
it with the context of this master thesis. The main source was amongst
other sources the book ”Workflow-based Integration” from Joachim Muller
(Muller J., 2005). For cyber-physical systems, the starting point was to find
a definition via Google Search by simply using keywords like ”cyber-physical
systems” or ”cyber-physical definition”. Google Scholar gave further insights
to find more characteristics for cyber-physical systems. Finally, the most
suitable papers were found in ”ScienceDirect” with queries like ”cyber-physical
systems workflows” to have a connection between both research topics.
Introduction
One solution to enable the process of building expertise in complex processes
can be found in current literature with the concept of Project-Based Learning
(PBL). In contrast to traditional learning methods, the PBL-method focuses
on a project environment, which is realized by students in a physical-world
context. The aim is to engage students to develop more knowledge and skills
connected to the project (Chu et al., 2017). For additive manufacturing, it
is crucial to provide instruction to successfully finish a project. Therefore, a
Workflow-Engine can be introduced to assist the different project phases. The
project phases of 3D printing are a combination of specific tasks (for example
modelling, slicing, material selection, post-processing). The processes are
executed at various locations and times by human beings and machines. The
previously mentioned instruction has to be provided at the right moment and
place to assist the current Workflow step. In conclusion, a Workflow-Engine
can be implemented to actively track the ongoing activities with the related
data (Atkinson et al., 2017).
In the current literature Project-Based Learning is described still as a new
field in learning environments. However, the majority of learners have been
able to gain skills in project environments by using new technologies and
tools to process information to achieve a specific goal (Weichhart and Stary,
2017). One good example of a technology that can be used in a project-based
9
learning setting is social media. On the one hand, it encourages participants
to share knowledge, on the other hand, it enables collaboration. A project-
based learning environment gives new challenges to learners and teachers for
the reason that traditional roles and responsibilities have to be re-defined to
work in this setting. The learner has the task to actively participate in the
project and to define an individual learning goal. The teacher has to engage
directly with the learner through various channels and to be able to support
the individual goal setting and learning process (Weichhart and Stary, 2017).
Researches have developed Smart Learning Systems in information technology
since the eighties (Hwang, 2014). Intelligent Tutoring Systems (ITSs) have
been developed in educational institutions to support learning processes. The
goal of developing such systems is to provide learners with knowledge by
using adaptive learning interfaces and materials to fit their individual needs.
Another term for ITS is an adaptive learning system (Hwang, 2014).
With the rise of the digital age, those learning systems were adapted and
implemented as web-based learning systems. The current state of technology
provides new forms of collaboration through wireless devices and networks
which makes it possible to use learning resource without constraints concerning
place or time (Hwang, 2014). This learning approach fits the requirements
to be used in additive manufacturing since additive manufacturing processes
can be executed at various locations and times by machines or people.
State-of-the-art learning approaches have the ambition to use wireless com-
munication and sensing technologies to enable interaction for learners. The
goal is to enable interaction between physical-world and digital-world objects
(Hwang, 2014). In the additive manufacturing environment, both worlds have
to be connected to successfully execute a 3D Print Workflow. Modern printers
are using RFID tags (Radio-Frequency Identification) to identify material
spools. The material can be identified as a physical-world object which will be
recognized by the printing software to apply the correct temperature settings.
The data about the right settings are stored in the 3D printing application.
The database for the application can be recognized as a digital-world object,
the RFID technology builds a bridge between the two worlds. Researchers
10
are calling this approach ”context-aware ubiquitous learning” (Hwang, 2014).
2.1 Project-Based Learning (PBL)
Definition of Project-Based Learning
In literature, ”Project-Based Learning (PBL) is a model that organizes learn-
ing around projects.” (Thomas, 2000). A project can be described as a set of
complex tasks, which are carried out by students by making decisions, solving
problems, designing a final product, and actively investigating activities that
are necessary to fulfil a given goal. Students can work relatively freely over a
period of time. At the end of a project, the result is achieved by presenting
Use-Cases or realistic products. (Thomas, 2000).
Researchers like Morsund make a differentiation between problem-based
learning and Project-Based-learning to find a definition of PBL:
”Project-Based Learning is sometimes called problem-based learn-
ing, and vice versa.” (Moursund, 1999).
In problem-based learning, the focus lies on a specific problem to be solved
(Moursund, 1999). For instance, in additive manufacturing, the wrong storage
of Nylon filament will lead to poor print-results, since the material will absorb
water from ambient air over time. To solve this problem, it is recommended
to store filament in boxes with airtight seals. In comparison, Project-Based
Learning provides more comprehensive instruction than problem-based learn-
ing. Firstly, a project consists of tasks and areas which are not defined as
a problem. Secondly, a key characteristic of PBL is, that a project does
not primarily focus on learning about a specific topic, it focuses on actively
working in a project environment. For example, PBL students are involved
in tasks like research, working on a manual, implementing a prototype, or
doing a presentation in front of an audience (Moursund, 1999).
Krajcik and Blumenfeld define Project-Based Learning as a form of situated
learning. Students in PBL projects are actively learning by conducting
11
projects, which resemble activities done by adult professionals in a physical-
world context. Learners will gain a ”deeper understanding of a specific
topic” when they actively construct knowledge by working on ideas and
activities (Krajcik and Blumenfeld, 2013). Another characteristic of PBL is
the definition of a meaningful, physical-world related problem. As mentioned
before, students will face problems that are similar to activities conducted by
scientists, writers, historians, and mathematicians.
Additive manufacturing involves a wide range of disciplines since it uses
a combination of technologies to enable prototyping and manufacturing of
complex parts:
1. Design studies: to design a 3D printed part, modellers have to consider
boundary values like wall thickness, support-structures, and overhangs.
3D printers can produce complex structures, with the prerequisite that
models are adapted for the requirements of additive manufacturing.
2. Model preparation / Slicing: to prepare a 3D model for printing, additive
manufacturing is using algorithms to slice the model into layers. The
software for this process step originates from medical applications (for
example a CT scan visualization of the brain) (Golby, 2015).
3. Materials science: the material for 3D printers is called a filament, which
is rolled on spools for storage. Filament producers offer a variety of
different materials (for example PLA - Polylactic acid, ABS - Acryloni-
trile butadiene styrene, Nylon). Each material has different properties
which can be used for various Use-Cases. Nylon, for instance, is ideal
to be used for gear parts or other moving applications.
4. Informatics: to operate a 3D Printer it is necessary to use a set of
tools for each Use-Case involved. IT experts are facing the challenge
to make 3D printers easy-to-use but also develop software that offers
functionality for professional applications in different industries.
12
Key Features of Project-Based Learning
According to Krajcik and Blumenfeld learning scenarios which are considered
as PBL-environments consist of five key features:
1. The start of the project involves the introduction of a problem that has
to be solved or the definition of a question, which has to be answered
in a specific discipline (Krajcik and Blumenfeld, 2013).
2. Students will participate in authentic workshops to explore the driving
question. To gain expertise in the specific field, students engage in
different problem-solving processes (Krajcik and Blumenfeld, 2013).
3. Students and teachers collaborate in various tasks to get answers to
the driving question. This step resembles the process, how experts
engage in complex activities to solve a specific problem (Krajcik and
Blumenfeld, 2013).
4. To help them perform tasks normally beyond their capacity, students
are equipped with learning technologies (Krajcik and Blumenfeld, 2013).
5. The result of PBL projects is a set of concrete products that will help to
address the given problem or question. The result is publicly available
and acts as an external representation of the knowledge obtained during
the project (Krajcik and Blumenfeld, 2013).
The theoretical background of Project-Based Learning
”The roots of Project-Based Learning extend back over a hundred years, to
the work of educator and philosopher John Dewey (1959), whose Laboratory
School at the University of Chicago was based on the process of inquiry”
(Krajcik and Blumenfeld, 2013).
According to Dewey, students will be more motivated to invest time in learning
activities, if the given tasks represent meaningful physical-world exercises,
which are normally conducted by experts in a specific domain. In the studies
13
of Krajcik and Blumenfeld, Dewey’s work was elaborated and re-defined to
have a better understanding of how children learn.
According to (Krajcik and Blumenfeld, 2013) the process of building deeper
knowledge can be found in the learning science ideas: ”active construction,
situated learning, social interaction, and cognitive tools”.
Active construction describes the process of obtaining deeper knowledge
by constructing a meaningful purpose, based on experiences and interactions
in the physical-world. In contrast, learners will gain only a superficial un-
derstanding, if the learning content is passively communicated by a teacher,
computer, or a book. The process of learning describes the continuous reflec-
tion of existing knowledge by students (Krajcik and Blumenfeld, 2013). In
the additive manufacturing process, knowledge is built by actively exploring
techniques that will deliver a proper result for a Use-Case. One example is the
adaption of parameters like the temperature if the surface of a model has an
unsatisfying structure. This knowledge cannot be obtained by just following
a handbook, since the purpose of a part can vary between the described
application and the desired result. According to Krajcik and Blumenfeld a
teacher or material (for example a book) ”do not reveal knowledge to learners”.
Students will gain expertise if they actively build knowledge by exploring the
project environment (e.g. a classroom with 3D printers), discussing ideas,
interact with other learners and make connections between new and old ideas
(Krajcik and Blumenfeld, 2013).
Situated learning describes a learning environment that is conducted in ”an
authentic real-world context” (Krajcik and Blumenfeld, 2013). According to
research in learning science, the most effective learning will occur in situated
learning environments (Krajcik and Blumenfeld, 2013). A situated learning
environment in additive manufacturing would involve students which will
experiment to work on a specific model or to solve a specific problem (e.g.
broken replacement-handle for a box). By discussing different ideas and
using different disciplines, the students would design and produce the best-
fitting part for the given Use-Case. An advantage of situated learning is,
that students will directly see the meaning and value of the task which is
14
performed. Passive learning material like a complex instruction manual will
make it harder for learners to understand the meaning behind it (Krajcik and
Blumenfeld, 2013). Another advantage of situated learning is, that knowledge
that is obtained in an authentic physical-world context, can be applied to
other situations as well (Krajcik and Blumenfeld, 2013). As mentioned before,
additive manufacturing involves a variety and combination of disciplines to
successfully produce a part. For instance, students will increase their abilities
in 3D modelling, which can be as well applied to create cinematic trailers or
3D characters in video games. The meaningful context in a situated learning
environment will enable learners to make connections between the obtained
knowledge and new applications outside of the environment (Krajcik and
Blumenfeld, 2013).
Social interaction between teachers, students, and community members
will result in the best learning results according to learning science research
(Krajcik and Blumenfeld, 2013). Members in a project environment will
create a collective understanding of the problem. By debating ideas and
solution approaches, all members will increase their knowledge and get a
deeper understanding of the given discipline (Krajcik and Blumenfeld, 2013).
The 3D printing community consists of enthusiasts which just started with
3D printing, experts which give best-practices and advice to grow the commu-
nity, and people who build a network to enable collaboration. Websites like
Thingiverse.com or youimagine.com offer platforms to share models freely
among the community. Skilled creators will take ideas or existing models to
improve the functionality or to change the application of the part. The contin-
uous exchange of ideas will create a network to allow innovation, knowledge
exchange, and creativity for the whole community.
Cognitive tools are giving students extended possibilities to increase their
knowledge in a specific field. One example is visualization tools for graphs,
which illustrate connections in data patterns. The software which can be
defined as cognitive will allow learners to perform tasks that will not achievable
without the use of IT assistance systems (Krajcik and Blumenfeld, 2013).
According to Krajcik and Blumenfeld, learning technologies can support
15
students by providing the following features:
• access and collect a ”range of scientific data and information” (Krajcik
and Blumenfeld, 2013)
• provide ”visualization and data analysis tools” (Krajcik and Blumenfeld,
2013)
• collaboration-functionality and sharing information across a platform
• planning, building, and testing models
• develop presentations and prototypes to illustrate gained knowledge
The latest software trend in additive manufacturing is cloud-based services.
3D printing cloud solutions like Astroprint are implementing a feature-set
that provides a full-functional additive manufacturing environment.
Feature-Set Astroprint (Excerpt):
• Thingiverse API: connection to one of the largest platforms to download
new models (3D Model Database)
• Printer-Profiles: access to pre-defined printer profiles from different
manufacturers (Machine Database)
• Material-Profiles: access to pre-defined material profiles from different
manufacturers (Material Database)
• embedded viewer to visualize 3D models or generated G-Code (Visual-
ization)
• embedded slicer to prepare 3D models for printing (planning, building,
and testing)
• Cloud Service to share 3D models (collaboration)
16
Tutoring in Project-Based Learning
In a complex environment like additive manufacturing, the learning curve
can be steep, depending on the individual goals and pre-knowledge about
the subject. As stated, additive manufacturing or 3D printing involves many
professional disciplines, to be able to create a new part from scratch.
Project-Based Learning is defined as a teaching strategy, which enables the
learner to acquire knowledge through the realization of a project. The project
itself can be carried out alone by the learner or in collaboration with other
learners by sharing knowledge and best-practices. Furthermore, it allows the
learner to engage in the active construction of their knowledge by interacting
with other peers and the environment. The tutor acts as a mediator between
the peers which are involved in the project and the objects of knowledge
(Amamou and Cheniti-Belcadhi, 2018).
A tutor in a project-based learning setting need to face the following challenges;
firstly he/she has to have a fundamental knowledge of how to supervise a
group of peers in a PBL environment and secondly has to know how to involve
the group in professional activities to able to achieve the set goal (Amamou
and Cheniti-Belcadhi, 2018).
A tutor in an additive manufacturing setting needs to bring knowledge in
different disciplines since the overall success/failure is depending on different
parameters. For instance; if a group of learners is developing an evolutionary
prototype, the requirements and needs for professional input & best practices
will increase over time. In the beginning, basic knowledge of product design
may be sufficient, to be able to assist the group of learners. Iteration 5 or 6
may revolve around design decisions concerning usability and adaptability of
a functional part. In this case, the tutor needs to involve the learners in new
professional activities to face this challenge. The other mentioned challenge
”supervising group of peers” can be already observed in many workshop
scenarios which are held in so-called ”Makerspaces”. The peers will engage
actively with the environment, which differs a lot from a traditional classroom
setting, where learners are participating in more-or-less passively. In a 3D
17
printing setting, good logistics, and safety-precautions are key to enable
learners to actively construct their knowledge. For instance, the learning
facility/lab may not have enough 3D printers for the learners, in this case,
the tutor may split up the peers into different sub-groups (e.g. one group is
designing an enclosure, another group is working on PCB boards, another
groups is working on the software and so on).
Figure 1: Evolutionary prototype, Source: Singularity Hub (2018),https://tinyurl.com/yhsa8bjn
According to Ammamou et al. it is crucial to involve learners in a professional
environment to be able to develop PBL as a new style of learning. The group
discipline and project implementation in an academic PBL environment is not
comparable to professional life. Another aspect is the lack of collaboration in
terms of knowledge transfer between the learners.
”Thus, it is crucial to automatically change the old learning
characteristics under the tutor supervision while also knowing
that, technological evolution Information and communication with
the web flexibility contributes to the emergence of new teaching
concepts, such as professional tutor and pair tutoring.” (Amamou
and Cheniti-Belcadhi, 2018)
18
What is a professional tutor?
A professional tutor helps students by providing instructions in various settings.
The main goal is to prepare students for examinations. Other examples of
common tasks of a professional tutor are assessing the student’s performance
and knowledge, help to improve in areas where there is a need for improvement,
help with homework and maintain records. The tutor normally has worked
many years in a specific field which is related to subjects such as Biology,
Anatomy and Physiology, Human Genetics, Mathematics, Algebra, English,
Psychology, Sociology, Speech Communications, and Financial Accounting
(Jobhero, 2020).
What is peer tutoring?
”Peer tutoring includes a range of approaches in which learners work in couples
or small groups to get explicit teaching support” (summaedu.org, 2020).
The two key forms of peer tutoring are groups of the same age and cross-age.
In cross-age classes, the senior learner takes on the role of mentor and is put
in a group with a younger tutee. Reciprocal instruction, where the students
rotate between the position of instructor and student, or tutor and tutee, are
other types (summaedu.org, 2020).
Evaluation of Literature Research for Project-Based Learning
The literature on Project-Based Learning is giving a solution approach to
increase knowledge in a complex field like 3D printing. Firstly, the method
focuses on a specific problem, which is similar to the basic idea of 3D printing.
Additive manufacturing gives designers the possibility to produce a complex
part at any time, which will be adapted/improved in iterative process steps
(prototype to marketable product). Secondly, a situated-learning environment
will increase the knowledge of learners in the wide range of disciplines that
are necessary to print a part. For additive manufacturing, it is not sufficient
to have only expert knowledge in a field like 3D modeling; creators need to
gain knowledge in material sciences and IT applications for 3D printing as
well. Finally, the collaboration among experts from different disciplines is
creating an innovative environment that will deliver new applications for this
technology.
19
The driving question in this part is if this approach is sufficient to meet
all requirements for complex additive manufacturing processes. The main
challenge is to collaborate and synchronize all actors in a process, which can
be human beings or machines. A project-based learning environment without
a sensing system will not be able to activate communication between digital
artifacts and human actors. For that reason, literature research on Smart
Learning environments will be conducted in the next section.
2.2 Smart Learning
Introduction
As mentioned in the introduction of this paper, modern technologies like RFID,
GPS, or QR-Code allow researchers to define a context-aware ubiquitous
learning environment, by creating a connection between digital artifacts
and physical-world objects. However, this modern form of learning is not
considered ”ideal technology-enhanced learning” (Hwang, 2014). For that
reason, researchers like Hwang are defining criteria for Smart Learning. A
Smart Learning environment allows students to interact and use digital
resources and additionally provides research guidance, supportive tools, and
recommendations at any time and any place. A Smart Learning environment
can be considered as an intelligent tutoring system, which can interact with
objects in the physical-world and digital resources (Hwang, 2014).
According to Hwang relevant research topics for the development of Smart
Learning system are:
• Intelligent tutoring and adaptive learning systems, context-aware ubiq-
uitous systems: those systems aim to provide students personalized
learning content, based on the learning progress, preferences, defined
learning achievements and the given learning environment (Hwang,
2014).
• Mindtools: software applications that will ”engage students in higher
order and meaningful thinking” (Hwang, 2014). Mindtools will help
20
students to organize obtained knowledge, make connections between
different domains, and solve a specific problem.
Intelligent tutoring and adaptive learning system
The main purpose of an intelligent tutoring and flexible learning system is, to
support the learner to gain expertise based on personal preferences, learning
progress, and cognitive styles (Hwang, 2014).
Hwang defines that a classic intelligent tutoring system consists of four main
components: expert model/knowledge which contains all necessary learning
material, student/learner model which evaluates the current learning status
and performance, instructional/pedagogical model which defines the teaching
content, and required tools and a user interface to interact with students.
Figure 2: Classic Intelligent Tutoring System Source: (Hwang, 2014)
Web-based adaptive learning systems ”are known as adaptive educational hy-
permedia or adaptive hypermedia learning system” (Hwang, 2014). Research
in learning science has come to the result, that hypermedia-based systems can
provide students personalized support by the usage of hyperlinks associated
with the learning content. For every student, a personalized learning path
will be generated. The learning path is associated with the content, which
is necessary to improve the progress of the student (Hwang, 2014). The
21
advantage of this architecture is, that students with prior knowledge will not
be unchallenged, whereas students with less knowledge will receive sufficient
learning content to achieve a learning goal.
In recent approaches, researchers have used technological development in wire-
less communication, sensing-technologies to provide a personalized learning
support system in real-word environments. Hwang constructed a flexible learn-
ing system to allow students to study in a real world scenario, by considering
their learning paths.
Context-aware ubiquitous learning
”Context-aware ubiquitous learning is such an approach that
enables students to learn from the real world with support from
the learning system using mobile, wireless communication and
sensing technologies.” (Hwang, 2014)
A context-aware ubiquitous learning environment can interact with students
and retrieve the current learning status. The learning material is primarily
delivered via smart devices. All interactions and the learning progress of
the participants are tracked, so it is possible to run a further analysis of the
teaching method afterward (Hwang, 2014).
This learning approach can be applied to a 3D printing Use-Case. A maker-
space is defined as a collaborative workshop, which is used to create new
prototypes, discuss ideas, and improve existing products. The workshop
is usually equipped with a variety of different machines. The benefit of
context-aware ubiquitous learning in that scenario is, that Makerspace users
can access personalized knowledge/information at any station. For experts,
the Smart Learning system provides only key facts about a specific machine,
whereas newcomers would receive detailed instructions to get started.
Computer mindtools
Mind-tools are characterized as software applications, which will engage
students in interpreting, analyzing, and organizing knowledge during learning
processes. It is important that Mind-tools shouldn’t be used to only offer
22
instruction for learners. The main goal is, to help learners actively construct
their knowledge. Many tools like database systems, spreadsheets, expert
systems, or simulation tools can be used as Mind-tools if the application
is done properly (Hwang, 2014). Mind-tools have been already used in the
research and education environment. Teachers for instance, already have the
experience to use concept maps in classrooms to help students to organize
learning content. Mind-tools can assist the learner to handle complicated
information, primarily when they face the challenge to obtain knowledge from
the analog and digital world in a complex learning scenario.
Smart Learning framework
The enhancement of context-aware ubiquitous learning in combination with
modern technologies, can be defined as a ”Smart Learning environment”. A
Smart Learning application can adapt to the learner’s needs and provide
feedback, tips, and appropriate tools. The provided content is based on
data analysis of the student (learning behavior, prior knowledge, and the
physical-world context in which the person is situated). An ideal application
should also be able to help students outside of their learning schedule. The
Smart Learning application can be seen as a friendly mentor, which will
help learners to take new opportunities based on their needs and preferences
(Hwang, 2014).
Criteria for a Smart Learning environment according to (Hwang, 2014):
• Context-awareness: a Smart Learning environment can process the
location of a learner by using a sensing system. The system is capable
of knowing the context of the natural world in which the learner is
situated. Additionally, the Smart Learning ”system is able to provide
language support based on the learner’s online and real-world status.”
(Hwang, 2014)
• Instant and adaptive support: A Smart Learning application can
analyze the individual needs of a learner and offer support from different
perspectives (e.g. learning progress, personal situation, learning behav-
ior, or profiles). Additionally, the system detects the physical-world
23
and virtual context in which the learner is situated (Hwang, 2014).
• Adaption of the interface: A Smart Learning system can modify
the UI depending on the requirements of the user. The application
can change the presentation layer, to meet the personal factors of the
student (e.g. the system is providing illustrations if the learner is a
visual learning type) (Hwang, 2014).
Current Smart Learning environments have a lack of features concerning
context-awareness (the Smart Learning setting does not consider the digital
and physical-world states of the users), minimally adaptive (e.g. the emotional
state, intellectual abilities, incentives, and socioeconomic statuses such as
education, income, and employment of the user is not tracked), and mini-
mally personalized; ”pedagogy-oriented guidance is not considered” (Hwang,
2014). For researchers and system developers, Smart Learning environments
represent the essentials components that are needed to build Smart Learning
frameworks.
Figure 3: Smart Learning Framework Modules Source: (Hwang, 2014)
24
According to Hwang the framework consists of the following components
(Hwang, 2014):
• ”A learning status detecting module”: the first module uses sens-
ing technology to determine the physical world status of the learner. By
utilizing state-of-the-art GPS modules, the Smart Learning framework
can retrieve the location of the learner or analyze the learning behavior
by tracking and observing usage data in the learning application. To
get a precise status of the learner, the learning status detecting module
can also sense the environmental context (for example humidity and
temperature) with a connection to smart actuators (Hwang, 2014).
• ”A learning performance evaluation module”: this module is
used to measure the current performance of the learner by running
examinations online or in the analog world. For a physical world test in
an AM environment, the users might be asked to test the durability of
different materials or to use physical objects, to answer the questionnaire
in the online test. Another example could be to locate different objects
on a school campus (e.g. flower-pot with a specific flower type) (Hwang,
2014).
• ”An adaptive learning task module”: the task module can assign
new learning tasks to a learner based on personal factors, learning
objectives, and the overall learning progress. A learning task example
in an additive manufacturing environment could be designed, to require
the learner to study the components of a 3D Printer, check safety tips
from other sources such as manuals, or select feasible materials for a
given purpose. The most important goal of the learning task module is
to engage learners to stay motivated and to give them meaningful and
feasible tasks to reach their own personalized learning goals based on
personal preferences (Hwang, 2014).
• ”An adaptive learning content module”: This module will assess
which information is better suited to achieve the given goal by assessing
learning development, learning performance, individual factors, and
25
the learner’s current physical-world status. For instance, if the learner
is traveling a lot and a learn-type test concludes that the person is a
visual type, the learning content module might recommend and organize
videos as a learning module. Another feature is the ability to adjust
the user interface to the learner’s specific needs. (Hwang, 2014).
• ”A personal learning support module”: this module provides
support if the learner needs assistance to fulfill the given learning
goal. The module may provide tips for learning tasks or materials,
as well to provide input on completed work, depending on the user’s
preferences. Another functionality is to provide Mindtools to increase
learning efficiency and effectiveness. In all given scenarios, this module
must evaluate the ”learning performance, personal factors and physical-
world status of the learner” (Hwang, 2014).
• ”A set of databases for the learning application”: all learner
accounts, learning portfolios, sets of learning assignments, and learning
material are stored in this module. Furthermore, it provides which test
items and test tools are suitable for the given learning scenario. Learning
plans, development, homework, examination results, and experiences
with colleagues and the learning application are all stored in the so-
called ”learning portfolio database” (Hwang, 2014). The learning system
uses this input data, to determine the best learning strategy, based
on individual skills, personal preferences, and overall progress (Hwang,
2014).
• ”An inference engine and a knowledge base”: The main purpose
of this module is to analyze, which combination of learning activities,
approaches, and tools and their possible mix creates the most ”value”
for the learner. The knowledge base contains all the coaching knowledge
of all teachers working within the Smart Learning framework. The
so-called inference engine contains all the rules which are necessary
to make an automated decision within the Smart Learning framework.
For instance, if the analysis of all previous test results shows a lack of
effectiveness, the inference engine can adapt the strategy by using an
26
existing rule-set (Hwang, 2014).
2.3 Workflow-Management-Systems (WfMS)
What is a process?
A definition for the term process can be found in the Oxford Dictionary:
”A series of actions or steps taken in order to achieve a particular
end.” (Oxford University Press, 2019)
Examples for the additive manufacturing process are ”develop a replacement
part”, ”design a new prototype” or simply ”start your first 3D print”. Since
those processes can be executed by various participants (human beings,
machines, software), a process is characterized by having a defined start and
end with different routes between. The specific routes can execute different
functions, which will lead to distinct results. The route itself transfers work
or information, which is defined by the initial process model (Muller J., 2005).
Figure 4: BPMN Example - start your first 3D Print
The process itself has to be initiated by an event and is defined as a logical
sequence of activities. In the example above, the process ”Start your first 3D
Print” can be initiated by a Beginner or an Expert. As a consequence, the
route of the process can be influenced by external data or events, which is
illustrated in the example above (Beginner route vs. Expert route). Further-
more, the input may be initiated from an external system or the resources
(roles) allocated to the processes. The data is interpreted and processed by
27
the WfMS, the result of those actions is the output of an activity (Muller J.,
2005).
What is a workflow?
A business process is technically supported by a workflow. The activities
involved in this process can be supported as a whole or only partly. The
single activities do not necessarily need to be supported by the WfMS, but
also through organizational measures or other software tools which is suitable
for the given task (Muller J., 2005).
Galler and Scheer define a Workflow as a technical refinement of a business
process (Galler and Scheer, 1995). The criterion for the degree of refinement
is automation. The workflow must be usable as input and set of rules to be
used within a Worfklow-Management system (Gadatsch and Gadatsch, 2009).
A workflow is executed consistently by the same or a similar schematic. The
execution itself is influenced by activities, which will trigger the process with
its specific workflows. The workflows contain activities which can be provided
after the process was triggered. After a successful termination of activities or
an abort of an activity, the workflow must always come to a defined state.
The activities are carried out by different roles, to which the necessary tools
(software tools) and information for the execution of the activities have to be
made available (Muller J., 2005).
The international standardization body ”Workflow Management Collation”
specifies four main types for different workflow types (Muller J., 2005):
• The ad hoc workflow supports one-time or strongly varying processes,
which are unstructured or not predictable.
• The collaborative workflow supports processes where many actors have
to reach a common goal. Another term for the collaborative workflow
is Groupware.
• The administrative workflow supports structured routine-processes.
Those processes are most likely not time-critical and connected with
low monetary value.
28
• The production workflow supports highly structured and predefined
processes, which have strategic value and considered as ”time-critical”.
The most common workflow types for a additive manufacturing process are
the ad hoc and collaborative workflow. For instance during the development
of a prototype it is not predictable when a new task will be executed or if the
chain of activities has to be adapted to get a specific end result. In general
there is a routine-process how to design and produce a part with a 3D Printer,
but depending on the desired outcome; it can vary which parameters have to
be adapted at which time point, to successfully finish the process.
In contrast, the collaborative workflow relies on other actors to be involved, to
successfully finish a specific task. For prototyping, additive manufacturing can
be only one single step in a chain of activities to create the desired outcome.
For instance, if the 3D printed part is used as a enclosure for a micro-controller
board which will be mounted on a new machine: The printed circuit board
(PCB) sketch has to be submitted first, before the 3D printed part can be
produced. So the AM process relies on the outcome and requirements from
the PCB board process. The PCB dimensions are used to produce a perfect
fitting box with all mount holes and cutouts for the electronic board and all
requirements for the design/styling for the machine are considered as well.
An example for highly structured production workflows can be found in so
called 3D Printer farms. Machines with the same settings and specification
are set up to produce the same parts parallel. The Czech company ”Prusa
research” has set up a whole production line to produce 3D Printer parts
for their customers. The production workflow has a strategic impact on the
business and is time-critical for the success of the company.
29
Figure 5: Prusa research printer farm, Source: Prusa Research (2018),https://tinyurl.com/yh5opat6
What is workflow management?
Workflow-Management covers all activities, which are needed for Analysis,
Modelling, Simulation, Reorganisation, Execution and Controlling of Work-
flows. The main function of Workflow-Management is to provide the individual
organizational work steps and processes that correspond to a Lifecycle of a
workflow, regardless of whether a tool in the form of a program is used to
support the work steps (work phases) or not (Muller J., 2005).
In many cases a Workflow-Management system is defined as process-oriented
software, since the program has to control reoccurring workflows which follow
a specific schemata. This makes them particularly suitable for processes with a
high degree of repetition, standardization and division of labor. The Workflow-
Management-System can be divided in different software packages, which will
fulfill specific functions and requirements for the given task. The software
packages can be delivered by a single manufacturer, or if necessary from
different software manufacturers which allow interaction trough standardized
interfaces and components. If the components are provided by more than one
manufacturer, it is crucial to establish a flawless communication trough the
interfaces and components (Muller J., 2005).
30
Components of a Workflow-Management System
Modeling component
The modeling component has the main function to provide a visual represen-
tation of the processes. A process has to be modeled in a structure, to be able
to be interpreted and executed by the control component. In the second line,
the modeling component offers capabilities to represent the organizational
attributes (for example roles, departments...). This procedure supports the
process description, since the activities which are modeled in the processes
are executed by actors assigned via roles (e.g. department leader, clerk).
The organisation is usually stored in a organization-database, which can by
accessed by the WfMs. A other possibility is to represent the organization
by using the modeling component. The organization-database represents the
organization-structure of a company and links the employees (abstract =
actors) with the defined roles. The term actor is defined very generalized,
since an actor can be also a simple application or a process automat. It has
to be considered that a actor can hold several roles. Modeling tools like ARIS,
ADONIS or Aeneis offer besides a visual editor to model workflows, enhanced
features to simulate and re-organise business processes (Muller J., 2005).
Control component
The core of each WfMS is the control component or Workflow-Engine. This
component is able to read the process structure and builds a process instance
of the given model. The instance is started, controlled and logged in the
form of a business transaction. The control component offers functions like
scheduling, escalation management, templates, logging, execution of new
cases. Other features include providing the necessary information and tools
(e.g. calculation tools) for actors to be able to process the given process
instance. The started process instances are usually provided for the actor in
a pool, which includes a inbox, activity lists or open tasks. The actor has the
possibility to use a specific Workflow-Client to import all data from the pool
and to process all given process instances (Muller J., 2005).
For the additive manufacturing process features like scheduling can be used
31
to plan a production day. Depending on the size of the object, printing speed
and quality, the production duration may vary significantly.
Example:
• 3DBenchy model (60x31x48mm) @ 0.2mm: 1h 28min
• 3DBenchy model (60x31x48mm) @ 0.1mm: 3h 37min
• Spiral Vase (85.3x85.3x150mm) @ 0.2mm: 17h 42min
Figure 6: 3D Print time comparison, Sources: Wikipedia (2018)https://tinyurl.com/yhymqrk3 and Pinshape (2015) https://tinyurl.com/yeratww4
Monitoring component
The monitoring component has the capability to display two different forms
of information. Firstly, instance-related data is logged and visualized by the
monitoring component. The instance related data can be used to analyse
the runtime behavior of a given case/process instance. This information
allows the actor to check the processing, transport and lay time. Furthermore,
domain-related data is logged by the WfMS, so the process history includes
the whole business transaction with all relevant data for later trace-ability.
With this enriched information, the process owner shall be able to obtain
enhanced control possibilities, by having complete information about the
current processing status of a case. Secondly, the aggregated process data
can be analyzed by the monitoring component. This data-set enables insights
32
if the business process flow is performing well or if any given activities turn
out to be bottlenecks. The process-related data builds the foundation for a
continuous reorganisation and optimization possibilities for a process instance
(Muller J., 2005).
Interface component
The architecture and technology of the interface component can be considered
as the most important component of a WfMS, since it enables communication
with actors outside of the system. For a WfMS the integration of third-
party system is crucial, since a process shall be controlled without the users
knowledge about the internal architecture of the system. To be able to create
such an system, a high integration degree for existing applications is necessary
(Muller J., 2005).
• Data interface: this interface allows the WfMS to retrieve data from
other applications. The data is used to control processes or the enable
actors to process the given data (Muller J., 2005).
• Program interface: this allows programs or functions from other
applications to be addressed in order to be able to call a program or
a function from an application based on a process status (Muller J.,
2005).
• User interface: this corresponds to a workflow client provided by the
WfMS vendor as a default component or implemented by the customer
for better integration into existing solutions (Muller J., 2005).
Simulation component
The simulation component has the function to simulate the flow of the
modeled process, to be able to indicate weaknesses and improvements as
soon as possible. For that purpose it is necessary to input all processing
probabilities and the assumed times (processing, transport and lay time) in
the modeling component for all activities. After this information-set was
entered, the simulation runs and the number to-be executed process instances
has to be specified for a given time span to start the simulation. By using the
visual representation of business processes it is possible to indicate in which
33
branch of the process unwanted down times or bottlenecks are occurring and
in which activities it is necessary to re-organize the process (Muller J., 2005).
It has to be considered, that the simulation is only as reliable as the underlying
model data which can only be determined by the model itself. In real life
scenarios there can be plenty scenarios where differences are occurring between
the model and the flows in the real productive process. For that reason the
simulation component shall be used after the process was implemented to
determine the actual bottlenecks of the modeled solution. In that case the
runtime data from the WfMS is imported in the simulation component, to be
further analyzed. Ideally the solution offers visual representation tools and
recommendations to improve the process (Muller J., 2005).
The above mentioned WfMS components are used in different stages of the
process lifecycle. There is a clear distinction between Modeling-, Runtime-
and Monitoring Phase. In the modeling phase the business process is defined
and the execution of activities is determined in a chronological, rule-based
order. During runtime primarily business processes are executed, which will
be analyzed in the monitoring phase. Software solutions for WfMS are not
compulsory offering those functionalities, it highly depend on the requirements
of the given organization/system (Muller J., 2005).
Difference between workflow & business process
The terms workflow and business process are very close together. The easiest
differentiation can be achieved by defining the point of view. The business
process will be modeled from a corporate view. It represents all core processes
and their assistance processes for the value chain of a company. From a
technical perspective, a workflow supports a business process complete or
only partly trough the processing of information which is gathered trough
automation of the business process. The main focus of business processes
lies on economic factors and documentation, for workflows it is mainly the
technical realisation of the access to the required functionality and domain
data, plus technical support of the workflow (Muller J., 2005).
34
Figure 7: Workflow vs. Business Process Source: (Muller J., 2005)
2.4 Cyber-physical systems (CPS)
Introduction
An additive manufacturing environment can be defined as a cyber-physical
system, since mechanical components like the control board of the printer (e.g.
Arduino Microcontroller) is communicating with IT-systems (e.g. Octoprint)
in realtime over the internet. The following section will evaluate the special
requirements for CPS environments concerning model languages such as
BPMN and execution.
Definition of CPS
”Cyber-physical systems are systems in which information and
software technology are combined with mechanical components,
whereby data transfer and exchange as well as control or control
over an infrastructure such as the Internet takes place in real time.
Essential components are mobile device, tools and machines (such
as roboters), embedded systems and objects linked over a network
(Internet of Things). In Industry 4.0, cyber-physical systems have
a central function.” (Bendel, 2019).
35
Sensors are registering and processing data from the physical world, actors
(e.g. a smart home light bulb) have impact on the physical world. Challenges
for Cyber-physical systems are standardization and integration of components,
verification of systems, reduction of complexity and increasment of security.
Involved disciplines and sciences for CPS are informatic, business informatic,
economics, mechanics, electronic and robotic. For Industry 4.0 cyber-physical
systems have a main role (Bendel, 2019).
Application for CPS systems: CPS systems are mainly used in production,
logistics, mobility, energy, environment and defense. The mentioned domains
can be also named as main areas in Industry 4.0. Examples can be found in
car manufacturing with process control and automation for stationary and
mobile robots (Smart Factory and Smart Production) and control systems
for train, plane and car traffic. A Smart Grid is connecting smaller and larger
energy suppliers coming from different systems. The goal is to reach higher
efficiency and effectiveness for the overall energy supply. Linked environmental
observation and environmental management systems control and manipulate
artifical and natural systems, to prevent human and environmental harm,
caused for instance by earth quakes and flooding. Military drones, which
are part of the UAS (Unmanned Aerial System), which also involves ground
stations to start, land and refuel, are operating remote-controlled or partly-
autonomous are relying on constant input from high-quality sensors. This
drone system can be also a part of a more complex defense system for air
traffic control and missile defense (Bendel, 2019).
Outlook/critique for CPS: the main advantages for CPS, as well for In-
dustry 4.0 are factors like adaptability and changeability, resource efficiency,
improvement of ergonomics and improvement of special forms of security. Dis-
advantages are, that those complex structures are generating plenty internal
and external dependencies. Autonomous systems can make false decisions,
either by following the wrong rule-set or the false interpretation of particular
situations and processes. Mobile robots can harm human being and cause
indicients, which shall be prevented by social robotic. Embedded linked
systems are strongly relying on updated data and correct information, as
36
well from a full-functional power supply. The so called information ethic is
researching the possible failure of cyber-physical systems, for instance hostile
takeover or self-inflicted malfunction in a moral perspective. Machine ethics
is trying to improve decisions by party-autonomous systems from a morale
perspective as well (Bendel, 2019).
Requirements for flexible CPS environments
In domains like electronic sales and production, modeling languages like
BPMN and BPEL have gained significance for describing high-level sequences,
functions, and events. The major application is for describing dynamic
correlations between distributed systems, as well as for executing workflows,
making web service calls, and interacting with humans. The integration
of CPS into smart environments, brings up ”new requirements for process
modelling and execution” (Seiger et al., 2015).
Missing functionality for current state of the art modeling languages for CPS
(Seiger et al., 2015):
• weakly ”typing of process components and data” (Seiger et al., 2015)
• limited set of service types and execution environments
• lack of support of model elements
• strongly updated meta models: workflow modeling languages have
changed over time, implying that the meta model needs to be updated
to address current needs.
Ubiquitous Computing Terminology: in a traditional Desktop-Environment,
one user is assigned to a single device for a particular usage scenario. In
ubiquitous computing the usage is switched to multiple devices and systems,
which are integrated simultaneously and seamless into the daily life, without
the user necessarily knowing about the presence of them. The computer thus
disappears from the perception of the users by its ubiquity, the focus changes
from an explicit to an implicit use of information technology (Pipek, 2014).
Due to the close coupling of information technology and everyday activities,
Ubiquitous Computing is an interdisciplinary field of research including
37
(economic) computer science, sociology and perceptual and social psychology
(Pipek, 2014).
Basis technology: Ubiquitous Computing has not the research focus to
invent new basis technologies. Ubiquitous Computing combines existing
technologies and applies them in both operational and private environments
(Pipek, 2014).
The used basis technologies can be divided into four superclasses (Pipek,
2014):
1. Sensors and actuators: mechanical, electronic and optical sensors
are used to sense everything which is measurable (e.g. a HC-SR04
ultrasonic sensor to measure distances). On the other hand actuators
output signals which can be perceived by the user (e.g. a LED) (Pipek,
2014).
2. Auto-ID systems: those systems are mainly based of RFID or NFC
technology and are used in areas like supply-chain management or inven-
tory management. A RFID/NFC tag allow the automatic identification
of one or more tags equipped with tags at the same time, at high speed
and without visual contact. Furthermore it can be used to identification
of objects and the relative position determination of objects (Pipek,
2014).
3. Positioning systems: the dimension ”location” plays a high role in
ubiqutious computing, since those systems are embedded in real world
objects (e.g. smart screen in a shopping mall). Those technologies to
determine position are GPS, GSM- and WLAN-Triangulation. Trough
exact location racking, local-based services can be provided to the end
user (Pipek, 2014).
4. Wireless networks: Wireless networks are enabling the communica-
tion between the user’s device, plus the communication between the
device and the embedded sensor network. Wireless network technologies
enable ad hoc establishment of complex networks of sensors and actua-
38
tors without the need for cumbersome wiring. They provide the greatest
possible mobility of the end devices and thus also of the users. Estab-
lished wireless technologies are: 802.11 (WLAN), Bluetooth, GPRS,
EDGE, UMTS, and HSDPA (Pipek, 2014).
Application
The main areas in which Ubiquitous Computing is used are logistics, supply-
chain management, Smart-Home and Smart-Office, knowledge management,
security- and incident management, medicine and entertainment (Pipek,
2014).
Challenges
The embedding of information technology in everyday objects and practices en-
ables the design of new interaction modalities that go beyond the possibilities
of established input and output methods.
The best practices in requirements analysis and engineering have to be used,
to consider the daily life reality of every user with methods like observation
and participation, to prevent negative interferences with daily routines and IT
technology. A important acceptance criteria is the weighing between adaptiv-
ity (automatic adaption of interface for user needs) and adaptability (system
adaption by the user). Customizable context awareness and possibilities for
the ad hoc establishment of Ubiquitous Computing environments enable users
”to participate in the design process at the time of use” (Pipek, 2014).
Requirements for modeling ubiquitous processes
”In order to evaluate current workflow languages with respect to their suit-
ability for being used within ubiquitous systems (UbiSys), we will first outline
some special requirements that come along with developing ubiquitous sys-
tems” (Seiger et al., 2015).
• Dynamics: CPS systems and ubiquitous systems are described in
literature to be very dynamic concerning their components, devices and
services. The main challenge is the possible abundance of the listed
components in CPS systems, when it comes to calling a concrete service.
For that reason, it is necessary to implement a strong typing system.
39
A process may call the type, not the concrete service, since during
modeling it may not be clear which final service will be available (Seiger
et al., 2015).
• Heterogeneity: when it comes to CPS systems there are normally
many different services and devices involved, in literature such an
environment is called ”system of systems”. Firstly, to be able to
model workflows in such environment, a consolidated perspective on
those components is necessary. Secondly, it is necessary to support
different types for the heterogeneous services in a CPS, and the ability
to easily extend a given list of services. Finally, connected to the second
requirement it shall be possible to assign a activity to ”a certain handling
entity (resource) on the instance or the type level” (Seiger et al., 2015).
• Complexity: a process within a CPS system can contain a variety
of elements which are related to the process. Those elements can be
characterized as atomic or composite attributes. Since the complexity
within a CPS system can be overwhelming, it is crucial to introduce
structure in form of hierarchies or aggregation of similar elements, to be
able to handle the complexity (Seiger et al., 2015). According to Seiger
et al.: ”A modular meta-model can also leverage exchange-ability and
reusability of process components”.
• Parallelism: in a CPS a specific process occurrence might be executed
parallel or during different time-periods and cycles. It is very com-
mon, that one process has indirectly dependencies with other processes,
without a explicit condition defined in the process. For that reason, in-
teraction and intercommunication has to be possible between processes.
The end result are the implementation of ”loosely-coupled systems and
processes” (Seiger et al., 2015).
• Evolution: this aspect covers the requirement, to be able to flexible
change the process model, if the instance is executed for a long time
period. That means, if a complex process is started and running
for a longer period, it shall be possible to adapt the model with all
40
dependencies, to be able to handle new requirements that are passed
from specific industries (Seiger et al., 2015).
• Distribution: the last requirement covers the ability to execute process
models with a specific workflow engine. The challenge in a CPS envi-
ronment is, that there is most likely no central infrastructure available,
to be able to execute different process instances (Seiger et al., 2015).
For example in an AM environment, the 3D Printers might have micro-
controller boards attached, which can provide only a low-performance
environment for process execution. The literature for CPS states that
it is necessary to develop a distributed approach to execute and handle
resources for processes in CPS environments (Seiger et al., 2015).
2.5 Discussion
As evaluated in the section ”Project-Based Learning”, it is definitely suitable
to enable the competence building for complex processes such as additive
manufacturing. Additive manufacturing focuses on a specific problem which
has to be solved (e.g. produce a replacement part which is no longer avail-
able on the market). The theoretical background of PBL describes ”Active
construction” as a main concept to gain a superficial understanding, which is
necessary to truly be able to perform tasks within complex processes. The
aspect for ”Situated Learning” is implemented by the condition, that 3D
printers are often placed in environments, which have a authentic physical-
world context (e.g. students meet in Maker-Space Workshop to work together
on a robotic arm). Those environments have all perquisites to engage in social
interaction, which can result in deeper knowledge by exchanging ideas and
best practices. Finally, cognitive tools will help students to perform tasks
beyond their abilities, which result in a deeper knowledge and engages the
competence building.
A Smart Learning environment meets in principle the requirements for an
additive manufacturing environment and can be defined as more sophisticated
implementation of a modern PBL scenario. A main challenge in 3D printing
41
is to explain a complex process which is executed in both the digital and
analog world. A smart sensing system is able to interpret the context of the
given task (e.g. 3D Printer is running out of material, provide instruction
to load filament). The user will receive personalized content which will fit
his/her knowledge level. However, the Smart Learning approach is primarily
focused on the needs of the user, the devices which are placed in the learning
environment are only defined as supportive systems.
To be able to fully support the additive manufacturing process, it is neces-
sary to enable communication between all members of the process (people,
machines, software). A 3D print runs through several process steps which
are conducted by different members with a specific task. For that reason,
it is necessary to provide a Workflow-Management-System, which is able
to synchronize all process steps among all participants. When it comes to
the integration between components in both the digital and analog world,
Cyber-physical systems (CPS) are necessary to build interfaces and enable
communication. The process of learning additive manufacturing is carried
out in both worlds, consequently methods and best practices how-to build
CPS are necessary and have to be considered when building such a learning
system.
2.6 Cloud 3D Print IoT platform
The online cloud platform ”Cloud 3D Print” assists its users to perform all
required tasks to successfully print a model. The software manufacturer has
the ambition to make additive manufacturing easier and more accessible, by
breaking down the AM process firstly into three initial steps (Cloud 3D Print,
2021):
• Connect: connect new printers to the cloud platform, for example a
workshop might have different machines which have to be connected to
one hub. The IoT platform is capable to communicate with different
machine types, one depdency is that a printer has to be connected to
the so called ”Cloud 3D Panel”.
42
• Configure: after the 3D Printer is connected, the user can define which
features shall be activated depending on the specific requirements (e.g.
classroom setting vs. production setting).
• Contact: when a 3D Print job is started, it is possible to check the current
process step and performance in real-time with an online interface. This
is crucial when print jobs are started with a long duration and many
machines are running at the same time.
Technical-Dimension
From a technical perspective, there are three main components which build
together a cyber-physical system for additive manufacturing in this IoT
platform:
1. Cloud 3D Print Web-platform: the first component can be defined
as the ”3D printing management software”. The software provides
the main functionality, which is necessary to perform a 3D Print Job.
Firstly, it allows the user to convert a 3D model into a file which
can be interpreted by the 3D Printer (G-Code). This ”Online Slicing”
service shall simplify this process for beginners. Secondly, it introduces
monitoring and control capabilities, which allow users to abort jobs or
to simply have a look at the progress of a specific job. Finally, it allows
users to introduce a ”Project Management” workflow. This feature
is relevant, if multiple users work together on projects, which have
dependencies with the current available machines (e.g. in a maker space,
some machines might be reserved for workshops).
2. Cloud 3D Panel: this component is basically a Raspberry Pi with a
screen, which acts as a middleware between the 3D Printer components
and the IoT Web-Platform. Since printers might run on different
firmware’s, this middleware component needs to be able to support
multiple connection types. To be able to remotely control a 3D Printer,
the commands have to be directly performed by this component.
43
Figure 8: Cloud 3D Print Panel, Source: Cloud 3D Print (2020),https://tinyurl.com/yeqdklbb
3. 3D Printer: the final component is the 3D Printer itself, which can be
plugged-in with USB to the Cloud 3D Print Panel.
Onboarding-Dimension
After reviewing the content of this IoT service, it is unclear in which degree
On-boarding is implemented for new users. The ”Online Slicing” simplifies
the process how-to convert models into G-Code, however the starting point
for additive manufacturing is much earlier.
Evaluation Cloud 3D Print IoT platform
This IoT platform integrates many jobs revolving additive manufacturing into
one platform. It is more suitable for a production environment, which involves
experienced users with a specific goal or process. Furthermore, it does not
actively engage users to increase their knowledge of additive manufacturing.
For that reason, it is necessary to define explicit requirements for a smart
learning application which helps users ”earlier” in the process, to start with
engaging with a complex topic like 3D printing.
Missing Features:
• On-boarding Features: the Cloud 3D Print IoT platform focuses to
simplify the process of how to setup a 3D printer and how-to start as
easily as possible with a new 3D Print Job. The missing part, in this
44
case, is the user itself. There is no process implemented to guide the
user towards the desired activities or tasks. In mobile apps, the on-
boarding process can be used to determine the skill level and to set up
an environment suitable for the user based on his/her needs. A possible
scenario could be that experienced users would get immediate access to
advanced features, in contrast, a beginner would first be introduced to
the topic and guided to perform a simple task.
• Smart Learning Module: as already discussed in chapter 2.2. Smart
learning, a learning application for additive manufacturing, would need
modules to evaluate the skill level of the user constantly, not only in the
on-boarding process. A possible scenario could be that an inexperienced
user will get better after a while and would have the desire to unlock
more advanced features to perform more complex tasks. This learning
module is missing in the Cloud 3D Print IoT platform, the content and
user interface are not adapted based on the needs of the user.
• Workflow Management System: the Cloud 3D Panel integrates a 3D
printer with the IoT platform to be able to remotely run tasks and
monitor print jobs. This only involves the 3D printer, but not the
human actor who performs certain activities. For a smart learning
application, it is necessary to track the status of the user as well. The
vision for a well-developed smart learning system would be to assist
the user in both worlds based on the current workflow step (e.g., the
printer has finished a job: (1) show the user which tools are suitable to
use with a LED indicator on the toolhandle and (2) reset the printer
status in IoT hub to accept new jobs).
The next chapter will introduce a specification for a 3D Print Smart Learning
application, which will include the missing features in the presented Cloud
3D Print IoT platform.
45
3 Specification for 3D Print Smart Learning
Application
Introduction
The following specification will document the requirements for a project-
based learning scenario, which is carried out with the help of a Workflow
Management System (WfMS), to support complex processes such as 3D
printing.
User Stories
• A user without prior knowledge in additive manufacturing, must be
able to print a part which is provided in a sample library to be able to
start a first print.
• A user without prior knowledge in additive manufacturing, must be
assisted visually within an application in all necessary steps to produce
a 3D printed part.
• A user without prior knowledge in additive manufacturing, shall receive
context information about 3D printing to gain new knowledge in this
domain.
• A experienced user with prior knowledge in additive manufacturing,
shall be able to carry out own projects by uploading files and adapting
settings.
• A user must get feedback during a printing session, if there is a mal-
function in the system.
• A user shall get notified if a 3D print has finished or if further steps
have to be carried out to continue the print.
46
3D-Print App Use-Case Diagram
The following UML Use Case Diagram will illustrate on a high-level the main
Use Case for a ”Smart Learning 3D Print App”.
Figure 9: 3D Print App Use Case Diagram
47
Use-Case 1: start a new 3D print The first Use-Case between the user
and the 3D Print Smart Learning Application is to provide a on-boarding
process. In Smart Learning applications, the system will gather information
from the user through questionnaires or a short skill evaluation, to provide
suitable for a learning profile. The high level process consists of three steps:
firstly how-to start a new 3D Print Job, secondly how-to finish a new 3D
Print Job, and thirdly how-to post-process the printed part after finishing
the job.
The included Use-Case ”how-to start a new job” includes a on-boarding
process to gather insight, which knowledge level the user has. Based on the
result of this on-boarding process, different options are available for the user.
The user has to be assisted what to-do after the 3D printer has finished the
job. To remove a part, the user either has to use a specific tool (for instance a
spatula) or to remove a magnetic bed which is attached to the print bed. This
process step illustrates that the Smart Learning Application needs to store
specific machine information to provide the user with the correct instructions
based on the machine type.
After the 3D printed part is removed, the user has to clip off the support
material in most cases, since some structures need support bridges to build up
a model. The necessary tools shall be identified by a built-in RFID chip. This
enables the user to choose the right tools to get a good result for the final part.
In Maker-Spaces it is not possible to provide 24/7 support from professional
staff. By a smart combination of artefacts of the digital world (e.g., tutorial
video how-to post-process a part) and the identification of physical-world
objects (for example, sanding tools), the user is able to perform a task beyond
his/her abilities.
Use-Case 2: reserve a 3D Printer This Use-Case will enable the user to
reserve a machine for the desired job. Based on the settings, the 3D print
time can vary significantly. As a consequence, machines might be running
constantly in an additive manufacturing environment. The user shall get
feedback, if a printer is available. For larger maker spaces, it is necessary to
48
show the user, which 3D printer is reserved for him/her.
Use-Case 3: start a new 3D print In the next Use-Case, the user shall
be able to start a new 3D print. Based on the skill level evaluation, the user
can print a sample part or upload his/her own files. The sample library is for
users, which have little or no experience at all in 3D printing. All settings
are tweaked by professionals for the sample prints, which will give newbies a
successful first experience. If the user has more experience in this domain,
he/she shall be able to upload own files. In this case, all necessary settings
have to be available for the user. Furthermore, the user can upload a G-code
file or to use the internal slicer on a terminal, to adjust settings like layer
height, speed, shell, top or bottom thickness, and so on.
Use-Case 4: get status about current job After a print has started, the
user has to receive information about the current status. For example, if the
print time duration is 30 minutes, the user might perform other tasks while
the job is finished. During a print, the 3D Print Smart Learning Application
shall provide context information about the current step. To gain knowledge
about a complex process, it is necessary to break it down in smaller steps.
The app shall explain the user what is happening in which stage during the
3D print.
Example:
1. Brim is printed to give the part adhesion for the build structure.
2. First layer is printed (crucial step for the rest of the structure).
3. Shells are printed (number of shells affect durability).
4. Infill is build up (higher percentage of infill gives part more strength).
5. Top layer is printed (surface finishing possible, for example heated
nozzle ”scratches” top layer).
Use-Case 5: finish 3D Print Job When a print is finished, the user needs
to get a push notification to the Smart Learning App. The printer itself
should also show on the LCD screen, that a job has finished. If the user
49
confirms that the part has been removed, the printer can be released to start
new jobs for other users.
System-Context
Figure 10: 3D Print App System Context
Functional versus Non-Functional Requirements
In software development, functional requirements define the basic needs as
customer demands for the system which is developed. If the system is well
documented and an experienced requirements engineer elicitates all functional
requirements, the end product will likely meet the basic functionality the
customer asks for (QRA Team, 2020).
A well-defined requirements document is not enough to deliver high-quality
software. The second criterium is scoping in software projects. Regarding
system attributes like usability and performance, there can be a lack of
definition in the specification. For instance, an insufficient defined non-
functional requirement for performance may lead to dissatisfaction and bad
50
user experience. In contrast, an excessively defined non-functional requirement
for performance will significantly increase the costs for implementation.
What is a functional requirement?
”Functional requirements define the basic system behaviour. Es-
sentially, they are what the system does or must not do, and
can be thought of in terms of how the system responds to inputs.
Functional requirements usually define if/then behaviours and
include calculations, data input, and business processes.” (QRA
Team, 2020)
Figure 11: Functional Requirements Scope
What is a non-functional requirement?
”While functional requirements define what the system does or
must not do, non-functional requirements specify how the system
should do it. Non-functional requirements do not affect the ba-
sic functionality of the system (hence the name, non-functional
requirements). Even if the non-functional requirements are not
met, the system will still perform its basic purpose.” (QRA Team,
2020)
Functional requirements for 3D Print Assistant
system = 3D Print Smart Learning App
Req 1: The system must provide an on-boarding process to assist a new user
to start a 3D print.
• The system must be able to give the user an overview about the 3D
printing process.
• The system must be able to detect if the user needs assistance during
the execution of a task.
51
Req 2: The system must be able to store the current workflow step of the
user.
• The system must be able to track the current process step of the user
(e.g., the user has chosen to upload the own file).
• The system must be able to retrieve the current workflow status of the
available machines (e.g., 3D Printer Ultimaker X is busy printing).
• The system must be able to set workflow steps in the Workflow-
Management System (e.g., the user has removed the part; set the
3D printer status to ”available”).
Req 3: The system must be able to provide domain knowledge based on the
skill level of the user.
• Based on modern Smart Learning concepts, the system must be able to
track the current skill level of the user.
• The system must be able to provide learning content based on the
personal needs of the user (e.g., visual learners will preferably be assisted
by Video Tutorials).
• The system must be able to give the learner tasks to increase the
progress in learning a complex domain like 3D printing.
• The system must provide a knowledge base and support system to
enable users to perform tasks beyond their knowledge level.
Req 4: The system must be able to organize a reservation system for 3D
printers.
• The system must be able to integrate new machines into the reservation
system, based on different firmware types and technologies.
• The system must be able to give the user feedback, if a machine is
available or not (visual in the app and on the machine itself).
• The system must be able to aid the user to find the machine (beeping
sound when a printer needs to be located).
52
Req 5: The system must be able to provide sample G-code files for users.
• The system must be able to provide a sample library, where the user
can choose from.
• The system must be able to accept new G-code files from technicians
which maintain the 3D printers.
Req 6: The system must be able to accept G-code files from experienced
users.
Req 7: The system must be able to slice STL files which are uploaded by the
user.
• The system must provide an interface to tweak settings like layer height,
print speed, temperature, and shell amount.
Non-Functional Requirements for 3D Print Assistant
To determine which non-functional requirements are relevant for the 3D
Printing App, it is feasible to use the ISO 9126-1 Quality Model (Fleming,
2020).
NonF-Req 1: Functionality - Interoperability
• Definition from ISO 9126-1: ”A given software component or system
does not typically function in isolation. This subcharacteristic concerns
the ability of a software component to interact with other components
or systems” (Fleming, 2020).
• Definition for 3D Print Assistant: The 3D Print Assistant must be able
to interact with other system components, such as a knowledgebase
system. Every component in the 3D Print Assistant needs to provide
a well-defined interface to send and retrieve commands from other
components.
53
NonF-Req 2: Functionality - Security
• Definition from ISO 9126-1: ”This subcharacteristic relates to unautho-
rized access to software functions” (Fleming, 2020).
• Definition for 3D Print Assistant: Every component and interface
in the 3D Print Assistant has to be protected with authentication
and authorization methods. Authentication in this context means
identification with a login form, certification or HTTP authentication.
Authorization control defines which actions are possible for a given user
within the 3D Print Assistant App.
NonF-Req 3: Reliability - Fault tolerance
• Definition from ISO 9126-1: ”The ability of software to withstand (and
recover) from component, or environmental, failure” (Fleming, 2020).
• Definition for 3D Print Assistant: In an additive manufacturing environ-
ment, many different machines, software components, and human actors
will interact with each other. If a component within the system will fail,
other components shall not be affected. For example, if a printer has a
malfunction, there shall not be a malfunction in the 3D Print Assistant
App.
NonF-Req 4: Reliability - Recoverability
• Definition from ISO 9126-1: ”Ability to bring back a failed system to
full operation, including data and network connections”(Fleming, 2020).
• Definition for 3D Print Assistant: If a component like a 3D printer has
a malfunction and maintenance is necessary, the connection shall be
reset. It shall be possible to integrate the recovered machine again in
the 3D Print Assistant App.
NonF-Req 5: Usability - Understandability
• Definition from ISO 9126-1: ”Determines the ease of which the systems
functions can be understood, relates to user mental models in Human
Computer Interaction methods”(Fleming, 2020).
54
• Definition for 3D Print Assistant: The system shall provide a user
interface, which is designed based on modern UX/UI design principles,
such as on-boarding screens, In-App help screens. The goal is to achieve
a self-explanatory product.
NonF-Req 6: Usability - Learnability
• Definition from ISO 9126-1: ”Learning effort for different users, i.e.
novice, expert, casual etc”(Fleming, 2020).
• Definition for 3D Print Assistant: The learning effort shall be held
to a minimum, based on the expertise of the user. For instance, an
experienced additive manufacturing user shall find all menu items and
terms which are used in other 3D printing applications, such as Cura
to be able to easily adapt to the new 3D Print Assistant App.
NonF-Req 7: Usability - Operability
• Definition from ISO 9126-1: ”Ability of the software to be easily operated
by a given user in a given environment”(Fleming, 2020).
• Definition for 3D Print Assistant: The system shall be operated on
various end devices, such as Android/iOS, smartphones, tablets, and
PCs. If the user enters the additive manufacturing environment (e.g.
maker-space), it shall be possible to download the necessary software
components by using QR-Codes or preinstalled ready-to-go devices.
NonF-Req 8: Maintainability - Analyzability
• Definition from ISO 9126-1: ”Characterizes the ability to identify the
root cause of a failure within the software”(Fleming, 2020).
• Definition for 3D Print Assistant: Since the AM process involves various
machines, human actors, and software components, it is crucial to
identify the source of a malfunction if something goes wrong. The system
shall provide a logging system with unique names for all components,
to be able to quickly identify root cause of a failure. The system shall
log errors and malfunctions in a human-readable way.
55
NonF-Req 9: Maintainability - Changeability
• Definition from ISO 9126-1: ”Characterizes the amount of effort to
change a system”(Fleming, 2020).
• Definition for 3D Print Assistant: Since 3D printer manufacturers are
developing different software eco-systems, the system shall be easily
changeable to meet new requirements. For instance, if the firmware of
a 3D printer is changed and new functions are added, the system shall
be able to integrate new functions into the existing environment with
minimum effort.
NonF-Req 10: Portability - Adaptability
• Definition from ISO 9126-1: ”Characterizes the ability of the system
to change to new specifications or operating environments”(Fleming,
2020).
• Definition for 3D Print Assistant: As mentioned in NonF-Req 9 ”Main-
tainability - Changeability” 3D Printer manufacturers will come up
with various standards and software components. The system shall be
easily adaptable to integrate new machines and software components in
the environment.
NonF-Req 11: Portability - Installability
• Definition from ISO 9126-1: ”Characterizes the effort required to install
the software” (Fleming, 2020).
• Definition for 3D Print Assistant: The system shall be easily installable
on the users end device by using technologies such as App-Stores. The
goal is to minimize the effort to run the learning application (e.g., a
web application is developed - only registration is necessary, no complex
installation procedure is required).
56
NonF-Req 12: Portability - Replaceability
• Definition from ISO 9126-1: ”Characterizes the plug and play aspect of
software components, that is how easy is it to exchange a given software
component within a specified environment” (Fleming, 2020).
• Definition for 3D Print Assistant: The system shall be able to add
new machines to an adapter system. If the new 3D printer is using an
already known firmware (e.g., Marlin), the system shall be able to add
the new machine to the 3D Print Assistant.
4 Implementation
4.1 3D Print Assistant - Learning Portal
To simulate a learning portal for 3D printing, a prototype was implemented
by using the vector-based user experience design tool ”Adobe XD”. Adobe
XD allows users to easily create user interface prototypes including interactive
workflows. The restrictions for the prototype are not ”real” interfaces to other
applications or machines. The prototype can be started in a Web-Browser on
a PC, smartphone, or tablet.
The app has the main goal to introduce beginners to an additive manufacturing
scenario, by providing a on-boarding process with a specific workflow to carry
out a 3D printing project. The first implemented flow is an onboarding
process, which introduces the main functions to the user. It is also possible
to configure a learning profile during the onboarding process, followed by the
ability to create a user profile.
57
Figure 12: 3D-Print Assistant On-boarding
The learning profile screen has two goals: firstly, to evaluate the skill level of
the users of the app. In the prototype, this is simply realized by manually
choosing the level of expertise of the user. The big picture is a continuous
evaluation module, which runs questionnaires to determine the knowledge
level. Secondly, the user has the option to choose the areas of interest to
further customize the available content in the app.
Figure 13: 3D-Print Assistant Learning Profile
58
After finishing the onboarding/registration process, the user is able to access
the core functions.
1. Learning: allows the user to access learning material to be able to
gain first domain knowledge for 3D-Printing.
2. Develop: allows the user to choose a model from a pre-defined library.
3. Implement: allows the user to start a 3D Print Job with a specific
printer, based on the selected model & technology.
Figure 14: 3D-Print Assistant Core Functions
The learning module provides learning material in the form of text, video,
or audio based on the preferences of the learner. The choices in the learning
profile shall be reflected in the available content (not implemented in proto-
type). The main goal of this module is to give the user the necessary input,
before a 3D Print Job is started.
59
Figure 15: 3D-Print Learning Module
Example: Videos for beginners to get introduced to the basics for 3D printing:
Figure 16: 3D-Print Learning Module Content
60
The ”Development Module” provides the user a predefined library with
”ready-to-go” models to start a first project. In this early prototype, it is
only possible to start 3D Print Jobs for models with the prepared G-Code.
The function ”own design” is greyed out, but shall signalize the user that a
future version will include this feature.
Figure 17: 3D-Print Development Module
The ”Implementation Module” lists all available printers, which indicates the
user which technology/printer can be used to print a model. This module
implements a basic workflow for all necessary steps, which are needed to finish
a 3D Print Job. Firstly, it assists the user with all prior steps (e.g., check
if the build surface is empty). Secondly, it shows the user which progress
the current print job has (e.g. printer cooling down). Finally, it gives the
user instructions, how-to remove the model from the build surface and tips
to remove the support material if necessary.
61
Figure 18: 3D-Print Implementation Module 1
In this module, a basic workflow for 3D printing is introduced to the user.
The workflow gives the user information about the task which has to be
conducted in a specific point of time. For example, the user has to check if
the build plate is empty before a new print can be started.
Figure 19: 3D-Print Implementation Module 2
62
After a print is started, the app gives the user information about the current
state of the print job. This is essential in additive manufacturing, since the
printing time can vary depending on the size and complexity of the model.
The user has also the option to abort the job any time, since print jobs might
fail sometimes (e.g., bad adhesion of the dirty build plate).
Figure 20: 3D-Print Implementation Module 3
After the print is finished, the user gets information about postprocessing
tasks (like removing the support material from the model). In this step, it
is necessary to reset the 3D-Printer to accept new jobs. In the workflow, it
is necessary to adapt the content dynamically, depending on the project or
model which is printed. For example, a project might include multiple parts
and further instructions how-to assemble a model.
63
Figure 21: 3D-Print Implementation Module 4
4.2 Octoprint Server - 3D Print Server with Presets
To be able to remotely control a 3D printer, it is necessary to use a 3D printer
control software like OctoPrint. The software is installed on a Raspberry Pi
single-board computer, which is connected via USB to the printer.
The following functions are provided by OctoPrint, to be used in combination
with the 3D Print Learning App:
1. Upload preset models (G-Code) for users of the learning app.
2. Start manually a new job, when the user has reached a specific step in
the workflow.
3. Stop the 3D-Printer, when the user taps on the emergency-button in
the app.
64
4. Observe the 3D-Print process (percentage of completion, estimated time
to finish).
5. Observe the 3D-Print process with a webcam (visually indication when
the print-job is done).
Figure 22: OctoPrint Software
5 Empirical Study - The Think Aloud Method
5.1 Goal
The following empirical study shall evaluate to which degree a Smart Learn-
ing prototype will help study participants to carry out tasks beyond their
knowledge and abilities. The used method is ”The Think Aloud Method”
to gather insights about thought processes, while the participants are using
the Smart Learning App. The results are used to gather new or missing
requirements for the ”3D Print Assistant App”.
65
5.2 Introduction
To gather insights into complex processes, like designing a new efficient engine
or architectural design processes, one possibility is to let people think aloud
of them. The so-called ”Think Aloud Method” aims to retrieve the thought
processes when performing those complex tasks. For instance, a product
designer is able to create a new sketch for a new product, however the thought
process will remain unclear after the final product (=sketch) is done. The
method in this situation is to ask those professionals to work on a specific
task and to instruct them to think aloud. The session is recorded and used
to analyse the process (Someren et al., 1994).
5.3 Implementation of the study
The ”Think Aloud Method” for the empirical study was based on the described
scenario published by e-teaching.org (Frommann, 2005).
1. Introduction: the first part has the goal, to prepare the study partici-
pants before engaging with the 3D Print Smart Learning App. After
a brief introduction, the topic and the aim of the app was presented
to the participant. In this phase, it is crucial to explain the role of the
participant in this study. The product (=App) is in the focus, not the
participant. After that, a short demo session with another demo app
was conducted, to train the ”Think Aloud Method”. For most of the
participants, it was a little bit strange to think aloud for the first time.
Finally, the learning goals were presented.
Learning goals for testers: (1) Use the prototype to gain knowledge
in a new/unknown field of expertise. (2) Get a basic knowledge for the
topic “3D-Printing”. (3) Independently create a model with the 3D
Printer.
2. Observation: in the next step, the recording device was activated and
the participants started to use the app. In this phase it is crucial to
66
capture peculiarities and to assist the participants if needed.
3. Interview: the interview is divided in different stages. First the
interviewer asks the participants to freely talk about their experience.
Secondly, the participant explain what her/she thinks are the strengths
of the product or app. Finally, every participant is able to share
improvements or feature requests for the app.
4. Analysis: in the last stage all transcripts are written, based on the
audio capture and the interview protocol.
5.4 Participants
The following table includes all study participants, which have tested the 3D
Print Smart Learning App.
Participant # 1 2Gender Male MaleAge 31 31Job Technical Purchaser Senior Clerk (Automotive)Education University Degree Commercial CollegePrior Knowledge 3D-Printing was part of studies. Basic KnowledgeHobbies none Gaming, Motorcycling, CyclingParticipant # 3 4Gender Male FemaleAge 31 32Job Compliance Officer Qualifed NurseEducation University Degree Nurse CollegePrior Knowledge Beginner, has observed 3D-Printing. noneHobbies TV, Podcasts, Travelling DIY, Netflix, meet friendsParticipant # 5 6Gender Female FemaleAge 34 34Job Pharmaceutical Empyloyee ClerkEducation Secondary School Vocational School for CommercePrior Knowledge none noneHobbies Skiing, Standup-Paddeling, Hiking DIY, Pets, Music
67
5.5 Analysis of transcripts
The transcripts for all ”Think Aloud Sessions” are uploaded to Zenodo and can
be accessed under the following URL https://zenodo.org/record/4434651
(Eggenreiter, 2021).
The transcripts of all ”Think Aloud Sessions” give insights about the thought
process of the participants. The following list contains on a high level the
most interesting findings based on the sessions.
Swipe Gestures
It is safe to say that users of smartphones have high expectations regarding
easy and efficient navigation. In the prototype, swipe gestures were only
indicated and not finally implemented. This led to some confusion and
questions concerning the navigation of the app. One finding is that users
have a certain amount of understanding how modern navigation has to be
implemented. If something is not working according to best practices, users
feel that the navigation is not ”naturally” or ”fluently”.
Figure 23: Findings TOL sessions
Input from Think Aloud-sessions translated (Eggenreiter, 2021):
• ”I see four dots and would like to scroll to the right. The four dots
indicate that it should be possible to scroll to the right, currently this
is not working. It would be great to be able to swipe to the right and
left.”
• ”I have noticed that below there are three dots, I suspect that this
means there are multiple texts available. I try to swipe. This is not
working.”
68
Back-Button Feedback & Performance
Mobile apps are implemented to be executed on a specified environment (e.g.,
Android vs iOS). With that in mind, the user expects a certain performance
and response time, depending on the device the app is executed. Since the
prototype is executed within a web browser and not installed natively, users
mention problems while executing certain tasks. A modern UI will usually
give the user instant feedback without any lag.
Input from Think Aloud-sessions translated (Eggenreiter, 2021):
• ”The Back-Button has sometimes malfunction, partially you have to
press twice.”
• ”I try to navigate back. I am not able to get back.”
Missing Features or indication of planned features
The prototype indicates some functions (e.g. Video-Player), since it is im-
plemented as show-case and not fully functional. Usually well-programmed
apps do not contain ”unfinished” or ”Sneak-Peak” Features for the user. This
led to some confusion for the users, since most of the participants have been
curious to test all functions comprehensively.
Input from Think Aloud-sessions translated (Eggenreiter, 2021):
• ”Ok, some things are not available...”
• ”I try to print the plectrum, I am not able to choose the color.”
• ”The user interface gives me the option to choose the color I want.
Unfortunately, I am not able to change that.”
• ”If I try to press the ”Plus-Button” nothing happens, unfortunately
this is not linked.”
UI-Feedback
Regarding aesthetics, users have certain preferences based on the applications
they are used to work with. The main focus for the prototype was to keep
the User-Interface as simple and clean as possible, since beginners might
be overwhelmed with new content for a complex topic such as 3D printing.
69
Focusing on the very basic workflow was a secondary goal while implementing
this prototype.
Input from Think Aloud-sessions translated (Eggenreiter, 2021):
• ”Nice and colorful. I like that..
• ”I liked already the first pages. It is very simple to use.”
• ”I have not expected that this was so easy.”
• ”I think it’s clear, it’s easy to read.”
Learning content
Modern knowledge bases (KBs) contain various forms of content (text, audio,
and video) to be able to share knowledge in an efficient and easy way. The
main motivation for a learning application is to offer learners the required
learning content to reach a specific learning goal based on their preferences.
The prototype gives the user the ability to choose from three different content
types. The study participants gave positive feedback for the variety of content.
However, the finding on this point is that users expect to have a combination
of different forms in one document (for example, a website which has a short
abstract, a video summary, and a detailed text).
Input from TOL-sessions translated (Eggenreiter, 2021):
• ”I choose videos, since I am a visual type.”
• ”OK here are photos included, this is exciting for me.”
• ”The question arises if it would make sense to combine text and video.”
5.6 Results
Following section gives an overview about the strengths, weaknesses, and
improvements, which have been raised by the study participants. A complete
list can be found in the transcripts. The majority of the points have been
70
mentioned during the interview, which was held after the users finished the
Think Aloud session.
Strengths
• UX/UI Design: all participants mentioned that they liked the overall
design of the app (colors, icons, images).
• Multiple learning types/material: participants mentioned that they
liked to have different learning materials in different forms (Text, Audio,
Video). This reflects as well the requirements for different learning
types.
• Social Media Login: one participant mentioned that it is very appre-
ciated in modern apps to provide social media logins (like Google,
Facebook). Users have the tendency to have a quick access to content,
if possible without having an extensive registration process.
• Easy Workflow: participants mentioned that the workflow to process
a 3D-printed part was very easy. Beginners were able to move quickly
forward in the process for the next logical step.
• Three Steps (Learn, Develop, Implement): most of the users were able
to quickly understand the three different modules in the app.
• On-Boarding Process: one participant mentioned that the on-boarding
process was helpful to get the first insight into the app.
Weaknesses
• UX/UI Navigation: many users complained that the overall navigation
was not clear at all times. The most complaint was the implementation
of the ”Back-Button” to be able to get back to the main menu.
• Missing Swipe Gestures: participants tried to use swipe gestures, since
some UI elements suggested to do so. However, this feature is not
implemented in the app yet.
• Performance / Scrolling Behavior: all users had problems with perfor-
71
mance and scrolling behavior. Since the prototype is not run natively on
a device, the performance of the Adobe XD prototype was not meeting
the performance expectations of modern apps.
• Wording: some users had problems with the naming of the different
modules. It was not clear why the modules ”Develop & Implement” are
divided and what the logic behind this separation is.
• Missing Help Menu: some users complained that there is no In-App
help menu. Participants mentioned that every app needs a Help Menu.
• Missing Features: since this is a prototype, nearly all participants where
confused when the features were greyed out or not working. Some
argued that it would be better to remove missing/greyed out features.
Improvements
• Tutorial Video: half of the users mentioned that it would be preferable
to have a short Tutorial Video in the on-boarding process, to be able to
quickly get introduced to all features.
• Glossary / Abbreviation explanation: since additive manufacturing
involves many abbreviations and specific terminology, users mentioned
that it would be a great feature to highlight abbreviations and technical
terminology all over the app.
• Perk System: one participant described the need to keep people moti-
vated to use the app and to engage in further projects. Another aspect
is to hide certain content for beginners and to motivate users to unlock
more advanced content after performing specific tasks.
• Rich-Content Systems (Audio, Video and Text combined): many users
describe that they are used to consume learning material which includes
a combination of different forms of content. That means that a sep-
aration into categories is not necessary. Users will pick the preferred
content based on their needs.
• Upload with USB-Stick: one participant described that it would be a
72
great feature to be able to prepare 3D model data on a USB flash drive.
The Smart Learning scenario needs an interface to upload this data
directly to the app (e.g., USB hub with a terminal nearby the printer).
• ”Find Maker Spaces nearby”: another user mentioned that a further
improvement would be to include a search function for Maker Spaces.
Since 3D printers can run for a long time, the user should have the
ability to locate Maker Spaces nearby to the available printers (in case
the preferred Maker Space has no capacity left).
6 Conclusion
After conducting a comprehensive research about Project-Based Learning, it
is safe to say that PBL is a promising learning approach to be implemented for
complex processes like additive manufacturing. Firstly, the approach has the
intention to offer a learning environment, which will enable the competence
building process actively. This leads to an increase of implicit knowledge
of learners, which is necessary to fully understand and perform complex
activities revolving additive manufacturing. Secondly, a PBL environment
usually meets the requirements which are necessary to conduct a project for
a 3D printing scenario. This means that a project will be established with a
given goal, learning material is provided, and teachers which have knowledge
in the given domain, will support the learners to perform tasks beyond their
current abilities. Finally, the end result of a PBL project is a concrete product
(external representation of knowledge). This approach relates to projects
within the so-called Maker/DIY (Do it yourself) scene. Makers with different
interests all over the world are sharing their knowledge in AM for a multitude
of possible applications to solve a given problem.
Since PBL is a learning methodology, this approach needs to be supported by
modern WfMS (Workflow-Management-Systems) and CPS (Cyber-physical
systems). The main requirement for a PBL environment in additive man-
ufacturing is to implement interfaces between artifacts of the digital world
73
and actors/interfaces within the physical world. To be able to implement a
workflow for 3D printing, a WfMS has the main function to coordinate actors
in a given scenario. Actors in this case are human beings (learner), machines
(3D Printer), and software (3D slicing application). There are limitations
regarding modern WfMS, since it is a challenge to map a dynamic environment
such as 3D printing (weakly typing, limited set of services, missing model
elements).
Regarding CPS (Cyber-physical systems), a large number of requirements
can be translated into a 3D printing environment. The motivation behind
this approach is to fuse the digital and physical worlds into workflows, which
involve different actors with various duties in both worlds. Human actors in
this scenario shall not notice a transition, it shall be recognized as a logical
and natural workflow.
Finally, after implementing a prototype for an AM scenario and conducting an
empirical study, the following points summarize the most interesting points:
• Complex processes which are conducted in the physical & digital world,
need to have entry and exit workflows to refocus the user on the relevant
environment in a specific point of time. Example: User needs to push
a button on the 3D-Printer, the app needs to delegate away from the
app to the machine. Challenge: The 3D-Printer or analog environment
needs to direct the user back to the app when needed (e.g., Workflow
Indicator Screen next to the printer).
• Learning content needs to be adaptive, no need to focus only on
video/audio or text. Modern apps provide a combination of all types of
content. People nowadays have high standards and sensitivity for best
practices in App Design / workflows.
• Complex processes cannot be taught in a short period, strategies to
motivate learners to continuously improve skills are crucial. Example:
Perk system to motivate the user to start a new project or learn a new
skill is necessary.
74
• Learning-by-Doing approaches for complex processes which have to
be conducted in the analog world, still need some form of support &
assistance (e.g. maker-space employees to help newbies).
• Workflow-Management Systems are essential to delegate all actors in
learning complex processes. Example: a workflow which explains the
user how-to start a print or a service which sets 3D-Printers in a “failure”
mode if something goes wrong.
With the increasing popularity of 3D printers for hobbyists and in the profes-
sional field (e.g., 3D printed metal parts for the Airbus A350 XWB), it will be
both a challenge and an opportunity for stakeholders from different domains
to give people an understanding of this interesting technology (Jackson, 2019).
Since a rising number of educational institutions have already adopted 3D
printers in class rooms, it is exciting to observe, which implications this
development will have on students and learners to be innovative and to come
up with new ideas to improve existing products or to solve new problems
with inventive ideas (3D-grenzenlos.de, 2021).
6.1 Limitations of the study / master thesis
The master thesis is covering a cross-section of two main research areas:
smart learning systems and workflow management systems. A limitation is a
lack of research papers for this specific approach and domain. Additionally,
the conducted research has not found concrete systems, which focus on the
learning process for complex workflows, which are carried out both in the
analog and digital world. Since there is no reference application available, the
best practices and methods from the literature had to be transferred to an
additive manufacturing scenario.
For the study, one limitation is the selection of relevant stakeholders (for
example, DIY - ”Do it yourself” enthusiasts). The study participants are
friends of the author, some of them would not be considered the main target
group for a 3D Print App. Secondly, the learning application has been
75
only tested by six people. A larger group of testers would definitely lead to
additional requirements and better validity concerning the feasibility of the
implemented approach. Finally, the setting and environment of the conducted
study are not representative of a typical 3D print scenario. It is recommended
to run such a study in a maker space or workshop scenario (e.g., a workshop
classroom would be more suitable for this approach). Additionally, the time
constraint should be set to a longer period (for this study it was a maximum
of one hour). A more realistic scenario would involve a more sophisticated
project with a longer duration.
6.2 Contribution to the state of research
The master thesis evaluates in which degree practices of learning methods
combined with workflow management systems, help learners to carry out
complex tasks. Based on the selected research domain (3D printing), the
paper addresses the applicability of practices described in the literature. This
approach can be applied to other areas as well (for example, a workflow in
a laboratory), where activities are performed by learners by engaging with
objects from the digital and analog world.
6.3 Relevance for practice
Furthermore, this research paper shows pitfalls regarding the implementation
of smart learning systems for complex processes. The requirement specification
can be used as a blueprint to implement a fully developed learning system
for additive manufacturing. The application does not necessarily have to be
3D printing, it can be transferred to other scenarios with complex processes
as well. Concerning the relevance for practice, it can be also stated that
companies that add additive manufacturing to their production chain can
extract ideas and practices to implement a learning system for their employees.
76
6.4 Future Research
Based on the selected research topic ”additive manufacturing” this paper
shows the challenges which arise when users engage with CPS - cyber-physical
systems. There is a need for further research on how-to delegate users from
a digital workflow to engage with objects in the real world. Especially for
learners, it can be a challenge to find their way around in a new environment, if
they just start to understand and learn a complex topic. For future research, it
is recommended to focus on the learning process before performing a complex
task, not only the implementation of a technical workflow.
77
References
3D-grenzenlos.de (2021). 3D-Drucker in Schulen – Projekte, Beispiele und
Gerate.
Amamou, S. and Cheniti-Belcadhi, L. (2018). Tutoring In Project-Based
Learning. Procedia Computer Science, 126:176–185.
Atkinson, M., Gesing, S., Montagnat, J., and Taylor, I. (2017). Scientific
workflows: Past, present and future. Future Generation Computer Systems,
75:216–227.
Bendel, O. (2019). Cyber-physische Systeme.
Chu, S. K. W., Zhang, Y., Chen, K., Chan, C. K., Lee, C. W. Y., Zou, E.,
and Lau, W. (2017). The effectiveness of wikis for project-based learning
in different disciplines in higher education. Internet and Higher Education,
33:49–60.
Cloud 3D Print (2021). Cloud 3D Print: Digitize Your 3D Printing Workspace
in a Cloud.
Eggenreiter, M. (2021). Thinking Aloud Protocol.
Fleming, I. (2020). ISO9126 - Software Quality Characteristics.
Frommann, U. (2005). Die Methode ”Lautes Denken”.
Gadatsch, A. and Gadatsch, A. (2009). Prozessmodellierung. Vieweg +
Teubner.
Galler, J. and Scheer, A.-W. (1995). Workflow-Projekte: Vom
Gesch{a}ftsproze”smodell zur unternehmensspezifischen Workflow-
Anwendung. Information Management, 10(1):20–28.
Golby, A. J. (2015). Image-guided neurosurgery. Academic Press.
78
Hwang, G.-J. (2014). Definition, framework and research issues of smart
learning environments - a context-aware ubiquitous learning perspective.
Smart Learning Environments, 1(1):4.
Jackson, B. (2019). Airbus ramps up 3D printing with Liebherr and Ultimaker
- 3D Printing Industry.
Jobhero (2020). Professional Tutor Resume Samples.
Krajcik, J. S. and Blumenfeld, P. C. (2013). Project-Based Learning.
Moursund, D. (1999). Project-Based Learning Using Information Technology.
ISTE and Information Age Education, first edit edition.
Muller J. (2005). Workflow-based Integration. Grundlagen, Technologien,
Management, volume 39. Springer Berlin.
Oxford University Press (2019). process — Definition of process in English
by Oxford Dictionaries.
Pipek, V. (2014). Ubiquitous Computing.
QRA Team (2020). Functional vs Non-Functional Requirements: The Defini-
tive Guide - QRA Corp.
Seiger, R., Keller, C., Niebling, F., and Schlegel, T. (2015). Modelling complex
and flexible processes for smart cyber-physical environments. Journal of
Computational Science, 10:137–148.
Someren, M. W. v., Barnard, Y. F., and Sandberg, J. A. (1994). THE THINK
ALOUD METHOD. Academic Press, London.
summaedu.org (2020). Peer tutoring — Moderate impact for very low cost,
based on extensive evidence.
Thomas, J. W. (2000). A Review of Research on Project-Based Learning.
Learning, 94903:46.
79
Tofail, S. A., Koumoulos, E. P., Bandyopadhyay, A., Bose, S., O’Donoghue,
L., and Charitidis, C. (2018). Additive manufacturing: scientific and
technological challenges, market uptake and opportunities.
Weichhart, G. and Stary, C. (2017). Project-based learning for complex
adaptive enterprise systems. IFAC-PapersOnLine, 50(1):12991–12996.
80