Modular Programming and Reasoning for Living with Uncertainty

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

Abstract

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
Pages220-244
Number of pages25
ISBN (Print)9783030291563
DOIs
Publication statusPublished - Jan 1 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
Volume1077
ISSN (Print)1865-0929
ISSN (Electronic)1865-0937

Conference

Conference13th International Conference on Software Technologies, ICSOFT 2018
CountryPortugal
CityPorto
Period7/26/187/28/18

Fingerprint

Programming
Reasoning
Uncertainty
Software engineering
Software Development
Agile Methods
Labeled Transition System
Requirements
Plug-in
Tracking System
Modularity
Software Engineering
Correctness
Verify
Alternatives
Model

All Science Journal Classification (ASJC) codes

  • Computer Science(all)
  • Mathematics(all)

Cite this

Ubayashi, N., Kamei, Y., & Sato, R. (2019). Modular Programming and Reasoning for Living with Uncertainty. In L. A. Maciaszek, L. A. Maciaszek, & M. van Sinderen (Eds.), Software Technologies - 13th International Conference, ICSOFT 2018, Revised Selected Papers (pp. 220-244). (Communications in Computer and Information Science; Vol. 1077). Springer Verlag. https://doi.org/10.1007/978-3-030-29157-0_10

Modular Programming and Reasoning for Living with Uncertainty. / Ubayashi, Naoyasu; Kamei, Yasutaka; Sato, Ryosuke.

Software Technologies - 13th International Conference, ICSOFT 2018, Revised Selected Papers. ed. / Leszek A. Maciaszek; Leszek A. Maciaszek; Marten van Sinderen. Springer Verlag, 2019. p. 220-244 (Communications in Computer and Information Science; Vol. 1077).

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

Ubayashi, N, Kamei, Y & Sato, R 2019, Modular Programming and Reasoning for Living with Uncertainty. in LA Maciaszek, LA Maciaszek & M van Sinderen (eds), Software Technologies - 13th International Conference, ICSOFT 2018, Revised Selected Papers. Communications in Computer and Information Science, vol. 1077, Springer Verlag, pp. 220-244, 13th International Conference on Software Technologies, ICSOFT 2018, Porto, Portugal, 7/26/18. https://doi.org/10.1007/978-3-030-29157-0_10
Ubayashi N, Kamei Y, Sato R. Modular Programming and Reasoning for Living with Uncertainty. In Maciaszek LA, Maciaszek LA, van Sinderen M, editors, Software Technologies - 13th International Conference, ICSOFT 2018, Revised Selected Papers. Springer Verlag. 2019. p. 220-244. (Communications in Computer and Information Science). https://doi.org/10.1007/978-3-030-29157-0_10
Ubayashi, Naoyasu ; Kamei, Yasutaka ; Sato, Ryosuke. / Modular Programming and Reasoning for Living with Uncertainty. Software Technologies - 13th International Conference, ICSOFT 2018, Revised Selected Papers. editor / Leszek A. Maciaszek ; Leszek A. Maciaszek ; Marten van Sinderen. Springer Verlag, 2019. pp. 220-244 (Communications in Computer and Information Science).
@inproceedings{620df6c954c2436b9f3c3f663d48c763,
title = "Modular Programming and Reasoning for Living with Uncertainty",
abstract = "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.",
author = "Naoyasu Ubayashi and Yasutaka Kamei and Ryosuke Sato",
year = "2019",
month = "1",
day = "1",
doi = "10.1007/978-3-030-29157-0_10",
language = "English",
isbn = "9783030291563",
series = "Communications in Computer and Information Science",
publisher = "Springer Verlag",
pages = "220--244",
editor = "Maciaszek, {Leszek A.} and Maciaszek, {Leszek A.} and {van Sinderen}, Marten",
booktitle = "Software Technologies - 13th International Conference, ICSOFT 2018, Revised Selected Papers",
address = "Germany",

}

TY - GEN

T1 - Modular Programming and Reasoning for Living with Uncertainty

AU - Ubayashi, Naoyasu

AU - Kamei, Yasutaka

AU - Sato, Ryosuke

PY - 2019/1/1

Y1 - 2019/1/1

N2 - 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.

AB - 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.

UR - http://www.scopus.com/inward/record.url?scp=85071687729&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85071687729&partnerID=8YFLogxK

U2 - 10.1007/978-3-030-29157-0_10

DO - 10.1007/978-3-030-29157-0_10

M3 - Conference contribution

AN - SCOPUS:85071687729

SN - 9783030291563

T3 - Communications in Computer and Information Science

SP - 220

EP - 244

BT - Software Technologies - 13th International Conference, ICSOFT 2018, Revised Selected Papers

A2 - Maciaszek, Leszek A.

A2 - Maciaszek, Leszek A.

A2 - van Sinderen, Marten

PB - Springer Verlag

ER -