As an XLR user, I would like to have a facility within a Delivery that allows me greater flexibility in communicating with the Releases as Tracked Items active within a particular stage of the Delivery. In the present implementation, the Delivery can send a notice to a Release when a Tracked Item becomes Available within a certain Stage, when aTracked Item becomes Completed within a certain Stage, and when a Stage is Completed. Each of these is dependent on a change of state within a Tracked Item, a Stage, or a Delivery.

The corresponding tasks in a Template or Release are: Patterns and Deliveries > Wait for Tracked Items, with inputs for the Delivery, Tracked Item(s), and Tracked Item Status, and Patterns and Deliveries > Wait for Stage, with inputs for the Delivery and the Stage.

I would like to propose the following as a means of communicating to Releases without having to change any of the attributes of Tracked Items, Stages, or Deliveries. This would help in coordinating Release tasks.

(1) An additional option on the Tracked Item popup menu that allows for a "Signal" option to send a notice to the Release. The notice should include an optional parameter value (string) that the Release can receive and interpret. Sending a signal would not change the status of the Tracked Item.  

(2) An additional option on the Stage popup menu that allows for a Signal to be sent to all Releases that are active within that Stage, with a similar optional string parameter. Sending a Signal would not change the status of the Stage.

(3) A new Task at the Release/Template level, Wait for Signal, that would listen for Signals received from the Delivery specified and place the received string parameter into an output property, which a user could assign to a Release Variable to be accessed by other tasks in the Release.

Inputs:
the Delivery by name or id
the type of Signal to listen for: tracked item signal, stage signal, perhaps also the existing closed/completed notifications.

Outputs:
the type of signal received
the string parameter value

Comments

  • Suggestion would be to try use the Transition functionality to accomplish the task of repetitive controlled promotion of components to higher stages of SDLC.

    In particular, approach to use and perform Manual transition should be evaluated which would allow to pick and choose items from a Delivery to move forward.

    Then listening to the availability of these items would be Wait for tracked item tasks in the component releases which would complete following the manual transition thus allowing the activities of the particular stage to start for that component.

    If an item is to not proceed at all then it should be Descoped from inside the delivery triggering a failure of the Wait for tracked item task.

    It is suggested to use the built-in Abort of failed releases functionality (available in version 23.3+) or write a dedicated time triggered release which would search for such abandoned releases and abort them after given period of time.