Formal Ensemble Engineering

  • J. W. Sanders
  • Graeme Smith
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5380)


The ‘ensembles’ identified by the InterLink working group on Software Intensive Systems comprise vast numbers of components adapting and interacting in complex and even unforeseen ways. If the analysis of ensembles is difficult, their synthesis, or engineering, is downright intimidating. We show, following a recent three-level approach to agent-oriented software engineering, that it is possible to specialise that intimidating task to three levels of abstraction (the ‘micro’, ‘macro’ and ‘meso’ levels), each potentially manageable by interesting extensions of standard formal software engineering. The result provides challenges for formal software engineering but opportunities for ensemble engineering.


Formal Method MultiAgent System Meso Level Australian Computer Physical Ensemble 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Brewka, G., Dix, J., Konolige, K.: Nonmonotonic Reasoning - An Overview. CSLI publications (1997)Google Scholar
  2. 2.
    Byrne, G.: Is it time to give airlines the freedom of the skies? New Scientist 2351, 12 (2002)Google Scholar
  3. 3.
    Cardelli, L., Gordon, A.: Mobile ambients. Theoretical Computer Science 240(1), 177–213 (2000)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Fidge, C.J., Hayes, I.J., Martin, A.P., Wabenhorst, A.K.: A set-theoretic model for real-time specification and reasoning. In: Jeuring, J. (ed.) MPC 1998. LNCS, vol. 1422, pp. 188–206. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  5. 5.
    Goldstein, S.C., Campbell, J.D., Mowry, T.C.: Programmable matter. IEEE Computer 38(6), 99–101 (2005)CrossRefGoogle Scholar
  6. 6.
    Hölzl, M., Wirsing, M.: State of the art for the engineering of software-intensive systems. InterLink Deliverable Number D3.1 (2007),
  7. 7.
    Klir, G.J., Yuan, B.: Fuzzy sets and fuzzy logic: theory and applications. Prentice-Hall, Englewood Cliffs (1995)zbMATHGoogle Scholar
  8. 8.
    Kwiatkowska, M., Norman, G., Parker, D., Sproston, J.: Verification of real-time probabilistic systems. In: Merz, S., Navet, N. (eds.) Modeling and Verification of Real-Time Systems: Formalisms and Software Tools, ch. 8, pp. 249–288. John Wiley & Sons, Chichester (2008)CrossRefGoogle Scholar
  9. 9.
    McComb, T., Smith, G.: A minimal set of refactoring rules for Object-Z. In: Barthe, G., de Boer, F.S. (eds.) FMOODS 2008. LNCS, vol. 5051, pp. 170–184. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  10. 10.
    McIver, A.K., Morgan, C.C.: Abstraction, Refinement and Proof for Probabilistic Systems. Monographs in Computer Science. Springer, Heidelberg (2005)zbMATHGoogle Scholar
  11. 11.
    Milner, R.: Communicating and Mobile Systems: The π-Calculus. Cambridge University Press, Cambridge (1999)zbMATHGoogle Scholar
  12. 12.
    Misra, J., Cook, W.R.: Computation orchestration: A basis for wide-area computing. Software and Systems Modelling 6(1), 83–110 (2006)CrossRefGoogle Scholar
  13. 13.
    Mitchell, T.M.: Machine Learning. McGraw-Hill, New York (1997)zbMATHGoogle Scholar
  14. 14.
    Morgan, C.C., McIver, A.K., Sanders, J.W.: Probably Hoare? Hoare probably! In: Davies, J., Roscoe, A.W., Woodcock, J.C.P. (eds.) Millenial Perspectives in Computer Science, pp. 271–282. Palgrave (2000)Google Scholar
  15. 15.
    RTCA Task Force 3. Final Report on Free Flight Implementation. RTCA Inc. (1995)Google Scholar
  16. 16.
    Saito, M., Tsukamoto, J., Umedu, T., Higashino, T.: Design and evaluation of inter-vehicle dissemination protocol for propagation of preceding traffic information. IEEE Transactions on Intelligent Transportation Systems 8(3), 379–390 (2007)CrossRefGoogle Scholar
  17. 17.
    Sanders, J.W., Turilli, M.: Dynamics of control. In: Theoretical Aspects of Software Engineering (TASE 2007), pp. 440–449. IEEE Computer Society, Los Alamitos (2007); Expanded version available as: UNU-IIST report 353, Google Scholar
  18. 18.
    Smith, G.: Stepwise development from ideal specifications. In: Edwards, J. (ed.) Australasian Computer Science Conference (ACSC 2000). Australian Computer Science Communications, vol. 22, pp. 227–233. IEEE Computer Society Press, Los Alamitos (2000)Google Scholar
  19. 19.
    Smith, G.: Specifying mode requirements of embedded systems. In: Oudshoorn, M. (ed.) Australasian Computer Science Conference (ASCS 2002). Australian Computer Science Communications, vol. 24, pp. 251–258. Australian Computer Society (2002)Google Scholar
  20. 20.
    Wooldridge, M.: An Introduction to MultiAgent Systems. John Wiley & Sons, Chichester (2002)Google Scholar
  21. 21.
    Zambonelli, F., Omicini, A.: Challenges and research directions in agent-oriented software engineering. Autonomous Agents and Multi-Agent Systems 9(3), 253–283 (2004)CrossRefGoogle Scholar
  22. 22.
    Chaochen, Z., Hoare, C.A.R., Ravn, A.P.: A calculus of durations. Information Processing Letters 40, 269–271 (1991)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • J. W. Sanders
    • 1
  • Graeme Smith
    • 2
  1. 1.International Institute for Software TechnologyUnited Nations UniversityMacaoChina
  2. 2.School of Information Technology and Electrical EngineeringThe University of QueenslandAustralia

Personalised recommendations