Almoço com os amigos

Introdução

A intenção desse aprendizado além do encontro entre amigos é usar o planejamento do encontro para especificar um aplicativo para definir, convidar, confirmar e organizar os detalhes do almoço, tornando o processo mais simples e eficiente, motivando o grupo (lembrando que é um grupo de TI) a se atualizarem com as novas práticas de desenvolvimento de sistemas e trocarem idéias a respeito.

Nessa oportunidade esta sendo utilizado o ChatGPT com sua Inteligencia Artificial, para auxiliar tanto no conteúdo como a codifigação da página para disponibilizar na Web, facilitando o acesso a todos participantes.

A idéia é que todos continuem a interagirem online, com conteúdo e se possível com código, de uma forma colaborativa e significativa, construindo assim um conhecimento comum ao grupo e produzindo uma auto motivação ao crescimento pessoal de cada um do grupo.

A visualização do projeto será feita através desse modelo de página, sendo a espinha dorsal da documentação, podendo ser visualizados os artefatos produzidos e linkados o acesso a êles. Caso a página esteja ficando grande poderá ser quebrada em outras página e ser dividida como se fosse um fichário.

Como estratégia de desenvolvimento esta sendo usada a Engenharia do Conhecimento para construção dessa visualização. Para dominar a complexidade foram dividos nos seguintes blocos de conhecimento até se chegar no objetivo final:

  1. Parte I: Análise do Sistema

    • Necessidades   
    • Bordas do Sistema  
      • Sistema atual, Cenário, contexto, domínio e escopo.
    • Licitação dos Requisitos dos Atores   
    • Casos de Uso do Organizador   
    • Casos de Uso do Organizador   
    • Casos de Uso do Organizador   
    • Funcionalidades do Organizador   
    • Funcionalidades do Convidado   
    • Funcionalidades do Sistema   
    • Modelo de dados conceitual   
    • Regras do sistema   
    • Critérios de Aceitação   
    • Gestão de risco   
  2. Parte II Prototipação

    • Requisitos do Protótipo   
    • Funcionalidades   
    • Quem irá desenvolver o protótipo?   
    • Quem irá operar o protótipo?   
  3. Parte III Projeto do Aplicativo

    • Interfaces   
    • Arquitetura de sistema   
    • Arquitetura de informação   
    • Estrutura e fluxo de funcionamento do aplicativo   
    • Modelo de dados do aplicativo   
    • Módulos por Ator/Requisitos/Funcionalidades   
    • Menu por Ator/Requisitos/Funcionalidades   
    • Telas (E/S) por módulo   
    • Arquivos (E/S) por módulo   
    • Programas por funcionalidade   
    • Procedimentos adicionais para complementar aplicativo   
    • Procedimentos por ator   
    • Quem irá operar o sistema?   
  4. Parte IV Rastreamento dos Requisitos

  5. Parte V Implementação do Aplicativo   
  6. Parte VI Implantação / Distribuição   
  7. Parte VII Uso   
    1. Anexos (Making off):
  8. Estrutura analitica do projeto   
  9. Abordagens de desenvolvimento   
  10. Atividades de análise   
  11. Documentação projeto   
  12. Regras do requisito   
  13. Ferramentas   
  14. Glossario de Termos   
  15. Referências bibliograficas e levantamentos   

Como modelo inicial do relacionamento entre participantes e aplicação web, ver modelo a seguir:

Modelo mental Relacionamento Usuário x Sistema Computacional.
Ver detalhe

PARTE I - Análise

Necessidade

    Dificuldade de organizar e coordenar encontros de almoço entre um grupo de amigos. Essa necessidade leva à criação do sistema, que visa atender essa demanda específica. Especificar sistema de informação que atenda aos requisitos específicos de planejamento de almoço com amigos, destacando as principais funcionalidades e características desejadas, como seleção de preferências, busca de restaurantes, convite de amigos, confirmação de participação e reserva de mesa.

Bordas do Sistema

Sistema atual

    Modelo mental atual. Ampliar

Cenário

    Item
    Descrição
    Tema Planejamento almoço com amigos
    Objetivo Constribuir para uma experiência mais organizada, eficiente e satisfatória para todas as partes envolvidas no processo
    Contexto se concentrar nas interações e necessidades especificos relacionadas ao processo de planejamento de almoços entre um grupo de amigos ou conhecidos
    Atores Organizador, convidados e sistema
    Recurso Lista de convidados
    Recurso Painel de control do evento
    Episódio
  1. Criar evento de almoço
  2. Editar detalhes do evento de almoço
  3. Visualizar convite de evento de almoço
  4. Confirmar participação do almoço
  5. Visualizar detalhes do evento do almoço
  6. Cancelar participação no evento de almoço
  7. Modelo conceitual dos itens
    Clicar

    O cenário do sistema de planejamento do almoço com amigos envolve um grupo de amigos utilizando a plataforma para definir, convidar, confirmar e organizar os detalhes do almoço, tornando o processo mais simples e eficiente

    O cenário do sistema de planejamento do almoço com amigos envolve a situação em que um grupo de amigos deseja organizar um almoço em conjunto. Nesse cenário, o sistema atua como uma plataforma online que facilita o planejamento, organização e coordenação do almoço entre os participantes.

    No cenário do sistema, os amigos podem criar um evento de almoço, definindo a data, horário e local desejados. Eles podem convidar os demais amigos por meio do sistema, que enviará notificações ou convites por email ou outros meios de comunicação. Os convidados recebem as informações sobre o almoço e podem confirmar sua presença ou recusar o convite.

    O sistema também pode oferecer recursos adicionais, como a possibilidade de sugestão de locais para o almoço, votação para escolha do local ou do prato a ser servido, compartilhamento de detalhes do evento, como lista de convidados, menu, observações ou restrições alimentares, entre outras funcionalidades que facilitem o planejamento e organização do almoço.

Contexto

    O contexto do sistema de planejamento do almoço com amigos se concentra nas interações e necessidades específicas relacionadas ao processo de planejamento de almoços entre um grupo de amigos ou conhecidos.

    O contexto do sistema está relacionado à organização e coordenação de eventos de almoço entre um organizador e seus convidados. O sistema tem como objetivo facilitar o processo de planejamento, tornando-o mais eficiente e conveniente para todas as partes envolvidas.

    O contexto envolve a interação entre o organizador e os convidados, onde o organizador tem a responsabilidade de criar e gerenciar os eventos de almoço, convidar os participantes, definir as preferências e restrições, e acompanhar o progresso do planejamento. Os convidados, por sua vez, interagem com o sistema para confirmar a participação, indicar suas preferências e restrições alimentares, e visualizar as informações relevantes sobre o evento.

    O sistema atua como uma plataforma centralizada que facilita a comunicação e colaboração entre o organizador e os convidados, proporcionando uma experiência mais organizada e agradável para todos. Ele pode incluir recursos como criação e edição de eventos, gerenciamento de convites, visualização de detalhes do evento, compartilhamento de preferências alimentares, envio de lembretes e notificações, entre outros.

Domínio

    O domínio do sistema de planejamento do almoço com amigos é o planejamento de eventos sociais, com foco específico em almoços entre amigos.

    Este domínio pode ser considerado a área específica de aplicação ou conhecimento em que o sistema se enquadra. Nesse caso, o domínio seria o planejamento de eventos sociais, mais especificamente o planejamento de almoços entre um grupo de amigos.

    Dentro desse domínio, o sistema visa facilitar e otimizar o processo de planejamento desses almoços, oferecendo funcionalidades que permitem aos organizadores e convidados coordenar datas, horários, locais e outros detalhes relevantes. O objetivo é tornar a experiência de planejar e participar desses almoços mais conveniente, eficiente e agradável para todos os envolvidos.

    Ciência da Computação: Programação, criação de interface, gerenciamento de dados, implementação de recursos tecnológicos.

    Desenvolvimento de software: criação e desenvolvimento do aplicativo: análise de requisitos funcionais e não funcionais, identificação de necessidades e funcionalidades que devemser incorporadas.

    Engenharia cognitiva:usabilidade, experiência do usuário, usabilidade e eficácia.

    Inteligência artificial pode ajudar os usuários a descobrir novos restaurantes.

    Engenharia do conhecimento: uso do chatGPT para pesquisar conteúdo educacional aplicada a pedagogia da aprendizagem do conhecimento (representar, adquirir, armazenar, organizar, utilizar e compartilhar conhecimento humano)

    Ciência da informação: representação do conhecimento através de grafos, ontologias e arquitetura da informação. (categorias (tags), thesuarus, vocabulário controlado da terminologia, glossário de temos)

    Ciência administrativa: Uso de aprendizagem por projeto, estruturação e divisão do esforço mental, teoria da atividade, indicadores para gestão

    Matemática: teoria dos grafos, probabilidade

Escopo

    O escopo do sistema de planejamento do almoço com amigos se refere aos limites e fronteiras do sistema, ou seja, quais funcionalidades e características serão incluídas e quais serão excluídas do escopo do sistema.

    No caso do sistema de planejamento do almoço com amigos, o escopo pode abranger diversas funcionalidades, como o cadastro de usuários, criação e gerenciamento de eventos de almoço, envio de convites aos convidados, confirmação de presença, seleção de local e horário, compartilhamento de informações relevantes, entre outros recursos.

Atores

  1. Organizador
    1. Organizador: É a pessoa responsável por planejar e organizar o almoço. Ele utiliza o sistema para definir as preferências do almoço, escolher o restaurante, convidar os amigos, realizar a reserva da mesa e receber a confirmação dos participantes.
  2. Convidados:
    1. São as pessoas que são convidadas pelo organizador para participar do almoço. Eles recebem convites, confirmam sua participação e podem fornecer suas preferências para o almoço.
  3. Sistema:
    1. Refere-se à parte automatizada do sistema, que é responsável por fornecer opções de restaurantes, auxiliar no processo de planejamento do almoço, enviar convites e gerenciar as reservas. O sistema atua como uma interface entre o organizador e os convidados, facilitando o processo de planejamento do almoço..

