Towards a Tool Support for Specifying Complex Software Systems by Categorical Modeling Language

  • Noorulain Khurshid
  • Olga Ormandjieva
  • Stan Klasa
Part of the Studies in Computational Intelligence book series (SCI, volume 296)


Formal methods are proven approaches to ensure the correct operation of complex interacting systems. However, current formal methods do not address well problems of verifying emergent behavior and evolution, which are two of the most important characteristics of complex software systems. A subset of the Category Theory has been proposed in this paper to specify such systems. The categorical modeling language depicted here is the first step towards a powerful modeling paradigm capable of modeling emerging and evolving behavior of complex software. The approach is illustrated with a case study of Prospecting Asteroid Mission (PAM) from the NASA.


Formal methods categorical modeling language complexity Prospecting Asteroid Mission (PAM) 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Hinchey, M.G., Sterritt, R., Rouff, C.: Swarms and Swarm Intelligence. IEEE, Los Alamitos (2007)Google Scholar
  2. 2.
    Whitmire, S.: Object Oriented Design Measurement. Whiley C. P, New York (1997)Google Scholar
  3. 3.
    Barr, M., Wells, C.: Category Theory for Computing Science. Prentice-Hall, NJ (1990)zbMATHGoogle Scholar
  4. 4.
    Fiadeiro, J.: Categories for Software Engineering. Springer, Heidelberg (2005)zbMATHGoogle Scholar
  5. 5.
    Goguen, J.A.: A categorical manifesto. Mathematical Structures in Computer Science 1, 49–67 (1991)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Eilenberg, S., Mac Lane, S.: General Theory of Natural Equivalences. Transactions of the American Mathematical Society 58, 231–294 (1945)zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Pfalzgraf, J.: ACCAT tutorial. Presented at 27th German Conference on Artificial Intelligence (2004)Google Scholar
  8. 8.
    Lee, W. M.: Modelling and Specification of Autonomous Systems using Category Theory. PhD Thesis, University College of London, London, UK (1989) Google Scholar
  9. 9.
    Hinchey, M.G., Rouff, C.A., Rash, J.L., Truszkowski, W.F.: Requirements of an Integrated Formal Method for Intelligent Swarms. In: Proceedings of the 10th International Workshop on Formal Methods for Industrial Critical Systems, Lisbon, Portugal, pp. 125–133 (2005)Google Scholar
  10. 10.
    Vassev, E., Hinchey, M., Paquet, J.: A Self-Scheduling Model for NASA Swarm-Based Exploration Missions Using ASSL. In: Proceedings of the 5th IEEE Workshop on Engineering of Autonomic and Autonomous Systems, Belfast, Northern Ireland, pp. 54–64 (2008)Google Scholar
  11. 11.
    Truszkowski, W.F., Hinchey, M.G., Rash, J.L., Rouff, C.A.: Autonomous and Autonomic Systems: a Paradigm for Future Space Exploration Missions. IEEE Transaction on Systems, Man, and Cybernetics, Part C: Applications and Reviews 36(3), 279–291 (2006)CrossRefGoogle Scholar
  12. 12.
    Curtis, S., Mica, J., Nuth, J., Marr, G., Rilee, M., Bhat, M.: ANTS (Autonomous Nano Technology Swarm): an Artificial Intelligence Approach to Asteroid Belt Resource Exploration. In: Proceedings of the 51st International Astronautical Congress (2000) IAA-00-IAA.Q.5.08Google Scholar
  13. 13.
    Wiels, V., Easterbrook, S.: Management of Evolving Specifications Using Category Theory. In: Proceedings of the 13th IEEE International Conference on Automated Software Engineering, pp. 12–21 (1998)Google Scholar
  14. 14.
    Pfalzgraf, J.: On an Idea for Constructing Multiagent Systems (MAS) Scenarios. In: Advances in Multiagent Systems, Robotics and Cybernetics: Theory and Practice, IIAS, Tecumseh, ON, Canada, vol. 1 (2006)Google Scholar
  15. 15.
    Fiadeiro, J.L., Maibaum, T.: A Mathematical Toolbox for the Software Architect. In: Proceedings of the 8th International Workshop on Software Specification and Design, Schloss Velen, Germany, pp. 46–55 (1996)Google Scholar
  16. 16.
    Kuang, H., Ormandjieva, O., Klasa, S., Khurshid, N., Benthar, J.: Towards Specifying Reactive Autonomic Systems by a Categorical Approach. In: Proceedings of International Conference on Software Engineering Research, Management and Applications (SERA 2009), China (2009)Google Scholar
  17. 17.
    Ormandjieva, O., Kuang, H., Vassev, E.: Reliability Self-Assessment in Reactive Autonomic Systems: Autonomic System-Time Reactive Model Approach. ITSSA 2(1), 99–104 (2006)Google Scholar
  18. 18.
    Harel, D.: Statecharts: A visual formalism for complex systems. Science of Computer Programming 8, 231–274 (1987)zbMATHCrossRefMathSciNetGoogle Scholar
  19. 19.
    Harel, D.: On Visual Formalisms. ACM 31, 514–530 (1988)CrossRefMathSciNetGoogle Scholar
  20. 20.
    Selic, B.: Using UML for Modeling Complex Real-Time Systems. In: Müller, F., Bestavros, A. (eds.) LCTES 1998. LNCS, vol. 1474, pp. 250–260. Springer, Heidelberg (1998)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Noorulain Khurshid
    • 1
  • Olga Ormandjieva
    • 1
  • Stan Klasa
    • 1
  1. 1.Computer Science & Software Engineering DepartmentConcordia UniversityMontrealCanada

Personalised recommendations