Modular Programming and Reasoning for Living with Uncertainty

Research output: Chapter in Book/Report/Conference proceedingConference contribution

2 Citations (Scopus)


Embracing uncertainty in software development is one of the crucial research topics in software engineering. In most projects, we have to deal with uncertain concerns by using informal ways such as documents, mailing lists, or issue tracking systems. This task is tedious and error-prone. Especially, uncertainty in programming is one of the challenging issues to be tackled, because it is difficult to verify the correctness of a program when there are uncertain user requirements, unfixed design choices, and alternative algorithms. If uncertainty can be dealt with modularly, we can add or delete uncertain concerns to/from code whenever they arise or are fixed to certain concerns. This paper proposes a new programming and reasoning style based on Modularity for Uncertainty. The iArch-U IDE (Integrated Development Environment) is developed to support uncertainty-aware software development. The combined usage of a type checker and a model checker in iArch-U plays an important role in verifying whether or not some important properties are guaranteed even if uncertainty remains in a program. Our model checker is based on LTSA (Labelled Transition System Analyzer) and is implemented as an Eclipse plug-in. Agile methods embrace change to accept changeable user requirements. On the other hand, our approach embraces uncertainty to support exploratory software development.

Original languageEnglish
Title of host publicationSoftware Technologies - 13th International Conference, ICSOFT 2018, Revised Selected Papers
EditorsLeszek A. Maciaszek, Leszek A. Maciaszek, Marten van Sinderen
PublisherSpringer Verlag
Number of pages25
ISBN (Print)9783030291563
Publication statusPublished - 2019
Event13th International Conference on Software Technologies, ICSOFT 2018 - Porto, Portugal
Duration: Jul 26 2018Jul 28 2018

Publication series

NameCommunications in Computer and Information Science
ISSN (Print)1865-0929
ISSN (Electronic)1865-0937


Conference13th International Conference on Software Technologies, ICSOFT 2018

All Science Journal Classification (ASJC) codes

  • Computer Science(all)
  • Mathematics(all)


Dive into the research topics of 'Modular Programming and Reasoning for Living with Uncertainty'. Together they form a unique fingerprint.

Cite this