33
Engenharia de Software
UNICSUL
41
Engenharia de Software
UNICSUL
10
Engenharia de Software
UNICSUL
32
Engenharia de Software
UNICSUL
55
Engenharia de Software
UNICSUL
17
Engenharia de Software
ESTACIO
2
Engenharia de Software
UMG
2
Engenharia de Software
UMG
11
Engenharia de Software
UMG
11
Engenharia de Software
UMG
Texto de pré-visualização
Olá estudante A seguir você dará continuidade ao desenvolvimento da sua solução através dos campos específicos para a resolução dos 3 desafios propostos lembrando que eles se complementam Nome Digite aqui RGM Digite aqui Documentação Revisite a documentação do projeto desenvolvido na PIT I faça as atualizações e melhorias necessárias de acordo com os pontos explicitados no material teórico Ao terminar os ajustes suba a documentação em um repositório GIT Link do repositório Codificação Na Tabela a seguir insira as informações referentes ao desenvolvimento do código do frontend e backend Linguagem do Backend Banco de Dados Hospedagem Plataforma Modo de Codificação Tradicional Lowcode Nocode Link do repositório no GitHub com os códigos abertos Link da solução em funcionamento Link do vídeo narrado no mínimo 5 min Testes da Solução Escolha 5 colegas para testar sua aplicação e preencha a tabela a seguir com as informações obtidas Nome Data do teste O que testou e funcionou O que testou e não funcionou O que deve ser corrigido Funcionalidade não testada faltou ou não foi implementada Nome Data do teste O que testou e funcionou O que testou e não funcionou O que deve ser corrigido Funcionalidade não testada faltou ou não foi implementada Nome Data do teste O que testou e funcionou O que testou e não funcionou O que deve ser corrigido Funcionalidade não testada faltou ou não foi implementada Nome Data do teste O que testou e funcionou O que testou e não funcionou O que deve ser corrigido Funcionalidade não testada faltou ou não foi implementada Nome Data do teste O que testou e funcionou O que testou e não funcionou O que deve ser corrigido Funcionalidade não testada faltou ou não foi implementada Laudo de Qualidade Insira a seguir o laudo de qualidade do sistema apontando os erros e as correções Não esqueça de coletar as evidências para inserilas no laudo Vídeo da Solução atualizada Após levantar os feedbacks e executar as correções necessárias e pertinentes grave um vídeo de até 5 minutos apresentando as modificações realizadas no sistema Link para o vídeo Conteudista Prof Me Artur Marques Revisão Textual Profª Mª Thassiana Reis Félix DESAFIO ATIVIDADE Material Teórico Material Complementar SituaçãoProblema 1 SituaçãoProblema 2 SituaçãoProblema 3 Problema em Foco Atividade de Entrega Projeto Integrador Transdisciplinar em Engenharia de Software II REFERÊNCIAS Referências Olá estudante Vamos iniciar a disciplina abordando os conceitos necessários para que você possa realizar a atividade através das situaçõesproblema mais à frente Introdução Apesar de a área de programação ser considerada fundamental para o desenvolvimento profissional na Engenharia de Software há quem ainda possui pouca experiência no assunto Assim por acreditarmos que o contato com este Projeto Integrador gere valor para tanto para a vida pessoal quanto profissional de seus usuários neste material você encontrará tanto uma retomada de conteúdo focado em certos princípios utilizados na Engenharia da Computação quanto a apresentação de novos capazes de auxiliar até mesmo aqueles com pouca experiência na 1 8 Material Teórico Atenção estudante Aqui reforçamos o acesso ao conteúdo online para que você assista à videoaula Será muito importante para o entendimento do conteúdo manipulação e consecução de artefatos de software Para isso daremos foco em itens importantes na produção de uma solução como por exemplo UX experiência do usuário projeto físico do banco de dados codificação de frontend e padrões de design para o backend e claro teste de software além de outras coisas O desenvolvimento de networking durante o curso e claro durante toda sua jornada profissional é fundamental para um projeto de vida bemsucedido Desse modo é importante que você estudante desenvolvao durante a execução do projeto Para que isso aconteça você deve conversar com seus colegas fazer novas amizades trocar experiências fazer e permitir receber sugestões Lembre se as coisas ficam melhores quando há empatia e colaboração Para este primeiro momento que compreende a retomada de conteúdo uma atividade fundamental é revisar o projeto proposto na fase de planejamento realizado no Projeto Integrador Transdisciplinar em Engenharia de Software I pois tratase de uma oportunidade para recordar o que foi planejado revalidar a ideia entender ou aprofundar os estudos Afinal estudante de lá para cá muita coisa em sua cabeça deve ter mudado incluindo a aprendizagem de disciplinas novas e técnicas que podem ter acrescentado valor a este seu trabalho Também é possível que a partir de reflexões você tenha mudado de ideia porque agora vê de forma mais clara os desafios que se apresentam e por isso quer revisálos Aproveite para fazer isso o mais cedo possível Aliás o momento é agora Vamos começar a retomada de conteúdos com o banco de dados Um banco de dados tem informações que são representativas do mundo real Quando modelamos aspectos desse mundo descobrimos que precisamos representar algo seja ele físico um fato ou um evento que acontece Dentro desse banco acontece a modelagem de dados de um software ou seja o processo de criar uma visão conceitual das informações que o banco contém ou deveria conter garantindo assim a integridade dos dados Como resultado desse processo os objetos de dados as entidades para as quais as informações devem ser armazenadas e as associações regras ou restrições que regem as informações criam formas e entram no banco de dados Assim um modelo de dados é essencial para fornecer clareza e consistência nos metadados ou seja aos dados sobre outros dados e nas definições que compõem um banco de dados o que contribui para aumentar a qualidade da informação Também podemos garantir a qualidade das informações armazenadas em um banco de dados impondo regras para que apenas dados válidos entrem nas tabelas Para fazer isso ao projetar o modelo de dados é necessário definir o domínio de valor para cada campo diferenciando os que devem ter valores daqueles que podem ser deixados em branco A qualidade de informação pode ainda ser aprimorada pela imposição de restrições que garantem a integridade referencial e mantêm a cardinalidade pretendida nas relações entre as entidades Essas restrições podem ser derivadas apenas de um modelo de dados adequado Assim o desenvolvimento de software pode garantir um maior entendimento do sistema a ser desenvolvido se as atividades de modelagem de dados forem realizadas paralelamente ao levantamento de requisitos mais completos e mais corretos Como etapa posterior a modelagem de requisitos iniciamos a construção dos artefatos de estruturais e comportamentais da Unified Modeling Language UML Linguagem de Modelagem Universal Apesar dela possuir vários diagramas usaremos o Diagrama de para criarmos as entidades que serão usadas para modelar qualquer coisa coleções de objetos com as mesmas características intrínsecas como funcionários produtos pedidos na empresa que devem ser representadas em um banco de dados Mas quais aspectos são relevantes em uma classe UML Um objeto é a instância de uma classe Os métodos podem ser invocados em um objeto para inspecionar e manipular suas propriedades Ao contrário dos sistemas orientados a objetos os Nome o nome da classe é quase sempre um substantivo pois representa uma coisa ou fato alunos carros livros cursos etc Descrição o primeiro passo na modelagem de uma classe é descrevêla em linguagem natural Isso nos ajuda a saber exatamente o que essa classe significa no negócio Atributos cada classe é definida exclusivamente por seu conjunto de atributos também chamados de propriedades Cada atributo é uma informação que caracteriza cada membro dessa classe no banco de dados Juntos eles fornecem a estrutura para nossos objetos ou tabelas de banco de dados Na UML identificamos apenas atributos descritivos ou seja aqueles que realmente fornecem informações do mundo real relevantes para o negócio sobre os objetos que estão sendo modelados bancos de dados relacionais tradicionais armazenam informações como registros de dados não como objetos Na construção de um banco de dados relacional cada classe é primeiro traduzida ou se preferir mapeada em um esquema de modelo relacional Esse esquema é identificado pelo nome da classe e lista todos os atributos no diagrama de classes No modelo relacional um esquema de relação é definido como um conjunto de atributos juntamente com uma regra de atribuição que associa cada atributo a um conjunto de valores válidos que podem ser atribuídos a ele Esses valores são chamados de domínio do atributo Lembrese que um domínio é muito mais do que um tipo de dados Tudo que escrevemos está atrelado à teoria dos conjuntos Assim é importante reconhecer que definir esquemas ou domínios como conjuntos de elementos nos diz muito mais sobre eles a partir das propriedades matemáticas dos conjuntos Portanto Um conjunto não pode conter elementos duplicados Os elementos de um conjunto não são ordenados Dado um conjunto regras podem ser desenvolvidas para determinar quando um elemento pode ser incluído ou excluído dele Podemos definir subconjuntos por exemplo podemos exibir apenas um conjunto selecionado de atributos de um esquema ou podemos limitar o domínio de um atributo a um intervalo específico de valores Os subconjuntos podem ser manipulados com os operadores usuais de conjunto união interseção entre outros Por exemplo temos dois conjuntos de clientes um pertencente a uma empresa outro a uma segunda empresa Se resolvermos realizar a interseção de ambos teremos provavelmente uma região comum ou seja há clientes da empresa 1 que também são clientes da empresa 2 Quando construímos o banco de dados projeto físico cada esquema de relação se torna a estrutura de uma tabela A sintaxe para criar a tabela inclui um tipo de dado para cada atributo que é necessário para o banco de dados porém um tipo de dado não é o mesmo que o domínio do atributo A seguir apresento um quadro comparativo sobre Entidades de relacionamento versus Diagramas de classes assim você consegue em caso de necessidade consultar algo rápido e direto Quadro 1 Comparação entre DER e Diagrama de Classes semelhanças e diferenças Diagramas de Entidade de Relacionamento Diagramas de Classe em UML Entidades que representam objetos ou tabelas em banco de dados relacional Classes são equivalentes a uma entidade no mundo relacional Atributos de entidades incluindo tipo de dados Atributos de uma classe têm o mesmo significado em um DER incluindo o tipo de dados Métodos associados a uma classe específica representando seu comportamento ou seja no mundo relacional seriam procedimentos procedures armazenados Diagramas de Entidade de Relacionamento Diagramas de Classe em UML Relacionamentos entre entidadesobjetos ou chaves estrangeiras em um banco de dados Relacionamentos são aqui agrupados em duas categorias Relacionamentos entre objetos nesse caso instâncias de Classes diferenciados em Dependência Associação Agregação e Composição são equivalentes a tipos de relacionamentos em um DER Relações entre classes de dois tipos GeneralizaçãoHerança e RealizaçãoImplementação Este último não tem equivalente no mundo relacional Vídeo Designing Databases from UML Class Models Vale o investimento e tempo para assistir a este vídeo muito interessante sobre como transformar diagramas de classe em banco de dados Como o vídeo está em inglês apesar de ser a língua de tecnologia de informação no mundo você poderá por conveniência ativar as legendas Clique no botão para conferir o vídeo indicado ASSISTA Mas se desconsiderarmos a modelagem de dados que riscos incorremos Outro aspecto relevante que temos que recordar diz respeito à camada de apresentação do sistema ou IHC Interface Humano Computador Uma boa interface torna mais fácil para os usuários dizer ao computador o que eles querem fazer Assim o computador pode solicitar informações dos usuários do Youtube e depois mudar o idioma para Português do Brasil Isso dará mais conforto para você acompanhar o vídeo Redundância desnecessária como não há um modelo para ver claramente os objetos de dados diferentes versões dos mesmos objetos aparecerão com informações diferentes Aplicativos lentos a ausência de um modelo de dados dificulta as tarefas de otimização o que reduz a capacidade de resposta dos aplicativos Incapacidade de atender aos padrões de qualidade se não houver modelo de dados seu banco de dados não será documentado o que é obrigatório em cenários como migrações de banco de dados Qualidade de software ruim os requisitos de desenvolvimento de software serão ruins e os usuários não terão os aplicativos de que precisam ou desejam Custos de desenvolvimento mais altos teremos que decidir quem pagará pelos custos extras de desenvolvimento e manutenção além de quem vai explicar quando os prazos não forem cumpridos e apresentar informações compreensíveis Nesse sentido a comunicação clara entre o usuário e o computador é a premissa de trabalho de um bom design de interface do usuário A seguir trago alguns itens importantes para você estudante levar em consideração quando for fazer a IHC de sua aplicação de software A sua interface Deve ser clara a clareza ajuda a evitar erros do usuário torna as informações importantes óbvias e contribui para facilitar o aprendizado e o uso Deve ser consistente uma interface consistente permite que os usuários apliquem o conhecimento já aprendido a novas tarefas Deve ser simples designs simples são fáceis de aprender e usar e dão à interface uma aparência consistente Um bom design requer equilíbrio entre maximizar a funcionalidade e manter a simplicidade por meio da divulgação progressiva de informações Deve ser controlada pelo usuário o usuário não o computador inicia e controla todas as ações Deve ser direta os usuários devem ver a relação visível de causa e efeito entre as ações que realizam e os objetos na tela Isso os permite sentir que estão no comando das atividades do computador Deve ser empática e recuperávelreversível os usuários cometem erros Portanto é importante que as ações realizadas sejam reversíveis Uma boa interface facilita a exploração e o aprendizado por tentativa e erro Deve dar uma resposta é importante manter o usuário informado e fornecer feedback imediato Além disso certifiquese de que o feedback seja apropriado para a tarefa Lembrese boa mensagem bom tratamento Deve ser esteticamente agradável cada elemento visual que aparece na tela potencialmente compete pela atenção do usuário Assim proporcionar um ambiente agradável para trabalhar e que contribua para a compreensão do usuário sobre as informações apresentadas é fundamental Há um excerto importante e pertinente às atividades que serão realizadas por você O exponho a seguir O design da interface do usuário UI concentrase em antecipar o que os usuários podem precisar fazer e garantir que a interface tenha elementos fáceis de acessar entender e usar para facilitar essas ações A interface do usuário reúne conceitos de design de interação design visual e arquitetura da informação Escolhendo elementos de interface Os usuários se familiarizaram com os elementos da interface que atuam de uma determinada maneira portanto tente ser consistente e previsível em suas escolhas e no layout Isso ajudará na conclusão da tarefa eficiência e satisfação Os elementos de interface incluem mas não estão limitados a Controles de entrada botões campos de texto caixas de seleção botões de opção listas suspensas caixas de listagem alternâncias campo de data Componentes de navegação trilha de navegação controle deslizante campo de pesquisa paginação controle deslizante tags ícones Componentes informativos dicas de ferramentas ícones barra de progresso notificações caixas de mensagens janelas modais Recipientes Há momentos em que vários elementos podem ser apropriados para exibir conteúdo Quando isso acontece é importante considerar os tradeoffs Por exemplo às vezes os elementos que podem ajudar a economizar espaço sobrecarregam mais o usuário mentalmente forçandoo a adivinhar o que está dentro do menu suspenso ou qual pode ser o elemento Práticas recomendadas para projetar uma interface Tudo decorre de conhecer seus usuários incluindo a compreensão de seus objetivos habilidades preferências e tendências Depois de conhecer seu usuário certifiquese de considerar o seguinte ao projetar sua interface Mantenha a interface simples As melhores interfaces são quase invisíveis para o usuário Eles evitam elementos desnecessários e são claros na linguagem que usam nos rótulos e nas mensagens Crie consistência e use elementos de interface do usuário comuns Ao usar elementos comuns em sua interface do usuário os usuários se sentem mais à vontade e podem fazer as coisas mais rapidamente Também é importante criar padrões de linguagem layout e design em todo o site para ajudar a facilitar a eficiência Uma vez que um usuário aprende como fazer algo ele deve ser capaz de transferir essa habilidade para outras partes do site Seja objetivo no layout da página Considere as relações espaciais entre os itens na página e estruture a página com base na importância A colocação cuidadosa de itens pode ajudar a chamar a atenção para as informações mais importantes e pode ajudar na digitalização e legibilidade Use cor e textura estrategicamente Você pode direcionar a atenção ou redirecionar a atenção para os itens usando cor luz contraste e textura a seu favor Use a tipografia para criar hierarquia e clareza Considere cuidadosamente como você usa o tipo de letra Diferentes tamanhos fontes e disposição do texto para ajudar a aumentar a legibilidade a legibilidade e a legibilidade Certifiquese de que o sistema comunique o que está acontecendo Sempre informe seus usuários sobre localização ações mudanças de estado ou erros O uso de vários elementos de interface do usuário para comunicar o status e se necessário as próximas etapas podem reduzir a frustração do usuário Pense nos padrões Ao pensar cuidadosamente e antecipar os objetivos que as pessoas trazem para o seu site você pode criar padrões que reduzem a carga do usuário Isso se torna particularmente importante quando se trata de design de formulários onde você pode ter a oportunidade de ter alguns campos pré escolhidos ou preenchidos Princípios de Norman o Criador do Termo User Experience Clique no botão para conferir o vídeo indicado ASSISTA O que é Arquitetura de Informação Clique no botão para conferir o vídeo indicado ASSISTA USABILITY 2022 p 1 2 Vídeos Para conhecer melhor os aspectos ideais numa IHC selecionei dois vídeos muito interessantes para que você possa incrementar a UX de seus clientes deixando a experiência mais atraente e dentro de boas práticas Vejaos a seguir Outro aspecto importante que você deve ter em mente é que precisará programar e muitas vezes o tempo é curto Portanto quero aqui claro permitir que você programe de forma clássica tanto as IHCs de sua aplicação utilizando HTML CSS e JavaScript por exemplo mas também o backend usando Java PHP ou Python se for o caso Apesar disso não há como deixar de indicar aceleradores de produtividade num novo e emergente grupo de ferramentas chamadas de lowcode e nocode Codificar gera estresse na maioria das pessoas com pouca prática ou que não se dão muito bem quando precisam codificar algo Mas não é o fim da linha Lembrese que você está nessa jornada para enfrentar desafios e somente dessa forma ela poderá ser gratificante Saímos desses processos sempre maiores do que quando entramos com mais conhecimento e experiência principalmente Portanto precisamos mudar a nossa perspectiva nosso mindset Por isso vamos quebrar esse paradigma iniciando com possibilidades de realização de aplicativos por meio do emprego do no code e do lowcode Esse grupo de ferramentas tratase de um movimento importante pois mais do que permitir que usuários tenham empoderamento para aplicações baseadas em web ao pensar em soluções simples e elegantes o nocode pode ser a solução O nocode para web trata de JavaScript HTML5 e CSS mas não exige em um primeiro momento um conhecimento profundo inicial o que o faz tornálo a solução ideal para você que está desenvolvendo um projeto Veja alguns conceitos O desenvolvimento sem código é um tipo de desenvolvimento para a Web que permite que não programadores e programadores criem software usando uma interface gráfica com o usuário em vez de escrever código O movimento sem código repousa sobre a crença fundamental de que a tecnologia deve permitir e facilitar a criação não ser uma barreira à entrada Muito do que fazemos em nosso dia a dia é alimentado por código Estejamos verificando nossas contas bancárias curtindo fotos de amigos nas redes sociais ou procurando novas roupas em nossos sites de comércio eletrônico favoritos a programação é o que torna todas essas ações possíveis WEBFLOW 2021 p12 O que antes era um espaço que apenas desenvolvedores e especialistas em programação podiam navegar agora está aberto a todos O movimento sem código removeu o obstáculo de ter que conhecer linguagens de programação permitindo que qualquer pessoa traga suas ideias à luz Quando dizemos nocode é simplesmente uma camada de abstração sobre o código Ou seja ele pega os fundamentos do código e os traduz em soluções simples de arrastar e soltar permitindo que os criadores criem aplicativos e sites modernos visualmente Há dezenas de ferramentas ou IDEs que oferecem plataformas de desenvolvimento sem código disponibilizando todas as funcionalidades do HTML5 CSS e Javascript mas você não precisa conhecer nenhuma dessas linguagens de programação para começar a construir As plataformas de desenvolvimento web sem código percorreram um longo caminho desde os editores WYSIWYG What you see is what you get o que você vê é o que você pega do passado Onde esses designs geravam transitáveis para a época esses sites eram simples oferecendo uma experiência unilateral para o usuário Em seguida surgiram os construtores de sites mais dinâmicos que as plataformas originais sem código não podiam fazer ou seja construir sites cheios de interações animações dinâmicas e outros elementos visuais sofisticados Existem muitos casos de uso para o nãocódigo Não se limita apenas a construir sites Ele pode ser usado para construir aplicativos móveis aplicativos da web aplicativos de voz ferramentas internas integrações e para automação de tarefas Sem conhecer uma única linha de código é possível construir chatbots com Voiceflow conectar vários aplicativos e construir fluxos de trabalho automatizados com Zapier e utilizar Shopify para executar lojas de comércio eletrônico Assim o nocode não se trata de um atalho mas de apresentar uma maneira moderna e atual de trabalhar com desenvolvimento Sim trabalhamos dessa forma nas empresas modernas e atualizadas tecnologicamente que devem enfrentar uma concorrência feroz e que o fator tempo representa mais do que dinheiro representa sobrevivência Com a digitalização das empresas e do poder computacional existente atualmente um simples programador em algum canto obscuro do planeta pode estar fazendo a diferença ou na cura de doenças ou criando acessibilidade e inclusão por meio de seus aplicativos e serviços ou criando empresas cujo valor de mercado ultrapassa o PIB Produto Interno Bruto de muitas nações Como exemplo podemos citar a Apple a Tesla o Facebook o Google a Microsoft a Amazon a Alibaba entre outras Assim quanto mais tecnologia você tiver ao seu alcance e mais souber sobre ela mais ajuda terá para fazer a diferença As plataformas sem código oferecem uma camada de abstração sobre o código Ou seja elas pegam os fundamentos do código e os traduzem em uma solução simples de arrastar e soltar o que permite que os criadores construam aplicativos e sites modernos visualmente Os protótipos iniciais de um produto digital geralmente não precisam de nada perto do investimento em Engenharia como no estágio de lançamento Portanto você já pensou em rever seus protótipos do Projeto Integrador Transdisciplinar I usando nocode É claro que optar pelo nocode não fará com que você não programe Na verdade você programará o que é a parte importante a inteligência de processamento de seu projeto o que o diferenciará dos demais Assim as plataformas sem código exigem programadores ou seja pessoas que podem pensar em abstrações e acima de tudo que sabem como unir as ferramentas certas de maneira correta para produzir valor Appy Pie App Builder Clique no botão para conferir o conteúdo ACESSE Appy Pie Website Builder Clique no botão para conferir o conteúdo ACESSE Appy Pie Chatbot Builder Clique no botão para conferir o conteúdo ACESSE Appy Pie Connect Clique no botão para conferir o conteúdo ACESSE Voiceflow Clique no botão para conferir o conteúdo Sites A seguir deixo algumas plataformas para você acessar e pesquisar para construir a sua ACESSE Airtable Clique no botão para conferir o conteúdo ACESSE Ninox Clique no botão para conferir o conteúdo ACESSE VINYL Clique no botão para conferir o conteúdo ACESSE Quando estamos desenvolvendo uma aplicação é importante que ela seja testada afinal o teste poderá determinar e garantir a qualidade do produto O sucesso desse teste depende de aspectos como a definição do que constitui um produto de qualidade a determinação de propriedades mensuráveis que refletem a qualidade a derivação de critérios significativos de teste baseados nas quantidades mensuráveis e a formulação de testes adequados para garantir essa qualidade Todavia isso não é necessariamente aplicado ao software ou a certas soluções que utilizam abstrações matemáticas e algoritmos para sua construção As características de alto nível do software de qualidade são confiabilidade testabilidade usabilidade eficiência capacidade de carga e manutenção Na prática a eficiência muitas vezes acaba por estar em conflito Clique no botão para conferir o vídeo indicado ASSISTA Outros termos que causam confusão entre os desenvolvedores são as diferenças entre Verificação e Validação Embora a distinção possa parecer trivial os dois cumprem objetivos muito distintos A verificação do desenvolvimento como o próprio nome sugere referese à verificação do aplicativo que ainda está em desenvolvimento e acontece para garantir que o software se encontra de acordo com as especificações Essas verificações podem ser algo tão simples quanto ler as especificações e comparálas com a lógica do código para garantir que estejam alinhadas O processo de verificação incluirá atividades como revisões de código orientações inspeções mas poucos se houver testes reais Enquanto a verificação ocorre com o produto ainda em desenvolvimento a validação é realizada após a conclusão de um determinado módulo ou mesmo a conclusão de toda a aplicação A validação se concentra em garantir que as partes interessadas obtenham o produto que desejam Vídeo Webinar Requisitos não Funcionais Vamos revisar os requisitos de qualidade não funcionais Aqui você encontrará um conteúdo muito bom Assim o esforço de validação não importa com o como você chegou lá apenas que você chegou e que tudo está conforme o esperado Isso infelizmente não aflige com dúvidas apenas os testes Há dúvidas também em outra fase importante a da validação dos requisitos Muitos estudantes perguntam como validar os requisitos quando utilizamos metodologia ágil e se é a mesma coisa com metodologias sequenciais ou tradicionais De forma simples descrevo aqui que a validação de requisitos independente da metodologia utilizada trata de garantir que os requisitos tenham alcançado os objetivos do negócio atendam às necessidades de quaisquer partes interessadas relevantes e sejam claramente compreendidos pelos desenvolvedores Logo a validação é uma etapa crítica para encontrar requisitos ausentes e garantir que eles tenham uma variedade de características importantes como Por fim entenda estudante que qualquer forma de validação em software de requisitos ou de código não está focada no caminho percorrido para chegar ao destino mas sim se o alvo foi atingido Descrever corretamente a necessidade do usuário final Ter apenas um significado exato Poder ser modificada conforme necessário Documentar seus atributos e garantir que eles são realmente o que os clientes precisam Vincular facilmente a esses requisitos os códigos e testes Figura 1 Exemplo de relação entre o desenvolvimento e os testes com o Modelo V JUnity Clique no botão para conferir o conteúdo ACESSE PhpUnity Clique no botão para conferir o conteúdo ACESSE Sites Para te ajudar nos testes unitários temos o seguinte Pytest Clique no botão para conferir o conteúdo ACESSE Pytest Documentation Clique no botão para conferir o conteúdo ACESSE Tutorial de pytest para iniciantes Clique no botão para conferir o conteúdo ACESSE Por fim recomendo que você estudante utilize uma construção em camadas com um padrão MVC Model View Controller Apesar de ser atualmente primitivo em certos aspectos com esse padrão você poderá aprender de forma clara a importância de adoção Afinal o padrão por trás de cada tela que usamos é o MVC inventado quando não havia Web e as arquiteturas de softwares eram na melhor das hipóteses clientes conversando diretamente com um único banco de dados em redes primitivas Pois é a situação mudou muito de lá para cá não é mesmo Porém não custa lembrar que hoje o MVC é para todos os efeitos a pedra angular de qualquer arquitetura de aplicativo pois em sua abordagem separa as principais preocupações comuns para o código de aplicativo organizado e gerenciável A base de um aplicativo MVC bem projetado é um modelo de dados sólido Figura 2 Exemplo de MVC em aplicação web Há inclusive estudante um repositório no Github Oriento que você o estude para entender melhor o funcionamento de um aplicativo Nesse repositório há a codificação funcional e a documentada Modelo o modelo de dados representa as informações principais que seu aplicativo usa para acessar e manipular Por isso é considerado o centro da sua aplicação Enquanto o visualizador e o controlador servem para conectar o usuário com o modelo de dados de forma amigável o modelo encapsula as preocupações de armazenamento e validação View os visualizadores devem monitorar o modelo de dados pronto para responder às mudanças Isso permite que os controladores evitem acoplamentos desnecessários ao visualizador O controlador deve atualizar o modelo e em seguida o visualizador observará e responderá a essa alteração Controlador o código do controlador atua como uma ligação entre o modelo e a visualização recebendo a entrada do usuário e decidindo o que fazer com ela Por ter essas funções é considerado o cérebro do aplicativo Clique no botão para conferir o conteúdo ACESSE Leitura EJS e Sequelize Juntos no Padrão MVC Indicações para saber mais sobre os assuntos abordados nesta disciplina VÍDEOS TDD NA PRÁTICA COM JAVA USANDO MOCKBEAN O desenvolvimento orientado por testes é de grande valia no desenvolvimento ágil Pode ser utilizado junto com XP em uma gestão de projeto de software SCRUM No vídeo são explicadas técnicas de como desenvolver testes conforme o exigido em desenvolvimento na prática de forma introdutória Clique no botão para conferir o vídeo indicado ASSISTA CRIANDO UM CRUD FÁCIL USANDO O FRAMEWORK SPRING MVC No vídeo você encontrará algo além da criação de um CRUD usando o Spring MVC Spring JPA e Spring Boot você descobrirá a forma correta e possível de utilização de projetos Java Maven externos e reaproveitamento de modelos já criados provando dessa forma como é possível programar em Java de modo correto e reaproveitar o código Java Clique no botão para conferir o vídeo indicado ASSISTA 2 8 Material Complementar CONHEÇA O SPRING MVC O FRAMEWORK WEB MAIS POPULAR PARA JAVA Com este vídeo você aprenderá sobre como funciona o fluxo de uma requisição atendida pelo Spring MVC e ainda quais as principais vantagens deste framework web Clique no botão para conferir o vídeo indicado ASSISTA LEITURA JUNIT TUTORIAL O artigo aborda um assunto vital para programadores e analistas que trabalham sobre um paradigma ágil como o Extreme Programming De forma sucinta o material apresenta tópicos como Um pouco de XP Como programar guiado a testes Teste Unitário O quê Por quê Quando Quem Como JUnit O quê Por quê Quando Quem Como JUnit Planejamento e arquitetura das classes JUnit Funcionamento e Análise do resultado Implementado testes em JUnit usando o Eclipse e outros métodos e técnicas complementares httpsbitly3kb3Bek Caroa estudante Agora vamos compreender o cenário que será abordado na primeira situaçãoproblema da disciplina Atentese à situação profissional que você precisará entender para poder realizar a atividade Atualizar Plano de Projeto e DesenvolverTestar uma Solução Funcional de Software Situação 1 Como descrito no corpo teórico e na apresentação desta Unidade é importante aproveitar esse tempo para revisar o planejamento O KaiZen melhoria contínua é de fundamental importância para a criação de produtos de software melhores e mais adequados Para podermos potencializar a solução planejada no Projeto Integrador Transdisciplinar de Engenharia de Software I embarcar mais detalhes e corrigir conceitos quando aplicável pedimos que você estudante 3 8 SituaçãoProblema 1 Verifique e adeque seu escopoideia e a prepare para a execução Verifique e adeque os elementos de modelagens da solução feitos em UML diagramas de classe casos de uso sequência atividades etc veja onde podemos colocar melhorias e alterações necessárias visando acurácia da modelagem Verifique e adeque os elementos da IHC Interface Humano Computador para poder refletir o que você pretende desenvolver em nível de telas mensagens de erro mapas conceituais além de revisar o próprio protótipo incrementandoo Faça ou revise os projetos relacionados aos dados a partir do diagrama de classes de persistência projeto conceitual projeto lógico normalizado Execute o projeto físico do banco de dados que servirá a sua aplicação web ou mobile documenteo e crie o dicionário de dados Vamos compreender o cenário que será abordado na segunda situaçãoproblema da disciplina Atentese à situação profissional que você precisará entender para poder realizar a atividade Situação 2 Nesta situaçãodesafio você irá desenvolver o que planejou Para poder auxiliáloa oferecemos algumas ferramentas livres na documentação de conteúdo do Projeto Integrador Transdisciplinar II para que você acelere caso queira afinal se temos possibilidades de uso de nocode ou lowcode como ferramentas para ajudar na produtividade do front vamos utilizar Claro você pode realizar a atividade de forma tradicional a escolha e o tempo são seus Aqui esperamos as seguintes entregas 4 8 SituaçãoProblema 2 Crie um usuário no GIT para que sua experiência possa ser revisada e vista pelos tutores e professores Claro ela servirá de projeto realizado para que selecionadores e outros possam certificar sua experiência e ficar competitivo na concorrência por vagas Sugerimos que você continue publicando nesse repositório após a entrega do Projeto Integrador Transdisciplinar II Será seu CV permanente Github Clique no botão para conferir o conteúdo ACESSE Site Realizar a construção do código para a interface do usuário baseada em HTML CSS Java Script conforme a necessidade de seu projeto para o frontend Desenvolver o código de processamento de dados ou seja o backend dessa aplicação utilizando o design pattern indicado na documentação desta disciplina é indicado MVC Utilizar uma das seguintes linguagens sugeridas Java PHP C NET ou Python o que você estiver melhor familiarizadoa Apresentar frontend e backend testados por exemplo JUnit PUnit PHPUnit etc e funcionais com erros tratados e completos Por fim vamos compreender o último cenário abordado na terceira situaçãoproblema da disciplina Atentese à situação profissional que você precisará entender para poder realizar a atividade Situação 3 Agora estaremos concentrados em correções testes de integração e validação da solução utilizando pares Além disso precisamos fechar a documentação de todo o projeto para uma entrega perfeita Assim na situação 3 esperamos as seguintes entregas 5 8 SituaçãoProblema 3 Realizar e documentar os testes verificação e validação mostrando que o comportamento esperado foi realizado Oferecer a sua solução para cinco colegas de curso ou profissionais da área para que possam testála Para isso você estudante deve criar um formulário para que possa ser descritos os bugs sugestões de melhoria e colocar snapshots das telas com erros para facilitar sua correção e melhoria Coletar as sugestões dadas realizar correções e melhorias sugeridas quando pertinente e incorporálas na documentação do projeto Manter tudo documentado criando estruturas de diretório no GIT para todas as situações de desafio além é claro da codificação Apresentar em um vídeo gravado de até cinco minutos sua solução em funcionamento Orientações para o Projeto Situação 1 Uma vez revisado os documentos escolhidas as melhores sugestões de seus colegas e claro as suas próprias sugestões compile e utilize o GIT para manter a documentação atualizada e num lugar só isso inclui o código Lembrese de criar uma estrutura de banco de dados com um SGBD que seja de fácil manutenção e popular Nada de usar SGBD obscuros isso não é boa prática de mercado Situação 2 6 8 Problema em Foco Revisitar e revisar todos os documentos criados por você em seu Projeto Integrador Transdisciplinar de Sistemas de Informação I Atentarse e ter a intenção de realizar um ciclo de melhoria contínua deixando a documentação de planejamento mais robusta e mais clara Utilizar competências de atenção aos detalhes abstração e feedback de seus colegas Para isso você estudante deve pedir a eles a crítica para a solução que você deve implementar Assim o poder da colaboração e empatia deve ser utilizado nesta atividade Fazer a codificação do frontend do backend e da aplicação web ou mobile conforme sugerido em seu planejamento Bem esperamos muita codificação de sua parte para que o código ou artefato ou análise de dados possam ser desenvolvidos e apresentados Queremos que você produza códigos fontes frontend e backend bibliotecas manual de uso vídeo gravado demonstrando o funcionamento narrado por você com pelo menos cinco minutos de duração Concentre tudo no GIT passe o link de acesso para oa Tutora ou deposite o material no local que elea pedir mas mantenha o GIT em qualquer situação Lembrese para ajudar no frontend ferramentas nocode eou lowcode podem auxiliar muito na economia e em um melhor aproveitamento do tempo no projeto Aproveite para revisitar a interface do usuário o design e outros atributos Verifique se mudará algo aproveite para fazer essas modificações quando necessário Deixe a documentação sempre em ordem Você a depositará junto com o restante do projeto conforme orientações doa professora tutora no momento oportuno Situação 3 Na situação 3 o desafio é a realização de testes feitos pelos clientes no caso os colegas que julgaram o que você desenvolveu É importante que nesse momento você já tenha escolhido entre seus colegas quais serão seus dublês de usuários e lhes forneça o endereço para que eles possam testar sua solução como só um usuário sabe fazer O importante aqui é desenvolver a capacidade de aceitação da mudança o reconhecimento do erro como forma de melhorar continuamente o trabalho em equipe e por fim a resiliência necessária para continuar a perseverar para atingir o resultado É importante que você entregue em um arquivo PDF as cinco opiniõestestes sobre seu softwareproduto além de um vídeo que explicite quais mudanças foram adotadas Esses materiais consistirão como a prova de seu sucesso estudante neste desafio Lembrese de construir um template para que seus colegas possam laudar a qualidade da criação Esse documento precisa ter no mínimo Sintase à vontade para criar sobre isso Tudo que você precisa entregar está descrito no próprio desafio para evitar dúvidas É importante que você não esconda essas falhas de maneira alguma afinal elas servem para seu aprendizado Nome de quem testou Data do teste O que testou e funcionou descrição da funcionalidade O que testou e não funcionou descrição da funcionalidade e o que deve ser corrigido Funcionalidade não testada por que faltou ou se a funcionalidade existe no projeto mas não foi realizada descrever Muito bem estudante Agora que você já leu todas as situaçõesproblema você pode fazer o download deste arquivo para realizar a atividade de entrega Caso prefira o arquivo também se encontra no Ambiente Virtual de Aprendizagem 7 8 Atividade de Entrega USABILITYGOV User interface design basics 30092020 Disponível em httpswwwusabilitygovwhatandwhyuserinterfacedesignhtml Acesso em 02022022 WEBFLOW What is nocode development c2022 Disponível em httpswebflowcomnocode Acesso em 02022022 8 8 Referências Muito bem estudante Você concluiu o material de estudos Agora volte ao Ambiente Virtual de Aprendizagem para realizar a Atividade Relatório Diagnóstico Completo de Operações e Metas Estratégicas Sumário Este relatório apresenta um diagnóstico aprofundado e integrado das operações da transportadora fundamentado na análise estatística de um robusto conjunto de dados de 5000 registros de entrega Constatase que a empresa não obstante sua escala enfrenta desafios estratégicos de grande magnitude evidenciados por um notável desalinhamento entre suas metas corporativas e sua performance operacional efetiva O estudo revela que a satisfação do cliente embora aparente ser heterogênea em uma avaliação superficial oculta uma severa crise na qualidade dos serviços em mercados regionais de suma importância As investigações estatísticas comprovam com elevado grau de confiança que tal insatisfação é uma decorrência direta de ineficiências operacionais notavelmente o tempo excessivo de entrega em determinadas rotas A organização falha em atingir quatro de suas cinco principais metas estratégicas que englobam tempo de entrega diversificação da matriz de transporte e de forma mais crítica o índice mínimo de satisfação em três de suas cinco regiões de atuação A identificação de uma forte correlação positiva entre o peso das encomendas e o tempo de trânsito adiciona uma camada de complexidade a ser endereçada no planejamento logístico Diante deste cenário a recomendação estratégica central e mais premente consiste na implementação de planos de ação focados na otimização de processos das regiões Norte CentroOeste e Sudeste com vistas à redução do tempo de entrega como principal vetor para a recuperação da satisfação do cliente e o consequente alinhamento aos objetivos globais da companhia 1 Introdução O presente documento oferece a mais completa análise das operações da transportadora realizada até o momento consolidando os resultados de quinze investigações analíticas sequenciais em um único relatório coeso O problema fulcral que motivou este estudo foi a percepção por parte da administração de um possível desalinhamento entre as metas estratégicas da empresa e seus resultados operacionais bem como a necessidade de uma compreensão aprofundada dos fatores que influenciam a satisfação do cliente O propósito fundamental deste trabalho é portanto fornecer um diagnóstico preciso e baseado em evidências que não apenas descreva o estado atual da operação mas que também elucide as relações de causa e efeito entre as variáveis logísticas e a performance do negócio Para a consecução de tal desiderato a análise propõese a responder a um conjunto detalhado de quinze perguntas que abrangem desde o perfil geral das operações até a avaliação rigorosa de indicadoreschave de desempenho KPIs culminando em recomendações estratégicas aptas a nortear a tomada de decisão futura 2 Materiais e Métodos O presente estudo foi conduzido a partir de uma abordagem quantitativa com a utilização de um conjunto de dados secundários fornecidos em formato de planilha eletrônica Microsoft Excel xlsx A base de dados consolidada continha um total de 5000 registros onde cada registro representava uma operação de entrega individual As variáveis de interesse para a análise contidas neste conjunto de dados foram definidas e classificadas da seguinte forma Região variável categórica nominal representando as cinco grandes regiões do Brasil Modalidade variável categórica nominal descrevendo o meio de transporte utilizado Opinião variável categórica ordinal capturando a satisfação do cliente em cinco níveis de Péssimo a Excelente Peso variável numérica contínua expressa em quilogramas e Tempo variável numérica contínua expressa em horas Toda a manipulação análise e visualização dos dados foram realizadas no ambiente computacional estatístico R em sua versão 4xx Para a execução das tarefas foram empregados pacotes especializados que estendem as funcionalidades básicas do software O pacote readxl foi utilizado para a importação inicial dos dados da planilha A subsequente manipulação limpeza e sumarização dos dados foram efetuadas de maneira eficiente com o auxílio do pacote dplyr uma ferramenta central do ecossistema Tidyverse A criação de todas as visualizações gráficas de alta qualidade como os histogramas gráficos de barras boxplots e gráficos de dispersão foi realizada através do pacote ggplot2 conhecido por sua gramática de gráficos flexível e poderosa O pacote knitr foi utilizado para a formatação de tabelas de forma clara e legível Os procedimentos analíticos foram estruturados em etapas sequenciais Inicialmente foi realizada uma análise estatística descritiva para caracterizar o perfil das variáveis e obter uma compreensão geral dos dados Posteriormente para investigar as relações entre as variáveis e responder às perguntas de negócio foram aplicadas técnicas de estatística inferencial A associação entre variáveis categóricas como Região e Opinião foi avaliada pelo Teste QuiQuadrado de Independência Para comparar as médias de uma variável contínua entre diferentes grupos categóricos como o Tempo de entrega por Região foi empregada a Análise de Variância ANOVA A relação linear entre as duas variáveis contínuas Peso e Tempo foi quantificada e testada através do Teste de Correlação de Pearson Para todos os testes de hipóteses foi adotado um nível de significância alfa de 005 sendo este o limiar para a rejeição da hipótese nula 3 Análise de Dados e Resultados Nesta seção os resultados de cada uma das quinze investigações analíticas são apresentados individualmente detalhando a metodologia o código R utilizado os dados observados e a interpretação aprofundada de cada achado Pergunta 1 Os clientes estão satisfeitos com os serviços prestados pela transportadora Código para gerar a tabela de frequência e o gráfico de barras da Opinião tabelaopiniao dados countOpinião sort TRUE mutatePercentual roundn sumn 100 2 printkabletabelaopiniao caption Frequência de Opinião dos Clientes Gera o gráfico em uma nova janela windows print ggplottabelaopiniao aesx reorderOpinião n y n fill Opinião geombarstat identity geomtextaeslabel paste0n Percentual vjust 05 labstitle Distribuição da Opinião dos Clientes x Opinião y Quantidade thememinimal readlinepromptO gráfico foi gerado Pressione Enter no console para continuar Para responder a esta questão foi realizada uma análise de frequência sobre as 5000 avaliações de serviço contidas no conjunto de dados Os resultados quantitativos revelaram a seguinte distribuição 1718 avaliações 3436 foram classificadas como Bom 1349 2698 como Ruim 792 1584 como Regular 575 1150 como Péssimo e 566 1132 como Excelente A interpretação destes números evidencia uma polarização no sentimento dos clientes Embora Bom seja a categoria mais frequente a soma das avaliações explicitamente negativas Ruim e Péssimo alcança 3848 um volume substancial que se aproxima do total de avaliações positivas Excelente e Bom combinadas que é de 4568 Este cenário denota uma experiência de serviço inconsistente e um risco considerável à retenção de clientes e à reputação da marca A visualização desta acentuada divisão é fundamental para a compreensão do problema Fonte Próprio Autor 2025 Pergunta 2 Qual é a principal região de destino das operações da transportadora Código para gerar a tabela de frequência das Regiões tabelaregiao dados countRegião sort TRUE mutatePercentual roundn sumn 100 2 printkabletabelaregiao caption Frequência de Entregas por Região A metodologia utilizada foi uma análise de frequência das entregas por região A contagem revelou que as operações estão primariamente concentradas na Região Sudeste com 1576 entregas representando 3152 do total A Região Sul figura como o segundo maior mercado com 1246 operações 2492 Juntas estas duas regiões somam mais de 56 de todo o volume de negócios As demais regiões CentroOeste 1720 Nordeste 1608 e Norte 1028 completam a distribuição A interpretação destes dados indica um foco geográfico claro o que pode gerar eficiências de escala mas também concentra o risco operacional no eixo Sul Sudeste Pergunta 3 Como está a distribuição das operações em termos de modalidade de transporte Código para gerar a tabela de frequência das Modalidades tabelamodalidade dados countModalidade sort TRUE mutatePercentual roundn sumn 100 2 printkabletabelamodalidade caption Frequência de Entregas por Modalidade Através de uma análise de frequência a distribuição das 5000 operações por modalidade foi quantificada O modal Rodoviário demonstrou ser predominante respondendo por 2555 operações ou 5110 do total O modal Aéreo é o segundo mais utilizado com 901 operações 1802 seguido pelo Marítimofluvial com 731 operações 1462 A forte dependência do modal rodoviário superando a metade de todas as operações representa um risco estratégico significativo expondo a empresa aulnerabilidades intrínsecas a este setor como flutuações de custos e instabilidades logísticas Pergunta 4 Qual o perfil do peso das encomendas transportadas Código para gerar as estatísticas descritivas e o histograma do Peso pesostats asdataframetsummarydadosPeso printkablepesostats caption Estatísticas Descritivas Peso kg catDesvio Padrão do Peso sddadosPeso Gera o gráfico em uma nova janela windows histdadosPeso main Histograma de Distribuição do Peso xlab Peso kg ylab Frequência col lightblue border white readlinepromptO gráfico foi gerado Pressione Enter no console para continuar Foi conduzida uma análise de estatística descritiva sobre a variável Peso Os resultados indicam que a operação lida com cargas pesadas e de perfil notavelmente homogêneo O peso médio observado foi de 10005 kg com uma mediana de 10010 kg e um desvio padrão de 998 kg A proximidade entre média e mediana confirma uma distribuição simétrica sem valores extremos que distorçam a tendência central A faixa de operação vai de um mínimo de 649 kg a um máximo de 1375 kg A previsibilidade do perfil de carga constitui um ponto forte da operação como pode ser visualizado no histograma de distribuição Fonte Próprio Autor 2025 Pergunta 5 Qual o perfil do tempo gasto para transportar as encomendas Código para gerar as estatísticas descritivas e o histograma do Tempo tempostats asdataframetsummarydadosTempo printkabletempostats caption Estatísticas Descritivas Tempo h catDesvio Padrão do Tempo sddadosTempo Gera o gráfico em uma nova janela windows histdadosTempo main Histograma de Distribuição do Tempo xlab Tempo h ylab Frequência col lightgreen border white readlinepromptO gráfico foi gerado Pressione Enter no console para continuar Utilizando a mesma metodologia de estatística descritiva para a variável Tempo a análise revelou uma operação consistente em seus prazos em cenários normais O tempo médio de entrega foi de 718 horas com uma mediana quase idêntica de 719 horas e um baixo desvio padrão de 99 horas Este resultado sugere alta previsibilidade No entanto o tempo máximo registrado de 1125 horas é um outlier importante indicando que embora consistente a operação não se mostra imune a falhas que resultam em atrasos significativos O histograma correspondente ilustra a forte concentração dos tempos de entrega Fonte Próprio Autor 2025 Pergunta 6 Será que existe relação entre a modalidade de transporte e a região de destino da encomenda Código para gerar a tabela de contingência e o teste QuiQuadrado tabelamodreg tabledadosModalidade dadosRegião testequimodreg chisqtesttabelamodreg printtestequimodreg Para investigar a associação entre estas duas variáveis categóricas foi aplicado o Teste QuiQuadrado de Independência O resultado do teste foi estatisticamente significativo χ²16 76208 p 0001 indicando que a escolha da modalidade não é aleatória mas sim dependente da região de destino Isso sugere que a empresa emprega uma estratégia logística adaptada utilizando modais mais apropriados para cada contexto geográfico como uma maior utilização do modal fluvial na região Norte Pergunta 7 Será que existe relação entre a modalidade de transporte e a opinião do cliente sobre o serviço prestado Código para gerar a tabela de contingência e o teste QuiQuadrado tabelamodop tabledadosModalidade dadosOpinião testequimodop chisqtesttabelamodop printtestequimodop Novamente o Teste QuiQuadrado foi utilizado e o resultado foi altamente significativo χ²16 14531 p 0001 A conclusão é que a modalidade de transporte tem um impacto direto e profundo na satisfação do cliente A análise das frequências observadas demonstra que os modais Aéreo e Ferroviário estão associados a uma qualidade de serviço percebida muito superior enquanto as operações Marítimofluvial e Multimodal constituem as principais fontes de atrito e avaliações desfavoráveis Pergunta 8 Será que existe relação entre a região de destino e a opinião do cliente Código para gerar a tabela de contingência e o teste QuiQuadrado tabelaregop tabledadosRegião dadosOpinião testequiregop chisqtesttabelaregop printtestequiregop A aplicação do Teste QuiQuadrado nesta questão produziu um resultado extremamente significativo χ²16 18482 p 0001 comprovando que a experiência do cliente não é uniforme em todo o Brasil A disparidade regional é acentuada com as regiões Nordeste e Sul apresentando uma performance de satisfação muito superior em comparação com a experiência predominantemente negativa observada nas regiões Norte CentroOeste e Sudeste Pergunta 9 Será que existe relação entre a opinião do cliente sobre o serviço e o tempo para entregar a encomenda Código para realizar o teste ANOVA e gerar o boxplot testeanovatempoop aovTempo Opinião data dados summarytesteanovatempoop Gera o gráfico em uma nova janela windows print ggplotdados aesx Opinião y Tempo fill Opinião geomboxplot labstitle Distribuição do Tempo de Entrega por Opinião do Cliente y Tempo h thememinimal readlinepromptO gráfico foi gerado Pressione Enter no console para continuar Para comparar a média da variável contínua Tempo entre os diferentes grupos de Opinião foi utilizada a Análise de Variância ANOVA O resultado foi conclusivo e de altíssima significância F4 4995 3777 p 0001 Esta constatação representa um dos achados centrais do estudo o tempo de entrega constitui um dos principais vetores da satisfação do cliente Os tempos médios de entrega para avaliações Excelente e Bom são estatisticamente mais baixos do que para as avaliações Regular Ruim e Péssimo A visualização desta relação é crucial Fonte Próprio Autor 2025 Este gráfico gerado pelo código R correspondente é essencial pois deve mostrar cinco caixas uma para cada nível de opinião que ilustram um padrão claro as caixas se tornam progressivamente mais altas indicando tempos maiores à medida que a avaliação do cliente piora Pergunta 10 Será que existe relação entre a região de destino e o tempo para entregar a encomenda Código para realizar o teste ANOVA e gerar o boxplot testeanovatemporeg aovTempo Região data dados summarytesteanovatemporeg Gera o gráfico em uma nova janela windows print ggplotdados aesx Região y Tempo fill Região geomboxplot labstitle Distribuição do Tempo de Entrega por Região y Tempo h thememinimal readlinepromptO gráfico foi gerado Pressione Enter no console para continuar A mesma técnica de ANOVA foi aplicada para comparar o tempo médio de entrega entre as cinco regiões O teste confirmou com alta significância F4 4995 3514 p 0001 que a performance logística não é homogênea em todo o território Ao conectar este resultado com o da pergunta anterior o diagnóstico é corroborado as regiões com os piores índices de satisfação são de fato aquelas onde a empresa opera de forma mais lenta O gráfico de boxplot regional expõe essa diferença de performance de forma inequívoca Fonte Próprio Autor 2025 Este gráfico gerado pelo código R correspondente deve comparar visualmente os tempos de entrega nas cinco regiões mostrando distribuições visivelmente mais altas e dispersas para as regiões Norte e CentroOeste em comparação com as demais Pergunta 11 Será que existe relação entre o peso da encomenda e o tempo para entregar a encomenda Código para realizar o teste de correlação e gerar o gráfico de dispersão testecorrpesotempo cortestdadosPeso dadosTempo printtestecorrpesotempo Gera o gráfico em uma nova janela windows print ggplotdados aesx Peso y Tempo geompointalpha 04 geomsmoothmethod lm col red labstitle Relação entre Peso da Encomenda e Tempo de Entrega x Peso kg y Tempo h thememinimal readlinepromptO gráfico foi gerado Pressione Enter no console para continuar A relação entre estas duas variáveis contínuas foi investigada pelo Teste de Correlação de Pearson O resultado foi um coeficiente de correlação r de 070 com um pvalor virtualmente zero p 0001 indicando uma correlação positiva forte e estatisticamente significativa A interpretação dos resultados indica que encomendas mais pesadas sistematicamente levam mais tempo para serem entregues Esta regra operacional deve ser integrada ao planejamento logístico para evitar falhas em Acordos de Nível de Serviço SLAs A tendência linear é perfeitamente visível no gráfico de dispersão Fonte Próprio Autor 2025 Este gráfico gerado pelo código R correspondente é a prova visual desta relação mostrando uma nuvem de pontos que se inclina claramente para cima e para a direita com a linha de tendência confirmando o padrão positivo Pergunta 12 A empresa está atingindo o objetivo de não ter encomendas com menos de 800 kg Código para verificar a meta de peso mínimo encomendasleves dados filterPeso 800 numleves nrowencomendasleves percentualleves roundnumleves nrowdados 100 2 catNúmero de encomendas com menos de 800 kg numleves catPercentual do total percentualleves A metodologia consistiu em filtrar e contar o número de registros onde a variável Peso era inferior a 800 A análise identificou 97 operações ou 194 do total que violam esta diretriz Portanto a meta não está sendo atingida Embora o percentual seja baixo ele representa uma falha processual e uma perda de receita potencial pois essas cargas podem não compensar os custos fixos da operação Pergunta 13 A empresa está cumprindo a meta de entregar em no máximo 80 horas Código para verificar a meta de tempo máximo entregasatrasadas dados filterTempo 80 numatrasadas nrowentregasatrasadas percentualatrasadas roundnumatrasadas nrowdados 100 2 catNúmero de encomendas que excederam 80 horas numatrasadas catPercentual do total percentualatrasadas Através da filtragem e contagem dos registros onde o Tempo excedia 80 horas constatouse que a meta não está sendo cumprida de forma consistente Um total de 1027 entregas o que corresponde a 2054 da amostragem ultrapassou o prazo máximo definido Este volume expressivo de atrasos afetando um em cada cinco clientes constitui um fator crítico que impacta diretamente a satisfação Pergunta 14 A empresa está atingindo a meta de usar o transporte rodoviário em no máximo 40 das operações Código para verificar a meta de participação do modal rodoviário distmodal dados countModalidade mutatePercentual roundn sumn 100 2 percentualrodoviario distmodal filterModalidade Rodoviário pullPercentual printkabledistmodal caption Distribuição de Operações por Modalidade Uma análise de frequência da variável Modalidade foi realizada para verificar este KPI O resultado demonstrou que o modal Rodoviário representa 511 do total das operações Portanto a meta estratégica de diversificação da matriz logística que visava limitar essa dependência a 40 não está sendo atingida com um excedente de 111 pontos percentuais Pergunta 15 A empresa está conseguindo 50 de opiniões Excelente ou Bom em todas as regiões Código para verificar a meta de satisfação por região satisfacaoporregiao dados groupbyRegião summarise TotalAvaliacoes n AvaliacoesPositivas sumOpinião in cExcelente Bom PercentualPositivo roundAvaliacoesPositivas TotalAvaliacoes 100 2 arrangedescPercentualPositivo printkablesatisfacaoporregiao caption Percentual de Satisfação por Região Para avaliar esta meta complexa os dados foram agrupados por Região e foi calculado o percentual de avaliações positivas Excelente Bom para cada uma A análise revelou que a meta não está sendo atingida na maioria dos mercados Apenas as regiões Nordeste 838 e Sul 617 cumprem o objetivo As regiões Sudeste 390 CentroOeste 213 e de forma mais alarmante a região Norte apenas 84 estão significativamente abaixo do mínimo de 50 de satisfação 4 Conclusão e Recomendações Estratégicas A análise integrada e aprofundada dos dados posiciona a empresa em uma encruzilhada estratégica Por um lado possui operações de grande escala e previsíveis em cenários ideais Por outro sofre de ineficiências operacionais localizadas que causam um impacto devastador e em cascata sobre o cumprimento de metas e mais importante sobre a percepção de valor pelo cliente A estratégia definida pela administração não está sendo refletida na execução do dia a dia Para reverter este quadro e realinhar a operação aos seus objetivos recomendase um plano de ação focado e sequencial A prioridade absoluta e imediata deve ser a criação de uma forçatarefa de Recuperação Regional com autonomia e recursos para intervir nas operações das regiões Norte CentroOeste e Sudeste O mandato exclusivo desta equipe deve ser o diagnóstico em campo e a execução de um plano de ação de 90 dias focado obsessivamente na redução do tempo de ciclo das entregas Esta é a ação de maior alavancagem pois incide diretamente sobre a causaraiz da insatisfação do cliente e por consequência endereça o cumprimento de múltiplas metas simultaneamente A médio prazo a empresa deve empreender um redesenho estratégico de sua oferta de serviço e de sua matriz logística Isso envolve abandonar o modelo de prazo único e implementar SLAs inteligentes que considerem as variáveis de região e peso para fornecer estimativas realistas aos clientes Em paralelo uma nova política comercial deve ser criada para ativamente incentivar o uso de modais de melhor performance como o Aéreo e o Ferroviário transformandoos em produtos premium e alinhando os interesses comerciais com a busca por maior qualidade e o cumprimento da meta de diversificação Finalmente como ação fundamental e contínua a cultura da empresa deve evoluir para uma gestão orientada por dados Este relatório não deve ser um evento isolado mas o protótipo de uma ferramenta de gestão contínua A implementação de dashboards acessíveis aos gestores monitorando em tempo real os KPIs aqui discutidos permitirá a identificação de desvios no momento em que ocorrem habilitando uma gestão proativa e prevenindo que desafios operacionais se transformem em crises estratégicas como a que foi identificada neste estudo Referências Bibliográficas A metodologia estatística e as ferramentas computacionais empregadas neste trabalho são fundamentadas em literatura e documentação consolidadas na área As principais fontes que serviram de base para a condução da análise bem como as citações formais para o software utilizado incluem publicações de referência em estatística e ciência de dados A seguir são listadas as principais referências consultadas e pertinentes a este estudo Morettin P A Bussab W O 2017 Estatística Básica 10ª ed São Paulo Saraiva Educação Wickham H 2016 ggplot2 Elegant Graphics for Data Analysis SpringerVerlag New York Wickham H François R Henry L Müller K 2023 dplyr A Grammar of Data Manipulation R package version 112 R Core Team 2023 R A Language and Environment for Statistical Computing R Foundation for Statistical Computing Vienna Austria 6 Apêndice Com o intuito de garantir a total transparência reprodutibilidade e possibilidade de auditoria dos resultados apresentados neste relatório os materiais suplementares relevantes são fornecidos a seguir Esta seção contém os recursos computacionais completos que foram desenvolvidos e utilizados para realizar todas as análises descritas no capítulo de Materiais e Métodos e cujos resultados foram discutidos ao longo do trabalho Apêndice A Script R Completo para Análise Neste apêndice é apresentado na íntegra o códigofonte escrito na linguagem R O script está consolidado e estruturado para realizar todas as análises em uma única execução desde o carregamento das bibliotecas e importação dos dados até a execução de cada um dos testes estatísticos e a geração de todas as figuras e tabelas contidas neste documento ANÁLISE COMPLETA DE DADOS E METAS DA TRANSPORTADORA VERSÃO FINAL E INTEGRADA ETAPA 1 CONFIGURAÇÃO DO AMBIENTE catIniciando o script de análise completa catVerificando e carregando bibliotecas necessárias Lista de pacotes necessários para a análise pacotes creadxl dplyr ggplot2 knitr Verifica quais pacotes não estão instalados instalar pacotespacotes in installedpackages Package Instala os pacotes que estiverem faltando iflengthinstalar catInstalando os seguintes pacotes necessários instalar installpackagesinstalar Carrega todos os pacotes necessários libraryreadxl librarydplyr libraryggplot2 libraryknitr catBibliotecas carregadas com sucesso cat ETAPA 2 LEITURA E CARREGAMENTO DOS DADOS catLendo o arquivo de dados da transportadora caminho DadosTransportadora3a34b0578a6e182134509c49a5d659adxlsx if fileexistscaminho stopERRO O arquivo caminho não foi encontrado Verifique o caminho e o nome do arquivo dados readexcelcaminho sheet Plan1 catArquivo lido com sucesso Total de registros nrowdados cat ETAPA 3 EXECUÇÃO DAS ANÁLISES PERGUNTA A PERGUNTA catIniciando a análise detalhada dos dados Pergunta 1 Satisfação dos clientes cat Análise da Pergunta 1 Satisfação dos Clientes tabelaopiniao dados countOpinião sort TRUE mutatePercentual roundn sumn 100 2 printkabletabelaopiniao caption Frequência de Opinião dos Clientes windows printggplottabelaopiniao aesx reorderOpinião n y n fill Opinião geombarstat identity geomtextaeslabel paste0n Percentual vjust 05 labstitle Distribuição da Opinião dos Clientes x Opinião y Quantidade readlinepromptPressione Enter para continuar cat Pergunta 2 Principal região de destino cat Análise da Pergunta 2 Principal Região de Destino tabelaregiao dados countRegião sort TRUE mutatePercentual roundn sumn 100 2 printkabletabelaregiao caption Frequência de Entregas por Região cat Pergunta 3 Distribuição por modalidade cat Análise da Pergunta 3 Distribuição por Modalidade tabelamodalidade dados countModalidade sort TRUE mutatePercentual roundn sumn 100 2 printkabletabelamodalidade caption Frequência de Entregas por Modalidade cat Pergunta 4 Perfil do peso cat Análise da Pergunta 4 Perfil do Peso das Encomendas printkableasdataframetsummarydadosPeso caption Estatísticas Descritivas Peso kg catDesvio Padrão do Peso sddadosPeso windows histdadosPeso main Histograma de Distribuição do Peso xlab Peso kg ylab Frequência col lightblue border white readlinepromptPressione Enter para continuar cat Pergunta 5 Perfil do tempo cat Análise da Pergunta 5 Perfil do Tempo de Entrega printkableasdataframetsummarydadosTempo caption Estatísticas Descritivas Tempo h catDesvio Padrão do Tempo sddadosTempo windows histdadosTempo main Histograma de Distribuição do Tempo xlab Tempo h ylab Frequência col lightgreen border white readlinepromptPressione Enter para continuar cat Pergunta 6 Relação Modalidade x Região cat Análise da Pergunta 6 Relação Modalidade vs Região tabelamodreg tabledadosModalidade dadosRegião printchisqtesttabelamodreg cat Pergunta 7 Relação Modalidade x Opinião cat Análise da Pergunta 7 Relação Modalidade vs Opinião tabelamodop tabledadosModalidade dadosOpinião printchisqtesttabelamodop cat Pergunta 8 Relação Região x Opinião cat Análise da Pergunta 8 Relação Região vs Opinião tabelaregop tabledadosRegião dadosOpinião printchisqtesttabelaregop cat Pergunta 9 Relação Opinião x Tempo cat Análise da Pergunta 9 Relação Opinião vs Tempo testeanovatempoop aovTempo Opinião data dados printsummarytesteanovatempoop windows printggplotdados aesx Opinião y Tempo fill Opinião geomboxplot labstitle Distribuição do Tempo por Opinião readlinepromptPressione Enter para continuar cat Pergunta 10 Relação Região x Tempo cat Análise da Pergunta 10 Relação Região vs Tempo testeanovatemporeg aovTempo Região data dados printsummarytesteanovatemporeg windows printggplotdados aesx Região y Tempo fill Região geomboxplot labstitle Distribuição do Tempo por Região readlinepromptPressione Enter para continuar cat Pergunta 11 Relação Peso x Tempo cat Análise da Pergunta 11 Relação Peso vs Tempo testecorrpesotempo cortestdadosPeso dadosTempo printtestecorrpesotempo windows printggplotdados aesx Peso y Tempo geompointalpha 04 geomsmoothmethod lm col red labstitle Relação entre Peso e Tempo readlinepromptPressione Enter para continuar cat Pergunta 12 Meta de peso mínimo cat Análise da Pergunta 12 Meta de Peso Mínimo 800kg encomendasleves dados filterPeso 800 catNúmero de encomendas com menos de 800 kg nrowencomendasleves catPercentual do total roundnrowencomendasleves nrowdados 100 2 n Pergunta 13 Meta de tempo máximo cat Análise da Pergunta 13 Meta de Tempo Máximo 80h entregasatrasadas dados filterTempo 80 catNúmero de encomendas que excederam 80 horas nrowentregasatrasadas n catPercentual do total roundnrowentregasatrasadas nrowdados 100 2 n Pergunta 14 Meta de participação do modal rodoviário cat Análise da Pergunta 14 Meta de Participação do Rodoviário 40 distmodal dados countModalidade mutatePercentual roundn sumn 100 2 printkabledistmodal caption Distribuição de Operações por Modalidade cat Pergunta 15 Meta de satisfação por região cat Análise da Pergunta 15 Meta de Satisfação por Região 50 Positiva satisfacaoporregiao dados groupbyRegião summarise TotalAvaliacoes n AvaliacoesPositivas sumOpinião in cExcelente Bom PercentualPositivo roundAvaliacoesPositivas TotalAvaliacoes 100 2 arrangedescPercentualPositivo printkablesatisfacaoporregiao caption Percentual de Satisfação por Região cat cat cat Análise completa concluída com sucesso cat
33
Engenharia de Software
UNICSUL
41
Engenharia de Software
UNICSUL
10
Engenharia de Software
UNICSUL
32
Engenharia de Software
UNICSUL
55
Engenharia de Software
UNICSUL
17
Engenharia de Software
ESTACIO
2
Engenharia de Software
UMG
2
Engenharia de Software
UMG
11
Engenharia de Software
UMG
11
Engenharia de Software
UMG
Texto de pré-visualização
Olá estudante A seguir você dará continuidade ao desenvolvimento da sua solução através dos campos específicos para a resolução dos 3 desafios propostos lembrando que eles se complementam Nome Digite aqui RGM Digite aqui Documentação Revisite a documentação do projeto desenvolvido na PIT I faça as atualizações e melhorias necessárias de acordo com os pontos explicitados no material teórico Ao terminar os ajustes suba a documentação em um repositório GIT Link do repositório Codificação Na Tabela a seguir insira as informações referentes ao desenvolvimento do código do frontend e backend Linguagem do Backend Banco de Dados Hospedagem Plataforma Modo de Codificação Tradicional Lowcode Nocode Link do repositório no GitHub com os códigos abertos Link da solução em funcionamento Link do vídeo narrado no mínimo 5 min Testes da Solução Escolha 5 colegas para testar sua aplicação e preencha a tabela a seguir com as informações obtidas Nome Data do teste O que testou e funcionou O que testou e não funcionou O que deve ser corrigido Funcionalidade não testada faltou ou não foi implementada Nome Data do teste O que testou e funcionou O que testou e não funcionou O que deve ser corrigido Funcionalidade não testada faltou ou não foi implementada Nome Data do teste O que testou e funcionou O que testou e não funcionou O que deve ser corrigido Funcionalidade não testada faltou ou não foi implementada Nome Data do teste O que testou e funcionou O que testou e não funcionou O que deve ser corrigido Funcionalidade não testada faltou ou não foi implementada Nome Data do teste O que testou e funcionou O que testou e não funcionou O que deve ser corrigido Funcionalidade não testada faltou ou não foi implementada Laudo de Qualidade Insira a seguir o laudo de qualidade do sistema apontando os erros e as correções Não esqueça de coletar as evidências para inserilas no laudo Vídeo da Solução atualizada Após levantar os feedbacks e executar as correções necessárias e pertinentes grave um vídeo de até 5 minutos apresentando as modificações realizadas no sistema Link para o vídeo Conteudista Prof Me Artur Marques Revisão Textual Profª Mª Thassiana Reis Félix DESAFIO ATIVIDADE Material Teórico Material Complementar SituaçãoProblema 1 SituaçãoProblema 2 SituaçãoProblema 3 Problema em Foco Atividade de Entrega Projeto Integrador Transdisciplinar em Engenharia de Software II REFERÊNCIAS Referências Olá estudante Vamos iniciar a disciplina abordando os conceitos necessários para que você possa realizar a atividade através das situaçõesproblema mais à frente Introdução Apesar de a área de programação ser considerada fundamental para o desenvolvimento profissional na Engenharia de Software há quem ainda possui pouca experiência no assunto Assim por acreditarmos que o contato com este Projeto Integrador gere valor para tanto para a vida pessoal quanto profissional de seus usuários neste material você encontrará tanto uma retomada de conteúdo focado em certos princípios utilizados na Engenharia da Computação quanto a apresentação de novos capazes de auxiliar até mesmo aqueles com pouca experiência na 1 8 Material Teórico Atenção estudante Aqui reforçamos o acesso ao conteúdo online para que você assista à videoaula Será muito importante para o entendimento do conteúdo manipulação e consecução de artefatos de software Para isso daremos foco em itens importantes na produção de uma solução como por exemplo UX experiência do usuário projeto físico do banco de dados codificação de frontend e padrões de design para o backend e claro teste de software além de outras coisas O desenvolvimento de networking durante o curso e claro durante toda sua jornada profissional é fundamental para um projeto de vida bemsucedido Desse modo é importante que você estudante desenvolvao durante a execução do projeto Para que isso aconteça você deve conversar com seus colegas fazer novas amizades trocar experiências fazer e permitir receber sugestões Lembre se as coisas ficam melhores quando há empatia e colaboração Para este primeiro momento que compreende a retomada de conteúdo uma atividade fundamental é revisar o projeto proposto na fase de planejamento realizado no Projeto Integrador Transdisciplinar em Engenharia de Software I pois tratase de uma oportunidade para recordar o que foi planejado revalidar a ideia entender ou aprofundar os estudos Afinal estudante de lá para cá muita coisa em sua cabeça deve ter mudado incluindo a aprendizagem de disciplinas novas e técnicas que podem ter acrescentado valor a este seu trabalho Também é possível que a partir de reflexões você tenha mudado de ideia porque agora vê de forma mais clara os desafios que se apresentam e por isso quer revisálos Aproveite para fazer isso o mais cedo possível Aliás o momento é agora Vamos começar a retomada de conteúdos com o banco de dados Um banco de dados tem informações que são representativas do mundo real Quando modelamos aspectos desse mundo descobrimos que precisamos representar algo seja ele físico um fato ou um evento que acontece Dentro desse banco acontece a modelagem de dados de um software ou seja o processo de criar uma visão conceitual das informações que o banco contém ou deveria conter garantindo assim a integridade dos dados Como resultado desse processo os objetos de dados as entidades para as quais as informações devem ser armazenadas e as associações regras ou restrições que regem as informações criam formas e entram no banco de dados Assim um modelo de dados é essencial para fornecer clareza e consistência nos metadados ou seja aos dados sobre outros dados e nas definições que compõem um banco de dados o que contribui para aumentar a qualidade da informação Também podemos garantir a qualidade das informações armazenadas em um banco de dados impondo regras para que apenas dados válidos entrem nas tabelas Para fazer isso ao projetar o modelo de dados é necessário definir o domínio de valor para cada campo diferenciando os que devem ter valores daqueles que podem ser deixados em branco A qualidade de informação pode ainda ser aprimorada pela imposição de restrições que garantem a integridade referencial e mantêm a cardinalidade pretendida nas relações entre as entidades Essas restrições podem ser derivadas apenas de um modelo de dados adequado Assim o desenvolvimento de software pode garantir um maior entendimento do sistema a ser desenvolvido se as atividades de modelagem de dados forem realizadas paralelamente ao levantamento de requisitos mais completos e mais corretos Como etapa posterior a modelagem de requisitos iniciamos a construção dos artefatos de estruturais e comportamentais da Unified Modeling Language UML Linguagem de Modelagem Universal Apesar dela possuir vários diagramas usaremos o Diagrama de para criarmos as entidades que serão usadas para modelar qualquer coisa coleções de objetos com as mesmas características intrínsecas como funcionários produtos pedidos na empresa que devem ser representadas em um banco de dados Mas quais aspectos são relevantes em uma classe UML Um objeto é a instância de uma classe Os métodos podem ser invocados em um objeto para inspecionar e manipular suas propriedades Ao contrário dos sistemas orientados a objetos os Nome o nome da classe é quase sempre um substantivo pois representa uma coisa ou fato alunos carros livros cursos etc Descrição o primeiro passo na modelagem de uma classe é descrevêla em linguagem natural Isso nos ajuda a saber exatamente o que essa classe significa no negócio Atributos cada classe é definida exclusivamente por seu conjunto de atributos também chamados de propriedades Cada atributo é uma informação que caracteriza cada membro dessa classe no banco de dados Juntos eles fornecem a estrutura para nossos objetos ou tabelas de banco de dados Na UML identificamos apenas atributos descritivos ou seja aqueles que realmente fornecem informações do mundo real relevantes para o negócio sobre os objetos que estão sendo modelados bancos de dados relacionais tradicionais armazenam informações como registros de dados não como objetos Na construção de um banco de dados relacional cada classe é primeiro traduzida ou se preferir mapeada em um esquema de modelo relacional Esse esquema é identificado pelo nome da classe e lista todos os atributos no diagrama de classes No modelo relacional um esquema de relação é definido como um conjunto de atributos juntamente com uma regra de atribuição que associa cada atributo a um conjunto de valores válidos que podem ser atribuídos a ele Esses valores são chamados de domínio do atributo Lembrese que um domínio é muito mais do que um tipo de dados Tudo que escrevemos está atrelado à teoria dos conjuntos Assim é importante reconhecer que definir esquemas ou domínios como conjuntos de elementos nos diz muito mais sobre eles a partir das propriedades matemáticas dos conjuntos Portanto Um conjunto não pode conter elementos duplicados Os elementos de um conjunto não são ordenados Dado um conjunto regras podem ser desenvolvidas para determinar quando um elemento pode ser incluído ou excluído dele Podemos definir subconjuntos por exemplo podemos exibir apenas um conjunto selecionado de atributos de um esquema ou podemos limitar o domínio de um atributo a um intervalo específico de valores Os subconjuntos podem ser manipulados com os operadores usuais de conjunto união interseção entre outros Por exemplo temos dois conjuntos de clientes um pertencente a uma empresa outro a uma segunda empresa Se resolvermos realizar a interseção de ambos teremos provavelmente uma região comum ou seja há clientes da empresa 1 que também são clientes da empresa 2 Quando construímos o banco de dados projeto físico cada esquema de relação se torna a estrutura de uma tabela A sintaxe para criar a tabela inclui um tipo de dado para cada atributo que é necessário para o banco de dados porém um tipo de dado não é o mesmo que o domínio do atributo A seguir apresento um quadro comparativo sobre Entidades de relacionamento versus Diagramas de classes assim você consegue em caso de necessidade consultar algo rápido e direto Quadro 1 Comparação entre DER e Diagrama de Classes semelhanças e diferenças Diagramas de Entidade de Relacionamento Diagramas de Classe em UML Entidades que representam objetos ou tabelas em banco de dados relacional Classes são equivalentes a uma entidade no mundo relacional Atributos de entidades incluindo tipo de dados Atributos de uma classe têm o mesmo significado em um DER incluindo o tipo de dados Métodos associados a uma classe específica representando seu comportamento ou seja no mundo relacional seriam procedimentos procedures armazenados Diagramas de Entidade de Relacionamento Diagramas de Classe em UML Relacionamentos entre entidadesobjetos ou chaves estrangeiras em um banco de dados Relacionamentos são aqui agrupados em duas categorias Relacionamentos entre objetos nesse caso instâncias de Classes diferenciados em Dependência Associação Agregação e Composição são equivalentes a tipos de relacionamentos em um DER Relações entre classes de dois tipos GeneralizaçãoHerança e RealizaçãoImplementação Este último não tem equivalente no mundo relacional Vídeo Designing Databases from UML Class Models Vale o investimento e tempo para assistir a este vídeo muito interessante sobre como transformar diagramas de classe em banco de dados Como o vídeo está em inglês apesar de ser a língua de tecnologia de informação no mundo você poderá por conveniência ativar as legendas Clique no botão para conferir o vídeo indicado ASSISTA Mas se desconsiderarmos a modelagem de dados que riscos incorremos Outro aspecto relevante que temos que recordar diz respeito à camada de apresentação do sistema ou IHC Interface Humano Computador Uma boa interface torna mais fácil para os usuários dizer ao computador o que eles querem fazer Assim o computador pode solicitar informações dos usuários do Youtube e depois mudar o idioma para Português do Brasil Isso dará mais conforto para você acompanhar o vídeo Redundância desnecessária como não há um modelo para ver claramente os objetos de dados diferentes versões dos mesmos objetos aparecerão com informações diferentes Aplicativos lentos a ausência de um modelo de dados dificulta as tarefas de otimização o que reduz a capacidade de resposta dos aplicativos Incapacidade de atender aos padrões de qualidade se não houver modelo de dados seu banco de dados não será documentado o que é obrigatório em cenários como migrações de banco de dados Qualidade de software ruim os requisitos de desenvolvimento de software serão ruins e os usuários não terão os aplicativos de que precisam ou desejam Custos de desenvolvimento mais altos teremos que decidir quem pagará pelos custos extras de desenvolvimento e manutenção além de quem vai explicar quando os prazos não forem cumpridos e apresentar informações compreensíveis Nesse sentido a comunicação clara entre o usuário e o computador é a premissa de trabalho de um bom design de interface do usuário A seguir trago alguns itens importantes para você estudante levar em consideração quando for fazer a IHC de sua aplicação de software A sua interface Deve ser clara a clareza ajuda a evitar erros do usuário torna as informações importantes óbvias e contribui para facilitar o aprendizado e o uso Deve ser consistente uma interface consistente permite que os usuários apliquem o conhecimento já aprendido a novas tarefas Deve ser simples designs simples são fáceis de aprender e usar e dão à interface uma aparência consistente Um bom design requer equilíbrio entre maximizar a funcionalidade e manter a simplicidade por meio da divulgação progressiva de informações Deve ser controlada pelo usuário o usuário não o computador inicia e controla todas as ações Deve ser direta os usuários devem ver a relação visível de causa e efeito entre as ações que realizam e os objetos na tela Isso os permite sentir que estão no comando das atividades do computador Deve ser empática e recuperávelreversível os usuários cometem erros Portanto é importante que as ações realizadas sejam reversíveis Uma boa interface facilita a exploração e o aprendizado por tentativa e erro Deve dar uma resposta é importante manter o usuário informado e fornecer feedback imediato Além disso certifiquese de que o feedback seja apropriado para a tarefa Lembrese boa mensagem bom tratamento Deve ser esteticamente agradável cada elemento visual que aparece na tela potencialmente compete pela atenção do usuário Assim proporcionar um ambiente agradável para trabalhar e que contribua para a compreensão do usuário sobre as informações apresentadas é fundamental Há um excerto importante e pertinente às atividades que serão realizadas por você O exponho a seguir O design da interface do usuário UI concentrase em antecipar o que os usuários podem precisar fazer e garantir que a interface tenha elementos fáceis de acessar entender e usar para facilitar essas ações A interface do usuário reúne conceitos de design de interação design visual e arquitetura da informação Escolhendo elementos de interface Os usuários se familiarizaram com os elementos da interface que atuam de uma determinada maneira portanto tente ser consistente e previsível em suas escolhas e no layout Isso ajudará na conclusão da tarefa eficiência e satisfação Os elementos de interface incluem mas não estão limitados a Controles de entrada botões campos de texto caixas de seleção botões de opção listas suspensas caixas de listagem alternâncias campo de data Componentes de navegação trilha de navegação controle deslizante campo de pesquisa paginação controle deslizante tags ícones Componentes informativos dicas de ferramentas ícones barra de progresso notificações caixas de mensagens janelas modais Recipientes Há momentos em que vários elementos podem ser apropriados para exibir conteúdo Quando isso acontece é importante considerar os tradeoffs Por exemplo às vezes os elementos que podem ajudar a economizar espaço sobrecarregam mais o usuário mentalmente forçandoo a adivinhar o que está dentro do menu suspenso ou qual pode ser o elemento Práticas recomendadas para projetar uma interface Tudo decorre de conhecer seus usuários incluindo a compreensão de seus objetivos habilidades preferências e tendências Depois de conhecer seu usuário certifiquese de considerar o seguinte ao projetar sua interface Mantenha a interface simples As melhores interfaces são quase invisíveis para o usuário Eles evitam elementos desnecessários e são claros na linguagem que usam nos rótulos e nas mensagens Crie consistência e use elementos de interface do usuário comuns Ao usar elementos comuns em sua interface do usuário os usuários se sentem mais à vontade e podem fazer as coisas mais rapidamente Também é importante criar padrões de linguagem layout e design em todo o site para ajudar a facilitar a eficiência Uma vez que um usuário aprende como fazer algo ele deve ser capaz de transferir essa habilidade para outras partes do site Seja objetivo no layout da página Considere as relações espaciais entre os itens na página e estruture a página com base na importância A colocação cuidadosa de itens pode ajudar a chamar a atenção para as informações mais importantes e pode ajudar na digitalização e legibilidade Use cor e textura estrategicamente Você pode direcionar a atenção ou redirecionar a atenção para os itens usando cor luz contraste e textura a seu favor Use a tipografia para criar hierarquia e clareza Considere cuidadosamente como você usa o tipo de letra Diferentes tamanhos fontes e disposição do texto para ajudar a aumentar a legibilidade a legibilidade e a legibilidade Certifiquese de que o sistema comunique o que está acontecendo Sempre informe seus usuários sobre localização ações mudanças de estado ou erros O uso de vários elementos de interface do usuário para comunicar o status e se necessário as próximas etapas podem reduzir a frustração do usuário Pense nos padrões Ao pensar cuidadosamente e antecipar os objetivos que as pessoas trazem para o seu site você pode criar padrões que reduzem a carga do usuário Isso se torna particularmente importante quando se trata de design de formulários onde você pode ter a oportunidade de ter alguns campos pré escolhidos ou preenchidos Princípios de Norman o Criador do Termo User Experience Clique no botão para conferir o vídeo indicado ASSISTA O que é Arquitetura de Informação Clique no botão para conferir o vídeo indicado ASSISTA USABILITY 2022 p 1 2 Vídeos Para conhecer melhor os aspectos ideais numa IHC selecionei dois vídeos muito interessantes para que você possa incrementar a UX de seus clientes deixando a experiência mais atraente e dentro de boas práticas Vejaos a seguir Outro aspecto importante que você deve ter em mente é que precisará programar e muitas vezes o tempo é curto Portanto quero aqui claro permitir que você programe de forma clássica tanto as IHCs de sua aplicação utilizando HTML CSS e JavaScript por exemplo mas também o backend usando Java PHP ou Python se for o caso Apesar disso não há como deixar de indicar aceleradores de produtividade num novo e emergente grupo de ferramentas chamadas de lowcode e nocode Codificar gera estresse na maioria das pessoas com pouca prática ou que não se dão muito bem quando precisam codificar algo Mas não é o fim da linha Lembrese que você está nessa jornada para enfrentar desafios e somente dessa forma ela poderá ser gratificante Saímos desses processos sempre maiores do que quando entramos com mais conhecimento e experiência principalmente Portanto precisamos mudar a nossa perspectiva nosso mindset Por isso vamos quebrar esse paradigma iniciando com possibilidades de realização de aplicativos por meio do emprego do no code e do lowcode Esse grupo de ferramentas tratase de um movimento importante pois mais do que permitir que usuários tenham empoderamento para aplicações baseadas em web ao pensar em soluções simples e elegantes o nocode pode ser a solução O nocode para web trata de JavaScript HTML5 e CSS mas não exige em um primeiro momento um conhecimento profundo inicial o que o faz tornálo a solução ideal para você que está desenvolvendo um projeto Veja alguns conceitos O desenvolvimento sem código é um tipo de desenvolvimento para a Web que permite que não programadores e programadores criem software usando uma interface gráfica com o usuário em vez de escrever código O movimento sem código repousa sobre a crença fundamental de que a tecnologia deve permitir e facilitar a criação não ser uma barreira à entrada Muito do que fazemos em nosso dia a dia é alimentado por código Estejamos verificando nossas contas bancárias curtindo fotos de amigos nas redes sociais ou procurando novas roupas em nossos sites de comércio eletrônico favoritos a programação é o que torna todas essas ações possíveis WEBFLOW 2021 p12 O que antes era um espaço que apenas desenvolvedores e especialistas em programação podiam navegar agora está aberto a todos O movimento sem código removeu o obstáculo de ter que conhecer linguagens de programação permitindo que qualquer pessoa traga suas ideias à luz Quando dizemos nocode é simplesmente uma camada de abstração sobre o código Ou seja ele pega os fundamentos do código e os traduz em soluções simples de arrastar e soltar permitindo que os criadores criem aplicativos e sites modernos visualmente Há dezenas de ferramentas ou IDEs que oferecem plataformas de desenvolvimento sem código disponibilizando todas as funcionalidades do HTML5 CSS e Javascript mas você não precisa conhecer nenhuma dessas linguagens de programação para começar a construir As plataformas de desenvolvimento web sem código percorreram um longo caminho desde os editores WYSIWYG What you see is what you get o que você vê é o que você pega do passado Onde esses designs geravam transitáveis para a época esses sites eram simples oferecendo uma experiência unilateral para o usuário Em seguida surgiram os construtores de sites mais dinâmicos que as plataformas originais sem código não podiam fazer ou seja construir sites cheios de interações animações dinâmicas e outros elementos visuais sofisticados Existem muitos casos de uso para o nãocódigo Não se limita apenas a construir sites Ele pode ser usado para construir aplicativos móveis aplicativos da web aplicativos de voz ferramentas internas integrações e para automação de tarefas Sem conhecer uma única linha de código é possível construir chatbots com Voiceflow conectar vários aplicativos e construir fluxos de trabalho automatizados com Zapier e utilizar Shopify para executar lojas de comércio eletrônico Assim o nocode não se trata de um atalho mas de apresentar uma maneira moderna e atual de trabalhar com desenvolvimento Sim trabalhamos dessa forma nas empresas modernas e atualizadas tecnologicamente que devem enfrentar uma concorrência feroz e que o fator tempo representa mais do que dinheiro representa sobrevivência Com a digitalização das empresas e do poder computacional existente atualmente um simples programador em algum canto obscuro do planeta pode estar fazendo a diferença ou na cura de doenças ou criando acessibilidade e inclusão por meio de seus aplicativos e serviços ou criando empresas cujo valor de mercado ultrapassa o PIB Produto Interno Bruto de muitas nações Como exemplo podemos citar a Apple a Tesla o Facebook o Google a Microsoft a Amazon a Alibaba entre outras Assim quanto mais tecnologia você tiver ao seu alcance e mais souber sobre ela mais ajuda terá para fazer a diferença As plataformas sem código oferecem uma camada de abstração sobre o código Ou seja elas pegam os fundamentos do código e os traduzem em uma solução simples de arrastar e soltar o que permite que os criadores construam aplicativos e sites modernos visualmente Os protótipos iniciais de um produto digital geralmente não precisam de nada perto do investimento em Engenharia como no estágio de lançamento Portanto você já pensou em rever seus protótipos do Projeto Integrador Transdisciplinar I usando nocode É claro que optar pelo nocode não fará com que você não programe Na verdade você programará o que é a parte importante a inteligência de processamento de seu projeto o que o diferenciará dos demais Assim as plataformas sem código exigem programadores ou seja pessoas que podem pensar em abstrações e acima de tudo que sabem como unir as ferramentas certas de maneira correta para produzir valor Appy Pie App Builder Clique no botão para conferir o conteúdo ACESSE Appy Pie Website Builder Clique no botão para conferir o conteúdo ACESSE Appy Pie Chatbot Builder Clique no botão para conferir o conteúdo ACESSE Appy Pie Connect Clique no botão para conferir o conteúdo ACESSE Voiceflow Clique no botão para conferir o conteúdo Sites A seguir deixo algumas plataformas para você acessar e pesquisar para construir a sua ACESSE Airtable Clique no botão para conferir o conteúdo ACESSE Ninox Clique no botão para conferir o conteúdo ACESSE VINYL Clique no botão para conferir o conteúdo ACESSE Quando estamos desenvolvendo uma aplicação é importante que ela seja testada afinal o teste poderá determinar e garantir a qualidade do produto O sucesso desse teste depende de aspectos como a definição do que constitui um produto de qualidade a determinação de propriedades mensuráveis que refletem a qualidade a derivação de critérios significativos de teste baseados nas quantidades mensuráveis e a formulação de testes adequados para garantir essa qualidade Todavia isso não é necessariamente aplicado ao software ou a certas soluções que utilizam abstrações matemáticas e algoritmos para sua construção As características de alto nível do software de qualidade são confiabilidade testabilidade usabilidade eficiência capacidade de carga e manutenção Na prática a eficiência muitas vezes acaba por estar em conflito Clique no botão para conferir o vídeo indicado ASSISTA Outros termos que causam confusão entre os desenvolvedores são as diferenças entre Verificação e Validação Embora a distinção possa parecer trivial os dois cumprem objetivos muito distintos A verificação do desenvolvimento como o próprio nome sugere referese à verificação do aplicativo que ainda está em desenvolvimento e acontece para garantir que o software se encontra de acordo com as especificações Essas verificações podem ser algo tão simples quanto ler as especificações e comparálas com a lógica do código para garantir que estejam alinhadas O processo de verificação incluirá atividades como revisões de código orientações inspeções mas poucos se houver testes reais Enquanto a verificação ocorre com o produto ainda em desenvolvimento a validação é realizada após a conclusão de um determinado módulo ou mesmo a conclusão de toda a aplicação A validação se concentra em garantir que as partes interessadas obtenham o produto que desejam Vídeo Webinar Requisitos não Funcionais Vamos revisar os requisitos de qualidade não funcionais Aqui você encontrará um conteúdo muito bom Assim o esforço de validação não importa com o como você chegou lá apenas que você chegou e que tudo está conforme o esperado Isso infelizmente não aflige com dúvidas apenas os testes Há dúvidas também em outra fase importante a da validação dos requisitos Muitos estudantes perguntam como validar os requisitos quando utilizamos metodologia ágil e se é a mesma coisa com metodologias sequenciais ou tradicionais De forma simples descrevo aqui que a validação de requisitos independente da metodologia utilizada trata de garantir que os requisitos tenham alcançado os objetivos do negócio atendam às necessidades de quaisquer partes interessadas relevantes e sejam claramente compreendidos pelos desenvolvedores Logo a validação é uma etapa crítica para encontrar requisitos ausentes e garantir que eles tenham uma variedade de características importantes como Por fim entenda estudante que qualquer forma de validação em software de requisitos ou de código não está focada no caminho percorrido para chegar ao destino mas sim se o alvo foi atingido Descrever corretamente a necessidade do usuário final Ter apenas um significado exato Poder ser modificada conforme necessário Documentar seus atributos e garantir que eles são realmente o que os clientes precisam Vincular facilmente a esses requisitos os códigos e testes Figura 1 Exemplo de relação entre o desenvolvimento e os testes com o Modelo V JUnity Clique no botão para conferir o conteúdo ACESSE PhpUnity Clique no botão para conferir o conteúdo ACESSE Sites Para te ajudar nos testes unitários temos o seguinte Pytest Clique no botão para conferir o conteúdo ACESSE Pytest Documentation Clique no botão para conferir o conteúdo ACESSE Tutorial de pytest para iniciantes Clique no botão para conferir o conteúdo ACESSE Por fim recomendo que você estudante utilize uma construção em camadas com um padrão MVC Model View Controller Apesar de ser atualmente primitivo em certos aspectos com esse padrão você poderá aprender de forma clara a importância de adoção Afinal o padrão por trás de cada tela que usamos é o MVC inventado quando não havia Web e as arquiteturas de softwares eram na melhor das hipóteses clientes conversando diretamente com um único banco de dados em redes primitivas Pois é a situação mudou muito de lá para cá não é mesmo Porém não custa lembrar que hoje o MVC é para todos os efeitos a pedra angular de qualquer arquitetura de aplicativo pois em sua abordagem separa as principais preocupações comuns para o código de aplicativo organizado e gerenciável A base de um aplicativo MVC bem projetado é um modelo de dados sólido Figura 2 Exemplo de MVC em aplicação web Há inclusive estudante um repositório no Github Oriento que você o estude para entender melhor o funcionamento de um aplicativo Nesse repositório há a codificação funcional e a documentada Modelo o modelo de dados representa as informações principais que seu aplicativo usa para acessar e manipular Por isso é considerado o centro da sua aplicação Enquanto o visualizador e o controlador servem para conectar o usuário com o modelo de dados de forma amigável o modelo encapsula as preocupações de armazenamento e validação View os visualizadores devem monitorar o modelo de dados pronto para responder às mudanças Isso permite que os controladores evitem acoplamentos desnecessários ao visualizador O controlador deve atualizar o modelo e em seguida o visualizador observará e responderá a essa alteração Controlador o código do controlador atua como uma ligação entre o modelo e a visualização recebendo a entrada do usuário e decidindo o que fazer com ela Por ter essas funções é considerado o cérebro do aplicativo Clique no botão para conferir o conteúdo ACESSE Leitura EJS e Sequelize Juntos no Padrão MVC Indicações para saber mais sobre os assuntos abordados nesta disciplina VÍDEOS TDD NA PRÁTICA COM JAVA USANDO MOCKBEAN O desenvolvimento orientado por testes é de grande valia no desenvolvimento ágil Pode ser utilizado junto com XP em uma gestão de projeto de software SCRUM No vídeo são explicadas técnicas de como desenvolver testes conforme o exigido em desenvolvimento na prática de forma introdutória Clique no botão para conferir o vídeo indicado ASSISTA CRIANDO UM CRUD FÁCIL USANDO O FRAMEWORK SPRING MVC No vídeo você encontrará algo além da criação de um CRUD usando o Spring MVC Spring JPA e Spring Boot você descobrirá a forma correta e possível de utilização de projetos Java Maven externos e reaproveitamento de modelos já criados provando dessa forma como é possível programar em Java de modo correto e reaproveitar o código Java Clique no botão para conferir o vídeo indicado ASSISTA 2 8 Material Complementar CONHEÇA O SPRING MVC O FRAMEWORK WEB MAIS POPULAR PARA JAVA Com este vídeo você aprenderá sobre como funciona o fluxo de uma requisição atendida pelo Spring MVC e ainda quais as principais vantagens deste framework web Clique no botão para conferir o vídeo indicado ASSISTA LEITURA JUNIT TUTORIAL O artigo aborda um assunto vital para programadores e analistas que trabalham sobre um paradigma ágil como o Extreme Programming De forma sucinta o material apresenta tópicos como Um pouco de XP Como programar guiado a testes Teste Unitário O quê Por quê Quando Quem Como JUnit O quê Por quê Quando Quem Como JUnit Planejamento e arquitetura das classes JUnit Funcionamento e Análise do resultado Implementado testes em JUnit usando o Eclipse e outros métodos e técnicas complementares httpsbitly3kb3Bek Caroa estudante Agora vamos compreender o cenário que será abordado na primeira situaçãoproblema da disciplina Atentese à situação profissional que você precisará entender para poder realizar a atividade Atualizar Plano de Projeto e DesenvolverTestar uma Solução Funcional de Software Situação 1 Como descrito no corpo teórico e na apresentação desta Unidade é importante aproveitar esse tempo para revisar o planejamento O KaiZen melhoria contínua é de fundamental importância para a criação de produtos de software melhores e mais adequados Para podermos potencializar a solução planejada no Projeto Integrador Transdisciplinar de Engenharia de Software I embarcar mais detalhes e corrigir conceitos quando aplicável pedimos que você estudante 3 8 SituaçãoProblema 1 Verifique e adeque seu escopoideia e a prepare para a execução Verifique e adeque os elementos de modelagens da solução feitos em UML diagramas de classe casos de uso sequência atividades etc veja onde podemos colocar melhorias e alterações necessárias visando acurácia da modelagem Verifique e adeque os elementos da IHC Interface Humano Computador para poder refletir o que você pretende desenvolver em nível de telas mensagens de erro mapas conceituais além de revisar o próprio protótipo incrementandoo Faça ou revise os projetos relacionados aos dados a partir do diagrama de classes de persistência projeto conceitual projeto lógico normalizado Execute o projeto físico do banco de dados que servirá a sua aplicação web ou mobile documenteo e crie o dicionário de dados Vamos compreender o cenário que será abordado na segunda situaçãoproblema da disciplina Atentese à situação profissional que você precisará entender para poder realizar a atividade Situação 2 Nesta situaçãodesafio você irá desenvolver o que planejou Para poder auxiliáloa oferecemos algumas ferramentas livres na documentação de conteúdo do Projeto Integrador Transdisciplinar II para que você acelere caso queira afinal se temos possibilidades de uso de nocode ou lowcode como ferramentas para ajudar na produtividade do front vamos utilizar Claro você pode realizar a atividade de forma tradicional a escolha e o tempo são seus Aqui esperamos as seguintes entregas 4 8 SituaçãoProblema 2 Crie um usuário no GIT para que sua experiência possa ser revisada e vista pelos tutores e professores Claro ela servirá de projeto realizado para que selecionadores e outros possam certificar sua experiência e ficar competitivo na concorrência por vagas Sugerimos que você continue publicando nesse repositório após a entrega do Projeto Integrador Transdisciplinar II Será seu CV permanente Github Clique no botão para conferir o conteúdo ACESSE Site Realizar a construção do código para a interface do usuário baseada em HTML CSS Java Script conforme a necessidade de seu projeto para o frontend Desenvolver o código de processamento de dados ou seja o backend dessa aplicação utilizando o design pattern indicado na documentação desta disciplina é indicado MVC Utilizar uma das seguintes linguagens sugeridas Java PHP C NET ou Python o que você estiver melhor familiarizadoa Apresentar frontend e backend testados por exemplo JUnit PUnit PHPUnit etc e funcionais com erros tratados e completos Por fim vamos compreender o último cenário abordado na terceira situaçãoproblema da disciplina Atentese à situação profissional que você precisará entender para poder realizar a atividade Situação 3 Agora estaremos concentrados em correções testes de integração e validação da solução utilizando pares Além disso precisamos fechar a documentação de todo o projeto para uma entrega perfeita Assim na situação 3 esperamos as seguintes entregas 5 8 SituaçãoProblema 3 Realizar e documentar os testes verificação e validação mostrando que o comportamento esperado foi realizado Oferecer a sua solução para cinco colegas de curso ou profissionais da área para que possam testála Para isso você estudante deve criar um formulário para que possa ser descritos os bugs sugestões de melhoria e colocar snapshots das telas com erros para facilitar sua correção e melhoria Coletar as sugestões dadas realizar correções e melhorias sugeridas quando pertinente e incorporálas na documentação do projeto Manter tudo documentado criando estruturas de diretório no GIT para todas as situações de desafio além é claro da codificação Apresentar em um vídeo gravado de até cinco minutos sua solução em funcionamento Orientações para o Projeto Situação 1 Uma vez revisado os documentos escolhidas as melhores sugestões de seus colegas e claro as suas próprias sugestões compile e utilize o GIT para manter a documentação atualizada e num lugar só isso inclui o código Lembrese de criar uma estrutura de banco de dados com um SGBD que seja de fácil manutenção e popular Nada de usar SGBD obscuros isso não é boa prática de mercado Situação 2 6 8 Problema em Foco Revisitar e revisar todos os documentos criados por você em seu Projeto Integrador Transdisciplinar de Sistemas de Informação I Atentarse e ter a intenção de realizar um ciclo de melhoria contínua deixando a documentação de planejamento mais robusta e mais clara Utilizar competências de atenção aos detalhes abstração e feedback de seus colegas Para isso você estudante deve pedir a eles a crítica para a solução que você deve implementar Assim o poder da colaboração e empatia deve ser utilizado nesta atividade Fazer a codificação do frontend do backend e da aplicação web ou mobile conforme sugerido em seu planejamento Bem esperamos muita codificação de sua parte para que o código ou artefato ou análise de dados possam ser desenvolvidos e apresentados Queremos que você produza códigos fontes frontend e backend bibliotecas manual de uso vídeo gravado demonstrando o funcionamento narrado por você com pelo menos cinco minutos de duração Concentre tudo no GIT passe o link de acesso para oa Tutora ou deposite o material no local que elea pedir mas mantenha o GIT em qualquer situação Lembrese para ajudar no frontend ferramentas nocode eou lowcode podem auxiliar muito na economia e em um melhor aproveitamento do tempo no projeto Aproveite para revisitar a interface do usuário o design e outros atributos Verifique se mudará algo aproveite para fazer essas modificações quando necessário Deixe a documentação sempre em ordem Você a depositará junto com o restante do projeto conforme orientações doa professora tutora no momento oportuno Situação 3 Na situação 3 o desafio é a realização de testes feitos pelos clientes no caso os colegas que julgaram o que você desenvolveu É importante que nesse momento você já tenha escolhido entre seus colegas quais serão seus dublês de usuários e lhes forneça o endereço para que eles possam testar sua solução como só um usuário sabe fazer O importante aqui é desenvolver a capacidade de aceitação da mudança o reconhecimento do erro como forma de melhorar continuamente o trabalho em equipe e por fim a resiliência necessária para continuar a perseverar para atingir o resultado É importante que você entregue em um arquivo PDF as cinco opiniõestestes sobre seu softwareproduto além de um vídeo que explicite quais mudanças foram adotadas Esses materiais consistirão como a prova de seu sucesso estudante neste desafio Lembrese de construir um template para que seus colegas possam laudar a qualidade da criação Esse documento precisa ter no mínimo Sintase à vontade para criar sobre isso Tudo que você precisa entregar está descrito no próprio desafio para evitar dúvidas É importante que você não esconda essas falhas de maneira alguma afinal elas servem para seu aprendizado Nome de quem testou Data do teste O que testou e funcionou descrição da funcionalidade O que testou e não funcionou descrição da funcionalidade e o que deve ser corrigido Funcionalidade não testada por que faltou ou se a funcionalidade existe no projeto mas não foi realizada descrever Muito bem estudante Agora que você já leu todas as situaçõesproblema você pode fazer o download deste arquivo para realizar a atividade de entrega Caso prefira o arquivo também se encontra no Ambiente Virtual de Aprendizagem 7 8 Atividade de Entrega USABILITYGOV User interface design basics 30092020 Disponível em httpswwwusabilitygovwhatandwhyuserinterfacedesignhtml Acesso em 02022022 WEBFLOW What is nocode development c2022 Disponível em httpswebflowcomnocode Acesso em 02022022 8 8 Referências Muito bem estudante Você concluiu o material de estudos Agora volte ao Ambiente Virtual de Aprendizagem para realizar a Atividade Relatório Diagnóstico Completo de Operações e Metas Estratégicas Sumário Este relatório apresenta um diagnóstico aprofundado e integrado das operações da transportadora fundamentado na análise estatística de um robusto conjunto de dados de 5000 registros de entrega Constatase que a empresa não obstante sua escala enfrenta desafios estratégicos de grande magnitude evidenciados por um notável desalinhamento entre suas metas corporativas e sua performance operacional efetiva O estudo revela que a satisfação do cliente embora aparente ser heterogênea em uma avaliação superficial oculta uma severa crise na qualidade dos serviços em mercados regionais de suma importância As investigações estatísticas comprovam com elevado grau de confiança que tal insatisfação é uma decorrência direta de ineficiências operacionais notavelmente o tempo excessivo de entrega em determinadas rotas A organização falha em atingir quatro de suas cinco principais metas estratégicas que englobam tempo de entrega diversificação da matriz de transporte e de forma mais crítica o índice mínimo de satisfação em três de suas cinco regiões de atuação A identificação de uma forte correlação positiva entre o peso das encomendas e o tempo de trânsito adiciona uma camada de complexidade a ser endereçada no planejamento logístico Diante deste cenário a recomendação estratégica central e mais premente consiste na implementação de planos de ação focados na otimização de processos das regiões Norte CentroOeste e Sudeste com vistas à redução do tempo de entrega como principal vetor para a recuperação da satisfação do cliente e o consequente alinhamento aos objetivos globais da companhia 1 Introdução O presente documento oferece a mais completa análise das operações da transportadora realizada até o momento consolidando os resultados de quinze investigações analíticas sequenciais em um único relatório coeso O problema fulcral que motivou este estudo foi a percepção por parte da administração de um possível desalinhamento entre as metas estratégicas da empresa e seus resultados operacionais bem como a necessidade de uma compreensão aprofundada dos fatores que influenciam a satisfação do cliente O propósito fundamental deste trabalho é portanto fornecer um diagnóstico preciso e baseado em evidências que não apenas descreva o estado atual da operação mas que também elucide as relações de causa e efeito entre as variáveis logísticas e a performance do negócio Para a consecução de tal desiderato a análise propõese a responder a um conjunto detalhado de quinze perguntas que abrangem desde o perfil geral das operações até a avaliação rigorosa de indicadoreschave de desempenho KPIs culminando em recomendações estratégicas aptas a nortear a tomada de decisão futura 2 Materiais e Métodos O presente estudo foi conduzido a partir de uma abordagem quantitativa com a utilização de um conjunto de dados secundários fornecidos em formato de planilha eletrônica Microsoft Excel xlsx A base de dados consolidada continha um total de 5000 registros onde cada registro representava uma operação de entrega individual As variáveis de interesse para a análise contidas neste conjunto de dados foram definidas e classificadas da seguinte forma Região variável categórica nominal representando as cinco grandes regiões do Brasil Modalidade variável categórica nominal descrevendo o meio de transporte utilizado Opinião variável categórica ordinal capturando a satisfação do cliente em cinco níveis de Péssimo a Excelente Peso variável numérica contínua expressa em quilogramas e Tempo variável numérica contínua expressa em horas Toda a manipulação análise e visualização dos dados foram realizadas no ambiente computacional estatístico R em sua versão 4xx Para a execução das tarefas foram empregados pacotes especializados que estendem as funcionalidades básicas do software O pacote readxl foi utilizado para a importação inicial dos dados da planilha A subsequente manipulação limpeza e sumarização dos dados foram efetuadas de maneira eficiente com o auxílio do pacote dplyr uma ferramenta central do ecossistema Tidyverse A criação de todas as visualizações gráficas de alta qualidade como os histogramas gráficos de barras boxplots e gráficos de dispersão foi realizada através do pacote ggplot2 conhecido por sua gramática de gráficos flexível e poderosa O pacote knitr foi utilizado para a formatação de tabelas de forma clara e legível Os procedimentos analíticos foram estruturados em etapas sequenciais Inicialmente foi realizada uma análise estatística descritiva para caracterizar o perfil das variáveis e obter uma compreensão geral dos dados Posteriormente para investigar as relações entre as variáveis e responder às perguntas de negócio foram aplicadas técnicas de estatística inferencial A associação entre variáveis categóricas como Região e Opinião foi avaliada pelo Teste QuiQuadrado de Independência Para comparar as médias de uma variável contínua entre diferentes grupos categóricos como o Tempo de entrega por Região foi empregada a Análise de Variância ANOVA A relação linear entre as duas variáveis contínuas Peso e Tempo foi quantificada e testada através do Teste de Correlação de Pearson Para todos os testes de hipóteses foi adotado um nível de significância alfa de 005 sendo este o limiar para a rejeição da hipótese nula 3 Análise de Dados e Resultados Nesta seção os resultados de cada uma das quinze investigações analíticas são apresentados individualmente detalhando a metodologia o código R utilizado os dados observados e a interpretação aprofundada de cada achado Pergunta 1 Os clientes estão satisfeitos com os serviços prestados pela transportadora Código para gerar a tabela de frequência e o gráfico de barras da Opinião tabelaopiniao dados countOpinião sort TRUE mutatePercentual roundn sumn 100 2 printkabletabelaopiniao caption Frequência de Opinião dos Clientes Gera o gráfico em uma nova janela windows print ggplottabelaopiniao aesx reorderOpinião n y n fill Opinião geombarstat identity geomtextaeslabel paste0n Percentual vjust 05 labstitle Distribuição da Opinião dos Clientes x Opinião y Quantidade thememinimal readlinepromptO gráfico foi gerado Pressione Enter no console para continuar Para responder a esta questão foi realizada uma análise de frequência sobre as 5000 avaliações de serviço contidas no conjunto de dados Os resultados quantitativos revelaram a seguinte distribuição 1718 avaliações 3436 foram classificadas como Bom 1349 2698 como Ruim 792 1584 como Regular 575 1150 como Péssimo e 566 1132 como Excelente A interpretação destes números evidencia uma polarização no sentimento dos clientes Embora Bom seja a categoria mais frequente a soma das avaliações explicitamente negativas Ruim e Péssimo alcança 3848 um volume substancial que se aproxima do total de avaliações positivas Excelente e Bom combinadas que é de 4568 Este cenário denota uma experiência de serviço inconsistente e um risco considerável à retenção de clientes e à reputação da marca A visualização desta acentuada divisão é fundamental para a compreensão do problema Fonte Próprio Autor 2025 Pergunta 2 Qual é a principal região de destino das operações da transportadora Código para gerar a tabela de frequência das Regiões tabelaregiao dados countRegião sort TRUE mutatePercentual roundn sumn 100 2 printkabletabelaregiao caption Frequência de Entregas por Região A metodologia utilizada foi uma análise de frequência das entregas por região A contagem revelou que as operações estão primariamente concentradas na Região Sudeste com 1576 entregas representando 3152 do total A Região Sul figura como o segundo maior mercado com 1246 operações 2492 Juntas estas duas regiões somam mais de 56 de todo o volume de negócios As demais regiões CentroOeste 1720 Nordeste 1608 e Norte 1028 completam a distribuição A interpretação destes dados indica um foco geográfico claro o que pode gerar eficiências de escala mas também concentra o risco operacional no eixo Sul Sudeste Pergunta 3 Como está a distribuição das operações em termos de modalidade de transporte Código para gerar a tabela de frequência das Modalidades tabelamodalidade dados countModalidade sort TRUE mutatePercentual roundn sumn 100 2 printkabletabelamodalidade caption Frequência de Entregas por Modalidade Através de uma análise de frequência a distribuição das 5000 operações por modalidade foi quantificada O modal Rodoviário demonstrou ser predominante respondendo por 2555 operações ou 5110 do total O modal Aéreo é o segundo mais utilizado com 901 operações 1802 seguido pelo Marítimofluvial com 731 operações 1462 A forte dependência do modal rodoviário superando a metade de todas as operações representa um risco estratégico significativo expondo a empresa aulnerabilidades intrínsecas a este setor como flutuações de custos e instabilidades logísticas Pergunta 4 Qual o perfil do peso das encomendas transportadas Código para gerar as estatísticas descritivas e o histograma do Peso pesostats asdataframetsummarydadosPeso printkablepesostats caption Estatísticas Descritivas Peso kg catDesvio Padrão do Peso sddadosPeso Gera o gráfico em uma nova janela windows histdadosPeso main Histograma de Distribuição do Peso xlab Peso kg ylab Frequência col lightblue border white readlinepromptO gráfico foi gerado Pressione Enter no console para continuar Foi conduzida uma análise de estatística descritiva sobre a variável Peso Os resultados indicam que a operação lida com cargas pesadas e de perfil notavelmente homogêneo O peso médio observado foi de 10005 kg com uma mediana de 10010 kg e um desvio padrão de 998 kg A proximidade entre média e mediana confirma uma distribuição simétrica sem valores extremos que distorçam a tendência central A faixa de operação vai de um mínimo de 649 kg a um máximo de 1375 kg A previsibilidade do perfil de carga constitui um ponto forte da operação como pode ser visualizado no histograma de distribuição Fonte Próprio Autor 2025 Pergunta 5 Qual o perfil do tempo gasto para transportar as encomendas Código para gerar as estatísticas descritivas e o histograma do Tempo tempostats asdataframetsummarydadosTempo printkabletempostats caption Estatísticas Descritivas Tempo h catDesvio Padrão do Tempo sddadosTempo Gera o gráfico em uma nova janela windows histdadosTempo main Histograma de Distribuição do Tempo xlab Tempo h ylab Frequência col lightgreen border white readlinepromptO gráfico foi gerado Pressione Enter no console para continuar Utilizando a mesma metodologia de estatística descritiva para a variável Tempo a análise revelou uma operação consistente em seus prazos em cenários normais O tempo médio de entrega foi de 718 horas com uma mediana quase idêntica de 719 horas e um baixo desvio padrão de 99 horas Este resultado sugere alta previsibilidade No entanto o tempo máximo registrado de 1125 horas é um outlier importante indicando que embora consistente a operação não se mostra imune a falhas que resultam em atrasos significativos O histograma correspondente ilustra a forte concentração dos tempos de entrega Fonte Próprio Autor 2025 Pergunta 6 Será que existe relação entre a modalidade de transporte e a região de destino da encomenda Código para gerar a tabela de contingência e o teste QuiQuadrado tabelamodreg tabledadosModalidade dadosRegião testequimodreg chisqtesttabelamodreg printtestequimodreg Para investigar a associação entre estas duas variáveis categóricas foi aplicado o Teste QuiQuadrado de Independência O resultado do teste foi estatisticamente significativo χ²16 76208 p 0001 indicando que a escolha da modalidade não é aleatória mas sim dependente da região de destino Isso sugere que a empresa emprega uma estratégia logística adaptada utilizando modais mais apropriados para cada contexto geográfico como uma maior utilização do modal fluvial na região Norte Pergunta 7 Será que existe relação entre a modalidade de transporte e a opinião do cliente sobre o serviço prestado Código para gerar a tabela de contingência e o teste QuiQuadrado tabelamodop tabledadosModalidade dadosOpinião testequimodop chisqtesttabelamodop printtestequimodop Novamente o Teste QuiQuadrado foi utilizado e o resultado foi altamente significativo χ²16 14531 p 0001 A conclusão é que a modalidade de transporte tem um impacto direto e profundo na satisfação do cliente A análise das frequências observadas demonstra que os modais Aéreo e Ferroviário estão associados a uma qualidade de serviço percebida muito superior enquanto as operações Marítimofluvial e Multimodal constituem as principais fontes de atrito e avaliações desfavoráveis Pergunta 8 Será que existe relação entre a região de destino e a opinião do cliente Código para gerar a tabela de contingência e o teste QuiQuadrado tabelaregop tabledadosRegião dadosOpinião testequiregop chisqtesttabelaregop printtestequiregop A aplicação do Teste QuiQuadrado nesta questão produziu um resultado extremamente significativo χ²16 18482 p 0001 comprovando que a experiência do cliente não é uniforme em todo o Brasil A disparidade regional é acentuada com as regiões Nordeste e Sul apresentando uma performance de satisfação muito superior em comparação com a experiência predominantemente negativa observada nas regiões Norte CentroOeste e Sudeste Pergunta 9 Será que existe relação entre a opinião do cliente sobre o serviço e o tempo para entregar a encomenda Código para realizar o teste ANOVA e gerar o boxplot testeanovatempoop aovTempo Opinião data dados summarytesteanovatempoop Gera o gráfico em uma nova janela windows print ggplotdados aesx Opinião y Tempo fill Opinião geomboxplot labstitle Distribuição do Tempo de Entrega por Opinião do Cliente y Tempo h thememinimal readlinepromptO gráfico foi gerado Pressione Enter no console para continuar Para comparar a média da variável contínua Tempo entre os diferentes grupos de Opinião foi utilizada a Análise de Variância ANOVA O resultado foi conclusivo e de altíssima significância F4 4995 3777 p 0001 Esta constatação representa um dos achados centrais do estudo o tempo de entrega constitui um dos principais vetores da satisfação do cliente Os tempos médios de entrega para avaliações Excelente e Bom são estatisticamente mais baixos do que para as avaliações Regular Ruim e Péssimo A visualização desta relação é crucial Fonte Próprio Autor 2025 Este gráfico gerado pelo código R correspondente é essencial pois deve mostrar cinco caixas uma para cada nível de opinião que ilustram um padrão claro as caixas se tornam progressivamente mais altas indicando tempos maiores à medida que a avaliação do cliente piora Pergunta 10 Será que existe relação entre a região de destino e o tempo para entregar a encomenda Código para realizar o teste ANOVA e gerar o boxplot testeanovatemporeg aovTempo Região data dados summarytesteanovatemporeg Gera o gráfico em uma nova janela windows print ggplotdados aesx Região y Tempo fill Região geomboxplot labstitle Distribuição do Tempo de Entrega por Região y Tempo h thememinimal readlinepromptO gráfico foi gerado Pressione Enter no console para continuar A mesma técnica de ANOVA foi aplicada para comparar o tempo médio de entrega entre as cinco regiões O teste confirmou com alta significância F4 4995 3514 p 0001 que a performance logística não é homogênea em todo o território Ao conectar este resultado com o da pergunta anterior o diagnóstico é corroborado as regiões com os piores índices de satisfação são de fato aquelas onde a empresa opera de forma mais lenta O gráfico de boxplot regional expõe essa diferença de performance de forma inequívoca Fonte Próprio Autor 2025 Este gráfico gerado pelo código R correspondente deve comparar visualmente os tempos de entrega nas cinco regiões mostrando distribuições visivelmente mais altas e dispersas para as regiões Norte e CentroOeste em comparação com as demais Pergunta 11 Será que existe relação entre o peso da encomenda e o tempo para entregar a encomenda Código para realizar o teste de correlação e gerar o gráfico de dispersão testecorrpesotempo cortestdadosPeso dadosTempo printtestecorrpesotempo Gera o gráfico em uma nova janela windows print ggplotdados aesx Peso y Tempo geompointalpha 04 geomsmoothmethod lm col red labstitle Relação entre Peso da Encomenda e Tempo de Entrega x Peso kg y Tempo h thememinimal readlinepromptO gráfico foi gerado Pressione Enter no console para continuar A relação entre estas duas variáveis contínuas foi investigada pelo Teste de Correlação de Pearson O resultado foi um coeficiente de correlação r de 070 com um pvalor virtualmente zero p 0001 indicando uma correlação positiva forte e estatisticamente significativa A interpretação dos resultados indica que encomendas mais pesadas sistematicamente levam mais tempo para serem entregues Esta regra operacional deve ser integrada ao planejamento logístico para evitar falhas em Acordos de Nível de Serviço SLAs A tendência linear é perfeitamente visível no gráfico de dispersão Fonte Próprio Autor 2025 Este gráfico gerado pelo código R correspondente é a prova visual desta relação mostrando uma nuvem de pontos que se inclina claramente para cima e para a direita com a linha de tendência confirmando o padrão positivo Pergunta 12 A empresa está atingindo o objetivo de não ter encomendas com menos de 800 kg Código para verificar a meta de peso mínimo encomendasleves dados filterPeso 800 numleves nrowencomendasleves percentualleves roundnumleves nrowdados 100 2 catNúmero de encomendas com menos de 800 kg numleves catPercentual do total percentualleves A metodologia consistiu em filtrar e contar o número de registros onde a variável Peso era inferior a 800 A análise identificou 97 operações ou 194 do total que violam esta diretriz Portanto a meta não está sendo atingida Embora o percentual seja baixo ele representa uma falha processual e uma perda de receita potencial pois essas cargas podem não compensar os custos fixos da operação Pergunta 13 A empresa está cumprindo a meta de entregar em no máximo 80 horas Código para verificar a meta de tempo máximo entregasatrasadas dados filterTempo 80 numatrasadas nrowentregasatrasadas percentualatrasadas roundnumatrasadas nrowdados 100 2 catNúmero de encomendas que excederam 80 horas numatrasadas catPercentual do total percentualatrasadas Através da filtragem e contagem dos registros onde o Tempo excedia 80 horas constatouse que a meta não está sendo cumprida de forma consistente Um total de 1027 entregas o que corresponde a 2054 da amostragem ultrapassou o prazo máximo definido Este volume expressivo de atrasos afetando um em cada cinco clientes constitui um fator crítico que impacta diretamente a satisfação Pergunta 14 A empresa está atingindo a meta de usar o transporte rodoviário em no máximo 40 das operações Código para verificar a meta de participação do modal rodoviário distmodal dados countModalidade mutatePercentual roundn sumn 100 2 percentualrodoviario distmodal filterModalidade Rodoviário pullPercentual printkabledistmodal caption Distribuição de Operações por Modalidade Uma análise de frequência da variável Modalidade foi realizada para verificar este KPI O resultado demonstrou que o modal Rodoviário representa 511 do total das operações Portanto a meta estratégica de diversificação da matriz logística que visava limitar essa dependência a 40 não está sendo atingida com um excedente de 111 pontos percentuais Pergunta 15 A empresa está conseguindo 50 de opiniões Excelente ou Bom em todas as regiões Código para verificar a meta de satisfação por região satisfacaoporregiao dados groupbyRegião summarise TotalAvaliacoes n AvaliacoesPositivas sumOpinião in cExcelente Bom PercentualPositivo roundAvaliacoesPositivas TotalAvaliacoes 100 2 arrangedescPercentualPositivo printkablesatisfacaoporregiao caption Percentual de Satisfação por Região Para avaliar esta meta complexa os dados foram agrupados por Região e foi calculado o percentual de avaliações positivas Excelente Bom para cada uma A análise revelou que a meta não está sendo atingida na maioria dos mercados Apenas as regiões Nordeste 838 e Sul 617 cumprem o objetivo As regiões Sudeste 390 CentroOeste 213 e de forma mais alarmante a região Norte apenas 84 estão significativamente abaixo do mínimo de 50 de satisfação 4 Conclusão e Recomendações Estratégicas A análise integrada e aprofundada dos dados posiciona a empresa em uma encruzilhada estratégica Por um lado possui operações de grande escala e previsíveis em cenários ideais Por outro sofre de ineficiências operacionais localizadas que causam um impacto devastador e em cascata sobre o cumprimento de metas e mais importante sobre a percepção de valor pelo cliente A estratégia definida pela administração não está sendo refletida na execução do dia a dia Para reverter este quadro e realinhar a operação aos seus objetivos recomendase um plano de ação focado e sequencial A prioridade absoluta e imediata deve ser a criação de uma forçatarefa de Recuperação Regional com autonomia e recursos para intervir nas operações das regiões Norte CentroOeste e Sudeste O mandato exclusivo desta equipe deve ser o diagnóstico em campo e a execução de um plano de ação de 90 dias focado obsessivamente na redução do tempo de ciclo das entregas Esta é a ação de maior alavancagem pois incide diretamente sobre a causaraiz da insatisfação do cliente e por consequência endereça o cumprimento de múltiplas metas simultaneamente A médio prazo a empresa deve empreender um redesenho estratégico de sua oferta de serviço e de sua matriz logística Isso envolve abandonar o modelo de prazo único e implementar SLAs inteligentes que considerem as variáveis de região e peso para fornecer estimativas realistas aos clientes Em paralelo uma nova política comercial deve ser criada para ativamente incentivar o uso de modais de melhor performance como o Aéreo e o Ferroviário transformandoos em produtos premium e alinhando os interesses comerciais com a busca por maior qualidade e o cumprimento da meta de diversificação Finalmente como ação fundamental e contínua a cultura da empresa deve evoluir para uma gestão orientada por dados Este relatório não deve ser um evento isolado mas o protótipo de uma ferramenta de gestão contínua A implementação de dashboards acessíveis aos gestores monitorando em tempo real os KPIs aqui discutidos permitirá a identificação de desvios no momento em que ocorrem habilitando uma gestão proativa e prevenindo que desafios operacionais se transformem em crises estratégicas como a que foi identificada neste estudo Referências Bibliográficas A metodologia estatística e as ferramentas computacionais empregadas neste trabalho são fundamentadas em literatura e documentação consolidadas na área As principais fontes que serviram de base para a condução da análise bem como as citações formais para o software utilizado incluem publicações de referência em estatística e ciência de dados A seguir são listadas as principais referências consultadas e pertinentes a este estudo Morettin P A Bussab W O 2017 Estatística Básica 10ª ed São Paulo Saraiva Educação Wickham H 2016 ggplot2 Elegant Graphics for Data Analysis SpringerVerlag New York Wickham H François R Henry L Müller K 2023 dplyr A Grammar of Data Manipulation R package version 112 R Core Team 2023 R A Language and Environment for Statistical Computing R Foundation for Statistical Computing Vienna Austria 6 Apêndice Com o intuito de garantir a total transparência reprodutibilidade e possibilidade de auditoria dos resultados apresentados neste relatório os materiais suplementares relevantes são fornecidos a seguir Esta seção contém os recursos computacionais completos que foram desenvolvidos e utilizados para realizar todas as análises descritas no capítulo de Materiais e Métodos e cujos resultados foram discutidos ao longo do trabalho Apêndice A Script R Completo para Análise Neste apêndice é apresentado na íntegra o códigofonte escrito na linguagem R O script está consolidado e estruturado para realizar todas as análises em uma única execução desde o carregamento das bibliotecas e importação dos dados até a execução de cada um dos testes estatísticos e a geração de todas as figuras e tabelas contidas neste documento ANÁLISE COMPLETA DE DADOS E METAS DA TRANSPORTADORA VERSÃO FINAL E INTEGRADA ETAPA 1 CONFIGURAÇÃO DO AMBIENTE catIniciando o script de análise completa catVerificando e carregando bibliotecas necessárias Lista de pacotes necessários para a análise pacotes creadxl dplyr ggplot2 knitr Verifica quais pacotes não estão instalados instalar pacotespacotes in installedpackages Package Instala os pacotes que estiverem faltando iflengthinstalar catInstalando os seguintes pacotes necessários instalar installpackagesinstalar Carrega todos os pacotes necessários libraryreadxl librarydplyr libraryggplot2 libraryknitr catBibliotecas carregadas com sucesso cat ETAPA 2 LEITURA E CARREGAMENTO DOS DADOS catLendo o arquivo de dados da transportadora caminho DadosTransportadora3a34b0578a6e182134509c49a5d659adxlsx if fileexistscaminho stopERRO O arquivo caminho não foi encontrado Verifique o caminho e o nome do arquivo dados readexcelcaminho sheet Plan1 catArquivo lido com sucesso Total de registros nrowdados cat ETAPA 3 EXECUÇÃO DAS ANÁLISES PERGUNTA A PERGUNTA catIniciando a análise detalhada dos dados Pergunta 1 Satisfação dos clientes cat Análise da Pergunta 1 Satisfação dos Clientes tabelaopiniao dados countOpinião sort TRUE mutatePercentual roundn sumn 100 2 printkabletabelaopiniao caption Frequência de Opinião dos Clientes windows printggplottabelaopiniao aesx reorderOpinião n y n fill Opinião geombarstat identity geomtextaeslabel paste0n Percentual vjust 05 labstitle Distribuição da Opinião dos Clientes x Opinião y Quantidade readlinepromptPressione Enter para continuar cat Pergunta 2 Principal região de destino cat Análise da Pergunta 2 Principal Região de Destino tabelaregiao dados countRegião sort TRUE mutatePercentual roundn sumn 100 2 printkabletabelaregiao caption Frequência de Entregas por Região cat Pergunta 3 Distribuição por modalidade cat Análise da Pergunta 3 Distribuição por Modalidade tabelamodalidade dados countModalidade sort TRUE mutatePercentual roundn sumn 100 2 printkabletabelamodalidade caption Frequência de Entregas por Modalidade cat Pergunta 4 Perfil do peso cat Análise da Pergunta 4 Perfil do Peso das Encomendas printkableasdataframetsummarydadosPeso caption Estatísticas Descritivas Peso kg catDesvio Padrão do Peso sddadosPeso windows histdadosPeso main Histograma de Distribuição do Peso xlab Peso kg ylab Frequência col lightblue border white readlinepromptPressione Enter para continuar cat Pergunta 5 Perfil do tempo cat Análise da Pergunta 5 Perfil do Tempo de Entrega printkableasdataframetsummarydadosTempo caption Estatísticas Descritivas Tempo h catDesvio Padrão do Tempo sddadosTempo windows histdadosTempo main Histograma de Distribuição do Tempo xlab Tempo h ylab Frequência col lightgreen border white readlinepromptPressione Enter para continuar cat Pergunta 6 Relação Modalidade x Região cat Análise da Pergunta 6 Relação Modalidade vs Região tabelamodreg tabledadosModalidade dadosRegião printchisqtesttabelamodreg cat Pergunta 7 Relação Modalidade x Opinião cat Análise da Pergunta 7 Relação Modalidade vs Opinião tabelamodop tabledadosModalidade dadosOpinião printchisqtesttabelamodop cat Pergunta 8 Relação Região x Opinião cat Análise da Pergunta 8 Relação Região vs Opinião tabelaregop tabledadosRegião dadosOpinião printchisqtesttabelaregop cat Pergunta 9 Relação Opinião x Tempo cat Análise da Pergunta 9 Relação Opinião vs Tempo testeanovatempoop aovTempo Opinião data dados printsummarytesteanovatempoop windows printggplotdados aesx Opinião y Tempo fill Opinião geomboxplot labstitle Distribuição do Tempo por Opinião readlinepromptPressione Enter para continuar cat Pergunta 10 Relação Região x Tempo cat Análise da Pergunta 10 Relação Região vs Tempo testeanovatemporeg aovTempo Região data dados printsummarytesteanovatemporeg windows printggplotdados aesx Região y Tempo fill Região geomboxplot labstitle Distribuição do Tempo por Região readlinepromptPressione Enter para continuar cat Pergunta 11 Relação Peso x Tempo cat Análise da Pergunta 11 Relação Peso vs Tempo testecorrpesotempo cortestdadosPeso dadosTempo printtestecorrpesotempo windows printggplotdados aesx Peso y Tempo geompointalpha 04 geomsmoothmethod lm col red labstitle Relação entre Peso e Tempo readlinepromptPressione Enter para continuar cat Pergunta 12 Meta de peso mínimo cat Análise da Pergunta 12 Meta de Peso Mínimo 800kg encomendasleves dados filterPeso 800 catNúmero de encomendas com menos de 800 kg nrowencomendasleves catPercentual do total roundnrowencomendasleves nrowdados 100 2 n Pergunta 13 Meta de tempo máximo cat Análise da Pergunta 13 Meta de Tempo Máximo 80h entregasatrasadas dados filterTempo 80 catNúmero de encomendas que excederam 80 horas nrowentregasatrasadas n catPercentual do total roundnrowentregasatrasadas nrowdados 100 2 n Pergunta 14 Meta de participação do modal rodoviário cat Análise da Pergunta 14 Meta de Participação do Rodoviário 40 distmodal dados countModalidade mutatePercentual roundn sumn 100 2 printkabledistmodal caption Distribuição de Operações por Modalidade cat Pergunta 15 Meta de satisfação por região cat Análise da Pergunta 15 Meta de Satisfação por Região 50 Positiva satisfacaoporregiao dados groupbyRegião summarise TotalAvaliacoes n AvaliacoesPositivas sumOpinião in cExcelente Bom PercentualPositivo roundAvaliacoesPositivas TotalAvaliacoes 100 2 arrangedescPercentualPositivo printkablesatisfacaoporregiao caption Percentual de Satisfação por Região cat cat cat Análise completa concluída com sucesso cat