0 calificaciones0% encontró este documento útil (0 votos)
8 vistas3 páginas
El documento especifica los estados y operaciones de un sistema de facturación de aerolínea. Los estados incluyen terminales abiertos, cerrados, disponibles y ocupados, así como una cola de viajeros. Las operaciones permiten abrir y cerrar terminales, asignar viajeros a terminales disponibles, terminar facturaciones y añadir viajeros a la cola.
El documento especifica los estados y operaciones de un sistema de facturación de aerolínea. Los estados incluyen terminales abiertos, cerrados, disponibles y ocupados, así como una cola de viajeros. Las operaciones permiten abrir y cerrar terminales, asignar viajeros a terminales disponibles, terminar facturaciones y añadir viajeros a la cola.
El documento especifica los estados y operaciones de un sistema de facturación de aerolínea. Los estados incluyen terminales abiertos, cerrados, disponibles y ocupados, así como una cola de viajeros. Las operaciones permiten abrir y cerrar terminales, asignar viajeros a terminales disponibles, terminar facturaciones y añadir viajeros a la cola.
𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐴𝑏𝑖𝑒𝑟𝑡𝑜𝑠∩𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐶𝑒𝑟𝑟𝑎𝑑𝑜𝑠=∅ 2) Un terminal está ocupado o disponible 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠∩𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝑂𝑐𝑢𝑝𝑎𝑑𝑜𝑠=∅ 3) El número de terminales abiertos y cerrados serán el total de terminales 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐴𝑏𝑖𝑒𝑟𝑡𝑜𝑠∪𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐶𝑒𝑟𝑟𝑎𝑑𝑜𝑠=𝑀𝑎𝑥𝑃𝑢𝑒𝑠𝑡𝑜𝑠 4) El número de terminales disponibles y ocupados serán el total de terminales abiertos 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠∪𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝑂𝑐𝑢𝑝𝑎𝑑𝑜𝑠=𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐴𝑏𝑖𝑒𝑟𝑡𝑜𝑠
Estados
TerminalesAbiertos: conjunto de terminales abiertos para facturación.
𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐴𝑏𝑖𝑒𝑟𝑡𝑜𝑠: ℙ 𝑀𝑎𝑥𝑃𝑢𝑒𝑠𝑡𝑜𝑠 TerminalesCerrados: conjunto de terminales cerrados 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐶𝑒𝑟𝑟𝑎𝑑𝑜𝑠: ℙ 𝑀𝑎𝑥𝑃𝑢𝑒𝑠𝑡𝑜𝑠 TerminalesDisponibles: conjunto de terminales abiertos sin cliente facturando (ordenados según dejaron de ser ocupados o cerrados) 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠: 𝑠𝑒𝑞 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐴𝑏𝑖𝑒𝑟𝑡𝑜𝑠 TerminalesOcupados: conjunto de terminales en los que hay un viajero facturando 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝑂𝑐𝑢𝑝𝑎𝑑𝑜𝑠: ℙ 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐴𝑏𝑖𝑒𝑟𝑡𝑜𝑠 ColaViajeros: conjunto de viajeros que están esperando para facturar (ordenados por orden de llegada a la cola) 𝐶𝑜𝑙𝑎𝑉𝑖𝑎𝑗𝑒𝑟𝑜𝑠: 𝑠𝑒𝑞 𝐶𝑙𝑖𝑒𝑛𝑡𝑒𝑠𝐴𝑅𝐶𝑂𝐼𝑅𝐼𝑆
Operaciones
AbrirTerminal (T) → abre una terminal cerrada (T)
Precondición - Haya al menos una terminal cerrada #𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐶𝑒𝑟𝑟𝑎𝑑𝑎𝑠 > 0 - El número de viajeros sea mayor a ocho veces el número de terminales abiertas #𝐶𝑜𝑙𝑎𝑉𝑖𝑎𝑗𝑒𝑟𝑜𝑠 > 8 ∗ #𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐴𝑏𝑖𝑒𝑟𝑡𝑎𝑠 Postcondición - La terminal T pasa de estar cerrada a estar abierta y disponible 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐶𝑒𝑟𝑟𝑎𝑑𝑎𝑠 ′ = 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐶𝑒𝑟𝑟𝑎𝑑𝑎𝑠 ∖ {𝑇} 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐴𝑏𝑖𝑒𝑟𝑡𝑎𝑠 ′ = 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐴𝑏𝑖𝑒𝑟𝑡𝑎𝑠 ∪ {𝑇} 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠 ′ = 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠 ^ < 𝑇 > CerrarTerminal (T) → cierra la última terminal disponible (T) Precondición - Haya al menos una terminal disponible #𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠 > 0 - El número de viajeros sea menor a cuatro veces el número de terminales abiertas #𝐶𝑜𝑙𝑎𝑉𝑖𝑎𝑗𝑒𝑟𝑜𝑠 < 4 ∗ #𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐴𝑏𝑖𝑒𝑟𝑡𝑎𝑠 - La terminal que se cierra es la última disponible 𝑇 = 𝑢𝑙𝑡𝑖𝑚𝑜 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠 Postcondición - La terminal pasa de estar abierta y disponible a estar cerrada 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐶𝑒𝑟𝑟𝑎𝑑𝑎𝑠 ′ = 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐶𝑒𝑟𝑟𝑎𝑑𝑎𝑠 ∪ {𝑇} 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐴𝑏𝑖𝑒𝑟𝑡𝑎𝑠 ′ = 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐴𝑏𝑖𝑒𝑟𝑡𝑎𝑠 ∖ {𝑇} 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠 ′ = 𝑓𝑟𝑒𝑛𝑡𝑒 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠
IniciarFacturación (T, V) → asigna el primer viajero (V) de la cola de viajeros a la primera
terminal de facturación (T) disponible Precondición - Haya al menos una terminal disponible #𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠>0 - Haya al menos un viajero en la cola #𝐶𝑜𝑙𝑎𝑉𝑖𝑎𝑗𝑒𝑟𝑜𝑠>0 - La terminal que se ocupa es la primera de la secuencia 𝑇=𝑐𝑎𝑏𝑒𝑧𝑎 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠 - El viajero que se asigna es el primero de la cola 𝑉 = 𝑐𝑎𝑏𝑒𝑧𝑎 𝐶𝑜𝑙𝑎𝑉𝑖𝑎𝑗𝑒𝑟𝑜𝑠 Postcondición - El viajero deja de estar en la cola 𝐶𝑜𝑙𝑎𝑉𝑖𝑎𝑗𝑒𝑟𝑜𝑠 ′ = 𝑐𝑜𝑙𝑎 𝐶𝑜𝑙𝑎𝑉𝑖𝑎𝑗𝑒𝑟𝑜𝑠 - La terminal pasa de ser la primera disponible a estar ocupada 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠 ′ = 𝑐𝑜𝑙𝑎 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝑂𝑐𝑢𝑝𝑎𝑑𝑎𝑠 ′ = 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝑂𝑐𝑢𝑝𝑎𝑑𝑎𝑠 ∪ {𝑇} TerminarFacturación (T) → la terminal de facturación ocupada (T) se va al final de la lista de terminales disponibles Precondición - Hay al menos una terminal ocupada #𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝑂𝑐𝑢𝑝𝑎𝑑𝑎𝑠 > 0 Postcondición - La terminal pasa de estar ocupada a ser la última disponible 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠 ′ = 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝐷𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠 ^ < 𝑇 > 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝑂𝑐𝑢𝑝𝑎𝑑𝑎𝑠 ′ = 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑙𝑒𝑠𝑂𝑐𝑢𝑝𝑎𝑑𝑎𝑠 ∖ {𝑇} AñadirViajero (V) → se añade un viajero (V) a la cola Precondición Postcondición - Se añade el viajero al final de la cola