ArticlePDF Available

Selection of Architectural Concept and Development Technologies for the Implementation of a Web-Based Platform for Psychology Research

Authors:

Abstract and Figures

This paper considers the design and development of a web-based platform for conducting psychological online research. As a result, a scalable multicomponent platform architecture is formed, implying the separation into a public and private Intranet parts. To organize communication between components, it is intended to use the REST API. The basic unit of data transmission for experiments is a package that allows ensuring the autonomy of the online tool in conditions of poor Internet connection. A technological stack is selected, which includes the use of JavaScript and AngularJS 1 for the client part, Node.JS and Loopback for the server.
Content may be subject to copyright.
Computing Conference 2018
10-12 July 2018 | London, UK
370 | Page
Selection of Architectural Concept and Development
Technologies for the Implementation of a Web-Based
Platform for Psychology Research
Evgeny Nikulchev, Pavel
Kolyasnikov, Dmitry Ilin
Moscow Technological Institute
Moscow, Russia
nikulchev@mail.ru,
pavelkolyasnikov@gmail.com,
i@dmitryilin.com
Sergey Kasatonov, Dmitry
Biryukov
Moscow Technological University
MIREA
Moscow, Russia
kasatonovsergey@yandex.ru,
xbidmalx@gmail.com
Ilya Zakharov
Psychological Institute of Russian
Academy of Education
Moscow, Russia
iliazaharov@gmail.com
Abstract—This paper considers the design and development
of a web-based platform for conducting psychological online
research. As a result, a scalable multicomponent platform
architecture is formed, implying the separation into a public and
private Intranet parts. To organize communication between
components, it is intended to use the REST API. The basic unit of
data transmission for experiments is a package that allows
ensuring the autonomy of the online tool in conditions of poor
Internet connection. A technological stack is selected, which
includes the use of JavaScript and AngularJS 1 for the client
part, Node.JS and Loopback for the server.
Keywords—Psychology research; web-based platform; software
architecture; requirement analysis; web framework evaluation
I. INTRODUCTION
Currently, psychological research is increasingly using
computer technology and automated tools for data collection
and analysis, including the gradual transition from research
laboratories to the Internet [1]-[6]. Computer methods are used
in a number of areas, such as behavioral genetics [7]-[9],
neuropsychology [10], [11], developmental psychology [12],
[13], cross-cultural studies [14]-[16], etc.
However, the standard pen-and-paper approach is still
relevant for research, for example, in some clinical groups, and
when there is no access to the Internet or the computer as a
whole [17]-[19].
Computer technologies provide a more convenient way of
organizing the collection, storage and processing of research
data. The use of web technologies for conducting
psychological research provides a number of advantages for
psychologists [4]-[6]:
Easy access to ongoing research through the Internet.
Expansion of training samples through the use of the
Internet, which will lead to more reliable results.
Radical increase in the number of people who can
participate in the study through the use of the Internet
(for example, from other regions).
Individualization of research results.
Feedback from participants in the study.
Allows the introduction of machine learning and
algorithms of artificial intelligence by increasing the
amount of data coming in electronic form.
Representation of the means of centralized
administration.
Convenient automated presentation of research results.
The developed web platform for conducting psychological
research is a tool for psychological, psycho-physiological and
cognitive evaluation. The web platform should provide
opportunities for conducting online research using automated
sets of tests. The tool will include a wide range of generally
accepted psychological methods, and, in connection with rapid
development, the opportunity to include new ones offered by
independent researchers.
The main goal of the work is to describe and consider
architectural solutions within the developed web platform for
conducting psychological research, the components of which it
consists, a description of the method of transferring the
experimental data, the rationale for selecting the technological
stack for the client and server parts, a description of the
problems encountered at the time of the design and their
solutions.
Thus, the following issues will be considered in the work:
What architectural solutions should be used to organize
the operation of a multi-component web platform for
psychological research?
What technologies are most applicable to the
implementation of the architecture in conditions of
limited resources?
The paper consists of five sections including introduction.
The problem statement section defines key issues and
priorities. The third section describes the methods taken to
formulate the architectural approach and to analyse best suited
Computing Conference 2018
10-12 July 2018 | London, UK
371 | Page
technologies. The fourth section contains description of the
platform components, provides details on the main approach to
store and transfer the tests, as well as on the selected
technologies for the client and server sides of the platform. The
conclusion section summarizes results and provides insight on
the future work.
II. PROBLEM STATEMENT
The architecture of the application is central to the
organization of the application and the structure of the system
as a whole, which includes a description of the approaches to
development, environment, system components and their
relationship [20]-[22]. In addition, the description of the system
architecture includes answers to various questions that arose
during the design of the system.
The main priority is the online survey tool, since it covers
most of the possible uses. Cognitive and psychophysiological
assessments make more demands on the environment for their
evaluation, and in this connection it is also necessary to
develop an autonomous instrument [3].
Thus, within the scope of the present work, it is necessary
to consider in more detail the architectural approaches to the
development of the platform, what components it will consist
of and how they will be linked, what they are responsible for
and how data is transferred between them.
The platform under development is web-oriented and will
consist of a server and client parts. In this regard, one of the
main tasks is the choice of programming languages and
technologies suitable for the development of these components.
The platform for psychological research should work in
most browsers, including mobile ones without installing
additional plug-ins and extensions. Therefore, one needs to
choose a solution that does not impose any specific restrictions
or require the user to install additional plug-ins and libraries,
except for the presence of the browser itself.
The requirements for server components are less stringent.
Nevertheless, it is necessary to take into account the
peculiarities of certain technological solutions in relation to the
learning curve and the complexity of supporting the resulting
software product.
Since the task is to reduce the cost of studying a large
number of technologies, it is reasonable to consider options for
minimizing the total number of programming languages that
will be involved in the development of the web platform.
III. RESEARCH METHODS
For the formation of an adequate architectural solution, a
number of methods have been applied. The initial phase
included the architectural requirement analysis [23], [24], in
order to identify the main uses, functional and non-functional
requirements for the platform. In addition, to clarify the
requirements, unstructured interviews of the pedagogical staff
were used to reveal the degree of variation in the technical
characteristics of software and hardware in schools.
Based on the information received, an architectural
synthesis [25] was carried out with the aim of identifying a set
of loosely coupled components of the system, their
connections, the most effective methods of data exchange.
To select the programming languages and technologies
suitable for the development of the platform, their research and
comparison were conducted. It was carried out in the context of
the formed architecture, requirements and constraints.
For the analysis of languages and technologies, reports and
materials of such services as StackOverflow and GitHub [26],
[27], which are the most authoritative in the software
development environment, were studied.
With regard to programming languages for browser
applications, application delivery capabilities are evaluated
without the need for additional software.
Frameworks are considered for their active application in
projects, the size of the community of developers, the
relevance of the task and the time on the market.
It should be noted that direct comparison of frameworks for
development will not yield results, since each of them will
allow reaching the final result. Nevertheless, a number of them
should be considered more suitable due to better scalability,
less training costs and more existing modules.
IV. ARCHITECTURE OF THE PSYCHOLOGICAL PLATFORM
A. Description of Platform Components
The architecture of the developed platform for
psychological research was chosen to be multicomponent,
which provides more flexibility than monolithic [3].
Monolithic architectures have a number of disadvantages:
The larger the system, the more difficult it is to
maintain it and make changes.
With a large system, changing a small portion of the
code can cause errors throughout the system.
After each code change, one has to test the entire
system for errors.
Unlike monolithic, the use of multi-component architecture
gives the following advantages:
Write and maintain smaller parts easier than a single
large one.
It is easier to distribute the developers to write a
specific part of the system.
The system can be heterogeneous, because for each
component developers can use the most suitable
programming languages and technologies, depending
on the task.
Easier to update, as fewer components are affected.
The system becomes more fault-tolerant, since in the
event of failure of one of the components, others may
still be working.
Thus, according to the authors, the choice in favor of a
multicomponent architecture is justified due to a number of
Computing Conference 2018
10-12 July 2018 | London, UK
372 | Page
advantages over monolithic, and the most suitable taking into
account the requirements for the developed platform.
Fig. 1 shows the diagram of the platform architecture for
psychological research. The architecture is divided into
separate components that can work independently and
communicate with each other using the REST API [28]-[30].
Fig. 1. Multi-component platform architecture.
"API Server" is the main core of the system, which is a
REST API server and is responsible for working with the data
store, as well as for performing various service functions.
"Online web services" are components that must be
accessible from the Internet. They are the main online part of
the platform being developed, among which are the online test
player, the online test designer, the researcher's personal area
and the personal area of the examinee.
"External applications" are separate applications, such as
desktop and mobile. Unlike the online version of the test
player, the feature of the applications is that the process of
passing these tests should work without connecting to the
Internet. In this regard, the data for the tests must be loaded in
advance, and after passing the tests the answers are uploaded
back to the server.
"Private web services (intranet)" are separate services,
including the Platform Administration Panel and the
Population Data Analysis Panel. The peculiarity of these
services is that they must be isolated from direct access from
the Internet for a greater security guarantee. It is also worth
noting that these services communicate with their own REST
API, which includes administrative methods, which should not
be accessible from the Internet as well.
B. Batch Approach to Storage and Transfer of Tests
To carry out psychological research, a set of tests is used,
which can consist of several different tests and include the
necessary materials, for example, images or files.
Thus, for storage and transmission of tests, a batch
approach is relevant, which will allow storing and transferring
data in one file. The use of the package is also important for
transferring data to the client part of the application, where it
cannot always be guaranteed access to the Internet. It includes
an online application and a desktop application that will be
used in schools, as well as an application for mobile devices.
Packages will be used for sending psychological tests to the
application, for obtaining test results and sending them to the
server.
Using a package to transfer data to online applications in
the client browser is justified for the following reasons:
One request to the server is used, instead of several,
which minimizes the load on creating an HTTP
connection.
The client part does not depend on the server at the time
of passing the test.
In the case of a disconnected Internet connection from
the user, they will not be in a situation where the
passage of the research cannot be completed.
Logging time on the client side minimizes recording
errors.
It is easier to track the degree of workload of the
package and inform the user about it.
Fig. 2 shows a diagram of the package structure for storing
the tests. It shows that the package is complete, includes
information and description of this package, as well as the tests
themselves. There must be at least one test in the package. The
test includes data on its description, as well as images and files,
if they are needed.
Fig. 2. Structure of the package for storing and transferring tests.
The test itself should be described using a special JSON
Schema standard [31], [32], whose structure is approved in
advance. Based on this structure, the test will be validated.
Using JSON Schema standard avoids a number of
problems and has the following advantages [31], [32]:
Computing Conference 2018
10-12 July 2018 | London, UK
373 | Page
No need to manually check the contents of documents.
No need to not create task specific validators with a
variety of configurations and support these solutions.
With a single standard, the process of integration and
support of validation in various components of the
platform, such as the online test player and desktop
applications, is simplified.
Changing the schema does not require the replacement
of the validator code.
One can describe the psychological test manually
without the help of additional tools, which will be a
plus at the early stage of development, when the test
designer is not yet available.
There are many implementations for different
programming languages and platforms.
C. The Choice of Technological Solutions for the
Development of the Client Part of the Application
As a result of the consideration of JavaScript, Java applets
and the Adobe Flash platform from the point of view of
applicability for code execution in the browser, it was found
that only JavaScript can be considered applicable.
This is due not only to the fact that JavaScript is used in
many areas: client browsers, server part, mobile platforms, as
well as the desktop applications. Java applet technology, like
Adobe Flash technology, requires the installation of additional
components in the user’s system [33], [34]. Moreover,
depending on the operating system and the browser, the
installation and configuration process may vary. Due to the
great variability of the hardware and software in schools, the
use of these two technologies is not advisable, since this can
complicate the process of conducting mass research. It should
be noted that in browsers on mobile devices Adobe Flash and
Java applets are not supported [34]. It is also worth noting that
Adobe Flash becomes obsolete, while HTML5 gives similar
ability to work with multimedia (video and audio) [35], [36].
Thus, the choice in favor of JavaScript for the development
of the client part becomes obvious and there is no alternative
solution under the given conditions at the current moment.
JavaScript is supported by all common browsers and is
included in them by default.
Developing large Single-Page Applications (SPA) based on
pure JavaScript on the client side is a difficult and inefficient
process, so one needs to use frameworks that define the
application structure and have a basic set of components.
It should be noted that almost all modern frameworks have
similar functionality and are able to solve this task. Thus, the
choice should first of all be based not on the functionality of
the framework, but on the requirements and objectives within
the framework of a particular project.
The most famous and popular frameworks were selected
for consideration, among them Backbone.js, AngularJS 1,
AngularJS 2, React, Ember.js, Vue.js and Polymer. Table I
shows the advantages and disadvantages of these frameworks,
taking into account the applicability to the developed platform.
TABLE I. ADVANTAGES AND DISADVANTAGES OF FRONT-END
FRAMEWORKS
Framework Advantages Disadvantages
Backbone.js
- Compact
- Simple structure
- Low barriers to entry
- Good documentation
- Supports REST
- Does not support two-
way data binding
- Requires additional
components to
implement complex
functionality
- Not suitable for large
projects
AngularJS 1
- High popularity
- Low barriers to entry
- Rich documentation
- Wide community
- Many existing solutions
- It is part of the MEAN
stack (MongoDB,
Express.JS, AngularJS,
NodeJS)
- Supports REST
- High speed development
- Supports two-way data
binding
- It is believed to be
outdated, since there is
an AngularJS 2
- Not compatible with
AngularJS 2
- Performance decreases
with a sufficiently large
amount of data
AngularJS 2
- Rich documentation
- Wide community
- Has a large number of
functions
- Supports REST
- There are Angular
Universal for solving
problems of search engine
optimization (rendering of
pages on the server)
- Supports two-way data
binding
- Uses TypeScript to
compile in JavaScript
- More complex barriers
to entry compared to
AngularJS 1
- It is necessary to take
many actions to provide
even small functionality
React
- Compact
- High performance
- Rich documentation
- Suitable for large and
complex projects with a
high degree of load
- Requires an additional
implementation on the
server to work with data
(for example, Flux or
Redux)
- Does not support REST
- Not compatible with
libraries that modify the
DOM
- High barriers to entry
- Complex approach to
development
Ember.js
- Rich documentation
- Large ecosystem
- Suitable for complex and
large applications
- Supports REST
- Supports two-way data
binding
- It is considered to be
monolithic in
comparison with other
frameworks
- There is no reuse of
components at the
controller level
- High barriers to entry
- Heavy structure
- Too big for small
projects
Vue.js
- Very rapidly growing
popularity
- Low barriers to entry
- Few dependencies
- High performance
- Rich documentation
- Good ecosystem
- Supports two-way data
binding
- A fairly new
framework
- Developed mainly by
one person
- Not many projects
were done
- Does not support REST
by default (there is an
Axios library)
Polymer
- New and promising
technology
- Web Components
- Relatively new solution
- Great risks when using
- Few ready solutions
Computing Conference 2018
10-12 July 2018 | London, UK
374 | Page
Framework Advantages Disadvantages
- High performance and examples
- High barriers to entry
Backbone.js is ill-suited for developing large projects, as
there are no necessary components for implementing complex
functionality. Thus, according to the authors of the article, the
use of this framework is inexpedient in view of the fact that it
does not have sufficient functionality, and there are also
alternative solutions.
Polymer is a library that is based on a fairly new Web
Components technology. The W3C specification for this
technology is not yet complete. There may be problems with
browser support, problems in stability, and also high barriers to
entry for developers. In this regard, the use of this framework
was decided to be abandoned due to possible risks.
React, unlike others, is a library and does not allow to
create a web application, since it is designed to create a View
part and must work with data on the server, for example, in
conjunction with Flux or Redux. Therefore React is difficult to
understand, has an uncommon structure, which complicates the
understanding of the application as a whole, and also has high
barriers to entry for junior developers. According to the
authors, React is more difficult to make a quick prototype and
support the solution than on another framework.
AngularJS 1, AngularJS 2, Ember.js and Vue.js have two-
way data binding, the ability to build large systems, good
documentation and community. The main choice will be made
between these frameworks.
Ember.js has a complex project structure and high barriers
to entry for junior developers, and in case of going beyond the
standard use is cumbersome and not flexible. In addition, the
framework is less popular than AngularJS and Vue.js [26],
[27].
Vue.js version 2 is currently the fastest growing popular
framework; it took the best solutions from Ember.js, React and
AngularJS, and also has good performance. Another important
factor is that Vue.js does not support REST and requires an
additional Axios library for this. In addition, the framework is
relatively new and is developed mostly by one person [27], so
its use can lead to greater risks.
As a result, the most appropriate for developing a platform
for psychological research is AngularJS 1 and AngularJS 2.
AngularJS 1 is a fairly simple framework for mastering and
understanding has low barriers to entry with a rich set of
functions. AngularJS 2 is a parallel project with AngularJS 1
and is developed separately. AngularJS 2 is greatly
complicated: to write the simplest application it requires much
more action. In addition, it is written in TypeScript, which will
require additional knowledge from the developers.
Taking into account what was written above, as well as the
fact that the platform for psychological research has a
limitation in resources and involves junior developers, the most
appropriate solution for the current moment, according to the
authors of the article, is AngularJS 1. In addition, AngularJS 1
has more popularity than other frameworks, according to
GitHub [27].
D. Selection of Technological Solutions for the Development
of the Server Part of the Application
The development of the server part of the platform allows
one to choose from a fairly wide range of technologies, in
comparison with the client part. This is primarily due to the
fact that server technologies depend on the preferences of
developers, equipment and requirements for the project, while
client technologies are severely limited. The choice of
technological solutions for the development of server
components is better to start not with programming languages,
but with consideration of frameworks because they set the
basic structure for the development of the application, as it was
written above. Table II presents the features, advantages and
disadvantages of the most suitable, in the authors’ opinion,
frameworks for the development of the server part of the
platform.
TABLE II. ADVANTAGES AND DISADVANTAGES OF SERVER-SIDE
FRAMEWORKS
Framework Advantages Disadvantages
Laravel,
Symfony
(PHP)
- Low barriers to entry
- A large number of PHP
developers
- Blocking I/O calls
- PHP interpreter has
low performance
- No paid support
Django
(Python)
- Low barriers to entry
- Generating the
administration panel for
relational databases
- Blocking I/O calls
- Does not support
NoSQL solutions out of
the box
Ruby on Rails
(Ruby) - Low barriers to entry
- In the development
community, there are
references to scaling
problems under
increasing load
- Blocking I/O calls
Express.js
(JavaScript /
Node.js)
- Not blocking by default
(asynchronous)
- Steep learning curve
- Long-term support of
the project has
difficulties (complexity
of refactoring)
- Development in large
groups can be difficult
Loopback
(JavaScript /
Node.js)
- Not blocking by default
(asynchronous)
- Generating the Preview
Panel and Working with
the REST API
- Declarative approach to
the generation of the
REST API
- The generated API
does not contain
methods for mass update
of related entities
Play (Scala /
Java)
- Not blocking by default
(asynchronous)
- Well scaled even with
blocking code
- Strict typing simplifies
refactoring
- Slow compilation
- New versions of the
framework require
improvements in the
final software
Vaadin (Java)
- Contains the library of
pre-made UI elements
- Front-end code is
generated based on the
server
- Strict typing simplifies
refactoring
- Blocking by default
- Slow compilation
- High barriers to entry
- The development of
new UI elements is time-
consuming
- There is no full control
over the front-end code
ASP .NET
MVC (C#)
- Strict typing simplifies
refactoring
- Locked in to the
Windows platform
- Need to purchase
Windows Server licenses
for deployment
Computing Conference 2018
10-12 July 2018 | London, UK
375 | Page
Since it was determined that a high degree of project
scalability is required, attention should be paid to non-blocking
I/O frameworks [37]. In this regard, it is necessary to exclude
Laravel, Symfony, Django and Ruby on Rails from
consideration. Also, due to the complexities of implementing
non-blocking I/O and custom interfaces, the Vaadin framework
is not suitable for the project.
ASP .NET MVC imposes additional restrictions on the
infrastructure in the absence of significant advantages, so the
framework should be excluded from further consideration.
Thus, the main choice will be made between the Express.js,
Loopback and Play frameworks.
An important factor is the programming language on which
the framework is written. Express.js and Loopback are written
using Node.js (JavaScript), while Play uses Java and Scala. In
the case of JavaScript, a single syntax will be used for both
client and server parts. This will increase the effectiveness of
the development of the platform, since the developer will need
to know not two, but only one programming language, which is
an advantage in the conditions of a small number of
developers. In addition, it allows combining parts of the
learning process and reduces the overall barriers to entry,
which will decrease the time of training of new professionals
who will participate in the development of the platform. It’s
also worth noting, that JavaScript is the most popular language
in the world according to the statistics of such large services as
GitHub and StackOverflow [26], [27]. In this regard, according
to the authors of the article, it is more expedient to use
Express.js and Loopback frameworks rather than Play.
Of the remaining two frameworks, the choice in favor of
Loopback is more appealing for a number of reasons:
Loopback offers a number of patterns that will help
maintain the proper level of support for the code base as
it increases.
The framework is based on Express.js, which will
enable all its functional components.
Loopback offers functionality for simplified API
generation, which greatly reduces the amount of labor
involved in development.
Listed above, according to the authors of the article, is
more significant than the steep learning curve. Thus, the choice
is Loopback framework.
V. CONCLUSION
At present, modern computer technologies can act as a
promising research tool and influence positively on the future
development in the field of psychological research. In this
connection, it is very important for Russian psychologists to
have their own tool.
The main architectural aspects of the work were
formulated, namely the application of the scalable multi-
component platform architecture, which is divided into the
server (main), public and private Intranet parts, as well as
external applications (desktop and mobile). To organize
communication between components and transfer data, it is
intended to use the REST API. As the basic unit for the transfer
of experiments, a package was chosen that allows ensuring the
autonomy of the online tool in conditions of a poor Internet
connection.
To implement the architectural aspects, the most
appropriate technologies were selected in the given task:
JavaScript language that will be used to implement most of the
software components, AngularJS 1 framework for the client
part of the online application, Loopback (Node.js) framework
for implementing the API server, it provides a single access
point for all other components of the platform. It is worth
noting that the use of one basic JavaScript language simplifies
the process of development and support of the platform, which
is an advantage in the conditions of a small number of
developers.
The future work will be dedicated to the problems of the
design and development of the psychological platform
components. In addition to it, there are plans to research
various methods of horizontal scaling to support the growing
amount of incoming data, which includes performing of stress
tests on the resulting web platform.
ACKNOWLEDGMENT
This research is supported by the RFBR grant no. 17-29-
02198.
REFERENCES
[1] T. Buchanan and J. L. Smith, "Using the Internet for psychological
research: Personality testing on the World Wide Web," British Journal
of Psychology, vol. 90, no. 1, pp. 125-144, 1999.
[2] J. A. Naglieri, F. Drasgow, M. Schmit, L. Handler, A. Prifitera, A.
Margolis and R. Velasquez, "Psychological testing on the Internet: new
problems, old issues," American Psychologist, vol. 59, no. 3, pp. 150-
162, 2004.
[3] I. Zakharov, E. Nikulchev, D. Ilin and V. Ismatullina, "Web-based
Platform for Psychology Research," ITM Web of Conferences, vol. 10,
2017.
[4] M. H. Birnbaum, "Human Research and Data Collection via the
Internet," Annual Review of Psychology, vol. 55, pp. 803-832, 2004.
[5] S. D. Gosling, S. Vazire, S. Srivastava and O. P. John, "Should We
Trust Web-Based Studies? A Comparative Analysis of Six
Preconceptions About Internet Questionnaires," American Psychologist,
vol. 59, no. 2, pp. 93-104, 2004.
[6] R. Kraut, J. Olson, M. Banaji, A. Bruckman, J. Cohen and M. Couper,
"Psychological Research Online: Report of Board of Scientific Affairs'
Advisory Group on the Conduct of Research on the Internet," American
Psychologist, vol. 59, no. 2, pp. 105-117, 2004.
[7] V. Ismatullina, I. Zakharov, E. Nikulchev and S. Malykh,
"Computerized tools in psychology: cross cultural and genetically
informative studies of memory," ITM Web of Conferences, vol. 6, 2016.
[8] K. Rimfeld, N. Shakeshaft, M. Malanchini, M. Rodic, S. Selzam, K.
Schofield, P. Dale, Y. Kovas and R. Plomin, "Phenotypic and genetic
evidence for a unifactorial structure of spatial abilities," Proceedings of
the National Academy of Sciences, vol. 114, no. 10, pp. 2777-2782,
2017.
[9] M. Kuppermann, M. E. Norton, E. Gates, S. E. Gregorich, L. A.
Learman, S. Nakagawa, Sanae, V. A. Feldstein, J. Lewis, A. E.
Washington and R. F. Nease, "Computerized Prenatal Genetic Testing
Decision-Assisting Tool: A Randomized Controlled Trial," Obstetrics &
Gynecology, vol. 113, no. 1, pp. 53-63, 2009.
[10] M. Luciana, "Practitioner Review: Computerized assessment of
neuropsychological function in children: clinical and research
applications of the Cambridge Neuropsychological Testing Automated
Battery (CANTAB)," Journal of Child Psychology and Psychiatry, vol.
44, no. 5, pp. 649-663, 2003.
Computing Conference 2018
10-12 July 2018 | London, UK
376 | Page
[11] A. Coutrot, R. Silva, E. Manley, W. de Cothi, S. Sami, V. Bohbot, J.
Wiener, C. Hölscher, R. C. Dalton, M. Hornberger and H. Spiers,
"Global determinants of navigation ability," bioRxiv, 2017.
[12] E. P. MacKenzie and J. M. Hilgedick, "The Computer-Assisted
Parenting Program (CAPP): The Use of a Computerized Behavioral
Parent Training Program as an Educational Tool," Child & Family
Behavior Therapy, vol. 21, no. 4, pp. 23-43, 2000.
[13] T. L. Dawson and M. Wilson, "The LAAS: A Computerized Scoring
System for Small- and Large-Scale Developmental Assessments,"
Educational Assessment, vol. 9, no. 3-4, pp. 153-191, 2004.
[14] H. A. Elfenbein, M. K. Mandal, N. Ambady, S. Harizuka and S. Kumar,
"Cross-cultural patterns in emotion recognition: Highlighting design and
analytical techniques," Emotion, vol. 2, no. 1, pp. 75-84, 2002.
[15] F. J. R. Van de Vijver and Y. H. Poortinga, "Towards an integrated
analysis of bias in cross-cultural assessment," European Journal of
Psychological Assessment, vol. 13, no. 1, pp. 29-37, 1997.
[16] D. Matsumoto and F. J. R. Van de Vijver, Cross-cultural research
methods in psychology, Cambridge University Press, 2010.
[17] C. E. Naquin, T. R. Kurtzberg and L. Y. Belkin, "The finer points of
lying online: E-mail versus pen and paper," Journal of Applied
Psychology, vol. 95, no. 2, pp. 387-394, 2010.
[18] G. L. P. Weerakoon, "The role of computer-aided assessment in health
professional education: a comparison of student performance in
computer-based and paper-and-pen multiple-choice tests," Medical
teacher, vol. 23, no. 2, pp. 152-157, 2001.
[19] P. A. Mueller and D. M. Oppenheimer, "The Pen Is Mightier Than the
Keyboard: Advantages of Longhand Over Laptop Note Taking,"
Psychological Science, vol. 25, no. 6, pp. 1159-1168, 2014.
[20] M. W. Maier, D. Emery and R. Hilliard, "Software architecture:
Introducing IEEE standard 1471," Computer, vol. 34, no. 4, pp. 107-
109, 2001.
[21] D. Emery and R. Hilliard, "Updating IEEE 1471: Architecture
Frameworks and Other Topics," WICSA 2008. Seventh Working
IEEE/IFIP Conference on Software Architecture, 2008.
[22] H. Mei, F. Chen, Y. D. Feng and J. Yang, "ABC: An Architecture
Based, Component Oriented Approach to Software Development,"
Journal of Software, 2003.
[23] H. Wang, W. He and F. K. Wang, "Enterprise cloud service
architectures," Information Technology and Management, vol. 13, no. 4,
pp. 445-454, 2012.
[24] D. T. Ross and K. E. Schoman, "Structured Analysis for Requirements
Definition," IEEE Transactions on Software Engineering, Vols. SE-3,
no. 1, pp. 6-15, 1977.
[25] Z. Li, P. Liang and P. Avgeriou, "Application of knowledge-based
approaches in software architecture: A systematic mapping study,"
Information and Software Technology, vol. 55, no. 5, pp. 777-794, 2013.
[26] "Stack Overflow Developer Survey 2017," Stack Exchange Inc, 2017.
[Online]. Available: https://insights.stackoverflow.com/survey/2017.
[Accessed 12 09 2017].
[27] "GitHub Octoverse 2016," GitHub Inc, 2016. [Online]. Available:
https://octoverse.github.com/. [Accessed 12 09 2017].
[28] L. Li, W. Chou, W. Zhou and M. Luo, "Design Patterns and
Extensibility of REST API for Networking Applications," IEEE
Transactions on Network and Service Management, vol. 13, no. 1, pp.
154-167, 2016.
[29] C. Pautasso, "RESTful Web Services: Principles, Patterns, Emerging
Technologies," Web Services Foundations, pp. 31-51, 2014.
[30] F. Belqasmi, J. Singh, S. Y. B. Melhem and R. H. Glitho, "SOAP-Based
vs. RESTful Web Services: A Case Study for Multimedia
Conferencing," IEEE Internet Computing, vol. 16, no. 4, pp. 54-63,
2012.
[31] F. Pezoa, J. L. Reutter, F. Suarez, M. Ugarte and D. Vrgoс,
"Foundations of JSON Schema," Proceedings of the 25th International
Conference on World Wide Web, pp. 263-273, 2016.
[32] "JSON Schema," 2017. [Online]. Available: http://json-schema.org/.
[Accessed 14 09 2017].
[33] J. Garcia-Zubia, P. Ordua, D. Lopez-de-Ipia, U. Hernndez and I. Trueba,
"Remote laboratories from the software engineering point of view,"
Advances on Remote Laboratories and E-Learning Experiences, pp.
131-149, 2007.
[34] J. Garcia-Zubia, P. Orduna, D. Lopez-de-Ipina and G. R. Alves,
"Addressing Software Impact in the Design of Remote Laboratories,"
IEEE Transactions on Industrial Electronics, vol. 56, no. 12, pp. 4757-
4767, 2009.
[35] S. J. Vaughan-Nichols, "Will HTML 5 Restandardize the Web?,"
Computer, vol. 43, no. 4, pp. 13-15, 2010.
[36] J. D. Prince, "HTML5: Not Just a Substitute for Flash," Journal of
Electronic Resources in Medical Libraries, vol. 10, no. 2, pp. 108-112,
2013.
[37] K. Lei, Y. Ma and Z. Tan, "Performance Comparison and Evaluation of
Web Development Technologies in PHP, Python, and Node.js," 2014
IEEE 17th International Conference on Computational Science and
Engineering (CSE), pp. 19-21, 2014.
ISBN (IEEE XPLORE): 978-1-5386-1350-4
ISBN (USB): 978-1-5386-1349-8
TECHNICAL SPONSORORGANIZED BY
PROCEEDINGS OF
computing
conference 2018
COMPUTING
CONFERENCE 2018
10-12 JULY 2018 | LONDON, UNITED KINGDOM
Computing Conference 2018
10-12 July 2018 | London, UK
2 | P a g e
PROCEEDINGS OF THE 2018 COMPUTING CONFERENCE
Copyright © The Science and Information (SAI) Organization
Copyright and Reprint Permissions:
Permission to make digital or hard copies of portions of this work for personal or classroom use is granted without
fee provided that the copies are not made or distributed for profit or commercial advantage and that copies bear
this notice and the full citation on the first page in print or the first screen in digital media. Abstracting with credit
is permitted.
For other copying, reprint, or republication permission, write to SAI Conferences at conference@thesai.org. All
rights reserved.
Computing Conference 2018
10-12 July 2018 | London, UK
3 | P a g e
About the Conference
IEEE Technically Sponsored Computing Conference (formerly called Science and Information Conference) is a research conference held
in London, UK since 2013. The conference series has featured keynote talks, special sessions, poster presentation, tutorials, workshops,
and contributed papers each year.
The goal of the conference is to be a premier venue for researchers and industry practitioners to share new ideas, research results and
development experiences in the areas of Computer Science, Electronics and Communication.
2018 Computing Conference is held at Holiday Inn London - Regent's Park.
Holiday Inn London - Regent's Park has great meeting rooms with new designs. We chose it for the conference because it has got
plenty of space, serves great food and is 100% accessible. In the heart of London, located in Marylebone, this modern hotel is just 0.8
km from Oxford Street’s shops, various theatres and Madame Tussauds. It is also 2.1 km away from London Zoo. The venue is
10-minute walk from Bond Street boutiques and 20 minutes from the Buckingham Palace and cruises on the River Thames.
Venue Name: Holiday Inn London - Regent's Park
Carburton St, Fitzrovia
London W1W 5EE, United Kingdom
Tel: +44 871 942 9111
...  иными словами, будем понимать под совместимыми ИТР те, которые не дают нулевых значений эффективности, то есть работоспособны при совместном использовании. 10 На каждом m-м этапе жизненного цикла решается задача выбора ИТР для формирования стека технологий, т. Таким образом, полученный подход позволяет сократить множество вариантов для формирования стека технологий по разработке, дает возможность оценить ИТР на этапах жизненного цикла создания ЦП. ...
Thesis
Full-text available
Построена математическая модель выбора стека технологий, используемых в ЦП, сформулирована задача выбора элементов из множеств возможных информационно-технологических решений, введена операция совместимости технологий, определяющая сужение множества альтернатив, проведена декомпозиция исходной задачи по этапам жизненного цикла разработки ЦП. Разработана методика оценки интеграции информационно-технологических решений при создании ЦП. Учитывается инфраструктура и заданные условия функционирования ЦП, что позволяет оценить значения критериев для оценки эффективности ИТР в заданных условиях. Разработана виртуальная программно-конфигурируемая имитационная среда как инструмент оценки эффективности стека информационно-технологических решений в ЦП на этапах жизненного цикла разработки ЦП. Сформирована методика выбора информационно-технологических решений на основе использования нечеткой логики.
... The collection of behavior characteristics should be built into the interface of client applications. So, for systems [37] that imply the transfer of state, it is necessary to collect data on user requests to the API, tracking the time, parameters, and user ID, and for systems with a graphical user interface (GUI), to collect data on actions regarding the interface, tracking the time of action and user identifiers. ...
Article
Full-text available
This paper concerns the case of the development of a technology for increasing the efficiency of access control based on the user behavior monitoring built into a software system’s user interface. It is proposed to use the time of user reactions as individual indicators of psychological and psychophysical state. This paper presents the results and interpretation of user reactions collected during a mass web survey of students of the Russian Federation. The total number of users was equal to 22,357. To reveal the patterns in user reactions, both quantitative and qualitative approaches were applied. The analysis of the data demonstrated that the user could be characterized by their psychomotor reactions, collected during the answering of a set of questions. Those reactions reflected the personal skills of the interface interaction, the speed of reading, and the speed of answering. Thus, those observations can be used as a supplement to personal verification in information systems. The collection of the reaction times did not load the data volumes significantly nor transmit confidential information.
... Although Vue is supposed to apply in a single-page application usually considered as limited functions and hard to adopt in commercial usage, the open source community provide strong third party supporting library and packages to support Vue to drive complex single page application with routing, state management and build tooling [14]. [16]. Vue will use DOM listeners to monitor and update the Model section's data. ...
Conference Paper
Full-text available
With web technology rapidly expands out in recent years, there is a significant trend that Hypertext Markup Language(HTML)5 turns into a worldwide web consortium and leads the front-end development to stand on the front stage of internet history. However, there are numerous front-end development frameworks and libraries such as React, Angular and Vue. How to select a suitable framework or library to establish the e-Business and reach out to maximize the user experience becomes a priority operation in web development. This paper starts with introducing an overview of the leading frameworks and libraries in the field of front-end development and examine each performance in web services. By analyzing the research data on several aspects, this paper will list the pros and cons of each framework and library under separate commercial criteria. Finally, the paper summarizes the contributions and concludes with some possible future of front-end development in e-Business.
... Цель статьи -рассмотреть выбор технологических реше- ний на примере разрабатываемой цифровой вычислительной веб-платформы Российской академии образования [4,5] для обеспечения информационной поддержки деятельности психо- логов по проведению исследований, в том числе популяцион- ных и лонгитюдных [6,7]. ...
Article
Full-text available
Выбор инструментов и средств и технологий программирования для создания информационных систем представляет собой актуальное направление. Для каждой проектируемой системы необходимо определить набор критериев, предъявляемым к среде разработки, используемым библиотекам и технологиям. В статье рассматривается выбор технологических решений на примере разрабатываемой цифровой вычислительной веб-платформы Российской академии образования для обеспечения информационной поддержки деятельности психологов по проведению исследований, в том числе популяционных и лонгитюдных. Особенностью системы являются: масштабность и значительное время разработки, требующей реализации и обеспечение гарантированной вычислительной надежности широкого спектра применяемых цифровых инструментов психологических исследований; обеспечение функционирования в различных условиях, в частности при проведении массовых исследований в школах, имеющих различные характеристики вычислительных ресурсов и каналов связи; возможность масштабирование сервисов; обеспечение безопасности и закрытость данных, а также использование технологий и инструментов программирования, которые бы обеспечивали совместимость и конвертацию данных с другими средствами обработки психологических исследований. Для разрабатываемой системы были введены критерии оценки программных технологий, которые учитывают особенности функционирования и жизненного цикла продукта, на конкретном примере показан выбор соответствующих технологических решений. Важной составляющей при разработке является обучение команды разработчиков используемым технологиям. Приведена система, реализующая программу обучения выбранных технологий. Разработанная система обучения используется для уменьшения времени включения в программную разработку новых исполнителей, по мере расширения задач.
Article
Full-text available
Human spatial ability is modulated by a number of factors, including age [1-3] and gender [4, 5]. Although a few studies showed that culture influences cognitive strategies [6-13], the interaction between these factors has never been globally assessed as this requires testing millions of people of all ages across many different countries in the world. Since countries vary in their geographical and cultural properties, we predicted that these variations give rise to an organized spatial distribution of cognition at a planetary-wide scale. To test this hypothesis, we developed a mobile-app-based cognitive task, measuring non-verbal spatial navigation ability in more than 2.5 million people and sampling populations in every nation state. We focused on spatial navigation due to its universal requirement across cultures. Using a clustering approach, we find that navigation ability is clustered into five distinct, yet geographically related, groups of countries. Specifically, the economic wealth of a nation was predictive of the average navigation ability of its inhabitants, and gender inequality was predictive of the size of performance difference between males and females. Thus, cognitive abilities, at least for spatial navigation, are clustered according to economic wealth and gender inequalities globally, which has significant implications for cross-cultural studies and multi-center clinical trials using cognitive testing.
Article
Full-text available
This article is devoted to contemporary methods of risk management under the conditions of crisis on financial markets. The article deals with developing the new approaches to studying finance and financial markets. It outlays new methods to compare fundamental events and their technical interpretation shown on quotation charts. It also introduces recommendations as to improve the risk management’s efficiency of financial markets’ participants.
Article
Full-text available
Significance Spatial ability is a strong predictor of several important outcomes, including success in science, technology, engineering, and mathematics (STEM) subjects and careers. This ability is widely believed to be multifactorial, with numerous components and subdomains, such as “mental rotation,” “scanning,” and “mechanical reasoning.” This large twin study allows the genetic and environmental etiology of diverse putative spatial abilities to be explored. The results indicate that this domain is in fact unifactorial, albeit dissociable from general intelligence, suggesting that its structure is much simpler than the sprawling literature suggests. This will aid gene-hunting efforts and allow this ability and its consequences to be examined with greater precision.
Article
Full-text available
In this article we presented the computerized tools for psychological studies of memory. The importance of implementing computerized automated tools for psychological studies is discussed. It has been shown that this tools can be used both for cross-cultural and genetically informative studies. The validity of these tools for cross-cultural and genetically informative studies of memory can be seen as the first step to use automated computerized tools for big data collection in psychology.
Conference Paper
Full-text available
Large scale, high concurrency, and vast amount of data are important trends for the new generation of website. Node.js becomes popular and successful to build data-intensive web applications. To study and compare the performance of Node.js, Python-Web and PHP, we used benchmark tests and scenario tests. The experimental results yield some valuable performance data, showing that PHP and Python-Web handle much less requests than that of Node.js in a certain time. In conclusion, our results clearly demonstrate that Node.js is quite lightweight and efficient, which is an idea fit for I/O intensive websites among the three, while PHP is only suitable for small and middle scale applications, and Python-Web is developer friendly and good for large web architectures . To the best of our knowledge, this is the first paper to evaluate these Web programming technologies with both objective systematic tests (benchmark) and realistic user behavior tests (scenario), especially taking Node.js as the main topic to discuss. Keywords—Web Development; Performance Evaluation; Node.js; Benchmark Test; Scenario Test
Conference Paper
JSON -- the most popular data format for sending API requests and responses -- is still lacking a standardized schema or meta-data definition that allows the developers to specify the structure of JSON documents. JSON Schema is an attempt to provide a general purpose schema language for JSON, but it is still work in progress, and the formal specification has not yet been agreed upon. Why this could be a problem becomes evident when examining the behaviour of numerous tools for validating JSON documents against this initial schema proposal: although they agree on most general cases, when presented with the greyer areas of the specification they tend to differ significantly. In this paper we provide the first formal definition of syntax and semantics for JSON Schema and use it to show that implementing this layer on top of JSON is feasible in practice. This is done both by analysing the theoretical aspects of the validation problem and by showing how to set up and validate a JSON Schema for Wikidata, the central storage for Wikimedia.
Article
OBJECTIVE: Guidelines for fetal aneuploidy testing recommend that screening and diagnostic testing be made available to pregnant women of all ages and that providers explain the differences between these tests to help their patients make informed testing decisions. We sought to estimate the effect of a computerized, interactive prenatal testing decision tool on prenatal testing decision making. METHODS: Four hundred ninety-six English- or Spanish-speaking women at 20 or fewer weeks of gestation were randomly assigned to view the interactive prenatal testing decision tool or the California Department of Health Services' educational booklet. Primary outcomes were knowledge, risk awareness, intervention satisfaction, decisional conflict, and among women aged at least 35 years, use of invasive diagnostic testing. RESULTS: Women assigned to the interactive prenatal testing decision tool had higher knowledge scores (79.5% compared with 64.9%, P<.001), were more likely to correctly estimate their risk of procedure-related miscarriage (64.9% compared with 48.1%, P=.002) and carrying a Down syndrome-affected fetus (63.5% compared with 15.1%, P<.001), were more satisfied with the intervention (P<.001), and had less decision uncertainty (P<.001) than controls after viewing the intervention. Most of these differences persisted over time. Among women aged at least 35 years, the interactive prenatal testing decision tool viewers who were originally less inclined to undergo invasive testing were ultimately more likely than similarly inclined controls to have amniocentesis or chorionic villus sampling (44.8% compared with 29.2%), whereas those who were originally more inclined to undergo an invasive procedure ultimately were less likely than similarly inclined controls to have a diagnostic procedure (84.6% compared with 94.9%; P=.015 for interaction). CONCLUSION: Using an interactive prenatal testing decision tool results in more informed prenatal genetic testing decisions than viewing standard educational booklets. CLINICAL TRIAL REGISTRATION: Clinicaltrials.gov, www.clinicaltrials.gov, NCT00686062
Article
RESTful Web services are software services which are published on the Web, taking full advantage and making correct use of the HTTP protocol. This chapter gives an introduction to the REST architectural style and how it can be used to design Web service APIs. We summarize the main design constraints of the REST architectural style and discuss how they impact the design of so-called RESTful Web service APIs. We give examples on how the Web can be seen as a novel kind of software connector, which enables the coordination of distributed, stateful and autonomous software services. We conclude the chapter with a critical overview of a set of emerging technologies which can be used to support the development and operation of RESTful Web services. © 2014 Springer Science+Business Media New York. All rights are reserved.
Article
HTML5 is an under-development markup language used to structure and present web content via browser. HTML5 makes several significant breaks from HTML 4, some of which clean up syntax and some of which extend the capabilities of HTML. Recent controversies pitting HTML5 against Adobe Flash could have created the false impression that HTML5 is a Flash analog, but HTML5 is both more and less than Flash.