Skip to main content

Data Flow Analysis of UML Action Semantics for Executable Models

  • Conference paper
Model Driven Architecture – Foundations and Applications (ECMDA-FA 2008)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5095))

Abstract

Executable modeling allows the models to be executed and treated as prototype to determine the behavior of a system. These models use precise action languages to specify the algorithms and computational details required for execution. These action languages are developed on the basis of UML action semantics metamodel that provides the abstract syntax. The use of a concrete action language makes a traditional model work like an executable one. The actions specified by the action language might involve variables and their data values that are useful to be analyzed in terms of data flow. In this paper, we provide data flow analysis (DFA) of the standard UML action semantics that can be used with executable models. The analysis provides a generic data flow at the abstract syntax level and allows a mapping to any of the action languages providing the concrete syntax. Our approach does not focus on a particular action language; therefore it can easily be applied to any concrete syntax. We apply the proposed approach to a case study and identify the data flow from executable UML state machine.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 99.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 129.00
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Mellor, S.J., Balcer, M.J.: Executable UML; A Foundation for Model-Driven Architecture. Addison-Wesley, Reading (2002)

    Google Scholar 

  2. Eakman, G.T.: Verification of Platform Independent Models. In: UML Workshop: Model Driven Architecture in the Specification, Implementation and validation of Object-oriented Embedded Systems, San Francisco, California (October 2003)

    Google Scholar 

  3. Mellor, S.J., Agile, M.D.A.: MDA Journal (2004) [Accessed: July 16, 2007], http://www.omg.org/mda/mda_files/Agile_MDA.pdf

  4. Mellor, S.J.: Introduction to Executable and Translatable UML, Application Development Toolkit, Whitepapers CNET Networks (2005)

    Google Scholar 

  5. Ambler, S.W.: Be Realistic About the UML: It’s Simply Not Sufficient, AmbySoft Inc. (2005) [Accessed: September 12, 2006], http://www.agilemodeling.com/essays/realisticUML.htm

  6. Unified Modeling Language: Superstructure. Version 2.1. Object Management Group (OMG) document ptc/06-04-02 (2004), http://www.omg.org

  7. Sunyé, G., Pennaneac’h, F., Ho, W., Guennec, A.L., Jézéquel, J.M.: Using UML Action Semantics for Executable Modeling and Beyond. In: Proceedings of the 13th International Conference on Advanced Information Systems Engineering. ACM, New York (2001)

    Google Scholar 

  8. Harrold, M.J., Rothermel, G.: Performing Data Flow Testing on Classes, SIGSOFT 1994- 12/94 New Orleans, LA, USA. © ACM, New York (1994)

    Google Scholar 

  9. Mellor, S.J., Tockey, S., Arthaud, R., Leblane, P.: Software-Platform-independent, Precise Action Specifications for UML (2006), Available: Project Technology [Accessed December 5, 2006], http://www.projtech.com

  10. Tsai, B.Y., Stobart, S., Parrington, N.: Employing Data Flow Testing on Object-oriented Classes. IEE Proceedings-Software 148(2) (April 2001)

    Google Scholar 

  11. Rapps, S., Weyuker, E.J.: Data Flow Analysis Techniques for Test Data Selection. In: Proceedings of the 6th International Conference on Software Engineering, Tokyo, Japan, pp. 0270–5257. IEEE, Los Alamitos (1982)

    Google Scholar 

  12. Gupta, N., Gupta, R.: Data Flow Testing, The Compiler Design Handbook: Optimization and Machine Code Generation, ch.7, 1st edn., pp. 247–267. CRC Press, Boca Raton

    Google Scholar 

  13. Harrold, M.J., Rothermel, G.: Performing Data Flow Testing on Classes, SIGSOFT 1994, 12/94 New Orleans, LA, USA. © ACM, New York (1994)

    Google Scholar 

  14. Hutchins, M., Foster, H., Goradia, T., Ostrand, T.: Experiments on the Effectiveness of Dataflow and Controlflow-based Test Adequacy Criteria. In: Proceedings of the 16th International Conference on Software Engineering, Sorrento, Italy, pp. 191–200. IEEE Computer Society Press, Los Alamitos (1994)

    Chapter  Google Scholar 

  15. Carter, K.: http://www.kc.com

  16. Wilkie, I., King, A., Clarke, M., Weaver, C., Raistrick, C., Francis, P.: UML ASL Reference Guide, ASL Language Level 2.5, Manual Revision D (2003)

    Google Scholar 

  17. Nucleus UML Suite, www.mentor.com/products/embedded_software/nucleus_modeling/index.cfm

  18. Trong, T.D., Ghosh, S., France, D.: JAL: Java like Action Language, Specification 1.1 – Beta version. CS Technical Report 06-102. Department of Computer Science, Colorado State University, Fort Collins, USA

    Google Scholar 

  19. Pathfinder Solutions. Platform independent Action language, version 2.2 (December 2004), http://PathfinderMDA.com

  20. Dubrovin, J.: JUMBALA – An Action Language for UML State Machines, HUT-TCS-A101. Research Reports 101. Laboratory for Theoretical Computer Science, Helsinki University of Technology, Espoo, Finland (March 2006)

    Google Scholar 

  21. Kabira Technologies, http://www.kabira.com

  22. Skiena, S.: Adjacency Matrices. In: Implementing Discrete Mathematics: Combinatorics and Graph Theory with Mathematica, pp. 81–85. Addison-Wesley, Reading (1990); Cambridge University Press

    Google Scholar 

  23. Sagiv, M., Reps, T., Horwitz, S.: Precise interprocedural dataflow analysis with applications to constant propagation. In: Mosses, P.D., Schwartzbach, M.I., Nielsen, M. (eds.) CAAP 1995, FASE 1995, and TAPSOFT 1995. LNCS, vol. 915. Springer, Heidelberg (1995)

    Google Scholar 

  24. Ammons, G., Larus, J.R.: Improving Data-flow Analysis with Path Profiles. In: SIGPLAN 1998, Montreal, Canada. © ACM, New York (1998)

    Google Scholar 

  25. Moonen, L.: A Generic Architecture for Data Flow Analysis to Support Reverse Engineering. In: Proceedings of the Second International Workshop on the Theory and Practice of Algebraic Specifications (ASF+SDF 1997), Electronic Workshops in Computing, Amsterdam. Springer, Heidelberg (1997)

    Google Scholar 

  26. Kramer, R., Gupta, R., Soffa, M.L.: The Combining DAG: A technique for Parallel Data Flow Analysis. IEEE Transactions on Parallel and Distributed Systems 5(8) (August 1994)

    Google Scholar 

  27. Atkinson, D.C., Griswold, W.G.: Implementation Techniques for Efficient Data-Flow Analysis of Large Programs. In: Proceedings of International Conference on Software Maintenance, Florence, Italy. IEEE, Los Alamitos (2001); 0-7695-1189-9

    Google Scholar 

  28. Oviedo, E.I.: Control flow, data flow, and program complexity. In: Mcgraw-Hill International Series In Software Engineering. Mcgraw-Hill Inc., USA (1993)

    Google Scholar 

  29. Tai, K.C.: A Program Complexity Metric based on Data Flow Information in Control Graphs. In: Proceedings of the 7th International Conference on Software Engineering, Orlando, Florida, United States, pp. 239–248. IEEE, Los Alamitos (1984)

    Google Scholar 

  30. Varea, M., Al-Hashimi, B.M.: Dual Flow Nets: Modeling the Control/Data-Flow Relation in Embedded Systems. ACM Transactions on Embedded Computing Systems (TECS). ACM Press, USA (2006)

    Google Scholar 

  31. Farwer, B., Varea, M.: Object-based Control/Data-flow Analysis, Technical Report DSSE-TR-2005-1, Declarative Systems and Software Engineering Group, University of Southampton, Southampton (2005)

    Google Scholar 

  32. Jorgensen, P.C.: Software Testing: A Craftsman’s Approach, 2nd edn., pp. 137–174. CRC Press Inc., Boca Raton (2002)

    Google Scholar 

  33. Kim, Y.G., Hong, H.S., Cho, S.M., Bae, D.H., Cha, S.D.: Test Cases Generation from UML State Diagrams. In: IEE Proceedings-Software, vol. 146, pp. 187–192 (August 1999)

    Google Scholar 

  34. Briand, L.C., Labiche, Y., Lin, Q.: Improving State chart testing Criteria Using Data Flow Information. In: Proceedings of the 16th IEEE International Symposium on Software Reliability Engineering (ISSRE 2005). IEEE, Los Alamitos (2005)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Ina Schieferdecker Alan Hartman

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Waheed, T., Iqbal, M.Z.Z., Malik, Z.I. (2008). Data Flow Analysis of UML Action Semantics for Executable Models. In: Schieferdecker, I., Hartman, A. (eds) Model Driven Architecture – Foundations and Applications. ECMDA-FA 2008. Lecture Notes in Computer Science, vol 5095. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69100-6_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-69100-6_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-69095-5

  • Online ISBN: 978-3-540-69100-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics