• Home
  • Marko C. J. D. van Eekelen
Marko C. J. D. van Eekelen

Marko C. J. D. van Eekelen
Open Universiteit & Radboud University · Computer Science

Prof.dr.

About

210
Publications
18,571
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
2,126
Citations
Additional affiliations
June 2014 - present
Open Universiteit Nederland
Position
  • Head of Computer Science Department
Description
  • as of September 1, 2014 .7 of my time is at Open University of The Netherlands. .3 at Radboud University Nijmegen
April 2009 - July 2012
Radboud University
Position
  • CHARTER
Description
  • I lead the verification work package of the Artemis EU project on real-time safety critical applications. Our contribution was mainly in the verification on the Java level, both in functional properties (JML) and in non-functional properties (ResAna).
January 2009 - present
Open Universiteit Nederland
Position
  • Professor Software Technology
Description
  • Research, teaching and coordinating on software technology subjects. Programme leader of the Open University's 60 ec Software Engineering curriculum (Master of Science). http://portal.ou.nl/web/informatica/masteropleiding-software-engineering

Publications

Publications (210)
Preprint
Full-text available
Explaining predictions from Bayesian networks, for example to physicians, is non-trivial. Various explanation methods for Bayesian network inference have appeared in literature, focusing on different aspects of the underlying reasoning. While there has been a lot of technical research, there is very little known about how well humans actually under...
Chapter
Full-text available
Code that is highly optimized poses a problem for program-level verification: programmers can employ various clever tricks that are non-trivial to reason about. For cryptography on low-power devices, it is nonetheless crucial that implementations be functionally correct, secure, and efficient. These are usually crafted in hand-optimized machine cod...
Preprint
Code that is highly optimized poses a problem for program-level verification. Programmers can employ various clever tricks that are non-trivial to reason about. For cryptography on low-power devices, it is nonetheless crucial that implementations be functionally correct, secure, and efficient. These are usually crafted in hand-optimized machine cod...
Chapter
Energy consumption in embedded systems plays a large role as it has implications for the power supply and the batteries used. Programmers of these systems should consider how their programs control external devices, and where energy consumption hotspots lie. We present a static analysis to predict and visualize energy consumption of external device...
Conference Paper
Full-text available
Software engineers working in industry seldom try to apply formal methods to solve problems. There are various reasons for this. Sometimes these reasons are understandable---the cost of using formal methods does not make economic sense in many contexts. However, formal methods are also often greeted with scepticism. Formal methods are assumed to t...
Article
Full-text available
This article addresses the problem of computing an upper bound of the degree d of a polynomial solution P(x) of an algebraic difference equation of the form G(x)(P(x−τ1),…,P(x−τs))+G0(x)=0 when such P(x) with the coefficients in a field K of characteristic zero exists and where G is a non-linear s-variable polynomial with coefficients in K[x] and G...
Chapter
Service-oriented architecture (SOA) is a popular architectural style centered around services, loose coupling, and interoperability. A recurring problem in SOA development is the Button Problem; how to ensure that whenever a “button is pressed” on some service—no matter what—the performance of other key services remains unaffected? The Button Probl...
Chapter
Education in general and cybersecurity education in particular can be made more attractive by adding hands-on experience to classrooms. This requires new technology, such as virtualisation, to be developed fully geared towards the needs of educational purposes. Over the years, several techniques have been developed by the authors. In this paper, th...
Chapter
Manually reasoning about candidate refactorings to alleviate bottlenecks in service-oriented systems is hard, even when using high-level architecture/deployment models. Nevertheless, it is common practice in industry. Elmo is a decision support tool that helps service-oriented architects and deployment engineers to analyze and refactor architectura...
Preprint
Full-text available
We present twenty-five C programs, as a benchmark for C program verification using formal methods. This benchmark can be used for system demonstration, for comparison of verification effort between systems, and as a friendly competition. For this last purpose, we give a scoring formula that allows a verification system to score up to a hundred poin...
Conference Paper
We explore a way to find energy deficiencies in code by model checking, both properties related to utilisation (energy hotspots) and not related to utilisation (energy bugs). Temporal logic properties (expressed using LTL) finds these deficiencies during the development of a system, employing a novel energy-inefficiency metric. The formal model is...
Conference Paper
Botnets constitute a primary threat to Internet security. The ability to accurately distinguish botnet traffic from non-botnet traffic can help significantly in mitigating malicious botnets. We present a novel approach to botnet detection that applies deep learning on flows of TCP/UDP/IP-packets. In our experimental results with a large dataset, we...
Article
Full-text available
Energy consumption analysis of IT-controlled systems can play a major role in minimising the overall energy consumption of such IT systems, during the development phase, or for optimisation in the field. Recently, a precise energy analysis was developed, with the property of being parametric in the hardware. In principle, this creates the opportuni...
Article
A survey was conducted to provide a state of the art of online banking authentication and communications security implementations. Between global regions the applied (single or multifactor) authentication schemes differ greatly, as well as the security of SSL/TLS implementations. Three phases for online banking development are identified. It is pre...
Conference Paper
Energy is becoming a key resource for IT systems. Hence, it can be essential for the success of a system under development to be able to derive and optimise its resource consumption. For large IT systems, compositionality is a key property in order to be applicable in practice. If such a method is hardware parametric, the effect of using different...
Conference Paper
This paper describes some technical and employability skills that are essential for our students to succeed in a career in software development. We conducted research aimed at understanding the students’ problems when required to develop these skills. We explain our techniques for observing skills gaps. Knowledge about these gaps enables us to inte...
Article
Authentication is a major research topic in the information security field. Much has been written about assessing entity (user) authentication methods, but there is a lack of literature concerning the evaluation of financial transaction authentication in online banking. Entity authentication methods have been systematized by quantifying their quali...
Conference Paper
For many applications, performance is paramount. For example, to improve conversion rates in e-commerce applications or to comply with service level agreements. Current trends in enterprise level architecture focus on designing and orchestrating services. These services are typically designed to be functionally isolated from each other up to a cert...
Conference Paper
Online banking relies on user-owned home computers and mobile devices, all vulnerable to man-in-the-middle attacks which are used to steal money from bank accounts. Banks mitigate this by letting users verify information that originates from these untrusted devices. This is not user-friendly since the user has to process the same information twice....
Book
This book constitutes the proceedings of the 4th International Workshop on Foundational and Practical Aspects of Resource Analysis, FOPARA 2015, held in London, UK, in April 2015. The 6 papers presented in this volume were carefully reviewed and selected from 7 submissions.
Conference Paper
An increasing number of students and the trend to enhance traditional on-campus classes to cover the everytime-everywhere character of modern study programmes require new ideas to support students. Especially when students require support while learning independently from the university, e.g. at home in the evening, this cannot be covered satisfyin...
Article
We extend an existing first-order typing system for strictness analysis to the fully higher-order case, covering both the derivation system and the inference algorithm. The resulting strictness typing system has expressive capabilities far beyond that of traditional strictness analysis systems. This extension is developed with the explicit aim of f...
Article
Both operational and denotational semantics are prominent approaches for reasoning about properties of programs and programming languages. In the categorical framework developed by Turi and Plotkin both styles of semantics are unified using a single, syntax independent format, known as GSOS, in which the operational rules of a language are specifie...
Conference Paper
This paper presents an open information exchange protocol for smart charging of Electric Vehicles (EVs). The Open Smart Charging Protocol (OSCP) has been implemented in a challenging and successful field project at Dutch DSO Enexis. The project was executed in cooperation with charge service provider GreenFlux, Dutch public charge station operator...
Article
Software development education often suffers from the image of tedious programming, leading to low levels of activity. In general, gamification can help making tasks more attractive. This paper reports on a gamification case study, indicating that the use of gamification may be an effective instrument to increase the activity of students in Educati...
Conference Paper
Energy inefficient software implementations may cause battery drain for small systems and high energy costs for large systems. Dynamic energy analysis is often applied to mitigate these issues. However, this is often hardware-specific and requires repetitive measurements using special equipment. We present a static analysis deriving upper-bounds fo...
Conference Paper
Size analysis can be an important part of heap consumption analysis. This paper is a part of ongoing work about typing support for checking output-on-input size dependencies for function definitions in a strict functional language. A significant restriction for our earlier results is that inner data structures (e.g. in a list of lists) all must hav...
Article
For real-time and embedded systems, limiting the consumption of time and memory resources is often an important part of the requirements. Being able to predict bounds on the consumption of such resources during the development process of the code can be of great value. In this paper, we focus mainly on memory-related bounds. Recent research results...
Article
Full-text available
Computer science curricula in higher education include practical courses, where students can apply, deepen and anchor their theoretical knowledge. Universities have to provide a learning environment which fits into the educational system and also meets the needs of the students. While having various technical concepts to support the students, educa...
Conference Paper
hile green software is a popular topic in computer science nowadays, the average programmer still has little options for analysis of the energy-efficiency of his/her software. Analysis is mostly done dynamically, for which a complex measurement set-up is needed. Using a static analysis which predicts the energy-consumption, would be more accessible...
Conference Paper
Supporting students with feedback and guidance while they work on networking exercises can be provided in on-campus universities by human course advisors. A shortcoming however is that these advisors are not continuously available for the students, especially when students are working on exercises independently from the university, e.g. at home usi...
Article
Contrary to linear difference equations, there is no general theory of difference equations of the form G(P(x−τ1),…,P(x−τs))+G0(x)=0G(P(x−τ1),…,P(x−τs))+G0(x)=0, with τi∈Kτi∈K, G(x1,…,xs)∈K[x1,…,xs]G(x1,…,xs)∈K[x1,…,xs] of total degree D⩾2D⩾2 and G0(x)∈K[x]G0(x)∈K[x], where KK is a field of characteristic zero. This article concerns the following p...
Conference Paper
Current electricity grids are developing towards so called “Smart Grids”. Within these Smart Grids information and communication technology (ICT) will play a role in new categories of communication, measurement and control equipment in the electricity grid. Furthermore, it will play a role in the communication between the main actors of a Smart Gri...
Conference Paper
Many cyber-physical applications are responsible for safety critical or business critical infrastructure. Such applications are often controlled through a web interface. They manage sensitive databases, drive important SCADA systems or represent imperative business processes. A vast majority of such web applications are well-known to be vulnerable...
Conference Paper
Full-text available
The ability to independently describe operational rules is indispensable for a modular description of programming languages. This paper introduces a format for open-ended rules and proves that conservatively adding new rules results in well-behaved translations between the models of the operational semantics. Silent transitions in our operational m...
Conference Paper
Computer science curricula include practical courses, where students can apply, deepen and anchor their theoretical knowledge. Universities have to provide a learning environment which fits into the educational system and also meets the needs of the students. While having various technical concepts to support the students, educational staff has to...
Conference Paper
Wi-Fi Protected Setup is an attempt to simplify configuration of security settings for Wi-Fi networks. It offers, among other methods, Push-Button Configuration (PBC) for devices with a limited user-interface. There are however some security issues in PBC. A solution to these issues was proposed in the form of Tamper-Evident Pairing (TEP). TEP is b...
Data
A security assessment is given of the BlackBoard Learn electronic learning environment. As a result of this assessment the board of the Radboud University Nijmegen has decided to stop with summative testing using BlackBoard, to quit using Blackboard Grade Center and to use the Blackboard discussion forum for non-privacy-sensitive topics only.
Article
Welcome to the latest installment of "EduBits," your quarterly pipeline to new and exciting happenings in the world of ACM education. In this edition, the ACM Education Board publishes an important white paper on online learning. In addition, Cameron ...
Article
State-based interactive applications, whether they run on the desktop or as a web application, can be considered as collections of interconnected editors of structured values that allow users to manipulate data. This is the view that is advocated by the GEC and iData toolkits, which offer a high level of abstraction to programming desktop and web G...
Conference Paper
This paper presents the ICT architecture for a Smart Grid project with consumer interaction in the city of Zwolle, the Netherlands. It describes the privacy and security enhancing measures applied to ensure a positive sum of necessary functionality and respect for consumer's privacy and secure business operation. The project was executed by Enexis...
Conference Paper
This paper presents a flexible and privacy friendly ICT architecture for Smart Charging of EVs. It has been implemented for demonstration purposes at Enexis (Dutch DSO), in cooperation with EV market parties. The architecture aims at the proposed market model for public EV charging infrastructures, to be embedded in the Dutch liberalized electricit...
Article
Functional programming languages are often praised for creating the capability of writing beautiful code. Furthermore, an often mentioned advantage is that it is easy to reason about properties of functional programs. Such reasoning can be either formal or informal. This might lead to the assumption that really beautiful code is also really easy to...
Conference Paper
This work focuses on checking size annotations of higher-order polymorphic functional programs supporting nested lists. These annotations are in a lambda-calculus that formalize non-linear and non-monothonic polynomial relations between the sizes of arguments and those of the corresponding results of functions. The presented sizing rules straightfo...
Conference Paper
We extend an existing first-order typing system for strictness analysis to the fully higher-order case. The resulting fully higher-order strictness typing system has an expressivity beyond that of traditional strictness analysis systems. This extension is developed with the explicit aim to formally prove that the higher-order strictness typing is s...
Conference Paper
Full-text available
For real-time and embedded systems limiting the consumption of time and memory resources is often an important part of the requirements. Being able to predict bounds on the consumption of these resources during the development process of the code can be of great value. Recent research results have advanced the state of the art of resource consumpti...
Conference Paper
Full-text available
Open Educational Resources (OER) seem to be a natural fit with a distance learning university: open resources are in line with the university's mission to provide access to academic education, most material is available in digital form, and even the name of distance learning universities often contains the word "open". However, in practice, it is d...
Article
CSERC'2012, the second Computer Science Education Research Conference aims at creating a platform for researchers in the field of computer science education. Over the years it has become clear that there is a need for more fundamental knowledge about, and input into computer science education. To contribute to this, last year CSERC'2011 has been or...
Conference Paper
This paper presents a proof framework for verifying concurrent programs that communicate using global variables. The approach is geared towards verification of models that have an unbounded state size and are as close to the original code as possible. The bakery algorithm is used as a demonstration of the framework basics, while the (full) framewor...
Conference Paper
Full-text available
The use of verification tools to produce formal specifications of digital systems is commonly recommended, especially when dealing with safety-critical systems. These formal specifications often consist of segments which can automatically be translated into executable code. We propose to generate both code and assertions in order to support verific...
Article
This paper presents the preemption abstraction, an abstrac- tion technique for lightweight verification of one sequential component of a concurrent system. Thereby, different components of the system are permitted to interfere with each other. The preemption abstraction yields a sequential abstract system that can easily be described in the higher-...
Book
This book constitutes the refereed post-proceedings of the Second International Workshop on Foundational and Practical Aspects of Resource Analysis, FOPARA 2011, held in Madrid, Spain, in May 2011. The 8 revised full papers were carefully reviewed and selected from the papers presented at the workshop and papers submitted following an open call for...
Article
Full-text available
The Trends in Functional Programming Symposia are an annual event dedicated to promoting new research directions in functional programming and to investigating the relationship between functional programming and other branches of Computer Science. The TFP series started in 1999 and the 2008 meeting marked the first decade of the symposium. In this...
Article
Full-text available
One of the proposed solutions for improving the scalability of semantics of programming languages is Component-Based Semantics, introduced by Peter D. Mosses. It is expected that this framework can also be used effectively for modular meta theoretic reasoning. This paper presents a formalization of Component-Based Semantics in the theorem prover Co...
Conference Paper
Full-text available
The COSTA system infers resource consumption bounds from Java bytecode using an internal recurrence solver PUBS. This paper suggests an improvement of the COSTA system, such that it can solve a larger number of recurrences. The idea is to replace one of its static analyses, the ranking function analysis, by another kind of analysis, height analysis...
Article
The classic readers–writers problem has been extensively studied. This holds to a lesser degree for the reentrant version, where it is allowed to nest locking actions. Such nesting is useful when a library is created with various procedures each starting and ending with a lock operation. Allowing nesting makes it possible for these procedures to ca...
Book
Full-text available
Van de Veer, G., Sloep, P. B., & Van Eekelen, M. (Eds.) (2011). Proceedings Computer Science Education Research Conference (CSERC '11). April 7 and 8, 2011. Heerlen, The Netherlands: ACM. Retrieved from http://dl.acm.org/citation.cfm?id=2043594&coll=DL&dl=GUIDE
Article
Full-text available
Finding ranking functions for the loops in a program is a prerequisite for proving its termination and analysing its resource usage. From its ranking function one easily derives a symbolic upper bound on the number of iterations of a loop. Such symbolic loop bounds can be used to derive concrete time and memory-usage bounds for complete programs. T...
Conference Paper
Full-text available
This paper presents the results of the validation and verification of a crucial component of BOS, a large safety-critical system that decides when to close and open the Maeslantkering, a storm surge barrier near the city of Rotterdam in the Netherlands. BOS was specified in the formal language Z and model checking has been applied to some of its su...
Article
Full-text available
On w -bit processors which are much faster at multiplying two w -bit integers than at dividing 2 w -bit integers by w -bit integers, reductions of large integers by moduli M smaller than 2 w -1 are often implemented suboptimally, leading applications to take excessive processing time. We present a modular reduction algorithm implementing division b...
Article
Full-text available
Certification of software artifacts offers organizations more certainty and confidence about software. Certification of software helps software sales, acquisition, and can be used to certify legislative compliance or to achieve acceptable deliverables in outsourcing. In this article, we present a software product certification model. This model has...
Conference Paper
Full-text available
This paper presents an interpolation-based method of inferring arbitrary degree loop-bound functions for Java programs. Given a loop, by its "loop-bound function" we mean a function with the numeric program variables as its parameters, that is used to bound the number of loop-iterations. Using our analysis, loop-bound functions that are polynomials...