Histórias dos Usuários

  1. Organizador

    Desejo:

    1. Criar um novo evento de almoço e definir a data, hora e local para convidar meus amigos.
    2. Adicionar uma lista de convidados ao evento de almoço para enviar os convites.
    3. Poder editar os detalhes do evento, como a data, hora e local, caso haja alguma alteração.
    4. Visualizar a lista de convidados confirmados para o evento de almoço.
    5. Enviar aos próximos convidados à data do evento para garantir a presença de todos.

  2. Convidados:

    Desejo:

    1. Receber um convite para o evento de almoço com todas as informações necessárias.
    2. Poder confirmar minha participação no evento de almoço.
    3. Visualizar os detalhes do evento, como a data, hora, local e lista de convidados confirmados.
    4. Receber os próximos à data do evento para me lembrar de comparecer.

  3. Sistema:
    1. Enviar notificações aos organizadores sobre cancelamentos de eventos para que eles possam tomar como devidas providências.
    2. Gerar um relatório com a lista de participantes confirmados para cada evento de almoço.
    3. Integrar o aplicativo com os calendários dos usuários para facilitar o acompanhamento dos eventos.

Necessidades por Ator

  1. Organizador
    1. Definir suas preferências: O organizador deseja ter a opção de especificar suas preferências para o almoço, como o tipo de culinária desejada, a localização do restaurante, a faixa de preço, a facilidade de estacionamento, entre outros critérios.
    2. Consultar opções de restaurantes: O organizador precisa receber uma lista de restaurantes que atendam às suas preferências informadas, para que ele possa escolher o local mais adequado para o almoço.
    3. Convidar amigos: O organizador quer ter a capacidade de selecionar os amigos que deseja convidar para participar do almoço e enviar convites para eles.
    4. Gerenciar confirmações: O organizador precisa acompanhar as respostas dos convidados e saber quem confirmou sua participação no almoço.
    5. Realizar reserva da mesa: Após escolher o restaurante, o organizador deseja fazer a reserva da mesa para o grupo, garantindo que haja um lugar disponível para todos.
    6. Receber confirmação da reserva: O organizador precisa receber uma confirmação da reserva do restaurante, garantindo que a mesa esteja reservada corretamente.
  2. Convidados:
    1. Receber convite: Os convidados precisam receber um convite formal do organizador para participar do almoço, contendo informações relevantes, como data, horário, local e detalhes adicionais, se necessário.
    2. Visualizar detalhes do almoço: Os convidados desejam ter acesso fácil aos detalhes do almoço, como o restaurante escolhido, a hora marcada e qualquer informação adicional relevante.
    3. Confirmar participação: Os convidados precisam confirmar sua participação no almoço, informando ao organizador se eles estarão presentes ou não.
    4. Visualizar lista de convidados: Os convidados podem ter interesse em saber quem mais foi convidado para o almoço, para que possam ter uma ideia dos amigos presentes.
    5. Receber atualizações: Se houver alguma alteração no plano do almoço, como mudança de local ou horário, os convidados precisam ser informados sobre essas atualizações.
    6. Acompanhar o status do almoço: Os convidados podem desejar acompanhar o status do almoço, como o número de pessoas confirmadas, para se prepararem adequadamente.
  3. Sistema:
      Facilitar o processo de organização do almoço, comunicação entre organizador e convidados, e garantir uma experiência suave e eficiente para todos os envolvidos.
    1. Gerenciar preferências de almoço: O sistema precisa permitir que o organizador insira suas preferências de almoço, como tipo de culinária, localização, faixa de preço e facilidade de estacionamento.
    2. Buscar opções de restaurantes: O sistema deve ser capaz de buscar e apresentar uma lista de restaurantes que atendam às preferências informadas pelo organizador.
    3. Enviar convites: O sistema precisa enviar convites aos convidados, contendo informações sobre o almoço e um link para confirmar a participação.
    4. Gerenciar confirmações de participação: O sistema deve receber as confirmações dos convidados sobre sua participação no almoço e manter um registro atualizado dos convidados confirmados.
    5. Realizar reservas de mesa: O sistema deve permitir que o organizador selecione o restaurante desejado e faça a reserva da mesa para o grupo.
    6. Enviar confirmação de reserva: O sistema deve enviar uma confirmação da reserva da mesa ao organizador, fornecendo detalhes sobre a reserva feita.
    7. Notificar sobre atualizações: Se houver alguma alteração no plano do almoço, como alteração de local ou horário, o sistema deve notificar os convidados e o organizador sobre essas atualizações.
    8. Gerar relatórios: O sistema pode ter a necessidade de gerar relatórios, como lista de convidados confirmados, histórico de almoços realizados, entre outros.

Objetivos por Ator

  1. Organizador
      Contribuir para uma experiência mais organizada, eficiente e satisfatória para todas as partes envolvidas no processo
    1. Proporcionar uma experiência agradável: O organizador deseja garantir que todos os participantes tenham um almoço agradável, com boa comida, ambiente apropriado e momentos de convívio social
    2. Satisfazer as preferências e necessidades dos participantes: O organizador procura encontrar um restaurante que atenda às preferências e necessidades dos participantes, como a culinária desejada, localização conveniente, preço acessível e facilidade de estacionamento
    3. Facilitar a organização e comunicação: O organizador quer facilitar a comunicação com os amigos, enviar convites, receber confirmações de participação e garantir que todos estejam informados sobre os detalhes do almoço.
    4. Realizar uma reserva de mesa: O organizador deseja garantir que haja uma mesa reservada no restaurante escolhido, para que o grupo possa desfrutar do almoço sem preocupações com a disponibilidade de lugares.
    5. Criar memórias e fortalecer os laços de amizade: O organizador busca proporcionar um momento de convívio e diversão entre os amigos, fortalecendo os laços de amizade e criando memórias compartilhadas.
  2. Convidados
      proporcionar uma experiência agradável, conveniente e socialmente satisfatória durante o almoço.
    1. Participar de um almoço agradável: O objetivo principal dos convidados é desfrutar de um almoço agradável em um ambiente apropriado, com boa comida e boa companhia.
    2. Atender às preferências pessoais: Cada convidado pode ter preferências específicas em relação à culinária, localização, faixa de preço e facilidade de estacionamento. O objetivo é ter suas preferências consideradas na escolha do restaurante.
    3. Confirmar participação de maneira fácil: Os convidados desejam ter uma forma simples e conveniente de confirmar sua participação no almoço, seja por meio de um convite enviado pelo sistema, por um link de confirmação ou por outros meios de interação.
    4. Conectar-se com amigos: Participar do almoço oferece a oportunidade de se conectar e interagir com amigos, fortalecendo os laços sociais e desfrutando de momentos de convívio.
    5. Aproveitar a experiência gastronômica: Os convidados buscam ter uma experiência gastronômica agradável, experimentando novos pratos, sabores e ambientes de restaurante.
    6. Evitar o trabalho de organização: Ao participar do sistema de planejamento do almoço, os convidados podem evitar o trabalho de organizar o evento, deixando para o organizador a responsabilidade de selecionar o restaurante, enviar convites e fazer a reserva da mesa.
  3. Sistema
      tornar o processo de organização e realização do almoço mais conveniente, personalizado e satisfatório para todos os envolvidos..
    1. Fornecer opções de restaurantes: O sistema tem como objetivo apresentar uma lista de restaurantes que atendam às preferências do organizador, oferecendo diversas opções para escolha.
    2. Facilitar o planejamento do almoço: O sistema visa simplificar e agilizar o processo de planejamento do almoço, permitindo que o organizador defina suas preferências, convide os convidados e faça a reserva da mesa de forma prática e conveniente.
    3. Garantir a participação dos convidados: O sistema busca enviar convites aos convidados e permitir que eles confirmem sua presença, assegurando que todos estejam cientes e comprometidos com o almoço.
    4. Proporcionar uma experiência personalizada: O sistema busca oferecer recursos de personalização, como recomendação de restaurantes com base nas preferências do organizador, facilitando a escolha de um local que atenda às suas necessidades específicas.
    5. Garantir a reserva da mesa: O sistema permite que o organizador selecione o restaurante desejado e realize a reserva da mesa para o grupo, garantindo um lugar adequado e evitando inconvenientes de lotação.
    6. Enviar confirmação da reserva: O sistema envia uma confirmação da reserva da mesa para o organizador, fornecendo informações importantes sobre o local, horário e outros detalhes relevantes.
    7. Manter a segurança das informações: O sistema deve garantir a segurança e privacidade das informações dos usuários, como dados de contato e preferências, protegendo-os contra acesso não autorizado.
    8. Oferecer uma interface amigável: O sistema deve possuir uma interface intuitiva e fácil de usar, proporcionando uma experiência agradável para o organizador ao realizar o planejamento do almoço.

Requisitos dos Atores

  1. Requisitos do Organizador
    1. Registro de evento:
      • O organizador deve ser capaz de criar um novo evento de almoço, fornecendo informações como dados, horário, local, lista de convidados e detalhes adicionais.
      • Ele deve poder editar as informações do evento, caso haja alterações.
    2. Gerenciamento de convidados:
      • O organizador deve poder convidar pessoas para o evento, adicionando seus nomes e endereços de e-mail à lista de convidados.
      • Ele deve poder visualizar e gerenciar a lista de convidados, adicionando ou removendo participantes conforme necessário.
    3. Notificação de alterações:
      • O organizador deve receber notificações quando houver alterações nos detalhes do evento, como mudança de dados, horário ou local.
      • Ele deve ser informado sobre a confirmação de participação dos convidados.
    4. Compartilhamento de informações:
      • O organizador deve poder compartilhar detalhes do evento com os convidados, como local, horário e outras instruções relevantes.
      • Ele deve ter a opção de enviar convites por e-mail, compartilhar links ou usar outras formas de comunicação.
  2. Requisitos dos Convidados:
    1. Visualização de convite:
      • Os convidados devem receber um convite para o evento de almoço, contendo informações relevantes como data, horário, local e detalhes adicionais.
      • Eles devem poder visualizar o convite e acessar os detalhes do evento.
    2. Confirmação de participação:
      • Os convidados devem poder confirmar sua participação no evento, indicando que estarão presentes.
      • Eles podem fornecer informações adicionais, como restrições alimentares ou compulsivas.
    3. Notificações e sintomas:
      • Os convidados devem receber notificações e conduzidos sobre o evento, como conduzidos próximos à data do almoço.
      • Eles podem optar por receber as notificações por e-mail, no aplicativo ou por outros meios de comunicação.
    4. Interação com outros convidados:
      • Os convidados devem poder interagir com outros participantes do evento, compartilhando informações, fazendo perguntas ou discutindo detalhes relacionados ao almoço.
  3. Requisitos do Sistema
    1. Gerenciamento de eventos:
      • O sistema deve ser capaz de armazenar e gerenciar os detalhes dos eventos de almoço, incluindo data, horário, local e lista de convidados.
      • Ele deve permitir a criação, edição e exclusão de eventos pelo organizador.
    2. Envio de convites e notificações:
      • O sistema deve enviar convites por e-mail ou outras formas de comunicação aos convidados, contendo as informações relevantes do evento.
      • Ele deve enviar notificações e acompanhar os convidados sobre o evento, mantendo-os atualizados sobre as alterações ou informações importantes.
    3. Registro de participação:
      • O sistema deve ser capaz de registrar a confirmação de participação dos convidados no evento.
      • Ele deve permitir a visualização do status de participação e fornecer informações relevantes sobre a presença dos convidados.
    4. Comunicação entre os atores:
      • O sistema deve facilitar a comunicação entre os atores, permitindo que os organizadores enviem mensagens aos convidados e vice-versa.
      • Ele deve fornecer uma plataforma de comunicação eficiente e segura para facilitar a interação entre os participantes.

