Search
2018 Volume 33
Article Contents
RESEARCH ARTICLE   Open Access    

Communiqué: a planning-based sequence diagrams generator

More Information
  • Abstract: During the software system development lifecycle, different types of Unified Modeling Language model are developed to represent different views of the system. Sequence diagrams represent one of the most important types of model. They show how objects in the system interact to offer the functionality manifested in the form of use cases. As the complexity of the system being modeled increases, creating the sequence diagrams manually becomes harder. However, the problem of automatic sequence diagrams generation has not caught enough researchers yet. This paper presents an approach and a tool to automatically generate sequence diagrams from use cases and class diagrams. The problem of determining the sequence of message passing is treated as an Artificial Intelligence action planning problem and solved as such. In doing so, Design by Contract concepts are enforced in the specification of the given use cases and class diagrams. A special message-passing planner, Communiqué, was developed and implemented accordingly. The overall approach was empirically evaluated against sets of manually created sequence diagrams available in the literature. Communiqué was able to create sequence diagrams comparable to the manually developed ones. The paper also sheds the light on some directions for future work to advance the applicability of the approach.
  • 加载中
  • Al Akel I., Al Kalaji A., Labani L., Al Hazemi F., Ba Haziq A. & Al Zahrani H. 2011. MeetingsMate, Software Engineering Senior Project SRS, Department of Information and Computer Science, KFUPM.

    Google Scholar

    Bruegge B. & Dutoit A. H. 2010. Object-Oriented Software Engineering using UML, Patterns and Java, 3rd edition. Prentice Hall.

    Google Scholar

    Fikes R. & Nilsson N. J. 1971. STRIPS: a new approach to the application of theorem proving to problem solving. Artificial Intelligence 2(3/4), 189–208.

    Google Scholar

    Ghallab M., Nau D. & Traverso P. 2004. Automated Planning: Theory and Practice, 1st edition. Morgan Kaufmann.

    Google Scholar

    Hatzi, O., Vrakas, D., Bassiliades, N., Anagnostopoulos, D. & Vlahavas, I. 2013. The PORSCE II framework: using AI planning for automated semantic web service composition. The Knowledge Engineering Review 28(2), 137–156.

    Google Scholar

    Jacobson I., Christerson M., Jonsson P. & Overgaard G. 2004. Object-Oriented Software Engineering: A Use Case Driven Approach. ACM Press.

    Google Scholar

    Kitchenham, B. A., Pfleeger, S. L., Pickard, L. M., Jones, P. W., Hoaglin, D. C., El Emam, K. & Rosenberg, J. 2002. Preliminary guidelines for empirical research in software engineering. IEEE Transactions On Software Engineering 28(8), 721–734.

    Google Scholar

    Li L. 2000. Translating use cases to sequence diagrams. In Proceedings ASE 2000. Fifteenth IEEE International Conference on Automated Software Engineering. IEEE Computer Society, 293–296, http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=873681.

    Google Scholar

    McDermott D., Ghallab M., Howe A., Knoblock C., Ram A., Veloso M., Weld D. & Wilkins D. 1998. PDDL – The Planning Domain Definition Language. Technical report, Yale Center for Computational Vision and Control.

    Google Scholar

    Meyer B. 1997. Object-Oriented Software Construction, 2nd edition. Prentice Hall PRT.

    Google Scholar

    Object Management Group 2005. XML metadata interchange specification Version 2.0.1, http://www.omg.org/spec/XMI/.

    Google Scholar

    Object Management Group 2010. OMG Unified Modeling Language (OMG UML), Superstructure, http://www.omg.org/spec/UML/2.3/.

    Google Scholar

    Pednault E. 1994. ADL and the state-transition model of action. Journal of Logic and Computation 4(5), 467–512.

    Google Scholar

    Pednault E. P. D. 1989. ADL: exploring the middle ground between STRIPS and the situation calculus. In Proceedings of the first international conference on Principles of knowledge representation and reasoning, 324–332. Morgan Kaufmann Publishers Inc.

    Google Scholar

    Perrotta P. 2010. Metaprogramming Ruby: Program Like the Ruby Pros, 1st edition. The Pragmatic Programmers.

    Google Scholar

    Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F. & Lorensen, W. 1991. Object-Oriented Modeling and Design, 1st edition. Prentice Hall.

    Google Scholar

    Russell S. & Norvig P. 2009. Artificial Intelligence: A Modern Approach, 3rd edition. Pearson Education.

    Google Scholar

    Sawprakhon P. & Limpiyakorn Y. 2014. Model-driven approach to constructing uml sequence diagram. In 2014 International Conference on Information Science and Applications (ICISA).

    Google Scholar

    Sommerville I. 2004. Software Engineering, 7th edition. Pearson Education Limited.

    Google Scholar

    Sulaiman Y. & Ahmed M. 2012. Automating UML sequence diagram generation by treating it as a planning problem. In The 18th International Conference on Distributed Multimedia Systems (DMS 2012), 124–129. Knowledge Systems Institute.

    Google Scholar

    Sulaiman Y. A. 2013. Planning-based approach for automating sequence diagram generation. M.Sc., Department of Information and Computer Science, KFUPM.

    Google Scholar

    Thakur J. S. & Gupta A. 2014. Automatic generation of sequence diagram from use case specification. In ISEC ‘14 Proceedings of the 7th India Software Engineering Conference.

    Google Scholar

    Thomas D., Fowler C. & Hunt A. 2012. Programming Ruby 1.9: The Pragmatic Programmers’ Guide, 3rd edition. The Pragmatic Programmers.

    Google Scholar

    Vaquero T. S., Silva R. & Beck J. C. 2011. A brief review of tools and methods for knowledge engineering for planning & scheduling. In Proceedings of the ICAPS2011 Workshop on Knowledge Engineering for Planning and Scheduling, Bartfiak, R., Fratini, S., McCluskey, L. & Vaquero, T. S. (eds). Freiburg, Germany, 7–14.120.

    Google Scholar

    Vaquero T. S., Silva J. R., Tonidandel F. & Beck J. C. 2013. itSIMPLE: towards an integrated design system for real planning applications. The Knowledge Engineering Review 28(2), 215–230.

    Google Scholar

    Warmer J. & Kleppe A. 2003. The Object Constraint Language: Getting Your Models Ready for MDA, 2nd edition. Addison Wesley.

    Google Scholar

    What’s New in the .NET Framework 4, 2014 http://msdn.microsoft.com/en-us/library/vstudio/ms171868%28v=vs.100%29.aspx.

    Google Scholar

    Yue T., Briand L. & Labiche Y. 2009. A use case modeling approach to facilitate the transition towards analysis models: concepts and empirical evaluation. In Model Driven Engineering Languages and Systems, Schürr, A. & Selic, B. (eds). Lecture Notes in Computer Science 5795, 484–498. Springer.

    Google Scholar

    Yue T., Briand L. C. & Labiche Y. 2011. A systematic review of transformation approaches between user requirements and analysis models. Requirements Engineering 16, 75–99.

    Google Scholar

    Yue T., Briand L. C. & Labiche Y. 2013. Facilitating the transition from use case models to analysis models: approach and experiments. ACM Transactions on Software Engineering and Methodology (TOSEM) 22(1), 5.

    Google Scholar

  • Cite this article

    Moataz Ahmed, Yaser Sulaiman. 2018. Communiqué: a planning-based sequence diagrams generator. The Knowledge Engineering Review 33(1), doi: 10.1017/S0269888918000103
    Moataz Ahmed, Yaser Sulaiman. 2018. Communiqué: a planning-based sequence diagrams generator. The Knowledge Engineering Review 33(1), doi: 10.1017/S0269888918000103

