Logo blue background.png

Bruce Powel Douglass, Ph.D.

  • Content

    • Resources
    • Embedded World
    • Papers
    • Presentations
    • Models
    • Harmony aMBSE Overview
    • Harmony aMBSE Functional Analysis
    • Harmony Embedded Software Overview
    • Harmony ESW Nanocycle
    • Safety Analysis and Design
    • Books
    • On the Web
    • Links
  • Services

  • Public Interest

  • Blog

  • What's New

  • Forum

  • About

  • Comments

  • Site Map

  • Geekosphere

  • Members

    • Members Only
  • More

    Use tab to navigate through the menu items.
    To see this working, head to your live site.
    • Categories
    • All Posts
    • My Posts
    Avraham Makeler
    Jul 30, 2021

    Simple question on the meaning of <<iterative >>

    in UML / SysML

    Hi Bruce,

    How are you doing?

    I ask what is the definition of <<iterative >> in expansion regions in activity diagrams. For me personally this was never a question because I understand it as letting me do a For loop, e.g.,

    For i=1 to 10

    Do-Something // So it does it 10 times

    End For


    However, while I was presenting my UML diagram to an audience, an engineer team leader (not a UML maven) objected against the term ‘iterative’, because to him ‘iterative’ implies an 'iterative process' such that each step improves a result. I am also aware of this definition, but I assume the UML definition is not that ans means a simple For loop.


    Bruce, please confirm that the UML definition of <<iterative >> and iteration is like a simple For loop. Or otherwise, and explain.


    Thanks.

    Avi



    1 answer0 replies
    0
    1
    Bruce Douglass
    Nov 22, 2021

    I'd like to amend my response. Iterative is defined in UML 2 for expansion regions in activities, they're just not supported in Rhapsody (they are in Cameo though). As for objecting to the term "iterative", that's what's in the standard. My advice is "live with it" since the standard won't change because your team leader doesn't like it.


    The spec defines it as "If the value is iterative, the expansion executions must occur in an iterative sequence, with one completing before another can begin. The first expansion execution begins immediately when the ExpansionRegion starts executing, with subsequent executions starting when the previous execution is completed. If the input collections are ordered, then the expansion executions are sequenced in the order induced by the input collection. Otherwise, the order of the expansion executions is not defined." This means that the feature is intended to iterate over a collection (For loop is a subset of that), so for most uses, yes, this is a For-Next loop.

    1 comments
    Site Map

    (c) Bruce Powel Douglass, Ph.D. 2019, 2020

    bruce.douglass@outlook.com