Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

Generating Annotated Behavior Models from End-User Scenarios

Published: 01 December 2005 Publication History

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 tools, 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.

References

[1]
R. Alur and M. Yannakakis, “Model Checking of Message Sequence Charts,” Proc. 10th Int'l Conf. Concurrency Theory, pp. 114-129, 1999.
[2]
W. Damm and D. Harel, “LSCs: Breathing Life into Message Sequence Charts,” Formal Methods in System Design, vol. 19, no. 1, 2001.
[3]
P. Dupont, L. Miclet, and E. Vidal, “What Is the Search Space of Regular Inference?” Grammatical Inference and Applications, pp. 199-210, 1994.
[4]
P. Dupont, “Incremental Regular Inference,” Grammatical Inference: Learning Syntax from Sentences, pp. 222-237, 1996.
[5]
D. Giannakopoulou and J. Magee, “Fluent Model Checking for Event-Based Systems,” Proc. ESEC/FSE 2003, 2003.
[6]
E.M. Gold, “Language Identification in the Limit,” Information and Control, vol. 10, no. 5, pp. 447-474, 1967.
[7]
E.M. Gold, “Complexity of Automaton Identification Data,” Information and Control, vol. 37, pp. 302-320, 1978.
[8]
J.E. Hopcroft and J.D. Ullman, Introduction to Automata Theory, Languages, and Computation. Addison-Wesley, 1979.
[9]
H. Ichikawa, M. Itoh, J. Kato, A. Takura, and M. Shibasaki, “SDE: Incremental Specification and Development of Communications Software,” IEEE Trans. Computers, vol. 40, pp. 553-561, 1991.
[10]
ITU, Message Sequence Charts, Recommendation Z.120, Int'l Telecom Union, Telecomm. Standardization Sector, 1996.
[11]
IEEE Trans. Sofware Eng., special issue on scenario management, M. Jarke and R. Kurki-Suonio, eds., vol. 24, no. 12, Dec. 1998.
[12]
R. Jeffords and C. Heitmeyer, “Automatic Generation of State Invariants from Requirements Specifications,” Proc. Sixth ACM Symp. Foundations of Software Eng., 1998.
[13]
M. Joseph, Real-Time Systems: Specification, Verification and Analysis. Prentice Hall Int'l, 1996.
[14]
J. Kramer et al., “CONIC: An Integrated Approach to Distributed Computer Control Systems,” IEE Proc., Part E 130, 1, pp. 1-10, Jan. 1983.
[15]
I. Kruger, R. Grosu, P. Scholz, and M. Broy, “From MSCs to Statecharts,” Proc. IFIP Wg10.3/Wg10.5 Int'l Workshop Distributed and Parallel Embedded Systems, F.J. Rammig, ed., pp. 61-71, 1998.
[16]
A. van Lamsweerde, “Goal-Oriented Requirements Engineering: A Guided Tour,” Proc. RE'01— Fifth Int'l Symp. Requirements Eng., pp. 249-263, Aug. 2001.
[17]
A. van Lamsweerde and L. Willemet, “Inferring Declarative Requirements Specifications from Operational Scenarios,” IEEE Trans. Sofware. Eng., vol. 24, no. 12, Dec. 1998.
[18]
K.J. Lang, “Random DFAs Can Be Approximately Learned from Sparse Uniform Examples,” Proc. Fifth ACM Workshop Computational Learning Theory, pp. 45-52, 1992.
[19]
K.J. Lang, B.A. Pearlmutter, and R.A. Price, “Results of the Abbadingo One DFA Learning Competition and a New Evidence-Driven State Merging Algorithm,” Grammatical Inference, pp. 1-12, Springer-Verlag, 1998.
[20]
E. Letier, J. Kramer, J. Magee, and S. Uchitel, “Monitoring and Control in Scenario-Based Requirements Analysis,” Proc. ICSE 2005— 27th Int'l Conf. Software Eng., May 2005.
[21]
J. Magee and J. Kramer, Concurrency: State Models and Java Programs. Wiley, 1999.
[22]
J. Magee, N. Pryce, D. Giannakopoulou, and J. Kramer, “Graphical Animation of Behavior Models,” Proc. ICSE 2000: 22nd Int'l Conf. Software Eng., pp. 499-508, May 2000.
[23]
E. Mäkinen and T. Systä, “MAS— An Interactive Synthesizer to Support Behavioral Modelling in UML,” Proc. ICSE 2001— Int'l Conf. Software Eng., May 2001.
[24]
R. Milner, Communication and Concurrency. Prentice-Hall, 1989.
[25]
R. Miller and M. Shanahan, “The Event Calculus in Classical Logic— Alternative Axiomatisations,” Linkoping Electronic Articles in Computer and Information Science, vol. 4, no. 16, pp. 1-27, 1999.
[26]
J. Oncina and P. García, “Inferring Regular Languages in Polynomial Update Time,” Pattern Recognition and Image Analysis, N. Perez de la Blanca, A. Sanfeliu, and E. Vidal, eds. pp. 49-61, World Scientific, 1992.
[27]
J. Oncina, P. García, and E. Vidal, “Learning Subsequential Transducers for Pattern Recognition Interpretation Tasks,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 15, no. 5, pp. 448-458, May 1993.
[28]
S. Uchitel, J. Kramer, and J. Magee, “Detecting Implied Scenarios in Message Sequence Chart Specifications,” Proc. ESEC/FSE'01— Ninth European Software Eng. Conf.&ACM SIGSOFT Symp. Foundations of Software Eng., Sept. 2001.
[29]
S. Uchitel, J. Kramer, and J. Magee, “Synthesis of Behavioral Models from Scenarios,” IEEE Trans. Software Eng., vol. 29, no. 2, pp. 99-115, Feb. 2003.
[30]
K. Weidenhaupt, K. Pohl, M. Jarke, and P. Haumer, “Scenario Usage in System Development: A Report on Current Practice,” IEEE Software, Mar. 1998.
[31]
J. Whittle and J. Schumann, “Generating Statechart Designs from Scenarios,” Proc. ICSE 2000: 22nd Int'l Conf. Software Eng., pp. 314-323, 2000.