Article Metrics

Article views(36) PDF downloads(52)

Other Articles By Authors

RESEARCH ARTICLE   Open Access    

Communiqué: a planning-based sequence diagrams generator

Abstract: Abstract: During the software system development lifecycle, different types of Unified Modeling Language model are developed to represent different views of the system. Sequence diagrams represent one of the most important types of model. They show how objects in the system interact to offer the functionality manifested in the form of use cases. As the complexity of the system being modeled increases, creating the sequence diagrams manually becomes harder. However, the problem of automatic sequence diagrams generation has not caught enough researchers yet. This paper presents an approach and a tool to automatically generate sequence diagrams from use cases and class diagrams. The problem of determining the sequence of message passing is treated as an Artificial Intelligence action planning problem and solved as such. In doing so, Design by Contract concepts are enforced in the specification of the given use cases and class diagrams. A special message-passing planner, Communiqué, was developed and implemented accordingly. The overall approach was empirically evaluated against sets of manually created sequence diagrams available in the literature. Communiqué was able to create sequence diagrams comparable to the manually developed ones. The paper also sheds the light on some directions for future work to advance the applicability of the approach.

    • The authors would like to acknowledge the support provided by the Deanship of Scientific Research at King Fahd University of Petroleum and Minerals (KFUPM) under Research Grant IN111013. Many thanks are due to the anonymous referees for their detailed and helpful comments.

    • https://github.com/ysulaiman/communique

    • © Cambridge University Press, 2018 2018Cambridge University Press
References (30)
  • About this article
    Cite this article
    Moataz Ahmed, Yaser Sulaiman. 2018. Communiqué: a planning-based sequence diagrams generator. The Knowledge Engineering Review 33(1), doi: 10.1017/S0269888918000103
    Moataz Ahmed, Yaser Sulaiman. 2018. Communiqué: a planning-based sequence diagrams generator. The Knowledge Engineering Review 33(1), doi: 10.1017/S0269888918000103
  • Catalog

      /

      DownLoad:  Full-Size Img  PowerPoint
      Return
      Return