TCC - Bacharelado em Ciência da Computação (Sede)
URI permanente para esta coleçãohttps://arandu.ufrpe.br/handle/123456789/415
Navegar
5 resultados
Resultados da Pesquisa
Item Os efeitos da (in)felicidade no processo dedesenvolvimento de software(2019) Falcão, Tiago Coutinho; Marinho, Marcelo Luiz Monteiro; http://lattes.cnpq.br/3362360567612060; http://lattes.cnpq.br/8796523691341550No processo de desenvolvimento de software o principal ator e responsável por impactar diretamente na produção, é o indivíduo. Com o aumento da literatura e das vivências profissionais, assim como a importância de se estudar o ser humano, estudos recentes envolvendo os aspectos humanos na engenharia de software procuram relacionar fatores psicológicos com ciências exatas. Estudos mostram que emoções como a(in)felicidade num ambiente de desenvolvimento de software estão diretamente ligadas a qualidade do software , afetando o desempenho do desenvolvedor. Compreender a felicidade e a infelicidade é possível elaborar formas que melhorem as condições do ambiente de trabalho,a produtividade e motivação do desenvolvedor.O presente trabalho busca identificar os efeitos da (in)felicidade no desempenho dos desenvolvedores de software atuantes no estado de Pernambuco. Neste trabalho, serão analisados os efeitos e os fatores moderadores que influenciam o desempenho dos desenvolvedores quando estão felizes e infelizes durante o processo de desenvolvimento de software.Baseada em uma revisão bibliográfica e na opinião de envolvidos no desenvolvimento de software, através de um questionário, que contou com a participação de 71 desenvolvedores, foram levantados os fatores moderadores capazes de influenciar emocionalmente o indivíduo acarretando na melhora ou piora do seu desempenho. Dentre eles estão: saúde mental e física influenciando negativamente e a motivação do time como fator moderador positivo. Apesar de algumas empresas terem flexibilidade em diversos sentidos como por exemplo, a vestimenta,coffee breakse espaços de lazer,a atenção ao desenvolvedor muitas vezes não é explorada individualmente. Nesse trabalho, podemos concluir que fatores como a Saúde Mental comprovam que o cuidado com o bem-estar do individuo é de extrema importância para um bom funcionamento do processo de desenvolvimento.Item A Diagnoses Instrument for Software Engineers’ Soft Skills(2019) Bastos, Thiago Alves; Sampaio, Suzana Cândido de Barros; http://lattes.cnpq.br/0066131495297081; http://lattes.cnpq.br/9312633017399857O uso de Metodologias Ágeis em meio aos Projetos de Desenvolvimento de Software têm crescido nos últimos anos. Essas metodologias tem um conjunto de valores e princípios que são centrado nas pessoas, aumentando a importância dos fatores humanos para o sucesso dos projetos que utilizam Metodologias Ágeis. Entretanto, esses fatores nem sempre são completamente entendidos pelos profissionais que trabalham dentro de times ágeis. Essa realidade levou ao surgimento de um ”gap” entre o que as empresas esperam dos Engenheiros de Software e o que eles realmente têm, em termos de Soft Skills, especialmente em seus primeiros empregos. Por isso, baseado em uma Revisão da Literatura e na opinião dos Engenheiros de Software que trabalham em times ágeis dentro do Porto Digital de Recife, esse trabalho desenvolveu um MVP de um instrumento capaz de fazer uma auto avaliação das 8Soft Skills mais importantes para um Engenheiro de Software que trabalha em um ambiente Ágil. Elevando a atenção para a relevância das Soft Skills para carreira de um Engenheiro de Software,destacando quais são as Soft Skills mais importantes para eles e também reduzindo o ”gap” existente no mercado de TI. Além disso, durante esse estudo foi criado um Catálogo de Soft Skills contendo os seus sinôimos e suas definições encontradas na Literatura. Por fim, pode-se perceber que as Soft Skills são muito importantes para os Engenheiros de Software, sendo Liderança e Negociação as menos relevantes e Comunicação a mais relevante, e o MVP do instrumento desenvolvido se mostrou de extrema relevância, principalmente para engenheiros de Software no começo da carreira. Além disso, também foi possível perceber que não existem atividades suficientes dentro das empresas para melhorar as Soft Skills dos Engenheiros de Softwaer e as atividades existentes não estão alinhadas com as expectativas deles.Item Políticas para desenvolvimento de software seguro em times ágeis(2019) Bezerra, Carlos Magnum Matias; Sampaio, Suzana Cândido de Barros; http://lattes.cnpq.br/0066131495297081; http://lattes.cnpq.br/9077153013471246Os valores e princípios das metodologias ágeis visam entregar valor ao negócio deforma rápida, sendo essa agilidade, um dos fatores críticos para o sucesso dessas abordagens. Sucesso esse, crucial para atender uma demanda crescente por software, gerada pela necessidade de digitalização dos negócios. Atualmente, outra preocupação,também advinda dessa necessidade, vem ganhando mais visibilidade, a segurança ci-bernética. Muitos negócios que migraram para o mundo digital não tiveram a devida preocupação com as ameaças presentes nesse novo cenário. Como consequência, muitos problemas de segurança vem sendo expostos nos últimos anos, tais problemas,muitas vezes, acarretam em prejuízos de natureza financeira e social. Sendosoft-ware um dos ativos computacionais mais expostos a ameaças de segurança, a busca por desenvolvê-los de forma segura, torna-se uma demanda, cada vez mais evidente.Neste cenário, surge a necessidade de incluir práticas de segurança no cotidiano dos times de ágeis. Com o intuito de contribuir para a resolução desses desafios,este trabalho tem como objetivo: estabelecer políticas de desenvolvimento seguro,agregando práticas destinadas a inclusão de atributos de segurança em projetos de software, a serem desenvolvidos por times ágeis. Para tanto, se fez necessário, realizar uma pesquisa exploratória por meio de um levantamento bibliográfico, a fim de se obter uma compreensão inicial do problema e das principais abordagens utilizadas para tratá-lo. A partir da bibliografia encontrada, foram consideradas as pesquisas que apresentavam práticas para a inclusão de atividades de segurança em projetos de software. Com base em critérios predefinidos, foi conduzida uma filtragem inicialdas práticas levantadas. O sub-conjunto resultante, foi avaliado por um time ágil de desenvolvimento, com experiência em segurança. O resultado dessa avaliação,evidenciou as 14 (catorze) práticas mais relevantes e as etapas do processo de desenvolvimento, ao qual elas pertenciam. A partir das práticas selecionadas, 5 (cinco)políticas foram estruturadas e organizadas, em seguida avaliadas por especialistas,através de entrevistas, para julgar, seus benefícios para segurança e aplicabilidade em times ágeis. Por meio do resultado dessa avaliação, foi possível concluir, que 3(três) das políticas, eram suficientemente aplicáveis a times ágeis e contribuíam para segurança do projeto. Já 2 (duas) delas, apesar dos benefícios para segurança, ainda necessitam de ajustes para que a incorporação seja viável, no mundo ágil.Item Engenharia de software e métodos ágeis como forma de Inclusão(2019) Silva, Anderson Mateus da; Sampaio, Suzana Cândido de Barros; http://lattes.cnpq.br/0066131495297081; http://lattes.cnpq.br/5385133978429474As Metodologias Ágeis trouxeram uma nova visão sobre como desenvolver software,traçando foco sobre os indivíduos e relações, sobre as pessoas e não sobre o software desenvolvido. Os Métodos Ágeis também prezam pela relação de times que possuam diversidade, mas é considerada apenas a diversidade profissional, onde times com profissionais com habilidades e conhecimentos distintos facilitam a auto-suficiência e consequentemente o auto-desempenho. Porém, o conceito de diversidade vai além desta perspectiva, é necessário pensar sobre diversidade social, pensar sobre inclusão e mais do que apenas incluir, integrar as pessoas ao time, integrá-las na organização. Os aspectos humanos sobre a engenharia de software, estudados a mais de 40anos, relacionam como o indivíduo pode desenvolver suas habilidades comportamentais dentro do contexto de ambientes de construção de software. Tais aspectos podem ser potencializados através das práticas ágeis, porém, tais práticas não possuem de fato a perspectiva de inclusão, principalmente quando se fala de pessoas portadoras de deficiência, cabendo assim ao time criar suas próprias adaptações quando existe esta necessidade. Nesse contexto, o objetivo deste trabalho é identificar as principais técnicas presentes na literatura, confrontá-las com a realidade de especialistas que trabalham ou gerenciam times ágeis, sendo estes portadores de deficiência ou pessoas que trabalharam coordenando times com pessoas com deficiência, além de compreender os desafios enfrentados pelos mesmos durante os projetos desenvolvidos.Baseada em uma revisão bibliográfica e na opinião de praticantes de métodos ágeis através de entrevistas, foram levantadas uma série de técnicas e estratégias para auxiliar a promoção de inclusão em times ágeis. Dentre elas estão a Reunião Diária, Programação em Par, Reunião de Planejamento, Reunião de Avaliação, Retrospectiva,Estimativa dos Esforços, Workshop e Desafios de código. Apesar da utilização dessas técnicas, a dependência de fatores externos, como ferramentas específicas ou conhecimento sobre de linguagem de sinais e a desatenção em tornar o ambiente propício para os profissionais se sentirem confiantes e empoderados são os principais desafios enfrentados pelos times ágeis que possuem pessoas com deficiência. Por fim, é proposto ainda um catálogo para apoiar iniciativas de Inclusão em times ágeis, contendo as principais técnicas mencionadas tanto pela literatura quanto pelos profissionais de métodos ágeis.Item Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal(2018) Pereira, Iverson Luís; Nogueira, Sidney de Carvalho; http://lattes.cnpq.br/9171224058305522; http://lattes.cnpq.br/1186672408246777O interesse por ambientes de programação de robôs virtuais para fins educacionais tem crescido nos últimos anos. Estes ambientes são uma alternativa para o uso de robôs reais que possuem um alto custo de aquisição. No entanto, não existem ambientes gratuitos que oferecem mecanismos automatizados para verificação dos programas de robôs virtuais, o que impossibilita que alunos e professores tenham um feedback rápidoeautomáticosobreofuncionamentodosprogramas.Estetrabalhopropõe umaabordagemdeverificaçãoautomáticadeprogramasderobôsvirtuaisescritosna linguagemeducacionalROBO.DesenvolvemosumcompiladorquelêprogramasescritosemROBOetraduzosprogramasparaumanotaçãoformalchamadaCSP(Communicating Sequential Processes), que é a entrada para uma ferramenta de verificação automática de modelos chamada FDR (Failures-Divergences Refinement). As fases da compilação foram implementadas usando a plataforma Spoofax, onde definimos a gramática da linguagem ROBO e especificamos regras de tradução de ROBO para CSP. Estetrabalhoremoveumalimitaçãodanossaabordagemanteriordeverificação que não permite a análise de programas ROBO contendo variáveis e procedimentos. Uma importante contribuição deste trabalho é a extensão da abordagem de verificação para permitir a análise automática de programas ROBO com variáveis e procedimentos. A extensão consiste na modificação da gramática do compilador pela inclusão de variáveis e procedimentos e na inclusão de novas regras de tradução que definem a semântica formal para os elementos adicionados na gramática. O trabalho propõe uma ferramenta que torna transparente o processo de tradução de ROBO para CSP e a verificação automática usando FDR. Validamos a abordagem utilizando a ferramenta proposta para verificar o comportamento de um programa ROBO com variáveis e procedimentos.
