·
Análise e Desenvolvimento de Sistemas ·
Introdução à Lógica e Programação
Send your question to AI and receive an answer instantly
Recommended for you
152
Lógica de Programação - Aula 08 - Estruturas de Dados em Python
Introdução à Lógica e Programação
UMG
61
Aula 1 - Lógica Proposicional - Matemática Aplicada à Computação
Introdução à Lógica e Programação
UMG
5
uma Aplicação da Lógica Proposicional Portas Lógicas
Introdução à Lógica e Programação
UMG
97
Polimorfismo Estrutural em JavaScript Guia Completo para Entregáveis e Interfaces
Introdução à Lógica e Programação
UMG
77
Lógica Proposicional - Propriedades e Quantificadores - Matemática Aplicada
Introdução à Lógica e Programação
UMG
6
Criar Código em Python
Introdução à Lógica e Programação
UMG
75
Aula 06 Lógica e Programação - Repetição com While em Python
Introdução à Lógica e Programação
UMG
6
Lista de Exercícios - Lógica de Programação em Java
Introdução à Lógica e Programação
IFPE
1
Lista de Exercícios Java: Calculo de A e Soma de Indices de Letras A
Introdução à Lógica e Programação
IFPE
10
Projeto Integrador I: Modelagem UML de Sistema de Gestão Universitária - Cadastro de Pessoas
Introdução à Lógica e Programação
SENAC
Preview text
Documento complementar com orientações para o desenvolvimento do projeto da disciplina de Programação Orientada a Objetos Sistema de Controle de Tráfego Aéreo Especificação do Sistema Domínio do Problema Os aviões não andam livres pelos céus Eles se mantêm em aerovias Uma aerovia é um tipo de corredor virtual que delimita a trajetória e a altitude que as aeronaves devem seguir num terminado espaço aéreo ver figura 1 Figura 1 conceito de aerovia Vários aviões podem voar simultaneamente em uma mesma aerovia É a separação vertical das aeronaves ou seja a altitude ou nível de voo que garante a segurança das operações Para isso a distância mínima entre aviões numa mesma aerovia deve ser de 1000 pés 305 metros Como exemplo iremos considerar que os aviões quando em velocidade de cruzeiro podem voar em uma altitude mínima de 25000 pés e máxima de 35000 pés de maneira que podemos ter até 10 aeronaves simultâneas em uma aerovia Por simplicidade vamos assumir que as altitudes são sempre múltiplas de 1000 começando em 25000 e indo até 35000 pés Os aviões voam entre aeroportos Os aeroportos são ligados por rotas neste texto por simplicidade usaremos os termos rota e aerovia como sinônimos embora na prática uma rota possa ser formada por várias aerovias A figura 2 apresenta uma série de aerovias entre aeroportos fictícios As setas indicam o sentido das aerovias Cada aerovia tem um nome um aeroporto de origem um aeroporto de destino e um tamanho em quilômetros Figura 2 aerovias entre aeroportos A seleção da aerovia mais adequada para uma determinada viagem é feita pelo piloto em seu plano de voo O plano de voo especifica a aeronave que será utilizada aerovia que será usada a altitude pés escolhida e o horário em que o voo irá ocorrer Especificação do Sistema O objetivo do trabalho é desenvolver um sistema que auxilie o piloto na elaboração e aprovação de seu plano de voo Neste contexto o sistema deverá ter opções para Listar as aerovias existentes entre dois aeroportos o Deve apresentar na tela a lista de todas as aerovias que partem do aeroporto A para o aeroporto B Listar as altitudes livres em uma determinada aerovia em um determinado horário o Deve apresentar na tela a lista de altitudes livres em uma determinada aerovia em um determinado horário Submeter um plano de voo para aprovação retorna o número do plano aprovado o Deve permitir que o piloto submeta um plano de voo completo O sistema analisa se todos os dados são consistentes se a aeroviaaltitude estão livres nos horários solicitados e todas as restrições que se aplicam a aeronave foram respeitadas ver seção detalhamento das entidades Em caso positivo deve atribuir um identificador numérico para o plano de voo armazenar o mesmo no sistema e marcar a respectiva aeroviaaltitude como ocupada nos horários indicados Por fim deve retornar o identificador do plano de voo aprovado Listar um plano a partir do número o Deve exibir na tela as informações do plano de voo cujo identificador foi informado se ele existir As seções seguintes detalham as entidades do sistema e a lógica de negócio associada às funcionalidades solicitadas Detalhamento das Entidades Pilotos Sobre cada piloto é necessário armazenar seu número de matrícula nome e estado de sua habilitação ativoinativo Aeronaves As aeronaves são identificadas por um prefixo uma string Serão considerados 3 tipos de aeronave Aeronave particular de pequeno porte Aeronave comercial de passageiros Aeronave comercial de carga Sobre qualquer aeronave é necessário armazenar o prefixo o tipo de aeronave a velocidade de cruzeiro em quilômetros por hora e a autonomia em quilômetros Para as aeronaves de pequeno porte é necessário armazenar também o nome da empresa responsável pela manutenção Para as aeronaves comerciais de passageiros é necessário armazenar a quantidade de passageiros que pode transportar e para as de carga o peso máximo em toneladas que é capaz de levar Para qualquer tipo de aeronave comercial é necessário armazenar o nome da companhia aérea Aeronaves comerciais de passageiro só podem voar acima de 28000 pés Aeronaves particulares de pequeno porte só podem voar entre 25000 pés e 27000 pés Aeronaves de carga só podem voar entre a meia noite e as 600 da manhã Aerovias Sobre cada aerovia é necessário armazenar um identificador string o aeroporto de origem o aeroporto de destino e o tamanho da aerovia em quilômetros Por simplicidade iremos assumir que as aerovias possuem sentido único neste caso para que se possa ir e voltar entre Porto Alegre e Florianópolis serão necessárias duas aerovias POAFLO e FLOPOA Como já foi visto no enunciado geral as aerovias são divididas em altitudes Por simplicidade iremos assumir que todas as aerovias são divididas em 10 altitudes começando em 25000 pés até 35000 pés A ocupação de cada aerovia se dá por slot de tempo Por simplicidade vamos assumir slots de hora cheia Para saber quantos slots de tempo uma aeronave necessita para percorrer uma aerovia basta dividir o tamanho da aerovia pela velocidade de cruzeiro da aeronave Exemplo Aerovia POARJ 1000Km Velocidade de cruzeiro da aeronave 800Kmh Tempo de viagem 1000 800 125 horas o que equivale a 75 minutos ou 1h15min Como estamos assumindo slots de hora cheia mesmo que a aeronave utilize apenas 15 minutos do segundo slot este voo irá ocupar 2 slots de horário Então se o voo estiver previsto para as 1500hs iremos ocupar os slots das 1500 e o das 1600 Se o voo estiver previsto para as 1552 iremos ocupar os slots das 1500hs 1600hs e 1700hs Para que o controle de ocupação das aerovias possa ser feito será necessário manter a lista das altitudes e slots de cada aerovia ocupados em cada dia data Plano de voo Sobre cada plano de voo é necessário armazenar um identificador numérico a matrícula do piloto responsável por conduzir o voo o prefixo da aeronave que será utilizada a data e o horário do voo a aerovia escolhida a altitude que será usada a lista de slots de horário ocupados e um booleano que indica se foi cancelado ou não Para que um plano de voo possa ser aprovado as seguintes condições tem de ser satisfeitas A habilitação do piloto tem de estar ativa A aeronave tem de ter autonomia para voar o trecho a autonomia tem de ser 10 maior que o tamanho da aerovia A altitude escolhida tem de ser compatível com o tipo de aeronave Não pode haver restrições de horário para o tipo de aeronave Os slots de horário necessários têm de estar livres Se um plano de voo é aprovado ele recebe o identificador numérico e precisa ser registrado no sistema para consulta futura Além disso os controles relativos à ocupação das aerovias altitudes e slots de horário têm de ser devidamente atualizados de maneira a impedir que outros planos possam ser aprovados de maneira sobreposta Diagrama de Classes Referência O diagrama de classes que segue pode ser usado como referência na implementação do sistema Modificações podem ser feitas desde que os princípios de programação orientada a objetos vistos em aula sejam respeitados
Send your question to AI and receive an answer instantly
Recommended for you
152
Lógica de Programação - Aula 08 - Estruturas de Dados em Python
Introdução à Lógica e Programação
UMG
61
Aula 1 - Lógica Proposicional - Matemática Aplicada à Computação
Introdução à Lógica e Programação
UMG
5
uma Aplicação da Lógica Proposicional Portas Lógicas
Introdução à Lógica e Programação
UMG
97
Polimorfismo Estrutural em JavaScript Guia Completo para Entregáveis e Interfaces
Introdução à Lógica e Programação
UMG
77
Lógica Proposicional - Propriedades e Quantificadores - Matemática Aplicada
Introdução à Lógica e Programação
UMG
6
Criar Código em Python
Introdução à Lógica e Programação
UMG
75
Aula 06 Lógica e Programação - Repetição com While em Python
Introdução à Lógica e Programação
UMG
6
Lista de Exercícios - Lógica de Programação em Java
Introdução à Lógica e Programação
IFPE
1
Lista de Exercícios Java: Calculo de A e Soma de Indices de Letras A
Introdução à Lógica e Programação
IFPE
10
Projeto Integrador I: Modelagem UML de Sistema de Gestão Universitária - Cadastro de Pessoas
Introdução à Lógica e Programação
SENAC
Preview text
Documento complementar com orientações para o desenvolvimento do projeto da disciplina de Programação Orientada a Objetos Sistema de Controle de Tráfego Aéreo Especificação do Sistema Domínio do Problema Os aviões não andam livres pelos céus Eles se mantêm em aerovias Uma aerovia é um tipo de corredor virtual que delimita a trajetória e a altitude que as aeronaves devem seguir num terminado espaço aéreo ver figura 1 Figura 1 conceito de aerovia Vários aviões podem voar simultaneamente em uma mesma aerovia É a separação vertical das aeronaves ou seja a altitude ou nível de voo que garante a segurança das operações Para isso a distância mínima entre aviões numa mesma aerovia deve ser de 1000 pés 305 metros Como exemplo iremos considerar que os aviões quando em velocidade de cruzeiro podem voar em uma altitude mínima de 25000 pés e máxima de 35000 pés de maneira que podemos ter até 10 aeronaves simultâneas em uma aerovia Por simplicidade vamos assumir que as altitudes são sempre múltiplas de 1000 começando em 25000 e indo até 35000 pés Os aviões voam entre aeroportos Os aeroportos são ligados por rotas neste texto por simplicidade usaremos os termos rota e aerovia como sinônimos embora na prática uma rota possa ser formada por várias aerovias A figura 2 apresenta uma série de aerovias entre aeroportos fictícios As setas indicam o sentido das aerovias Cada aerovia tem um nome um aeroporto de origem um aeroporto de destino e um tamanho em quilômetros Figura 2 aerovias entre aeroportos A seleção da aerovia mais adequada para uma determinada viagem é feita pelo piloto em seu plano de voo O plano de voo especifica a aeronave que será utilizada aerovia que será usada a altitude pés escolhida e o horário em que o voo irá ocorrer Especificação do Sistema O objetivo do trabalho é desenvolver um sistema que auxilie o piloto na elaboração e aprovação de seu plano de voo Neste contexto o sistema deverá ter opções para Listar as aerovias existentes entre dois aeroportos o Deve apresentar na tela a lista de todas as aerovias que partem do aeroporto A para o aeroporto B Listar as altitudes livres em uma determinada aerovia em um determinado horário o Deve apresentar na tela a lista de altitudes livres em uma determinada aerovia em um determinado horário Submeter um plano de voo para aprovação retorna o número do plano aprovado o Deve permitir que o piloto submeta um plano de voo completo O sistema analisa se todos os dados são consistentes se a aeroviaaltitude estão livres nos horários solicitados e todas as restrições que se aplicam a aeronave foram respeitadas ver seção detalhamento das entidades Em caso positivo deve atribuir um identificador numérico para o plano de voo armazenar o mesmo no sistema e marcar a respectiva aeroviaaltitude como ocupada nos horários indicados Por fim deve retornar o identificador do plano de voo aprovado Listar um plano a partir do número o Deve exibir na tela as informações do plano de voo cujo identificador foi informado se ele existir As seções seguintes detalham as entidades do sistema e a lógica de negócio associada às funcionalidades solicitadas Detalhamento das Entidades Pilotos Sobre cada piloto é necessário armazenar seu número de matrícula nome e estado de sua habilitação ativoinativo Aeronaves As aeronaves são identificadas por um prefixo uma string Serão considerados 3 tipos de aeronave Aeronave particular de pequeno porte Aeronave comercial de passageiros Aeronave comercial de carga Sobre qualquer aeronave é necessário armazenar o prefixo o tipo de aeronave a velocidade de cruzeiro em quilômetros por hora e a autonomia em quilômetros Para as aeronaves de pequeno porte é necessário armazenar também o nome da empresa responsável pela manutenção Para as aeronaves comerciais de passageiros é necessário armazenar a quantidade de passageiros que pode transportar e para as de carga o peso máximo em toneladas que é capaz de levar Para qualquer tipo de aeronave comercial é necessário armazenar o nome da companhia aérea Aeronaves comerciais de passageiro só podem voar acima de 28000 pés Aeronaves particulares de pequeno porte só podem voar entre 25000 pés e 27000 pés Aeronaves de carga só podem voar entre a meia noite e as 600 da manhã Aerovias Sobre cada aerovia é necessário armazenar um identificador string o aeroporto de origem o aeroporto de destino e o tamanho da aerovia em quilômetros Por simplicidade iremos assumir que as aerovias possuem sentido único neste caso para que se possa ir e voltar entre Porto Alegre e Florianópolis serão necessárias duas aerovias POAFLO e FLOPOA Como já foi visto no enunciado geral as aerovias são divididas em altitudes Por simplicidade iremos assumir que todas as aerovias são divididas em 10 altitudes começando em 25000 pés até 35000 pés A ocupação de cada aerovia se dá por slot de tempo Por simplicidade vamos assumir slots de hora cheia Para saber quantos slots de tempo uma aeronave necessita para percorrer uma aerovia basta dividir o tamanho da aerovia pela velocidade de cruzeiro da aeronave Exemplo Aerovia POARJ 1000Km Velocidade de cruzeiro da aeronave 800Kmh Tempo de viagem 1000 800 125 horas o que equivale a 75 minutos ou 1h15min Como estamos assumindo slots de hora cheia mesmo que a aeronave utilize apenas 15 minutos do segundo slot este voo irá ocupar 2 slots de horário Então se o voo estiver previsto para as 1500hs iremos ocupar os slots das 1500 e o das 1600 Se o voo estiver previsto para as 1552 iremos ocupar os slots das 1500hs 1600hs e 1700hs Para que o controle de ocupação das aerovias possa ser feito será necessário manter a lista das altitudes e slots de cada aerovia ocupados em cada dia data Plano de voo Sobre cada plano de voo é necessário armazenar um identificador numérico a matrícula do piloto responsável por conduzir o voo o prefixo da aeronave que será utilizada a data e o horário do voo a aerovia escolhida a altitude que será usada a lista de slots de horário ocupados e um booleano que indica se foi cancelado ou não Para que um plano de voo possa ser aprovado as seguintes condições tem de ser satisfeitas A habilitação do piloto tem de estar ativa A aeronave tem de ter autonomia para voar o trecho a autonomia tem de ser 10 maior que o tamanho da aerovia A altitude escolhida tem de ser compatível com o tipo de aeronave Não pode haver restrições de horário para o tipo de aeronave Os slots de horário necessários têm de estar livres Se um plano de voo é aprovado ele recebe o identificador numérico e precisa ser registrado no sistema para consulta futura Além disso os controles relativos à ocupação das aerovias altitudes e slots de horário têm de ser devidamente atualizados de maneira a impedir que outros planos possam ser aprovados de maneira sobreposta Diagrama de Classes Referência O diagrama de classes que segue pode ser usado como referência na implementação do sistema Modificações podem ser feitas desde que os princípios de programação orientada a objetos vistos em aula sejam respeitados