• DocumentCode
    780435
  • Title

    Generating annotated behavior models from end-user scenarios

  • Author

    Damas, Christophe ; Lambeau, Bernard ; Dupont, Pierre ; Van Lamsweerde, Axel

  • Author_Institution
    Dept. of Compt. Sci. & Eng., Univ. Catholique de Louvain, Belgium
  • Volume
    31
  • Issue
    12
  • fYear
    2005
  • Firstpage
    1056
  • Lastpage
    1073
  • Abstract
    Requirements-related scenarios capture typical examples of system behaviors through sequences of desired interactions between the software-to-be and its environment. Their concrete, narrative style of expression makes them very effective for eliciting software requirements and for validating behavior models. However, scenarios raise coverage problems as they only capture partial histories of interaction among-system component instances. Moreover, they often leave the actual requirements implicit. Numerous efforts have therefore been made recently to synthesize requirements or behavior models inductively from scenarios. Two problems arise from those efforts. On the one hand, the, scenarios must be complemented with additional input such as state assertions along episodes or flowcharts on such episodes. This makes such techniques difficult to use by the nonexpert end-users who provide the scenarios. On the other hand, the generated state machines may be hard to understand as their nodes generally convey no domain- specific properties. Their validation by analysts, complementary to model checking and animation by may therefore be quite difficult. This paper describes tool-supported techniques that overcome those two problems. Our tool generates a labeled transition system (LTS) for each system component from simple forms of message sequence charts (MSC) taken as examples or counterexamples of desired behavior. No additional input is required. A global LTS for the entire system is synthesized first. This LTS covers all scenario examples and excludes all counterexamples. It is inductively generated through an interactive procedure that extends known learning techniques for grammar induction. The procedure is incremental on training examples. It interactively produces additional scenarios that the end-user has to classify as examples or counterexamples of desired behavior. The LTS synthesis procedure may thus also be used independently for requirements elicitation through scenario questions generated by the tool. The synthesized system LTS is then projected on local LTS for each system component. For model validation by analysts, the tool generates state invariants that decorate the nodes of the local LTS.
  • Keywords
    Petri nets; flowcharting; formal verification; grammars; learning (artificial intelligence); annotated behavior model; computer animation; domain- specific property; end-user scenarios; flowcharts; grammar induction; incremental training; labeled transition system; learning technique; message sequence charts; model checking; model validation by analysts; software requirement; state machines; system component; Animation; Application software; Concrete; Control systems; Documentation; Flowcharts; History; Independent component analysis; Induction generators; Production; Index Terms- Scenario-based elicitation; analysis tools.; incremental learning; invariant generation; labeled transition systems; message sequence charts; model validation; scenario generation; synthesis of behavior models;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2005.138
  • Filename
    1566607