Formalizing the design of embedded software using sequence diagrams and abstract state machines

  • Authors:
  • Abdel Ejnioui;Carlos E. Otero;Abrar A. Qureshi

  • Affiliations:
  • University Of South Florida, Lakeland, Florida;Florida Institute of Technology, Melbourne, Florida;University of Virginia's College at Wise, Wise, Virginia

  • Venue:
  • Proceedings of the 2nd annual conference on Research in information technology
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

The latest specification of the Unified Modeling Language (UML) 2.x revised completely the structure and elements of sequence diagrams by expanding their modularity via interaction fragments. These fragments are based on a set of operators that can simplify the diagram's structure or alter the order of events in the diagram. Unfortunately, the new revision introduced a significant degree of ambiguity in the interpretation of these diagrams. This ambiguity is exacerbated by the fact that different styles of sequence diagrams can be used for different purposes of modeling and analysis. To address this ambiguity, this paper presents a formal model in operational semantics based on Abstract State Machines (ASM) to define the semantics of sequence diagrams. Specifically, update rules are devised for ASMs to handle important behaviors present in most embedded software operating in distributed or parallel environments. The approach in this paper assumes that lifeline processes in a sequence diagram act as autonomous agents that communicate by exchanging messages among each other in asynchronous and distributed manner. This formal model can be readily extended to define the semantics of the remaining operators including information about time intervals and constraints.