Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Generation of Execution Sequences for Modular Time Critical Systems

Published: 01 February 2000 Publication History

Abstract

We define methods for generating execution sequences for time-critical systems based on their modularized formal specification. An execution sequence represents a behavior of a time critical system and can be used, before the final system is built, to validate the system specification against the user requirements (specification validation) and, after the final system is built, to verify whether the implementation satisfies the specification (functional testing). Our techniques generate execution sequences in the large, in that we focus on the connections among the abstract interfaces of the modules composing a modular specification. Execution sequences in the large are obtained by composing execution sequences in the small for the individual modules. We abstract from the specification languages used for the individual modules of the system, so our techniques can also be used when the modules composing the system are specified with different formalisms. We consider the cases in which connections give rise to either circular or noncircular dependencies among specification modules. We show that execution sequence generation can be carried out successfully under rather broad conditions and we define procedures for efficient construction of execution sequences. These procedures can be taken as the basis for the implementation of (semi)automated tools that provide substantial support to the activity of specification validation and functional testing for industrially-sized time critical systems. In addition, we show how we have applied our techniques to an industrial-strength case study with the aid of a prototype tool.

References

[1]
R.W. Butler and G.B. Finelli, “The Infeasibility of Quantifying the Reliability of Life-Critical Real-Time Software,” IEEE Trans. Software Eng., vol. 19, no. 1, pp. 3-12, Jan. 1993.
[2]
R. Braeck and O. Haugen, Engineering Real-Time Systems: An Object-Oriented Methodology Using SDL. New York, London: Prentice Hall, 1993.
[3]
M. Basso E. Ciapessoni E. Crivelli D. Mandrioli A. Morzenti E. Ratto and P. San Pietro, “Experimenting a Logic-Based Approach to the Specification and Design of the Control System of a Pondage Power Plant,” Proc. Workshop Industrial Application of Formal Methods, Apr. 1995.
[4]
K.T. Cheng and J.Y. Jou, “Functional Test Case Generation for Finite State Machines,” Proc. IEEE Int'l Testing Conf., pp. 162-168, 1990.
[5]
A. Coen-Porisini R. Kemmerer and D. Mandrioli, “A Formal Framework for ASTRAL Intra Level Proof Obligations,” IEEE Trans. Software Eng., vol. 20, no. 8, pp. 548-561, Aug. 1994.
[6]
A. Coen-Porisini, “An Environment Supporting the Execution of TRIO Formal Specifications,” Technical Report 96.129, Dipartimento di Elettronica e Informazione, Politecnico di Milano, 1996.
[7]
J. Chang D.J. Richardson and S. Sankar, “Structural Specification-Based Testing with ADL,” Proc. Int'l Symp. Software Testing and Analysis, Jan. 1996.
[8]
E.H.H. Dürr and J. van Katwiik, “VDM++: A Formal Specification Language for Object-Oriented Designs,” Proc. Int'l Conf. Technology of Object-Oriented Languages and Systems, TOOLS 7, G. Heeg, B. Mugnusson, and B. Meyer, eds., pp. 63-78, 1992.
[9]
L.K. Dillon and Q. Yu, “Oracles for Checking Temporal Properties of Concurrent Systems,” Proc. Second ACM SIGSOFT Symp. Foundations of Software Eng., vol. 19, no. 5, pp. 140-153, Dec. 1994.
[10]
B. Dasarathy, “Timing Constraints of Real-Time Systems: Constructs for Expressing Them, Methods of Validating Them,” IEEE Trans. Software Eng., vol 11, no. 1, pp. 80-86, Jan. 1985.
[11]
O.J. Dahl E.W. Dijkstra and C.A.R. Hoare, Structured Programming. New York: Academic Press, 1972.
[12]
R.A. DeMillo M.W. McCracken R.J. Martin and J.F. Passafiume, Software Testing and Evaluation. Menlo Park, Calif.: Benjamin Cummings, 1987.
[13]
P. Eades X. Lin and W.F. Smyth, “A Fast and Effective Heuristic for the Feedback Arc Set Problem,” Information Processing Letters, vol. 47, pp. 319-323, 1993.
[14]
M. Felder and A. Morzenti, “Validating Real-Time Systems by History-Checking TRIO Specifications,” ACM Trans. Software Eng. and Methodologies, vol. 3, no. 4, Oct. 1994.
[15]
S. Fujiwara V.G. Bochmann F. Khendek M. Amalou and A. Ghedamsi, “Test Selection Based on Finite State Machine Model,” IEEE Trans. Software Eng., vol. 17, no. 6, pp. 591-603, June 1991.
[16]
M.M. Flood, “Exact and Heuristic Algorithms for the Weighted Feedback Arc Set Problem: A Special Case of the Skew-Symmetric Quadratic Assignment Problem,” NETWORKS, vol. 20, pp. 1-23, 1990.
[17]
M.R. Garey and D.S. Johnson, Computer and Intractability. A Guide to the Theory of NP-Completeness. San Francisco: W.H. Freeman, 1979.
[18]
A. Gargantini L. Liberati A. Morzenti and C. Zacchetti, “Specifying, Validating, and Testing a Traffic Management System in the TRIO Environment,” Proc. COMPASS, 11th Ann. Conf. Computer Assurance, June 1996.
[19]
R. Hassin and S. Rubinstein, “Approximations for the Maximum Acyclic Subgraph Problem,” Information Processing Letters, vol. 51, pp. 133-140, 1994.
[20]
W.E. Howden, Functional Program Testing Analysis. McGraw-Hill, 1987.
[21]
R.A. Kemmerer, “Testing Formal Specifications to Detect Design Errors,” IEEE Trans. Software Eng., vol. 11, no. 1, pp. 32-43, Jan. 1985.
[22]
L. Lamport, “The Temporal Logic of Actions,” IEEE Trans. Programming Language and System, vol. 16, no. 3, pp. 872-923, May, 1994.
[23]
K. Lano, “Z++, an Object-Oriented Extension to Z,” Proc. Fourth Ann. Z User Meeting, Workshop in Computing, J.E. Nicholls, ed., pp.151-172, 1991.
[24]
G. Luo G.V. Bochman and A. Petrenko, “Test Selection Based on Communicating Nodetermistic Finite State Machines Using a Generalized wp-Method,” IEEE Trans. Software Eng., vol. 20, no. 2, pp. 149-162, Feb. 1994.
[25]
A. Morzenti and P. San Pietro, “Object-Oriented Logic Specifications of Time Critical Systems,” ACM Trans. Software Eng. and Methodology, vol. 3, no. 1, pp. 56-98, Jan. 1994.
[26]
H.K.T. Ma R. Devadas A. Newton and A. Sangiovanni-Vincentelli, “Test Generation for Sequential Circuits,” IEEE Trans. Computer-Aided Design, vol. 7, pp. 1,081-1,093, Oct. 1988.
[27]
A. Morzenti D. Mandrioli and C. Ghezzi, “A Model-Parametric Real-Time Logic,” ACM Trans. Programming Languages and Systems, vol. 14, no. 4, pp. 521-573, Oct. 1992.
[28]
D. Mandrioli S. Morasca and A. Morzenti, “Generating Test Cases for Real-Time Systems from Logic Specifications,” ACM Trans. Computer Systems, vol. 13, no. 4, pp. 365-398, Nov. 1995.
[29]
K. Mehlhorn and S.T. Näher, “Algorithm Design and Software Libraries: Recent Developments in the Leda Project,” Algorithms, Software, Architectures, Information Processing 92, vol. 1, 1992.
[30]
A. Morzenti P. San Pietro and S. Morasca, “A Tool for Automated System Analysis Based on Modular Specifications,” Internal Report 98-071, Politecnico di Milano, Dipartimento di Elettronica e Informazione, 1998
[31]
P. Pulli M. Heikkinen and R. Lintulampi, “Graphical Animation as a Form of Prototyping Real-Time Systems,” Incremental Prototyping Technology for Embedded Real-Time Systems, vol. 5, nos. 2/3, pp. 173-195, 1993.
[32]
A. Petrenko N. Yevtushenko G.V. Bochmann and R. Dssouli, “Testing in Context: Framework and Test Derivation,” Report No. 1,011, Département d'Informatique et de Recherche Opérationnelle, Université de Montréal, 1996.
[33]
D.J. Richardson, “TAOS: Testing with Analysis and Oracle Support,” Proc. Int'l. Symp. Software Testing and Analysis, 1994.
[34]
D.J. Richardson S. Leif Aha and T.O. O'Malley, “Specification-Based Test Oracles for Reactive Systems,” Proc. 14th Int'l Conf. Software Eng., pp. 105-118, 1992.
[35]
B. Selic, “An Efficient Object-Oriented Variation of Statecharts Formalism for Distributed Real-Time Systems,” Proc. IFIP Conf. Hardware Description Languages and Their Applications (CHDL '93), Apr. 1993.
[36]
W.T. Tutte, “Graph Theory,” Encyclopedia of Math., vol. 21, Reading, Mass.: Addison Wesley, 1984.
[37]
M.Y. Vardi and O. Kupferman, “Module Checking,” Proc. Conf. Computer Aided Verification (CAV '96), 1996.

Cited By

View all
  • (2013)Bounded satisfiability checking of metric temporal logic specificationsACM Transactions on Software Engineering and Methodology10.1145/2491509.249151422:3(1-54)Online publication date: 30-Jul-2013
  • (2007)The symmetry of the past and of the futureProceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering10.1145/1287624.1287669(312-320)Online publication date: 7-Sep-2007
  • (2000)A Case Study on Applying a Tool for Automated System Analysis Based on Modular Specifications Written in TRIOAutomated Software Engineering10.1023/A:10087102246117:2(125-155)Online publication date: 1-May-2000

Recommendations

Comments

Information & Contributors

Information

Published In

cover image IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering  Volume 26, Issue 2
February 2000
95 pages
ISSN:0098-5589
Issue’s Table of Contents

Publisher

IEEE Press

Publication History

Published: 01 February 2000

Author Tags

  1. Functional testing
  2. formal specifications
  3. modular notations.
  4. specification testing
  5. structural testing
  6. time critical systems

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 05 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2013)Bounded satisfiability checking of metric temporal logic specificationsACM Transactions on Software Engineering and Methodology10.1145/2491509.249151422:3(1-54)Online publication date: 30-Jul-2013
  • (2007)The symmetry of the past and of the futureProceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering10.1145/1287624.1287669(312-320)Online publication date: 7-Sep-2007
  • (2000)A Case Study on Applying a Tool for Automated System Analysis Based on Modular Specifications Written in TRIOAutomated Software Engineering10.1023/A:10087102246117:2(125-155)Online publication date: 1-May-2000

View Options

View options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media