Cited By

View all
  • (2022)PRINS: scalable model inference for component-based system logsEmpirical Software Engineering10.1007/s10664-021-10111-427:4Online publication date: 1-Jul-2022
  • (2020)Bounded Verification of State Machine ModelsProceedings of the 12th System Analysis and Modelling Conference10.1145/3419804.3420263(23-32)Online publication date: 19-Oct-2020
  • (2020)Synthesis of state machine modelsProceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems10.1145/3365438.3410936(274-284)Online publication date: 16-Oct-2020
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering  Volume 31, Issue 12
December 2005
96 pages

Publisher

IEEE Press

Publication History

Published: 01 December 2005

Author Tags

  1. Index Terms- Scenario-based elicitation
  2. analysis tools.
  3. incremental learning
  4. invariant generation
  5. labeled transition systems
  6. message sequence charts
  7. model validation
  8. scenario generation
  9. synthesis of behavior models

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 17 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2022)PRINS: scalable model inference for component-based system logsEmpirical Software Engineering10.1007/s10664-021-10111-427:4Online publication date: 1-Jul-2022
  • (2020)Bounded Verification of State Machine ModelsProceedings of the 12th System Analysis and Modelling Conference10.1145/3419804.3420263(23-32)Online publication date: 19-Oct-2020
  • (2020)Synthesis of state machine modelsProceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems10.1145/3365438.3410936(274-284)Online publication date: 16-Oct-2020
  • (2020)Hybrid deep neural networks to infer state models of black-box systemsProceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering10.1145/3324884.3416559(299-311)Online publication date: 21-Dec-2020
  • (2019)An empirical study on practicality of specification mining algorithms on a real-world applicationProceedings of the 27th International Conference on Program Comprehension10.1109/ICPC.2019.00020(65-69)Online publication date: 25-May-2019
  • (2019)Interactive semi-automated specification mining for debuggingInformation and Software Technology10.1016/j.infsof.2019.05.002113:C(20-38)Online publication date: 1-Sep-2019
  • (2019)Incorporating Data into EFSM InferenceSoftware Engineering and Formal Methods10.1007/978-3-030-30446-1_14(257-272)Online publication date: 18-Sep-2019
  • (2018)AutoModelProceedings of the 40th International Conference on Software Engineering: Companion Proceeedings10.1145/3183440.3190333(515-517)Online publication date: 27-May-2018
  • (2016)MobileinsightProceedings of the 22nd Annual International Conference on Mobile Computing and Networking10.1145/2973750.2973751(202-215)Online publication date: 3-Oct-2016
  • (2015)Building high assurance human-centric decision systemsAutomated Software Engineering10.1007/s10515-014-0157-z22:2(159-197)Online publication date: 1-Jun-2015
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media