DocumentCode
1359218
Title
Hypersequential programming: a new way to develop concurrent programs
Author
Uchihira, Naoshi ; Honiden, Shinichi ; Seki, Toshibumi
Author_Institution
Syst. & Software Eng. Lab., Toshiba Corp., Kawasaki, Japan
Volume
5
Issue
3
fYear
1997
Firstpage
44
Lastpage
54
Abstract
The authors present hypersequential programming, a new method that eases the difficulty of concurrent programming and makes the concurrent program highly reliable. The difficulty of concurrent programming is due mainly to its nondeterminism. The authors classify nondeterminism into three types: intended, harmful, and persistent. In traditional concurrent programming, a programmer first designs and implements programs so as to maximize concurrency, which may include all three types of nondeterminism. She then tries to detect harmful nondeterministic behavior by testing and debugging them. However, removing all harmful nondeterministic behavior is actually very difficult. Hypersequential programming, on the other hand, first serializes the concurrent program to remove all types of nondeterminism, and then the programmer tests and debugs it as a sequential program. Finally, it is parallelized by restoring only intended and persistent nondeterminism. Hypersequential programming can develop a highly reliable concurrent program, because the injection of harmful nondeterminism is precluded. In this article, the authors also present a simple embodiment of hypersequential programming using Petri nets
Keywords
parallel programming; program debugging; Petri nets; concurrency; concurrent programming; concurrent programs; debugs; hypersequential programming; nondeterminism; parallelized; Application software; Computer industry; Concurrent computing; Debugging; Distributed computing; Parallel programming; Programming profession; Testing; Timing; Topology;
fLanguage
English
Journal_Title
Concurrency, IEEE
Publisher
ieee
ISSN
1092-3063
Type
jour
DOI
10.1109/4434.605918
Filename
605918
Link To Document