O documento apresenta ferramentas de apoio ao desenvolvimento de software, incluindo Redmine para gerenciamento de projetos, Git para controle de versões e Read the Docs para documentação. Exemplos e exercícios são fornecidos para demonstrar o uso de cada ferramenta.
Qualidade de Software: Teste de softwareAlex Camargo
O documento discute os conceitos básicos e tipos de testes de software, incluindo: (1) testes de caixa branca como teste de unidade e integração, (2) testes de caixa preta como teste funcional, de aceitação e exploratório, e (3) testes de caixa cinza como teste de regressão e cobertura. O documento também descreve os papéis da equipe de teste, como gerente, arquiteto e testador.
Plano do projeto de software SIGEM - Sistema de gestão de materiaisMarcos Pessoa
Este documento apresenta o plano de projeto de software para produtos da Lacertae SW. Ele descreve o escopo, funcionalidades, requisitos, estimativas, riscos, cronograma e controles de qualidade do projeto de desenvolvimento de um sistema de gestão de materiais para uma universidade.
O documento discute ferramentas de planejamento e controle de versão. Apresenta ferramentas de planejamento como MS Project e OpenProj e discute os modelos centralizado e distribuído de controle de versão, apresentando ferramentas como Git, SVN e Mercurial. Por fim, faz um estudo de caso sobre o uso do Redmine e SVN na Universidade Federal de Sergipe.
O documento discute técnicas para evoluir sistemas legados, incluindo redocumentação, refatoração, engenharia reversa e reengenharia. A rejuvenescimento de software é apresentada como uma estratégia para melhorar a qualidade do software e reduzir custos de manutenção ao longo do tempo.
Desconstruindo monolitos - Construindo microservicos em DelphiFelipe Caputo
O documento discute estratégias para migrar um grande sistema monolítico legado para micro serviços em Delphi de forma ágil e com qualidade. Primeiro, explica os benefícios e desafios de micro serviços e abordagens de evolução e migração de legados. Em seguida, detalha estratégias como extrair dependências, transformar funcionalidades em serviços e usar Docker. Por fim, discute a importância da automação de testes funcionais e não funcionais para garantir a qualidade durante e após a migração.
1. O documento discute o uso do Subversion para controle de versões, descrevendo suas principais funcionalidades e operações como importação, checkout e commit.
2. Detalha a estrutura de projetos no Subversion, divididos em trunk, branches e tags.
3. Apresenta duas políticas de versionamento: Lock-Modify-Unlock e Copy-Modify-Merge, recomendando a primeira para a Pró-Saúde.
Final Project (2013): Test-Driven Development applied on web applicationsLuiz Henrique
O documento discute o desenvolvimento orientado a testes (TDD) aplicado a sistemas web. Ele explica o que é TDD e testes de unidade, os benefícios do TDD, os ciclos de desenvolvimento no TDD, métricas para medir a qualidade do código com TDD e ferramentas como NUnit e QUnit para realizar testes automatizados em sistemas web.
Análise e Utilização de Gestão do Conhecimento no Apoio ao Desenvolvimento de...Luiz Matos
Aborda os preceitos da Gestão do Conhecimento, Framework de Trittmann e o processo de implantação (atividades de GC). Efetua-se a definição de um estudo experimental hipotético.
Qualidade de Software: Teste de softwareAlex Camargo
O documento discute os conceitos básicos e tipos de testes de software, incluindo: (1) testes de caixa branca como teste de unidade e integração, (2) testes de caixa preta como teste funcional, de aceitação e exploratório, e (3) testes de caixa cinza como teste de regressão e cobertura. O documento também descreve os papéis da equipe de teste, como gerente, arquiteto e testador.
Plano do projeto de software SIGEM - Sistema de gestão de materiaisMarcos Pessoa
Este documento apresenta o plano de projeto de software para produtos da Lacertae SW. Ele descreve o escopo, funcionalidades, requisitos, estimativas, riscos, cronograma e controles de qualidade do projeto de desenvolvimento de um sistema de gestão de materiais para uma universidade.
O documento discute ferramentas de planejamento e controle de versão. Apresenta ferramentas de planejamento como MS Project e OpenProj e discute os modelos centralizado e distribuído de controle de versão, apresentando ferramentas como Git, SVN e Mercurial. Por fim, faz um estudo de caso sobre o uso do Redmine e SVN na Universidade Federal de Sergipe.
O documento discute técnicas para evoluir sistemas legados, incluindo redocumentação, refatoração, engenharia reversa e reengenharia. A rejuvenescimento de software é apresentada como uma estratégia para melhorar a qualidade do software e reduzir custos de manutenção ao longo do tempo.
Desconstruindo monolitos - Construindo microservicos em DelphiFelipe Caputo
O documento discute estratégias para migrar um grande sistema monolítico legado para micro serviços em Delphi de forma ágil e com qualidade. Primeiro, explica os benefícios e desafios de micro serviços e abordagens de evolução e migração de legados. Em seguida, detalha estratégias como extrair dependências, transformar funcionalidades em serviços e usar Docker. Por fim, discute a importância da automação de testes funcionais e não funcionais para garantir a qualidade durante e após a migração.
1. O documento discute o uso do Subversion para controle de versões, descrevendo suas principais funcionalidades e operações como importação, checkout e commit.
2. Detalha a estrutura de projetos no Subversion, divididos em trunk, branches e tags.
3. Apresenta duas políticas de versionamento: Lock-Modify-Unlock e Copy-Modify-Merge, recomendando a primeira para a Pró-Saúde.
Final Project (2013): Test-Driven Development applied on web applicationsLuiz Henrique
O documento discute o desenvolvimento orientado a testes (TDD) aplicado a sistemas web. Ele explica o que é TDD e testes de unidade, os benefícios do TDD, os ciclos de desenvolvimento no TDD, métricas para medir a qualidade do código com TDD e ferramentas como NUnit e QUnit para realizar testes automatizados em sistemas web.
Análise e Utilização de Gestão do Conhecimento no Apoio ao Desenvolvimento de...Luiz Matos
Aborda os preceitos da Gestão do Conhecimento, Framework de Trittmann e o processo de implantação (atividades de GC). Efetua-se a definição de um estudo experimental hipotético.
Este documento resume uma aula sobre processos de software. Apresenta conceitos como processo de software, modelos de processo de desenvolvimento de software, modelos de ciclo de vida como cascata e iterativos, além de linguagens, métodos e ferramentas CASE. O objetivo é introduzir os alunos aos principais elementos envolvidos no desenvolvimento de software.
Introdução a Engenharia de Software - Prof.ª Cristiane FidelixCris Fidelix
O documento discute a evolução da preocupação com a qualidade de software ao longo dos anos, desde as décadas de 1950 a 2000. Nos anos iniciais, os erros eram conhecidos apenas após o término do programa. Nos anos 1970 surgiram análise estruturada e teste antes do término. Nos anos 1980 houve primeiras preocupações com padrões de qualidade. Nos anos 1990 surgiram primeiros processos de teste motivados pelo bug do milênio. Nos anos 2000, testes foram estruturados dentro do processo de desenvolvimento e surgiram ferramentas de
Introdução a Application Life-cycle Management Open SourceGlobalcode
1) O documento apresenta o conceito de Application Lifecycle Management (ALM) e ferramentas open source para implementar ALM, incluindo Redmine para gerenciamento de requisitos, SVN/GIT para controle de versão, Maven para build, Nexus para gerenciamento de pacotes, Jenkins para integração contínua e Selenium para testes.
2) É demonstrado como configurar a integração entre essas ferramentas, incluindo a integração do Redmine com SVN/GIT e do Maven com Nexus.
3) As vantagens do ALM inclue
Modelos de Processo e Desenvolvimento de Software 1 - Prof.ª Cristiane FidelixCris Fidelix
O documento descreve diferentes modelos de desenvolvimento de software, incluindo o modelo cascata, incremental e RAD. O modelo cascata é linear e sequencial, enquanto os modelos incremental e RAD dividem o projeto em incrementos/partes menores com entregas parciais ao cliente.
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122Bruno Souza
Slides do Minicurso ministrado pela ToolsCloud na Globalcode. Para se inscrever nas proximas turmas, acesse:
http://www.globalcode.com.br/gratuitos/minicursos/minicurso-introducao-a-alm-open-source
Para experimentar as ferramentas apresentadas no minicurso, você pode utilizar o ambiente de demonstração da ToolsCloud:
https://demo.toolscloud.net
User: toolscloud
Password: toolscloud
ToolsCloud -- As ferramentas que os desenvolvedores adoram, na nuvem!
Solução complete de ALM, open source e sem stress. Começe a usar no seu projeto hoje!
http://www.toolscloud.com
GCS - Aula 07 - Sistemas de Controle de VersõesMisael Santos
O documento discute gestão de configuração de software e controle de versões. Ele explica conceitos como versionamento, ações como check-in, check-out e merge, ferramentas como CVS e Subversion, e estratégias como branching e tagging.
Open4Education | MC122 - Introdução a ALM OpenSourcetdc-globalcode
1. O documento discute sobre ferramentas de gerenciamento do ciclo de vida de aplicações (ALM) de código aberto.
2. Ele apresenta diversas ferramentas como Redmine para gerenciamento de requisitos, Subversion/Git para controle de versão, Maven para build e dependências, Hudson para integração contínua e Nexus para gerenciamento de componentes.
3. O documento explica como essas ferramentas podem ser usadas em conjunto para implementar um sistema ALM completo de forma gratuita e de código aberto.
O documento apresenta uma solução de Application Lifecycle Management (ALM) open source composta por ferramentas como Redmine, Subversion/Git, Maven, Nexus, Hudson/Jenkins. A pilha ALM descrita permite gerenciar todo o ciclo de vida de desenvolvimento de software de forma integrada e com baixo custo.
O documento apresenta os conceitos e práticas do DevOps, descrevendo: (1) O que é DevOps, como uma filosofia que promove a integração entre equipes de desenvolvimento e operações; (2) A história do DevOps e sua evolução ao longo dos anos; (3) Ferramentas comumente usadas no DevOps.
O documento descreve o Instituto Nokia de Tecnologia (INdT) e como ele usa o framework Scrum para projetos de desenvolvimento de software. Em três frases: O INdT é um centro de pesquisa da Nokia focado em tecnologias móveis e internet. Ele usa Scrum, com cerimônias como planejamento do sprint e reuniões diárias, para gerenciar projetos de software. Testes de software são integrados às cerimônias de Scrum para garantir a qualidade do produto.
▫ Integração com o Office.
• Pontos Negativos:
▫ Custo da licença;
▫ Pesada para pequenos projetos;
▫ Curva de aprendizado maior.
Microsoft Project
Microsoft Project
Microsoft Project
Agenda
• Introdução;
• Importância das Ferramentas;
• Ferramentas:
▫
▫
▫
▫
▫
▫
▫
▫
▫
Open Project;
Trac;
Redmine;
WebCollab;
GPWEB;
Collabtive;
Microsoft
TDC 2013 SP | Trilha ALM: Construindo uma solução de ponta a ponta com ferram...tdc-globalcode
O documento descreve uma solução de gerenciamento do ciclo de vida de aplicativos (ALM) usando ferramentas open-source como Redmine, Git, Maven, Jenkins, Nexus e Sonar. A solução fornece requisitos, versionamento de código, builds, dependências, integração contínua, publicação de artefatos, inspeção de qualidade e implantação.
Sbqs 2010 Processo de Teste de Software para ScrumEliane Collins
Este documento descreve a experiência de um projeto que utilizou automação de testes com Scrum. Ferramentas como Selenium foram usadas para automatizar casos de teste funcionais e encontrar defeitos de interface, principalmente entre navegadores. A automação proporcionou cobertura total de funcionalidades, encontrou novos problemas e economizou tempo na geração de relatórios.
Este documento apresenta os conceitos e processos de teste de software, incluindo as fases de teste de componente, integração e sistema. O objetivo dos testes é verificar aspectos estruturais, lógicos e sistêmicos do software para descobrir defeitos de forma eficiente. O processo de teste deve ser realizado em fases por equipes de desenvolvedores e testadores para garantir a qualidade do software.
Engenharia Reversa e Reengenharia Softwareelliando dias
O documento discute engenharia reversa e reengenharia de software. A manutenção de software é difícil devido a códigos e documentação mal elaborados e falta de compreensão dos sistemas. A reengenharia visa reconstruir sistemas preservando funções existentes e adicionando novas funções para facilitar manutenção. Isso envolve engenharia reversa para entendimento do sistema e reengenharia progressiva para reconstruí-lo.
O documento descreve o processo de criação de uma fábrica de software open-source chamada USINA, destacando as lições aprendidas. A fábrica está desenvolvendo um estudo de caso de um simulador de aquário para validar seu processo. O documento discute a infraestrutura, processo, artefatos e lições como a necessidade de processos leves e integração contínua em projetos open-source.
O documento descreve o método DSDM (Dynamic Systems Development Method) de desenvolvimento de sistemas dinâmicos. O DSDM é um método ágil baseado em prototipação incremental que visa entregar 80% de uma aplicação em 20% do tempo total, por meio de participação ativa do usuário e desenvolvimento iterativo. O método estrutura o processo de software em fases de pré-projeto, ciclo de vida e pós-projeto.
Git- O minimo que você deve saber para trabalhar com ele.pptxLuiz Fernando
O que é o Git?
O Git é um Sistema de Controle de Versões Distribuido, criado pelo engenheiro de software Linus Torvalds, também conhecido por ter desenvolvido o Linux.
Ai você deve estar se perguntando, pra que serve um Sistema de Controle de Versões?
Basicamente, um sistema de controle de versões é utilizado, como o próprio nome sugere, um controle de versionamento de seu código, sendo que ele ficará disponível como um histórico do mesmo.
Isto pode parecer um pouco confuso ouvindo, mas quando demonstrar na prática, irá ficar mais claro.
Assista o vídeo na íntegra desta aula em meu canal do Youtube.
Este documento resume uma aula sobre processos de software. Apresenta conceitos como processo de software, modelos de processo de desenvolvimento de software, modelos de ciclo de vida como cascata e iterativos, além de linguagens, métodos e ferramentas CASE. O objetivo é introduzir os alunos aos principais elementos envolvidos no desenvolvimento de software.
Introdução a Engenharia de Software - Prof.ª Cristiane FidelixCris Fidelix
O documento discute a evolução da preocupação com a qualidade de software ao longo dos anos, desde as décadas de 1950 a 2000. Nos anos iniciais, os erros eram conhecidos apenas após o término do programa. Nos anos 1970 surgiram análise estruturada e teste antes do término. Nos anos 1980 houve primeiras preocupações com padrões de qualidade. Nos anos 1990 surgiram primeiros processos de teste motivados pelo bug do milênio. Nos anos 2000, testes foram estruturados dentro do processo de desenvolvimento e surgiram ferramentas de
Introdução a Application Life-cycle Management Open SourceGlobalcode
1) O documento apresenta o conceito de Application Lifecycle Management (ALM) e ferramentas open source para implementar ALM, incluindo Redmine para gerenciamento de requisitos, SVN/GIT para controle de versão, Maven para build, Nexus para gerenciamento de pacotes, Jenkins para integração contínua e Selenium para testes.
2) É demonstrado como configurar a integração entre essas ferramentas, incluindo a integração do Redmine com SVN/GIT e do Maven com Nexus.
3) As vantagens do ALM inclue
Modelos de Processo e Desenvolvimento de Software 1 - Prof.ª Cristiane FidelixCris Fidelix
O documento descreve diferentes modelos de desenvolvimento de software, incluindo o modelo cascata, incremental e RAD. O modelo cascata é linear e sequencial, enquanto os modelos incremental e RAD dividem o projeto em incrementos/partes menores com entregas parciais ao cliente.
ALM Open Source Ponta a Ponta - Minicurso Globalcode MC-122Bruno Souza
Slides do Minicurso ministrado pela ToolsCloud na Globalcode. Para se inscrever nas proximas turmas, acesse:
http://www.globalcode.com.br/gratuitos/minicursos/minicurso-introducao-a-alm-open-source
Para experimentar as ferramentas apresentadas no minicurso, você pode utilizar o ambiente de demonstração da ToolsCloud:
https://demo.toolscloud.net
User: toolscloud
Password: toolscloud
ToolsCloud -- As ferramentas que os desenvolvedores adoram, na nuvem!
Solução complete de ALM, open source e sem stress. Começe a usar no seu projeto hoje!
http://www.toolscloud.com
GCS - Aula 07 - Sistemas de Controle de VersõesMisael Santos
O documento discute gestão de configuração de software e controle de versões. Ele explica conceitos como versionamento, ações como check-in, check-out e merge, ferramentas como CVS e Subversion, e estratégias como branching e tagging.
Open4Education | MC122 - Introdução a ALM OpenSourcetdc-globalcode
1. O documento discute sobre ferramentas de gerenciamento do ciclo de vida de aplicações (ALM) de código aberto.
2. Ele apresenta diversas ferramentas como Redmine para gerenciamento de requisitos, Subversion/Git para controle de versão, Maven para build e dependências, Hudson para integração contínua e Nexus para gerenciamento de componentes.
3. O documento explica como essas ferramentas podem ser usadas em conjunto para implementar um sistema ALM completo de forma gratuita e de código aberto.
O documento apresenta uma solução de Application Lifecycle Management (ALM) open source composta por ferramentas como Redmine, Subversion/Git, Maven, Nexus, Hudson/Jenkins. A pilha ALM descrita permite gerenciar todo o ciclo de vida de desenvolvimento de software de forma integrada e com baixo custo.
O documento apresenta os conceitos e práticas do DevOps, descrevendo: (1) O que é DevOps, como uma filosofia que promove a integração entre equipes de desenvolvimento e operações; (2) A história do DevOps e sua evolução ao longo dos anos; (3) Ferramentas comumente usadas no DevOps.
O documento descreve o Instituto Nokia de Tecnologia (INdT) e como ele usa o framework Scrum para projetos de desenvolvimento de software. Em três frases: O INdT é um centro de pesquisa da Nokia focado em tecnologias móveis e internet. Ele usa Scrum, com cerimônias como planejamento do sprint e reuniões diárias, para gerenciar projetos de software. Testes de software são integrados às cerimônias de Scrum para garantir a qualidade do produto.
▫ Integração com o Office.
• Pontos Negativos:
▫ Custo da licença;
▫ Pesada para pequenos projetos;
▫ Curva de aprendizado maior.
Microsoft Project
Microsoft Project
Microsoft Project
Agenda
• Introdução;
• Importância das Ferramentas;
• Ferramentas:
▫
▫
▫
▫
▫
▫
▫
▫
▫
Open Project;
Trac;
Redmine;
WebCollab;
GPWEB;
Collabtive;
Microsoft
TDC 2013 SP | Trilha ALM: Construindo uma solução de ponta a ponta com ferram...tdc-globalcode
O documento descreve uma solução de gerenciamento do ciclo de vida de aplicativos (ALM) usando ferramentas open-source como Redmine, Git, Maven, Jenkins, Nexus e Sonar. A solução fornece requisitos, versionamento de código, builds, dependências, integração contínua, publicação de artefatos, inspeção de qualidade e implantação.
Sbqs 2010 Processo de Teste de Software para ScrumEliane Collins
Este documento descreve a experiência de um projeto que utilizou automação de testes com Scrum. Ferramentas como Selenium foram usadas para automatizar casos de teste funcionais e encontrar defeitos de interface, principalmente entre navegadores. A automação proporcionou cobertura total de funcionalidades, encontrou novos problemas e economizou tempo na geração de relatórios.
Este documento apresenta os conceitos e processos de teste de software, incluindo as fases de teste de componente, integração e sistema. O objetivo dos testes é verificar aspectos estruturais, lógicos e sistêmicos do software para descobrir defeitos de forma eficiente. O processo de teste deve ser realizado em fases por equipes de desenvolvedores e testadores para garantir a qualidade do software.
Engenharia Reversa e Reengenharia Softwareelliando dias
O documento discute engenharia reversa e reengenharia de software. A manutenção de software é difícil devido a códigos e documentação mal elaborados e falta de compreensão dos sistemas. A reengenharia visa reconstruir sistemas preservando funções existentes e adicionando novas funções para facilitar manutenção. Isso envolve engenharia reversa para entendimento do sistema e reengenharia progressiva para reconstruí-lo.
O documento descreve o processo de criação de uma fábrica de software open-source chamada USINA, destacando as lições aprendidas. A fábrica está desenvolvendo um estudo de caso de um simulador de aquário para validar seu processo. O documento discute a infraestrutura, processo, artefatos e lições como a necessidade de processos leves e integração contínua em projetos open-source.
O documento descreve o método DSDM (Dynamic Systems Development Method) de desenvolvimento de sistemas dinâmicos. O DSDM é um método ágil baseado em prototipação incremental que visa entregar 80% de uma aplicação em 20% do tempo total, por meio de participação ativa do usuário e desenvolvimento iterativo. O método estrutura o processo de software em fases de pré-projeto, ciclo de vida e pós-projeto.
Git- O minimo que você deve saber para trabalhar com ele.pptxLuiz Fernando
O que é o Git?
O Git é um Sistema de Controle de Versões Distribuido, criado pelo engenheiro de software Linus Torvalds, também conhecido por ter desenvolvido o Linux.
Ai você deve estar se perguntando, pra que serve um Sistema de Controle de Versões?
Basicamente, um sistema de controle de versões é utilizado, como o próprio nome sugere, um controle de versionamento de seu código, sendo que ele ficará disponível como um histórico do mesmo.
Isto pode parecer um pouco confuso ouvindo, mas quando demonstrar na prática, irá ficar mais claro.
Assista o vídeo na íntegra desta aula em meu canal do Youtube.
Este documento apresenta a proposta de desenvolvimento de um sistema web chamado Marquivos.com para gerenciamento e compartilhamento de arquivos. O projeto será desenvolvido utilizando a metodologia RUP e terá as seguintes etapas: inicial com foco em requisitos e prototipagem, elaboração com desenvolvimento da arquitetura e implementação parcial, e construção com conclusão da implementação e testes.
Git e Github: qual a importância dessas ferramentas para o desenvolvedorFelipe Pedroso
Essa palestra introduz o conceito de git como sistema de controle de versão e discute como o Github é importante para os desenvolvedores como ferramenta e plataforma social.
1) O documento discute as vantagens do sistema operacional Linux CentOS em relação a outros sistemas, incluindo ser gratuito, seguro e com muitos aplicativos incluídos.
2) CentOS é derivado do Red Hat Enterprise Linux mas é gratuito, fornecendo compatibilidade com pacotes do Red Hat sem custo.
3) O CentOS suporta ambientes de servidores, estações de trabalho, laptops e notebooks.
O documento descreve o sistema de gerenciamento de projetos Redmine, incluindo suas funcionalidades, como gestão de atividades, controle de tempo, relatórios e configurações iniciais.
O documento discute as principais características e vantagens do sistema operacional CentOS, um clone gratuito do Red Hat Enterprise Linux. Ele destaca que o CentOS oferece a mesma segurança, compatibilidade de pacotes e suporte por meio de atualizações que outras soluções Linux empresariais, sem custo de licença. Além disso, possui uma comunidade ativa e diversos canais de suporte.
Este documento discute várias ferramentas gratuitas e pagas para gerenciamento e controle de cronogramas de projetos. Ele descreve softwares como OpenProject, Gantt Project, Planner e Open Workbench que são gratuitos e open source, bem como o Microsoft Project que é pago. O documento fornece detalhes técnicos sobre cada ferramenta e discute como elas podem ajudar gerentes de projetos a planejar e monitorar projetos.
Redmine é um software livre de gerenciamento de projetos baseado na web desenvolvido em Ruby que permite gerenciar tarefas, documentos, calendários e integração com sistemas de controle de versão. Ele fornece funcionalidades como wiki, fóruns, acompanhamento de problemas e fluxo de trabalho personalizável.
Esta palestra discute Git e GitHub, incluindo a história do Git, como funciona, quando deve ser usado e o que pode ser encontrado no site GitHub. O palestrante também aborda como voltar commits específicos, limpar commits de membros e hospedar páginas no GitHub.
Sistemas Operacionais - Gnu/Linux Instalando ProgramasLuiz Arthur
O documento discute conceitos de software livre e como instalar programas a partir de arquivos tarball, incluindo como descompactar os arquivos, compilar o código-fonte e gerenciar bibliotecas compartilhadas.
Um sistema de controle de versão gerencia as diferentes versões de documentos ao longo do tempo, permitindo recuperar versões antigas e analisar o histórico de desenvolvimento. Git é um sistema de controle de versão distribuído criado para o desenvolvimento do kernel Linux, que oferece rápidas ramificações, merges e visualização do histórico não-linear. Comandos como git add, commit, push e pull permitem adicionar, confirmar, enviar e obter atualizações de arquivos no repositório local e remoto.
Este documento fornece instruções para instalar e configurar o Nagios, NagiosQL, MySQL e outros plugins relacionados em uma máquina virtual CentOS. Ele abrange a instalação do sistema operacional CentOS, download e compilação dos softwares necessários, configuração do Nagios e plugins, e instalação do NSClient e NagiosQL para permitir monitoramento remoto e interface web.
Webinar: Utilizando o Yocto Project para automatizar o desenvolvimento em Lin...Embarcados
Nesse webinar conheceremos o Yocto Project, um conjunto de ferramentas open-source que possuem o objetivo de facilitar o desenvolvimento de distribuições e sistemas Linux. Também vamos entender como utilizar a ferramenta pode auxiliar na automatização do desenvolvimento de sistemas Linux Embarcado.
https://embarcados.com.br/webinar-utilizando-o-yocto-project-para-automatizar-o-desenvolvimento-em-linux-embarcado/
1) Git é um sistema de controle de versão distribuído criado por Linus Torvalds para desenvolvimento do kernel Linux.
2) Em 2005, a comunidade Linux desenvolveu seu próprio sistema, o Git, após perder acesso gratuito ao BitKeeper.
3) O Git se tornou um sistema popular e maduro, mantendo qualidades como velocidade, suporte a branches paralelas e armazenamento distribuído.
O documento discute várias ferramentas de software livre para gerenciamento de TI, incluindo Nagios para monitoramento de rede, Cacti para monitoramento de rede através de gráficos, e CACIC para fornecer informações sobre o parque computacional de uma organização. Ele também cobrem sistemas de gerenciamento de conteúdo como WordPress, Drupal e Joomla para desenvolvimento web, assim como Moodle para educação a distância e MediaWiki usado pela Wikipédia. Por fim, discute alguns frameworks PHP populares como CodeIgniter, CakePHP,
Neste minicurso abordaremos como criar uma conta no github, manipular projetos no GitHub e licenças para seu projeto. Utilizaremos uma página de HTML simples para demonstrar todas as técnicas mencionadas anteriormente.
Ähnlich wie Qualidade de Software: Ferramentas de apoio (20)
O documento apresenta um plano de aula sobre a história da Igreja, abordando tópicos como a fundação da Igreja no dia de Pentecostes, as ordenações como batismo e ceia do Senhor, as missões da Igreja de pregar o evangelho e edificar os membros, e uma introdução aos principais períodos da história da Igreja desde a era apostólica até a Igreja no Brasil.
O documento apresenta um plano de aula sobre demonologia, abordando a doutrina de Satanás e dos demônios em 8 capítulos. O curso discutirá a existência, natureza e influência de Satanás e dos demônios de acordo com as Escrituras, incluindo a queda de Lúcifer, a personalidade e obra de Satanás, assim como o destino final de ser lançado no lago de fogo.
Python para finanças: explorando dados financeirosAlex Camargo
[1] O documento apresenta uma palestra sobre Python para finanças, explorando dados financeiros no FLISOL 2023. [2] É introduzido o mercado financeiro e seus principais conceitos. Em seguida, é explicado como Python é usado na área financeira, por meio de bibliotecas, coleta e visualização de dados e modelagem. [3] Por fim, é apresentado um estudo de caso utilizando o Google Colab para acessar dados de ações e visualizá-los.
A practical guide: How to use Bitcoins?Alex Camargo
This document provides a practical guide on how to use Bitcoins. It discusses Alex Camargo's presentations on cryptocurrencies and Bitcoin. It then introduces Bitcoin, explaining that it operates on a decentralized network using blockchain technology. It outlines the steps to use Bitcoins, including getting a wallet, purchasing coins, sending coins, and using them to make purchases. Finally, it concludes that Bitcoins provide benefits like low fees but also stresses the importance of security and awareness of risks like volatility.
IA e Bioinformática: modelos computacionais de proteínasAlex Camargo
Este documento apresenta uma palestra sobre inteligência artificial e bioinformática, com foco em modelos computacionais de proteínas. Apresenta breve introdução sobre IA, bioinformática e suas aplicações, abordando problemas como predição de estrutura e função de proteínas, alinhamento de sequências e desenvolvimento de fármacos. Discorre também sobre tendências da área, como aprendizado de máquina e processamento paralelo, e aplicações em diagnóstico médico.
Introdução às criptomoedas: investimento, mercado e segurançaAlex Camargo
O documento introduz conceitos fundamentais sobre criptomoedas, incluindo criptografia, chaves privadas e públicas, protocolos, blockchains e Bitcoin. Ele também fornece exemplos práticos de como usar sites como CoinMarketCap e corretoras, analisar projetos e gerenciar carteiras de criptomoedas.
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!Alex Camargo
O documento introduz conceitos sobre criptomoedas como Bitcoin, explicando o que são criptografia, chaves privadas, protocolos e blockchains. Também aborda como criar sua própria moeda criptográfica.
Cristão versus Redes Sociais - Alex (Arca da Aliança)Alex Camargo
O documento discute como os cristãos devem usar as redes sociais de forma ética, reconhecendo seus riscos e benefícios. Aborda tópicos como a natureza viciante das redes, a privacidade de dados, a sensualização de imagens, e a possibilidade de evangelização digital se feita com sabedoria e discrição. O objetivo é motivar um uso consciente das redes sob uma perspectiva cristã.
O documento apresenta uma palestra sobre empatia e compaixão com base na parábola bíblica do Bom Samaritano em Lucas 10:36-37. A palestra discute quem eram os samaritanos, o relato do crime contra o homem abandonado e como o sacerdote e o levita não o ajudaram, ao contrário do samaritano que teve compaixão. A mensagem principal é sobre a importância de ter empatia e agir com compaixão para com os necessitados, assim como o Bom Samaritano fez.
Alta performance em IA: uma abordagem praticaAlex Camargo
O documento discute alta performance em inteligência artificial (IA) de forma prática. Apresenta o palestrante Alex Camargo e seus projetos em IA aplicada, como sistemas de apoio médico. Discutem conceitos como aprendizado de máquina (ML), aprendizado profundo (DL) e ferramentas para desenvolvimento de IA como Python, TensorFlow e PyTorch. Demonstra experimentos com paralelismo em redes neurais profundas usando módulos como tf.data para melhorar a velocidade. Por fim, aborda considerações sobre o mercado de trabalho em
Bioinformática do DNA ao medicamento: ferramentas e usabilidadeAlex Camargo
O documento discute bioinformática, definindo-a como o emprego de ferramentas computacionais no estudo de problemas biológicos. Aborda a história da bioinformática desde a descoberta da estrutura do DNA, o Projeto Genoma Humano, e o desenvolvimento de estratégias de planejamento de fármacos utilizando ferramentas computacionais. Também discute os principais problemas alvo da bioinformática, como análise de sequências e estruturas, e tendências atuais como manipulação de grandes dados, processamento paral
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mãoAlex Camargo
O documento discute a aplicação da inteligência artificial para reconhecimento de caracteres escritos à mão. Ele apresenta os conceitos e ferramentas como Keras, TensorFlow e OpenCV usadas no reconhecimento óptico de caracteres (OCR) e reconhecimento de escrita manual com deep learning. O autor também fornece códigos e referências sobre o tema.
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)Alex Camargo
O documento apresenta uma introdução à inteligência artificial (IA) e deep learning, incluindo redes neurais convolucionais (CNNs). É demonstrado como a IA pode ser usada para identificar casos de COVID-19 em raios-X do pulmão usando o Google Colab para treinar modelos de aprendizagem profunda.
Algoritmos de inteligência artificial para classificação de notícias falsas. ...Alex Camargo
Este documento resume 3 trabalhos acadêmicos sobre classificação de notícias falsas usando inteligência artificial. O trabalho de Costa (2019) obteve a maior acurácia (97,5%) usando word embedding Glove e redes neurais convolucionais treinadas em um dataset de 28711 registros. Os outros trabalhos obtiveram acurácias menores usando LSVC ou LSVM com TF-IDF em datasets menores.
Fake News - Conceitos, métodos e aplicações de identificação e mitigaçãoAlex Camargo
O documento discute conceitos, métodos e aplicações relacionados à identificação e mitigação de notícias falsas. Aborda tópicos como definição de fake news, tipos de desinformação, legislação aplicável, métodos computacionais para detecção e projetos sobre o tema. Apresenta também perfis dos autores e referências bibliográficas.
O documento descreve o sistema PredictCovid, que usa inteligência artificial para apoiar a triagem de pacientes com suspeita de COVID-19. O sistema treina um modelo de deep learning usando imagens médicas e pode classificar novos casos como positivo ou negativo. O objetivo é fornecer uma ferramenta gratuita e segura para auxiliar médicos durante a pandemia. Os resultados iniciais mostraram alta acurácia na classificação de imagens de raio-x.
O documento apresenta uma palestra sobre inteligência artificial e COVID-19. A palestra inclui uma introdução do palestrante, detalhes sobre o projeto PredictCovid para triagem de pacientes, uma explicação geral de conceitos de IA, ML e DL, e demonstrações de ferramentas para desenvolvimento de sistemas de IA.
1. The team trained a CNN model on a COVID-19 X-ray image dataset to automatically detect COVID-19 in chest X-rays. They used tools like TensorFlow, Keras, and Python.
2. They evaluated the model using techniques like cross-validation, data augmentation, TensorBoard for visualization, and checkpointing to save models during training.
3. Future work could focus on reducing memory usage, improving model interpretation, and developing multi-modal COVID detectors using different types of medical data.
Este documento apresenta as considerações finais do Módulo VII - Desenvolvimento Web de um curso de Introdução à Segurança da Informação e de Sistemas. Discute princípios importantes de desenvolvimento web seguro, como validação de dados de entrada, projeto para implementar políticas de segurança e defesa em camadas. Recomenda recursos adicionais sobre o tópico no YouTube.
Aula 04 - Injeção de código (Cross-Site Scripting)Alex Camargo
O documento apresenta um plano de aula sobre Cross-Site Scripting (XSS). A aula irá explicar o conceito de execução de comandos entre sites diferentes através de JavaScript injetado em formulários de uma aplicação acadêmica vulnerável. Serão mostrados exemplos práticos de código-fonte vulnerável e corrigido para prevenir ataques XSS, e os alunos farão um quiz sobre o tema.
Aula 04 - Injeção de código (Cross-Site Scripting)
Qualidade de Software: Ferramentas de apoio
1. Ferramentas de apoioFerramentas de apoio
Prof. Alex Dias Camargo
alexcamargo@ifsul.edu.br
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
SUL-RIO-GRANDENSE
CAMPUS BAGÉ
QUALIDADE DE SOFTWARE
2. 2
I. Plano de aula
Na aula anterior foi visto:
Conceitos básicos, verificação e tipos de teste
Ferramentas de apoio ao teste de software
QDS - Ferramentas de apoio
3. 3
I. Plano de aula
Nesta aula serão apresentadas algumas ferramentas de apoio ao
software:
Gerenciamento de projeto
Gerenciamento de configuração
Gerenciamento de documentação
QDS - Ferramentas de apoio
4. 4
2. Introdução
Ferramentas de apoio ao software são utilizadas para definir,
mensurar, analisar e propor soluções aos problemas que interferem
no desempenho e no resultado das organizações.
Gerenciamento de projetos: Redmine
https://redmine.org/
Gerenciamento de configuração: Git
https://git-scm.com/
Gerenciamento de documentação: Read the Docs
https://readthedocs.org/
QDS - Ferramentas de apoio
5. 5
3. Redmine
O Redmine é uma ferramenta web e open source para controle de
tarefas voltado à gestão de projetos.
Ágil e colaborativa, além de permitir modificações.
QDS - Ferramentas de apoio
6. 6
2. Redmine
QDS - Ferramentas de apoio
Figura. Site oficial: https://redmine.org
7. 7
3. Redmine
QDS - Ferramentas de apoio
Figura. Exemplo: Registro na versão online
8. 8
2. Redmine
QDS - Ferramentas de apoio
Figura. Exemplo: Novo projeto
Desmarcar!
10. 10
3. Redmine
O Redmine é uma ferramenta web e open source para controle de
tarefas voltado à gestão de projetos.
Ágil e colaborativa, além de permitir modificações.
Melhor organização de arquivos: Gráfico de Gantt, notícias,
Wiki, documentos, etc.
QDS - Ferramentas de apoio
20. 20
3. Redmine
QDS - Ferramentas de apoio
Figura. Exemplo: Registro automático das atividades
21. 21
3. Redmine
O Redmine é uma ferramenta web e open source para controle de
tarefas voltado à gestão de projetos.
Ágil e colaborativa, além de permitir modificações.
Melhor organização de arquivos: Gráfico de Gantt, notícias,
Wiki, Fóruns, etc.
Gerenciamento de tempo e múltiplos projetos: projetos
de ensino, implementação de software, infraestrutura e
serviços, etc.
Quem usa: DataSUS, IFSertão - Pernambuco, UFPA, Ministério
do Planejamento, Embrapa, dentre outros.
QDS - Ferramentas de apoio
26. 26
4. Exercícios
1. Com base no cronograma do Componente Curricular: Práticas
em Análise e Desenvolvimento de Sistemas, crie um projeto do seu
trabalho final de curso utilizando a versão online de demonstração
do Redmine (http://demo.redmine.org/ ). É esperado que o aluno
explore ao máximo as funcionalidades da ferramenta, entretanto,
alguns requisitos mínimos serão considerados:
- 2 tarefas
- 2 documentos (arquivos TXT com até 100 KB)
- 1 artigo de wiki
- 1 notícia
Na versão online do Redmine é possível adicionar outros membros
ao projeto. Para esta atividade, adicione o usuário: Alex Camargo
(alexcamargoweb).
QDS - Ferramentas de apoio
27. 27
5. Git
Sistema de controle de versões distribuído, usado
principalmente no desenvolvimento de software, mas pode ser
adotado para registrar o edições de qualquer tipo de arquivo.
Inicialmente projetado e desenvolvido por Linus Torvalds para
o desenvolvimento do kernel Linux.
QDS - Ferramentas de apoio
28. 28
5. Git
QDS - Ferramentas de apoio
Figura. Git: Esquema de funcionamento local
29. 29
5. Git
Sistema de controle de versões distribuído, usado
principalmente no desenvolvimento de software, mas pode ser
adotado para registrar o edições de qualquer tipo de arquivo.
Inicialmente projetado e desenvolvido por Linus Torvalds para
o desenvolvimento do kernel Linux.
Permite que um arquivo possa ser editado ao mesmo tempo
por pessoas diferentes.
QDS - Ferramentas de apoio
30. 30
5. Git
QDS - Ferramentas de apoio
Figura. Git: Esquema de funcionamento compartilhado
31. 31
5. Git
Sistema de controle de versões distribuído, usado
principalmente no desenvolvimento de software, mas pode ser
adotado para registrar o edições de qualquer tipo de arquivo.
Inicialmente projetado e desenvolvido por Linus Torvalds para
o desenvolvimento do kernel Linux.
Permite que um arquivo possa ser editado ao mesmo tempo
por pessoas diferentes.
Repositórios amplamente utilizados: GitHub e BitBucket.
QDS - Ferramentas de apoio
38. 38
5. Git
Sistema de controle de versões distribuído, usado
principalmente no desenvolvimento de software, mas pode ser
adotado para registrar o edições de qualquer tipo de arquivo.
Inicialmente projetado e desenvolvido por Linus Torvalds para
o desenvolvimento do kernel Linux.
Permite que um arquivo possa ser editado ao mesmo tempo
por pessoas diferentes.
Repositórios amplamente utilizados: GitHub, BitBucket.
Quem usa: Google, Facebook, Microsoft, Twitter, Netflix,
dentre outros.
QDS - Ferramentas de apoio
39. 39
5. Git
QDS - Ferramentas de apoio
Figura. Google no GitHub: https://github.com/google
40. 40
5. Git
Sistema de controle de versões distribuído, usado
principalmente no desenvolvimento de software, mas pode ser
adotado para registrar o edições de qualquer tipo de arquivo.
Inicialmente projetado e desenvolvido por Linus Torvalds para
o desenvolvimento do kernel Linux.
Permite que um arquivo possa ser editado ao mesmo tempo
por pessoas diferentes.
Repositórios amplamente utilizados: GitHub, BitBucket.
Quem usa: Google, Facebook, Microsoft, Twitter, Netflix,
dentre outros.
Guia prático: a seguir é exibido um passo a passo simplificado
para a utilização do Git.
Disponível em: https://rogerdudler.github.io/git-guide/
QDS - Ferramentas de apoio
41. 41
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
42. 42
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
43. 43
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
44. 44
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
45. 45
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
46. 46
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
47. 47
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
48. 48
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
50. 50
6. Exercícios
2. Com base no cronograma do Componente Curricular: Práticas
em Análise e Desenvolvimento de Sistemas, crie um repositório da
implementação do seu trabalho final de curso, utilizando o
repositório de códigos Bitbucket (https://bitbucket.org ). É esperado
que o aluno explore ao máximo as funcionalidades da ferramenta,
entretanto, alguns requisitos mínimos serão considerados:
- cadastro na plataforma e criação de um repositório privado
- obtenção de uma cópia local: git clone
- adição e confirmação de mudanças: git add e git commit
- envio e atualização das mudanças: git push e git pull
No Bitbucket é possível adicionar outros membros ao projeto. Para
esta atividade, adicione o usuário: Alex Camargo
(alexcamargoweb).
QDS - Ferramentas de apoio
51. 51
7. Read the Docs
Plataforma gratuita e open source que visa a elaboração de
documentação técnica de software, automatizando a criação, o
versionamento e a hospedagem do código.
Atualmente possui ~270.758 projetos cadastrados.
Webhooks: sincronização automática de projetos Git ou outros
versionadores.
Financiado pela comunidade: hospedagem do projeto
fornecida pela Microsoft Azure.
Quem usa: Python, Mozilla, Cloudflare, dentre outros.
ReStructuredText (.rst): linguagem de marcação
simplificada utilizada para documentação via Read the Docs.
Disponível em: https://www.sphinx-doc.org
QDS - Ferramentas de apoio
52. 52
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
53. 53
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
54. 54
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
55. 55
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
56. 56
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
57. 57
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
58. 58
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
59. 59
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
60. 60
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
61. 61
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
62. 62
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
63. 63
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
64. 64
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
65. 65
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
66. 66
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
67. 67
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Online Sphinx editor: https://livesphinx.herokuapp.com/
68. 68
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
69. 69
8. Exercícios
3. Com base em um projeto “Teste” criado no GitHub, crie uma
conta gratuita no Read the Docs e faça a sua importação. É
esperado que o aluno explore ao máximo as funcionalidades da
ferramenta, entretanto, alguns requisitos mínimos serão
considerados:
- criação de um repositório público e cadastro na ferramenta
- importação do projeto
- criação de um index.rst customizado via git
- visualização dos resultados com base no link disponibilizado
No Read the Docs é possível adicionar outros membros
(mantededores) ao projeto. Para esta atividade, adicione o usuário:
Alex Camargo (alexcamargoweb).
QDS - Ferramentas de apoio
70. 70
Referências básicas
CHRISSIS, M.B., KONRAD, M., SHRUM, S., CMMI for development:
guidelines for process integration and product improvement, 3rd
edition, Addison Wesley Professional, 2011.
DELAMARO, M.E.; MALDONADO, J.C.; JINO, M. Introdução ao Teste de
Software. Elsevier Editora, ISBN 978-8535226348. 2007.
MYERS, G.; BADGETT, T.; THOMAS, T.; SANDLER, C.; The Art of Software
Testing. Wiley, 3rd Edition, ISBN 978-1118031964. 2011.
PRESSMAN, Roger, MAXIM, Bruce. Engenharia de Software, 8º edição.
AMGH, 01/2016.
PAULA FILHO, W. de P., Engenharia de Software: fundamentos,
métodos e padrões. 3.ed. Rio de Janeiro. LTC. 2008.
ROCHA, A.R.C., SOUZA, G.S., BARCELLOS, M.P., Medição e Controle
Estatístico de Processos. MCTi: Série de Livros PBQP. 2012.
QDS - Ferramentas de apoio