Alexandr Naumchev

Dr. Alexandr Naumchev

orcid

Research Focus & Metrics

Academic Career Length

11Years (2016-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
25 May 2021 in ACM Computing Surveys
Verified
Journal Article
Open access
JBJean-Michel Bruel
Jean-Michel Bruel
SESophie Ebersold
Sophie Ebersold
FGFlorian Galinier
Florian Galinier
MMManuel Mazzara
Manuel Mazzara
ANAlexandr Naumchev
Alexandr Naumchev
BMBertrand Meyer
Bertrand Meyer
A major determinant of the quality of software systems is the quality of their requirements, which should be both understandable and precise. Most requirements are written in natural language, which is good for understandability but lacks precision. To make requirements precise, researchers have for years advocated the use of mathematics-based notations and methods, known as “formal.” Many exist, differing in their style, scope, and applicability. The present survey discusses some of the main formal approaches and compares them to informal methods. The analysis uses a set of nine complementary criteria, such as level of abstraction, tool availability, and traceability support. It classifies the approaches into five categories based on their principal style for specifying requirements: natural-language, semi-formal, automata/graphs, mathematical, and seamless (programming-language-based). It includes examples from all of these categories, altogether 21 different approaches, including for example SysML, Relax, Eiffel, Event-B, and Alloy. The review discusses a number of open questions, including seamlessness, the role of tools and education, and how to make industrial applications benefit more from the contributions of formal approaches.

1 July 2016
Verified
Conference Paper
Closed access
ANAlexandr Naumchev
Alexandr Naumchev
BMBertrand Meyer
Bertrand Meyer
Existing techniques of Design by Contract do not allow software developers to specify complete contracts in many cases. Incomplete contracts leave room for malicious implementations. This article complements Design by Contract with a simple yet powerful technique that removes the problem without adding syntactical mechanisms. The proposed technique makes it possible not only to derive complete contracts, but also to rigorously check and improve completeness of existing contracts without instrumenting them.

19 January 2019
Verified
Book Chapter
Closed access
PDF file
Manuel MazzaraManuel Mazzara
Manuel Mazzara
ANAlexandr Naumchev
Alexandr Naumchev
LSLarisa Safina
Larisa Safina
ASAlberto Sillitti
Alberto Sillitti
KUKonstantin Urysov
Konstantin Urysov

1 September 2017 in Computer Languages, Systems & Structures
Verified
Journal Article
Closed access
ANAlexandr Naumchev
Alexandr Naumchev
BMB. Meyer
B. Meyer

28 June 2016
Verified
Book Chapter
Closed access
PDF file
ANAlexandr Naumchev
Alexandr Naumchev
BMBertrand Meyer
Bertrand Meyer
VRVictor Rivera
Victor Rivera

20 December 2020 in Modeling and Analysis of Information Systems
Verified
Journal Article
Open access
PDF file
VKVladimir Aleksandrovich Kukharenko
Vladimir Aleksandrovich Kukharenko
KZKirill Viktorovich Ziborov
Kirill Viktorovich Ziborov
RSRafael Faritovich Sadykov
Rafael Faritovich Sadykov
ANAlexandr Naumchev
Alexandr Naumchev
RRRuslan Maratovich Rezin
Ruslan Maratovich Rezin
LMLeonid Albertovich Merkin-Janson
Leonid Albertovich Merkin-Janson
The extent of formal verification methods applied to industrial projects has always been limited. The proliferation of distributed ledger systems (DLS), also known as blockchain, is rapidly changing the situation. Since the main area of DLSs' application is the automation of financial transactions, the properties of predictability and reliability are critical for implementing such systems. The actual behavior of the DLS is determined by the chosen consensus protocol, which properties require strict specification and formal verification. Formal specification and verification of the consensus protocol is necessary but not sufficient. It is required to ensure that the software implementation of the DLS nodes complies with this protocol. The verified software implementation of the protocol must run on a fairly reliable operating system. The so-called “smart contracts”, which are an important part of the applied implementations of specific business processes based on DLSs, must be verifiable as well. In this paper, we describe an ongoing industrial project that will result in a DLS verified at least at the four technological levels described above. We then share our experience with the formal specification and verification of HotStuff, a leader-based fault-tolerant protocol that ensures reaching distributed consensus in the presence of Byzantine processes.