1 Introducing the special issue

Formal methods are paramount to ensure strong guarantees on the correct behavior of software. Based on mathematics and logic, formal methods help practitioners construct technology that can ensure increasingly important concerns such as safety, security, reliability and accountability. This special issue is dedicated to program analysis techniques that can be used to improve the quality of software products.

This special issue was announced during the track on Software Verification and Testing (SVT) at the \(34^{\mathrm{th}}\) ACM/SIGAPP Symposium On Applied Computing (SAC). Following an open call, this issue results in 4 papers that were selected out of 12 submissions after a careful reviewing process. The papers are briefly discussed as follows.

In “Model-Based Test Case Generation from UML Sequence Diagrams using Extended Finite State Machines”, Rocha, Simão and Sousa introduce a systematic procedure for the generation of tests from UML models. In particular, they show how to transform UML sequence diagrams into extended finite state machines, which in turn can be used for systematic test case generation.

In “Verification Supported Refactoring of Embedded SQL”, Spasić and Janic̆ić consider the analysis of refactorings in database-based applications. In particular, they propose an analysis approach that links the semantics of sql queries to the semantics of imperative programs, to reason about functional equivalence of (refactored) sql-based functions.

In “Classification of Application Reviews into Software Maintenance Tasks Using Data Mining Techniques”, Al-Hawari, Najadat and Shatnawi consider the problem of automatically classifying mobile applications reviews. In particular, they show how to use associative classification algorithms to investigate the performance of multiple classifiers, in relation to maintenance tasks.

In “Reductions and Abstractions for Formal Verification of Distributed Round-based Algorithms”, Barbosa, Fonseca and Araujo consider the problem of applying model checking to round-based algorithms. In particular, they show how to use templates to reduce the modeling effort, and present reduction techniques to mitigate the state-explosion problem.

Collectively, these papers tackle cutting-edge topics thereby appealing to the experts in the field.

Finally, the guest editors thank the authors and the reviewers who contributed to the special issue.