Abstract
Open environmental software systems are often time-sensitive, as they need to respond to other entities within the systems and/or in the environments promptly. The timing requirements are therefore an essential part of the system correctness. Scenario-based specifications (SBS) such as message sequence charts and UML interaction models play an important role in specifying open environmental software systems since they intuitively model interactions between different entities. While modelling these systems, the timing requirements can be specified as timing constraints. In this paper, we study the problem of checking the timing consistency of SBS with timing constraints. Although this problem can be transformed into a reachability analysis problem, checking its reachability can still be time-consuming. Therefore, we propose a novel SAT and linear programming (LP) collaborative timing analysis approach named Tassat for the bounded timing analysis of SBS. Instead of using depth-first traversal algorithms, Tassat encodes the structures of the SBS into propositional formulas and adopts SAT solvers to find candidate paths. The timing analysis of candidate paths is then transformed to LP problems, where the irreducible infeasible set of the infeasible paths can be utilized to filter out candidate paths for checking. In addition, we propose an enhanced version of the approach that extends the bounded analysis results to the entire models if the infeasible path segments do not contain intermediate loops. The enhanced algorithm can prove that the given SBS satisfy the required properties on any bound condition. The experimental results show that Tassat is effective and has better performance than existing tools in terms of both time consumption and memory footprint.
Similar content being viewed by others
References
Alur, R., Holzmann Gerard, J., Peled, D.: An analyzer for message sequence charts. In: Margaria, T., Steffen, B. (eds.) Tools and Algorithms for the Construction and Analysis of Systems, pp. 35–48. Springer, Berlin (1996)
Alur, R., Yannakakis, M.: Model checking of message sequence charts. In: Proceedings of the 10th International Conference on Concurrency Theory, CONCUR ’99, pp. 114–129. Springer, London (1999)
Andoni, A., Daniliuc, D., Khurshid, S., Marinov, D.: Evaluating the “small scope hypothesis”. Technical report, MIT CSAIL (2003)
Andrade, L., Fiadeiro, J.L., Gouveia, J., Koutsoukos, G.: Separating computation, coordination and configuration. J. Softw. Maint. Evol. Res. Pract. 14(5), 353–369 (2002)
Auer, M., Meyer, L., Biffl, S.: Explorative UML modeling-comparing the usability of UML tools. In: ICEIS (3), pp. 466–473 (2007)
Auer, M., Tschurtschenthaler, T., Biffl, S.: A flyweight UML modelling tool for software development in heterogeneous environments. In: Proceedings of the 29th Conference on EUROMICRO, EUROMICRO ’03, p. 267. IEEE Computer Society, Washington, DC, USA (2003). http://dl.acm.org/citation.cfm?id=942796.943259
Barrett, C., Tinelli, C.: Satisfiability modulo theories. In: Clarke, E.M., Henzinger, T.A., Veith, H., Bloem, R. (eds.) Handbook of Model Checking, pp. 305–343. Springer, Berlin (2018)
Ben-Abdallah, H., Leue, S.: Timing constraints in message sequence chart specifications. In: Mizuno, T., Shiratori, N., Higashino, T., Togashi, A. (eds.) Formal Description Techniques and Protocol Specification, Testing and Verification, pp. 91–106. Springer (1997)
Biere, A., Cimatti, A., Clarke, E.M., Strichman, O., Zhu, Y., et al.: Bounded model checking. Adv. Comput. 58(11), 117–148 (2003)
Bollobás, B., Béla, B.: Random Graphs, vol. 73. Cambridge University Press, Cambridge (2001)
Bouabana-Tebibel, T.: UML 2 interaction overview diagram validation. In: 2009 Fourth International Conference on Dependability of Computer Systems, pp. 11–16. IEEE (2009)
Büning, H.K., Lettmann, T.: Propositional Logic: Deduction and Algorithms, vol. 48. Cambridge University Press, Cambridge (1999)
Christ, J., Hoenicke, J., Nutz, A.: SMTInterpol: an interpolating SMT solver. In: Donaldson, A.F., Parker, D. (eds.) Model Checking Software—19th International Workshop, SPIN 2012, Oxford, UK, July 23–24, 2012. Proceedings, Lecture Notes in Computer Science, vol. 7385, pp. 248–254. Springer (2012). https://doi.org/10.1007/978-3-642-31759-0_19
Cimatti, A., Mover, S., Tonetta, S.: Efficient scenario verification for hybrid automata. In: Proceedings of the 23rd International Conference on Computer Aided Verification, CAV’11, pp. 317–332. Springer (2011)
Cimatti, A., Mover, S., Tonetta, S.: SMT-based scenario verification for hybrid systems. Form. Methods Syst. Des. 42(1), 46–66 (2013)
De Moura, L., Bjørner, N.: Z3: An efficient SMT solver. In: International Conference on Tools and Algorithms for the Construction and Analysis of Systems, pp. 337–340. Springer (2008)
De Moura, L., Bjørner, N.: Satisfiability modulo theories: introduction and applications. Commun. ACM 54(9), 69–77 (2011)
Dutertre, B.: Yices 2.2. In: International Conference on Computer Aided Verification, pp. 737–744. Springer (2014)
Eén, N., Sörensson, N.: An extensible sat-solver. In: International Conference on Theory and Applications of Satisfiability Testing, pp. 502–518. Springer (2003)
Fiadeiro, J.L.: Separating distribution from coordination and computation as architectural dimensions. In: International Conference on Formal Methods for Open Object-Based Distributed Systems, pp. 17–17. Springer (2006)
Gilbert, E.N.: Random graphs. Ann. Math. Stat. 30(4), 1141–1144 (1959)
Haugen, Ø.: Comparing UML 2.0 interactions and MSC-2000. In: International Workshop on System Analysis and Modeling, pp. 65–79. Springer (2004)
Haugen, Ø.: Comparing uml 2.0 interactions and msc-2000. In: Amyot, D., Williams, A.W. (eds.) System Analysis and Modeling, pp. 65–79. Springer, Berlin (2005)
Henzinger, T.A.: The theory of hybrid automata. In: Inan, M.K., et al. (eds.) Verification of Digital and Hybrid Systems, pp. 265–292. Springer, Berlin (2000)
ITU-TS: ITU-TS Recommendation Z.120: Message Sequence Chart (MSC). ITU-TS, Geneva (2011)
Jackson, P., Sheridan, D.: Clause form conversions for boolean circuits. In: International Conference on Theory and Applications of Satisfiability Testing, pp. 183–198. Springer (2004)
Kluge, O.: Modelling a railway crossing with message sequence charts and petri nets. In: Petri Net Technology for Communication-Based Systems, pp. 197–218. Springer (2003)
Knapp, A., Wuttke, J.: Model checking of uml 2.0 interactions. In: Kühne, T. (ed.) Models in Software Engineering, pp. 42–51. Springer, Berlin (2007)
Laborie, P., Rogerie, J., Shaw, P., Vilím, P.: Ibm ilog cp optimizer for scheduling. Constraints 23(2), 210–250 (2018)
Ladkin, P.B., Leue, S.: Interpreting Message Sequence Charts. IBM Thomas J, Watson Research Division, Albany (1992)
Li, X., Pan, M., Bu, L., Wang, L., Zhao, J.: Timing analysis of scenario-based specifications using linear programming. Softw. Test. Verif. Reliab. 22(2), 121–143 (2012). https://doi.org/10.1002/stv.434
Louati, A., Jerad, C., Barkaoui, K., Saint-Martin, P.: Formalization and verification of hierarchical use of interaction overview diagrams using timing diagrams. Int. J. Soft Comput. Softw. Eng. 3, 205–211 (2013)
Loveland, D.W.: Automated Theorem Proving: A Logical Basis. Elsevier, Amsterdam (2016)
Nguyen, M.C., Jee, E., Choi, J., Bae, D.H.: Automatic construction of timing diagrams from UML/MARTE models for real-time embedded software. In: Inan, M.K., et al. (eds.) Proceedings of the 29th Annual ACM Symposium on Applied Computing, SAC ’14, pp. 1140–1145. ACM (2014). https://doi.org/10.1145/2554850.2555011
Nieuwenhuis, R., Oliveras, A., Tinelli, C.: Solving sat and sat modulo theories: from an abstract Davis–Putnam–Logemann–Loveland procedure to dpll (t). J. ACM: JACM 53(6), 937–977 (2006)
Nobari, S., Lu, X., Karras, P., Bressan, S.: Fast random graph generation. In: Proceedings of the 14th International Conference on Extending Database Technology, pp. 331–342 (2011)
Ohrimenko, O., Stuckey, P.J., Codish, M.: Propagation via lazy clause generation. Constraints 14(3), 357–391 (2009)
Pan, M., Bu, L., Li, X.: Tass: timing analyzer of scenario-based specifications. In: Bouajjani, A., Maler, O. (eds.) Computer Aided Verification, pp. 689–695. Springer, Berlin (2009)
Pan, M., Li, X.: Timing analysis of msc specifications with asynchronous concatenation. Int. J. Softw. Tools Technol. Transf. 14(6), 639–651 (2012). https://doi.org/10.1007/s10009-012-0239-9
Parker, M., Ryan, J.: Finding the minimum weight IIS cover of an infeasible system of linear inequalities. Ann. Math. Artif. Intell. 17(1), 107–126 (1996)
Pearce, R., Gokhale, M., Amato, N.M.: Multithreaded asynchronous graph traversal for in-memory and semi-external memory. In: SC’10: Proceedings of the 2010 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis, pp. 1–11. IEEE (2010)
Peled, D.A.: Software Reliability Methods. Springer, Berlin (2013)
Sammut, C., Webb, G.I.: Encyclopedia of Machine Learning and Data Mining. Springer Publishing Company, Incorporated (2017)
Sebastiani, R.: Lazy satisfiability modulo theories. J. Satisf. Boolean Model. Comput. 3(3–4), 141–224 (2007)
Seemann, J., von Gudenberg, J.W.: Extension of UML sequence diagrams for real-time systems. In: International Conference on the Unified Modeling Language, pp. 240–252. Springer (1998)
Specification, O.A.: Omg unified modeling language (omg uml), superstructure, v2. 1.2, vol. 70. Object Management Group (2007)
Sridhar, S., Wright, S., Re, C., Liu, J., Bittorf, V., Zhang, C.: An approximate, efficient lp solver for lp rounding. In: Burges, C.J.C., Bottou, L., Welling, M., Ghahramani, Z., Weinberger, K.Q. (eds.) Advances in Neural Information Processing Systems, pp. 2895–2903 (2013)
Swain, R.K., Panthi, V., Behera, P.K.: Test case design using slicing of UML interaction diagram. Procedia Technol. 6, 136–144 (2012)
Tanner, M.W., Ntaimo, L.: Iis branch-and-cut for joint chance-constrained programs with random technology matrices. Eur. J. Oper. Res. 207(1), 290–296 (2010)
Tassey, G.: The Economic Impacts of Inadequate Infrastructure for Software Testing. National Institute of Standards and Technology, RTI Project, vol. 7007, no. 011, pp. 429–489 (2002)
Whitesitt, J.E.: Boolean Algebra and Its Applications. Courier Corporation, Chelmsford (2012)
Xie, D., Bu, L., Zhao, J., Li, X.: SAT–lP–IIS joint-directed path-oriented bounded reachability analysis of linear hybrid automata. Form. Methods Syst. Des. 45(1), 42–62 (2014)
Acknowledgements
We thank the anonymous reviewers for their constructive comments. This research is supported by the National Natural Science Foundation of China (No. 61972193).
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Tao Yue, Paolo Arcaini, Ji Wu, and Xiaowei Huang.
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Lu, L., Pan, M., Zhang, T. et al. Improving timing analysis effectiveness for scenario-based specifications by combining SAT and LP techniques. Softw Syst Model 21, 1321–1338 (2022). https://doi.org/10.1007/s10270-022-00980-8
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-022-00980-8