Corresponding to the EMS requirements of 19 June 2001.
0. The form of a scenario
1. Glossaries
1.1. Defined terms
1.1. Primitive conditions
1.1. Actors
1.1. Episodes
1.1. Menu trees
2. Scenarios
S0. EMS startup
S1. EMS shutdown
S2. Subscriber authentication
S3. Subscriber authentication from unsubscribed telephone
S4. Subscriber authentication from another subscriber's telephone
S5. Subscriber changes his/her passcode
S6. Subscriber configures his/her announcement
S7. Subscriber sets up a group of phone numbers as a recipient
S8. Subscriber checks for new messages
S9. New message notification by stuttered dial tone
S10. New message notification, by indicator
S11. No new message notification, by indicator
S12. Subscriber listens to a message
S13. Subscriber has no more messages to listen to
S14. Subscriber skips to next message
S15. Subscriber would skip to next message but has no more messages
S16. Subscriber skips around in a message while listening to it
S17. Subscriber listens to the time a message was received
S18. Subscriber erases a message
S19. Subscriber erases the last message
S20. Subscriber archives a message
S21. Subscriber archives the last message
S22. Subscriber forwards a message
S23. Subscriber forwards a message with a preface
S24. Subscriber replies to a message
S25. Confidential
S26. Subscriber records a message and sends it to someone
S27. Subscriber takes no action for a long time
S28. Subscriber is prompted about old held messages
S29. Subscriber is prompted about old archived messages
S30. Subscriber disconnects from EMS
S31. Caller calls subscriber and leaves a message
S32. Caller reviews his/her message
S33. Caller reviews and re-records his/her message
S34. Caller distinguishes his/her message as urgent
S35. Caller distinguishes his/her message as private
S36. Caller decides he/she needs to speak to a receptionist
S37. Caller doesn't want to listen to the subscriber's announcement
S38. Caller calls EMS directly and leaves a message
S39. Caller takes no action for a long time
S40. Caller disconnects from EMS
Each scenario has 0 or more preconditions which must be true when the scenario is initiated, and 0 or more postconditions which will be true when the scenario terminates.
The events in each scenario occur beginning with the first and continuing through the last. An event may be
The choice of whether an iteration continues, or between alternatives, is expressed in terms of an action of an agent external to the system, or in terms of the external state of the system.
Terms used in this document are defined here or in the EMS requirements.
current message The subscriber's newest urgent new message, if any; else the subscriber's newest message, if any; else the subscribe has no current message.
next message Relative to the current message, the subscriber's next newest urgent new message (if any), or next newest message (if any); if not, then the subscribe has no next message. (Compare the less detailed next message.)
The conditions are predicates on a subscriber, caller, or message. In these scenarios it is clear which subscriber, caller, or message is intended, so no explicit notation is used to identify each predicate's parameter.
Announcement Bypassable The subscriber has configured his/her announcement so that it can be bypassed (R2.2.5, R4.6).
Archived The subscriber is processing a message that hasn't been archived (R3.2.8).
Authenticated The subscriber is connected to EMS and is authenticated (R1.4).
Connected The caller is connected to the EMS.
Has (m) More The subscriber has m messages not listened to or otherwise processed in this call, and m≥0.
Has (m>0) More The subscriber has m messages not listened to or otherwise processed in this call, and m>0.
Has (m) New The subscriber has m new messages and m≥0.
Has (m>0) New The subscriber has m new messages and m>0.
Has Current The subscriber is processing a message that hasn't been erased or archived (R3.2.7, R3.2.8).
Has New Message Indicator The subscriber' phone has a new message indicator (R3.1.5).
Has Old Held The subscriber has one or more old held messages.
Left Message The caller has left a message but has not yet hung up (R4.2).
Played EMS has just played a message.
Subscribed The caller is a subscriber of EMS (R1.5).
These trees in the form of outlines summarize a possible set of menu choices of the actions used in the scenarios for subscriber actions.
A subscriber or caller has these choices only when EMS first answers.
It is assumed that some actions can take place at almost any point:
When processing old held or archived messages, the "skip" menu item is not available.
The tree for caller actions is much simpler. This tree is available in two situations: to someone who has called a subscriber's number if the subscriber doesn't answer, and to someone who has called EMS directly to leave a message without the possibility of speaking to the subscriber.
It is assumed that the action of leaving a message doesn't require making any menu choice.
Requirements: (none).
Postcondition: (none).
This is the initial scenario for the system.
Requirements: (none).
Precondition: (none).
This is the terminal scenario for the system.
Requirements: R1.1, R1.3, R1.4.
Precondition: Subscribed.
Postcondition: Authenticated.
Equivalent to: S2,
S3,
S4.
An initial scenario for subscriber narrative
Requirements: R1.1, R1.2, R1.3, R1.4.
Precondition: Subscribed.
Postcondition: Authenticated.
Equivalent to: S2,
S3,
S4.
An initial scenario for subscriber narrative
Requirements: R1.1, R1.2, R1.3, R1.4.
Precondition: Subscribed.
Postcondition: Authenticated.
Equivalent to: S2,
S3,
S4.
An initial scenario for subscriber narrative
Requirements: R2.1.
Precondition: Authenticated.
Postcondition: Authenticated.
Can follow: S2,
S3,
S4.
Equivalent to: S5,
S6,
S7.
Requirements: R2.2.
Precondition: Authenticated.
Postcondition: Authenticated.
Can follow: S2,
S3,
S4.
Equivalent to: S5,
S6,
S7.
Requirements: R2.3.
Precondition: Authenticated.
Postcondition: Authenticated.
Can follow: S2,
S3,
S4.
Equivalent to: S5,
S6,
S7.
Requirements: R3.1.1, R3.1.2.
Precondition: Authenticated.
Postcondition: Authenticated.
Can follow: S2, S3, S4.
Follow-equivalent to (can follow same scenarios as): S5, S6, S7.
Requirements: R3.1.1, R3.1.4.
Precondition: (None).
Postcondition: (None).
Equivalent to: (None).
Compare S9, S10, S11. Not synchronized with any of the main narratives.
Requirements: R3.1.1, R3.1.5.
Precondition: Has (0) New, Has New Message Indicator.
Postcondition: Has (1) New, Has New Message Indicator.
Equivalent to: (None).
Compare S9, S10, S11. Can follow S31 if subscriber has new message indicator.
Requirements: R3.1.1, R3.1.5.
Precondition: Has (1) New, Has New Message Indicator.
Postcondition: Has (0) New, Has New Message Indicator.
Equivalent to: (None).
Compare S9, S10, S11. Should potentially follow S12, S13 if subscriber has new message indicator.
Requirements: R3.2.1, R3.2.2.
Precondition: Authenticated, Has (n>0) More.
Postcondition: Authenticated, Has (n-1) More, Has Current.
Equivalent to: (None).
Requirements: R3.2.1, R3.2.2.
Precondition: Authenticated, Has (0) More.
Postcondition: Authenticated, Has (0) More, ¬Has Current.
Equivalent to: (None).
Requirements: R3.2.1, R3.2.2.
Precondition: Authenticated, Has (n>0) More, Has Current.
Postcondition: Authenticated, Has (n-1) More, Has Current.
Equivalent to: (None).
Requirements: R3.2.1, R3.2.2.
Precondition: Authenticated, Has (0) More.
Postcondition: Authenticated, Has (0) More, ¬Has Current.
Equivalent to: (None).
Requirements: R3.2.5.
Precondition: Authenticated, Has Current.
Postcondition: Authenticated, Has Current.
Equivalent to: (None).
Requirements: R3.2.6.
Precondition: Authenticated, Has Current.
Postcondition: (no change).
Equivalent to: (None).
Requirements: R3.2.4, R3.2.7.
Precondition: Authenticated, Has (n>0) More, Has Current.
Postcondition: Authenticated, Has (n-1) More, Has Current.
Equivalent to: S20.
Requirements: R3.2.4, R3.2.7.
Precondition: Authenticated, Has (0) More, Has Current.
Postcondition: Authenticated, Has (0) More.
Equivalent to: (None).
Requirements: R3.2.4.
Precondition: Authenticated, Has (n>0) More, Has Current, ¬Archived.
Postcondition: Authenticated, Has (n-1) More, Has Current.
Equivalent to: S17.
Requirements: R3.2.8.
Precondition: Authenticated, Has (0) More, Has Current, ¬Archived.
Postcondition: Authenticated, Has (0) More, ¬Has Current.
Equivalent to: S17.
Requirements: R3.2.10.
Precondition: Authenticated.
Postcondition: Authenticated.
Equivalent to: S22,
S23,
S24,
S26.
Requirements: R3.2.10.
Precondition: Authenticated.
Postcondition: Authenticated.
Equivalent to: S22,
S23,
S24,
S26.
Requirements: R3.2.9.
Precondition: Authenticated.
Postcondition: Authenticated.
Equivalent to: S22,
S23,
S24,
S26.
This scenario is excluded from public versions of the scenarios.
Requirements: R3.2.14.
Precondition: Authenticated.
Postcondition: Authenticated.
Equivalent to: S22,
S23,
S24,
S26.
Requirements: R3.2.15.
Precondition: Authenticated.
Postcondition: ¬Authenticated.
Equivalent to: S27,
S30.
Requirements: R3.2.15.
Precondition: Authenticated.
Postcondition: Authenticated.
Requirements: R3.2.16.
This scenario is identical with scenario S28 for old held messages,
with "archived" substituted for "held"
and without the alternative of archiving the already-archived message.
Requirements: (No individual requirement).
Precondition: Authenticated.
Postcondition: ¬Authenticated.
Equivalent to: S27,
S30.
Requirements: R4.1.
Precondition: Has (n) New.
Postcondition: Has (n+1) New, Left Message, Connected.
Equivalent to: S31, S38.
Requirements: R4.3.
Precondition: Left Message, Connected.
Postcondition: Left Message, Connected.
Equivalent to: S32, S33, S34, S35.
Requirements: R4.3.
Precondition: Left Message, Connected.
Postcondition: (unchanged).
Equivalent to: S32, S33, S34, S35.
Requirements: R4.4.
Precondition: Left Message, Connected.
Postcondition: (unchanged).
Equivalent to: S32, S33, S34, S35.
Requirements: R4.4.
Identical to S34, with "urgent" replaced by "private" everywhere.
Requirements: R4.5.
Precondition: Connected.
Postcondition: (No change).
Can occur virtually anywhere in a caller's call.
Requirements: R4.6.
Precondition: Announcement Bypassable, Connected.
Postcondition: (No change).
Can occur anywhere during the subscriber's announcement.
Requirements: R4.7.
Precondition: Has (n) New, Connected.
Postcondition: Has (n+1) New, Left Message, Connected.
Equivalent to: S31, S38.
Requirements: R3.2.15.
Precondition: Connected.
Postcondition: ¬Connected.
Equivalent to: S39,
S40.
Requirements: (No individual requirement).
Precondition: Connected.
Postcondition: ¬Connected.
Equivalent to: S39,
S40.