DocumentCode
3399471
Title
Synthesis-Based Loose Programming
Author
Lamprecht, Anna-Lena ; Naujokat, Stefan ; Margaria, Tiziana ; Steffen, Bernhard
Author_Institution
Dept. for Programming Syst., Tech. Univ. Dortmund, Dortmund, Germany
fYear
2010
fDate
Sept. 29 2010-Oct. 2 2010
Firstpage
262
Lastpage
267
Abstract
In this paper we present loose programming, an approach designed to enable process developers to design their application-specific processes in an intuitive style. Key to this approach is the concept of loose specification, a graphical formalism that allows developers to express their processes just by sketching them as kinds of flow graphs without caring about types, precise knowledge about the available process components or the availability of resources. They only have to specify the rough process flow graphically in terms of ontologically defined `semantic´ entities. These loose specifications are then concretized to fully executable process code automatically by means of a combination of 1) data-flow analysis, ensuring the availability of the required resources, 2) temporal logic-based process synthesis, resolving type conflicts and taking care of correct component instantiation, and 3) model checking, to ensure global intents and invariants expressed in temporal logic.
Keywords
data flow analysis; software engineering; application-specific processes; data flow analysis; flow graphs; graphical formalism; intuitive style; loose specification; process developers; synthesis based loose programming; temporal logic-based process synthesis; Analytical models; Classification algorithms; Concrete; Programming; Semantics; Software; Taxonomy; data-flow analysis; loose specification; model checking; synthesis;
fLanguage
English
Publisher
ieee
Conference_Titel
Quality of Information and Communications Technology (QUATIC), 2010 Seventh International Conference on the
Conference_Location
Porto
Print_ISBN
978-1-4244-8539-0
Electronic_ISBN
978-0-7695-4241-6
Type
conf
DOI
10.1109/QUATIC.2010.53
Filename
5655574
Link To Document