Checking the Correspondence Between UML models and Implementation

S. Ciraci, Somayeh Malakuti Khah Olun Abadi, Shmuel Katz, Mehmet Aksit

    Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

    6 Citations (Scopus)
    94 Downloads (Pure)

    Abstract

    UML class and sequence diagrams are used as the basis for runtime profiling along with either offline or online analysis to determine whether the execution conforms to the diagrams. Situations where sequence diagrams are intended to characterize all possible executions are described. The approach generates an execution tree of all possible sequences, using a detailed collection of graph transformations that represent a precise operational semantics for sequence diagrams, including treatment for polymorphism, multiple activations, reference to other diagrams, and the use of frames in sequence diagrams. The sequence diagrams are also used to determine the information that should be gathered about method calls in the system. Aspects that can follow the flow of messages in a distributed system, are generated and the results of execution are recorded. The execution tree is used to automatically check the recorded execution to detect operations that do not correspond to any of the diagrams. These represent either new types of sequence diagrams that should be added to the collection, or implementation errors where the system is not responding as designed. In either case, it is important to identify such situations.
    Original languageUndefined
    Title of host publication1st International Conference on Runtime Verification
    Place of PublicationBerlin
    PublisherSpringer
    Pages198-213
    Number of pages15
    ISBN (Print)978-3-642-16611-2
    DOIs
    Publication statusPublished - 1 Nov 2010
    Event1st International Conference on Runtime Verification, RV 2010 - St. Julians, Malta
    Duration: 1 Nov 20104 Nov 2010
    Conference number: 1
    http://www.um.edu.mt/events/rv2010

    Publication series

    NameLecture Notes in Computer Science
    PublisherSpringer Verlag
    Volume6418
    ISSN (Print)0302-9743
    ISSN (Electronic)1611-3349

    Conference

    Conference1st International Conference on Runtime Verification, RV 2010
    Abbreviated titleRV
    CountryMalta
    CitySt. Julians
    Period1/11/104/11/10
    Internet address

    Keywords

    • METIS-275635
    • IR-74133
    • UML class and sequence diagrams
    • EWI-18306
    • Graph Transformation
    • aspect-oriented profiling
    • execution semantics
    • Runtime verification

    Cite this

    Ciraci, S., Malakuti Khah Olun Abadi, S., Katz, S., & Aksit, M. (2010). Checking the Correspondence Between UML models and Implementation. In 1st International Conference on Runtime Verification (pp. 198-213). (Lecture Notes in Computer Science; Vol. 6418). Berlin: Springer. https://doi.org/10.1007/978-3-642-16612-9_16
    Ciraci, S. ; Malakuti Khah Olun Abadi, Somayeh ; Katz, Shmuel ; Aksit, Mehmet. / Checking the Correspondence Between UML models and Implementation. 1st International Conference on Runtime Verification. Berlin : Springer, 2010. pp. 198-213 (Lecture Notes in Computer Science).
    @inproceedings{f0949cdf37a14607ae414824a6e84603,
    title = "Checking the Correspondence Between UML models and Implementation",
    abstract = "UML class and sequence diagrams are used as the basis for runtime profiling along with either offline or online analysis to determine whether the execution conforms to the diagrams. Situations where sequence diagrams are intended to characterize all possible executions are described. The approach generates an execution tree of all possible sequences, using a detailed collection of graph transformations that represent a precise operational semantics for sequence diagrams, including treatment for polymorphism, multiple activations, reference to other diagrams, and the use of frames in sequence diagrams. The sequence diagrams are also used to determine the information that should be gathered about method calls in the system. Aspects that can follow the flow of messages in a distributed system, are generated and the results of execution are recorded. The execution tree is used to automatically check the recorded execution to detect operations that do not correspond to any of the diagrams. These represent either new types of sequence diagrams that should be added to the collection, or implementation errors where the system is not responding as designed. In either case, it is important to identify such situations.",
    keywords = "METIS-275635, IR-74133, UML class and sequence diagrams, EWI-18306, Graph Transformation, aspect-oriented profiling, execution semantics, Runtime verification",
    author = "S. Ciraci and {Malakuti Khah Olun Abadi}, Somayeh and Shmuel Katz and Mehmet Aksit",
    note = "10.1007/978-3-642-16612-9_16",
    year = "2010",
    month = "11",
    day = "1",
    doi = "10.1007/978-3-642-16612-9_16",
    language = "Undefined",
    isbn = "978-3-642-16611-2",
    series = "Lecture Notes in Computer Science",
    publisher = "Springer",
    pages = "198--213",
    booktitle = "1st International Conference on Runtime Verification",

    }

    Ciraci, S, Malakuti Khah Olun Abadi, S, Katz, S & Aksit, M 2010, Checking the Correspondence Between UML models and Implementation. in 1st International Conference on Runtime Verification. Lecture Notes in Computer Science, vol. 6418, Springer, Berlin, pp. 198-213, 1st International Conference on Runtime Verification, RV 2010, St. Julians, Malta, 1/11/10. https://doi.org/10.1007/978-3-642-16612-9_16

    Checking the Correspondence Between UML models and Implementation. / Ciraci, S.; Malakuti Khah Olun Abadi, Somayeh; Katz, Shmuel; Aksit, Mehmet.

    1st International Conference on Runtime Verification. Berlin : Springer, 2010. p. 198-213 (Lecture Notes in Computer Science; Vol. 6418).

    Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

    TY - GEN

    T1 - Checking the Correspondence Between UML models and Implementation

    AU - Ciraci, S.

    AU - Malakuti Khah Olun Abadi, Somayeh

    AU - Katz, Shmuel

    AU - Aksit, Mehmet

    N1 - 10.1007/978-3-642-16612-9_16

    PY - 2010/11/1

    Y1 - 2010/11/1

    N2 - UML class and sequence diagrams are used as the basis for runtime profiling along with either offline or online analysis to determine whether the execution conforms to the diagrams. Situations where sequence diagrams are intended to characterize all possible executions are described. The approach generates an execution tree of all possible sequences, using a detailed collection of graph transformations that represent a precise operational semantics for sequence diagrams, including treatment for polymorphism, multiple activations, reference to other diagrams, and the use of frames in sequence diagrams. The sequence diagrams are also used to determine the information that should be gathered about method calls in the system. Aspects that can follow the flow of messages in a distributed system, are generated and the results of execution are recorded. The execution tree is used to automatically check the recorded execution to detect operations that do not correspond to any of the diagrams. These represent either new types of sequence diagrams that should be added to the collection, or implementation errors where the system is not responding as designed. In either case, it is important to identify such situations.

    AB - UML class and sequence diagrams are used as the basis for runtime profiling along with either offline or online analysis to determine whether the execution conforms to the diagrams. Situations where sequence diagrams are intended to characterize all possible executions are described. The approach generates an execution tree of all possible sequences, using a detailed collection of graph transformations that represent a precise operational semantics for sequence diagrams, including treatment for polymorphism, multiple activations, reference to other diagrams, and the use of frames in sequence diagrams. The sequence diagrams are also used to determine the information that should be gathered about method calls in the system. Aspects that can follow the flow of messages in a distributed system, are generated and the results of execution are recorded. The execution tree is used to automatically check the recorded execution to detect operations that do not correspond to any of the diagrams. These represent either new types of sequence diagrams that should be added to the collection, or implementation errors where the system is not responding as designed. In either case, it is important to identify such situations.

    KW - METIS-275635

    KW - IR-74133

    KW - UML class and sequence diagrams

    KW - EWI-18306

    KW - Graph Transformation

    KW - aspect-oriented profiling

    KW - execution semantics

    KW - Runtime verification

    U2 - 10.1007/978-3-642-16612-9_16

    DO - 10.1007/978-3-642-16612-9_16

    M3 - Conference contribution

    SN - 978-3-642-16611-2

    T3 - Lecture Notes in Computer Science

    SP - 198

    EP - 213

    BT - 1st International Conference on Runtime Verification

    PB - Springer

    CY - Berlin

    ER -

    Ciraci S, Malakuti Khah Olun Abadi S, Katz S, Aksit M. Checking the Correspondence Between UML models and Implementation. In 1st International Conference on Runtime Verification. Berlin: Springer. 2010. p. 198-213. (Lecture Notes in Computer Science). https://doi.org/10.1007/978-3-642-16612-9_16