60.Β EARS requirements
This table lists every EARS statement in the model, with the rule that implements it and the guarantees that mention that rule. The build generates it from the docstrings; the same table is in the blueprint and in ears.csv.
ID | EARS statement | Rule | Status | Proven by |
|---|---|---|---|---|
ONE-001 | When a customer accepts an offer, the system shall create an order with one order item for each offer item and one service for each passenger and flight segment of that item. |
| Modelled |
|
ONE-002 | The system shall give each order item the status active, cancelled or closed from the service and delivery statuses of its services. |
| Modelled |
|
ONE-003 | The system shall mark an order opened while any of its services holds value, and closed once all its items are closed or cancelled and all its services are delivered or removed. |
| Modelled |
|
ONE-101 | When an event happens to a service, the system shall move its delivery status only along the moves in the delivery status table. |
| Modelled |
|
ONE-102 | When a service is cancelled, expires, is not claimed or cannot be delivered, the system shall move it to the delivery status that records why. |
| Modelled | none |
ONE-103 | The system shall treat DELIVERED, REMOVED, EXPIRED, NOT CLAIMED and FAILED TO DELIVER as final delivery statuses, which no event leaves. |
| Modelled |
|
ONE-104 | When the airline suspends a service, the system shall record the delivery status it left and return it only to that status or remove it. |
| Modelled |
|
ONE-105 | When a rule in any area ends a service, the system shall move the service's delivery status only along a move of the delivery status table. |
| Modelled |
|
ONE-201 | When the airline prices a change or cancellation of order items, the system shall state the amount due to the airline, the amount due by the airline and a type code that names the outcome. |
| Modelled |
|
ONE-202 | When a change or cancellation carries a penalty, the system shall either net the penalty against the price difference or charge it separately. |
| Modelled |
|
ONE-203 | When a seller asks to cancel an order, the system shall cancel it at once if no payment has been received for it, and otherwise only through a cancellation offer. |
| Modelled |
|
ONE-204 | When a seller has accepted and paid a change to an order item, the system shall add a new item with the services the change keeps and cancel the services it does not keep. |
| Modelled |
|
ONE-205 | When a seller settles a change or cancellation offer, the system shall record on the order what the customer paid, what the airline returned, the penalty and the forfeited amount. |
| Modelled |
|
ONE-301 | The system shall give a payment the status FAILED if it has no payment method or the transaction of any of its payment methods failed, SUCCESSFUL if all of them succeeded, and PENDING otherwise. |
| Modelled |
|
ONE-302 | The system shall count an order item paid once a SUCCESSFUL payment covers it. |
| Modelled |
|
ONE-303 | When the airline reports the outcome of a payment method's transaction, the system shall record it as the transaction's status if the move from the recorded status is allowed. |
| Modelled |
|
ONE-304 | When a seller pays for order items, the system shall accept the payment only if it is made before the items' payment time limits and its requested amounts add up to their price, and shall charge each payment method its requested amount plus its surcharge. |
| Modelled |
|
ONE-305 | When a payment becomes SUCCESSFUL, the system shall move every CONFIRMED service of the order items it covers to READY TO PROCEED and remove their payment time limits. |
| Modelled |
|
ONE-306 | When an order item's payment time limit passes with no SUCCESSFUL payment covering it, the system shall remove the item and mark FAILED every PENDING payment that covers it. |
| Modelled |
|
ONE-401 | When a seller selects items from an offer, the system shall accept the selection only if it names items the offer holds and includes every item the offer marks mandatory. |
| Modelled |
|
ONE-402 | When a seller sends a create request with selections from one or more offers, the system shall check each selection and create one order from them, or reject the request. |
| Modelled |
|
ONE-403 | When a seller sends a create request, the system shall create the order and record the offers it came from, unless an offer it names has already produced an order. |
| Modelled |
|
ONE-404 | When the airline applies a group of changes to an order, the system shall raise the order's version by one and record the group in the order's history. |
| Modelled |
|
ONE-405 | When a seller sends a change request, the system shall compare the order version the request carries, if any, with the order's current version before applying the change. |
| Modelled |
|
ONE-406 | The system shall keep an order accessible for 13 months from its creation and for 13 months from its first usage while it has an active item, and for 7 days after every item has reached a final status. |
| Modelled |
|
ONE-501 | While no order has been created from an offer, the system shall treat an offer item's price and inventory as guaranteed only until both the item's guarantee time limit and the offer's expiry. |
| Modelled |
|
ONE-502 | When a customer accepts an offer whose items carry time limits, the system shall create the order as ONE-001 does and give each order item its payment time limit and price guarantee from its offer item. |
| Modelled |
|
ONE-503 | When a change or cancellation is asked for at an instant, the system shall take as the rule in force the rule for that action and the journey's current stage with the latest effective date not after that instant. |
| Modelled |
|
ONE-504 | When a customer asks for a voluntary change, the system shall refuse it if the rule in force forbids it, and otherwise quote it with the rule's fee as the penalty. |
| Modelled |
|
ONE-505 | When a customer cancels an unused order item voluntarily, the system shall return what the cancel rule in force gives: nothing if it forbids cancellation, and otherwise a full or a fixed refund. |
| Modelled |
|
ONE-506 | When an airline states a price with its parts, the system shall total the price as its base amount plus its surcharges, fees, taxes and the consumption tax not included in it. |
| Modelled |
|
ONE-601 | The system shall count as dependent on a flight service the ancillary services of the order that the link between dependent and parent ties to it. |
| Modelled |
|
ONE-602 | When a seller adds services to an order, the system shall accept the request only if every flight-related ancillary in it has a live flight service for its passenger and segment, in the order or in the request. |
| Modelled |
|
ONE-603 | When a seller cancels order items, the system shall cancel every live service of the items named and treat the services that depend on a cancelled flight as the reading says. |
| Modelled |
|
ONE-604 | When a flight service is replaced by a flight on another segment, the system shall state for each live service that depends on it the effect the reading gives for its kind. |
| Modelled |
|
ONE-605 | When a seller chooses seats for passengers, the system shall add one order item for each seat the seat map marks available, and refuse the request if any seat chosen is not. |
| Modelled |
|
ONE-606 | When a seller chooses an a-la-carte offer item for passengers and segments it lists as eligible, the system shall create one order item for each passenger and segment chosen, at the unit price times the quantity. |
| Modelled |
|
ONE-607 | When a seller removes services from a bundle, the system shall cancel them and return their share of the bundle price under the reading. |
| Modelled |
|
ONE-701 | When an airline change notice offers follow-up actions, the system shall keep them pending until the seller answers with one of them or a consequence of inaction applies. |
| Modelled |
|
ONE-702 | When a time limit of a change notice passes and the seller has not answered, the system shall apply the consequence of inaction of the follow-up action whose time limit passed first. |
| Modelled |
|
ONE-703 | When a customer declines an airline change through Cancel or Reshop, the system shall price it as a cancellation or change of the affected order items, with the airline's cancellation or change fee as the penalty. |
| Modelled |
|
ONE-704 | When the airline cancels a flight and does not re-accommodate the customer, the system shall cancel every live service on that flight with delivery status UNABLE TO DELIVER. |
| Modelled |
|
ONE-705 | When the airline moves a customer to other flights, the system shall replace the affected order item with a new item at the same price, holding a service for each passenger on each new flight. |
| Modelled |
|
ONE-801 | The system shall owe the seller of an order item the total of the item's commissions, each a fixed amount or a percentage of a stated base amount. |
| Modelled |
|
ONE-802 | When a payment commitment is made, the system shall state the clearances between the ORA and the seller for it, with their net clearance amounts. |
| Modelled |
|
ONE-803 | When the ORA sends a clearance, the system shall accept it unless it repeats a clearance already accepted, and record only accepted clearances. |
| Modelled |
|
ONE-804 | When the ORA cancels a clearance or the Clearance Manager settles, claws back or writes off money on it, the system shall move the clearance's status and amounts as the clearance statuses describe. |
| Modelled |
|
ONE-805 | When the Clearance Manager nets the clearances for a remittance date, the system shall make each party a settlement payee or a remittance payer for its net position. |
| Modelled |
|
ONE-806 | When the Clearance Manager sends a clearing, the system shall make its total, and the bank transfer for it, the amounts settled less the amounts clawed back. |
| Modelled |
|
ONE-807 | When a remittance payer pays short and the Clearance Manager has no credit line, the system shall split what was paid across the payer's clearances. |
| Modelled |
|
ONE-808 | If a service provider bills the ORA for a service before it has been delivered or consumed, then the system shall refuse the bill unless a bilateral agreement allows earlier billing. |
| Modelled |
|
ONE-809 | The system shall hold the amount paid for a service as a liability until the service reaches a final delivery status, and only then recognize it as revenue. |
| Modelled |
|
OO-001 | When a customer accepts an offer, the system shall create an order only if the offer has not expired and contains at least one item. |
| Modelled |
|
OO-002 | When a delivery event is applied to a service, the system shall allow only the transitions ready to delivered, ready to cancelled, cancelled to refunded. |
| Modelled |
|
OO-003 | When a refund is requested against a payment, the system shall accept it only if the refund amount does not exceed that payment's amount. |
| Modelled |
|