Casos de Uso do Organizador

Caso de Uso do Organizador. Ampliar

Caso de Uso 1: Criar Evento de Almoço

Ator Principal: Organizador
Atores Secundários: Convidados, Sistema

Pré-condições: O Organizador está autenticado no sistema.

Fluxo Básico:

  1. O Organizador inicia o processo de planejamento de um almoço.
  2. O Organizador define suas preferências de culinária, localização, faixa de preço e facilidade de estacionamento.
  3. O Organizador seleciona os Convidados que participarão do almoço.
  4. O Organizador envia um convite aos Convidados, fornecendo informações sobre a data, hora e local do almoço.
  5. Os Convidados recebem o convite e confirmam sua participação.
  6. O Sistema recebe as confirmações dos Convidados.
  7. O Sistema processa as preferências do Organizador e as confirmações dos Convidados.
  8. O Sistema utiliza as regras de negócio para selecionar e apresentar opções de restaurantes que atendam às preferências do Organizador e considerem as confirmações dos Convidados.
  9. O Organizador visualiza as opções de restaurantes sugeridas pelo Sistema.
  10. O Organizador seleciona o restaurante de sua preferência.
  11. O Sistema envia a confirmação do restaurante escolhido para os Convidados.
  12. Os Convidados recebem a confirmação do restaurante escolhido.
  13. O Sistema registra os detalhes do almoço, incluindo a lista de Convidados, local, data e hora.

Fluxos Alternativos:

  • No passo 4.5, se algum Convidado não puder participar, o Organizador pode remover o Convidado da lista de participantes.
  • No passo 4.9, se as opções de restaurantes sugeridas pelo Sistema não forem satisfatórias, o Organizador pode solicitar ao Sistema que apresente novas opções.

