SMA—The Smyle Modeling Approach

  • Benedikt Bollig
  • Joost-Pieter Katoen
  • Carsten Kern
  • Martin Leucker
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4980)


This paper introduces the model-based software development methodology SMA—the Smyle Modeling Approach—which is centered around Smyle, a dedicated learning procedure to support engineers to interactively obtain design models from requirements, characterized as either being desired (positive) or unwanted (negative) system behavior. The learning approach is complemented by scenario patterns where the engineer can specify clearly desired or unwanted behavior. This way, user interaction is reduced to the interesting scenarios limiting the design effort considerably. In SMA, the learning phase is complemented by an effective analysis phase that allows for detecting design flaws at an early design stage. This paper describes the approach and reports on first practical experiences.


 Requirements elicitation design model learning software engineering lifecycle Message Sequence Charts UML 


  1. 1.
    Ambler, S.W., Jeffries, R.: Agile Modeling: Effective Practices for Extreme Programming and the Unified Process. Wiley, Chichester (2002)Google Scholar
  2. 2.
    Belinfante, A., Frantzen, L., Schallhart, C.: Tools for test case generation. In: Model-Based Testing of Reactive Systems, pp. 391–438 (2004)Google Scholar
  3. 3.
    Ben-Abdallah, H., Leue, S.: Syntactic detection of process divergence and non-local choice in message sequence charts. In: Brinksma, E. (ed.) TACAS 1997. LNCS, vol. 1217, pp. 259–274. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  4. 4.
    Boehm, B.W.: A spiral model of software development and enhancement. IEEE Computer 21, 61–72 (1988)Google Scholar
  5. 5.
    Bollig, B., Katoen, J.P., Kern, C., Leucker, M.: Replaying play in and play out: Synthesis of design models from scenarios by learning. In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS, vol. 4424, pp. 435–450. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  6. 6.
    Bollig, B., Kern, C., Schlütter, M., Stolz, V.: MSCan: A tool for analyzing MSC specifications. In: Hermanns, H. (ed.) TACAS 2006. LNCS, vol. 3920, pp. 455–458. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  7. 7.
    Bollig, B., Katoen, J.-P., Kern, C., Leucker, M.: SMA—The Smyle Modeling Approach. Computing and Informatics (2009) (to appear)Google Scholar
  8. 8.
    Bontemps, Y., Heymand, P., Schobbens, P.-Y.: From live sequence charts to state machines and back: a guided tour. IEEE TSE 31, 999–1014 (2005)Google Scholar
  9. 9.
    Brand, D., Zafiropulo, P.: On communicating finite-state machines. J. of the ACM 30, 323–342 (1983)MathSciNetMATHCrossRefGoogle Scholar
  10. 10.
    Broy, M., Jonsson, B., Katoen, J.-P., Leucker, M., Pretschner, A. (eds.): Model-Based Testing of Reactive Systems. LNCS, vol. 3472. Springer, Heidelberg (2005)MATHGoogle Scholar
  11. 11.
    Craggs, I., Sardis, M., Heuillard, T.: Agedis case studies: Model-based testing in industry. In: Eur. Conf. on Model Driven Softw. Eng., pp. 106–117 (2003)Google Scholar
  12. 12.
    Damas, C., Lambeau, B., Dupont, P.: Generating annotated behavior models from end-user scenarios. IEEE TSE 31, 1056–1073 (2005)Google Scholar
  13. 13.
    Damm, W., Harel, D.: LSCs: Breathing life into message sequence charts. Formal Methods in System Design 19(1), 45–80 (2001)MATHCrossRefGoogle Scholar
  14. 14.
    Easterbrook, S.M.: Requirements engineering (2004) (unpub. manuscript),
  15. 15.
    Genest, B., Kuske, D., Muscholl, A.: A Kleene theorem and model checking algorithms for existentially bounded communicating automata. I&C 204(6), 920–956 (2006)MathSciNetMATHGoogle Scholar
  16. 16.
    Ghezzi, C., Jazayeri, M., Mandrioli, D.: Fundamentals of Software Engineering, 2nd edn. Prentice-Hall, Englewood Cliffs (2002)Google Scholar
  17. 17.
    Hamon, G., Rushby, J.M.: An operational semantics for Stateflow. In: Wermelinger, M., Margaria-Steffen, T. (eds.) FASE 2004. LNCS, vol. 2984, pp. 229–243. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  18. 18.
    Harel, D.: Can programming be liberated, period? Computer 41, 28–37 (2008)CrossRefGoogle Scholar
  19. 19.
    Harel, D., Marelly, R.: Come, Let’s Play. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  20. 20.
    Henriksen, J.G., Mukund, M., Kumar, K.N., Sohoni, M., Thiagarajan, P.S.: A theory of regular MSC languages. Inf. and Comput. 202(1), 1–38 (2005)MathSciNetMATHCrossRefGoogle Scholar
  21. 21.
    Holzmann, G.J.: The theory and practice of a formal method: Newcore. In: IFIP Congress (1), pp. 35–44 (1994)Google Scholar
  22. 22.
    ITU: ITU-TS Recommendation Z.120 (04/04): Message Sequence Chart (2004)Google Scholar
  23. 23.
    Kof, L.: Scenarios: Identifying missing objects and actions by means of computational linguistics. In: 15th IEEE RE, pp. 121–130 (2007)Google Scholar
  24. 24.
    Lynch, N.: Distributed Algorithms. Morgan Kaufmann, San Francisco (1997)Google Scholar
  25. 25.
    Mäkinen, E., Systä, T.: MAS – An interactive synthesizer to support behavioral modeling in UML. In: ICSE, pp. 15–24. IEEE Computer Society, Los Alamitos (2001)Google Scholar
  26. 26.
    Nuseibeh, B., Easterbrook, S.: Requirements engineering: a roadmap. In: ICSE, pp. 35–46. ACM, New York (2000)CrossRefGoogle Scholar
  27. 27.
    Pressman, R.S.: Software Engineering: A Practitioner’s Approach. McGraw-Hill, New York (2004)Google Scholar
  28. 28.
    Royce, W.: Managing the development of large software systems: concepts and techniques. In: ICSE, pp. 328–338. IEEE CS Press, Los Alamitos (1987)Google Scholar
  29. 29.
    Sommerville, I.: Software Engineering, 8th edn. Addison-Wesley, Reading (2006)Google Scholar
  30. 30.
    Tanenbaum, A.S.: Computer Networks. Prentice Hall, Englewood Cliffs (2002)Google Scholar
  31. 31.
    Uchitel, S., Brunet, G., Chechik, M.: Behaviour model synthesis from properties and scenarios. In: ICSE, pp. 34–43. IEEE Computer Society, Los Alamitos (2007)Google Scholar
  32. 32.
    Uchitel, S., Kramer, J., Magee, J.: Synthesis of behavioral models from scenarios. IEEE TSE 29, 99–115 (2003)Google Scholar

Copyright information

© IFIP International Federation for Information Processing 2011

Authors and Affiliations

  • Benedikt Bollig
    • 1
  • Joost-Pieter Katoen
    • 2
  • Carsten Kern
    • 2
  • Martin Leucker
    • 3
  1. 1.LSV, ENS Cachan, CNRSFrance
  2. 2.RWTH Aachen UniversityGermany
  3. 3.TU MünchenGermany

Personalised recommendations