Resumo do Estudo de Caso
Apt 04
26/06/2007
Fase 3.2: Ilustração da Contribuição
Rodrigo Paes
[email protected]
Objetivo:
Ilustrar Governança com Fidedignidade
Metodologia adotada
• Análise do Domínio
• Casos de Uso
• Arquitetura
• Análise e especificação dos aspectos de Governança
• Análise e especificação dos aspectos de fidedignidade
Rodrigo Paes - [email protected] © LES/PUC-Rio
Análise do Domínio
• Função principal
– A principal função do controle de tráfego aéreo (CTA) é controlar e
monitorar o tráfego aéreo de um aeroporto de origem até um
aeroporto de destino
• Fontes de problemas
– Software
– Hardware
– Comportamento (brigas, álcool)
– Falha Humana
– Condições do tempo
Rodrigo Paes - [email protected] © LES/PUC-Rio
Análise do Domínio
• Fases
– ( 1 ) Planejamento do Vôo
– ( (1)
2 )Controle
Acionamento
de Pistados Motores e Push-back
– ( 3 ) Início de Táxi
– ( 4 ) Decolagem
– ( (2)
5 )Decolagem
Saída da Terminal
– ( (3)
6 )Vôo
Vôo em Cruzeiro
– ( 7 ) Início de Descida
– ( (4)
8 )Pouso
Entrada na Terminal
– ( 9 ) Aproximação Final
– ( 10 ) Pouso e Táxi
Rodrigo Paes - [email protected] © LES/PUC-Rio
Análise do Domínio
interseção
Alertas
meteorológicos
aerovias
setor
controladores
radar
Rodrigo Paes - [email protected] © LES/PUC-Rio
Casos de Uso
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
CDU001_Manter_Separação_Lateral_Vertical_Longitudinal
CDU002_Receber_Informações_Estações_Metereológicas
CDU003_Informar_Condições_Tempo_Ao_Piloto
CDU004_Receber_Informações_Posicionamento_Velocidade
CDU005_Informar_Posicionamento_Velocidade
CDU006_Receber_Plano_Vôo
CDU007_Permitir_Aprovacao_Planos_Voo
CDU008_Garantir_Segurança_Aterrissagem
CDU009_Informar_Proativamente_Mudança_Controlador
CDU010_Monitorar_Ações_Piloto
CDU011_Informar_Pilotos_Ações
CDU012_Prover_Comunicação_Não_Ambígua
CDU013_Garantir_Segurança_Decolagem
CDU014_Garantir_Segurança_Vôo
CDU015_Exibir_Interface_Gráfica
Rodrigo Paes - [email protected] © LES/PUC-Rio
Arquitetura
• TODO: integrar com DepEx
Rodrigo Paes - [email protected] © LES/PUC-Rio
Governança
Passo 1: identificar as cenas de interação
Passo 2: identificar os protocolos de interação de cada cena
Passo 2.1: identificar os agentes que participam da interação
Passo 2.2: identificar constraints
Passo 3: identificar as normas
Passo 4: identificar os clocks
Passo 5: identificar as actions
Passo 5.1: devem ser identificadas somente actions relacionadas a governança, ou
seja, as actions relacionadas a fidedignidade devem ser postergadas
Rodrigo Paes - [email protected] © LES/PUC-Rio
Governança - cenas
groundControl{
//nome da cena
// Mensagens
flightPlan{pilot, controller,propose(flightPlan($content))}
reject{controller, pilot, reject-proposal}
accept{controller, pilot, accept-proposal}
intent{pilot, controller, request(go-position)}
position{controller, pilot, inform(pos, $instructions)}
// Estados especiais
s1{initial}
s3{failure}
s6{success}
// Transições
t1{s1->s2,
t2{s2->s3,
t3{s2->s4,
t4{s4->s5,
t5{s5->s6,
}
flightPlan}
reject}
accept}
intent}
position}
Rodrigo Paes - [email protected] © LES/PUC-Rio
Governança - cenas
take-off{
//nome da cena
// Mensagens
request{pilot, controller, request(take-off)}
refuse{controller, pilot, refuse }
agree{controller, pilot, agree }
// Estados especiais
s1{initial}
s3{failure}
s4{success}
// Transições
t1{s1->s2, request}
t2{s2->s3, refuse}
t3{s2->s4, agree}
}
Rodrigo Paes - [email protected] © LES/PUC-Rio
Governança - cenas
flight{ //nome da cena
// Mensagens
progressR{radar, controller, inform(strip, $flightProgressStrip)}
progressA{pilot, controller, inform(strip, $flightProgressStrip)}
switch{controller, pilot, inform(switch, $newController)}
landing{pilot, controller, inform(landIntention)}
// Estados especiais
s1{initial}
s3{success}
// Transições
t1{s1->s2,
t2{s1->s2,
t3{s2->s2,
t4{s2->s2,
t5{s2->s2,
t6{s2->s3,
}
progressR}
progressA}
progressR}
progressA}
switch}
landing}
Rodrigo Paes - [email protected] © LES/PUC-Rio
Governança - cenas
landing{
ask-permission{pilot, controller,
request(landingPermission)}
wait{controller, pilot, inform(wait)}
agree{controller, pilot, agree(permission)}
s1{initial}
s4{success}
t1{s1->s2, ask-permission}
t2{s2->s3, wait}
t3{s3->s4, agree}
t4{s2->s4, agree}
}
Rodrigo Paes - [email protected] © LES/PUC-Rio
Governança
• TODO: especificação dos outros elementos
– Actions, norms, constraints, clocks ...
Rodrigo Paes - [email protected] © LES/PUC-Rio
Fidedignidade
• Abordagem
– Identificação das ameaças
– Mapeamento para os elementos do XMLaw
– Utilização de detectores de falhas
Rodrigo Paes - [email protected] © LES/PUC-Rio
Fidedignidade
Caso de
Lei
Caso de
Uso
CDL001
CDU001
Aeronave se aproxima demais de outra aeronave
CDL002
CDU014
Aeronave voa em uma altitude diferente da planejada
CDL003
CDU013
Piloto não ativa o "flap" no momento da decolagem
CDL004
CDU012
Ocorre falha no entendimento da comunicação entre o piloto e a torre de controle
CDL005
CDU013
O piloto não ativa o sistema descongelador
CDL006
CDU014
Piloto desativa inapropriadamente um instrumento
CDL007
CDU002
Falha na comunicação com a estação meteorológica
CDL008
CDU004
Falha na comunicação com os radares
Ameaça
Rodrigo Paes - [email protected] © LES/PUC-Rio
Fidedignidade
Caso de
Lei
Caso de
Uso
CDL009
CDU007
Controlador aprova plano de voo fora das especificações de segurança
CDL010
CDU008
Controlador concede permissão de voo que acarretará em uma distância mínima menor
que o especificado
CDL011
CDU009
Controlador perde o canal de comunicação
CDU008
Para que uma aeronave possa operar sem restrições em uma determinada RWY, o ACN
da acft deverá ser menor ou igual que o PCN da pista (ACN <= PCN). A ameaça
consiste em a aeronave solicitar pouso com ACN>PCN
CDU008
O piloto não executa a operação padrão de circuito de tráfego ao pousar. A altura padrão
para as aeronaves realizarem o circuito de tráfego é:
• 1500ft (pés) para aeronaves a jato;
• 1000ft (pés) para aeronaves a hélice.
Todas as curvas são feitas para a esquerda
CDU014
Exceto em procedimentos de pouso e decolagem, as aeronaves não poderão voar sobre
cidades, povoados, lugares habitados ou grupo de pessoas ao ar livre a uma altura
inferior a 1000 pés (300M) acima do obstáculo mais alto existente num raio de 600M em
torno da acft; A ameaça consiste no piloto descumprir estas restrições.
CDU014
Exceto em procedimentos de pouso e decolagem, as aeronaves não poderão voar em
lugares desabitados em altura inferior a 500 pés (150M) sobre o solo ou água. A ameaça
consiste no piloto voar a uma altura inferior a 500 pés.
CDL012
CDL013
CDL014
CDL015
Ameaça
Rodrigo Paes - [email protected] © LES/PUC-Rio
Fidedignidade – Detectores de Falhas
• Idéia
– Um agente especializado em reconhecer falhas comuns
• Ex: time-outs
– Evita “poluir” a lei com aspectos de baixo nível
– Usar o agente na especificação das leis
Rodrigo Paes - [email protected] © LES/PUC-Rio
TODOs
• Finalizar aspectos de governança
• Integrar com DepEx
• Utilizar o Failure Detector
• Escrever
Rodrigo Paes - [email protected] © LES/PUC-Rio
Obrigado!
Rodrigo Paes
[email protected]
Download

rodrigo - (LES) da PUC-Rio