Pós-condições:

  • Um novo evento de almoço é criado.
  • Os convidados selecionados são associados ao evento.
  • Caso de Uso 2: Editar Detalhes do Evento de Almoço

    Ator Principal: Organizador
    Atores Secundários: Convidados, Sistema

    Pré-condições:

  • O Organizador está autenticado no sistema.
  • Existência de um evento de almoço criado pelo Organizador.
  • Fluxo Básico:

    1. O Organizador seleciona o evento de almoço que deseja editar.
    2. O Organizador realiza as alterações necessárias nos detalhes do evento, como data, horário, local e informações adicionais.
    3. O Organizador salva as alterações no sistema.
    Pós-condições:
  • Os detalhes do evento de almoço são atualizados.
  • Casos de Uso do Convidado

    Caso de Uso do Convidado. Ampliar

    Caso de Uso 1: Visualizar Convite do Evento de Almoço

    Ator Principal: Convidados
    Atores Secundários:Sistema , Organizador

    Pré-condições: O Convidado recebeu um convite para o evento de almoço.

    Fluxo Básico:

    1. O Convidado recebe o convite para o evento de almoço.
    2. O Convidado visualiza os detalhes do evento, incluindo dados, horário, local e informações adicionais.

    Pós-condições:

  • O Convidado está ciente dos detalhes do evento de almoço.
  • Caso de Uso 2: Confirmar Participação no Evento de Almoço

    Ator Principal: Convidados
    Atores Secundários: Organizador, Sistema

    Pré-condições:

  • O Convidado recebeu um convite para o evento de almoço.
  • Fluxo Básico:

    1. O Convidado recebe o convite para o evento de almoço.
    2. O Convidado decide se deseja confirmar ou recusar a participação no evento.
    3. O Convidado confirma a participação no evento.
    Pós-condições:
  • O sistema registra a confirmação de participação do Convidado.
  • Caso de Uso 3: Visualizar Detalhes do Evento de Almoço

    Ator Principal: Convidados
    Atores Secundários: Organizador, Sistema

    Pré-condições:

  • O Convidado está confirmado para participar do evento de almoço.
  • Fluxo Básico:

    1. O Convidado acesse os detalhes do evento de almoço.
    2. O Convidado visualiza as informações específicas do evento, como data, horário, local e informações adicionais.
    Pós-condições:
  • O Convidado está ciente dos detalhes do evento de almoço.
  • Caso de Uso 4: Cancelar Participação no Evento de Almoço

    Ator Principal: Convidados
    Atores Secundários: Organizador, Sistema

    Pré-condições:

  • O Convidado está confirmado para participar do evento de almoço.
  • Fluxo Básico:

    1. O Convidado decide cancelar a participação no evento de almoço.
    2. O Convidado informa sua decisão de cancelamento ao Organizador.
    Pós-condições:
  • O sistema de registro o cancelamento da participação do Convidado.
  • O Organizador é notificado sobre o cancelamento do Convidado.
  • Executando o caso de uso

    Organizador:

    • O Organizador cria um novo evento de almoço (Caso de Uso 1 - Criar Evento de Almoço).
    • O Organizador realiza alterações
    • O Organizador convida os amigos para o evento de almoço (Caso de Uso 3 - Convidar Amigos).
    • Os Convidados confirmam sua participação no evento de almoço (Caso de Uso 5 -
    • Os Convidados podem visualizar os detalhes do evento de almoço (Caso de Uso 6 - Visualizar Detalhes do Evento).
    • O Sistema envia aos participantes próximos à data do evento (Caso de Uso 9 - Enviar lembranças aos Participantes).
    • O Sistema gera um relatório com a lista de participantes confirmados no evento de almoço (Caso de Uso 10 - Gerar Relatório de Participação).
    • O Organizador pode cancelar o evento de almoço (Caso de Uso 4 - Cancelar Evento de Almoço).
    • O Sistema notifica o Organizador sobre o cancelamento do evento (Caso de Uso 11 - Notificar Organizador sobre Cancelamento).
    • O Sistema envia notificações aos Convidados em caso de cancelamento do evento (Caso de Uso 12 - Enviar Notificações aos Convidados).
    • Os Convidados podem cancelar sua participação no evento de almoço (Caso de Uso 8 - Cancelar Participação).

    Funcionalidades do Organizador por Requisitos / Caso de Uso

    1. Cadastro de usuários
      1. Permite ao organizador criar uma conta no sistema, fornecendo informações como nome, e-mail e senha.
    2. Criação de evento de almoço:
      1. Permite ao organizador criar um novo evento de almoço, inserindo detalhes como data, horário, local e tema.
    3. Definição das preferências
      1. O organizador informa suas preferências para o almoço, como a culinária desejada, a localização, a faixa de preço e a facilidade de estacionamento.
    4. Consulta das opções de restaurantes
      1. Com base nas preferências informadas, o sistema busca e apresenta uma lista de restaurantes que atendem aos critérios do organizador.
    5. Seleção dos convidados
      1. O organizador seleciona os amigos que deseja convidar para o almoço, podendo escolher entre os contatos salvos no sistema ou inserir manualmente as informações dos convidados.
    6. Envio de convites
      1. O sistema gera convites personalizados e envia aos convidados, contendo informações sobre o almoço, data, hora e local, juntamente com um link para confirmar a participação.
    7. Confirmação dos convidados
      1. Os convidados recebem os convites e podem confirmar ou recusar a participação no almoço por meio do sistema. O organizador recebe as confirmações em tempo real.
    8. Escolha e reserva do restaurante
      1. Com base nas confirmações dos convidados, o organizador seleciona o restaurante desejado e realiza a reserva da mesa para o grupo.
    9. Recebimento da confirmação da reserva
      1. O sistema envia uma confirmação da reserva da mesa para o organizador, juntamente com os detalhes da reserva.
    10. Acompanhamento do planejamento
      1. O organizador pode acompanhar o andamento do planejamento, visualizando a lista de convidados confirmados, detalhes da reserva e outras informações relevantes.
    11. Realização do almoço
      1. No dia do almoço, o organizador e os convidados comparecem ao restaurante e desfrutam da refeição juntos.
    12. Avaliação da experiência:
      1. Após o almoço, o sistema pode solicitar ao organizador e aos convidados que avaliem sua experiência, fornecendo feedback sobre o restaurante, a qualidade do serviço e outros aspectos relevantes.

    Funcionalidades do Convidado por Requisito / Caso de Uso

    1. Requisitos Visualizar detalhes do evento:
      1. O convidado pode acessar informações registradas sobre o evento, como dados, horário, local e descrição.
      2. Ele pode ver a lista de convidados, incluindo os organizadores e outros participantes.
    2. Confirmar participação:
      1. O convidado pode confirmar sua participação no evento, indicando que estará presente.
      2. Ele pode fornecer informações adicionais, como restrições alimentares ou compulsivas.
    3. Visualizar convite e acompanhamentos:
      1. O convidado recebe o convite por e-mail ou notificação no sistema.
      2. Ele pode visualizar o convite e receber notificações sobre o evento próximo à data programada.
    4. Interagir com outros convidados:
      1. O convidado pode interagir com outros participantes do evento, por meio de mensagens ou recursos de bate-papo.
      2. Ele pode compartilhar informações, fazer perguntas ou discutir detalhes do evento.
    5. Acessar informações pós-evento:
      1. Após o evento, o convidado pode acessar informações adicionais, como fotos, comentários ou feedback dos participantes.
      2. Ele pode visualizar registros do evento e lembranças compartilhadas.
    6. Envio de convites
      1. O sistema gera convites personalizados e envia aos convidados, contendo informações sobre o almoço, data, hora e local, juntamente com um link para confirmar a participação.
    7. Controlado por notificação:
      1. O convidado pode personalizar suas emoções de notificação, decidindo como e quando receber atualizações sobre o evento.
    8. Enviar mensagens aos organizadores:
      1. O convidado pode enviar mensagens aos organizadores do evento para fazer perguntas, fornecer feedback ou solicitar informações adicionais.
    9. Compartilhar evento:
      1. O convidado pode compartilhar o evento com outras pessoas, convidando-as para participar.
      2. Ele pode enviar convites por e-mail, compartilhar links nas redes sociais ou usar outros meios de comunicação.

    Funcionalidades do Sistema por Requisitos / Caso de Uso

    1. Requisitos de Cadastro e Autenticação::
      1. Cadastro de usuários
      2. Autenticação de usuários
    2. Requisitos de Gerenciamento de Eventos:
      1. Criação de eventos
      2. Edição e exclusão de eventos
      3. Visualização de eventos
    3. Requisitos de Convite e Confirmação:
      1. Envio de convites
      2. Confirmação de presença
      3. Cancelamento de presença
    4. Requisitos de Planejamento do Cardápio:
      1. Seleção de pratos
      2. Preferências alimentares
      3. Restrições alimentares
    5. Requisitos de Comunicação e Interação:
      1. Compartilhamento de informações e sugestões
      2. Comentários e discussões sobre o evento
      3. Notificações e sintomas
    6. Requisitos de Histórico e Registros:
      1. Registro de eventos anteriores
      2. visualização de histórico
      3. Estatísticas e relatórios

    Modelo de dados

      Ampliar
    1. Entidades:
      1. Organizador: representa o usuário responsável por organizar o almoço.
      2. Convidado: representa os convidados que foram selecionados para participar do almoço.
      3. Restaurante: representa os diferentes restaurantes que podem ser escolhidos para o almoço.
    2. Relacionamentos:
      1. O Organizador tem uma relação de associação com os Convidados, indicando que o Organizador seleciona e envia convites aos Convidados.
      2. O Restaurante tem uma relação de associação com o Organizador, indicando que o Organizador seleciona um restaurante de sua preferência.
      3. O Restaurante também tem uma relação de associação com os Convidados, indicando que o restaurante escolhido está confirmado para os Convidados.

    Regras do sistema

    1. Apenas o organizador pode criar e gerenciar o evento de almoço.
    2. Os convidados podem confirmar sua presença e fornecer informações adicionais, como restrições alimentares.
    3. O organizador pode enviar convites e receber confirmações de presença dos convidados.
    4. O cardápio do almoço pode ser personalizado e adaptado às restrições alimentares dos convidados.
    5. O sistema deve notificar o organizador sobre alterações no evento, como confirmações de presença ou mudanças de cardápio.
    6. O sistema deve gerar relatórios e resumos do almoço, incluindo a lista de convidados confirmados e as opções alimentares selecionadas.

    Critérios de Aceitação

    1. Criar Evento de Almoço:
      1. O organizador deve ser
      2. O sistema deve validar os campos obrigatórios e exibir mensagens de erro caso algum campo não seja preenchido corretamente.
      3. Após criar o evento, ele deve ser exibido na lista de eventos do organizador.
    2. Convidar Amigos para o Evento:
      1. O organizador deve poder selecionar os amigos que desejam convidar para o evento.
      2. O sistema deve enviar convites por e-mail aos amigos selecionados.
      3. Os amigos convidados devem receber o convite e poder confirmar sua participação no evento.
    3. Editar detalhes do evento:
      1. O organizador deve poder editar os detalhes do evento, como dados, horário e local.
      2. As alterações feitas devem ser refletidas corretamente na visualização do evento pelos convidados.
    4. Confirmar participação:
      1. Os convidados devem receber um convite por e-mail com um link para confirmar sua participação.
      2. Ao clicar
    5. Cancelar evento:
      1. O organizador deve poder cancelar o evento caso necessário.
      2. Os convidados devem ser notificados sobre o cancelamento por e-mail.

    Gestão do Risco

    1. Riscos para os usuários (amigos que usam o aplicativo):
      • Exposição de dados pessoais: Se o aplicativo não tiver medidas adequadas de segurança e privacidade, os dados pessoais dos usuários podem ser expostos ou acessados por pessoas não autorizadas.
      • Má experiência do usuário: Se a interface do aplicativo não for intuitiva ou o funcionamento do aplicativo não for adequado, os usuários podem ficar frustrados e desistir de usá-lo.
      • Falha no planejamento: Se o aplicativo não fornecer informações precisas sobre o local do almoço, horários ou preferências alimentares, os usuários podem enfrentar dificuldades na hora de planejar o encontro.
    2. Riscos para o desenvolvedor do aplicativo:
      • Responsabilidade legal: O desenvolvedor pode enfrentar questões legais se o aplicativo violar leis de privacidade, direitos autorais ou outras regulamentações.
      • Falha na segurança: Se não forem implementadas medidas de segurança adequadas, o aplicativo pode estar vulnerável a ataques cibernéticos, o que pode resultar em roubo de dados ou danos à reputação do desenvolvedor.
      • Desenvolvimento ineficiente: Se o projeto não for gerenciado adequadamente ou se houver problemas na comunicação, o desenvolvimento do aplicativo pode ser atrasado ou exceder o orçamento.
    3. Riscos para os estabelecimentos (restaurantes e locais de almoço):
      • Má reputação: Se o aplicativo fornecer informações incorretas ou desatualizadas sobre o estabelecimento, isso pode resultar em uma má reputação para o local e afetar seus negócios.
      • Sobrecarga: Se o aplicativo não conseguir gerenciar adequadamente o número de reservas ou pedidos, os estabelecimentos podem ficar sobrecarregados e não conseguir atender a todas as solicitações.
    Para mitigar os riscos associados ao desenvolvimento e uso do aplicativo de planejamento do almoço entre amigos, é importante implementar medidas adequadas de prevenção e controle. Abaixo estão algumas estratégias de mitigação para os riscos identificados:
    1. Riscos para os usuários (amigos que usam o aplicativo):
      • Exposição de dados pessoais: Implementar criptografia de dados, autenticação de dois fatores e políticas de privacidade claras para proteger as informações dos usuários. Garantir que apenas as informações essenciais sejam coletadas e que os dados sejam armazenados de forma segura.
      • Má experiência do usuário: Realizar testes de usabilidade e coletar feedback dos usuários durante o desenvolvimento para garantir que a interface seja intuitiva e amigável. Realizar atualizações periódicas para corrigir problemas e melhorar a experiência do usuário.
      • Falha no planejamento: Integrar fontes de informações confiáveis para fornecer detalhes precisos sobre locais de almoço e suas características. Incluir uma opção de feedback dos usuários para garantir que as informações sejam mantidas atualizadas.
    2. Riscos para o desenvolvedor do aplicativo:
      • Responsabilidade legal: Realizar uma análise legal abrangente e cumprir as regulamentações de privacidade e direitos autorais relevantes. Garantir que todos os aspectos do aplicativo estejam em conformidade com as leis vigentes.
      • Falha na segurança: Implementar medidas robustas de segurança, como firewall, proteção contra ataques de negação de serviço (DDoS), monitoramento constante de vulnerabilidades e atualizações de segurança regulares.
      • Desenvolvimento ineficiente: Adotar metodologias ágeis de desenvolvimento e gerenciamento de projetos para garantir a comunicação eficiente, identificação rápida de problemas e ajustes adequados durante o processo de desenvolvimento.
    3. Riscos para os estabelecimentos (restaurantes e locais de almoço):
      • Má reputação: Garantir que as informações fornecidas no aplicativo sejam precisas e atualizadas. Manter uma comunicação direta com os estabelecimentos para garantir que quaisquer alterações sejam refletidas no aplicativo.
      • Sobrecarga: Implementar um sistema de reserva e pedidos eficiente que possa gerenciar adequadamente o fluxo de clientes. Estabelecer um limite para o número de reservas ou pedidos aceitos para evitar sobrecarga.
    4. Em resumo, a mitigação dos riscos envolve uma abordagem proativa de prevenção, implementação de medidas de segurança, comunicação eficiente com os usuários e estabelecimentos e o compromisso contínuo com a melhoria e atualização do aplicativo. Uma abordagem cuidadosa e focada na qualidade pode ajudar a minimizar os riscos e garantir uma experiência positiva e segura para todos os envolvidos no uso do aplicativo.

    Parte III - Protótipo

    Requisitos do Protótipo

    1. Interface de usuário intuitiva: O protótipo deve ter uma interface de usuário intuitiva e de fácil utilização, facilitando a interação do usuário com as funcionalidades do sistema.
    2. Funcionalidade básica de criação de eventos: O protótipo deve permitir ao usuário criar um novo evento de almoço, fornecendo informações como dados, horário, local e lista de convidados.
    3. Visualização de eventos: O protótipo deve permitir ao usuário visualizar os eventos de almoço existentes, incluindo os detalhes de cada evento, como dados, horário e local.
    4. Convite de convidado: O protótipo deve permitir ao usuário convidar outras pessoas para participar do evento de almoço, fornecendo seus nomes e endereços de e-mail.
    5. Confirmação de participação: O protótipo deve permitir que os convidados confirmem sua participação no evento, indicando que estarão presentes.
    6. Notificações: O protótipo deve ser capaz de enviar notificações aos usuários, informando sobre alterações nos eventos, confirmações de participação, acompanhamentos, etc.
    7. Gerenciamento de convidados: O protótipo deve permitir ao usuário gerenciar a lista de convidados, adicionando ou removendo participantes conforme necessário.
    8. Edição de eventos: O protótipo deve permitir ao usuário editar os detalhes de um evento de almoço existente, como dados, horário, local, etc.
    9. Cancelamento de eventos: O protótipo deve permitir ao usuário cancelar um evento de almoço, notificando os convidados sobre o cancelamento.

    Funcionalidades

    1. Página inicial: Apresentação do sistema de planejamento do almoço com amigos, com uma breve descrição de suas funcionalidades e benefícios.
    2. Registro de usuário: Formulário para que os organizadores e convidados possam se cadastrar no sistema, fornecendo nome, e-mail e senha.
    3. Login: Página de autenticação para que os usuários possam acessar suas contas no sistema.
    4. Dashboard do organizador: Painel de controle onde o organizador pode visualizar seus eventos agendados, criar novos eventos, convidar amigos, acompanhar as respostas dos convidados e gerenciar os detalhes de cada evento.
    5. Página de convites: Área onde o organizador pode criar convites personalizados, definindo informações como data, horário, local, cardápio e mensagem de boas-vindas aos convidados.
    6. Confirmação de presença: Recurso que permite aos convidados confirmarem sua presença no evento, podendo indicar também quaisquer restrições alimentares ou preferências.
    7. Notificações e lembretes: Mecanismo de envio de notificações e lembretes automáticos aos convidados, lembrando-os sobre o evento, datas importantes e informações relevantes.
    8. Recursos de interação social: Possibilidade de interação entre os convidados, como compartilhamento de mensagens, sugestões de pratos, troca de ideias e informações sobre o evento.
    9. Avaliação pós-evento: Formulário de avaliação para que os convidados possam fornecer feedback sobre o almoço, ajudando o organizador a melhorar futuros eventos.
    10. Perfil do usuário: Área onde os usuários podem visualizar e editar suas informações de perfil, incluindo foto, preferências de alimentação e outras informações relevantes.

    Quem irá desenvolver o protótipo?

    O desenvolvimento do protótipo pode ser realizado por profissionais especializados em design de interface, experiência do usuário e desenvolvimento de software. Geralmente, uma equipe multidisciplinar é formada para trabalhar no protótipo, incluindo designers, desenvolvedores, analistas de negócios e outros profissionais relevantes.

    A equipe de desenvolvimento do protótipo pode ser composta por:

    1. Designers de interface: Responsáveis ​​por criar os layouts, wireframes e designs das telas do protótipo, garantindo uma interface visualmente atraente e intuitiva.
    2. Desenvolvedores front-end: Responsáveis ​​por implementar o código HTML, CSS e JavaScript do protótipo, envolvendo os designs em uma interface funcional.
    3. Desenvolvedores back-end: Responsáveis ​​por criar a lógica e a infraestrutura necessária para suportar as funcionalidades do protótipo, como o armazenamento e recuperação de dados.
    4. Analistas de negócio: Responsáveis ​​por entender os requisitos e necessidades dos usuários e traduzi-los em funcionalidades e fluxos de interação para o protótipo.
    5. Especialistas em experiência do usuário: Responsáveis ​​por garantir que o impulsionou uma experiência de uso intuitiva, fácil de entender e eficiente para os usuários.
    É importante que a equipe de desenvolvimento do protótipo trabalhe em estreita colaboração com os stakeholders e usuários finais, para garantir que o protótipo atenda às expectativas e necessidades do público-alvo.

    Quem irá operar o protótipo?

    No contexto do planejamento de almoço entre amigos, o sistema pode ser operado tanto pelo Organizador quanto pelos Convidados. O Organizador terá acesso a funcionalidades adicionais para criar, editar e gerenciar os eventos de almoço, enquanto os Convidados poderão visualizar os convites recebidos, confirmar sua participação e acessar informações sobre os eventos.

    O sistema também pode ter uma interface de administração, que será operada por administradores ou pessoas responsáveis ​​pela manutenção e gerenciamento do sistema em nível técnico, como realizar atualizações, configurar parâmetros do sistema e gerenciar usuários.

    Portanto, o sistema pode ser operado tanto pelos usuários finais (Organizadores e Convidados) quanto pelos administradores ou responsáveis ​​pela manutenção do sistema.

    PARTE III - Projeto

    Interfaces

    1. Interface entre o Organizador e o Sistema:
      1. O Organizador interage com o Sistema para criar, editar e cancelar eventos de almoço.
      2. O Organizador usa a interface do Sistema para convidar amigos, visualizar a lista de convidados confirmados e gerar relatório.
    2. Interface entre o Convidado e o Sistema:
      1. O Convidado recebe convites por e-mail do Sistema, contendo informações sobre o evento de almoço e um link para confirmar sua participação.
      2. O Convidado usa a interface do Sistema para confirmar sua participação, visualizar detalhes do evento e receber notificações relacionadas ao evento.
    3. Interface entre o Sistema e o Convidado:
      1. O Sistema envia convites e seguidos por e-mail para os Convidados.
      2. O Sistema notifica os Convidados em caso de cancelamento do evento.
    Essas interfaces podem ser integradas por meio de interfaces gráficas do usuário (GUI) ou interfaces de programação de aplicativos (APIs), dependendo da arquitetura do sistema

    Arquitetura de sistema

    1. Arquitetura em camadas:
      1. Interface do Usuário (UI): Responsável pela interação direta com os usuários, fornecendo uma interface amigável para o Organizador e os Convidados interagirem com o sistema.
      2. Camada de Lógica de Negócio: Responsável por processar a aceitação dos usuários, aplicar regras de negócio e coordenar as diferentes partes do sistema.
      3. Camada de Dados: Responsável pelo processamento e gerenciamento dos dados do sistema, incluindo informações sobre os eventos de almoço, participantes, convidados, etc.
    2. IUtilização de APIs:
      1. Para a interação entre o Sistema e os Convidados, pode-se utilizar APIs para enviar convites por e-mail, receber confirmações de participação e enviar notificações relacionadas ao evento.
      2. ara a interação entre o Organizador e o Sistema, as APIs podem ser utilizadas para criar, editar e cancelar eventos de almoço, gerenciar a lista de convidados e gerar relatório.
    3. Banco de Dados:
      1. Um banco de dados adequado pode ser utilizado para armazenar as informações relevantes do sistema, como eventos, participantes, convidados confirmados, etc. Pode-se optar por um banco de dados relacional ou não relacional, dependendo dos requisitos e da estrutura dos dados.
    4. Segurança:
      1. Deve-se garantir a segurança das informações do sistema, implementando medidas de proteção como login de usuários, controle de acesso, criptografia de dados sensíveis, entre outros.
    5. Escalabilidade e Desempenho:
      1. Considerando que o sistema pode lidar com um grande número de eventos e participantes, é importante projetar uma arquitetura de forma escalável e otimizada em termos de desempenho. Isso pode envolver o uso de técnicas como balanceamento de carga, caching, indexação de dados, entre outros.
    Essas interfaces podem ser integradas por meio de interfaces gráficas do usuário (GUI) ou interfaces de programação de aplicativos (APIs), dependendo da arquitetura do sistema

    Arquitetura de informação

    1. Estrutura Hierárquica:
      1. Organização dos elementos de informação em uma estrutura hierárquica, onde o nível mais alto representa a bordas do sistema (como a página inicial ou painel de controle), e os níveis subsequentes contêm informações mais gravadas (como detalhes do evento, lista de convidados, etc).
      2. Utilização de menus, navegação por abas ou links para facilitar a movimentação entre as diferentes seções e funcionalidades do sistema.
    2. Organização por Módulos:
      1. Agrupamento das funcionalidades relacionadas em módulos, de forma a facilitar a localização e acesso das informações pertinentes a cada parte específica do sistema.
      2. Por exemplo, pode-se ter um módulo para o gerenciamento de eventos, outro para a lista de convidados, e assim por diante.
    3. Layout e Design Responsivo:
      1. Consideração de um design responsivo que se adapta a diferentes dispositivos e tamanhos de tela, para garantir uma experiência de uso consistente e acessível em diferentes dispositivos, como computadores, tablets e smartphones.
    4. Exibição de Informações Relevantes:
      1. Priorização das informações mais relevantes e de maior interesse para os usuários, apresentando-as de forma clara e acessível.
      2. Utilização de elementos visuais como gráficos, tabelas e ícones para fornecer uma representação visual dos dados quando apropriado.
    5. Busca e Filtros:
      1. Inclusão de recursos de busca e filtros para permitir que os usuários encontrem rapidamente informações específicas, como eventos, participantes ou histórico de atividades.
    6. Feedback e Confirmação:
      1. Fornecimento de feedback visual e mensagens de confirmação para informar os usuários sobre o status de suas ações, como a criação de um novo evento, a confirmação de presença, etc
    Essas interfaces podem ser integradas por meio de interfaces gráficas do usuário (GUI) ou interfaces de programação de aplicativos (APIs), dependendo da arquitetura do sistema

    Estrutura e fluxo de funcionamento do aplicativo:

    1. Autenticação e Registro:
      1. Os usuários Organizadores e Convidados podem se cadastrar no sistema fornecendo nome, e-mail e senha.
      2. O Organizador faz login no sistema usando suas credenciais.
    2. Planejamento do Almoço:
      1. O Organizador seleciona suas orientações de almoço, como culinária desejada, localização, faixa de preço e facilidade de estacionamento.
      2. O sistema busca e apresenta uma lista de opções de restaurantes com base nas controladas.
      3. O Organizador seleciona um restaurante da lista.
    3. Convite de Participação:
      1. O Organizador seleciona os Convidados de sua lista de contatos e envia convites de participação para o almoço.
      2. Os Convidados recebem os convites por e-mail, contendo informações sobre o almoço e um link para confirmação.
    4. Confirmação de Participação:
      1. Os Convidados acessam o link de convite recebido e são direcionados para uma tela de confirmação.
      2. Os Convidados confirmam ou recusam sua participação no almoço.
    5. Reserva da Mesa:
      1. O Organizador realiza a reserva da mesa no restaurante escolhido, selecionando a data e hora do almoço.
      2. O sistema envia uma confirmação da reserva da mesa para o Organizador.

    Modelo de dados do aplicativo:

      Ampliar

      Com base no modelo de dados fornecido, podemos ter as seguintes tabelas e relacionamentos:

        Entidades e relacionamentos
      1. Entidades:
        1. Organizador (ID_Organizador, Nome, Email, Senha)
        2. Convidado (ID_Convidado, Nome, Email)
        3. Evento (ID_Evento, ID_Organizador, Data, Local)
        4. OpçãoRestaurante (ID_Opcao, ID_Evento, Restaurante, Culinária, FaixaPreco, FacilidadeEstacionamento)
        5. VotoConvidado (ID_Voto, ID_Convidado, ID_Opção)
      2. Chaves Primárias:
        1. Organizador: ID_Organizador
        2. Convidado: ID_Convidado
        3. Evento: ID_Evento
        4. OpçãoRestaurante: ID_Opcao
        5. VotoConvidado: ID_Voto
      3. Chaves Estrangeiras:
        1. Evento.ID_Organizador referencial Organizador.ID_Organizador
        2. OpcaoRestaurante.ID_Evento referencia Evento.ID_Evento
        3. VotoConvidado.ID_Convidado referencia Convidado.ID_Convidado
        4. VotoConvidado.ID_Opcao referencia OpcaoRestaurante.ID_Opcao

    Módulos por Ator/Requisitos/Funcionalidades

      Módulos do Organizador:
    1. Autenticação e Gerenciamento de Usuários:
      1. Autenticação de usuários.
      2. Registro de novos usuários.
      3. Gerenciamento de perfis de usuários.
    2. Gerenciamento de Eventos:
      1. Criação de novos eventos.
      2. Edição de eventos existentes.
      3. Cancelamento de eventos.
    3. Gerenciamento de Convidados:
      1. Adição de convidados a eventos.
    4. Configurações:
      1. Configurações de áudio do organizador.
    5. Módulos do Convidado:
    6. Autenticação e Gerenciamento de Usuários:
      1. Autenticação de usuários.
      2. Registro de novos usuários.
      3. Gerenciamento de perfis de usuários.
    7. Visualização de Eventos:
      1. Visualização de eventos programados.
      2. Visualização da lista de convidados confirmados.
    8. Confirmação de Participação:
      1. Confirmação de presença nos eventos.
    9. Configurações:
      1. Configurações de peso do convidado.
    10. Módulos do Sistema:
    11. Notificações:
      1. Envio de convites aos convidados.
      2. Notificações de atração aos participantes próximos à data do evento.
      3. Notificações de cancelamento de eventos.
    12. Relatórios e Estatísticas:
      1. Geração de relatório.
      2. Estatísticas sobre a participação em eventos.
      Menu do Organizador:
    1. Meus Eventos
      1. Criar Evento
      2. Editar evento
      3. Cancelar evento
    2. Convidados
      1. Gerenciar Convidados
      2. Enviar convites
    3. configurações
      1. Minhas Preferências
      2. Gerenciar perfil
      3. Sair
    4. Menu do Convidado
    5. Meus Convites
      1. Visualizar Eventos
      2. Confirmar Participação
    6. Configurações:
      1. Minhas Preferências
      2. Gerenciar perfil
      3. air
    7. Menu do Sistema
    8. Notificações
      1. Enviar convites
      2. Enviar lembranças
      3. Notificar Cancelamento
    9. Relatórios e Estatísticas
      1. Gerar Relatório de Participação
      2. Ver estatísticas
    10. Configurações
      1. configurações do sistema
      2. Sair

    Telas (E/S) por módulo

      Módulo: Organizador:
    1. Tela de Criar Evento de Almoço (Entrada: Nome do evento, data, horário, local; Saída: ID do evento)
    2. Tela de Editar Detalhes do Evento (Entrada: ID do evento; Saída: Detalhes atualizados do evento)
    3. Tela de Visualizar Lista de Convidados (Entrada: ID do evento; Saída: Lista de convidados)
    4. Tela de Enviar Convite (Entrada: ID do evento, lista de e-mails dos convidados; Saída: Convite enviado)
    5. Módulo: Convidado
    6. Tela de Visualizar Convite (Entrada: ID do convite; Saída: Detalhes do evento no convite)
    7. Tela de Confirmar Participação (Entrada: ID do convite; Saída: Confirmação de participação enviada)
    8. Tela de Visualizar Detalhes do Evento (Entrada: ID do evento; Saída: Detalhes completos do evento)
    9. Tela de Enviar Mensagem para o Organizador (Entrada: ID do evento, mensagem; Saída: Mensagem enviada)
    10. Módulo: Sistema
    11. Tela de Envio de Lembretes (Entrada: ID do evento; Saída: Lembrete enviado aos participantes)
    12. Tela de Geração de Relatório de Participação (Entrada: ID do evento; Saída: Relatório gerado com lista de participantes confirmados)
    13. Tela de Notificação de Cancelamento (Entrada: ID do evento; Saída: Notificação de cancelamento enviada aos convidados)
    14. Tela de Visualizar Estatísticas do Evento (Entrada: ID do evento; Saída: Estatísticas do evento exibidas)

    Arquivos (E/S) por módulo

    Cadastro de usuários: Os organizadores e convidados precisariam se cadastrar no sistema, fornecendo suas informações básicas, como nome, e-mail e senha. Módulo: Organizador:
  • Arquivos de entrada:
    1. Dados do evento (nome, data, horário, local).
    2. Lista de convidados (e-mails)
  • Arquivos de saida:
    1. dentidade do evento
    2. Detalhes atualizados do evento
    3. Lista de convidados
  • Módulo: Convidado
  • Arquivos de entrada:
    1. ID do convite
  • Arquivos de saida:
    1. Detalhes do evento no convite
    2. Confirmação de participação
    3. Detalhes completos do evento
    4. Mensagem enviada para o organizador
  • Módulo: Sistema
  • Arquivos de entrada:
    1. ID do evento
  • Arquivos de saida:
    1. dLembrete enviado aos participantes
    2. Relatório de participação gerado
    3. Notificação de cancelamento enviada aos convidados
    4. Estatísticas do evento exibições
  • Programas por funcionalidade

    1. Funcionalidade: Criação de Eventos
      1. Programa de criação de evento: Permite ao organizador preencher informações do evento, como título, data, horário e local do almoço.
    2. Funcionalidade: Gerenciamento de Convidados
      1. Programa de lista de convidados: Permite ao organizador adicionar, remover ou editar informações dos convidados, como nome, e-mail e informações adicionais.
      2. Programa de envio de convites: Permite ao organizador enviar convites aos convidados.
    3. Funcionalidade: Definição de Cardápio
      1. Programa de seleção de alimentos e bebidas: Permite ao organizador escolher as opções disponíveis para o cardápio.
    4. Funcionalidade: Registro de Observações e Preferências
      1. Programa de registro de observações: Permite adicionar observações e observações adicionais.
    5. Funcionalidade: Resumo do Evento
      1. Programa de visualização do resumo do evento: Apresenta as informações gerais do almoço, como data, horário, local, lista de convidados e cardápio.

    Procedimentos adicionais para complementar aplicativo

    1. Cadastro de usuários: Os organizadores e convidados precisariam se cadastrar no sistema, fornecendo suas informações básicas, como nome, e-mail e senha.
    2. Autenticação e autorização: O sistema deve garantir a autenticação dos usuários, verificando suas credenciais de login, e também implementar um sistema de autorização para controlar o acesso às funcionalidades de acordo com o papel de cada usuário (organizador ou convidado).
    3. Gerenciamento de eventos: O sistema deve permitir aos organizadores criar e gerenciar eventos de almoço, incluindo informações como local, dados, horários e detalhes adicionais. Os organizadores devem ter a capacidade de editar, cancelar ou excluir eventos.
    4. Convites aos convidados: Os organizadores devem poder enviar convites aos convidados através do sistema, seja por e-mail, notificação no aplicativo ou outros meios de comunicação. Os convites podem conter detalhes do evento e um link para confirmar a presença.
    5. Confirmação de presença: Os convidados devem ter a possibilidade de confirmar ou recusar a presença no almoço através do sistema. Essa informação deve ser registrada e disponibilizada para os organizadores.
    6. Comunicação entre os participantes: O sistema pode oferecer recursos de comunicação, como um chat interno, para facilitar a troca de mensagens entre os organizadores e convidados, permitindo esclarecer dúvidas, discutir detalhes do evento, entre outros.
    7. Gerenciamento de cardápios: O sistema pode fornecer opções para os organizadores definirem os cardápios disponíveis para o almoço, permitindo que os convidados escolham suas preferências alimentares.
    8. Acompanhamento e rastreamentos: O sistema pode enviar aos organizadores e convidados sobre os eventos próximos, com informações relevantes, como dados, horário e local. Os organizadores também podem acompanhar a confirmação de presença dos convidados.

    Procedimentos por ator

    1. Organizadores:
      1. Cadastro de usuários
      2. Autenticação e autorização
      3. Gerenciamento de eventos
      4. Convites aos convidados
      5. Acompanhamento e sintomas
    2. Convidados:
      1. Confirmação de presença
      2. Comunicação entre os participantes
      3. Escolha de cardápios
    Essa visão permite visualizar as ações específicas de cada ator envolvido no sistema de planejamento do almoço com amigos, facilitando a compreensão das responsabilidades e fluxos de interação entre eles.

    Quem irá operar o sistema?

    No contexto do planejamento de almoço entre amigos, o sistema pode ser operado tanto pelo Organizador quanto pelos Convidados. O Organizador terá acesso a funcionalidades adicionais para criar, editar e gerenciar os eventos de almoço, enquanto os Convidados poderão visualizar os convites recebidos, confirmar sua participação e acessar informações sobre os eventos.

    O sistema também pode ter uma interface de administração, que será operada por administradores ou pessoas responsáveis ​​pela manutenção e gerenciamento do sistema em nível técnico, como realizar atualizações, configurar parâmetros do sistema e gerenciar usuários.

    Portanto, o sistema pode ser operado tanto pelos usuários finais (Organizadores e Convidados) quanto pelos administradores ou responsáveis ​​pela manutenção do sistema.

    Rastreamento

    Ator: Organizador

    1. Requisito 1: Registro de evento

      • Caso de Uso 1: Criar Evento de Almoço
        • Funcionalidade 1: Criar evento de almoço
        • História de Usuário 1: Como organizador, desejo criar um novo evento de almoço para convidar meus amigos.
      • Caso de Uso 2: Editar Evento de Almoço
        • Funcionalidade 2: Editar detalhes do evento de almoço
        • História de Usuário 2: Como organizador, desejo poder editar os detalhes do evento de almoço caso haja alguma alteração.
      • Caso de Uso 3: Cancelar Evento de Almoço
        • Funcionalidade 3: Cancelar evento de almoço
        • História de Usuário 3: Como organizador, desejo cancelar o evento de almoço em caso de imprevistos.
      • Caso de Uso 4: Enviar Convite aos Amigos
        • Funcionalidade 4: Enviar convite para os amigos participarem do evento de almoço
        • História de Usuário 4: Como organizador, desejo enviar convites aos meus amigos para que eles possam participar do evento de almoço.
      • Caso de Uso 4: Enviar Convite aos Amigos
        • Funcionalidade 4: Enviar convite para os amigos participarem do evento de almoço
        • História de Usuário 4: Como organizador, desejo enviar convites aos meus amigos para que eles possam participar do evento de almoço.
      • Caso de Uso 5: Definir Detalhes do Evento
        • Funcionalidade 5: Definir os detalhes do evento de almoço (data, horário, local, etc.)
        • História de Usuário 5: Como organizador, desejo poder definir os detalhes do evento de almoço para que os convidados tenham todas as informações necessárias.

    Ator: Convidados

    1. Requisito 2: Confirmação de participação

      • Caso de Uso 4: Confirmar Participação
        • Funcionalidade 4: Confirmar presença no evento de almoço
        • História de Usuário 4: Como convidado, desejo confirmar minha participação no evento de almoço.
      • Caso de Uso 5: Visualizar Detalhes do Evento
        • Funcionalidade 5: Visualizar os detalhes do evento de almoço
        • História de Usuário 5: Como convidado, desejo visualizar os detalhes do evento de almoço para me preparar adequadamente.
      • Caso de Uso 7: Visualizar Detalhes do Evento
        • Funcionalidade 7: Visualizar os detalhes do evento de almoço
        • História de Usuário 7: Como convidado, desejo visualizar os detalhes do evento de almoço para me preparar adequadamente.
      • Caso de Uso 8: Escolher Opções do Menu
        • Funcionalidade 8: Escolher as opções do menu para o almoço
        • História de Usuário 8: Como convidado, desejo escolher as opções do menu para o almoço, considerando minhas preferências e restrições alimentares.

    Ator: Sistema

    1. Requisito 3: Envio de lembretes e notificações

      • Caso de Uso 9: Enviar Lembretes aos Participante
        • Funcionalidade 9: Enviar lembretes aos participantes próximos à data do evento
        • História de Usuário 9: Como sistema, desejo enviar lembretes aos participantes do evento de almoço para garantir a presença de todos.
      • Caso de Uso 10: Gerar Relatório de Participação
        • Funcionalidade 10: Gerar um relatório com a lista de participantes confirmados
        • História de Usuário 10: Como sistema, desejo gerar um relatório com a lista de participantes confirmados no evento de almoço para fins de registro e controle.

    Anexos

    Abordagens para mapeamentos

    Jornadas dos Atores

    1. Organizador
      1. Identificação da necessidade de planejamento do almoço
        1. O organizador reconhece a necessidade de planejar um almoço para um grupo de amigos e decide utilizar o sistema de planejamento para facilitar o processo
      2. Acesso ao sistema
        1. O organizador acessa o sistema de planejamento do almoço por meio de uma plataforma web ou aplicativo móvel.
      3. Definição das preferências
        1. O organizador informa suas preferências para o almoço, como a culinária desejada, a localização, a faixa de preço e a facilidade de estacionamento.
      4. Consulta das opções de restaurantes
        1. Com base nas preferências informadas, o sistema busca e apresenta uma lista de restaurantes que atendem aos critérios do organizador.
      5. Seleção dos convidados
        1. O organizador seleciona os amigos que deseja convidar para o almoço, podendo escolher entre os contatos salvos no sistema ou inserir manualmente as informações dos convidados.
      6. Envio de convites
        1. O sistema gera convites personalizados e envia aos convidados, contendo informações sobre o almoço, data, hora e local, juntamente com um link para confirmar a participação.
      7. Confirmação dos convidados
        1. Os convidados recebem os convites e podem confirmar ou recusar a participação no almoço por meio do sistema. O organizador recebe as confirmações em tempo real.
      8. Escolha e reserva do restaurante
        1. Com base nas confirmações dos convidados, o organizador seleciona o restaurante desejado e realiza a reserva da mesa para o grupo.
      9. Recebimento da confirmação da reserva
        1. O sistema envia uma confirmação da reserva da mesa para o organizador, juntamente com os detalhes da reserva.
      10. Acompanhamento do planejamento
        1. O organizador pode acompanhar o andamento do planejamento, visualizando a lista de convidados confirmados, detalhes da reserva e outras informações relevantes.
      11. Realização do almoço
        1. No dia do almoço, o organizador e os convidados comparecem ao restaurante e desfrutam da refeição juntos.
      12. Avaliação da experiência:
        1. Após o almoço, o sistema pode solicitar ao organizador e aos convidados que avaliem sua experiência, fornecendo feedback sobre o restaurante, a qualidade do serviço e outros aspectos relevantes.

    Jornada do Convidado

    1. Acesso ao sistema
      1. O convidado acessou o sistema por meio de uma interface de login, fornecendo suas credenciais de acesso.
    2. Visualização dos eventos
      1. Após fazer login, o convidado é direcionado para a página principal do sistema, onde pode visualizar os eventos de almoço disponíveis para participação.
    3. Detalhes do evento
      1. O convidado seleciona um evento específico para obter mais informações, como data, hora, local e detalhes adicionais sobre o hóspede.
    4. Confirmação de participação
      1. Se o convidado deseja participar do evento, ele pode selecionar a opção de confirmação de participação. Essa ação informa ao organizador que o convidado estará presente no almoço.
    5. Edição do perfi
      1. O convidado tem a opção de editar seu perfil no sistema, atualizando suas informações pessoais, inspiradas de contato ou outras configurações relevantes.
    6. Notificações e coletas:
      1. O convidado recebe notificações e coletas automáticas do sistema, como rastreadas próximas à data do evento ou informações adicionais sobre o hóspede.
    7. Acompanhamento dos evento
      1. O convidado pode acompanhar sua participação em eventos anteriores e futuros, visualizando seu histórico de participação e detalhes relevantes.

    Jornada do Sistema

    1. Início do sistema
      1. O sistema é iniciado quando o organizador acessa a plataforma de planejamento de almoço com amigos.
    2. Autenticação
      1. O sistema solicita ao organizador que faça login ou crie uma conta, caso ainda não possua..
    3. Criação do evento
      1. O organizador cria um novo evento de almoço, fornecendo informações como data, hora, localização e lista de convidados.
    4. Adição de detalhes
      1. O organizador adiciona detalhes adicionais ao evento, como tipo de comida, restrições alimentares, orçamento estimado, entre outros.
    5. Envio dos convites
      1. O sistema permite que o organizador envie convites aos convidados, seja por e-mail, mensagem de texto ou através de um link de compartilhamento.
    6. Envio de convites
      1. O sistema gera convites personalizados e envia aos convidados, contendo informações sobre o almoço, data, hora e local, juntamente com um link para confirmar a participação.
    7. Gerenciamento da lista de convidados
      1. O sistema permite que o organizador gerencie a lista de convidados, adicionando ou removendo pessoas, bem como rastreando as confirmações de presença.
    8. Sugestões de restaurantes
      1. O sistema pode oferecer sugestões de restaurantes com base nas preferências e localização dos participantes, ajudando o organizador a escolher o local do almoço.
    9. Confirmação de presença
      1. Os convidados recebem os convites e têm a opção de confirmar ou recusar a presença no almoço através do sistema.
    10. Comunicação entre os participantes
      1. O sistema pode fornecer um espaço para os participantes interagirem, trocarem mensagens, compartilharem informações ou discutirem detalhes do evento.
    11. Acompanhamento do status do evento
      1. O organizador pode acompanhar o status do evento, verificando as confirmações de presença, as sugestões dos participantes e quaisquer atualizações ou alterações feitas.
    12. Registro de informações
      1. O sistema registra informações relevantes, como histórico de eventos anteriores, preferências dos participantes e feedback dos convidados.
    13. Encerramento do evento
      1. Após o almoço, o sistema registra a conclusão do evento e pode solicitar feedback dos participantes sobre a experiência.

    Mapa de experiência do Convidado(etapas)

    1. Descoberta e acesso
      1. O convidado descobre o sistema de planejamento de almoço por meio de convites ou recomendações.
      2. Ele acessa o sistema por meio de um link ou aplicativo.
    2. Primeira impressão
      1. O convidado é recebido com uma interface atraente e intuitiva.
      2. Informar a localização preferida do restaurante.
      3. Ele recebe uma breve introdução sobre as funcionalidades do sistema.
    3. Explorando eventos
      1. O convidado navega pela lista de eventos disponíveis.
      2. Ele visualiza detalhes como data, hora, local e descrição dos eventos.
    4. Confirmando participação
      1. O convidado seleciona o evento desejado.
      2. Ele confirma sua participação no evento.
    5. Atualização de perfil
      1. O convidado tem a opção de atualizar seu perfil, adicionando informações adicionais.
      2. Ele pode definir parâmetros de notificação e configurações personalizadas.
    6. Recebendo sintomas
      1. O convidado recebe as coletas automáticas antes do evento.
      2. Ele é notificado sobre os detalhes do evento e recebe informações relevantes.
    7. Participação no evento
      1. O convidado comparece ao evento de almoço no local e hora designados.
      2. Ele interage com outros convidados e aproveita a experiência do almoço.
    8. Feedback e avaliação
      1. O convidado tem a opção de fornecer feedback sobre o evento.
      2. Ele pode avaliar a experiência e deixar comentários para o organizador.
    9. Acompanhamento de eventos anteriores
      1. O convidado pode acessar o histórico de eventos anteriores e rever detalhes.
      2. Ele pode visualizar suas participações passadas e acompanhar os eventos futuros.

    Mapa de experiência do Organizador(etapas)

    1. Iniciar o processo de planejamento
      1. Acessar o sistema de Planejamento de Almoço
      2. Iniciar o processo de planejamento de um almoço
    2. Definir preferências do almoço
      1. Selecionar a culinária desejada para o almoço.
      2. Informar a localização preferida do restaurante.
      3. Escolher a faixa de preço desejada.
      4. Indicar a facilidade de estacionamento desejada.
    3. Selecionar os Convidados
      1. Escolher os amigos que serão convidados para o almoço.
    4. Enviar convite aos Convidados
      1. Fornecer informações sobre a data, hora e local do almoço.
      2. Enviar convites por e-mail aos Convidados
    5. Receber confirmações dos Convidados
      1. Monitorar as respostas dos Convidados.
      2. Verificar quais Convidados confirmaram participação
    6. Visualizar opções de restaurantes sugeridas pelo Sistema
      1. Explorar as opções de restaurantes que atendem às preferências.
      2. Ver detalhes sobre os restaurantes (nome, localização, avaliações)
    7. Selecionar restaurante de preferência
      1. Escolher o restaurante desejado para o almoço.
    8. Enviar confirmação do restaurante aos Convidados
      1. Informar aos Convidados sobre o restaurante selecionado.
    9. Registrar os detalhes do almoço
      1. Registrar informações como lista de Convidados, local, data e hora do almoço.
    10. Realizar reserva da mesa
      1. Entrar em contato com o restaurante escolhido.
      2. Realizar a reserva da mesa para o grupo.
    11. Receber confirmação da reserva
      1. Receber confirmação do restaurante sobre a reserva da mesa.
    12. Finalizar o processo de planejamento
      1. Revisar todas as informações do almoço.
      2. Confirmar que o planejamento foi concluído com sucesso.

    Mapa de experiência do Sistema(etapas)

    1. Integração
      1. Os usuários são apresentados ao sistema e recebem orientações sobre como usá-lo.
      2. Eles podem criar uma conta, definir suas intenções e configurar seu perfil.
    2. Navegação e descoberta
      1. Os usuários exploram as diferentes funcionalidades e recursos do sistema.
      2. Eles podem encontrar informações sobre eventos, convidados, organizadores e outras informações relevantes.
    3. Criação e gerenciamento de eventos
      1. Os usuários podem criar novos eventos, fornecendo detalhes como data, hora, local e descrição.
      2. Eles podem editar e atualizar os eventos existentes, gerenciar a lista de convidados e enviar convites.
    4. Notificações e sintomas
      1. O sistema envia aos usuários sobre eventos próximos, encaminhados e atualizações relevantes.
      2. Os usuários podem personalizar suas configurações de notificação e configuração
    5. Interação e colaboração
      1. Os usuários podem interagir com outros participantes, enviar mensagens, compartilhar informações e colaborar na organização do evento.
    6. Acompanhamento pós-evento
      1. Os usuários podem acessar informações e registros de eventos anteriores.
      2. Eles podem visualizar o feedback dos participantes, analisar dados e gerar relatórios.
    7. Suporte e assistência
      1. Os usuários têm acesso a recursos de suporte, como documentos, FAQs e suporte ao cliente.
      2. Eles podem relatar problemas, fazer perguntas e receber atendimento quando necessário.

    Abordagens para Desenvolvimento

    Abordagem para análise

    1. Necessidade, Domínio do problema e Contexto (obtidos de forma paralela, pois estão interligados)
    2. Escopo (definido com base na compreensão do domínio e contexto)
    3. Requisitos (derivados da compreensão das necessidades e escopo)
    4. Mapa da jornada do usuário e Experiência do usuário (obtidos em conjunto, com base na compreensão das necessidades e interações do usuário)
    5. Casos de uso (identificados com base nos requisitos e na jornada do usuário)
    6. Modelo mental e Modelo conceitual (geralmente desenvolvidos de forma iterativa, com base na compreensão do domínio, requisitos e interações do usuário)
    7. Processo (definido com base no escopo, requisitos e modelos conceituais)
    8. Funcionalidades, Entidades e Interfaces (desenvolvidos com base nos requisitos, modelos conceituais e processo)

    Estrutura analítica do projeto

      Estrutura Analítica do Projeto (EAP), também conhecida como Work Breakdown Structure (WBS), é uma representação hierárquica das atividades e entregas do projeto. Ela representa a divisão do trabalho em partes menores e mais gerenciáveis, permitindo uma melhor compreensão e organização das tarefas envolvidas. estrutura analítica do projeto para o Sistema de Planejamento de Almoço:
    1. Iniciação do Projeto
      1. Definição do escopo
      2. Identificação das partes interessadas
      3. Análise de viabilidade
      4. Formação da equipe do projeto
    2. Planejamento do Projeto
      1. Levantamento de requisitos
      2. Definição da arquitetura do sistema
      3. Elaboração do plano de projeto
      4. Estabelecimento de marcos e pontos de controle
      5. Análise de riscos e desenvolvimento de estratégias de mitigação
    3. Desenvolvimento do Aplicativo
      1. Design da interface do usuário
      2. Desenvolvimento do backend
      3. Desenvolvimento do frontend
      4. Implementação das funcionalidades do sistema
      5. Realização de testes unitários
    4. Integração e Testes
      1. Integração de componentes
      2. Realização de testes de integração
      3. Realização de testes de sistema
      4. Garantia de qualidade do software
    5. Implantação
      1. Preparação do ambiente de produção
      2. Migração de dados
      3. Treinamento dos usuários
      4. Ajustes finais
    6. Encerramento do Projeto
      1. Verificação da conclusão das atividades
      2. Documentação final do projeto
      3. Entrega final do projeto
      4. Lições aprendidas e fechamento administrativo

    Tipos de Abordagem adotadas no desenvolvimento de um sistema

      A escolha da abordagem de desenvolvimento de sistemas depende de vários fatores, como o tipo de projeto, requisitos do cliente, recursos disponíveis, restrições de tempo e orçamento, cultura organizacional e nível de discussão do projeto. Vou explicar brevemente quando cada abordagem pode ser mais adequada:
    1. Abordagens de ciclo de vida em cascata:
      1. São mais adequados para projetos com requisitos bem definidos e estáveis.
      2. Funcionam bem quando o escopo e as metas do projeto são claros desde o início.
      3. São úteis quando há muita confusão e riscos envolvidos.
    2. Abordagens iterativas e incrementais:
      1. São adequados quando o cliente deseja obter resultados mais rapidamente e está disposto a iterar e evoluir o sistema ao longo do tempo.
      2. Permite a adaptação às mudanças de requisitos e feedback contínuo dos usuários.
      3. São recomendados quando há alguma certeza nos requisitos ou tecnologias envolvidas.
    3. Abordagens ágeis:
      1. São cumpridos quando a flexibilidade e a colaboração são fundamentais.
      2. Funcionam bem em projetos com requisitos voláteis ou em constante evolução.
      3. Priorizam a entrega rápida de valor ao cliente e valorizam a interação frequente com os usuários.
    4. Abordagens de Prototipagem:
      1. São úteis quando é necessário obter feedback rápido dos usuários e validar conceitos e funcionalidades.
      2. Permitem uma abordagem mais exploratória e experimental durante a fase de design e desenvolvimento.
      3. Podem ser usados ​​para mitigar riscos e garantir a usabilidade e aceitação do sistema.
    5. Abordagens híbridas:
      1. São adequados quando nenhum modelo de ciclo de vida único atende a todas as necessidades do projeto.
      2. Permitem combinar elementos de diferentes abordagens
      3. para adaptar-se às características específicas do projeto.
    6. Abordagens contemporâneas:
      1. São adequados para projetos que valorizam a colaboração, automação e entrega contínua.
      2. O DevOps é útil quando há uma integração estreita entre as equipes de desenvolvimento e operações.
      3. O Design Thinking é recomendado quando a compreensão profunda das necessidades dos usuários e a inovação são fundamentais.

    Abordagem escolhidas para desenvolvimento do sistema

    1. Abordagem Ágil
      1. A abordagem ágil, como o Scrum, pode ser aplicada para lidar com a natureza iterativa e colaborativa do desenvolvimento do sistema. Ela permite uma entrega rápida de valor ao cliente e flexibilidade para se adaptar a mudanças de requisitos durante o processo de planejamento do almoço..
    2. Abordagem de Prototipagem
      1. A prototipagem pode ser utilizada para criar protótipos interativos do sistema de planejamento, permitindo uma validação rápida e visualização das funcionalidades propostas. Isso possibilita aos usuários experimentar o sistema antes da implementação completa e fornecer feedback para refinamentos

    Atividades

    Aividades de Análise:

    1. Identificação das Bordas do Sistema:
      1. Necessidades
      2. Sistema atual
      3. Cenário, contexto, domínio, escopo
    2. Definição dos Personas, Mapa de empatia e Atores
    3. Atores
    4. História, mapa de experiência, necessidades e caso de uso por ator
    5. Personas
    6. Licitação dos Requisitos de Usuário:
      1. Lista de requisitos funcionais e não funcionais
      2. Casos de uso identificados e seus requisitos associados
      3. Restrições e limitações do sistema
    7. Licitação dos Requisitos do Sistema:
      1. Especificação de requisitos técnicos e de desempenho
      2. Casos de uso identificados e seus requisitos associados
      3. Descrição detalhada dos requisitos

    Documentação de Projeto:

    1. Arquitetura de Informação:
      1. Diagrama de arquitetura de informação
      2. Organização e estrutura das informações
      3. Fluxos de informações entre os componentes do sistema
    2. Design de Interface:
      1. Wireframes e protótipos das telas
      2. Especificações de design visual
      3. Guias de interação do usuário
    3. Arquitetura de Software:
      1. Diagrama de arquitetura de software
      2. Componentes do sistema e suas interações
      3. Tecnologias e padrões utilizados
    4. Documentação de Implementação:
      1. Código-fonte:
        1. Listagem do código-fonte do sistema
        2. Comentários e documentação interna
      2. Testes
        1. Casos de teste e resultados
        2. Relatórios de testes e correções
      3. Configuração e Implantação:
        1. Instruções para instalação e configuração do sistema
        2. Ambiente de implantação recomendado
        3. Documentação de suporte à operação e manutenção

    Regras dos requisitos

    1. Critério funcional: Nesse caso, as regras são agrupadas com base nas funcionalidades específicas do sistema. Por exemplo, todas as regras relacionadas ao cadastro de usuários podem ser agrupadas juntas, enquanto as regras relacionadas à geração de relatório podem ser agrupadas separadamente.
    2. Critério de domínio: As regras podem ser agrupadas com base em diferentes áreas ou domínios de negócios observados pelo sistema. Por exemplo, todas as regras relacionadas à gestão de estoque podem ser agrupadas juntas, enquanto as regras relacionadas ao processamento de pedidos podem ser agrupadas separadamente.
    3. Critério de restrição: As regras podem ser agrupadas com base nas restrições impostas pelo sistema. Isso pode incluir regras de validação de dados, restrições de segurança, limites de tempo de resposta, entre outros.
    4. Critério de interação: As regras podem ser agrupadas com base nas diferentes do sistema com os usuários ou outros sistemas. Por exemplo, todas as regras relacionadas à autenticação e autorização podem ser juntas agrupadas, enquanto as regras relacionadas à integração com sistemas externos podem ser agrupadas separadamente.

    Ferramentas

    1. ChatGPT   
    2. Bootstrap 5.3- framework front-end
    3. Thenounprojec - Agrega e cataloga símbolos criados
    4. Suite Libre Office - Draw - Manipula objetos gráficos

    5. Plataforma EAD
    6. Udemay - plataforma EAD
    7. Plataforma de serviços
    8. SDT - serviços de design
    9. O livro que aprende
    10. Em elaboração

    Glossário de termos

    Autor Titulo Localização
    Objetivo estabelece a finalidade de um cenário. O cenário deve descrever de que modo este objetivo deve ser alcançado. Categoria 2
    Contexto descreve o estado inicial de um cenário, suas pré-condições, o local (físico) e tempo. Na sua definição podem ser especificadas restrições sobre estes elementos (constraint). Categoria 1
    Recurso identifica os objetos passivos com os quais lidam os atores. Na sua definição podem ser especificadas restrições sobre os objetos a serem lidados pelo cenário (constraint Categoria 2
    Ator Pessoa ou estrutura organizacional que tem um papel no cenário Categoria 1
    Episódio Cada episódio representa uma ação realizada por um ator onde participam outros atores utilizando recursos disponíveis. Um episódio também pode se referir a outro cenário. Episódios podem conter restrições (constraint) e exceções (exception).
    Uma restrição é qualquer imposição que restrinja um episódio de um cenário. Uma exceção é o tratamento para uma situação excepcional ou de erro.
    Categoria 1

    Referências bibliograficas e levantamentos

    Autor Titulo Localização
    ChatGPT Conversação com ChatGPT
    Contexto descreve o estado inicial de um cenário, suas pré-condições, o local (físico) e tempo. Na sua definição podem ser especificadas restrições sobre estes elementos (constraint). Categoria 1