Abstract
We propose complementing tabular notations used in requirements specifications, such as those used in the SCR method, with a formalism for describing specific, useful, subclasses of computations, i.e., particular combinations of the atomic transitions specified within tables. This provides the specifier with the ability of driving the execution of transitions specified by tables, without the onerous burden of having to introduce modifications into the tabular expressions; thus, it avoids the problem of modifying the object of analysis, which would make the analysis indirect and potentially confusing. This is useful for a number of activities, such as defining test harnesses for tables, and concentrating the analyses on particular, interesting, subsets of computations. Unlike previous approaches, ours allows for the description of a wider class of combinations of the transitions defined by tables, by means of a rich operational language. This language is an extension of the Alloy language, called DynAlloy, whose notation is inspired by that of dynamic logic.
The use of DynAlloy enables us to provide an extra mechanism for the analysis of tabular specifications, based on SAT solving. We will illustrate this and the features of our approach via an example based on a known tabular specification of a simple autopilot system.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Bharadwaj, R., Heitmeyer, C.: Applying the SCR Requirements Specification Method to Practical Systems: A Case Study. In: 21st Software Engineering Workshop, NASA GSFC (1996)
Bharadwaj, R., Heitmeyer, C.: Applying the SCR Requirements Method to a Simple Autopilot. In: Proc. of the Fourth NASA Langley Formal Methods Workshop (1997)
Bultan, T., Heitmeyer, C.: Analyzing Tabular Requirements Specifications using Infinite State Model Checking. In: Proc. of MEMOCODE 2006 (2006)
Frias, M., Galeotti, J.P., López Pombo, C., Aguirre, N.: DynAlloy: Upgrading Alloy with Actions. In: Proc. of ICSE 2005. ACM Press, New York (2005)
Gargantini, A., Heitmeyer, C.: Using Model Checking to Generate Tests from Requirements Specifications. In: Nierstrasz, O., Lemoine, M. (eds.) ESEC 1999 and ESEC-FSE 1999. LNCS, vol. 1687, p. 146. Springer, Heidelberg (1999)
Heitmeyer, C., Bull, A., Gasarch, C., Labaw, B.: SCR*: A Toolset for Specifying and Analyzing Requirements. In: Haveraaen, M., Dahl, O.-J., Owe, O. (eds.) Abstract Data Types 1995 and COMPASS 1995. LNCS, vol. 1130. Springer, Heidelberg (1996)
Heitmeyer, C., Jeffords, R., Labaw, B.: Automated consistency checking of requirements specifications. ACM Trans. on Soft. Eng. and Methodology 5(3) (1996)
Heitmeyer, C., Archer, M., Bharadwaj, R., Jeffords, R.: Tools for constructing requirements specifications: the SCR Toolset at the age of nine. Computer Systems: Science & Engineering 20(1) (2005)
Heninger, K., Kallander, J., Parnas, D., Shore, J.: Software Requirements for the A-7E Aircraft, NLR Memorandum Report 3876, US Naval Research Lab. (1978)
Jackson, D.: Alloy: a lightweight object modelling notation. ACM Trans. on Soft. Eng. and Methodology 11(2) (2002)
Jackson, D.: Software Abstractions: Logic, Language, and Analysis. MIT Press, Cambridge (2006)
Leveson, N., Heimdahl, M., Hildreth, H., Reese, J.: Requirements Specifications for Process-Control Systems. IEEE Trans. on Software Engineering 20(9) (1994)
Owre, S., Rushby, J., Shankar, N.: Analyzing Tabular and State-Transition Specifications in PVS. In: Brinksma, E. (ed.) TACAS 1997. LNCS, vol. 1217. Springer, Heidelberg (1997)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Aguirre, N.M., Frias, M.F., Moscato, M.M., Maibaum, T.S.E., Wassyng, A. (2009). Describing and Analyzing Behaviours over Tabular Specifications Using (Dyn)Alloy. In: Chechik, M., Wirsing, M. (eds) Fundamental Approaches to Software Engineering. FASE 2009. Lecture Notes in Computer Science, vol 5503. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-00593-0_11
Download citation
DOI: https://doi.org/10.1007/978-3-642-00593-0_11
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-00592-3
Online ISBN: 978-3-642-00593-0
eBook Packages: Computer ScienceComputer Science (R0)