Neste projeto da disciplina Paradigmas de Linguagens de Programação, desenvolveremos uma aplicação nas linguagens:
- Haskell
- Prolog
A ideia do programa surgiu da necessidade que coordenadores e órgãos administrativos têm de controlar e organizar o uso de salas e/ou ambientes de trabalho de forma holística. Dessa forma, surgiu a ideia de um sistema computacional que possa ser monitorado e editado, atualizando-se instantaneamente para mostrar o estado de ocupação do prédio.
O SIGES é um sistema de gerenciamento e controle que opera sobre as salas e locais de um determinado bloco/prédio para organizar, visualizar e controlar o uso destas pelas pessoas. Com este sistema, é possível reservar salas, visualizar o uso delas (e quem as usa) previamente ou em tempo real, a fim de auxiliar órgãos administrativos/empresariais na organização do seu trabalho e servir como fonte de informação aos usuários sem interromper as atividades correntes.
-
- Permitir ao usuário criar uma conta para reservar e cancelar a ocupação de salas;
- Permitir a visualização das salas sem a necessidade de registro (o que garante a rapidez uma melhor interação do usuário com o programa, sem muitos rodeios).
-
- Responsável pela ocupação;
- Qual a duração da reunião/evento na sala;
- Capacidade de ocupação da sala;
- Motivo, explicação sobre o que acontece na sala (i.e. palestra, prova escrita, reunião da gerência, reforma, etc.), assim usuários podem saber qual sala acontece tal evento sem precisar interromper.
- Ser capaz de ocupar salas (no sistema) e atualizar todo o sistema para que a visualização inclua a nova reserva;
-
- Permitir ao usuário remover ocupações de sala em casos de cancelamento ou mudança de planos;
- Permitir ao usuário transferir uma ocupação, sem precisar reinserir todas as informações;
-
- Interação orgânica com o usuário para realizar as operações do sistema;
- Identificar erros (sem quebrar o sistema) ao usar o sistema;
- Dar detalhes ao usuário sobre os erros em ii;
- Permitir ao usuário escolher outras opções quando identificar erros como em ii ou digitar opções inválidas;
- Oferecer indicações de sala baseadas em informações providas pelo usuário (tipo de sala, capacidade, tempo de duração, equipamentos);