Nikola Tankovic

Nikola Tankovic
Juraj Dobrila University of Pula · Faculty of Informatics

Assistant Professor (Computer Science)

About

26
Publications
6,752
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
48
Citations
Introduction
Additional affiliations
September 2010 - November 2015
Juraj Dobrila University of Pula
Position
  • Research Assistant

Publications

Publications (26)
Conference Paper
Full-text available
There exists a huge amount of vertical applications that are developed for isolated computing environments. Due to increasing demand for additional resources there is a clear need to adapt these applications to the distributed environments. However, this is not an easy task and numerous variants are possible. Moreover, in this transition a new qual...
Article
Full-text available
Application architectures in the cloud employ elastic components, and achieve lower operating costs without sacrificing quality. Software architects strive to provide efficient services by deciding on software topology: a set of structural architectural decisions. For a given application, there can be numerous software topology alternatives creatin...
Chapter
Full-text available
Plethora of available heterogeneous transactional data and recent advancements in machine learning are the key forces that enable the development of complex algorithms that can reach human-level performance on an increasing number of tasks. Given the non-linear structure composed of many layers of computation, these highly accurate models are usual...
Article
Full-text available
Application models are commonly used in the development of information systems. Recent trends have introduced techniques by which models can be directly transformed into execution code and thus become a single source for application design. Inherently, it has been challenging for software developers to become proficient in designing entire systems...
Conference Paper
A successful business operates on many interacting processes to meet the business goals; thus, organizing these processes in a structured business model is essential. Business process modeling notation (BPMN) is a widely used business modeling technique based on simple business and logic specifications understandable not only by domain experts but...
Book
This book focuses on novel design and systems engineering approaches, including theories and best practices, for promoting a better integration of people and engineering systems. It covers a range of innovative topics related to: development of human-centered systems; interface design and human-computer interaction; usability and user experience; i...
Conference Paper
This paper identifies the emerging cybersecurity issues of the smart grid ICT component in the implementation of control and monitoring systems at the substation level. The attack surface originates from a local network across different levels of interoperability, communication (data) model standard, and digital data collection. Given the level of...
Conference Paper
Recent advances in blockchain gained significant social attention, mainly due to substantial price fluctuations of Bitcoin and Ethereum cryptocurrencies. By its design, blockchain is an open, distributed ledger that can record transactions between two parties efficiently and in a verifiable and permanent way, providing solutions for many complex ta...
Chapter
With the emerging IoT and Cloud-based networked systems that rely heavily on virtualization technologies, elasticity becomes a dominant system engineering attribute for providing QoS-aware services to their users. Although the concept of elasticity can introduce significant QoS and cost benefits, its implementation in real systems is full of challe...
Article
This paper summarizes a novel approach for consuming a domain specific language (DSL) by transforming it to a directed graph representation persisted by a graph database. Using such specialized database enables advanced navigation trough the stored model exposing only relevant subsets of meta-data to different involved services and components. We a...
Book
Full-text available
Many of us discuss about past. Some of us are rethinking the present. Only the brave among us dare to devise the future. Discussing the past is easy. Rethinking the present is demanding. But the real challenge comes when dealing with future perspectives. And that is what the authors of following papers dared to do. The idea of this scientific monog...
Conference Paper
Full-text available
This paper summarizes a novel approach for consuming a domain specific language (DSL) by transforming it to a directed graph representation persisted by a graph database. Using such specialized database enables advanced navigation trough the stored model exposing only relevant subsets of meta-data to different involved services and components.We ap...
Conference Paper
Full-text available
A recent trend, movement of software applications to Cloud, provides among numerous benefits, an important model for infrastructure cost reduction using the pay-as-you-go concept. In our experiments, we noticed that software distribution may significantly influence cost benefits achieved in Cloud. Software distribution optimization requires a conti...
Conference Paper
Full-text available
End user development (EUD) is the idea of providing end users, professionals outside computer science community, to develop their own software. This idea has received special attention by domain experts who would like to easily modify software applications to their needs, without intervention of technical professionals and without learning conventi...
Conference Paper
Full-text available
Application modeling is gaining its share as the next generation software development methodology. Model Driven Development (MDD) uses abstract models of software systems to yield concrete implementations. This process can be achieved in two fundamentally different ways: by generating end artifacts, or by applying model interpretation. Regardless o...
Conference Paper
Full-text available
This paper proposes a novel approach to consumer application development using executable Application Graph Model (AGM). Based on Object-Process Methodology (OPM), AGM has expressive nature to model a generic, data-centric application based on desired domain model. AGM is interpretative, not generative, and also reflective, which enables runtime mo...
Article
Full-text available
Application modeling is gaining its share as the next generation software development methodology. Model Driven Development (MDD) approaches use abstract models of software systems to yield concrete implementations. This process can be achieved in two fundamentally different ways: by generating end artifacts like programing code and database schema...
Article
Full-text available
Computer hardware is gaining its share in human population towards one computer per user, with a tendency to become more than one computer per single user. Smartphone market is significantly contributing that trend. To use the creative and consumer potential of such vast amount of users, there is a need to enable intuitive and easy modeling, develo...

Questions

Questions (2)
Question
I have a real system for which I have built a simulation that can express its certain characteristics. This real system can be in very large amount of configurations which can also be represented within simulation environment. Evaluation of each configuration on real system takes couple of hours, where evaluation within simulation takes couple of minutes.
I developed an optimization algorithm which finds a Pareto set of configurations that minimize (maximize) several objectives.
To solve this, I have built a genetic algorithm which uses simulator to obtain a Pareto set that will further be evaluated on real system.
I am wondering what approach to take on evaluating such two-step optimization heuristic? Evaluating all candidates on real system is infeasible.
So far I have think of this:
- compare results with randomly selected configurations
- compare worst and best results to see if they are distant enough (e.g. in separated cluster)
Any thoughts?
Question
I am looking for a optimizer who can accept non-linear models from queue theory used to find optimal deployments of web services.

Network

Cited By

Projects

Project (1)
Project
Evolving complex software systems (EVOSOFT) have become a central part of a rapidly growing range of applications, products and services supporting daily human activities from all economic sectors. As they are often distributed, heterogeneous, decentralized and inter-dependent, and operating in dynamic and unpredictable environments, availability and reliability become key properties for its operation and future evolution. The novel and still unexplored area of research addressed in this project is to understand how abstract software structures and local system properties influence fault distributions, thus affecting mission critical system properties, among which availability and reliability and to develop innovative approaches for smart management of their operation and evolution. We are facing with completely new phenomena, similar to human evolution, but produced by human intellect. Foundations and theories from other disciplines aiming to understand complex system behavior, evolution and human reasoning could be applied. New findings would open new opportunities in many scientific fields, especially in complex systems theory and its applications, thus interacting with a wide spectrum of sciences, from natural sciences such as biomedicine to social sciences. Industrial experience gathered by systematic Empirical Software Engineering approach is extremely important for further evolution of software engineering discipline. New theories cannot provide effective means for industry without fundamental understanding of EVOSOFT behavior. The main aim of this project is to fulfill this gap between empirical evidence and theoretical models. In that aim we combined empirical and theoretical skills aiming to: • replicate studies and confirm empirical principles and methods and define a solid base to ground new theories, • define structural dependencies for applicability of empirical principles, methods, • define formal models and innovative approaches for smart management