Giter VIP home page Giter VIP logo

ariane5's Introduction

Simulação de GPS e Calculadora de Velocidade para Foguete

Este projeto simula, de forma simplista, a interação entre o sistema de GPS de um foguete e uma calculadora de velocidade. O objetivo é demonstrar a importância dos testes de integração em sistemas complexos, inspirado pelo desastre do foguete Ariane 5, que explodiu 40 segundos após o lançamento devido a falhas de integração que não foram adequadamente testadas.

O desastre do Ariane 5 destaca a crítica necessidade de testes de integração em sistemas de software, especialmente aqueles que lidam com a vida humana e equipamentos valiosos. Este projeto serve como um lembrete e uma ferramenta educacional sobre a importância de validar a integração entre diferentes componentes de um sistema.

Visão Geral

O projeto consiste em duas partes principais:

  • API de GPS: Simula a obtenção de posições geográficas de um foguete em diferentes momentos do seu voo.

  • API de Calculadora de Velocidade: Calcula a velocidade do foguete entre dois pontos no tempo, utilizando as posições fornecidas pela API de GPS.

As APIs são construídas usando o framework Flask para Python.

Como Executar

Requisitos

  • Python 3
  • Flask
  • pytest (para execução de testes)

Configuração e Execução

  1. Clone o repositório para o seu ambiente local ou para uma EC2.

  2. Instale as dependências utilizando pip install -r requirements.txt.

  3. Inicie as APIs de GPS e Calculadora de Velocidade executando os arquivos correspondentes:

    • Para a API de GPS: python gps_api.py
    • Para a API de Calculadora de Velocidade: python calc_veloc_api.py
  4. Execute os testes de integração para verificar a correta interação entre as APIs utilizando pytest.

Estrutura do Projeto

  • gps_api.py: Contém a implementação da API de GPS.

  • calc_veloc_api.py: Contém a implementação da API de Calculadora de Velocidade.

  • tests/: Diretório contendo testes de integração que simulam o uso conjunto das APIs de GPS e Calculadora de Velocidade.

Contribuindo

Este é um projeto educacional e está aberto a contribuições. Se você tem ideias para melhorar a simulação ou para expandir o escopo do projeto, sinta-se à vontade para criar um pull request ou abrir uma issue.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.